Your IP : 216.73.217.68


Current Path : /home/wuectly/www/03cbe/
Upload File :
Current File : /home/wuectly/www/03cbe/com_acymailing.tar

acymailing.php000060400000005435152455302720007402 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
jimport('joomla.application.component.controller');
jimport('joomla.application.component.view');

include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');

if(acymailing_isDebug()) acymailing_displayErrors();

$view = acymailing_getVar('cmd', 'view');
if(!empty($view) AND !acymailing_getVar('cmd', 'ctrl')){
	acymailing_setVar('ctrl', $view);
	$layout = acymailing_getVar('cmd', 'layout');
	if(!empty($layout)){
		acymailing_setVar('task', $layout);
	}
}
$taskGroup = acymailing_getVar('cmd', 'ctrl', acymailing_getVar('cmd', 'gtask', 'lists'));

global $Itemid;
if(empty($Itemid)){
	$urlItemid = acymailing_getVar('int', 'Itemid');
	if(!empty($urlItemid)) $Itemid = $urlItemid;
}


$config = acymailing_config();

acymailing_addScript(false, ACYMAILING_JS.'acymailing.js?v='.str_replace('.', '', $config->get('version')));

if(ACYMAILING_J16 && file_exists(ACYMAILING_ROOT.'media'.DS.'system'.DS.'js'.DS.'core.js')){
	$url = rtrim(acymailing_rootURI(), '/').'/media/system/js/core.js?v='.filemtime(ACYMAILING_ROOT.'media'.DS.'system'.DS.'js'.DS.'core.js');
	$js = 'document.addEventListener("DOMContentLoaded", function(){
		if(typeof Joomla == "undefined" && typeof window.Joomla == "undefined"){
			var script = document.createElement("script");
			script.type = "text/javascript";
			script.src = "'.$url.'";
			document.head.appendChild(script);
		}
	});';
	acymailing_addScript(true, $js);
}

$cssFrontend = $config->get('css_frontend', 'default');
if(!empty($cssFrontend)){
	acymailing_addStyle(false, ACYMAILING_CSS.'component_'.$cssFrontend.'.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'component_'.$cssFrontend.'.css'));
}

if($taskGroup == 'newsletter') $taskGroup = 'frontnewsletter';

if(!file_exists(ACYMAILING_CONTROLLER_FRONT.$taskGroup.'.php') || !include(ACYMAILING_CONTROLLER_FRONT.$taskGroup.'.php')){
	return acymailing_raiseError(E_ERROR, 404, 'Page not found : '.$taskGroup);
}

$className = ucfirst($taskGroup).'Controller';
$classGroup = new $className();
acymailing_setVar('view', $classGroup->getName());

$action = acymailing_getVar('cmd', 'task');
if(empty($action)){
	$action = acymailing_getVar('cmd', 'defaulttask');
	acymailing_setVar('task', $action);
}

$classGroup->execute($action);
$classGroup->redirect();
if(acymailing_getVar('string', 'tmpl') !== 'component' && !in_array(acymailing_getVar('cmd', 'task'), array('unsub', 'saveunsub', 'optout', 'out', 'view'))){
	echo acymailing_footer();
}
router.php000060400000004070152455302720006577 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

function AcymailingBuildRoute(&$query){
	$segments = array();

	if(isset($query['ctrl']) && in_array($query['ctrl'], array('stats', 'moduleloader', 'cron', 'fronteditor', 'frontfilter', 'sub'))){
		return $segments;
	}

	$ctrl = '';
	$task = '';

	if(isset($query['ctrl'])){
		$ctrl = $query['ctrl'];
		if($ctrl != 'archive' || (!empty($query['task']) && $query['task'] != 'view')) $segments[] = $query['ctrl'];
		unset($query['ctrl']);
		if(isset($query['task'])){
			$task = $query['task'];
			if($ctrl != 'archive' || $task != 'view') $segments[] = $query['task'];
			unset($query['task']);
		}
	}elseif(isset($query['view'])){
		$ctrl = $query['view'];
		$segments[] = $query['view'];
		unset($query['view']);
		if(isset($query['layout'])){
			$task = $query['layout'];
			$segments[] = $query['layout'];
			unset($query['layout']);
		}
	}

	if(empty($query)) return $segments;

	foreach($query as $name => $value){
		if(in_array($name, array('option', 'Itemid', 'start', 'format', 'limitstart', 'no_html', 'val', 'key', 'acyformname', 'subid', 'tmpl', 'lang', 'limit'))) continue;

		if($ctrl == 'user' && $name == 'mailid') continue;

		$segments[] = $name.':'.$value;
		unset($query[$name]);
	}

	return $segments;
}

function AcymailingParseRoute($segments){
	$vars = array();

	if(empty($segments)) return $vars;

	$i = 0;
	foreach($segments as $name){
		if(strpos($name, ':')){
			list($arg, $val) = explode(':', $name);
			if(is_numeric($arg)){
				$vars['Itemid'] = $arg;
			}else{
				$vars[$arg] = $val;
			}
		}else{
			$i++;
			if($i == 1){
				$vars['ctrl'] = $name;
			}elseif($i == 2){
				$vars['task'] = $name;
			}
		}
	}

	if(empty($vars['ctrl']) && (!empty($vars['listid']) || !empty($vars['mailid']))){
		$vars['ctrl'] = 'archive';
		if(!empty($vars['mailid'])) $vars['task'] = 'view';
	}

	return $vars;
}
controllers/archive.php000060400000001643152455302720011251 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class ArchiveController extends acymailingController{

	function view(){

		$statsClass = acymailing_get('class.stats');
		$statsClass->countReturn = false;
		$statsClass->saveStats();

		$printEnabled = acymailing_getVar('none', 'print', 0);
		if($printEnabled){
			$js = "setTimeout(function(){
					if(document.getElementById('iframepreview')){
						document.getElementById('iframepreview').contentWindow.focus();
						document.getElementById('iframepreview').contentWindow.print();
					}else{
						window.print();
					}
				},2000);";
			acymailing_addScript(true, $js);
		}

		acymailing_setVar('layout', 'view');
		return parent::display();
	}


}
controllers/user.php000060400000034371152455302720010612 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class UserController extends acymailingController{

	function __construct($config = array()){
		parent::__construct($config);

		$this->registerDefaultTask('subscribe');
		$this->registerTask('optout', 'unsub');
		$this->registerTask('out', 'unsub');
	}

	function confirm(){
		if(acymailing_isRobot()) return false;

		$config = acymailing_config();


		$userClass = acymailing_get('class.subscriber');
		$userClass->geolocRight = true;

		$user = $userClass->identify();
		if(empty($user)) return false;

		$redirectUrl = $config->get('confirm_redirect');
		$listRedirection = '';
		$subscription = $userClass->getSubscriptionStatus($user->subid);
		foreach($subscription as $i => $onelist){
			if(!in_array($onelist->status, array(1, 2)) || acymailing_translation('REDIRECTION_CONFIRMATION_'.$i) == 'REDIRECTION_CONFIRMATION_'.$i) continue;
			$listRedirection = acymailing_translation('REDIRECTION_CONFIRMATION_'.$i);
			break;
		}

		if(!empty($listRedirection)) $redirectUrl = $listRedirection;

		if($config->get('confirmation_message', 1)){
			if($user->confirmed && strlen(acymailing_translation('ALREADY_CONFIRMED')) > 0){
				acymailing_enqueueMessage(acymailing_translation('ALREADY_CONFIRMED'));
			}elseif(!$user->confirmed && strlen(acymailing_translation('SUBSCRIPTION_CONFIRMED')) > 0) acymailing_enqueueMessage(acymailing_translation('SUBSCRIPTION_CONFIRMED'));
		}

		if(!$user->confirmed) $userClass->confirmSubscription($user->subid);

		$notifConfirm = $config->get('notification_confirm');
		if(!empty($notifConfirm)){
			$listsubClass = acymailing_get('class.listsub');
			$userHelper = acymailing_get('helper.user');
			$mailer = acymailing_get('helper.mailer');
			$mailer->autoAddUser = true;
			$mailer->checkConfirmField = false;
			$mailer->report = false;
			foreach($user as $field => $value) $mailer->addParam('user:'.$field, $value);
			$mailer->addParam('user:subscription', $listsubClass->getSubscriptionString($user->subid));
			$mailer->addParam('user:subscriptiondates', $listsubClass->getSubscriptionString($user->subid, true));
			$mailer->addParam('user:ip', $userHelper->getIP());
			if(!empty($userClass->geolocData)){
				foreach($userClass->geolocData as $map => $value){
					$mailer->addParam('geoloc:notif_'.$map, $value);
				}
			}
			$mailer->addParamInfo();
			$allUsers = explode(' ', trim(str_replace(array(';', ','), ' ', $notifConfirm)));
			foreach($allUsers as $oneUser){
				if(empty($oneUser)) continue;
				$mailer->sendOne('notification_confirm', $oneUser);
			}
		}

		if(!empty($redirectUrl)){
			$replace = array();
			foreach($user as $key => $val){
				$replace['{'.$key.'}'] = $val;
				$replace['{user:'.$key.'}'] = $val;
			}
			if($config->get('redirect_tags', 0) == 1) $redirectUrl = str_replace(array_keys($replace), $replace, $redirectUrl);
			acymailing_redirect($redirectUrl);
		}

		if('joomla' == 'wordpress') acymailing_redirect(acymailing_rootURI());

		acymailing_setVar('layout', 'confirm');
		return parent::display();
	}//endfct

	function modify(){
		$userClass = acymailing_get('class.subscriber');
		$userClass->geolocRight = true;

		$user = $userClass->identify(true);
		if(empty($user)) return $this->subscribe();

		acymailing_setVar('layout', 'modify');
		return parent::display();
	}

	function subscribe(){
		$userClass = acymailing_get('class.subscriber');
		$userClass->geolocRight = true;

		$currentUserid = acymailing_currentUserId();
		if(!empty($currentUserid) AND $userClass->identify(true)){
			return $this->modify();
		}

		$config = acymailing_config();
		$allowvisitor = $config->get('allow_visitor', 1);
		if(empty($allowvisitor)){
			acymailing_askLog(true, 'ONLY_LOGGED', 'message');
			return false;
		}

		acymailing_setVar('layout', 'modify');
		return parent::display();
	}

	function unsub(){
		$userClass = acymailing_get('class.subscriber');

		$user = $userClass->identify();
		if(empty($user)) return false;

		$statsClass = acymailing_get('class.stats');
		$statsClass->countReturn = false;
		$statsClass->saveStats();

		acymailing_setVar('layout', 'unsub');
		return parent::display();
	}

	function saveunsub(){
		acymailing_checkRobots();

		$subscriberClass = acymailing_get('class.subscriber');
		$subscriberClass->sendConf = false;

		$listsubClass = acymailing_get('class.listsub');
		$userHelper = acymailing_get('helper.user');
		$config = acymailing_config();


		$subscriber = new stdClass();
		$subscriber->subid = acymailing_getVar('int', 'subid');

		$user = $subscriberClass->identify();
		if(!$user || empty($subscriber->subid) || $user->subid != $subscriber->subid){
			echo "<script>alert('ERROR : You are not allowed to modify this user'); window.history.go(-1);</script>";
			exit;
		}

		$refusemails = acymailing_getVar('int', 'refuse');
		$unsuball = acymailing_getVar('int', 'unsuball');
		$mailid = acymailing_getVar('int', 'mailid');

		$oldUser = $subscriberClass->get($subscriber->subid);

		$survey = acymailing_getVar('array', 'survey', array(), '');
		$tagSurvey = '';
		$data = array();
		if(!empty($survey)){
			foreach($survey as $oneResult){
				if(empty($oneResult)) continue;
				$data[] = "REASON::".str_replace(array("\n", "\r"), array('<br />', ''), strip_tags($oneResult));
			}

			$tagSurvey = implode('<br />', $data);
		}

		$replace = array();
		$replace['REASON::'] = '<br />'.acymailing_translation('REASON').' : ';
		$reasons = unserialize($config->get('unsub_reasons'));
		foreach($reasons as $i => $oneReason){
			if(preg_match('#^[A-Z_]*$#', $oneReason)){
				$replace[$oneReason] = acymailing_translation($oneReason);
			}
		}

		$tagSurvey = str_replace(array_keys($replace), $replace, $tagSurvey);

		$historyClass = acymailing_get('class.acyhistory');
		$historyClass->insert($subscriber->subid, 'unsubscribed', $data, $mailid);

		$notifToSend = '';

		$incrementUnsub = false;
		if($refusemails OR $unsuball){

			if($refusemails){
				$subscriber->accept = 0;
				if($config->get('unsubscription_message', 1) && strlen(acymailing_translation('CONFIRM_UNSUB_FULL')) > 0) acymailing_enqueueMessage(acymailing_translation('CONFIRM_UNSUB_FULL'));
				$notifToSend = 'notification_refuse';
			}elseif($unsuball){
				$notifToSend = 'notification_unsuball';
			}


			$subscription = $subscriberClass->getSubscriptionStatus($subscriber->subid);
			$updatelists = array();
			foreach($subscription as $listid => $oneList){
				if($oneList->status != -1){
					$updatelists[-1][] = $listid;
				}
			}

			$listsubClass->sendNotif = false;

			if(!empty($updatelists)){
				$status = $listsubClass->updateSubscription($subscriber->subid, $updatelists);
				if($config->get('unsubscription_message', 1) && strlen(acymailing_translation('CONFIRM_UNSUB_ALL')) > 0) acymailing_enqueueMessage(acymailing_translation('CONFIRM_UNSUB_ALL'));
				$incrementUnsub = true;
			}else{
				if($config->get('unsubscription_message', 1) && strlen(acymailing_translation('ERROR_NOT_SUBSCRIBED')) > 0) acymailing_enqueueMessage(acymailing_translation('ERROR_NOT_SUBSCRIBED'));
			}

			$subscriber->confirmed = 0;
			$subscriberClass->save($subscriber);
		}else{

			$subscription = $subscriberClass->getSubscriptionStatus($subscriber->subid);

			$allLists = acymailing_loadObjectList('SELECT b.listid, b.name, b.type FROM '.acymailing_table('listmail').' as a JOIN '.acymailing_table('list').' as b on a.listid = b.listid WHERE a.mailid = '.$mailid);

			if(empty($allLists)){
				$allLists = acymailing_loadObjectList('SELECT b.listid, b.name, b.type FROM '.acymailing_table('list').' as b WHERE b.welmailid = '.$mailid.' OR b.unsubmailid = '.$mailid);
			}

			if(empty($allLists)){
				$allLists = acymailing_loadObjectList('SELECT b.listid, b.name, b.type FROM #__acymailing_listsub as a JOIN #__acymailing_list as b on a.listid = b.listid WHERE a.subid = '.$subscriber->subid);
			}


			$otherSubscriptionsBoxes = acymailing_getVar('array', 'unsubotherlists', array(), 'post');
			$otherSubscriptionsId = acymailing_getVar('array', 'unsubotherlistsid', array(), 'post');
			$othersubscriptionsToRemove = array();
			if(!empty($otherSubscriptionsBoxes)){
				$i = 0;
				foreach($otherSubscriptionsBoxes as $anotherSubscriptionsBox => $value){
					if($value == 1) $othersubscriptionsToRemove[] = intval($otherSubscriptionsId[$i]);
					$i++;
				}

				$otherSubscriptions = acymailing_loadObjectList('SELECT listid, name, type FROM #__acymailing_list WHERE listid IN ('.implode(',', $othersubscriptionsToRemove).')');

				foreach($otherSubscriptions as $anotherSubscription){
					array_push($allLists, $anotherSubscription);
				}
			}


			if(empty($allLists)){
				echo "<script>alert('ERROR : Could not get the list for the mailing $mailid'); window.history.go(-1);</script>";
				exit;
			}

			$campaignList = array();
			$unsubList = array();
			foreach($allLists as $oneList){
				if(isset($subscription[$oneList->listid]) AND $subscription[$oneList->listid]->status != -1){
					if($oneList->type == 'campaign'){
						$campaignList[] = $oneList->listid;
					}else{
						$unsubList[$oneList->listid] = $oneList;
					}
				}
			}

			if(!empty($campaignList)){
				$otherLists = acymailing_loadObjectList('SELECT b.listid, b.name, b.type FROM '.acymailing_table('listcampaign').' as a LEFT JOIN '.acymailing_table('list').' as b on a.listid = b.listid WHERE a.campaignid IN ('.implode(',', $campaignList).')');
				if(!empty($otherLists)){
					foreach($otherLists as $oneList){
						if(isset($subscription[$oneList->listid]) AND $subscription[$oneList->listid]->status != -1){
							$unsubList[$oneList->listid] = $oneList;
						}
					}
				}
			}

			if(!empty($unsubList)){
				$updatelists = array();
				$updatelists[-1] = array_keys($unsubList);
				$listsubClass->survey = $tagSurvey;
				$status = $listsubClass->updateSubscription($subscriber->subid, $updatelists);
				if($config->get('unsubscription_message', 1) && strlen(acymailing_translation('CONFIRM_UNSUB_CURRENT')) > 0) acymailing_enqueueMessage(acymailing_translation('CONFIRM_UNSUB_CURRENT'));
				$incrementUnsub = true;
			}else{
				if($config->get('unsubscription_message', 1) && strlen(acymailing_translation('ERROR_NOT_SUBSCRIBED_CURRENT')) > 0) acymailing_enqueueMessage(acymailing_translation('ERROR_NOT_SUBSCRIBED_CURRENT'));
			}
		}

		if($incrementUnsub){
			$alreadythere = acymailing_loadResult('SELECT subid FROM #__acymailing_history WHERE `action` = "unsubscribed" AND `subid` = '.intval($subscriber->subid).' AND `mailid` = '.intval($mailid).' LIMIT 1,1');

			if(empty($alreadythere)){
				acymailing_query('UPDATE '.acymailing_table('stats').' SET `unsub` = `unsub` +1 WHERE `mailid` = '.(int)$mailid);
			}
		}

		$classGeoloc = acymailing_get('class.geolocation');
		$classGeoloc->saveGeolocation('unsubscription', $subscriber->subid);

		if(!empty($notifToSend)){
			$notifyUsers = $config->get($notifToSend);

			if(!empty($notifyUsers)){
				$mailer = acymailing_get('helper.mailer');
				$mailer->autoAddUser = true;
				$mailer->checkConfirmField = false;
				$mailer->report = false;
				foreach($oldUser as $field => $value) $mailer->addParam('user:'.$field, $value);
				$mailer->addParam('user:subscription', $listsubClass->getSubscriptionString($oldUser->subid));
				$mailer->addParam('user:subscriptiondates', $listsubClass->getSubscriptionString($oldUser->subid, true));
				$mailer->addParam('user:ip', $userHelper->getIP());
				$mailer->addParam('survey', $tagSurvey);
				$mailer->addParamInfo();
				$allUsers = explode(' ', trim(str_replace(array(';', ','), ' ', $notifyUsers)));
				foreach($allUsers as $oneUser){
					if(empty($oneUser)) continue;
					$mailer->sendOne('notification_unsuball', $oneUser);
				}
			}
		}


		$redirectUnsub = $config->get('unsub_redirect');
		if(!empty($redirectUnsub)){
			$replace = array();
			foreach($oldUser as $key => $val){
				$replace['{'.$key.'}'] = $val;
				$replace['{user:'.$key.'}'] = $val;
			}
			if($config->get('redirect_tags', 0) == 1) $redirectUnsub = str_replace(array_keys($replace), $replace, $redirectUnsub);
			acymailing_redirect($redirectUnsub);
			return;
		}elseif('joomla' == 'wordpress'){
			acymailing_redirect(acymailing_rootURI());
			return;
		}

		acymailing_setVar('layout', 'saveunsub');
		return parent::display();
	}

	function savechanges(){
		acymailing_checkToken();
		acymailing_checkRobots();

		$config = acymailing_config();
		$subscriberClass = acymailing_get('class.subscriber');
		$subscriberClass->geolocRight = true;
		$subscriberClass->extendedEmailVerif = true;


		$status = $subscriberClass->saveForm();
		$subscriberClass->sendNotification();
		if($status){
			if($subscriberClass->confirmationSent){
				if($config->get('subscription_message', 1) && strlen(acymailing_translation('CONFIRMATION_SENT')) > 0) acymailing_enqueueMessage(acymailing_translation('CONFIRMATION_SENT'), 'message');
				$redirectlink = $config->get('sub_redirect');
			}elseif($subscriberClass->newUser){
				if($config->get('subscription_message', 1) && strlen(acymailing_translation('SUBSCRIPTION_OK')) > 0) acymailing_enqueueMessage(acymailing_translation('SUBSCRIPTION_OK'), 'message');
				$redirectlink = $config->get('sub_redirect');
			}else{
				if(strlen(acymailing_translation('SUBSCRIPTION_UPDATE_OK')) > 0) acymailing_enqueueMessage(acymailing_translation('SUBSCRIPTION_UPDATED_OK'), 'message');
				$redirectlink = $config->get('modif_redirect');
			}
		}elseif($subscriberClass->requireId){
			if(strlen(acymailing_translation('IDENTIFICATION_SENT')) > 0) acymailing_enqueueMessage(acymailing_translation('IDENTIFICATION_SENT'), 'notice');
		}else{
			if(strlen(acymailing_translation('ERROR_SAVING')) > 0) acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
		}

		if(!empty($redirectlink)){
			if($config->get('redirect_tags', false)) {
				$user = $subscriberClass->identify(true);
				if(!empty($user->subid)) {
					$replace = array();
					foreach ($user as $key => $val) {
						if(!is_array($val) && !is_object($val)) $replace['{' . $key . '}'] = $val;
					}
					$redirectlink = str_replace(array_keys($replace), $replace, $redirectlink);
				}
			}

			acymailing_redirect($redirectlink);
			return;
		}

		if($subscriberClass->identify(true)) return $this->modify();
		return $this->subscribe();
	}
}
controllers/sub.php000060400000040500152455302720010414 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class SubController extends acymailingController{

	function notask(){

		$ajax = acymailing_getVar('int', 'ajax', 0);
		if($ajax) header("Content-type:text/html; charset=utf-8");

		if($ajax){
			echo '{"message":"Please enable the Javascript to be able to subscribe","type":"error","code":"0"}';
			exit;
		}else{
			$redirectUrl = urldecode(acymailing_getVar('string', 'redirect', '', ''));
			$this->_checkRedirectUrl($redirectUrl);
			acymailing_redirect($redirectUrl,'Please enable the Javascript to be able to subscribe','notice');
		}
		return false;
	}

	function display($dummy1 = false, $dummy2 = false){
		$moduleId = acymailing_getVar('int', 'formid');
		if(empty($moduleId)) return;

		if(acymailing_getVar('int', 'interval') > 0) setcookie('acymailingSubscriptionState', true, time() + acymailing_getVar('int', 'interval'), '/');

	 	$module = acymailing_loadObject('SELECT * FROM #__modules WHERE id = '.intval($moduleId).' AND `module` LIKE \'%acymailing%\' AND published = 1 LIMIT 1');
	 	if(empty($module)){ echo 'No module found'; exit; }

		$module->user  	= substr( $module->module, 0, 4 ) == 'mod_' ?  0 : 1;
		$module->name = $module->user ? $module->title : substr( $module->module, 4 );
		$module->style = null;
		$module->module = preg_replace('/[^A-Z0-9_\.-]/i', '', $module->module);

		$params = array();
		if(acymailing_getVar('int', 'autofocus', 0)){
			$js = "
				window.addEventListener('load', function(){
					this.focus();
					var moduleInputs = document.getElementsByTagName('input');
					if(moduleInputs){
						var i = 0;
						while(moduleInputs[i].disabled == true){
							i++;
						}
						if(moduleInputs[i]) moduleInputs[i].focus();
					}
				});";

			acymailing_addScript(true, $js);
		}

		echo JModuleHelper::renderModule($module, $params);
	}

	function optin(){
		acymailing_checkRobots();
		$config = acymailing_config();

		if(!acymailing_getVar('cmd', 'acy_source') && !empty($_GET['user'])){
			acymailing_setVar('acy_source','url');
		}

		$ajax = acymailing_getVar('int', 'ajax', 0);
		if($ajax){
			@ob_end_clean();
			header("Content-type:text/html; charset=utf-8");
		}

		$currentUserid = acymailing_currentUserId();
		if((int) $config->get('allow_visitor',1) != 1 && empty($currentUserid)){
			if($ajax){
				echo '{"message":"'.str_replace('"','\"',acymailing_translation('ONLY_LOGGED')).'","type":"error","code":"0"}';
				exit;
			}else{
				acymailing_askLog(false, 'ONLY_LOGGED');
				return;
			}
		}


		$userClass = acymailing_get('class.subscriber');

		$userClass->geolocRight = true;

		$redirectUrl = urldecode(acymailing_getVar('string', 'redirect', '', ''));

		$user = new stdClass();
		$formData = acymailing_getVar('array',  'user', array(), '');

		if(!empty($formData)){
			$userClass->checkFields($formData,$user);
		}

		$allowUserModifications = (bool) ($config->get('allow_modif','data') == 'all');
		$allowSubscriptionModifications = (bool) ($config->get('allow_modif','data') != 'none');

		if(empty($user->email)){
			$connectedUser = $userClass->identify(true);
			if(!empty($connectedUser->email)){
				$user->email = $connectedUser->email;
				$allowUserModifications = true;
				$allowSubscriptionModifications = true;
			}
		}

		$user->email =  trim($user->email);

		$userHelper = acymailing_get('helper.user');
		if(empty($user->email) || !$userHelper->validEmail($user->email,true)){
			if ($ajax) echo '{"message":"'.str_replace('"','\"',acymailing_translation('VALID_EMAIL')).'","type":"error","code":"0"}';
			else echo "<script>alert('".acymailing_translation('VALID_EMAIL',true)."'); window.history.go(-1);</script>";
			exit;
		}
		if(!empty($user->email)) $user->email = acymailing_punycode($user->email);

		$alreadyExists = $userClass->get($user->email);

		if(!empty($alreadyExists->subid)){
			if(!empty($alreadyExists->userid)) unset($user->name);
			$user->subid = $alreadyExists->subid;
			$currentSubscription = $userClass->getSubscriptionStatus($alreadyExists->subid);
		}else{
			$allowSubscriptionModifications = true;
			$allowUserModifications = true;
			$currentSubscription = array();
		}

		$user->accept = 1;

		if($allowUserModifications){
			$userClass->recordHistory = true;
			$user->subid = $userClass->save($user);
		}

		$myuser = $userClass->get($user->subid);
		if(empty($myuser->subid)){
			if ($ajax) echo '{"message":"Could not save the user","type":"error","code":"1"}';
			else echo "<script>alert('Could not save the user'); window.history.go(-1);</script>";
			exit;
		}

		if(empty($myuser->accept)){
			$myuser->accept = 1;
			$userClass->save($myuser);
		}

		if(!$allowUserModifications && !empty($myuser->subid) && empty($myuser->confirmed)){
			$userClass->sendConf($myuser->subid);
		}

		$statusAdd = (empty($myuser->confirmed) AND $config->get('require_confirmation',false)) ? 2 : 1;

		$addlists = array();
		$updatelists = array();

		$hiddenlistsstring = acymailing_getVar('string', 'hiddenlists', '', '');
		if(!empty($hiddenlistsstring)){

			$hiddenlists = explode(',',$hiddenlistsstring);

			acymailing_arrayToInteger($hiddenlists);

			foreach($hiddenlists as $id => $idOneList){
				if(!isset($currentSubscription[$idOneList])){
					$addlists[$statusAdd][] = $idOneList;
					continue;
				}

				if($currentSubscription[$idOneList]->status == $statusAdd || $currentSubscription[$idOneList]->status == 1) continue;

				$updatelists[$statusAdd][] = $idOneList;
			}
		}

		$visibleSubscription = acymailing_getVar('array', 'subscription', '', '');

		if(!empty($visibleSubscription)){
			foreach($visibleSubscription as $idOneList){
				if(empty($idOneList)) continue;

				if(!isset($currentSubscription[$idOneList])){
					$addlists[$statusAdd][] = $idOneList;
					continue;
				}

				if($currentSubscription[$idOneList]->status == $statusAdd || $currentSubscription[$idOneList]->status == 1) continue;

				$updatelists[$statusAdd][] = $idOneList;
			}
		}

		$visiblelistsstring = acymailing_getVar('string', 'visiblelists', '', '');

		if(!empty($visiblelistsstring)){

			$visiblelist = explode(',',$visiblelistsstring);
			acymailing_arrayToInteger($visiblelist);

			foreach($visiblelist as $idList){
				if(!in_array($idList,$visibleSubscription) AND !empty($currentSubscription[$idList]) AND $currentSubscription[$idList]->status != '-1'){
					$updatelists['-1'][] = $idList;
				}
			}
		}

		$listsubClass = acymailing_get('class.listsub');
		$status = true;
		$updateMessage = false;
		$insertMessage = false;
		if($allowSubscriptionModifications){
			if(!empty($updatelists)){
				$status = $listsubClass->updateSubscription($myuser->subid,$updatelists) && $status;
				$updateMessage = true;
			}
			if(!empty($addlists)){
				$status = $listsubClass->addSubscription($myuser->subid,$addlists) && $status;
				$insertMessage = true;
			}
		}else{
			$mailClass = acymailing_get('helper.mailer');
			$mailClass->checkConfirmField = false;
			$mailClass->checkEnabled = false;
			$mailClass->report = false;
			$modifySubscriptionSuccess = $mailClass->sendOne('modif',$myuser->subid);
			$modifySubscriptionError = $mailClass->reportMessage;
		}

		$userClass->sendNotification();

		if($config->get('subscription_message',1) || $ajax){
			if($allowSubscriptionModifications){
				if($statusAdd == 2){
					if($userClass->confirmationSentSuccess){
						$msg = 'CONFIRMATION_SENT';
						$code = 2;
						$msgtype = 'success';
					}else{
						$msg = $userClass->confirmationSentError;
						$code = 7;
						$msgtype = 'error';
					}
				}else{
					if($insertMessage){
						$msg = 'SUBSCRIPTION_OK';
						$code = 3;
						$msgtype = 'success';
					}elseif($updateMessage){

						$msg = 'SUBSCRIPTION_UPDATED_OK';
						$code = 4;
						$msgtype = 'success';
					}else{
						$msg = 'ALREADY_SUBSCRIBED';
						$code = 5;
						$msgtype = 'success';
					}
				}
			}else{
				if($modifySubscriptionSuccess){
					$msg = 'IDENTIFICATION_SENT';
					$code = 6;
					$msgtype = 'warning';
				}else{
					$msg = $modifySubscriptionError;
					$code = 8;
					$msgtype = 'error';
				}
			}

			if($msg == strtoupper($msg)){
				$source = acymailing_getVar('cmd', 'acy_source');
				if(strpos($source, 'module_') !== false){
					$moduleId = '_'.strtoupper($source);
					if(acymailing_translation($msg.$moduleId) != $msg.$moduleId) $msg = $msg.$moduleId;
				}
				$msg = acymailing_translation($msg);
			}

			$replace = array();
			$replace['{list:name}'] = '';
			foreach($myuser as $oneProp => $oneVal){
				$replace['{user:'.$oneProp.'}'] = $oneVal;
			}
			$msg = str_replace(array_keys($replace),$replace,$msg);

			if($config->get('redirect_tags', 0) == 1) $redirectUrl = str_replace(array_keys($replace),$replace,$redirectUrl);

			if($ajax){
				$msg = str_replace(array("\n","\r",'"','\\'),array(' ',' ',"'",'\\\\'),$msg);
				echo '{"message":"'.$msg.'","type":"'.($msgtype == 'warning' ? 'success' : $msgtype).'","code":"'.$code.'"}';
			}elseif(empty($redirectUrl)){
				acymailing_enqueueMessage($msg,$msgtype == 'success' ? 'info' : $msgtype);
			}else{
				if(strlen($msg)>0){
					if($msgtype == 'success') acymailing_enqueueMessage($msg);
					elseif($msgtype == 'warning') acymailing_enqueueMessage($msg,'notice');
					else acymailing_enqueueMessage($msg,'error');
				}
			}
		}

		$notifContact = $config->get('notification_contact');
		if(!empty($notifContact)){
			$mailer = acymailing_get('helper.mailer');
			$mailer->autoAddUser = true;
			$mailer->checkConfirmField = false;
			$mailer->report = false;
			foreach($user as $field => $value) $mailer->addParam('user:'.$field,$value);
			$mailer->addParam('user:subscription',$listsubClass->getSubscriptionString($user->subid));
			$mailer->addParam('user:subscriptiondates',$listsubClass->getSubscriptionString($user->subid, true));
			$mailer->addParam('user:ip',$userHelper->getIP());
			if(!empty($userClass->geolocData)){
				foreach($userClass->geolocData as $map=>$value){
					$mailer->addParam('geoloc:notif_'.$map,$value);
				}
			}
			$mailer->addParamInfo();
			$allUsers = explode(' ',trim(str_replace(array(';',','),' ',$notifContact)));
			foreach($allUsers as $oneUser){
				if(empty($oneUser)) continue;
				$mailer->sendOne('notification_contact',$oneUser);
			}
		}

		if ($ajax) exit;

		$this->_closepop($redirectUrl);

		if(!empty($redirectUrl)) acymailing_redirect($redirectUrl);
		if('joomla' == 'wordpress') acymailing_redirect(acymailing_rootURI());
		return true;
	}

	private function _closepop($redirectUrl){
		$this->_checkRedirectUrl($redirectUrl);
		if(empty($redirectUrl)) return;
		if(!acymailing_getVar('int', 'closepop')) acymailing_redirect($redirectUrl);

		echo '<script type="text/javascript" language="javascript">
					window.parent.document.location.href=\''.str_replace('&amp;','&',$redirectUrl).'\';
				</script>';

		$app = JFactory::getApplication();
		$messages = $app->getMessageQueue();
		if(!empty($messages)){
			$session = JFactory::getSession();
			$session->set('application.queue', $messages);
		}

		exit;
	}

	function optout(){
		acymailing_checkRobots();
		$config = acymailing_config();
		$userClass = acymailing_get('class.subscriber');
		$userClass->geolocRight = true;

		$ajax = acymailing_getVar('int', 'ajax', 0);
		if($ajax){
			@ob_end_clean();
			header("Content-type:text/html; charset=utf-8");
		}


		$redirectUrl = urldecode(acymailing_getVar('string', 'redirectunsub'));

		$formData = acymailing_getVar('array',  'user', array(), '');

		$email = trim(strip_tags(@$formData['email']));

		$currentEmail = acymailing_currentUserEmail();
		if(empty($email) && !empty($currentEmail)){
			$email = $currentEmail;
		}

		$userHelper = acymailing_get('helper.user');
		if(empty($email) || !$userHelper->validEmail($email)){
			if ($ajax) echo '{"message":"'.str_replace('"','\"',acymailing_translation('VALID_EMAIL')).'","type":"error","code":"7"}';
			else echo "<script>alert('".acymailing_translation('VALID_EMAIL',true)."'); window.history.go(-1);</script>";
			exit;
		}

		$alreadyExists = $userClass->get($email);

		if(empty($alreadyExists->subid)){
			if ($ajax){
				echo '{"message":"'.str_replace('"','\"',acymailing_translation_sprintf('NOT_IN_LIST','<b><i>'.$email.'</i></b>')).'","type":"error","code":"8"}';
				exit;
			}
			if(empty($redirectUrl)) acymailing_enqueueMessage(acymailing_translation_sprintf('NOT_IN_LIST','<b><i>'.$email.'</i></b>'),'warning');
			else acymailing_enqueueMessage(acymailing_translation_sprintf('NOT_IN_LIST','<b><i>'.$email.'</i></b>'),'notice');
			return $this->_closepop($redirectUrl);
		}

		$currentEmail = acymailing_currentUserEmail();
		if($config->get('allow_modif','data') == 'none' AND (empty($currentEmail) || $currentEmail != $email)){
			$mailClass = acymailing_get('helper.mailer');
			$mailClass->checkConfirmField = false;
			$mailClass->checkEnabled = false;
			$mailClass->report = false;
			$mailClass->sendOne('modif',$alreadyExists->subid);
			if ($ajax){
				echo '{"message":"'.str_replace('"','\"',acymailing_translation('IDENTIFICATION_SENT')).'","type":"success","code":"9"}';
				exit;
			}
			if(empty($redirectUrl)) acymailing_enqueueMessage(acymailing_translation( 'IDENTIFICATION_SENT' ),'warning');
			else acymailing_enqueueMessage(acymailing_translation( 'IDENTIFICATION_SENT' ), 'notice');
			return $this->_closepop($redirectUrl);
		}

		$visibleSubscription = acymailing_getVar('array', 'subscription', '', '');
		$currentSubscription = $userClass->getSubscriptionStatus($alreadyExists->subid);
		$hiddenSubscription = explode(',',acymailing_getVar('string', 'hiddenlists', '', ''));

		$updatelists = array();
		$removeSubscription = array_merge($visibleSubscription,$hiddenSubscription);
		foreach($removeSubscription as $idList){
			if(!empty($currentSubscription[$idList]) AND $currentSubscription[$idList]->status != '-1'){
				$updatelists[-1][] = $idList;
			}
		}

		if(!empty($updatelists)){
			$listsubClass = acymailing_get('class.listsub');
			$listsubClass->updateSubscription($alreadyExists->subid,$updatelists);
			if($config->get('unsubscription_message',1)){
				if ($ajax){
					echo '{"message":"'.str_replace('"','\"',acymailing_translation('UNSUBSCRIPTION_OK')).'","type":"success","code":"10"}';
					exit;
				}
				if(empty($redirectUrl)) acymailing_enqueueMessage(acymailing_translation('UNSUBSCRIPTION_OK'),'info');
				else{
					if(strlen(acymailing_translation('UNSUBSCRIPTION_OK'))>0){
						acymailing_enqueueMessage(acymailing_translation('UNSUBSCRIPTION_OK'));
					}
				}
			}
		}elseif($config->get('unsubscription_message',1) || $ajax){
			if ($ajax){
				echo '{"message":"'.str_replace('"','\"',acymailing_translation('UNSUBSCRIPTION_NOT_IN_LIST')).'","type":"success","code":"11"}';
				exit;
			}
			if(empty($redirectUrl)) acymailing_enqueueMessage(acymailing_translation('UNSUBSCRIPTION_NOT_IN_LIST'),'info');
			else acymailing_enqueueMessage(acymailing_translation('UNSUBSCRIPTION_NOT_IN_LIST'));
		}

		if ($ajax) exit;

		return $this->_closepop($redirectUrl);

	}

	function _checkRedirectUrl($redirectUrl){
		$config = acymailing_config();
		$regex = trim(preg_replace('#[^a-z0-9\|\.]#i','',$config->get('module_redirect')),'|');
		if(empty($regex) || $regex == 'all' || empty($redirectUrl) || 'joomla' != 'joomla') return;

		preg_match('#^(https?://)?(www.)?([^/]*)#i',$redirectUrl,$resultsurl);
		$domainredirect = preg_replace('#[^a-z0-9\.]#i','',@$resultsurl[3]);
		if(preg_match('#^'.$regex.'$#i',$domainredirect)) return;

		$regex .= '|'.$domainredirect;
		echo "<script>alert('This redirect url is not allowed, you should change the \"".acymailing_translation('REDIRECTION_MODULE',true)."\" parameter from the AcyMailing configuration page to \"".$regex."\" to allow it or set it to \"all\" to allow all urls'); window.history.go(-1);</script>";
		exit;
	}

	function listing(){
		$errorMsg = "You shouldn't see this page. If you come from an external subscription form, maybe the URL in the form action is not valid.";
		if(!empty($_SERVER['HTTP_HOST'])) $errorMsg .= "<br />Host: ".htmlspecialchars($_SERVER['HTTP_HOST'],ENT_COMPAT, 'UTF-8');
		if(!empty($_SERVER['REQUEST_URI'])) $errorMsg .= "<br />URI: ".htmlspecialchars($_SERVER['REQUEST_URI'],ENT_COMPAT, 'UTF-8');
		if(!empty($_SERVER['HTTP_REFERER'])) $errorMsg .= "<br />Referer: ".htmlspecialchars($_SERVER['HTTP_REFERER'],ENT_COMPAT, 'UTF-8');
		acymailing_display($errorMsg, 'error');
	}
}
controllers/statistics.php000060400000002541152455302720012020 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
acymailing_cmsLoaded();

class StatisticsController extends acymailingController{

    function listing(){
        acymailing_setVar('tmpl','component');

        $statsClass = acymailing_get('class.stats');
        $statsClass->saveStats();

        header( 'Cache-Control: no-store, no-cache, must-revalidate' );
        header( 'Cache-Control: post-check=0, pre-check=0', false );
        header( 'Pragma: no-cache' );
        header("Expires: Wed, 17 Sep 1975 21:32:10 GMT");

        ob_end_clean();

        acymailing_importPlugin('acymailing');
        $results = acymailing_trigger('acymailing_getstatpicture');

        $picture = reset($results);
        if(empty($picture)) $picture = 'media/com_acymailing/images/statpicture.png';

        $picture = ltrim(str_replace(array('\\','/'),DS,$picture),DS);

        $imagename = ACYMAILING_ROOT.$picture;
        $handle = fopen($imagename, 'r');
        if(!$handle) exit;

        header("Content-type: image/png");
        $contents = fread($handle, filesize($imagename));
        fclose($handle);
        echo $contents;
        exit;
    }
}
controllers/frontemail.php000060400000001161152455302720011763 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$userid = acymailing_currentUserId();
if(empty($userid)) die(acymailing_translation('ASK_LOG'));

$config = acymailing_config();
if(!acymailing_isAllowed($config->get('acl_lists_manage', 'all'))) die('You are not allowed to access this page');

include(ACYMAILING_BACK.'controllers'.DS.'email.php');
class FrontemailController extends EmailController{
}
controllers/frontlist.php000060400000003464152455302720011657 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$currentUserid = acymailing_currentUserId();
if(empty($currentUserid)){
	acymailing_askLog();
	return false;
}

$config = acymailing_config();
if(!acymailing_isAllowed($config->get('acl_lists_manage', 'all'))) die(acymailing_translation('ACY_NOTALLOWED'));

include(ACYMAILING_BACK.'controllers'.DS.'list.php');
class FrontlistController extends ListController{
	function __construct($config = array()){
		parent::__construct($config);

		$listClass = acymailing_get('class.list');
		$lists = $listClass->getFrontendLists('listid');

		$listid = acymailing_getVar('int', 'listid', 0);

		if(empty($lists) || (!empty($listid) && !in_array($listid, array_keys($lists)))) {
			acymailing_redirect('index.php', acymailing_translation('ACY_NOTALLOWED'), 'error');
			return false;
		}
	}

	function remove(){
		$cids = acymailing_getVar('array', 'cid', array(), '');
		acymailing_arrayToInteger($cids);

		if(empty($cids)) acymailing_redirect('index.php?option=com_acymailing&ctrl=frontlist');

		$lists = acymailing_loadObjectList('SELECT * FROM `#__acymailing_list` WHERE listid IN ('.implode(',', $cids).')');
		foreach($lists as $list){
			if(acymailing_currentUserId() != $list->userid){
				acymailing_enqueueMessage(acymailing_translation_sprintf('ACY_NO_ACCESS_LIST', $list->listid), 'error');
				array_splice($cids, array_search($list->listid, $cids), 1);
			}
		}

		acymailing_setVar('cid', $cids);
		return parent::remove();
	}

	function form(){
		return $this->edit();
	}

	function edit(){
		acymailing_setVar('layout', 'form');
		return parent::display();
	}
}
controllers/stats.php000060400000003767152455302720010777 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.6.1
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class StatsController extends acymailingController{

	function listing(){
		JRequest::setVar('tmpl','component');

		$statsClass = acymailing_get('class.stats');
		$statsClass->saveStats();

		header( 'Cache-Control: no-store, no-cache, must-revalidate' );
		header( 'Cache-Control: post-check=0, pre-check=0', false );
		header( 'Pragma: no-cache' );
		header("Expires: Wed, 17 Sep 1975 21:32:10 GMT");

		ob_end_clean();

		JPluginHelper::importPlugin('acymailing');
		$this->dispatcher = JDispatcher::getInstance();
		$results = $this->dispatcher->trigger('acymailing_getstatpicture');

		$picture = reset($results);
		if(empty($picture)) $picture = 'media/com_acymailing/images/statpicture.png';

		$picture = ltrim(str_replace(array('\\','/'),DS,$picture),DS);

		$imagename = ACYMAILING_ROOT.$picture;
		$handle = fopen($imagename, 'r');
		if(!$handle) exit;

		header("Content-type: image/png");
		$contents = fread($handle, filesize($imagename));
		fclose($handle);
		echo $contents;
		exit;
	}

	function detecttimeout(){

		$config = acymailing_config();
		if($config->get('security_key') != JRequest::getString('seckey')) die('wrong key');

		$db = JFactory::getDBO();
		$db->setQuery("REPLACE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('max_execution_time','5'), ('last_maxexec_check','".time()."')");
		$db->query();

		@ini_set('max_execution_time',600);
		@ignore_user_abort(true);

		$i = 0;
		while($i < 480){
			sleep(8);
			$i += 10;
			$db->setQuery("UPDATE `#__acymailing_config` SET `value` = '".intval($i)."' WHERE `namekey` = 'max_execution_time'");
			$db->query();
			$db->setQuery("UPDATE `#__acymailing_config` SET `value` = '".time()."' WHERE `namekey` = 'last_maxexec_check'");
			$db->query();
			sleep(2);
		}
		exit;
	}
}
controllers/frontbounces.php000060400000001646152455302720012342 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$currentUserid = acymailing_currentUserId();
if(empty($currentUserid)){
	acymailing_askLog();
	return false;
}

$config = acymailing_config();
if(!acymailing_isAllowed($config->get('acl_statistics_manage', 'all'))) die(acymailing_translation('ACY_NOTALLOWED'));

include(ACYMAILING_BACK.'controllers'.DS.'bounces.php');


class FrontbouncesController extends BouncesController{

	function __construct($config = array()){
		parent::__construct($config);
		$task = acymailing_getVar('cmd', 'task');
		if($task != 'chart') die(acymailing_translation('ACY_NOTALLOWED'));
	}

	function chart(){
		acymailing_setVar('layout', 'chart');
		return parent::display();
	}
}
controllers/url.php000060400000001672152455302720010434 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class UrlController extends acymailingController{

	function __construct($config = array())
	{
		parent::__construct($config);

		acymailing_setVar('tmpl','component');
		$this->registerDefaultTask('click');

	}


	function sef(){
		$urls = acymailing_getVar('array', 'urls', array(), '');
		$result = array();

		$uri = acymailing_rootURI();
		foreach($urls as $url){
			$url = base64_decode($url);
			$link = acymailing_route($url, false);
			if(!empty($uri) && strpos($link, $uri) === 0) $link = substr($link, strlen($uri));

			$link = ltrim($link, '/');

			$mainurl = acymailing_mainURL($link);
			$result[$url] = $mainurl.$link;
		}
		echo json_encode($result);
		exit;
	}
}
controllers/index.html000060400000000054152455302720011107 0ustar00<html><body bgcolor="#FFFFFF"></body></html>controllers/lists.php000060400000000507152455302720010764 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class ListsController extends acymailingController{

}
controllers/frontchooselist.php000060400000000615152455302720013053 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

include(ACYMAILING_BACK.'controllers'.DS.'chooselist.php');

class FrontchooselistController extends ChooselistController{
}
controllers/frontfile.php000060400000001370152455302720011615 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$currentUserid = acymailing_currentUserId();
if(empty($currentUserid)){
	acymailing_askLog();
	return false;
}

include(ACYMAILING_BACK.'controllers'.DS.'file.php');

class FrontfileController extends FileController
{
	function __construct($config = array()){
		parent::__construct($config);

		$task = acymailing_getVar('string', 'task');
		if($task != 'select') die('Access not allowed');
	}

	function select(){
		acymailing_setVar('layout', 'select');
		return parent::display();
	}
}
index.html000060400000000054152455302720006541 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontchooselist/tmpl/index.html000060400000000054152455302720014077 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontchooselist/tmpl/listing.php000060400000000534152455302720014267 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php include(ACYMAILING_BACK.'views'.DS.'chooselist'.DS.'tmpl'.DS.'listing.php');
views/frontchooselist/tmpl/customfields.php000060400000006045152455302720015322 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<script language="javascript" type="text/javascript">
	<!--
		var selectedContents = new Array();
		var allElements = <?php echo count($this->rows);?>;
		<?php
			foreach($this->rows as $oneRow){
				if(!empty($oneRow->selected)){
					echo "selectedContents['".$oneRow->namekey."'] = 'content';";
				}
			}
		?>
		function applyContent(contentid,rowClass){
			if(selectedContents[contentid]){
				window.document.getElementById('content'+contentid).className = rowClass;
				delete selectedContents[contentid];
			}else{
				window.document.getElementById('content'+contentid).className = 'selectedrow';
				selectedContents[contentid] = 'content';
			}
		}

		function insertTag(){
			var tag = '';
			for(var i in selectedContents){
				if(selectedContents[i] == 'content'){
					allElements--;
					if(tag != '') tag += ',';
					tag = tag + i;
				}
			}

			window.top.document.getElementById('<?php echo $this->controlName; ?>customfields').value = tag;
			parent.acymailing.setOnclickPopup('link<?php echo $this->controlName; ?>customfields', '<?php echo acymailing_completeLink('chooselist&task=customfields&control='.$this->controlName); ?>&values='+tag, 650, 375);

			acymailing.closeBox(true);
		}
	//-->
	</script>
	<style type="text/css">
		table.acymailing_table tr.selectedrow td{
			background-color:#FDE2BA;
		}
	</style>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'chooselist') ?>" method="post" name="adminForm" id="adminForm">
		<div style="float:right;margin-bottom : 10px">
			<button class="acymailing_button_grey" id="insertButton" onclick="insertTag(); return false;"><?php echo acymailing_translation('ACY_APPLY'); ?></button>
		</div>
		<div style="clear:both"></div>
		<table class="acymailing_table" cellpadding="1">
			<thead>
				<tr>
					<th class="title">
					</th>
					<th class="title">
						<?php echo acymailing_translation('FIELD_COLUMN'); ?>
					</th>
					<th class="title">
						<?php echo acymailing_translation('FIELD_LABEL'); ?>
					</th>
					<th class="title titleid">
						<?php echo acymailing_translation('ACY_ID'); ?>
					</th>
				</tr>
			</thead>
			<tbody>
				<?php
					$k = 0;

					foreach($this->rows as $row){
				?>
					<tr class="<?php echo empty($row->selected) ? "row$k" : 'selectedrow'; ?>" id="content<?php echo $row->namekey; ?>" onclick="applyContent('<?php echo $row->namekey."','row$k'"?>);" style="cursor:pointer;">
						<td class="acytdcheckbox"></td>
						<td>
						<?php echo $row->namekey; ?>
						</td>
						<td>
						<?php echo $this->fieldsClass->trans($row->fieldname); ?>
						</td>
						<td align="center" style="text-align:center" >
							<?php echo $row->fieldid; ?>
						</td>
					</tr>
				<?php
						$k = 1-$k;
					}
				?>
			</tbody>
		</table>
	</form>
</div>
views/frontchooselist/index.html000060400000000054152455302720013123 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontchooselist/view.html.php000060400000003551152455302720013561 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class frontchooselistViewfrontchooselist extends acymailingView
{
	function display($tpl = null)
	{
		$function = $this->getLayout();
		if(method_exists($this,$function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){

		$listClass = acymailing_get('class.list');
		$rows = $listClass->getFrontendLists();

		$selectedLists = acymailing_getVar('string', 'values', '', '');

		if(strtolower($selectedLists) == 'all'){
			foreach($rows as $id => $oneRow){
				$rows[$id]->selected = true;
			}
		}elseif(!empty($selectedLists)){
			$selectedLists = explode(',',$selectedLists);
			foreach($rows as $id => $oneRow){
				if(in_array($oneRow->listid,$selectedLists)){
					$rows[$id]->selected = true;
				}
			}
		}

		$fieldName = acymailing_getVar('string', 'task');
		$controlName = acymailing_getVar('string', 'control', 'params');
		$popup = acymailing_getVar('string', 'popup', '1');

		$this->rows = $rows;
		$this->selectedLists = $selectedLists;
		$this->fieldName = $fieldName;
		$this->controlName = $controlName;
		$this->popup = $popup;
	}

	function customfields(){

		$fieldsClass = acymailing_get('class.fields');
		$fake = null;
		$rows = $fieldsClass->getFields('module', $fake);

		$selected = acymailing_getVar('string', 'values', '', '');
		$selectedvalues = explode(',', $selected);
		foreach($rows as $id => $oneRow){
			if(in_array($oneRow->namekey,$selectedvalues)){
				$rows[$id]->selected = true;
			}
		}

		$this->fieldsClass = $fieldsClass;
		$this->rows = $rows;
		$controlName = acymailing_getVar('string', 'control', 'params');
		$this->controlName = $controlName;
	}
}
views/frontemail/index.html000060400000000054152455302720012036 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontemail/view.html.php000060400000000644152455302720012474 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'email'.DS.'view.html.php');
class FrontemailViewFrontemail extends EmailViewEmail
{
	var $ctrl = 'frontemail';
}
views/frontemail/tmpl/form.php000060400000003156152455302720012477 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><fieldset id="acy_list_form_menu">
	<div class="toolbar" id="acytoolbar" style="float: right;">
		<table>
			<tr>
				<td id="acybutton_email_template"><a onclick="displayTemplates(); return false;" href="#" ><span class="icon-32-acytemplate" title="<?php echo acymailing_translation('ACY_TEMPLATES'); ?>"></span><?php echo acymailing_translation('ACY_TEMPLATES'); ?></a></td>
				<td id="acybutton_email_tag"><a onclick="try{IeCursorFix();}catch(e){}; displayTags(); return false;" href="#" ><span class="icon-32-acytags" title="<?php echo acymailing_translation('TAGS'); ?>"></span><?php echo acymailing_translation('TAGS'); ?></a></td>
				<td id="acybutton_email_send"><a onclick="acymailing.submitbutton('test'); return false;" href="#" ><span class="icon-32-send" title="<?php echo acymailing_translation('SEND_TEST'); ?>"></span><?php echo acymailing_translation('SEND_TEST'); ?></a></td>
				<td id="acybutton_email_apply"><a onclick="acymailing.submitbutton('apply'); return false;" href="#" ><span class="icon-32-apply" title="<?php echo acymailing_translation('ACY_APPLY'); ?>"></span><?php echo acymailing_translation('ACY_APPLY'); ?></a></td>
			</tr>
		</table>
	</div>
	<div class="acyheader" style="float: left;"><h1><?php echo acymailing_translation('ACY_EDIT'); ?></h1></div>
</fieldset>
<?php
include(ACYMAILING_BACK.'views'.DS.'email'.DS.'tmpl'.DS.'form.php');
views/frontemail/tmpl/form.xml000060400000000130152455302720012475 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout hidden="true" />
</metadata>
views/frontemail/tmpl/index.html000060400000000054152455302720013012 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontlist/index.html000060400000000054152455302720011722 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontlist/tmpl/index.html000060400000000054152455302720012676 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontlist/tmpl/listing.php000060400000003716152455302720013073 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><fieldset id="acy_list_listing_menu">
	<div class="toolbar" id="acytoolbar" style="float: right;">
		<table>
			<tr>
				<?php if(acymailing_isAllowed($this->config->get('acl_lists_manage','all'))){ ?>
					<td id="acybutton_subscriber_add">
						<a onclick="acymailing.submitbutton('add'); return false;" href="#" >
							<span class="icon-32-new" title="<?php echo acymailing_translation('ACY_NEW'); ?>"></span><?php echo acymailing_translation('ACY_NEW'); ?>
						</a>
					</td>
					<td id="acybutton_subscriber_edit">
						<a onclick="if(document.adminForm.boxchecked.value==0){alert('<?php echo acymailing_translation('PLEASE_SELECT',true);?>');}else{ acymailing.submitbutton('edit')} return false;" href="#" >
							<span class="icon-32-edit" title="<?php echo acymailing_translation('ACY_EDIT'); ?>"></span><?php echo acymailing_translation('ACY_EDIT'); ?>
						</a>
					</td>
				<?php } ?>
				<?php if(acymailing_isAllowed($this->config->get('acl_lists_delete','all'))){ ?>
					<td id="acybutton_subscriber_delete">
						<a onclick="if(document.adminForm.boxchecked.value==0){alert('<?php echo acymailing_translation('PLEASE_SELECT',true);?>');}else{if(confirm('<?php echo acymailing_translation('ACY_VALIDDELETEITEMS',true); ?>')){acymailing.submitbutton('remove');}} return false;" href="#" >
							<span class="icon-32-delete" title="<?php echo acymailing_translation('ACY_DELETE'); ?>"></span><?php echo acymailing_translation('ACY_DELETE'); ?>
						</a>
					</td>
				<?php } ?>
			</tr>
		</table>
	</div>
	<div class="acyheader" style="float: left;"><h1><?php echo acymailing_translation('LISTS'); ?></h1></div>
</fieldset>

<?php
include(ACYMAILING_BACK.'views'.DS.'list'.DS.'tmpl'.DS.'listing.php');
views/frontlist/tmpl/listing.xml000060400000000353152455302720013076 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="Front-end list management">
		<message>Access the front-end list management</message>
	</layout>
	<state>
		<name>Front-end list management</name>
	</state>
</metadata>
views/frontlist/tmpl/form.xml000060400000000130152455302720012361 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout hidden="true" />
</metadata>
views/frontlist/tmpl/form.php000060400000002562152455302720012363 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><fieldset id="acy_list_form_menu">
	<div class="toolbar" id="acytoolbar" style="float: right;">
		<table>
			<tr>
				<td id="acybutton_subscriber_save"><a onclick="acymailing.submitbutton('save'); return false;" href="#" ><span class="icon-32-save" title="<?php echo acymailing_translation('ACY_SAVE'); ?>"></span><?php echo acymailing_translation('ACY_SAVE'); ?></a></td>
				<td id="acybutton_subscriber_apply"><a onclick="acymailing.submitbutton('apply'); return false;" href="#" ><span class="icon-32-apply" title="<?php echo acymailing_translation('ACY_APPLY'); ?>"></span><?php echo acymailing_translation('ACY_APPLY'); ?></a></td>
				<td id="acybutton_subscriber_cancel"><a onclick="acymailing.submitbutton('cancel'); return false;" href="#" ><span class="icon-32-cancel" title="<?php echo acymailing_translation('ACY_CANCEL'); ?>"></span><?php echo acymailing_translation('ACY_CANCEL'); ?></a></td>
			</tr>
		</table>
	</div>
	<div class="acyheader" style="float: left;"><h1><?php echo acymailing_translation('LIST'); ?></h1></div>
</fieldset>
<?php
include(ACYMAILING_BACK.'views'.DS.'list'.DS.'tmpl'.DS.'form.php');
views/frontlist/view.html.php000060400000001317152455302720012356 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'list'.DS.'view.html.php');
class FrontlistViewFrontlist extends ListViewList
{
	var $ctrl = 'frontlist';

	function display($tpl = null){
		global $Itemid;
		$this->Itemid = $Itemid;

		parent::display($tpl);
	}

	function listing(){
		if(empty($_POST) && !acymailing_getVar('int', 'start') && !acymailing_getVar('int', 'limitstart')){
			acymailing_setVar('limitstart',0);
		}

		return parent::listing();
	}
}
views/frontfile/index.html000060400000000054152455302720011666 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontfile/tmpl/index.html000060400000000054152455302720012642 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontfile/tmpl/select.php000060400000000525152455302720012640 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'file'.DS.'tmpl'.DS.'select.php');
views/frontfile/view.html.php000060400000000635152455302720012324 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'file'.DS.'view.html.php');

class FrontfileViewFrontfile extends FileViewFile
{
	var $ctrl='frontfile';
}
views/lists/tmpl/listing.xml000060400000003656152455302720012221 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="Mailing Lists Archive (All)">
		<message>This menu enables you to display all AcyMailing Mailing Lists on your website in order to see the archive Newsletters</message>
	</layout>
	<state>
		<name>Mailing Lists Archive (All)</name>
		<params addpath="/components/com_acymailing/params">
			<param name="help" type="help" default="newsletter-archive-section" label="Help" description="Click on the help button to get some help" />
			<param name="lists" type="lists" default="All" label="VISIBLE_LISTS" description="The following selected lists will be displayed on your archive section." />
			<param name="listsintrotext" type="textarea" rows="5" cols="35" default="" label="INTRO_TEXT" description="This text will be displayed before the lists inside a div class=acymailing_listsintrotext" />
			<param name="listsfinaltext" type="textarea" rows="5" cols="35" default="" label="POST_TEXT" description="This text will be displayed after the lists inside a div class=acymailing_listsfinaltext" />
		</params>
	</state>
	<fields name="params" addfieldpath="/components/com_acymailing/params">
		<fieldset name="basic">
			<field name="help" type="help" default="newsletter-archive-section" label="Help" description="Click on the help button to get some help" />
			<field name="lists" type="lists" default="All" label="VISIBLE_LISTS" description="The following selected lists will be displayed on your archive section." />
			<field name="listsintrotext" type="textarea" rows="5" cols="35" default="" label="INTRO_TEXT" description="This text will be displayed before the lists inside a div class=acymailing_listsintrotext" filter="SAFEHTML" />
			<field name="listsfinaltext" type="textarea" rows="5" cols="35" default="" label="POST_TEXT" description="This text will be displayed after the listsinside a div class=acymailing_listsfinaltext" filter="SAFEHTML" />
		</fieldset>
	</fields>
</metadata>
views/lists/tmpl/listing.php000060400000002263152455302720012201 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acylistslisting" >
<h1 class="componentheading"><?php echo acymailing_translation('MAILING_LISTS'); ?></h1>
<?php
	if(!empty($this->listsintrotext)) echo '<div class="acymailing_listsintrotext" >'.$this->listsintrotext.'</div>';
	$k = 0;

	foreach($this->rows as $i => $oneList){
		$row =& $this->rows[$i];
		$frontEndAccess = true;
		$frontEndManagement = false;

		if(!$frontEndManagement AND (!$frontEndAccess OR !$row->published OR !$row->visible)) continue;
?>

	<div class="<?php echo "acymailing_list acymailing_row$k"; ?>">
			<div class="list_name"><a href="<?php echo acymailing_completeLink('archive&listid='.$row->listid.'-'.$row->alias.$this->item)?>"><?php echo $row->name; ?></a></div>
			<div class="list_description"><?php echo $row->description; ?></div>
	</div>
<?php
		$k = 1-$k;
	}

	if(!empty($this->listsfinaltext)) echo '<div class="acymailing_listsfinaltext" >'.$this->listsfinaltext.'</div>';
?>
</div>
views/lists/tmpl/index.html000060400000000054152455302720012010 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/lists/index.html000060400000000054152455302720011034 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/lists/view.feed.php000060400000005710152455302720011430 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listsViewlists  extends acymailingView
{
	function display($tpl = null){
		global $Itemid;

		$doc	= JFactory::getDocument();
		$feedEmail = (@acymailing_getCMSConfig('feed_email')) ? acymailing_getCMSConfig('feed_email') : 'author';
		$siteEmail = acymailing_getCMSConfig('mailfrom');
		$menu = acymailing_getMenu();
		$listed = array();

		$myItem = empty($Itemid) ? '' : '&Itemid='.$Itemid;
		$selectedLists = 'all';
		if (is_object( $menu )) {
			$menuparams = new acyParameter( $menu->params );
			$selectedLists = $menuparams->get('lists','all');
		}
		$listsClass = acymailing_get('class.list');
		$allLists = $listsClass->getLists('listid',$selectedLists);
		foreach($allLists as $oneList){
			if($oneList->published && $oneList->visible && acymailing_isAllowed($oneList->access_sub)){
				$listed[] = $oneList->listid;
			}
		}

		$config = acymailing_config();
		$filters = array();
		$filters[] = 'a.type = \'news\'';
		$filters[] = 'a.published = 1';
		$filters[] = 'a.visible = 1';
		$filters[] = 'c.listid IN ('.implode(',',$listed).')';
		$query = 'SELECT a.*,c.listid';
		$query .= ' FROM '.acymailing_table('listmail').' as c';
		$query .= ' LEFT JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
		$query .= ' WHERE ('.implode(') AND (',$filters).')';
		$query .= ' GROUP BY a.mailid ORDER BY a.'.$config->get('acyrss_order','senddate').' '.($config->get('acyrss_order','senddate') == 'subject' ? 'ASC' : 'DESC');
		$query .= ' LIMIT '.$config->get('acyrss_element','20');
		$rows = acymailing_loadObjectList($query);
		$doc->title = $config->get('acyrss_name','');
		$doc->description = $config->get('acyrss_description','');

		$receiver = new stdClass();
		$receiver->name = acymailing_translation('VISITOR');
		$receiver->subid = 0;
		$mailClass = acymailing_get('helper.mailer');
		$mailClass->loadedToSend = false;

		foreach ( $rows as $row )
		{
			$oneMail = $mailClass->load($row->mailid);
			$oneMail->sendHTML = true;
			acymailing_trigger('acymailing_replaceusertags', array(&$oneMail, &$receiver, false));
			$title = $this->escape( $oneMail->subject );
			$title = html_entity_decode( $title );
			$oneList = $allLists[$row->listid];
			$link = acymailing_route('index.php?option=com_acymailing&amp;ctrl=archive&amp;task=view&amp;listid='.$oneList->listid.'-'.$oneList->alias.'&amp;mailid='.$row->mailid.'-'.$row->alias);

			$description	= $oneMail->body;
			$author			= $oneMail->userid;
			$item = new JFeedItem();
			$item->title 		= $title;
			$item->link 		= $link;
			$item->description 	= $description;
			$item->date			= acymailing_getDate($oneMail->senddate,'%Y-%m-%d %H:%M:%S');
			$item->category   	= acymailing_translation('NEWSLETTER');

			$doc->addItem( $item );
		}
	}
}

views/lists/view.html.php000060400000004671152455302720011476 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class listsViewLists extends acymailingView{
	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){
		global $Itemid;
		$config = acymailing_config();

		$menu = acymailing_getMenu();

		if(empty($menu)) {
			acymailing_enqueueMessage(acymailing_translation('ACY_NOTALLOWED'));
			acymailing_redirect('index.php');
		}

		$selectedLists = 'all';

		if(is_object($menu)){
			$menuparams = new acyParameter($menu->params);

			$this->listsintrotext = $menuparams->get('listsintrotext');
			$this->listsfinaltext = $menuparams->get('listsfinaltext');
			$selectedLists = $menuparams->get('lists', 'all');

			$document = JFactory::getDocument();
			if($menuparams->get('menu-meta_description')) $document->setDescription($menuparams->get('menu-meta_description'));
			if($menuparams->get('menu-meta_keywords')) acymailing_addMetadata('keywords', $menuparams->get('menu-meta_keywords'));
			if($menuparams->get('robots')) acymailing_addMetadata('robots', $menuparams->get('robots'));
			if($menuparams->get('page_title')) acymailing_setPageTitle($menuparams->get('page_title'));
		}

		if(empty($menuparams)){
			acymailing_addBreadcrumb(acymailing_translation('MAILING_LISTS'));
		}

		$document = JFactory::getDocument();
		$link = '&format=feed&limitstart=';
		if($config->get('acyrss_format') == 'rss' || $config->get('acyrss_format') == 'both'){
			$attribs = array('type' => 'application/rss+xml', 'title' => 'RSS 2.0');
			$document->addHeadLink(acymailing_route($link.'&type=rss'), 'alternate', 'rel', $attribs);
		}
		if($config->get('acyrss_format') == 'atom' || $config->get('acyrss_format') == 'both'){
			$attribs = array('type' => 'application/atom+xml', 'title' => 'Atom 1.0');
			$document->addHeadLink(acymailing_route($link.'&type=atom'), 'alternate', 'rel', $attribs);
		}

		$listsClass = acymailing_get('class.list');
		$allLists = $listsClass->getLists('', $selectedLists);

		if(acymailing_level(1)){
			$allLists = $listsClass->onlyCurrentLanguage($allLists);
		}

		$myItem = empty($Itemid) ? '' : '&Itemid='.$Itemid;
		$this->rows = $allLists;
		$this->item = $myItem;
	}
}
views/archive/view.pdf.php000060400000004406152455302720011562 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class archiveViewArchive extends acymailingView
{
	function display($tpl = null)
	{
		$function = $this->getLayout();
		if(method_exists($this,$function)) $this->$function();

	}

	function view(){

			$mailid = acymailing_getCID('mailid');

		if(empty($mailid)){
			$query = 'SELECT m.`mailid` FROM `#__acymailing_list` as l LEFT JOIN `#__acymailing_listmail` as lm ON l.listid=lm.listid LEFT JOIN `#__acymailing_mail` as m on lm.mailid = m.mailid';
			$query .= ' WHERE l.`visible` = 1 AND l.`published` = 1 AND m.`visible`= 1 AND m.`published` = 1';
			if(!empty($listid)) $query .= ' AND l.`listid` = '.(int) $listid;
			$query .= ' ORDER BY m.`mailid` DESC LIMIT 1';
			$mailid = acymailing_loadResult($query);

			if(empty($mailid)) return acymailing_raiseError(E_ERROR,  404, 'Newsletter not found');
		}

		$access_sub = true;

			$mailClass = acymailing_get('helper.mailer');
			$mailClass->loadedToSend = false;
			$oneMail = $mailClass->load($mailid);

			if(empty($oneMail->mailid)){
				return acymailing_raiseError(E_ERROR,  404, 'Newsletter not found : '.$mailid );
			}

			if(!$access_sub OR !$oneMail->published OR !$oneMail->visible){
				$key = acymailing_getVar('string', 'key');
				if(empty($key) OR $key !== $oneMail->key){
					acymailing_enqueueMessage('You can not have access to this e-mail','error');
					acymailing_redirect(acymailing_completeLink('lists',false,true));
					return false;
				}
			}

		$currentEmail = acymailing_currentUserEmail();
		if(!empty($currentEmail)){
			$userClass = acymailing_get('class.subscriber');
			$receiver = $userClass->get($currentEmail);
		}else{
			$receiver = new stdClass();
			$receiver->name = acymailing_translation('VISITOR');
		}

		$oneMail->sendHTML = true;
		acymailing_trigger('acymailing_replaceusertags', array(&$oneMail, &$receiver, false));

		acymailing_setPageTitle($oneMail->subject );

		if(!empty($oneMail->text)) echo nl2br($mailClass->textVersion($oneMail->text,false));
			else echo nl2br($mailClass->textVersion($oneMail->body,true));

	}
}
views/archive/tmpl/forward.xml000060400000000130152455302720012457 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout hidden="true" />
</metadata>
views/archive/tmpl/listing_newsletters.php000060400000005154152455302720015125 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php if($this->values->filter){ ?>
	<input placeholder="<?php echo acymailing_translation('ACY_SEARCH'); ?>" type="text" name="search" id="acymailingsearch" value="<?php echo $this->escape($this->pageInfo->search); ?>" class="inputbox"/>
	<button class="btn button buttongo" onclick="this.form.submit();"><?php echo acymailing_translation('JOOMEXT_GO'); ?></button>
	<button class="btn button buttonreset" onclick="document.getElementById('acymailingsearch').value='';this.form.submit();"><?php echo acymailing_translation('JOOMEXT_RESET'); ?></button>
<?php }
echo $this->ordering;
$k = 1;
for($i = 0, $a = count($this->rows); $i < $a; $i++){
	$row =& $this->rows[$i];
	$row->subject = acyEmoji::Decode($row->subject);
	echo '<div class="archiveRow archiveRow'.$k.$this->values->suffix.'">';

	if(!empty($row->thumb)) echo '<img class="archiveItemPict" src="'.$row->thumb.'"/>';
	echo '<span class="acyarchivetitle">';
	$link = acymailing_completeLink('archive&task=view&listid='.$row->listid.'&mailid='.$row->mailid.'-'.strip_tags($row->alias).$this->item, (bool)$this->config->get('open_popup', 1));
	if($this->config->get('open_popup', 1) == 1){
		echo acymailing_popup($link, acymailing_dispSearch($row->subject, $this->pageInfo->search), '', intval($this->config->get('popup_width', 750)), intval($this->config->get('popup_height', 550)));
	}else{
		echo '<a href="'.$link.'">'.acymailing_dispSearch($row->subject, $this->pageInfo->search).'</a>';
	}
	echo '</span>';
	if($this->values->show_senddate && !empty($row->senddate)){
		echo '<span class="sentondate">'.acymailing_translation_sprintf('ACY_SENT_ON', acymailing_getDate($row->senddate, acymailing_translation('DATE_FORMAT_LC3'))).'</span>';
	}
	if($this->values->show_receiveemail){ ?>
		<span class="receiveviaemail">
				<input onclick="changeReceiveEmail(this.checked)" type="checkbox" name="receivemail[]" value="<?php echo $row->mailid; ?>" id="receive_<?php echo $row->mailid; ?>"/> <label for="receive_<?php echo $row->mailid; ?>"><?php echo acymailing_translation('RECEIVE_VIA_EMAIL'); ?></label>
			</span>
		<?php
		if(!empty($row->summary)) echo '<br/>';
	}
	if(!empty($row->summary)) echo '<span class="archiveItemDesc">'.nl2br($row->summary).'</span>';
	echo '</div>';
	$k = 3 - $k;
}
?>
<div class="archivePagination">
	<?php echo $this->pagination->getListFooter();
	echo $this->pagination->getResultsCounter(); ?>
</div>
views/archive/tmpl/view.php000060400000012261152455302720011764 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acyarchiveview">
	<div>
		<?php
		if($this->config->get('frontend_subject',1)){
			echo '<h1 class="contentheading'.$this->values->suffix.'">'.$this->mail->subject;
				if($this->frontEndManagement && ($this->config->get('frontend_modif',1) || ($this->mail->userid == acymailing_currentUserId())) && ($this->config->get('frontend_modif_sent',1) || empty($this->mail->senddate))){
					$editLink = acymailing_completeLink('frontnewsletter&task=edit&mailid='.$this->mail->mailid);
					echo '<a '.(acymailing_getVar('cmd', 'tmpl') == 'component' ? 'target="_blank" ' : '').' href="'.$editLink.'"><img src="'.ACYMAILING_IMAGES.'icons/icon-16-edit.png" alt="'.acymailing_translation('ACY_EDIT',true).'"/></a>';
				}
			echo '</h1>';
		}
		if($this->config->get('frontend_print',0) || $this->config->get('frontend_pdf',0)) {
			$link = 'archive&task=view&mailid='.$this->mail->mailid.'-'.$this->mail->alias;
			$listid = acymailing_getVar('cmd', 'listid');
			if(!empty($listid)) $link .= '&listid='.$listid;
			$key = acymailing_getVar('cmd', 'key');
			if(!empty($key)) $link .= '&key='.$key; ?>
		<div align="right" style="float:right;">
			<table>
			<tr>
		<?php if(!ACYMAILING_J16 && $this->config->get('frontend_pdf',0)){?>
			<td class="buttonheading">
		<?php
			$pdfimage = '<img src="'.ACYMAILING_IMAGES.'icons/icon-32-acypdf.jpg" alt="'.acymailing_translation('PDF').'" />';
			$pdflink = acymailing_completeLink($link,true);
			$pdflink .= strpos($pdflink,'?') ? '&format=pdf' : '?format=pdf';
		?>
			<a href="<?php echo $pdflink; ?>" title="<?php echo acymailing_translation( 'PDF' ); ?>" onclick="window.open(this.href,'win2','status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,width=640,height=480,directories=no,location=no'); return false;" rel="nofollow"><?php echo $pdfimage; ?></a>
			</td>
		<?php }
			if($this->config->get('frontend_print',0)){?>
			<td class="buttonheading">
			<?php $printimage = '<img src="'.ACYMAILING_IMAGES.'icons/icon-32-acyprint.png" alt="'.acymailing_translation( 'ACY_PRINT',true ).'" />'; ?>
			<a title="<?php echo acymailing_translation( 'ACY_PRINT',true ); ?>" href="#" onclick="if(document.getElementById('iframepreview')){document.getElementById('iframepreview').contentWindow.focus();document.getElementById('iframepreview').contentWindow.print();}else{window.print();}return false;"><?php echo $printimage; ?></a>

			</td>
		<?php } ?>
			</tr></table>
		</div>
		<?php } ?>
	</div>
	<div class="newsletter_body" style="min-width:80%" id="newsletter_preview_area"><?php echo $this->mail->html ? $this->mail->body : nl2br($this->mail->altbody); ?></div>
	<?php if(!empty($this->mail->attachments)){?>
	<fieldset class="newsletter_attachments"><legend><?php echo acymailing_translation( 'ATTACHMENTS' ); ?></legend>
	<table>
		<?php foreach($this->mail->attachments as $attachment){
				echo '<tr><td><a href="'.$attachment->url.'" target="_blank">'.$attachment->name.'</a></td></tr>';
		}?>
	</table>
	</fieldset>
	<?php }
		if($this->config->get('comments_feature') == 'jcomments'){
			$comments = ACYMAILING_ROOT.'components'.DS.'com_jcomments'.DS.'jcomments.php';
			if (file_exists($comments)) {
				require_once($comments);
				echo JComments::showComments($this->mail->mailid, 'com_acymailing', $this->mail->subject);
			}
		}elseif($this->config->get('comments_feature') == 'jomcomment'){
			$comments = ACYMAILING_ROOT.'plugins'.DS.'content'.DS.'jom_comment_bot.php';
			if (file_exists($comments)) {
				require_once($comments);
				echo jomcomment($this->mail->mailid, 'com_acymailing');
			}
		}elseif($this->config->get('comments_feature') == 'disqus'){
			$disqus_shortname = $this->config->get('disqus_shortname');
			if(!empty($disqus_shortname))
			{

				$lang_shortcode = explode('-', acymailing_getLanguageTag());
	?>
				<div style="clear:both;"></div><div id="disqus_thread"></div>
				<script type="text/javascript">
					var disqus_identifier = "Joomla_Disqus_MAILID_<?php echo $this->mail->mailid; ?>";
					var disqus_shortname = "<?php echo $disqus_shortname; ?>";
					var disqus_config = function() {
						this.language = "<?php echo $lang_shortcode[0]; ?>";
					};
					(function() {
						var dsq = document.createElement("script"); dsq.type = "text/javascript"; dsq.async = true;
						dsq.src = "http://" + disqus_shortname + ".disqus.com/embed.js";
						(document.getElementsByTagName("head")[0] || document.getElementsByTagName("body")[0]).appendChild(dsq);
					})();
				</script>
				<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
	<?php
			}
		}elseif($this->config->get('comments_feature') == 'rscomments'){
			echo '{rscomments option="com_acymailing" id="'.$this->mail->mailid.'"}';
		}elseif($this->config->get('comments_feature') == 'komento'){
			require_once(ACYMAILING_ROOT.'components'.DS.'com_komento'.DS.'bootstrap.php' );
			echo Komento::commentify('com_acymailing', $this->mail, array());
		}
	?>
</div>
views/archive/tmpl/view.xml000060400000001112152455302720011766 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="Latest Newsletter">
		<message>Display the latest published and visible Newsletter from the selected list</message>
	</layout>
	<state>
		<name>Latest Newsletter</name>
		<params addpath="/components/com_acymailing/params">
			<param name="listid" type="listid" label="List" description="" />
		</params>
	</state>
	<fields name="params" addfieldpath="/components/com_acymailing/params">
		<fieldset name="basic">
			<field name="listid" type="listid" label="List" description="" />
		</fieldset>
	</fields>
</metadata>
views/archive/tmpl/index.html000060400000000054152455302720012273 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/archive/tmpl/listing.xml000060400000001240152455302720012467 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="Mailing List Archive (Single)">
		<message>Display the name and description of the selected List and a listing of Newsletters belonging to this list.</message>
	</layout>
	<state>
		<name>Mailing List Archive (Single)</name>
		<params addpath="/components/com_acymailing/params">
			<param name="listid" type="listid" label="List" description="" menu="archive" />
		</params>
	</state>
	<fields name="params" addfieldpath="/components/com_acymailing/params">
		<fieldset name="basic">
			<field name="listid" type="listid" label="List" description="" menu="archive" />
		</fieldset>
	</fields>
</metadata>
views/archive/tmpl/listing.php000060400000006631152455302720012467 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acyarchivelisting">
	<?php if($this->values->show_page_heading){ ?>
	<h1 class="contentheading<?php echo $this->values->suffix; ?>"><?php echo $this->values->page_heading; ?></h1>
	<?php } ?>
	<form action="<?php echo acymailing_completeLink('archive&listid='.$this->list->listid); ?>" method="post" name="adminForm" id="adminForm" >
		<table style="width:100%" cellpadding="0" cellspacing="0" border="0" align="center" class="contentpane<?php echo $this->values->suffix; ?>">
		<?php if($this->values->show_description){ ?>
			<tr>
				<td class="contentdescription<?php echo $this->values->suffix; ?>" >
					<?php echo $this->list->description; ?>
				</td>
			</tr>
		<?php } ?>
			<tr>
				<td>
				<?php
					if(!empty($this->manageableLists)){
				?>
					<p class="acynewbutton"><a class="btn" href="<?php echo acymailing_completeLink('frontnewsletter&task=add&listid='.$this->list->listid); ?>" title="<?php echo acymailing_translation('CREATE_NEWSLETTER',true); ?>" ><img src="<?php echo ACYMAILING_IMAGES; ?>icons/icon-16-add.png" alt="<?php echo acymailing_translation('CREATE_NEWSLETTER',true); ?>" /> <?php echo acymailing_translation('CREATE_NEWSLETTER'); ?></a></p>
				<?php } ?>
					<?php echo $this->loadTemplate('newsletters'); ?>
					<?php if(!empty($this->values->itemid)){ ?>
						<input type="hidden" name="Itemid" value=<?php echo $this->values->itemid; ?> />
					<?php } ?>
					<input type="hidden" name="nbreceiveemail" value="0" />
				</td>
			</tr>
		</table>
	
		<?php if($this->values->show_receiveemail){ ?>
			<div id="receiveemailbox" class="receiveemailbox receiveemailbox_hidden">
				<fieldset class="acymailing_receiveemail">
				<legend><?php echo acymailing_translation('SEND_SELECT_NEWS'); ?></legend>
					<table>
						<tr>
							<td>
								<label for="forwardname"><?php echo acymailing_translation('JOOMEXT_NAME'); ?></label>
							</td>
							<td>
								<input id="forwardname" type="text" class="inputbox required" name="name" value="" style="width:100px"/>
							</td>
						</tr>
						<tr>
							<td>
								<label for="forwardemail"><?php echo acymailing_translation('JOOMEXT_EMAIL'); ?></label>
							</td>
							<td>
								<input id="forwardemail" type="text" class="inputbox required" name="email" value="" style="width:100px"/>
							</td>
						</tr>
						<tr>
							<?php
								$captchaClass = acymailing_get('class.acycaptcha');
								$captchaClass->display();
							?>
						</tr>
					</table>
					<button class="btn btn-primary" type="submit"/><?php echo acymailing_translation('SEND'); ?></button>
					<?php acymailing_formOptions($this->pageInfo->filter->order, 'sendarchive'); ?>
				</fieldset>
			</div>
	
		<?php }
			if(!empty($this->manageableLists)){
		?>
			<p class="acynewbutton"><a class="btn" href="<?php echo acymailing_completeLink('frontnewsletter&task=add&listid='.$this->list->listid); ?>" title="<?php echo acymailing_translation('CREATE_NEWSLETTER',true); ?>" ><img src="<?php echo ACYMAILING_IMAGES; ?>icons/icon-16-add.png" alt="<?php echo acymailing_translation('CREATE_NEWSLETTER',true); ?>" /> <?php echo acymailing_translation('CREATE_NEWSLETTER'); ?></a></p>
		<?php } ?>
	</form>
</div>
views/archive/view.html.php000060400000045635152455302720011766 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class archiveViewArchive extends acymailingView{
	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function forward(){
		$subkeys = acymailing_getVar('string', 'subid', acymailing_getVar('string', 'sub'));
		if(!empty($subkeys)){
			$subid = intval(substr($subkeys, 0, strpos($subkeys, '-')));
			$subkey = substr($subkeys, strpos($subkeys, '-') + 1);
			$receiver = acymailing_loadObject('SELECT * FROM '.acymailing_table('subscriber').' WHERE `subid` = '.intval($subid).' AND `key` = '.acymailing_escapeDB($subkey).' LIMIT 1');
		}
		$currentEmail = acymailing_currentUserEmail();
		if(empty($receiver) AND !empty($currentEmail)){
			$userClass = acymailing_get('class.subscriber');
			$receiver = $userClass->get($currentEmail);
		}
		if(empty($receiver)){
			$receiver = new stdClass();
			$receiver->name = '';
			$receiver->email = '';
		}
		$this->senderName = $receiver->name;
		$this->senderMail = $receiver->email;
		$config = acymailing_config();
		$this->config = $config;

		$js = 'var numForwarders = 1;function addLine(){
							if(numForwarders > 4) return;
							var myTable = window.document.getElementById("friend_table");
							var line1 = document.createElement("tr");
							var tdname = document.createElement("td");
							var itdname = document.createElement("td");
							var line2 = document.createElement("tr");
							var tdemail = document.createElement("td");
							var itdemail = document.createElement("td");

							var inputName = document.createElement("input");
							inputName.type = \'text\';
							inputName.name = \'forwardusers[\'+numForwarders+\'][name]\';
							inputName.style.width = "200px";

							var inputEmail = document.createElement("input");
							inputEmail.type = \'text\';
							inputEmail.name = \'forwardusers[\'+numForwarders+\'][email]\';
							inputEmail.style.width = "200px";

							var nameLabel = document.createElement("label");
							nameLabel.innerHTML="'.acymailing_translation('FRIEND_NAME', true).'";

							var emailLabel = document.createElement("label");
							emailLabel.innerHTML="'.acymailing_translation('FRIEND_EMAIL', true).'";

							tdname.appendChild(nameLabel);
							itdname.appendChild(inputName);
							line1.appendChild(tdname);
							line1.appendChild(itdname);
							myTable.appendChild(line1);

							tdemail.appendChild(emailLabel);
							itdemail.appendChild(inputEmail);
							line2.appendChild(tdemail);
							line2.appendChild(itdemail);
							myTable.appendChild(line2);
							numForwarders++;
			}
';

		acymailing_addScript(true, $js);
		return $this->view();
	}

	private function addFeed(){

		$config = acymailing_config();
		$feedType = $config->get('acyrss_format', '');

		if(empty($feedType)) return;

		$document = JFactory::getDocument();

		$link = '&format=feed&limitstart=';
		if($feedType == 'rss' || $feedType == 'both'){
			$attribs = array('type' => 'application/rss+xml', 'title' => 'RSS 2.0');
			$document->addHeadLink(acymailing_route($link.'&type=rss'), 'alternate', 'rel', $attribs);
		}
		if($feedType == 'atom' || $feedType == 'both'){
			$attribs = array('type' => 'application/atom+xml', 'title' => 'Atom 1.0');
			$document->addHeadLink(acymailing_route($link.'&type=atom'), 'alternate', 'rel', $attribs);
		}
	}

	function listing(){
		global $Itemid;

		$values = new stdClass();
		$menu = acymailing_getMenu();

		$myItem = empty($Itemid) ? '' : '&Itemid='.$Itemid;
		$this->item = $myItem;

		if(is_object($menu)){
			$menuparams = new acyParameter($menu->params);
		}

		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".ordering_dir", 'ordering_dir', 'DESC', 'word');
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".ordering", 'ordering', 'senddate', 'cmd');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getVar('int', 'limitstart', 0);

		$listClass = acymailing_get('class.list');
		$listid = acymailing_getCID('listid');

		if(empty($listid) && !empty($menuparams)){
			$listid = $menuparams->get('listid');
		}

		$currentUserid = acymailing_currentUserId();
		if(empty($listid)){
			$allLists = $listClass->getLists('listid');
		}else{
			$oneList = $listClass->get($listid);
			if(empty($oneList->listid)) return acymailing_raiseError(E_ERROR, 404, 'Mailing List not found : '.$listid);
			$allLists = array($oneList->listid => $oneList);
			if($oneList->access_sub != 'all' && ($oneList->access_sub == 'none' || empty($currentUserid) || !acymailing_isAllowed($oneList->access_sub))) $allLists = array();
		}

		if(empty($allLists)){
			if(empty($currentUserid)){
				acymailing_askLog();
			}else{
				acymailing_enqueueMessage(acymailing_translation('ACY_NOTALLOWED'), 'error');
				acymailing_redirect(acymailing_completeLink('lists', false, true));
			}
			return false;
		}

		$config = acymailing_config();

		if(!empty($menuparams)){
			$values->suffix = $menuparams->get('pageclass_sfx', '');
			$values->page_title = $menuparams->get('page_title');
			$values->page_heading = ACYMAILING_J16 ? $menuparams->get('page_heading') : $menuparams->get('page_title');
			$values->show_page_heading = ACYMAILING_J16 ? $menuparams->get('show_page_heading', 1) : $menuparams->get('show_page_title', 1);
		}else{
			$values->suffix = '';
			$values->show_page_heading = 1;
		}

		$values->show_description = $config->get('show_description', 1);
		$values->show_senddate = $config->get('show_senddate', 1);
		$values->show_receiveemail = $config->get('show_receiveemail', 0) && acymailing_level(1);
		$values->filter = $config->get('show_filter', 1);

		if(empty($values->page_title)) $values->page_title = (count($allLists) > 1 || empty($listid)) ? acymailing_translation('NEWSLETTERS') : $allLists[$listid]->name;
		if(empty($values->page_heading)) $values->page_heading = (count($allLists) > 1 || empty($listid)) ? acymailing_translation('NEWSLETTERS') : $allLists[$listid]->name;

		if(empty($menuparams)){
			acymailing_addBreadcrumb(acymailing_translation('MAILING_LISTS'), acymailing_completeLink('lists'));
			acymailing_addBreadcrumb($values->page_title);
		}elseif(!$menuparams->get('listid')){
			acymailing_addBreadcrumb($values->page_title);
		}

		acymailing_setPageTitle($values->page_title);

		$this->addFeed();

		$searchMap = array('a.mailid', 'a.subject', 'a.alias', 'a.body');
		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $searchMap)." LIKE $searchVal";
		}

		$filters[] = 'a.type = \'news\'';

		$noManageableLists = array();
		$currentUserid = acymailing_currentUserId();
		foreach($allLists as &$oneList){
			if(empty($currentUserid)) $noManageableLists[] = $oneList->listid;
			if((int)acymailing_currentUserId() == (int)$oneList->userid) continue;
			if($oneList->access_manage == 'all' || acymailing_isAllowed($oneList->access_manage)) continue;
			$noManageableLists[] = $oneList->listid;
		}

		$accessFilter = '';
		$manageableLists = array_diff(array_keys($allLists), $noManageableLists);
		if(!empty($manageableLists)) $accessFilter = 'c.listid IN ('.implode(',', $manageableLists).')';
		if(!empty($noManageableLists)){
			if(empty($accessFilter)){
				$accessFilter = 'c.listid IN ('.implode(',', $noManageableLists).') AND a.published = 1 AND a.visible = 1';
			}else $accessFilter .= ' OR (c.listid IN ('.implode(',', $noManageableLists).') AND a.published = 1 AND a.visible = 1)';
		}
		if(!empty($accessFilter)) $filters[] = $accessFilter;

		$selection = array_merge($searchMap, array('a.senddate', 'a.created', 'a.visible', 'a.published', 'a.fromname', 'a.fromemail', 'a.replyname', 'a.replyemail', 'a.userid', 'a.summary', 'a.thumb', 'c.listid'));

		$query = 'SELECT "" AS body, "" AS altbody, html AS sendHTML, '.implode(',', $selection);
		$query .= ' FROM '.acymailing_table('listmail').' as c';
		$query .= ' JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
		$query .= ' WHERE ('.implode(') AND (', $filters).')';
		$query .= ' GROUP BY c.mailid';
		$query .= ' ORDER BY a.'.acymailing_secureField($pageInfo->filter->order->value).' '.acymailing_secureField($pageInfo->filter->order->dir).', c.mailid DESC';

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);
		$pageInfo->elements->page = count($rows);

		if($pageInfo->limit->value > $pageInfo->elements->page){
			$pageInfo->elements->total = $pageInfo->limit->start + $pageInfo->elements->page;
		}else{
			$queryCount = 'SELECT COUNT(DISTINCT c.mailid) FROM '.acymailing_table('listmail').' as c';
			$queryCount .= ' JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
			$queryCount .= ' WHERE ('.implode(') AND (', $filters).')';
			$pageInfo->elements->total = acymailing_loadResult($queryCount);
		}

		$currentEmail = acymailing_currentUserEmail();
		if(!empty($currentEmail)){
			$userClass = acymailing_get('class.subscriber');
			$receiver = $userClass->get($currentEmail);
		}
		if(empty($receiver)){
			$receiver = new stdClass();
			$receiver->name = acymailing_translation('VISITOR');
		}
		acymailing_importPlugin('acymailing');
		foreach($rows as $mail){
			if(strpos($mail->subject, "{") !== false){
				acymailing_trigger('acymailing_replacetags', array(&$mail, false));
				acymailing_trigger('acymailing_replaceusertags', array(&$mail, &$receiver, false));
			}
		}

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$js = 'function changeReceiveEmail(checkedbox){
			var form = document.adminForm;
			if(checkedbox){
				form.nbreceiveemail.value++;
			}else{
				form.nbreceiveemail.value--;
			}

			if(form.nbreceiveemail.value > 0 ){
				document.getElementById(\'receiveemailbox\').className = \'receiveemailbox receiveemailbox_visible\';
			}else{
				document.getElementById(\'receiveemailbox\').className = \'receiveemailbox receiveemailbox_hidden\';
			}
		}
		';

		acymailing_addScript(true, $js);
		if(!empty($menuparams)) {
			$data = $menuparams->get("data", 1);
			if(!empty($data->{"menu-meta_description"})) acymailing_addMetadata('description', $data->{"menu-meta_description"});
			if(!empty($data->{"menu-meta_keywords"})) acymailing_addMetadata('keywords', $data->{"menu-meta_keywords"});
		}

		$orderValues = array();
		$orderValues[] = acymailing_selectOption('senddate', acymailing_translation('SEND_DATE'));
		$orderValues[] = acymailing_selectOption('subject', acymailing_translation('JOOMEXT_SUBJECT'));
		$orderValues[] = acymailing_selectOption('created', acymailing_translation('CREATED_DATE'));
		$orderValues[] = acymailing_selectOption('mailid', acymailing_translation('ACY_ID'));

		$ordering = '';
		if($config->get('show_order', 1) == 1){
			$ordering = '<span style="float:right;" id="orderingoption">';
			$ordering .= acymailing_select($orderValues, 'ordering', 'size="1" style="width:100px;" onchange="this.form.submit();"', 'value', 'text', $pageInfo->filter->order->value);

			$orderDir = array();
			$orderDir[] = acymailing_selectOption('ASC', acymailing_translation('ACY_ASC'));
			$orderDir[] = acymailing_selectOption('DESC', acymailing_translation('ACY_DESC'));
			$ordering .= ' '.acymailing_select($orderDir, 'ordering_dir', 'size="1" style="width:75px;" onchange="this.form.submit();"', 'value', 'text', $pageInfo->filter->order->dir);
			$ordering .= '</span>';
		}

		$this->ordering = $ordering;
		$this->rows = $rows;
		$this->values = $values;
		if(count($allLists) > 1){
			$list = new stdClass();
			$list->listid = 0;
			$list->description = '';
		}else{
			$list = array_pop($allLists);
		}
		$this->list = $list;
		$this->manageableLists = $manageableLists;
		$this->pagination = $pagination;
		$this->pageInfo = $pageInfo;
		$this->config = $config;
	}

	function view(){
		$this->addFeed();

		$frontEndManagement = false;
		$listid = acymailing_getCID('listid');

		$values = new stdClass();
		$values->suffix = '';
		$menu = acymailing_getMenu();

		if(is_object($menu)){
			$menuparams = new acyParameter($menu->params);
		}

		if(!empty($menuparams)){
			$values->suffix = $menuparams->get('pageclass_sfx', '');
		}

		if(empty($listid) && !empty($menuparams)){
			$listid = $menuparams->get('listid');
			if($menuparams->get('menu-meta_description')) acymailing_addMetadata('description', $menuparams->get('menu-meta_description'));
			if($menuparams->get('menu-meta_keywords')) acymailing_addMetadata('keywords', $menuparams->get('menu-meta_keywords'));
			if($menuparams->get('robots')) acymailing_addMetadata('robots', $menuparams->get('robots'));
			if($menuparams->get('page_title')) acymailing_setPageTitle($menuparams->get('page_title'));
		}

		$config = acymailing_config();
		$indexFollow = $config->get('indexFollow', '');
		$tagIndFol = array();
		if(strpos($indexFollow, 'noindex') !== false) $tagIndFol[] = 'noindex';
		if(strpos($indexFollow, 'nofollow') !== false) $tagIndFol[] = 'nofollow';
		if(!empty($tagIndFol)) acymailing_addMetadata('robots', implode(',', $tagIndFol));

		if(!empty($listid)){
			$listClass = acymailing_get('class.list');
			$oneList = $listClass->get($listid);
			if(!empty($oneList->visible) && $oneList->published && (empty($menuparams) || !$menuparams->get('listid'))){
				acymailing_addBreadcrumb($oneList->name, acymailing_completeLink('archive&listid='.$oneList->listid.':'.$oneList->alias));
			}

			$currentUserid = acymailing_currentUserId();
			if(!empty($oneList->listid) && acymailing_level(3)){
				if(!empty($currentUserid) && $currentUserid == (int)$oneList->userid){
					$frontEndManagement = true;
				}
				if(!empty($currentUserid)){
					if($oneList->access_manage == 'all' || acymailing_isAllowed($oneList->access_manage)){
						$frontEndManagement = true;
					}
				}
			}
		}

		$mailid = acymailing_getVar('string', 'mailid', 'nomailid');
		if(empty($mailid)){
			die('This is a Newsletter-template... and you can not access the online version of a Newsletter-template!<br />Please create a Newsletter using your template and then try again your "view it online" link!');
			exit;
		}

		if($mailid == 'nomailid'){
			$query = 'SELECT m.`mailid` FROM `#__acymailing_list` as l JOIN `#__acymailing_listmail` as lm ON l.listid=lm.listid JOIN `#__acymailing_mail` as m on lm.mailid = m.mailid';
			$query .= ' WHERE l.`visible` = 1 AND l.`published` = 1 AND m.`visible`= 1 AND m.`published` = 1 AND m.`type` = "news" AND l.`type` = "list"';
			if(!empty($listid)) $query .= ' AND l.`listid` = '.(int)$listid;
			$query .= ' ORDER BY m.`senddate` DESC, m.`mailid` DESC LIMIT 1';
			$mailid = acymailing_loadResult($query);
		}
		$mailid = intval($mailid);
		if(empty($mailid)) return acymailing_raiseError(E_ERROR, 404, 'Newsletter not found');

		$access_sub = true;

		$mailClass = acymailing_get('helper.mailer');
		$mailClass->loadedToSend = false;
		$oneMail = $mailClass->load($mailid);

		if(empty($oneMail->mailid)){
			return acymailing_raiseError(E_ERROR, 404, 'Newsletter not found : '.$mailid);
		}

		if(!$frontEndManagement AND (!$access_sub OR !$oneMail->published OR !$oneMail->visible)){
			$key = acymailing_getVar('cmd', 'key');
			if(empty($key) OR $key !== $oneMail->key){
				$reason = (!$oneMail->published) ? 'Newsletter not published' : (!$oneMail->visible ? 'Newsletter not visible' : (!$access_sub ? 'Access not allowed' : ''));
				acymailing_enqueueMessage('You can not have access to this e-mail : '.$reason, 'error');
				acymailing_redirect(acymailing_completeLink('lists', false, true));
				return false;
			}
		}

		$fshare = '';
		if(preg_match('#<img[^>]*id="pictshare"[^>]*>#i', $oneMail->body, $pregres) && preg_match('#src="([^"]*)"#i', $pregres[0], $pict)){
			$fshare = $pict[1];
		}elseif(preg_match('#<img[^>]*class="[^"]*pictshare[^"]*"[^>]*>#i', $oneMail->body, $pregres) && preg_match('#src="([^"]*)"#i', $pregres[0], $pict)){
			$fshare = $pict[1];
		}elseif(preg_match('#class="acymailing_content".*(<img[^>]*>)#is', $oneMail->body, $pregres) && preg_match('#src="([^"]*)"#i', $pregres[1], $pict)){
			if(strpos($pregres[1], acymailing_translation('JOOMEXT_READ_MORE')) === false) $fshare = $pict[1];
		}

		if(!empty($fshare)){
			acymailing_addMetadata('og:image', $fshare);
		}

		acymailing_addMetadata('og:url', acymailing_frontendLink('archive&task=view&mailid='.$oneMail->mailid, false, acymailing_isNoTemplate(), true));
		acymailing_addMetadata('og:title', $oneMail->subject);
		if(!empty($oneMail->metadesc)) acymailing_addMetadata('og:description', $oneMail->metadesc);

		$subkeys = acymailing_getVar('string', 'subid', acymailing_getVar('string', 'sub'));
		if(!empty($subkeys)){
			$subid = intval(substr($subkeys, 0, strpos($subkeys, '-')));
			$subkey = substr($subkeys, strpos($subkeys, '-') + 1);
			$receiver = acymailing_loadObject('SELECT * FROM '.acymailing_table('subscriber').' WHERE `subid` = '.acymailing_escapeDB($subid).' AND `key` = '.acymailing_escapeDB($subkey).' LIMIT 1');
		}

		$currentEmail = acymailing_currentUserEmail();
		if(empty($receiver) AND !empty($currentEmail)){
			$userClass = acymailing_get('class.subscriber');
			$receiver = $userClass->get($currentEmail);
		}

		if(empty($receiver)){
			$receiver = new stdClass();
			$receiver->name = acymailing_translation('VISITOR');
		}

		$oneMail->sendHTML = true;
		acymailing_trigger('acymailing_replaceusertags', array(&$oneMail, &$receiver, false));

		acymailing_addBreadcrumb($oneMail->subject);

		preg_match('@href="{unsubscribe:(.*)}"@', $oneMail->body, $match);//we get the tag unsubscribe
		if(!empty($match)){
			$oneMail->body = str_replace($match[0], 'href="'.$match[1].'"', $oneMail->body);
		}

		acymailing_setPageTitle($oneMail->subject);

		if(!empty($oneMail->metadesc)){
			acymailing_addMetadata('description', $oneMail->metadesc);
		}
		if(!empty($oneMail->metakey)){
			acymailing_addMetadata('keywords', $oneMail->metakey);
		}

		$this->mail = $oneMail;
		$this->frontEndManagement = $frontEndManagement;
		$config = acymailing_config();
		$this->config = $config;
		$this->receiver = $receiver;
		$this->values = $values;

		if($oneMail->html){
			$templateClass = acymailing_get('class.template');
			$templateClass->archiveSection = true;
			$templateClass->displayPreview('newsletter_preview_area', $oneMail->tempid, $oneMail->subject);
		}
	}
}
views/archive/view.feed.php000060400000005730152455302720011715 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

jimport( 'joomla.application.component.view');
class archiveViewArchive extends acymailingView
{
	function display($tpl = null){
		$doc	= JFactory::getDocument();
		$menu = acymailing_getMenu();
		if (is_object( $menu )) {
			$menuparams = new acyParameter( $menu->params );
		}
 		$listid = acymailing_getCID('listid');
			if(empty($listid) AND !empty($menuparams)){
				$listid = $menuparams->get('listid');
			}
		$doc->link = acymailing_completeLink('archive&listid='.intval($listid));
		 $listClass = acymailing_get('class.list');
 		if(empty($listid)){
				return acymailing_raiseError(E_ERROR,  404, 'Mailing List not found' );
			}
			$oneList = $listClass->get($listid);
			if(empty($oneList->listid)){
				return acymailing_raiseError(E_ERROR,  404, 'Mailing List not found : '.$listid );
			}
			if(!acymailing_isAllowed($oneList->access_sub) || !$oneList->published || !$oneList->visible){
				return acymailing_raiseError(E_ERROR,  404, acymailing_translation('ACY_NOTALLOWED') );
			}

		$config = acymailing_config();
		$filters = array();
		$filters[] = 'a.type = \'news\'';
		$filters[] = 'a.published = 1';
		$filters[] = 'a.visible = 1';
		$filters[] = 'c.listid = '.$oneList->listid;
		$query = 'SELECT a.*';
		$query .= ' FROM '.acymailing_table('listmail').' as c';
		$query .= ' LEFT JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
		$query .= ' WHERE ('.implode(') AND (',$filters).')';
		$query .= ' ORDER BY a.'.$config->get('acyrss_order','senddate').' '.($config->get('acyrss_order','senddate') == 'subject' ? 'ASC' : 'DESC');
		$query .= ' LIMIT '.$config->get('acyrss_element','20');
		$rows = acymailing_loadObjectList($query);
		$doc->title = $config->get('acyrss_name','');
		$doc->description = $config->get('acyrss_description','');

		$receiver = new stdClass();
		$receiver->name = acymailing_translation('VISITOR');
		$receiver->subid = 0;

		$mailClass = acymailing_get('helper.mailer');

		foreach ( $rows as $row )
		{
			$mailClass->loadedToSend = false;
			$oneMail = $mailClass->load($row->mailid);
			$oneMail->sendHTML = true;
			acymailing_trigger('acymailing_replaceusertags', array(&$oneMail, &$receiver, false));
			$title = $this->escape( $oneMail->subject );
			$title = html_entity_decode( $title );
			$link = acymailing_route('index.php?option=com_acymailing&amp;ctrl=archive&amp;task=view&amp;listid='.$oneList->listid.'-'.$oneList->alias.'&amp;mailid='.$row->mailid.'-'.$row->alias);

			$author			= $oneMail->userid;
			$item = new JFeedItem();
			$item->title 		= $title;
			$item->link 		= $link;
			$item->description 	= $oneMail->body;
			$item->date			= $oneMail->created;
			$item->category   	= $oneMail->type;
			$item->author		= $author;

			$doc->addItem( $item );
		}
	}
}

views/archive/index.html000060400000000054152455302720011317 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/index.html000060400000000054152455302720007676 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/user/tmpl/saveunsub.xml000060400000000130152455302720012363 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout hidden="true" />
</metadata>
views/user/tmpl/saveunsub.php000060400000000412152455302720012355 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?>
views/user/tmpl/subs_dropdown.php000060400000002710152455302720013235 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acyusersubscription">
  <?php
  $k = 0;
  $selectedIndex = '';
  foreach($this->subscription as $key => $row) {
    if(empty($row->published) OR !$row->visible) continue;

    $value = 0;
    $dropdownOpts[] = acymailing_selectOption($row->listid, $row->name);
    if($row->status == 1) {
      $value = 1;
      $selectedIndex = $k;
    }
    echo '<input type="hidden" class="listsub-dropdown" name="data[listsub]['.$row->listid.'][status]" value="'.$value.'">';

    $k++;
  }

  $dropdown = acymailing_select($dropdownOpts, 'data[listsubdropdown]', 'onchange="setSubsDropdown()"', 'value', 'text', $selectedIndex);
  echo $dropdown;
  ?>
</div>
<script type="text/javascript">
  function setSubsDropdown() {
    var dropdown = document.getElementById('datalistsubdropdown');
    var selectedOption = dropdown.options[dropdown.selectedIndex];
    var selectedListId = selectedOption.value;

    var hiddenInputs = document.getElementsByClassName('listsub-dropdown');
    for(var i = 0; i < hiddenInputs.length; i++) {
      hiddenInputs[i].value = '0';
      if(hiddenInputs[i].name == 'data[listsub][' + selectedListId + '][status]') {
        hiddenInputs[i].value = '1';
      }
    }
  }
</script>

views/user/tmpl/modify.php000060400000014653152455302720011645 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acymodifyform">
	<?php
	if('joomla' == 'wordpress') acymailing_displayMessages();
	if($this->values->show_page_heading){
	?>
	<h1 class="contentheading<?php echo $this->values->suffix; ?>"><?php echo $this->values->page_heading; ?></h1>
	<?php } ?>
	<?php if(!empty($this->introtext)){ echo '<span class="acymailing_introtext">'.$this->introtext.'</span>'; } ?>
	<form action="<?php echo acymailing_frontendLink('user', false, acymailing_isNoTemplate(), true);?>" method="post" name="adminForm" id="adminForm" <?php if(!empty($this->fieldsClass->formoption)) echo $this->fieldsClass->formoption; ?> >
		<fieldset class="adminform acy_user_info">
			<legend><span><?php echo acymailing_translation( 'USER_INFORMATIONS' ); ?></span></legend>
			<div id="acyuserinfo">
			<?php if(acymailing_level(3)){
				if(!empty($this->subscriber->email)) $this->fieldsClass->currentUser = $this->subscriber;
				$tmpCatId = array();
				$tmpCatTag = array();
				foreach($this->extraFields as $fieldName => $oneExtraField) {
					if($oneExtraField->type == 'category'){
						if(empty($oneExtraField->fieldcat) && !empty($tmpCatId)){
							while(!empty($tmpCatId)){
								echo '</'.str_replace('fldset', 'fieldset', end($tmpCatTag)).'>';
								array_pop($tmpCatId);
								array_pop($tmpCatTag);
							}
						}
						$tmpCatId[] = $oneExtraField->fieldid;
						$tmpCatTag[] = $oneExtraField->options['fieldcattag'];
						echo '<'.str_replace('fldset', 'fieldset', end($tmpCatTag)).' class="fieldCategory '.$oneExtraField->options['fieldcatclass'].'" id="tr'.$oneExtraField->namekey.'">';
						if(in_array(end($tmpCatTag), array('fieldset', 'fldset'))) echo '<legend>'.$oneExtraField->fieldname.'</legend>';
					}else{
						if(in_array($oneExtraField->fieldcat, $tmpCatId) || empty($oneExtraField->fieldcat)){
							while(!empty($tmpCatId) && $oneExtraField->fieldcat != end($tmpCatId)){
								echo '</'.str_replace('fldset', 'fieldset', end($tmpCatTag)).'>';
								array_pop($tmpCatId);
								array_pop($tmpCatTag);
							}
						}
						echo '<div id="tr'.$fieldName.'" class="acy_onefield"><div class="acykey">'.$this->fieldsClass->getFieldName($oneExtraField).'</div>';
						echo '<div class="inputVal">';
						if(in_array($fieldName,array('name','email')) AND !empty($this->subscriber->userid)){echo $this->subscriber->$fieldName; }
						else{echo $this->fieldsClass->display($oneExtraField,@$this->subscriber->$fieldName,'data[subscriber]['.$fieldName.']'); }
						echo '</div></div>';
					}
				}
				$lastVal = end($tmpCatId);
				while(!empty($lastVal)){
					echo '</'.str_replace('fldset', 'fieldset', end($tmpCatTag)).'>';
					array_pop($tmpCatId);
					array_pop($tmpCatTag);
					$lastVal = end($tmpCatId);
				}
			}else{
				if(!empty($this->fieldsToDisplay) && (strpos($this->fieldsToDisplay, 'name') !== false || strpos($this->fieldsToDisplay, 'default') !== false || strpos($this->fieldsToDisplay, 'all') !== false)){ ?>
					<div id="trname" class="acy_onefield">
						<div class="acykey">
							<label for="field_name"><?php echo acymailing_translation( 'JOOMEXT_NAME' ); ?></label>
						</div>
						<div class="inputVal">
							<?php
							if(empty($this->subscriber->userid)){
									echo '<input type="text" name="data[subscriber][name]" id="field_name" class="inputbox" style="width:200px;" value="'.$this->escape(@$this->subscriber->name).'" />';
							}else{
								echo $this->subscriber->name;
							}
							?>
						</div>
					</div>
				<?php }
				if(!empty($this->fieldsToDisplay) && (strpos($this->fieldsToDisplay, 'email') !== false || strpos($this->fieldsToDisplay, 'default') !== false || strpos($this->fieldsToDisplay, 'all') !== false)){ ?>
					<div id="tremail" class="acy_onefield">
						<div class="acykey">
							<label for="field_email"><?php echo acymailing_translation( 'JOOMEXT_EMAIL' ); ?></label>
						</div>
						<div class="inputVal">
							<?php
							if(empty($this->subscriber->userid)){
								echo '<input class="inputbox" type="text" name="data[subscriber][email]" id="field_email" style="width:200px;" value="'.$this->escape(@$this->subscriber->email).'" />';
							}else{
								echo $this->subscriber->email;
							}
							?>
						</div>
					</div>
				<?php }
				if(!empty($this->fieldsToDisplay) && (strpos($this->fieldsToDisplay, 'html') !== false || strpos($this->fieldsToDisplay, 'default') !== false || strpos($this->fieldsToDisplay, 'all') !== false)){ ?>
					<div id="trhtml" class="acy_onefield">
						<div class="acykey">
							<label for="field_email"><?php echo acymailing_translation( 'RECEIVE' ); ?></label>
						</div>
						<div class="inputVal">
							<?php echo acymailing_boolean("data[subscriber][html]" , '',$this->subscriber->html,acymailing_translation('HTML'),acymailing_translation('JOOMEXT_TEXT'),'user_html'); ?>
						</div>
					</div>
				<?php }
			}
	?>
			</div>
		</fieldset>
		<?php if($this->displayLists){?>
		<fieldset class="adminform acy_subscription_list">
			<legend><span><?php echo acymailing_translation( 'SUBSCRIPTION' ); ?></span></legend>

			<?php if(empty($this->dropdown)) include('subs_default.php'); else include('subs_dropdown.php'); ?>
		</fieldset>
		<?php }

		?>

		<br />
		<input type="hidden" name="hiddenlists" value="<?php echo $this->hiddenlists; ?>"/>
		<?php
		$config = acymailing_config();
		$current = acymailing_getMenu();
		if(!empty($current)) echo '<input type="hidden" name="acy_source" value="menu_'.$current->id.'" />';

		acymailing_formOptions(); ?>
		<input type="hidden" name="subid" value="<?php echo $this->subscriber->subid; ?>" />
		<?php if(acymailing_getVar('cmd', 'tmpl') == 'component'){ ?><input type="hidden" name="tmpl" value="component" /><?php } ?>
		<input type="hidden" name="key" value="<?php echo $this->subscriber->key; ?>" />
		<p class="acymodifybutton">
			<input class="button btn btn-primary" type="submit" onclick="document.adminForm.task.value='savechanges';return checkChangeForm();" value="<?php echo empty($this->subscriber->subid) ? $this->escape(acymailing_translation('SUBSCRIBE')) :  $this->escape(acymailing_translation('SAVE_CHANGES'))?>"/>
		</p>
	</form>
	<?php if(!empty($this->finaltext)){ echo '<span class="acymailing_finaltext">'.$this->finaltext.'</span>'; } ?>
</div>

views/user/tmpl/modify.xml000060400000006376152455302720011661 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="User : subscribe/modify your subscription">
		<message>This menu item enables your visitors or logged-in users to subscribe/modify their subscription.</message>
	</layout>
	<state>
		<name>User : subscribe/modify your subscription</name>
		<params addpath="/components/com_acymailing/params">
			<param name="lists" type="lists" default="All" label="VISIBLE_LISTS" description="The following selected lists will be displayed on your subscribe form." />
			<param name="listschecked" type="lists" default="All" label="LISTS_CHECKED_DEFAULT" description="The selected lists will be checked by default on your form." />
			<param name="hiddenlists" type="lists" default="None" label="AUTO_SUBSCRIBE_TO" description="The user will be automatically subscribed to the selected lists when registering with the form." />
			<param name="customfields" type="customfields" default="Default" label="DISP_FIELDS" description="The following selected fields will be displayed on your subscribe form." />
			<param name="@spacer" type="spacer" default="" label="" description="" />
			<param name="introtext" type="textarea" rows="5" cols="35" default="" label="INTRO_TEXT" description="This text will be displayed before the form inside a span class=acymailing_introtext" />
			<param name="finaltext" type="textarea" rows="5" cols="35" default="" label="POST_TEXT" description="This text will be displayed after the form inside a span class=acymailing_finaltext" />
			<param name="dropdown" type="radio" default="0" label="DROPDOWN_LISTS" description="Display the visible lists in a dropdown">
				<option value="0">JOOMEXT_NO</option>
				<option value="1">JOOMEXT_YES</option>
			</param>
		</params>
	</state>
	<fields name="params" addfieldpath="/components/com_acymailing/params">
		<fieldset name="basic">
			<field name="lists" type="lists" default="All" label="VISIBLE_LISTS" description="The following selected lists will be displayed on your subscribe form." />
			<field name="listschecked" type="lists" default="All" label="LISTS_CHECKED_DEFAULT" description="The selected lists will be checked by default on your form." />
			<field name="hiddenlists" type="lists" default="None" label="AUTO_SUBSCRIBE_TO" description="The user will be automatically subscribed to the selected lists when registering with the form." />
			<field name="customfields" type="customfields" default="Default" label="DISP_FIELDS" description="The following selected fields will be displayed on your subscribe form." />
			<field name="@spacer" type="spacer" default="" label="" description="" />
			<field name="introtext" type="textarea" rows="5" cols="35" default="" label="INTRO_TEXT" description="This text will be displayed before the form inside a span class=acymailing_introtext" filter="SAFEHTML" />
			<field name="finaltext" type="textarea" rows="5" cols="35" default="" label="POST_TEXT" description="This text will be displayed after the form inside a span class=acymailing_finaltext" filter="SAFEHTML" />
			<field name="dropdown" type="radio" default="0" label="DROPDOWN_LISTS" description="Display the visible lists in a dropdown">
				<option value="0">JOOMEXT_NO</option>
				<option value="1">JOOMEXT_YES</option>
			</field>
		</fieldset>
	</fields>
</metadata>

views/user/tmpl/index.html000060400000000054152455302720011630 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/user/tmpl/confirm.php000060400000000412152455302720011777 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?>
views/user/tmpl/confirm.xml000060400000000130152455302720012005 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout hidden="true" />
</metadata>
views/user/tmpl/unsub.php000060400000007412152455302720011505 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="unsubpage">
	<?php echo $this->intro; ?>
	<form action="<?php echo acymailing_frontendLink('user', false, acymailing_isNoTemplate(), true); ?>" method="post" name="adminForm" id="adminForm">
		<?php if($this->config->get('unsub_dispoptions', 1)){ ?>
			<div class="unsuboptions">
				<?php if(!empty($this->mailid)){ ?>
					<div id="unsublist_div" class="unsubdiv">
						<label for="unsublist"><input type="checkbox" value="1" name="unsublist" id="unsublist" disabled="disabled" checked="checked"/> <?php echo str_replace(array_keys($this->replace), $this->replace, acymailing_translation('UNSUB_CURRENT')); ?></label>
					</div>
				<?php } ?>
				<div id="unsuball_div" class="unsubdiv">
					<label for="unsuball"><input type="checkbox" value="1" name="unsuball" id="unsuball" <?php if(empty($this->mailid)) echo 'checked="checked"'; ?> /> <?php echo str_replace(array_keys($this->replace), $this->replace, acymailing_translation('UNSUB_ALL')); ?></label>

					<div id="unsubfull_div" class="unsubdiv">
						<label for="refuse"><input type="checkbox" value="1" name="refuse" id="refuse"/> <?php echo str_replace(array_keys($this->replace), $this->replace, acymailing_translation('UNSUB_FULL')); ?></label>
					</div>
				</div>
				<?php
				if(!empty($this->otherSubscriptions) && $this->config->get('unsub_dispothersubs', 0)){
					?>
					<div id="unsub_list_div" class="unsubdiv">
						<?php
						echo acymailing_translation('ACY_OTHERSUBSCRIPTIONS');
						$i = 0;
						foreach($this->otherSubscriptions as $oneSubscription){
							echo '<div><label for="unsubotherlists'.$i.'"><input type="checkbox" value="1" name="unsubotherlists[]" id="unsubotherlists'.$i.'" class="unsubotherlistscheckbox"/> '.$oneSubscription->name.'</label>';
							echo '<input type="hidden" value="'.$oneSubscription->listid.'" name="unsubotherlistsid[]" id="unsubotherlistsid'.$i.'"/></div>';
							$i++;
						}
						?>
					</div>
				<?php } ?>
			</div>
		<?php }else{
			echo '<input type="hidden" value="1" name="unsuball" />';
		}
		if($this->config->get('unsub_survey', 1)){ ?>
			<div class="unsubsurvey">
				<div class="unsubsurveytext"><?php echo str_replace(array_keys($this->replace), $this->replace, acymailing_translation('UNSUB_SURVEY')); ?></div>
				<?php $reasons = unserialize($this->config->get('unsub_reasons'));
				foreach($reasons as $i => $oneReason){
					if(preg_match('#^[A-Z_]*$#', $oneReason)){
						$trans = acymailing_translation($oneReason);
					}else{
						$trans = $oneReason;
					}
					echo '<div>';
					echo '<label for="reason'.$i.'"><input type="checkbox" value="'.$oneReason.'" name="survey[]" id="reason'.$i.'" /> '.$trans.'</label>';
					echo '</div>';
				} ?>
				<div id="otherreasons">
					<label for="other"><?php echo acymailing_translation('UNSUB_SURVEY_OTHER'); ?></label><br/>
					<textarea name="survey[]" id="other" style="width:300px;height:70px"></textarea>
				</div>
			</div>
		<?php } ?>
		<input type="hidden" name="subid" value="<?php echo $this->subscriber->subid; ?>"/>
		<input type="hidden" name="key" value="<?php echo $this->subscriber->key; ?>"/>
		<input type="hidden" name="mailid" value="<?php echo $this->mailid; ?>"/>
		<input type="hidden" name="Itemid" value="<?php echo acymailing_getVar('int', 'Itemid'); ?>"/>
		<?php acymailing_formOptions(); ?>
		<div id="unsubbutton_div" class="unsubdiv">
			<input class="acymailing_button_grey" onclick="acymailing.submitbutton('saveunsub');" type="submit" value="<?php echo acymailing_translation('UNSUBSCRIBE', true) ?>"/>
		</div>
	</form>
</div>
views/user/tmpl/unsub.xml000060400000000130152455302720011504 0ustar00<?xml version="1.0" encoding="utf-8"?>
<metadata>
	<layout hidden="true" />
</metadata>
views/user/tmpl/subs_default.php000060400000001654152455302720013033 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acyusersubscription">
  <?php
  $k = 0;
  foreach($this->subscription as $row){
    if(empty($row->published) OR !$row->visible) continue;
    $listClass = 'acy_list_status_' . str_replace('-','m',(int) @$row->status);
    ?>
  <div class="<?php echo "row$k $listClass"; ?> acy_onelist">
    <div class="acystatus">
      <span><?php echo $this->status->display("data[listsub][".$row->listid."][status]",@$row->status); ?></span>
    </div>
    <div class="acyListInfo">
      <div class="list_name"><?php echo $row->name ?></div>
      <div class="list_description"><?php echo $row->description ?></div>
    </div>
  </div>
  <?php
    $k = 1 - $k;
  } ?>

</div>

views/user/view.html.php000060400000021047152455302720011312 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class UserViewUser extends acymailingView{
	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function modify(){
		$values = new stdClass();
		$values->show_page_heading = 0;

		$listsClass = acymailing_get('class.list');
		$subscriberClass = acymailing_get('class.subscriber');

		$menu = acymailing_getMenu();

		if(is_object($menu)){
			$menuparams = new acyParameter($menu->params);

			if(!empty($menuparams)){
				$this->introtext = $menuparams->get('introtext');
				$this->finaltext = $menuparams->get('finaltext');
				$this->dropdown = $menuparams->get('dropdown');

				if($menuparams->get('menu-meta_description')) acymailing_addMetadata('description', $menuparams->get('menu-meta_description'));
				if($menuparams->get('menu-meta_keywords')) acymailing_addMetadata('keywords', $menuparams->get('menu-meta_keywords'));
				if($menuparams->get('robots')) acymailing_addMetadata('robots', $menuparams->get('robots'));
				if($menuparams->get('page_title')) acymailing_setPageTitle($menuparams->get('page_title'));

				$values->suffix = $menuparams->get('pageclass_sfx', '');
				$values->page_heading = ACYMAILING_J16 ? $menuparams->get('page_heading') : $menuparams->get('page_title');
				$values->show_page_heading = ACYMAILING_J16 ? $menuparams->get('show_page_heading', 0) : $menuparams->get('show_page_title', 0);
			}
		}

		$subscriber = $subscriberClass->identify(true);
		if(empty($subscriber)){
			$subscription = $listsClass->getLists('listid');
			$subscriber = new stdClass();
			$subscriber->html = 1;
			$subscriber->subid = 0;
			$subscriber->key = 0;

			if(!empty($subscription)){
				foreach($subscription as $id => $onesub){
					$subscription[$id]->status = 1;
					if(!empty($menuparams) && strtolower($menuparams->get('listschecked', 'all')) != 'all' && !in_array($id, explode(',', $menuparams->get('listschecked', 'all')))){
						$subscription[$id]->status = 0;
					}
				}
			}

			acymailing_addBreadcrumb(acymailing_translation('SUBSCRIPTION'));
			if(empty($menu)) acymailing_setPageTitle(acymailing_translation('SUBSCRIPTION'));
		}else{
			$subscription = $subscriberClass->getSubscription($subscriber->subid, 'listid');

			acymailing_addBreadcrumb(acymailing_translation('MODIFY_SUBSCRIPTION'));
			if(empty($menu)) acymailing_setPageTitle(acymailing_translation('MODIFY_SUBSCRIPTION'));
		}
		if(!empty($subscriber->email)) $subscriber->email = acymailing_punycode($subscriber->email, 'emailToUTF8');

		acymailing_initJSStrings();

		if(!empty($menuparams) AND strtolower($menuparams->get('lists', 'all')) != 'all'){
			$visibleLists = strtolower($menuparams->get('lists', 'all'));
			if($visibleLists == 'none'){
				$subscription = array();
			}else{
				$newSubscription = array();
				$visiblesListsArray = explode(',', $visibleLists);
				foreach($subscription as $id => $onesub){
					if(in_array($id, $visiblesListsArray)) $newSubscription[$id] = $onesub;
				}
				$subscription = $newSubscription;
			}
		}


		if(!acymailing_level(3)){
			if(!empty($menuparams) && strtolower($menuparams->get('customfields', 'default')) != 'default'){
				$fieldsToDisplay = strtolower($menuparams->get('customfields', 'default'));
				$this->fieldsToDisplay = $fieldsToDisplay;
			}else{
				$this->fieldsToDisplay = 'default';
			}
		}

		$hiddenLists = '';
		if(!empty($menuparams)){
			$hiddenLists = trim($menuparams->get('hiddenlists', 'None'));
			if(empty($subscriber)){
				$allLists = $listsClass->getLists('listid');
			}else $allLists = $subscriberClass->getSubscription($subscriber->subid, 'listid');

			$hiddenListsArray = array();
			if(strpos($hiddenLists, ',') || is_numeric($hiddenLists)){
				$allhiddenlists = explode(',', $hiddenLists);
				foreach($allLists as $oneList){
					if(!$oneList->published || !in_array($oneList->listid, $allhiddenlists)) continue;
					$hiddenListsArray[] = $oneList->listid;
					unset($subscription[$oneList->listid]);
				}
			}elseif(strtolower($hiddenLists) == 'all'){
				$subscription = array();
				foreach($allLists as $oneList){
					if(!empty($oneList->published)) $hiddenListsArray[] = $oneList->listid;
				}
			}
			$hiddenLists = implode(',', $hiddenListsArray);
		}

		$defaultSubscription = $subscription;
		$forceLists = acymailing_getVar('string', 'listid', '');
		if(!empty($forceLists)){
			$subscription = array();
			$forceLists = explode(',', $forceLists);
			foreach($forceLists as $oneList){
				if(!empty($defaultSubscription[$oneList])){
					$subscription[$oneList] = $defaultSubscription[$oneList];
				}
			}
		}
		$forceHiddenLists = acymailing_getVar('string', 'hiddenlist', '');
		if(!empty($forceHiddenLists)){
			$forceHiddenLists = explode(',', $forceHiddenLists);
			$tmpList = array();
			$defaultHidden = explode(',', $hiddenLists);
			foreach($forceHiddenLists as $oneList){
				if(!empty($defaultSubscription[$oneList]) || in_array($oneList, $defaultHidden)){
					$tmpList[] = $oneList;
				}
			}
			$hiddenLists = implode(',', $tmpList);
		}

		$displayLists = false;
		foreach($subscription as $oneSub){
			if(!empty($oneSub->published) AND $oneSub->visible){
				$displayLists = true;
				break;
			}
		}

		$this->hiddenlists = $hiddenLists;
		$this->values = $values;
		$this->status = acymailing_get('type.festatus');
		$this->subscription = $subscription;
		$this->subscriber = $subscriber;
		$this->displayLists = $displayLists;
		$this->config = acymailing_config();
	}

	function saveunsub(){
		$subscriberClass = acymailing_get('class.subscriber');
		$subscriber = $subscriberClass->identify();
		$this->subscriber = $subscriber;

		$listid = acymailing_getVar('int', 'listid');
		if(!empty($listid)){
			$listClass = acymailing_get('class.list');
			$mylist = $listClass->get($listid);
			$this->list = $mylist;
		}
	}


	function unsub(){

		$subscriberClass = acymailing_get('class.subscriber');
		$config = acymailing_config();
		$this->config = $config;

		$subscriber = $subscriberClass->identify();
		$this->subscriber = $subscriber;

		$mailid = acymailing_getVar('int', 'mailid');
		$this->mailid = $mailid;

		$query = 'SELECT l.listid, l.name FROM '.acymailing_table('list').' as l';
		$query .= ' JOIN '.acymailing_table('listsub').' AS ls ON ls.listid = l.listid AND ls.subid = '.acymailing_getVar('int', 'subid');
		$query .= ' WHERE l.type = \'list\' AND (ls.unsubdate < ls.subdate OR ls.unsubdate IS NULL) AND l.visible = 1 AND l.published = 1';
		$query .= ' ORDER BY l.ordering ASC';

		$otherSubscriptions = acymailing_loadObjectList($query);

		$query = 'SELECT lm.listid FROM '.acymailing_table('mail').' AS m INNER JOIN '.acymailing_table('listmail').' AS lm ON m.mailid = lm.mailid WHERE m.mailid = '.acymailing_getVar('int', 'mailid');
		$listsToDeny = acymailing_loadObjectList($query);

		if(!empty($otherSubscriptions)){
			$i = 0;
			foreach($otherSubscriptions as $anotherSubscription){
				foreach($listsToDeny as $oneListToDeny){
					if($anotherSubscription->listid == $oneListToDeny->listid){
						unset($otherSubscriptions[$i]);
						continue;
					}
				}
				$i++;
			}
		}

		$this->otherSubscriptions = $otherSubscriptions;

		$replace = array();
		$replace['{list:name}'] = '';
		foreach($subscriber as $oneProp => $oneVal){
			$replace['{user:'.$oneProp.'}'] = $oneVal;
			$replace['{user:'.$oneProp.' | ucwords}'] = ucwords($oneVal);
		}

		if(!empty($mailid)){
			$classListmail = acymailing_get('class.listmail');
			$lists = $classListmail->getLists($mailid);
			$this->lists = $lists;
			if(!empty($lists)){
				$oneList = reset($lists);
				foreach($oneList as $oneProp => $oneVal){
					$replace['{list:'.$oneProp.'}'] = $oneVal;
				}
			}

			$mailClass = acymailing_get('class.mail');
			$news = $mailClass->get($mailid);
			if(!empty($news)){
				foreach($news as $oneProp => $oneVal){
					if(!is_string($oneVal)) continue;
					$replace['{mail:'.$oneProp.'}'] = $oneVal;
				}
			}
		}

		$intro = str_replace('UNSUB_INTRO', acymailing_translation('UNSUB_INTRO'), $config->get('unsub_intro', 'UNSUB_INTRO'));
		$intro = ' <div class="unsubintro" > '.nl2br(str_replace(array_keys($replace), $replace, $intro)).'</div> ';
		$this->intro = $intro;

		$this->replace = $replace;


		$unsubtext = str_replace(array_keys($replace), $replace, acymailing_translation('UNSUBSCRIBE'));
		acymailing_addBreadcrumb($unsubtext);

		acymailing_setPageTitle($unsubtext);
	}
}
views/user/index.html000060400000000054152455302720010654 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontbounces/tmpl/chart.php000060400000000527152455302720013203 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'bounces'.DS.'tmpl'.DS.'chart.php');
views/frontbounces/tmpl/index.html000060400000000054152455302720013361 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/frontbounces/view.html.php000060400000001031152455302720013032 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'bounces'.DS.'view.html.php');

class FrontbouncesViewFrontbounces extends BouncesViewBounces{

	var $ctrl='frontbounces';

	function display($tpl = null){
		global $Itemid;
		$this->Itemid = $Itemid;
		parent::display($tpl);
	}
}
views/frontbounces/index.html000060400000000054152455302720012405 0ustar00<html><body bgcolor="#FFFFFF"></body></html>sef_ext/index.html000060400000000054152455302720010176 0ustar00<html><body bgcolor="#FFFFFF"></body></html>sef_ext/com_acymailing.php000060400000003746152455302720011700 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

	if(!class_exists('Sh404sefFactory') || !method_exists('Sh404sefFactory','getConfig')){
		$dosef = false;
		return;
	}

	global $sh_LANG;
	$sefConfig = &Sh404sefFactory::getConfig();
	$shLangName = '';
	$shLangIso = '';
	$shItemidString = '';
	$acysefview = array('frontsubscriber','archive','lists','frontnewsletter','newsletter','user','frontdata','frontstats','frontstatsurl');

	$dosef = shInitializePlugin( $lang, $shLangName, $shLangIso, $option);

	if(!$dosef) return;

	if(isset($view)){
		if(!in_array($view, $acysefview)) $dosef = false;
		shRemoveFromGETVarsList('view');
	}

	if(isset($ctrl)){
		if(!in_array($ctrl, $acysefview)) $dosef = false;
		shRemoveFromGETVarsList('ctrl');
	}

	$title = array();

	$title[] = getMenuTitle($option, (isset($view) ? $view : null), (isset($Itemid) ? $Itemid : null), null, $shLangName);

	if(isset($layout)){ $title[] = $layout; shRemoveFromGETVarsList('layout'); }
	if(isset( $task )){ $title[] = $task; shRemoveFromGETVarsList('task'); }
	if(isset($listid)){ $title[] = $listid; shRemoveFromGETVarsList('listid'); }
	if(isset($mailid) && !(isset($task) && $task == 'edit' && isset($ctrl) && $ctrl == 'frontnewsletter')){ $title[] = $mailid; shRemoveFromGETVarsList('mailid'); }

	if(isset($option)) shRemoveFromGETVarsList('option');
	if(isset($lang)) shRemoveFromGETVarsList('lang'); // Already handled by sh404SEF
	if(isset($Itemid)) shRemoveFromGETVarsList('Itemid'); else $dosef = false; // There must be the Itemid


	if($dosef && !empty($title)){
		$string = shFinalizePlugin( $string, $title, $shAppendString, $shItemidString,
		(isset($limit) ? $limit : null), (isset($limitstart) ? $limitstart : null),
		(isset($shLangName) ? $shLangName : null), (isset($showall) ? $showall : null));
	}
params/testplug.php000060400000002450152455302720010411 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){

	class JElementTestplug extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name)
		{
			$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl=cpanel&amp;task=plgtrigger&amp;plg='.$value.'&amp;plgtype='.$name;
			return acymailing_popup($link, '<button class="btn" onclick="return false">Click here</button>', '', 650, 375);
		}
	}
}else{
	class JFormFieldTestplug extends JFormField
	{
		var $type = 'testplug';

		function getInput() {
			$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl=cpanel&amp;task=plgtrigger&amp;plg='.$this->value.'&amp;plgtype='.$this->fieldname;
			return acymailing_popup($link, '<button class="btn" onclick="return false">Click here</button>', '', 650, 375);
		}
	}
}
params/customfields.php000060400000003510152455302720011241 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){

	class JElementCustomfields extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name)
		{
			$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl='.(acymailing_isAdmin() ? '' : 'front').'chooselist&amp;task=customfields&amp;values='.$value.'&amp;control='.$control_name;
			$text = '<input class="inputbox" id="'.$control_name.'customfields" name="'.$control_name.'['.$name.']" type="text" style="width:100px" value="'.$value.'">';
			$text .= acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('Select').'</button>', '', 650, 375, 'link'.$control_name.'customfields');

			return $text;

		}
	}
}else{
	class JFormFieldCustomfields extends JFormField
	{
		var $type = 'help';

		function getInput() {
			$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl='.(acymailing_isAdmin() ? '' : 'front').'chooselist&amp;task=customfields&amp;values='.$this->value.'&amp;control=';
			$text = '<input class="inputbox" id="customfields" name="'.$this->name.'" type="text" style="width:100px" value="'.$this->value.'">';
			$text .= acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('Select').'</button>', '', 650, 375, 'linkcustomfields');

			return $text;

		}
	}
}
params/help.php000060400000002462152455302720007475 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){
	class JElementHelp extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name)
		{
			$config = acymailing_config();
			$level = $config->get('level');
			$link = ACYMAILING_HELPURL.$value.'&level='.$level;
			$text = acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('ACY_HELP').'</button>');
			return $text;
		}
	}
}else{
	class JFormFieldHelp extends JFormField
	{
		var $type = 'help';

		function getInput() {
			$config = acymailing_config();
			$level = $config->get('level');
			$link = ACYMAILING_HELPURL.$this->value.'&level='.$level;
			$text = acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('ACY_HELP').'</button>');
			return $text;
		}
	}
}
params/lists.php000060400000003456152455302720007707 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){

	class JElementLists extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name)
		{
			$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl='.(acymailing_isAdmin() ? '' : 'front').'chooselist&amp;task='.$name.'&amp;values='.$value.'&amp;control='.$control_name;
			$text = '<input class="inputbox" id="'.$control_name.$name.'" name="'.$control_name.'['.$name.']" type="text" style="width:100px" value="'.$value.'">';
			$text .= acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('Select').'</button>', '', 650, 375, 'link'.$control_name.$name);

			return $text;
		}
	}
}else{
	class JFormFieldLists extends JFormField
	{
		var $type = 'lists';

		function getInput() {

			$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl='.(acymailing_isAdmin() ? '' : 'front').'chooselist&amp;task='.$this->name.'&amp;values='.$this->value.'&amp;control=';
			$text = '<input class="inputbox" id="'.$this->name.'" name="'.$this->name.'" type="text" style="width:100px" value="'.$this->value.'">';
			$text .= acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('Select').'</button>', '', 650, 375, 'link'.$this->name);

			return $text;
		}
	}
}
params/tagcontenttags.xml000060400000000363152455302720011601 0ustar00<?xml version="1.0" encoding="UTF-8"?>
<form>
	<fields>
		<fieldset name="tagcontenttagfield">
			<field id="tagsauto" name="tagsauto" type="tag" mode="ajax" label="JTAG" multiple="true" custom="deny"></field>
		</fieldset>
	</fields>
</form>
params/birthday.xml000060400000013015152455302720010360 0ustar00<?xml version="1.0" encoding="UTF-8"?>
<form>
    <params addpath="/components/com_acymailing/params">
        <param name="acymailing" type="testplug" label="Test" description="Click on the test button to test your plugin. Please save your plugin first otherwise the configuration will not be applied" default="plgbirthday"/>
        <param name="mailid" type="newsletters" label="E-Mail" description="Select the Newsletter which will be sent as birthday e-mail" default="0" />
        <param name="sendtime" type="text" size="10" label="Send at" description="Specify the time AcyMailing will send the birthday e-mail to the user" default="8:00" />
        <param name="nbdays" type="text" size="10" label="Number of days before the birthday" description="The Newsletter will be sent X days before the user birthday. Please specify 0 if you want the Newsletter to be send the day of the birthday" default="0"/>
        <param name="birthdaytable" type="list" label="Birthday table" description="Select the database table AcyMailing will query to send the birthday Newsletter" default="0" >
            <option value="0"> - - - </option>
            <option value="acymailing">AcyMailing</option>
            <option value="ajaxregister">AJAX Register</option>
            <option value="civicrm">CiviCRM</option>
            <option value="cb">Community Builder</option>
            <option value="easyprofile">EasyProfile</option>
            <option value="easysocial">EasySocial</option>
            <option value="eventbooking">Event Booking</option>
            <option value="extendedreg">ExtendedReg</option>
            <option value="fabrik">Fabrik</option>
            <option value="fb">FireBoard</option>
            <option value="hikashop">HikaShop</option>
            <option value="jomsocial">JomSocial</option>
            <option value="joomla">Joomla</option>
            <option value="joomshopping">JoomShopping</option>
            <option value="jss">jSocialSuite</option>
            <option value="kunena">Kunena</option>
            <option value="mightyreg">Mighty Registration</option>
			<option value="seblod">Seblod</option>
            <option value="vm">VirtueMart</option>
        </param>
        <param name="birthdayfield" type="text" size="20" label="Birthday field" description="Enter the name of the table field used to save the birthdate. If you leave this field empty, AcyMailing will take the default one" default="" />
        <param name="listids" type="lists" default="" label="Subscription" description="If you select some lists here, only users subscribed to at least one of the selected lists can receive the birthday message. It can be very useful for multi-lingual birthday messages" />
    </params>
    <fields addfieldpath="/components/com_acymailing/params">
        <fieldset name="birthdayparams">
            <field name="acymailing" type="testplug" label="Test" description="Click on the test button to test your plugin. Please save your plugin first otherwise the configuration will not be applied" default="plgbirthday"/>
            <field name="mailid" type="newsletters" label="E-Mail" description="Select the Newsletter which will be sent as birthday e-mail" default="0" />
            <field name="sendtime" type="text" size="10" label="Send at" description="Specify the time AcyMailing will send the birthday e-mail to the user" default="8:00" />
            <field name="nbdays" type="text" size="10" label="Number of days before the birthday" description="The Newsletter will be sent X days before the user birthday. Please specify 0 if you want the Newsletter to be send the day of the birthday" default="0"/>
            <field name="birthdaytable" type="list" label="Birthday table" description="Select the database table AcyMailing will query to send the birthday Newsletter" default="0" >
                <option value="0"> - - - </option>
                <option value="ajaxregister">AJAX Register</option>
                <option value="acymailing">AcyMailing</option>
                <option value="cb">Community Builder</option>
                <option value="civicrm">CiviCRM</option>
                <option value="easyprofile">EasyProfile</option>
                <option value="easysocial">EasySocial</option>
                <option value="eventbooking">Event Booking</option>
                <option value="extendedreg">ExtendedReg</option>
                <option value="fabrik">Fabrik</option>
                <option value="fb">FireBoard</option>
                <option value="hikashop">HikaShop</option>
                <option value="jomsocial">JomSocial</option>
                <option value="joomla">Joomla</option>
                <option value="joomshopping">JoomShopping</option>
                <option value="jss">jSocialSuite</option>
                <option value="kunena">Kunena</option>
                <option value="mightyreg">Mighty Registration</option>
				<option value="seblod">Seblod</option>
                <option value="vm">VirtueMart</option>
            </field>
            <field name="birthdayfield" type="text" size="20" label="Birthday field" description="Enter the name of the table field used to save the birthdate. If you leave this field empty, AcyMailing will take the default one" default="" />
            <field name="listids" type="lists" default="" label="Subscription" description="If you select some lists here, only users subscribed to at least one of the selected lists can receive the birthday message. It can be very useful for multi-lingual birthday messages" />
        </fieldset>
    </fields>
</form>
params/index.html000060400000000054152455302720010024 0ustar00<html><body bgcolor="#FFFFFF"></body></html>params/customtemplate.php000060400000002753152455302720011616 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){
	class JElementCustomtemplate extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name)
		{
			$link = 'index.php?option=com_acymailing&ctrl=tag&task=customtemplate&tmpl=component&plugin='.$value;
			if(!empty($node->_attributes['help'])) $link .= '&help='.(string)$node->_attributes['help'];
			$text = acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('ACY_CUSTOMTEMPLATE').'</button>');
			return $text;
		}
	}
}else{
	class JFormFieldCustomtemplate extends JFormField
	{
		var $type = 'help';

		function getInput(){
			$link = 'index.php?option=com_acymailing&ctrl=tag&task=customtemplate&tmpl=component&plugin='.$this->value;
			if(!empty($this->element['help'])) $link .= '&help='.(string)$this->element['help'];
			$text = acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('ACY_CUSTOMTEMPLATE').'</button>');
			return $text;
		}
	}
}
params/listid.php000060400000002437152455302720010037 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){
	class JElementListid extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name){
			$listType = acymailing_get('type.lists');
			$listType->getValues();
			if(empty($node->_attributes['menu']) || (string)$node->_attributes['menu'] != 'archive') array_shift($listType->values);
			return $listType->display($control_name.'[listid]',(int) $value,false);
		}
	}
}else{
	class JFormFieldListid extends JFormField
	{
		var $type = 'listid';

		function getInput(){
			$listType = acymailing_get('type.lists');
			$listType->getValues();
			if(empty($this->element['menu']) || (string)$this->element['menu'] != 'archive') array_shift($listType->values);
			return $listType->display($this->name,(int) $this->value,false);
		}
	}
}
params/termscontent.php000060400000004326152455302720011273 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

$config = acymailing_config();
acymailing_addScript(false, ACYMAILING_JS.'acymailing.js?v='.filemtime(ACYMAILING_MEDIA.'js'.DS.'acymailing.js'));

if(!ACYMAILING_J16){

	class JElementTermscontent extends JElement
	{

		function fetchElement($name, $value, &$node, $control_name)
		{
			$link = 'index.php?option=com_content&amp;task=element&amp;tmpl=component&amp;object=content';
			$text = '<input class="inputbox" id="'.$control_name.'termscontent" name="'.$control_name.'[termscontent]" type="text" style="width:100px" value="'.$value.'">';
			$text .= acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('SELECT').'</button>', '', 650, 375, 'termscontent');

			$js = "function jSelectArticle(id, title, object) {
				document.getElementById('".$control_name."termscontent').value = id;
				acymailing.closeBox(true);
			}";
			acymailing_addScript(true, $js);

			return $text;
		}
	}
}else{
	class JFormFieldTermscontent extends JFormField
	{
		var $type = 'termscontent';

		function getInput() {
			$link = 'index.php?option=com_content&amp;view=articles&amp;layout=modal&amp;tmpl=component&amp;object=content&amp;function=acySelectArticle';
			$text = '<input class="inputbox" id="termscontent" name="'.$this->name.'" type="text" style="width:100px" value="'.$this->value.'">';
			$text .= acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('SELECT').'</button>', '', 650, 375, 'termscontent');

			$js = "window.acySelectArticle = function(id, title,catid, object) {
					document.getElementById('termscontent').value = id;
					acymailing.closeBox(true);
				}";
			acymailing_addScript(true, $js);
			return $text;
		}
	}
}
params/newsletters.php000060400000003314152455302720011121 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){

	class JElementNewsletters extends JElement
	{
		function fetchElement($name, $value, &$node, $control_name)
		{
			$results = acymailing_loadObjectList("SELECT `mailid`, CONCAT(subject,' ( ',mailid,' )') as `title` FROM #__acymailing_mail WHERE `type`='news' AND (`senddate` IS NULL OR `senddate` < 1)AND `type` = 'news' ORDER BY `subject` ASC");
			$novalue = new stdClass();
			$novalue->mailid = 0;
			$novalue->title = ' - - - - - ';
			array_unshift($results,$novalue);

			return acymailing_select($results, $control_name.'['.$name.']' , 'size="1"', 'mailid', 'title', $value);
		}
	}

}else{
	class JFormFieldNewsletters extends JFormField
	{
		var $type = 'newsletters';

		function getInput() {

			$results = acymailing_loadObjectList("SELECT `mailid`, CONCAT(subject,' ( ',mailid,' )') as `title` FROM #__acymailing_mail WHERE `type`='news' AND (`senddate` IS NULL OR `senddate` < 1)AND `type` = 'news' ORDER BY `subject` ASC");
			$novalue = new stdClass();
			$novalue->mailid = 0;
			$novalue->title = ' - - - - - ';
			array_unshift($results,$novalue);

			return acymailing_select($results, $this->name , 'size="1"', 'mailid', 'title', $this->value);
		}
	}
}
params/pluginsfield.php000060400000002645152455302720011235 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
}

if(!ACYMAILING_J16){
	class JElementPluginsfield extends JElement{
		function fetchElement($name, $value, &$node, $control_name){
			$link = 'index.php?option=com_acymailing&ctrl='.(acymailing_isAdmin() ? '' : 'front').'tag&task=plgtrigger&plg='.$value.'&fctName='.$value.'&tmpl=component';
			$text = acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('ACY_CONFIGURATION').'</button>');
			return $text;
		}
	}
}else{
	class JFormFieldPluginsfield extends JFormField{
		var $type = 'pluginsfield';

		function getInput(){
			$link = 'index.php?option=com_acymailing&ctrl='.(acymailing_isAdmin() ? '' : 'front').'tag&task=plgtrigger&plg='.$this->value.'&fctName='.$this->value.'&tmpl=component';
			$text = acymailing_popup($link, '<button class="btn" onclick="return false">'.acymailing_translation('ACY_CONFIGURATION').'</button>');
			return $text;
		}
	}
}
inc/phpmailer/class.phpmailer.php000060400000435072152455302720013110 0ustar00<?php

acymailing_cmsLoaded();

/**
 * Customized version of PHPMailer by Acyba
 * PHPMailer - PHP email creation and transport class.
 * PHP Version 5
 * @package PHPMailer
 * @link https://github.com/PHPMailer/PHPMailer/ The PHPMailer GitHub project
 * @author Marcus Bointon (Synchro/coolbru) <phpmailer@synchromedia.co.uk>
 * @author Jim Jagielski (jimjag) <jimjag@gmail.com>
 * @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
 * @author Brent R. Matzelle (original founder)
 * @copyright 2012 - 2014 Marcus Bointon
 * @copyright 2010 - 2012 Jim Jagielski
 * @copyright 2004 - 2009 Andy Prevost
 * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
 * @note This program is distributed in the hope that it will be useful - WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.
 */

/**
 * PHPMailer - PHP email creation and transport class.
 * @package PHPMailer
 * @author Marcus Bointon (Synchro/coolbru) <phpmailer@synchromedia.co.uk>
 * @author Jim Jagielski (jimjag) <jimjag@gmail.com>
 * @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
 * @author Brent R. Matzelle (original founder)
 */
 
if (version_compare(PHP_VERSION, '5.0.0', '<') ) {
	exit("Sorry, PHPMailer will only run on PHP version 5 or greater!\n");
}

class acymailingPHPMailer
{
    /**
     * The PHPMailer Version number.
     * @var string
     */
    public $Version = '5.2.19';

    /**
     * Email priority.
     * Options: null (default), 1 = High, 3 = Normal, 5 = low.
     * When null, the header is not set at all.
     * @var integer
     */
    public $Priority = null;

    /**
     * The character set of the message.
     * @var string
     */
    public $CharSet = 'iso-8859-1';

    /**
     * The MIME Content-type of the message.
     * @var string
     */
    public $ContentType = 'text/plain';

    /**
     * The message encoding.
     * Options: "8bit", "7bit", "binary", "base64", and "quoted-printable".
     * @var string
     */
    public $Encoding = '8bit';

    /**
     * Holds the most recent mailer error message.
     * @var string
     */
    public $ErrorInfo = '';

    /**
     * The From email address for the message.
     * @var string
     */
    public $From = 'root@localhost';

    /**
     * The From name of the message.
     * @var string
     */
    public $FromName = 'Root User';

    /**
     * The Sender email (Return-Path) of the message.
     * If not empty, will be sent via -f to sendmail or as 'MAIL FROM' in smtp mode.
     * @var string
     */
    public $Sender = '';

    /**
     * The Return-Path of the message.
     * If empty, it will be set to either From or Sender.
     * @var string
     * @deprecated Email senders should never set a return-path header;
     * it's the receiver's job (RFC5321 section 4.4), so this no longer does anything.
     * @link https://tools.ietf.org/html/rfc5321#section-4.4 RFC5321 reference
     */
    public $ReturnPath = '';

    /**
     * The Subject of the message.
     * @var string
     */
    public $Subject = '';

    /**
     * An HTML or plain text message body.
     * If HTML then call isHTML(true).
     * @var string
     */
    public $Body = '';

    /**
     * The plain-text message body.
     * This body can be read by mail clients that do not have HTML email
     * capability such as mutt & Eudora.
     * Clients that can read HTML will view the normal Body.
     * @var string
     */
    public $AltBody = '';

    /**
     * An iCal message part body.
     * Only supported in simple alt or alt_inline message types
     * To generate iCal events, use the bundled extras/EasyPeasyICS.php class or iCalcreator
     * @link http://sprain.ch/blog/downloads/php-class-easypeasyics-create-ical-files-with-php/
     * @link http://kigkonsult.se/iCalcreator/
     * @var string
     */
    public $Ical = '';

    /**
     * The complete compiled MIME message body.
     * @access protected
     * @var string
     */
    protected $MIMEBody = '';

    /**
     * The complete compiled MIME message headers.
     * @var string
     * @access protected
     */
    protected $MIMEHeader = '';

    /**
     * Extra headers that createHeader() doesn't fold in.
     * @var string
     * @access protected
     */
    protected $mailHeader = '';

    /**
     * Word-wrap the message body to this number of chars.
     * Set to 0 to not wrap. A useful value here is 78, for RFC2822 section 2.1.1 compliance.
     * @var integer
     */
    public $WordWrap = 0;

    /**
     * Which method to use to send mail.
     * Options: "mail", "sendmail", or "smtp".
     * @var string
     */
    public $Mailer = 'mail';

    /**
     * The path to the sendmail program.
     * @var string
     */
    public $Sendmail = '/usr/sbin/sendmail';

    /**
     * Whether mail() uses a fully sendmail-compatible MTA.
     * One which supports sendmail's "-oi -f" options.
     * @var boolean
     */
    public $UseSendmailOptions = true;

    /**
     * Path to PHPMailer plugins.
     * Useful if the SMTP class is not in the PHP include path.
     * @var string
     * @deprecated Should not be needed now there is an autoloader.
     */
    public $PluginDir = '';

    /**
     * The email address that a reading confirmation should be sent to, also known as read receipt.
     * @var string
     */
    public $ConfirmReadingTo = '';

    /**
     * The hostname to use in the Message-ID header and as default HELO string.
     * If empty, PHPMailer attempts to find one with, in order,
     * $_SERVER['SERVER_NAME'], gethostname(), php_uname('n'), or the value
     * 'localhost.localdomain'.
     * @var string
     */
    public $Hostname = '';

    /**
     * An ID to be used in the Message-ID header.
     * If empty, a unique id will be generated.
     * You can set your own, but it must be in the format "<id@domain>",
     * as defined in RFC5322 section 3.6.4 or it will be ignored.
     * @see https://tools.ietf.org/html/rfc5322#section-3.6.4
     * @var string
     */
    public $MessageID = '';

    /**
     * The message Date to be used in the Date header.
     * If empty, the current date will be added.
     * @var string
     */
    public $MessageDate = '';

    /**
     * SMTP hosts.
     * Either a single hostname or multiple semicolon-delimited hostnames.
     * You can also specify a different port
     * for each host by using this format: [hostname:port]
     * (e.g. "smtp1.example.com:25;smtp2.example.com").
     * You can also specify encryption type, for example:
     * (e.g. "tls://smtp1.example.com:587;ssl://smtp2.example.com:465").
     * Hosts will be tried in order.
     * @var string
     */
    public $Host = 'localhost';

    /**
     * The default SMTP server port.
     * @var integer
     * @TODO Why is this needed when the SMTP class takes care of it?
     */
    public $Port = 25;

    /**
     * The SMTP HELO of the message.
     * Default is $Hostname. If $Hostname is empty, PHPMailer attempts to find
     * one with the same method described above for $Hostname.
     * @var string
     * @see PHPMailer::$Hostname
     */
    public $Helo = '';

    /**
     * What kind of encryption to use on the SMTP connection.
     * Options: '', 'ssl' or 'tls'
     * @var string
     */
    public $SMTPSecure = '';

    /**
     * Whether to enable TLS encryption automatically if a server supports it,
     * even if `SMTPSecure` is not set to 'tls'.
     * Be aware that in PHP >= 5.6 this requires that the server's certificates are valid.
     * @var boolean
     */
    public $SMTPAutoTLS = true;

    /**
     * Whether to use SMTP authentication.
     * Uses the Username and Password properties.
     * @var boolean
     * @see PHPMailer::$Username
     * @see PHPMailer::$Password
     */
    public $SMTPAuth = false;

    /**
     * Options array passed to stream_context_create when connecting via SMTP.
     * @var array
     */
    public $SMTPOptions = array();

    /**
     * SMTP username.
     * @var string
     */
    public $Username = '';

    /**
     * SMTP password.
     * @var string
     */
    public $Password = '';

    /**
     * SMTP auth type.
     * Options are CRAM-MD5, LOGIN, PLAIN, NTLM, XOAUTH2, attempted in that order if not specified
     * @var string
     */
    public $AuthType = '';

    /**
     * SMTP realm.
     * Used for NTLM auth
     * @var string
     */
    public $Realm = '';

    /**
     * SMTP workstation.
     * Used for NTLM auth
     * @var string
     */
    public $Workstation = '';

    /**
     * The SMTP server timeout in seconds.
     * Default of 5 minutes (300sec) is from RFC2821 section 4.5.3.2
     * @var integer
     */
    public $Timeout = 300;

    /**
     * SMTP class debug output mode.
     * Debug output level.
     * Options:
     * * `0` No output
     * * `1` Commands
     * * `2` Data and commands
     * * `3` As 2 plus connection status
     * * `4` Low-level data output
     * @var integer
     * @see SMTP::$do_debug
     */
    public $SMTPDebug = 0;

    /**
     * How to handle debug output.
     * Options:
     * * `echo` Output plain-text as-is, appropriate for CLI
     * * `html` Output escaped, line breaks converted to `<br>`, appropriate for browser output
     * * `error_log` Output to error log as configured in php.ini
     *
     * Alternatively, you can provide a callable expecting two params: a message string and the debug level:
     * <code>
     * $mail->Debugoutput = function($str, $level) {echo "debug level $level; message: $str";};
     * </code>
     * @var string|callable
     * @see SMTP::$Debugoutput
     */
    public $Debugoutput = 'echo';

    /**
     * Whether to keep SMTP connection open after each message.
     * If this is set to true then to close the connection
     * requires an explicit call to smtpClose().
     * @var boolean
     */
    public $SMTPKeepAlive = false;

    /**
     * Whether to split multiple to addresses into multiple messages
     * or send them all in one message.
     * Only supported in `mail` and `sendmail` transports, not in SMTP.
     * @var boolean
     */
    public $SingleTo = false;

    /**
     * Storage for addresses when SingleTo is enabled.
     * @var array
     * @TODO This should really not be public
     */
    public $SingleToArray = array();

    /**
     * Whether to generate VERP addresses on send.
     * Only applicable when sending via SMTP.
     * @link https://en.wikipedia.org/wiki/Variable_envelope_return_path
     * @link http://www.postfix.org/VERP_README.html Postfix VERP info
     * @var boolean
     */
    public $do_verp = false;

    /**
     * Whether to allow sending messages with an empty body.
     * @var boolean
     */
    public $AllowEmpty = false;

    /**
     * The default line ending.
     * @note The default remains "\n". We force CRLF where we know
     *        it must be used via self::CRLF.
     * @var string
     */
    public $LE = "\n";

    /**
     * DKIM selector.
     * @var string
     */
    public $DKIM_selector = '';

    /**
     * DKIM Identity.
     * Usually the email address used as the source of the email.
     * @var string
     */
    public $DKIM_identity = '';

    /**
     * DKIM passphrase.
     * Used if your key is encrypted.
     * @var string
     */
    public $DKIM_passphrase = '';

    /**
     * DKIM signing domain name.
     * @example 'example.com'
     * @var string
     */
    public $DKIM_domain = '';

    /**
     * DKIM private key file path.
     * @var string
     */
    public $DKIM_private = '';
	
	/**
     * DKIM private key string.
     * If set, takes precedence over `$DKIM_private`.
     * @var string
     */
    public $DKIM_private_string = '';

    /**
     * Callback Action function name.
     *
     * The function that handles the result of the send email action.
     * It is called out by send() for each email sent.
     *
     * Value can be any php callable: http://www.php.net/is_callable
     *
     * Parameters:
     *   boolean $result        result of the send action
     *   string  $to            email address of the recipient
     *   string  $cc            cc email addresses
     *   string  $bcc           bcc email addresses
     *   string  $subject       the subject
     *   string  $body          the email body
     *   string  $from          email address of sender
     * @var string
     */
    public $action_function = '';

    /**
     * What to put in the X-Mailer header.
     * Options: An empty string for PHPMailer default, whitespace for none, or a string to use
     * @var string
     */
    public $XMailer = '';

    /**
     * Which validator to use by default when validating email addresses.
     * May be a callable to inject your own validator, but there are several built-in validators.
     * @see PHPMailer::validateAddress()
     * @var string|callable
     * @static
     */
    public static $validator = 'auto';

    /**
     * An instance of the SMTP sender class.
     * @var SMTP
     * @access protected
     */
    protected $smtp = null;

    /**
     * The array of 'to' names and addresses.
     * @var array
     * @access protected
     */
    public $to = array();

    /**
     * The array of 'cc' names and addresses.
     * @var array
     * @access protected
     */
    public $cc = array();

    /**
     * The array of 'bcc' names and addresses.
     * @var array
     * @access protected
     */
    public $bcc = array();

    /**
     * The array of reply-to names and addresses.
     * @var array
     * @access protected
     */
    public $ReplyTo = array();

    /**
     * An array of all kinds of addresses.
     * Includes all of $to, $cc, $bcc
     * @var array
     * @access protected
     * @see PHPMailer::$to @see PHPMailer::$cc @see PHPMailer::$bcc
     */
    protected $all_recipients = array();

    /**
     * An array of names and addresses queued for validation.
     * In send(), valid and non duplicate entries are moved to $all_recipients
     * and one of $to, $cc, or $bcc.
     * This array is used only for addresses with IDN.
     * @var array
     * @access protected
     * @see PHPMailer::$to @see PHPMailer::$cc @see PHPMailer::$bcc
     * @see PHPMailer::$all_recipients
     */
    protected $RecipientsQueue = array();

    /**
     * An array of reply-to names and addresses queued for validation.
     * In send(), valid and non duplicate entries are moved to $ReplyTo.
     * This array is used only for addresses with IDN.
     * @var array
     * @access protected
     * @see PHPMailer::$ReplyTo
     */
    protected $ReplyToQueue = array();

    /**
     * The array of attachments.
     * @var array
     * @access protected
     */
    public $attachment = array();

    /**
     * The array of custom headers.
     * @var array
     * @access protected
     */
    public $CustomHeader = array();

    /**
     * The most recent Message-ID (including angular brackets).
     * @var string
     * @access protected
     */
    protected $lastMessageID = '';

    /**
     * The message's MIME type.
     * @var string
     * @access protected
     */
    protected $message_type = '';

    /**
     * The array of MIME boundary strings.
     * @var array
     * @access protected
     */
    protected $boundary = array();

    /**
     * The array of available languages.
     * @var array
     * @access protected
     */
    protected $lang = array();

    /**
     * The number of errors encountered.
     * @var integer
     * @access protected
     */
    protected $error_count = 0;

    /**
     * The S/MIME certificate file path.
     * @var string
     * @access protected
     */
    protected $sign_cert_file = '';

    /**
     * The S/MIME key file path.
     * @var string
     * @access protected
     */
    protected $sign_key_file = '';

    /**
     * The optional S/MIME extra certificates ("CA Chain") file path.
     * @var string
     * @access protected
     */
    protected $sign_extracerts_file = '';

    /**
     * The S/MIME password for the key.
     * Used only if the key is encrypted.
     * @var string
     * @access protected
     */
    protected $sign_key_pass = '';

    /**
     * Whether to throw exceptions for errors.
     * @var boolean
     * @access protected
     */
    protected $exceptions = false;

    /**
     * Unique ID used for message ID and boundaries.
     * @var string
     * @access protected
     */
    protected $uniqueid = '';

    /**
     * Error severity: message only, continue processing.
     */
    const STOP_MESSAGE = 0;

    /**
     * Error severity: message, likely ok to continue processing.
     */
    const STOP_CONTINUE = 1;

    /**
     * Error severity: message, plus full stop, critical error reached.
     */
    const STOP_CRITICAL = 2;

    /**
     * SMTP RFC standard line ending.
     */
    const CRLF = "\r\n";

    /**
     * The maximum line length allowed by RFC 2822 section 2.1.1
     * @var integer
     */
    const MAX_LINE_LENGTH = 998;

    /**
     * Constructor.
     * @param boolean $exceptions Should we throw external exceptions?
     */
    public function __construct($exceptions = null)
    {
        if ($exceptions !== null) {
            $this->exceptions = (boolean)$exceptions;
        }
    }

    /**
     * Destructor.
     */
    public function __destruct()
    {
        //Close any open SMTP connection nicely
        $this->smtpClose();
    }

    /**
     * Call mail() in a safe_mode-aware fashion.
     * Also, unless sendmail_path points to sendmail (or something that
     * claims to be sendmail), don't pass params (not a perfect fix,
     * but it will do)
     * @param string $to To
     * @param string $subject Subject
     * @param string $body Message Body
     * @param string $header Additional Header(s)
     * @param string $params Params
     * @access private
     * @return boolean
     */
    private function mailPassthru($to, $subject, $body, $header, $params)
    {
        //Check overloading of mail function to avoid double-encoding
        if (ini_get('mbstring.func_overload') & 1) {
            $subject = $this->secureHeader($subject);
        } else {
            $subject = $this->encodeHeader($this->secureHeader($subject));
        }
        //Can't use additional_parameters in safe_mode, calling mail() with null params breaks
        //@link http://php.net/manual/en/function.mail.php
       if (ini_get('safe_mode') or !$this->UseSendmailOptions or is_null($params)) {
            $result = mail($to, $subject, $body, $header);
        } else {
            $result = mail($to, $subject, $body, $header, $params);
        }
        return $result;
    }

    /**
     * Output debugging info via user-defined method.
     * Only generates output if SMTP debug output is enabled (@see SMTP::$do_debug).
     * @see PHPMailer::$Debugoutput
     * @see PHPMailer::$SMTPDebug
     * @param string $str
     */
    protected function edebug($str)
    {
        if ($this->SMTPDebug <= 0) {
            return;
        }
        //Avoid clash with built-in function names
        if (!in_array($this->Debugoutput, array('error_log', 'html', 'echo')) and is_callable($this->Debugoutput)) {
            call_user_func($this->Debugoutput, $str, $this->SMTPDebug);
            return;
        }
        switch ($this->Debugoutput) {
            case 'error_log':
                //Don't output, just log
                error_log($str);
                break;
            case 'html':
                //Cleans up output a bit for a better looking, HTML-safe output
                echo htmlentities(
                    preg_replace('/[\r\n]+/', '', $str),
                    ENT_QUOTES,
                    'UTF-8'
                )
                . "<br>\n";
                break;
            case 'echo':
            default:
                //Normalize line breaks
                $str = preg_replace('/\r\n?/ms', "\n", $str);
                echo gmdate('Y-m-d H:i:s') . "\t" . str_replace(
                    "\n",
                    "\n                   \t                  ",
                    trim($str)
                ) . "\n";
        }
    }

    /**
     * Sets message type to HTML or plain.
     * @param boolean $isHtml True for HTML mode.
     * @return void
     */
    public function isHTML($isHtml = true)
    {
        if ($isHtml) {
            $this->ContentType = 'text/html';
        } else {
            $this->ContentType = 'text/plain';
        }
    }

    /**
     * Send messages using SMTP.
     * @return void
     */
    public function isSMTP()
    {
        $this->Mailer = 'smtp';
    }

    /**
     * Send messages using PHP's mail() function.
     * @return void
     */
    public function isMail()
    {
        $this->Mailer = 'mail';
    }

    /**
     * Send messages using $Sendmail.
     * @return void
     */
    public function isSendmail()
    {
        $ini_sendmail_path = ini_get('sendmail_path');

        if (!stristr($ini_sendmail_path, 'sendmail')) {
            $this->Sendmail = '/usr/sbin/sendmail';
        } else {
            $this->Sendmail = $ini_sendmail_path;
        }
        $this->Mailer = 'sendmail';
    }

    /**
     * Send messages using qmail.
     * @return void
     */
    public function isQmail()
    {
        $ini_sendmail_path = ini_get('sendmail_path');

        if (!stristr($ini_sendmail_path, 'qmail')) {
            $this->Sendmail = '/var/qmail/bin/qmail-inject';
        } else {
            $this->Sendmail = $ini_sendmail_path;
        }
        $this->Mailer = 'qmail';
    }

    /**
     * Add a "To" address.
     * @param string $address The email address to send to
     * @param string $name
     * @return boolean true on success, false if address already used or invalid in some way
     */
    public function addAddress($address, $name = '')
    {
        return $this->addOrEnqueueAnAddress('to', $address, $name);
    }

    /**
     * Add a "CC" address.
     * @note: This function works with the SMTP mailer on win32, not with the "mail" mailer.
     * @param string $address The email address to send to
     * @param string $name
     * @return boolean true on success, false if address already used or invalid in some way
     */
    public function addCC($address, $name = '')
    {
        return $this->addOrEnqueueAnAddress('cc', $address, $name);
    }

    /**
     * Add a "BCC" address.
     * @note: This function works with the SMTP mailer on win32, not with the "mail" mailer.
     * @param string $address The email address to send to
     * @param string $name
     * @return boolean true on success, false if address already used or invalid in some way
     */
    public function addBCC($address, $name = '')
    {
        return $this->addOrEnqueueAnAddress('bcc', $address, $name);
    }

    /**
     * Add a "Reply-To" address.
     * @param string $address The email address to reply to
     * @param string $name
     * @return boolean true on success, false if address already used or invalid in some way
     */
    public function addReplyTo($address, $name = '')
    {
        return $this->addOrEnqueueAnAddress('Reply-To', $address, $name);
    }

    /**
     * Add an address to one of the recipient arrays or to the ReplyTo array. Because PHPMailer
     * can't validate addresses with an IDN without knowing the PHPMailer::$CharSet (that can still
     * be modified after calling this function), addition of such addresses is delayed until send().
     * Addresses that have been added already return false, but do not throw exceptions.
     * @param string $kind One of 'to', 'cc', 'bcc', or 'ReplyTo'
     * @param string $address The email address to send, resp. to reply to
     * @param string $name
     * @throws acymailingphpmailerException
     * @return boolean true on success, false if address already used or invalid in some way
     * @access protected
     */
    protected function addOrEnqueueAnAddress($kind, $address, $name)
    {
        $address = trim($address);
        $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim
        if (($pos = strrpos($address, '@')) === false) {
            // At-sign is misssing.
            $error_message = $this->lang('invalid_address') . " (addAnAddress $kind): $address";
            $this->setError($error_message);
            $this->edebug($error_message);
            if ($this->exceptions) {
                throw new acymailingphpmailerException($error_message);
            }
            return false;
        }
        $params = array($kind, $address, $name);
        // Enqueue addresses with IDN until we know the PHPMailer::$CharSet.
        if ($this->has8bitChars(substr($address, ++$pos)) and $this->idnSupported()) {
            if ($kind != 'Reply-To') {
                if (!array_key_exists($address, $this->RecipientsQueue)) {
                    $this->RecipientsQueue[$address] = $params;
                    return true;
                }
            } else {
                if (!array_key_exists($address, $this->ReplyToQueue)) {
                    $this->ReplyToQueue[$address] = $params;
                    return true;
                }
            }
            return false;
        }
        // Immediately add standard addresses without IDN.
        return call_user_func_array(array($this, 'addAnAddress'), $params);
    }

    /**
     * Add an address to one of the recipient arrays or to the ReplyTo array.
     * Addresses that have been added already return false, but do not throw exceptions.
     * @param string $kind One of 'to', 'cc', 'bcc', or 'ReplyTo'
     * @param string $address The email address to send, resp. to reply to
     * @param string $name
     * @throws acymailingphpmailerException
     * @return boolean true on success, false if address already used or invalid in some way
     * @access protected
     */
    protected function addAnAddress($kind, $address, $name = '')
    {
        if (!in_array($kind, array('to', 'cc', 'bcc', 'Reply-To'))) {
            $error_message = $this->lang('Invalid recipient kind: ') . $kind;
            $this->setError($error_message);
            $this->edebug($error_message);
            if ($this->exceptions) {
                throw new acymailingphpmailerException($error_message);
            }
            return false;
        }
        if (!$this->validateAddress($address)) {
            $error_message = $this->lang('invalid_address') . " (addAnAddress $kind): $address";
            $this->setError($error_message);
            $this->edebug($error_message);
            if ($this->exceptions) {
                throw new acymailingphpmailerException($error_message);
            }
            return false;
        }
        if ($kind != 'Reply-To') {
            if (!array_key_exists(strtolower($address), $this->all_recipients)) {
                array_push($this->$kind, array($address, $name));
                $this->all_recipients[strtolower($address)] = true;
                return true;
            }
        } else {
            if (!array_key_exists(strtolower($address), $this->ReplyTo)) {
                $this->ReplyTo[strtolower($address)] = array($address, $name);
                return true;
            }
        }
        return false;
    }

    /**
     * Parse and validate a string containing one or more RFC822-style comma-separated email addresses
     * of the form "display name <address>" into an array of name/address pairs.
     * Uses the imap_rfc822_parse_adrlist function if the IMAP extension is available.
     * Note that quotes in the name part are removed.
     * @param string $addrstr The address list string
     * @param bool $useimap Whether to use the IMAP extension to parse the list
     * @return array
     * @link http://www.andrew.cmu.edu/user/agreen1/testing/mrbs/web/Mail/RFC822.php A more careful implementation
     */
    public function parseAddresses($addrstr, $useimap = true)
    {
        $addresses = array();
        if ($useimap and function_exists('imap_rfc822_parse_adrlist')) {
            //Use this built-in parser if it's available
            $list = imap_rfc822_parse_adrlist($addrstr, '');
            foreach ($list as $address) {
                if ($address->host != '.SYNTAX-ERROR.') {
                    if ($this->validateAddress($address->mailbox . '@' . $address->host)) {
                        $addresses[] = array(
                            'name' => (property_exists($address, 'personal') ? $address->personal : ''),
                            'address' => $address->mailbox . '@' . $address->host
                        );
                    }
                }
            }
        } else {
            //Use this simpler parser
            $list = explode(',', $addrstr);
            foreach ($list as $address) {
                $address = trim($address);
                //Is there a separate name part?
                if (strpos($address, '<') === false) {
                    //No separate name, just use the whole thing
                    if ($this->validateAddress($address)) {
                        $addresses[] = array(
                            'name' => '',
                            'address' => $address
                        );
                    }
                } else {
                    list($name, $email) = explode('<', $address);
                    $email = trim(str_replace('>', '', $email));
                    if ($this->validateAddress($email)) {
                        $addresses[] = array(
                            'name' => trim(str_replace(array('"', "'"), '', $name)),
                            'address' => $email
                        );
                    }
                }
            }
        }
        return $addresses;
    }

    /**
     * Set the From and FromName properties.
     * @param string $address
     * @param string $name
     * @param boolean $auto Whether to also set the Sender address, defaults to true
     * @throws acymailingphpmailerException
     * @return boolean
     */
    public function setFrom($address, $name = '', $auto = true)
    {
        $address = trim($address);
        $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim
        // Don't validate now addresses with IDN. Will be done in send().
        if (($pos = strrpos($address, '@')) === false or
            (!$this->has8bitChars(substr($address, ++$pos)) or !$this->idnSupported()) and
            !$this->validateAddress($address)) {
            $error_message = $this->lang('invalid_address') . " (setFrom) $address";
            $this->setError($error_message);
            $this->edebug($error_message);
            if ($this->exceptions) {
                throw new acymailingphpmailerException($error_message);
            }
            return false;
        }
        $this->From = $address;
        $this->FromName = $name;
        if ($auto) {
            if (empty($this->Sender)) {
                $this->Sender = $address;
            }
        }
        return true;
    }

    /**
     * Return the Message-ID header of the last email.
     * Technically this is the value from the last time the headers were created,
     * but it's also the message ID of the last sent message except in
     * pathological cases.
     * @return string
     */
    public function getLastMessageID()
    {
        return $this->lastMessageID;
    }

    /**
     * Check that a string looks like an email address.
     * @param string $address The email address to check
     * @param string|callable $patternselect A selector for the validation pattern to use :
     * * `auto` Pick best pattern automatically;
     * * `pcre8` Use the squiloople.com pattern, requires PCRE > 8.0, PHP >= 5.3.2, 5.2.14;
     * * `pcre` Use old PCRE implementation;
     * * `php` Use PHP built-in FILTER_VALIDATE_EMAIL;
     * * `html5` Use the pattern given by the HTML5 spec for 'email' type form input elements.
     * * `noregex` Don't use a regex: super fast, really dumb.
     * Alternatively you may pass in a callable to inject your own validator, for example:
     * PHPMailer::validateAddress('user@example.com', function($address) {
     *     return (strpos($address, '@') !== false);
     * });
     * You can also set the PHPMailer::$validator static to a callable, allowing built-in methods to use your validator.
     * @return boolean
     * @static
     * @access public
     */
    public static function validateAddress($address, $patternselect = null)
    {
        if (is_null($patternselect)) {
            $patternselect = self::$validator;
        }
        if (is_callable($patternselect)) {
            return call_user_func($patternselect, $address);
        }
        //Reject line breaks in addresses; it's valid RFC5322, but not RFC5321
        if (strpos($address, "\n") !== false or strpos($address, "\r") !== false) {
            return false;
        }
        if (!$patternselect or $patternselect == 'auto') {
            //Check this constant first so it works when extension_loaded() is disabled by safe mode
            //Constant was added in PHP 5.2.4
            if (defined('PCRE_VERSION')) {
                //This pattern can get stuck in a recursive loop in PCRE <= 8.0.2
                if (version_compare(PCRE_VERSION, '8.0.3') >= 0) {
                    $patternselect = 'pcre8';
                } else {
                    $patternselect = 'pcre';
                }
            } elseif (function_exists('extension_loaded') and extension_loaded('pcre')) {
                //Fall back to older PCRE
                $patternselect = 'pcre';
            } else {
                //Filter_var appeared in PHP 5.2.0 and does not require the PCRE extension
                if (version_compare(PHP_VERSION, '5.2.0') >= 0) {
                    $patternselect = 'php';
                } else {
                    $patternselect = 'noregex';
                }
            }
        }
        switch ($patternselect) {
            case 'pcre8':
                /**
                 * Uses the same RFC5322 regex on which FILTER_VALIDATE_EMAIL is based, but allows dotless domains.
                 * @link http://squiloople.com/2009/12/20/email-address-validation/
                 * @copyright 2009-2010 Michael Rushton
                 * Feel free to use and redistribute this code. But please keep this copyright notice.
                 */
                return (boolean)preg_match(
                    '/^(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){255,})(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){65,}@)' .
                    '((?>(?>(?>((?>(?>(?>\x0D\x0A)?[\t ])+|(?>[\t ]*\x0D\x0A)?[\t ]+)?)(\((?>(?2)' .
                    '(?>[\x01-\x08\x0B\x0C\x0E-\'*-\[\]-\x7F]|\\\[\x00-\x7F]|(?3)))*(?2)\)))+(?2))|(?2))?)' .
                    '([!#-\'*+\/-9=?^-~-]+|"(?>(?2)(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\x7F]))*' .
                    '(?2)")(?>(?1)\.(?1)(?4))*(?1)@(?!(?1)[a-z0-9-]{64,})(?1)(?>([a-z0-9](?>[a-z0-9-]*[a-z0-9])?)' .
                    '(?>(?1)\.(?!(?1)[a-z0-9-]{64,})(?1)(?5)){0,126}|\[(?:(?>IPv6:(?>([a-f0-9]{1,4})(?>:(?6)){7}' .
                    '|(?!(?:.*[a-f0-9][:\]]){8,})((?6)(?>:(?6)){0,6})?::(?7)?))|(?>(?>IPv6:(?>(?6)(?>:(?6)){5}:' .
                    '|(?!(?:.*[a-f0-9]:){6,})(?8)?::(?>((?6)(?>:(?6)){0,4}):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}' .
                    '|[1-9]?[0-9])(?>\.(?9)){3}))\])(?1)$/isD',
                    $address
                );
            case 'pcre':
                //An older regex that doesn't need a recent PCRE
                return (boolean)preg_match(
                    '/^(?!(?>"?(?>\\\[ -~]|[^"])"?){255,})(?!(?>"?(?>\\\[ -~]|[^"])"?){65,}@)(?>' .
                    '[!#-\'*+\/-9=?^-~-]+|"(?>(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\xFF]))*")' .
                    '(?>\.(?>[!#-\'*+\/-9=?^-~-]+|"(?>(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\xFF]))*"))*' .
                    '@(?>(?![a-z0-9-]{64,})(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)(?>\.(?![a-z0-9-]{64,})' .
                    '(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)){0,126}|\[(?:(?>IPv6:(?>(?>[a-f0-9]{1,4})(?>:' .
                    '[a-f0-9]{1,4}){7}|(?!(?:.*[a-f0-9][:\]]){8,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?' .
                    '::(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?))|(?>(?>IPv6:(?>[a-f0-9]{1,4}(?>:' .
                    '[a-f0-9]{1,4}){5}:|(?!(?:.*[a-f0-9]:){6,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4})?' .
                    '::(?>(?:[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4}):)?))?(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}' .
                    '|[1-9]?[0-9])(?>\.(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}))\])$/isD',
                    $address
                );
            case 'html5':
                /**
                 * This is the pattern used in the HTML5 spec for validation of 'email' type form input elements.
                 * @link http://www.whatwg.org/specs/web-apps/current-work/#e-mail-state-(type=email)
                 */
                return (boolean)preg_match(
                    '/^[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}' .
                    '[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/sD',
                    $address
                );
            case 'noregex':
                //No PCRE! Do something _very_ approximate!
                //Check the address is 3 chars or longer and contains an @ that's not the first or last char
                return (strlen($address) >= 3
                    and strpos($address, '@') >= 1
                    and strpos($address, '@') != strlen($address) - 1);
            case 'php':
            default:
                return (boolean)filter_var($address, FILTER_VALIDATE_EMAIL);
        }
    }

    /**
     * Tells whether IDNs (Internationalized Domain Names) are supported or not. This requires the
     * "intl" and "mbstring" PHP extensions.
     * @return bool "true" if required functions for IDN support are present
     */
    public function idnSupported()
    {
        // @TODO: Write our own "idn_to_ascii" function for PHP <= 5.2.
        return function_exists('idn_to_ascii') and function_exists('mb_convert_encoding');
    }

    /**
     * Converts IDN in given email address to its ASCII form, also known as punycode, if possible.
     * Important: Address must be passed in same encoding as currently set in PHPMailer::$CharSet.
     * This function silently returns unmodified address if:
     * - No conversion is necessary (i.e. domain name is not an IDN, or is already in ASCII form)
     * - Conversion to punycode is impossible (e.g. required PHP functions are not available)
     *   or fails for any reason (e.g. domain has characters not allowed in an IDN)
     * @see PHPMailer::$CharSet
     * @param string $address The email address to convert
     * @return string The encoded address in ASCII form
     */
    public function punyencodeAddress($address)
    {
        // Verify we have required functions, CharSet, and at-sign.
        if ($this->idnSupported() and
            !empty($this->CharSet) and
            ($pos = strrpos($address, '@')) !== false) {
            $domain = substr($address, ++$pos);
            // Verify CharSet string is a valid one, and domain properly encoded in this CharSet.
            if ($this->has8bitChars($domain) and @mb_check_encoding($domain, $this->CharSet)) {
                $domain = mb_convert_encoding($domain, 'UTF-8', $this->CharSet);
                if (($punycode = defined('INTL_IDNA_VARIANT_UTS46') ?
                    idn_to_ascii($domain, 0, INTL_IDNA_VARIANT_UTS46) :
                    idn_to_ascii($domain)) !== false) {
                    return substr($address, 0, $pos) . $punycode;
                }
            }
        }
        return $address;
    }

    /**
     * Create a message and send it.
     * Uses the sending method specified by $Mailer.
     * @throws acymailingphpmailerException
     * @return boolean false on error - See the ErrorInfo property for details of the error.
     */
    public function send()
    {
        try {
            if (!$this->preSend()) {
                return false;
            }
            return $this->postSend();
        } catch (acymailingphpmailerException $exc) {
            $this->mailHeader = '';
            $this->setError($exc->getMessage());
            if ($this->exceptions) {
                throw $exc;
            }
            return false;
        }
    }

    /**
     * Prepare a message for sending.
     * @throws acymailingphpmailerException
     * @return boolean
     */
    public function preSend()
    {
        try {
            $this->error_count = 0; // Reset errors
            $this->mailHeader = '';

            // Dequeue recipient and Reply-To addresses with IDN
            foreach (array_merge($this->RecipientsQueue, $this->ReplyToQueue) as $params) {
                $params[1] = $this->punyencodeAddress($params[1]);
                call_user_func_array(array($this, 'addAnAddress'), $params);
            }
            if ((count($this->to) + count($this->cc) + count($this->bcc)) < 1) {
                throw new acymailingphpmailerException($this->lang('provide_address'), self::STOP_CRITICAL);
            }

            // Validate From, Sender, and ConfirmReadingTo addresses
            foreach (array('From', 'Sender', 'ConfirmReadingTo') as $address_kind) {
                $this->$address_kind = trim($this->$address_kind);
                if (empty($this->$address_kind)) {
                    continue;
                }
                $this->$address_kind = $this->punyencodeAddress($this->$address_kind);
                if (!$this->validateAddress($this->$address_kind)) {
                    $error_message = $this->lang('invalid_address') . ' (punyEncode) ' . $this->$address_kind;
                    $this->setError($error_message);
                    $this->edebug($error_message);
                    if ($this->exceptions) {
                        throw new acymailingphpmailerException($error_message);
                    }
                    return false;
                }
            }

            // Set whether the message is multipart/alternative
            if ($this->alternativeExists()) {
                $this->ContentType = 'multipart/alternative';
            }

            $this->setMessageType();
            // Refuse to send an empty message unless we are specifically allowing it
            if (!$this->AllowEmpty and empty($this->Body)) {
                throw new acymailingphpmailerException($this->lang('empty_message'), self::STOP_CRITICAL);
            }

            // Create body before headers in case body makes changes to headers (e.g. altering transfer encoding)
            $this->MIMEHeader = '';
            $this->MIMEBody = $this->createBody();
            // createBody may have added some headers, so retain them
            $tempheaders = $this->MIMEHeader;
            $this->MIMEHeader = $this->createHeader();
            $this->MIMEHeader .= $tempheaders;

            // To capture the complete message when using mail(), create
            // an extra header list which createHeader() doesn't fold in
            if ($this->Mailer == 'mail') {
                if (count($this->to) > 0) {
                    $this->mailHeader .= $this->addrAppend('To', $this->to);
                } else {
                    $this->mailHeader .= $this->headerLine('To', 'undisclosed-recipients:;');
                }
                $this->mailHeader .= $this->headerLine(
                    'Subject',
                    $this->encodeHeader($this->secureHeader(trim($this->Subject)))
                );
            }

            // Sign with DKIM if enabled
			 if (!empty($this->DKIM_domain)
                && !empty($this->DKIM_selector)
                && (!empty($this->DKIM_private_string)
                   || (!empty($this->DKIM_private) && file_exists($this->DKIM_private))
                )
            ) {
				$header_dkim = $this->ACY_DKIM_Add($this->MIMEBody);
				$this->MIMEHeader = str_replace("\r\n", "\n", $header_dkim) . $this->MIMEHeader;
			}
            return true;
        } catch (acymailingphpmailerException $exc) {
            $this->setError($exc->getMessage());
            if ($this->exceptions) {
                throw $exc;
            }
            return false;
        }
    }

    /**
     * Actually send a message.
     * Send the email via the selected mechanism
     * @throws acymailingphpmailerException
     * @return boolean
     */
    public function postSend()
    {
        try {
            // Choose the mailer and send through it
            switch ($this->Mailer) {
                case 'sendmail':
                    return $this->sendmailSend($this->MIMEHeader, $this->MIMEBody);
                case 'smtp':
                    return $this->smtpSend($this->MIMEHeader, $this->MIMEBody);
				case 'elasticemail':
				//Or any other external service that we may develop in the future...
					$result = $this->{$this->Mailer}->sendMail($this);
					if (!$result) $this->setError($this->{$this->Mailer}->error);
					return $result;
                case 'mail':
                case 'qmail':
                    return $this->mailSend($this->MIMEHeader, $this->MIMEBody);
                default:
                    $sendMethod = $this->Mailer.'Send';
                    if (method_exists($this, $sendMethod)) {
                        return $this->$sendMethod($this->MIMEHeader, $this->MIMEBody);
                    }

                    return $this->mailSend($this->MIMEHeader, $this->MIMEBody);
            }
        } catch (acymailingphpmailerException $exc) {
            $this->setError($exc->getMessage());
            $this->edebug($exc->getMessage());
            if ($this->exceptions) {
                throw $exc;
            }
        }
        return false;
    }

    /**
     * Send mail using the $Sendmail program.
     * @param string $header The message headers
     * @param string $body The message body
     * @see PHPMailer::$Sendmail
     * @throws acymailingphpmailerException
     * @access protected
     * @return boolean
     */
    protected function sendmailSend($header, $body)
    {
        // CVE-2016-10033, CVE-2016-10045: Don't pass -f if characters will be escaped by escapeshellcmd when popen is called due to safe mode.
        if (!empty($this->Sender) || ini_get('safe_mode')) {
            if ($this->Mailer == 'qmail') {
                $sendmail = sprintf('%s -f%s', escapeshellcmd($this->Sendmail), escapeshellarg($this->Sender));
            } else {
                $sendmail = sprintf('%s -oi -f%s -t', escapeshellcmd($this->Sendmail), escapeshellarg($this->Sender));
            }
        } else {
            if ($this->Mailer == 'qmail') {
                $sendmail = sprintf('%s', escapeshellcmd($this->Sendmail));
            } else {
                $sendmail = sprintf('%s -oi -t', escapeshellcmd($this->Sendmail));
            }
        }
        if ($this->SingleTo) {
            foreach ($this->SingleToArray as $toAddr) {
                if (!@$mail = popen($sendmail, 'w')) {
                    throw new acymailingphpmailerException($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
                }
                fputs($mail, 'To: ' . $toAddr . "\n");
                fputs($mail, $header);
                fputs($mail, $body);
                $result = pclose($mail);
                $this->doCallback(
                    ($result == 0),
                    array($toAddr),
                    $this->cc,
                    $this->bcc,
                    $this->Subject,
                    $body,
                    $this->From
                );
                if ($result != 0) {
                    throw new acymailingphpmailerException($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
                }
            }
        } else {
            if (!@$mail = popen($sendmail, 'w')) {
                throw new acymailingphpmailerException($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
            }
            fputs($mail, $header);
            fputs($mail, $body);
            $result = pclose($mail);
            $this->doCallback(
                ($result == 0),
                $this->to,
                $this->cc,
                $this->bcc,
                $this->Subject,
                $body,
                $this->From
            );
            if ($result != 0) {
                throw new acymailingphpmailerException($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
            }
        }
        return true;
    }

    /**
     * Send mail using the PHP mail() function.
     * @param string $header The message headers
     * @param string $body The message body
     * @link http://www.php.net/manual/en/book.mail.php
     * @throws acymailingphpmailerException
     * @access protected
     * @return boolean
     */
    protected function mailSend($header, $body)
    {
        $toArr = array();
        foreach ($this->to as $toaddr) {
            $toArr[] = $this->addrFormat($toaddr);
        }
        $to = implode(', ', $toArr);

        $params = null;
        //This sets the SMTP envelope sender which gets turned into a return-path header by the receiver
       if (!empty($this->Sender) and $this->validateAddress($this->Sender)) {
             // CVE-2016-10033, CVE-2016-10045: Don't pass -f if characters will be escaped.
            if (escapeshellcmd($this->Sender) === $this->Sender && in_array(escapeshellarg($this->Sender), array("'$this->Sender'", "\"$this->Sender\""))) {
                $params = sprintf('-f%s', escapeshellarg($this->Sender));
            }
        }
       if (!empty($this->Sender) and !ini_get('safe_mode') and $this->validateAddress($this->Sender)) {
            $old_from = ini_get('sendmail_from');
            @ini_set('sendmail_from', $this->Sender);
        }
        $result = false;
        if ($this->SingleTo and count($toArr) > 1) {
            foreach ($toArr as $toAddr) {
                $result = $this->mailPassthru($toAddr, $this->Subject, $body, $header, $params);
                $this->doCallback($result, array($toAddr), $this->cc, $this->bcc, $this->Subject, $body, $this->From);
            }
        } else {
            $result = $this->mailPassthru($to, $this->Subject, $body, $header, $params);
            $this->doCallback($result, $this->to, $this->cc, $this->bcc, $this->Subject, $body, $this->From);
        }
        if (isset($old_from)) {
            @ini_set('sendmail_from', $old_from);
        }
        if (!$result) {
            throw new acymailingphpmailerException($this->lang('instantiate'), self::STOP_CRITICAL);
        }
        return true;
    }

    /**
     * Get an instance to use for SMTP operations.
     * Override this function to load your own SMTP implementation
     * @return SMTP
     */
    public function getSMTPInstance()
    {
        if (!is_object($this->smtp)) {
            $this->smtp = new acymailingSMTP;
        }
        return $this->smtp;
    }

    /**
     * Send mail via SMTP.
     * Returns false if there is a bad MAIL FROM, RCPT, or DATA input.
     * Uses the PHPMailerSMTP class by default.
     * @see PHPMailer::getSMTPInstance() to use a different class.
     * @param string $header The message headers
     * @param string $body The message body
     * @throws acymailingphpmailerException
     * @uses SMTP
     * @access protected
     * @return boolean
     */
    protected function smtpSend($header, $body)
    {
		require_once dirname(__FILE__).DS. 'class.smtp.php';
        $bad_rcpt = array();
        if (!$this->smtpConnect($this->SMTPOptions)) {
            throw new acymailingphpmailerException($this->lang('smtp_connect_failed'), self::STOP_CRITICAL);
        }
         if (!empty($this->Sender) and $this->validateAddress($this->Sender)) {
            $smtp_from = $this->Sender;
        } else {
            $smtp_from = $this->From;
        }
        if (!$this->smtp->mail($smtp_from)) {
            $this->setError($this->lang('from_failed') . $smtp_from . ' : ' . implode(',', $this->smtp->getError()));
            throw new acymailingphpmailerException($this->ErrorInfo, self::STOP_CRITICAL);
        }

        // Attempt to send to all recipients
        foreach (array($this->to, $this->cc, $this->bcc) as $togroup) {
            foreach ($togroup as $to) {
                if (!$this->smtp->recipient($to[0])) {
                    $error = $this->smtp->getError();
                    $bad_rcpt[] = array('to' => $to[0], 'error' => $error['detail']);
                    $isSent = false;
                } else {
                    $isSent = true;
                }
                $this->doCallback($isSent, array($to[0]), array(), array(), $this->Subject, $body, $this->From);
            }
        }

        // Only send the DATA command if we have viable recipients
        if ((count($this->all_recipients) > count($bad_rcpt)) and !$this->smtp->data($header . $body)) {
            throw new acymailingphpmailerException($this->lang('data_not_accepted'), self::STOP_CRITICAL);
        }
        if ($this->SMTPKeepAlive) {
            $this->smtp->reset();
        } else {
            $this->smtp->quit();
            $this->smtp->close();
        }
        //Create error message for any bad addresses
        if (count($bad_rcpt) > 0) {
			$badaddresses = '';
            foreach ($bad_rcpt as $bad) {
                $badaddresses .= $bad['to'] . ': ' . $bad['error'].', ';
            }
			$badaddresses = rtrim($badaddresses, ', ');
			$errorTmp = $this->smtp->getError();
			$errorLbl = empty($errorTmp) ? $this->Lang('recipients_failed') : implode(', ',$errorTmp);
			$this->setError($errorLbl . ' (' . $badaddresses . ') ');
			//Added by adrien to avoid the nested MAIL command error
			$this->smtp->Reset();
			throw new acymailingphpmailerException($this->ErrorInfo);
        }
        return true;
    }

    /**
     * Initiate a connection to an SMTP server.
     * Returns false if the operation failed.
     * @param array $options An array of options compatible with stream_context_create()
     * @uses SMTP
     * @access public
     * @throws acymailingphpmailerException
     * @return boolean
     */
    public function smtpConnect($options = null)
    {
        if (is_null($this->smtp)) {
            $this->smtp = $this->getSMTPInstance();
        }

        //If no options are provided, use whatever is set in the instance
        if (is_null($options)) {
            $options = $this->SMTPOptions;
        }

        // Already connected?
        if ($this->smtp->connected()) {
            return true;
        }

        $this->smtp->setTimeout($this->Timeout);
        $this->smtp->setDebugLevel($this->SMTPDebug);
        $this->smtp->setDebugOutput($this->Debugoutput);
        $this->smtp->setVerp($this->do_verp);
        $hosts = explode(';', $this->Host);
        $lastexception = null;

        foreach ($hosts as $hostentry) {
            $hostinfo = array();
            if (!preg_match('/^((ssl|tls):\/\/)*([a-zA-Z0-9\.-]*):?([0-9]*)$/', trim($hostentry), $hostinfo)) {
                // Not a valid host entry
                continue;
            }
            // $hostinfo[2]: optional ssl or tls prefix
            // $hostinfo[3]: the hostname
            // $hostinfo[4]: optional port number
            // The host string prefix can temporarily override the current setting for SMTPSecure
            // If it's not specified, the default value is used
            $prefix = '';
            $secure = $this->SMTPSecure;
            $tls = ($this->SMTPSecure == 'tls');
            if ('ssl' == $hostinfo[2] or ('' == $hostinfo[2] and 'ssl' == $this->SMTPSecure)) {
                $prefix = 'ssl://';
                $tls = false; // Can't have SSL and TLS at the same time
                $secure = 'ssl';
            } elseif ($hostinfo[2] == 'tls') {
                $tls = true;
                // tls doesn't use a prefix
                $secure = 'tls';
            }
            //Do we need the OpenSSL extension?
            $sslext = defined('OPENSSL_ALGO_SHA1');
            if ('tls' === $secure or 'ssl' === $secure) {
                //Check for an OpenSSL constant rather than using extension_loaded, which is sometimes disabled
                if (!$sslext) {
                    throw new acymailingphpmailerException($this->lang('extension_missing').'openssl', self::STOP_CRITICAL);
                }
            }
            $host = $hostinfo[3];
            $port = $this->Port;
            $tport = (integer)$hostinfo[4];
            if ($tport > 0 and $tport < 65536) {
                $port = $tport;
            }
            if ($this->smtp->connect($prefix . $host, $port, $this->Timeout, $options)) {
                try {
                    if ($this->Helo) {
                        $hello = $this->Helo;
                    } else {
                        $hello = $this->serverHostname();
                    }
                    $this->smtp->hello($hello);
                    //Automatically enable TLS encryption if:
                    // * it's not disabled
                    // * we have openssl extension
                    // * we are not already using SSL
                    // * the server offers STARTTLS
                    if ($this->SMTPAutoTLS and $sslext and $secure != 'ssl' and $this->smtp->getServerExt('STARTTLS')) {
                        $tls = true;
                    }
                    if ($tls) {
                        if (!$this->smtp->startTLS()) {
                            throw new acymailingphpmailerException($this->lang('connect_host'));
                        }
                        // We must resend EHLO after TLS negotiation
                        $this->smtp->hello($hello);
                    }
                    if ($this->SMTPAuth) {
                        if (!$this->smtp->authenticate(
                            $this->Username,
                            $this->Password,
                            $this->AuthType,
                            $this->Realm,
                            $this->Workstation
                        )
                        ) {
                       		$errorTmp = $this->smtp->getError();
							$errorLbl = empty($errorTmp) ? $this->Lang('authenticate') : implode(', ',$errorTmp);
							throw new acymailingphpmailerException($errorLbl);
                        }
                    }
                    return true;
                } catch (acymailingphpmailerException $exc) {
                    $lastexception = $exc;
                    $this->edebug($exc->getMessage());
                    // We must have connected, but then failed TLS or Auth, so close connection nicely
                    $this->smtp->quit();
                }
            }
        }
        // If we get here, all connection attempts have failed, so close connection hard
        $this->smtp->close();
        // As we've caught all exceptions, just report whatever the last one was
        if ($this->exceptions and !is_null($lastexception)) {
            throw $lastexception;
        }
        return false;
    }

    /**
     * Close the active SMTP session if one exists.
     * @return void
     */
    public function smtpClose()
    {
        if (is_a($this->smtp, 'SMTP')) {
            if ($this->smtp->connected()) {
                $this->smtp->quit();
                $this->smtp->close();
            }
        }
    }

    /**
     * Set the language for error messages.
     * Returns false if it cannot load the language file.
     * The default language is English.
     * @param string $langcode ISO 639-1 2-character language code (e.g. French is "fr")
     * @param string $lang_path Path to the language file directory, with trailing separator (slash)
     * @return boolean
     * @access public
     */
    public function setLanguage($langcode = 'en', $lang_path = '')
    {
		// Backwards compatibility for renamed language codes
        $renamed_langcodes = array(
            'br' => 'pt_br',
            'cz' => 'cs',
            'dk' => 'da',
            'no' => 'nb',
            'se' => 'sv',
        );

        if (isset($renamed_langcodes[$langcode])) {
            $langcode = $renamed_langcodes[$langcode];
        }

        // Define full set of translatable strings in English
        $PHPMAILER_LANG = array(
            'authenticate' => 'SMTP Error: Could not authenticate.',
            'connect_host' => 'SMTP Error: Could not connect to SMTP host.',
            'data_not_accepted' => 'SMTP Error: data not accepted.',
            'empty_message' => 'Message body empty',
            'encoding' => 'Unknown encoding: ',
            'execute' => 'Could not execute: ',
            'file_access' => 'Could not access file: ',
            'file_open' => 'File Error: Could not open file: ',
            'from_failed' => 'The following From address failed: ',
            'instantiate' => 'Could not instantiate mail function.',
            'invalid_address' => 'Invalid address: ',
            'mailer_not_supported' => ' mailer is not supported.',
            'provide_address' => 'You must provide at least one recipient email address.',
            'recipients_failed' => 'SMTP Error: The following recipients failed: ',
            'signing' => 'Signing Error: ',
            'smtp_connect_failed' => 'SMTP connect() failed.',
            'smtp_error' => 'SMTP server error: ',
            'variable_set' => 'Cannot set or reset variable: ',
            'extension_missing' => 'Extension missing: '
        );
        if (empty($lang_path)) {
            // Calculate an absolute path so it can work if CWD is not here
            $lang_path = dirname(__FILE__). DIRECTORY_SEPARATOR . 'language'. DIRECTORY_SEPARATOR;
        }
		//Validate $langcode
        if (!preg_match('/^[a-z]{2}(?:_[a-zA-Z]{2})?$/', $langcode)) {
            $langcode = 'en';
        }
        $foundlang = true;
        $lang_file = $lang_path . 'phpmailer.lang-' . $langcode . '.php';
        // There is no English translation file
        if ($langcode != 'en') {
            // Make sure language file path is readable
            if (!is_readable($lang_file)) {
                $foundlang = false;
            } else {
                // Overwrite language-specific strings.
                // This way we'll never have missing translation keys.
                $foundlang = include $lang_file;
            }
        }
        $this->lang = $PHPMAILER_LANG;
        return (boolean)$foundlang; // Returns false if language not found
    }

    /**
     * Get the array of strings for the current language.
     * @return array
     */
    public function getTranslations()
    {
        return $this->lang;
    }

    /**
     * Create recipient headers.
     * @access public
     * @param string $type
     * @param array $addr An array of recipient,
     * where each recipient is a 2-element indexed array with element 0 containing an address
     * and element 1 containing a name, like:
     * array(array('joe@example.com', 'Joe User'), array('zoe@example.com', 'Zoe User'))
     * @return string
     */
    public function addrAppend($type, $addr)
    {
        $addresses = array();
        foreach ($addr as $address) {
            $addresses[] = $this->addrFormat($address);
        }
        return $type . ': ' . implode(', ', $addresses) . $this->LE;
    }

    /**
     * Format an address for use in a message header.
     * @access public
     * @param array $addr A 2-element indexed array, element 0 containing an address, element 1 containing a name
     *      like array('joe@example.com', 'Joe User')
     * @return string
     */
    public function addrFormat($addr)
    {
        if (empty($addr[1])) { // No name provided
            return $this->secureHeader($addr[0]);
        } else {
            return $this->encodeHeader($this->secureHeader($addr[1]), 'phrase') . ' <' . $this->secureHeader(
                $addr[0]
            ) . '>';
        }
    }

    /**
     * Word-wrap message.
     * For use with mailers that do not automatically perform wrapping
     * and for quoted-printable encoded messages.
     * Original written by philippe.
     * @param string $message The message to wrap
     * @param integer $length The line length to wrap to
     * @param boolean $qp_mode Whether to run in Quoted-Printable mode
     * @access public
     * @return string
     */
    public function wrapText($message, $length, $qp_mode = false)
    {
        if ($qp_mode) {
            $soft_break = sprintf(' =%s', $this->LE);
        } else {
            $soft_break = $this->LE;
        }
        // If utf-8 encoding is used, we will need to make sure we don't
        // split multibyte characters when we wrap
        $is_utf8 = (strtolower($this->CharSet) == 'utf-8');
        $lelen = strlen($this->LE);
        $crlflen = strlen(self::CRLF);

        $message = $this->fixEOL($message);
        //Remove a trailing line break
        if (substr($message, -$lelen) == $this->LE) {
            $message = substr($message, 0, -$lelen);
        }

        //Split message into lines
        $lines = explode($this->LE, $message);
        //Message will be rebuilt in here
        $message = '';
        foreach ($lines as $line) {
            $words = explode(' ', $line);
            $buf = '';
            $firstword = true;
            foreach ($words as $word) {
                if ($qp_mode and (strlen($word) > $length)) {
                    $space_left = $length - strlen($buf) - $crlflen;
                    if (!$firstword) {
                        if ($space_left > 20) {
                            $len = $space_left;
                            if ($is_utf8) {
                                $len = $this->utf8CharBoundary($word, $len);
                            } elseif (substr($word, $len - 1, 1) == '=') {
                                $len--;
                            } elseif (substr($word, $len - 2, 1) == '=') {
                                $len -= 2;
                            }
                            $part = substr($word, 0, $len);
                            $word = substr($word, $len);
                            $buf .= ' ' . $part;
                            $message .= $buf . sprintf('=%s', self::CRLF);
                        } else {
                            $message .= $buf . $soft_break;
                        }
                        $buf = '';
                    }
                    while (strlen($word) > 0) {
                        if ($length <= 0) {
                            break;
                        }
                        $len = $length;
                        if ($is_utf8) {
                            $len = $this->utf8CharBoundary($word, $len);
                        } elseif (substr($word, $len - 1, 1) == '=') {
                            $len--;
                        } elseif (substr($word, $len - 2, 1) == '=') {
                            $len -= 2;
                        }
                        $part = substr($word, 0, $len);
                        $word = substr($word, $len);

                        if (strlen($word) > 0) {
                            $message .= $part . sprintf('=%s', self::CRLF);
                        } else {
                            $buf = $part;
                        }
                    }
                } else {
                    $buf_o = $buf;
                    if (!$firstword) {
                        $buf .= ' ';
                    }
                    $buf .= $word;

                    if (strlen($buf) > $length and $buf_o != '') {
                        $message .= $buf_o . $soft_break;
                        $buf = $word;
                    }
                }
                $firstword = false;
            }
            $message .= $buf . self::CRLF;
        }

        return $message;
    }

    /**
     * Find the last character boundary prior to $maxLength in a utf-8
     * quoted-printable encoded string.
     * Original written by Colin Brown.
     * @access public
     * @param string $encodedText utf-8 QP text
     * @param integer $maxLength Find the last character boundary prior to this length
     * @return integer
     */
    public function utf8CharBoundary($encodedText, $maxLength)
    {
        $foundSplitPos = false;
        $lookBack = 3;
        while (!$foundSplitPos) {
            $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack);
            $encodedCharPos = strpos($lastChunk, '=');
            if (false !== $encodedCharPos) {
                // Found start of encoded character byte within $lookBack block.
                // Check the encoded byte value (the 2 chars after the '=')
                $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2);
                $dec = hexdec($hex);
                if ($dec < 128) {
                    // Single byte character.
                    // If the encoded char was found at pos 0, it will fit
                    // otherwise reduce maxLength to start of the encoded char
                    if ($encodedCharPos > 0) {
                        $maxLength = $maxLength - ($lookBack - $encodedCharPos);
                    }
                    $foundSplitPos = true;
                } elseif ($dec >= 192) {
                    // First byte of a multi byte character
                    // Reduce maxLength to split at start of character
                    $maxLength = $maxLength - ($lookBack - $encodedCharPos);
                    $foundSplitPos = true;
                } elseif ($dec < 192) {
                    // Middle byte of a multi byte character, look further back
                    $lookBack += 3;
                }
            } else {
                // No encoded character found
                $foundSplitPos = true;
            }
        }
        return $maxLength;
    }

    /**
     * Apply word wrapping to the message body.
     * Wraps the message body to the number of chars set in the WordWrap property.
     * You should only do this to plain-text bodies as wrapping HTML tags may break them.
     * This is called automatically by createBody(), so you don't need to call it yourself.
     * @access public
     * @return void
     */
    public function setWordWrap()
    {
        if ($this->WordWrap < 1) {
            return;
        }

        switch ($this->message_type) {
            case 'alt':
            case 'alt_inline':
            case 'alt_attach':
            case 'alt_inline_attach':
                $this->AltBody = $this->wrapText($this->AltBody, $this->WordWrap);
                break;
            default:
                $this->Body = $this->wrapText($this->Body, $this->WordWrap);
                break;
        }
    }

    /**
     * Assemble message headers.
     * @access public
     * @return string The assembled headers
     */
    public function createHeader()
    {
        $result = '';

        if ($this->MessageDate == '') {
            $this->MessageDate = self::rfcDate();
        }
        $result .= $this->headerLine('Date', $this->MessageDate);

        // To be created automatically by mail()
        if ($this->SingleTo) {
            if ($this->Mailer != 'mail') {
                foreach ($this->to as $toaddr) {
                    $this->SingleToArray[] = $this->addrFormat($toaddr);
                }
            }
        } else {
            if (count($this->to) > 0) {
                if ($this->Mailer != 'mail') {
                    $result .= $this->addrAppend('To', $this->to);
                }
            } elseif (count($this->cc) == 0) {
                $result .= $this->headerLine('To', 'undisclosed-recipients:;');
            }
        }

        $result .= $this->addrAppend('From', array(array(trim($this->From), $this->FromName)));

        // sendmail and mail() extract Cc from the header before sending
        if (count($this->cc) > 0) {
            $result .= $this->addrAppend('Cc', $this->cc);
        }

        // sendmail and mail() extract Bcc from the header before sending
        if ((
                $this->Mailer == 'sendmail' or $this->Mailer == 'qmail' or $this->Mailer == 'mail'
            )
            and count($this->bcc) > 0
        ) {
            $result .= $this->addrAppend('Bcc', $this->bcc);
        }

        if (count($this->ReplyTo) > 0) {
            $result .= $this->addrAppend('Reply-To', $this->ReplyTo);
        }

        // mail() sets the subject itself
        if ($this->Mailer != 'mail') {
            $result .= $this->headerLine('Subject', $this->encodeHeader($this->secureHeader($this->Subject)));
        }

		// Only allow a custom message ID if it conforms to RFC 5322 section 3.6.4
        // https://tools.ietf.org/html/rfc5322#section-3.6.4
        if ('' != $this->MessageID and preg_match('/^<.*@.*>$/', $this->MessageID)) {
            $this->lastMessageID = $this->MessageID;
        } else {
            $this->lastMessageID = sprintf('<%s@%s>', $this->uniqueid, $this->serverHostname());
        }
        $result .= $this->headerLine('Message-ID', $this->lastMessageID);
        if (!is_null($this->Priority)) {
            $result .= $this->headerLine('X-Priority', $this->Priority);
        }
        if ($this->XMailer == '') {
            $result .= $this->headerLine(
                'X-Mailer',
                'PHPMailer ' . $this->Version . ' (https://github.com/PHPMailer/PHPMailer)'
            );
        } else {
            $myXmailer = trim($this->XMailer);
            if ($myXmailer) {
                $result .= $this->headerLine('X-Mailer', $myXmailer);
            }
        }

        if ($this->ConfirmReadingTo != '') {
            $result .= $this->headerLine('Disposition-Notification-To', '<' . $this->ConfirmReadingTo . '>');
        }

        // Add custom headers
        foreach ($this->CustomHeader as $header) {
            $result .= $this->headerLine(
                trim($header[0]),
                $this->encodeHeader(trim($header[1]))
            );
        }
        if (!$this->sign_key_file) {
            $result .= $this->headerLine('MIME-Version', '1.0');
            $result .= $this->getMailMIME();
        }

        return $result;
    }

    /**
     * Get the message MIME type headers.
     * @access public
     * @return string
     */
    public function getMailMIME()
    {
        $result = '';
        $ismultipart = true;
        switch ($this->message_type) {
            case 'inline':
                $result .= $this->headerLine('Content-Type', 'multipart/related;');
                $result .= $this->textLine("\tboundary=\"" . $this->boundary[1] . '"');
                break;
            case 'attach':
            case 'inline_attach':
            case 'alt_attach':
            case 'alt_inline_attach':
                $result .= $this->headerLine('Content-Type', 'multipart/mixed;');
                $result .= $this->textLine("\tboundary=\"" . $this->boundary[1] . '"');
                break;
            case 'alt':
            case 'alt_inline':
                $result .= $this->headerLine('Content-Type', 'multipart/alternative;');
                $result .= $this->textLine("\tboundary=\"" . $this->boundary[1] . '"');
                break;
            default:
                // Catches case 'plain': and case '':
                $result .= $this->textLine('Content-Type: ' . $this->ContentType . '; charset=' . $this->CharSet);
                $ismultipart = false;
                break;
        }
        // RFC1341 part 5 says 7bit is assumed if not specified
        if ($this->Encoding != '7bit') {
            // RFC 2045 section 6.4 says multipart MIME parts may only use 7bit, 8bit or binary CTE
            if ($ismultipart) {
                if ($this->Encoding == '8bit') {
                    $result .= $this->headerLine('Content-Transfer-Encoding', '8bit');
                }
                // The only remaining alternatives are quoted-printable and base64, which are both 7bit compatible
            } else {
                $result .= $this->headerLine('Content-Transfer-Encoding', $this->Encoding);
            }
        }

        if ($this->Mailer != 'mail') {
            $result .= $this->LE;
        }

        return $result;
    }

    /**
     * Returns the whole MIME message.
     * Includes complete headers and body.
     * Only valid post preSend().
     * @see PHPMailer::preSend()
     * @access public
     * @return string
     */
    public function getSentMIMEMessage()
    {
        return rtrim($this->MIMEHeader . $this->mailHeader, "\n\r") . self::CRLF . self::CRLF . $this->MIMEBody;
    }
	
	/**
     * Create unique ID
     * @return string
     */
    protected function generateId() {
        return md5(uniqid(time()));
    }

    /**
     * Assemble the message body.
     * Returns an empty string on failure.
     * @access public
     * @throws acymailingphpmailerException
     * @return string The assembled message body
     */
    public function createBody()
    {
        $body = '';
        //Create unique IDs and preset boundaries
        $this->uniqueid = $this->generateId();
        $this->boundary[1] = 'b1_' . $this->uniqueid;
        $this->boundary[2] = 'b2_' . $this->uniqueid;
        $this->boundary[3] = 'b3_' . $this->uniqueid;

        if ($this->sign_key_file) {
            $body .= $this->getMailMIME() . $this->LE;
        }

        $this->setWordWrap();

        $bodyEncoding = $this->Encoding;
        $bodyCharSet = $this->CharSet;
        //Can we do a 7-bit downgrade?
        if ($bodyEncoding == '8bit' and !$this->has8bitChars($this->Body)) {
            $bodyEncoding = '7bit';
            //All ISO 8859, Windows codepage and UTF-8 charsets are ascii compatible up to 7-bit
            $bodyCharSet = 'us-ascii';
        }
        //If lines are too long, and we're not already using an encoding that will shorten them,
        //change to quoted-printable transfer encoding for the body part only
        if ('base64' != $this->Encoding and self::hasLineLongerThanMax($this->Body)) {
            $bodyEncoding = 'quoted-printable';
        }

        $altBodyEncoding = $this->Encoding;
        $altBodyCharSet = $this->CharSet;
        //Can we do a 7-bit downgrade?
        if ($altBodyEncoding == '8bit' and !$this->has8bitChars($this->AltBody)) {
            $altBodyEncoding = '7bit';
            //All ISO 8859, Windows codepage and UTF-8 charsets are ascii compatible up to 7-bit
            $altBodyCharSet = 'us-ascii';
        }
        //If lines are too long, and we're not already using an encoding that will shorten them,
        //change to quoted-printable transfer encoding for the alt body part only
        if ('base64' != $altBodyEncoding and self::hasLineLongerThanMax($this->AltBody)) {
            $altBodyEncoding = 'quoted-printable';
        }
        //Use this as a preamble in all multipart message types
        $mimepre = "This is a multi-part message in MIME format." . $this->LE . $this->LE;
        switch ($this->message_type) {
            case 'inline':
                $body .= $mimepre;
                $body .= $this->getBoundary($this->boundary[1], $bodyCharSet, '', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->attachAll('inline', $this->boundary[1]);
                break;
            case 'attach':
                $body .= $mimepre;
                $body .= $this->getBoundary($this->boundary[1], $bodyCharSet, '', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->attachAll('attachment', $this->boundary[1]);
                break;
            case 'inline_attach':
                $body .= $mimepre;
                $body .= $this->textLine('--' . $this->boundary[1]);
                $body .= $this->headerLine('Content-Type', 'multipart/related;');
                $body .= $this->textLine("\tboundary=\"" . $this->boundary[2] . '"');
                $body .= $this->LE;
                $body .= $this->getBoundary($this->boundary[2], $bodyCharSet, '', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->attachAll('inline', $this->boundary[2]);
                $body .= $this->LE;
                $body .= $this->attachAll('attachment', $this->boundary[1]);
                break;
            case 'alt':
                $body .= $mimepre;
                $body .= $this->getBoundary($this->boundary[1], $altBodyCharSet, 'text/plain', $altBodyEncoding);
                $body .= $this->encodeString($this->AltBody, $altBodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->getBoundary($this->boundary[1], $bodyCharSet, 'text/html', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                if (!empty($this->Ical)) {
                    $body .= $this->getBoundary($this->boundary[1], '', 'text/calendar; method=REQUEST', '');
                    $body .= $this->encodeString($this->Ical, $this->Encoding);
                    $body .= $this->LE . $this->LE;
                }
                $body .= $this->endBoundary($this->boundary[1]);
                break;
            case 'alt_inline':
                $body .= $mimepre;
                $body .= $this->getBoundary($this->boundary[1], $altBodyCharSet, 'text/plain', $altBodyEncoding);
                $body .= $this->encodeString($this->AltBody, $altBodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->textLine('--' . $this->boundary[1]);
                $body .= $this->headerLine('Content-Type', 'multipart/related;');
                $body .= $this->textLine("\tboundary=\"" . $this->boundary[2] . '"');
                $body .= $this->LE;
                $body .= $this->getBoundary($this->boundary[2], $bodyCharSet, 'text/html', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->attachAll('inline', $this->boundary[2]);
                $body .= $this->LE;
                $body .= $this->endBoundary($this->boundary[1]);
                break;
            case 'alt_attach':
                $body .= $mimepre;
                $body .= $this->textLine('--' . $this->boundary[1]);
                $body .= $this->headerLine('Content-Type', 'multipart/alternative;');
                $body .= $this->textLine("\tboundary=\"" . $this->boundary[2] . '"');
                $body .= $this->LE;
                $body .= $this->getBoundary($this->boundary[2], $altBodyCharSet, 'text/plain', $altBodyEncoding);
                $body .= $this->encodeString($this->AltBody, $altBodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->getBoundary($this->boundary[2], $bodyCharSet, 'text/html', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->endBoundary($this->boundary[2]);
                $body .= $this->LE;
                $body .= $this->attachAll('attachment', $this->boundary[1]);
                break;
            case 'alt_inline_attach':
                $body .= $mimepre;
                $body .= $this->textLine('--' . $this->boundary[1]);
                $body .= $this->headerLine('Content-Type', 'multipart/alternative;');
                $body .= $this->textLine("\tboundary=\"" . $this->boundary[2] . '"');
                $body .= $this->LE;
                $body .= $this->getBoundary($this->boundary[2], $altBodyCharSet, 'text/plain', $altBodyEncoding);
                $body .= $this->encodeString($this->AltBody, $altBodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->textLine('--' . $this->boundary[2]);
                $body .= $this->headerLine('Content-Type', 'multipart/related;');
                $body .= $this->textLine("\tboundary=\"" . $this->boundary[3] . '"');
                $body .= $this->LE;
                $body .= $this->getBoundary($this->boundary[3], $bodyCharSet, 'text/html', $bodyEncoding);
                $body .= $this->encodeString($this->Body, $bodyEncoding);
                $body .= $this->LE . $this->LE;
                $body .= $this->attachAll('inline', $this->boundary[3]);
                $body .= $this->LE;
                $body .= $this->endBoundary($this->boundary[2]);
                $body .= $this->LE;
                $body .= $this->attachAll('attachment', $this->boundary[1]);
                break;
            default:
                // Catch case 'plain' and case '', applies to simple `text/plain` and `text/html` body content types
                //Reset the `Encoding` property in case we changed it for line length reasons
                $this->Encoding = $bodyEncoding;
                $body .= $this->encodeString($this->Body, $this->Encoding);
                break;
        }

        if ($this->isError()) {
            $body = '';
        } elseif ($this->sign_key_file) {
            try {
                if (!defined('PKCS7_TEXT')) {
                    throw new acymailingphpmailerException($this->lang('extension_missing') . 'openssl');
                }
                // @TODO would be nice to use php://temp streams here, but need to wrap for PHP < 5.1
                $file = tempnam(sys_get_temp_dir(), 'mail');
                if (false === file_put_contents($file, $body)) {
                    throw new acymailingphpmailerException($this->lang('signing') . ' Could not write temp file');
                }
                $signed = tempnam(sys_get_temp_dir(), 'signed');
                //Workaround for PHP bug https://bugs.php.net/bug.php?id=69197
                if (empty($this->sign_extracerts_file)) {
                    $sign = @openssl_pkcs7_sign(
                        $file,
                        $signed,
                        'file://' . realpath($this->sign_cert_file),
                        array('file://' . realpath($this->sign_key_file), $this->sign_key_pass),
                        null
                    );
                } else {
                    $sign = @openssl_pkcs7_sign(
                        $file,
                        $signed,
                        'file://' . realpath($this->sign_cert_file),
                        array('file://' . realpath($this->sign_key_file), $this->sign_key_pass),
                        null,
                        PKCS7_DETACHED,
                        $this->sign_extracerts_file
                    );
                }
                if ($sign) {
                    @unlink($file);
                    $body = file_get_contents($signed);
                    @unlink($signed);
                    //The message returned by openssl contains both headers and body, so need to split them up
                    $parts = explode("\n\n", $body, 2);
                    $this->MIMEHeader .= $parts[0] . $this->LE . $this->LE;
                    $body = $parts[1];
                } else {
                    @unlink($file);
                    @unlink($signed);
                    throw new acymailingphpmailerException($this->lang('signing') . openssl_error_string());
                }
            } catch (acymailingphpmailerException $exc) {
                $body = '';
                if ($this->exceptions) {
                    throw $exc;
                }
            }
        }
        return $body;
    }

    /**
     * Return the start of a message boundary.
     * @access protected
     * @param string $boundary
     * @param string $charSet
     * @param string $contentType
     * @param string $encoding
     * @return string
     */
    protected function getBoundary($boundary, $charSet, $contentType, $encoding)
    {
        $result = '';
        if ($charSet == '') {
            $charSet = $this->CharSet;
        }
        if ($contentType == '') {
            $contentType = $this->ContentType;
        }
        if ($encoding == '') {
            $encoding = $this->Encoding;
        }
        $result .= $this->textLine('--' . $boundary);
        $result .= sprintf('Content-Type: %s; charset=%s', $contentType, $charSet);
        $result .= $this->LE;
        // RFC1341 part 5 says 7bit is assumed if not specified
        if ($encoding != '7bit') {
            $result .= $this->headerLine('Content-Transfer-Encoding', $encoding);
        }
        $result .= $this->LE;

        return $result;
    }

    /**
     * Return the end of a message boundary.
     * @access protected
     * @param string $boundary
     * @return string
     */
    protected function endBoundary($boundary)
    {
        return $this->LE . '--' . $boundary . '--' . $this->LE;
    }

    /**
     * Set the message type.
     * PHPMailer only supports some preset message types, not arbitrary MIME structures.
     * @access protected
     * @return void
     */
    protected function setMessageType()
    {
        $type = array();
        if ($this->alternativeExists()) {
            $type[] = 'alt';
        }
        if ($this->inlineImageExists()) {
            $type[] = 'inline';
        }
        if ($this->attachmentExists()) {
            $type[] = 'attach';
        }
        $this->message_type = implode('_', $type);
        if ($this->message_type == '') {
            //The 'plain' message_type refers to the message having a single body element, not that it is plain-text
            $this->message_type = 'plain';
        }
    }

    /**
     * Format a header line.
     * @access public
     * @param string $name
     * @param string $value
     * @return string
     */
    public function headerLine($name, $value)
    {
        return $name . ': ' . $value . $this->LE;
    }

    /**
     * Return a formatted mail line.
     * @access public
     * @param string $value
     * @return string
     */
    public function textLine($value)
    {
        return $value . $this->LE;
    }

    /**
     * Add an attachment from a path on the filesystem.
     * Returns false if the file could not be found or read.
     * @param string $path Path to the attachment.
     * @param string $name Overrides the attachment name.
     * @param string $encoding File encoding (see $Encoding).
     * @param string $type File extension (MIME) type.
     * @param string $disposition Disposition to use
     * @throws acymailingphpmailerException
     * @return boolean
     */
    public function addAttachment($path, $name = '', $encoding = 'base64', $type = '', $disposition = 'attachment')
    {
        try {
            if (!@is_file($path)) {
                throw new acymailingphpmailerException($this->lang('file_access') . $path, self::STOP_CONTINUE);
            }

            // If a MIME type is not specified, try to work it out from the file name
            if ($type == '') {
                $type = self::filenameToType($path);
            }

            $filename = basename($path);
            if ($name == '') {
                $name = $filename;
            }

            $this->attachment[] = array(
                0 => $path,
                1 => $filename,
                2 => $name,
                3 => $encoding,
                4 => $type,
                5 => false, // isStringAttachment
                6 => $disposition,
                7 => 0
            );

        } catch (acymailingphpmailerException $exc) {
            $this->setError($exc->getMessage());
            $this->edebug($exc->getMessage());
            if ($this->exceptions) {
                throw $exc;
            }
            return false;
        }
        return true;
    }

    /**
     * Return the array of attachments.
     * @return array
     */
    public function getAttachments()
    {
        return $this->attachment;
    }

    /**
     * Attach all file, string, and binary attachments to the message.
     * Returns an empty string on failure.
     * @access protected
     * @param string $disposition_type
     * @param string $boundary
     * @return string
     */
    protected function attachAll($disposition_type, $boundary)
    {
        // Return text of body
        $mime = array();
        $cidUniq = array();
        $incl = array();

        // Add all attachments
        foreach ($this->attachment as $attachment) {
            // Check if it is a valid disposition_filter
            if ($attachment[6] == $disposition_type) {
                // Check for string attachment
                $string = '';
                $path = '';
                $bString = $attachment[5];
                if ($bString) {
                    $string = $attachment[0];
                } else {
                    $path = $attachment[0];
                }

                $inclhash = md5(serialize($attachment));
                if (in_array($inclhash, $incl)) {
                    continue;
                }
                $incl[] = $inclhash;
                $name = $attachment[2];
                $encoding = $attachment[3];
                $type = $attachment[4];
                $disposition = $attachment[6];
                $cid = $attachment[7];
                if ($disposition == 'inline' && array_key_exists($cid, $cidUniq)) {
                    continue;
                }
                $cidUniq[$cid] = true;

                $mime[] = sprintf('--%s%s', $boundary, $this->LE);
                //Only include a filename property if we have one
                if (!empty($name)) {
                    $mime[] = sprintf(
                        'Content-Type: %s; name="%s"%s',
                        $type,
                        $this->encodeHeader($this->secureHeader($name)),
                        $this->LE
                    );
                } else {
                    $mime[] = sprintf(
                        'Content-Type: %s%s',
                        $type,
                        $this->LE
                    );
                }
                // RFC1341 part 5 says 7bit is assumed if not specified
                if ($encoding != '7bit') {
                    $mime[] = sprintf('Content-Transfer-Encoding: %s%s', $encoding, $this->LE);
                }

                if ($disposition == 'inline') {
                    $mime[] = sprintf('Content-ID: <%s>%s', $cid, $this->LE);
                }

                // If a filename contains any of these chars, it should be quoted,
                // but not otherwise: RFC2183 & RFC2045 5.1
                // Fixes a warning in IETF's msglint MIME checker
                // Allow for bypassing the Content-Disposition header totally
                if (!(empty($disposition))) {
                    $encoded_name = $this->encodeHeader($this->secureHeader($name));
                    if (preg_match('/[ \(\)<>@,;:\\"\/\[\]\?=]/', $encoded_name)) {
                        $mime[] = sprintf(
                            'Content-Disposition: %s; filename="%s"%s',
                            $disposition,
                            $encoded_name,
                            $this->LE . $this->LE
                        );
                    } else {
                        if (!empty($encoded_name)) {
                            $mime[] = sprintf(
                                'Content-Disposition: %s; filename=%s%s',
                                $disposition,
                                $encoded_name,
                                $this->LE . $this->LE
                            );
                        } else {
                            $mime[] = sprintf(
                                'Content-Disposition: %s%s',
                                $disposition,
                                $this->LE . $this->LE
                            );
                        }
                    }
                } else {
                    $mime[] = $this->LE;
                }

                // Encode as string attachment
                if ($bString) {
                    $mime[] = $this->encodeString($string, $encoding);
                    if ($this->isError()) {
                        return '';
                    }
                    $mime[] = $this->LE . $this->LE;
                } else {
                    $mime[] = $this->encodeFile($path, $encoding);
                    if ($this->isError()) {
                        return '';
                    }
                    $mime[] = $this->LE . $this->LE;
                }
            }
        }

        $mime[] = sprintf('--%s--%s', $boundary, $this->LE);

        return implode('', $mime);
    }

    /**
     * Encode a file attachment in requested format.
     * Returns an empty string on failure.
     * @param string $path The full path to the file
     * @param string $encoding The encoding to use; one of 'base64', '7bit', '8bit', 'binary', 'quoted-printable'
     * @throws acymailingphpmailerException
     * @access protected
     * @return string
     */
    protected function encodeFile($path, $encoding = 'base64')
    {
        try {
            if (!is_readable($path)) {
                throw new acymailingphpmailerException($this->lang('file_open') . $path, self::STOP_CONTINUE);
            }
            $magic_quotes = get_magic_quotes_runtime();
            if (!empty($magic_quotes)) {
                if (version_compare(PHP_VERSION, '5.3.0', '<')) {
                    set_magic_quotes_runtime(false);
                } else {
                    //Doesn't exist in PHP 5.4, but we don't need to check because
                    //get_magic_quotes_runtime always returns false in 5.4+
                    //so it will never get here
                    ini_set('magic_quotes_runtime', false);
                }
            }
            $file_buffer = file_get_contents($path);
            $file_buffer = $this->encodeString($file_buffer, $encoding);
            if (!empty($magic_quotes)) {
                if (version_compare(PHP_VERSION, '5.3.0', '<')) {
                    set_magic_quotes_runtime($magic_quotes);
                } else {
                    ini_set('magic_quotes_runtime', $magic_quotes);
                }
            }
            return $file_buffer;
        } catch (Exception $exc) {
            $this->setError($exc->getMessage());
            return '';
        }
    }

    /**
     * Encode a string in requested format.
     * Returns an empty string on failure.
     * @param string $str The text to encode
     * @param string $encoding The encoding to use; one of 'base64', '7bit', '8bit', 'binary', 'quoted-printable'
     * @access public
     * @return string
     */
    public function encodeString($str, $encoding = 'base64')
    {
        $encoded = '';
        switch (strtolower($encoding)) {
            case 'base64':
                $encoded = chunk_split(base64_encode($str), 76, $this->LE);
                break;
            case '7bit':
            case '8bit':
                $encoded = $this->fixEOL($str);
                // Make sure it ends with a line break
                if (substr($encoded, -(strlen($this->LE))) != $this->LE) {
                    $encoded .= $this->LE;
                }
                break;
            case 'binary':
                $encoded = $str;
                break;
            case 'quoted-printable':
                $encoded = $this->encodeQP($str);
                break;
            default:
                $this->setError($this->lang('encoding') . $encoding);
                break;
        }
        return $encoded;
    }

    /**
     * Encode a header string optimally.
     * Picks shortest of Q, B, quoted-printable or none.
     * @access public
     * @param string $str
     * @param string $position
     * @return string
     */
    public function encodeHeader($str, $position = 'text')
    {
        $matchcount = 0;
        switch (strtolower($position)) {
            case 'phrase':
                if (!preg_match('/[\200-\377]/', $str)) {
                    // Can't use addslashes as we don't know the value of magic_quotes_sybase
                    $encoded = addcslashes($str, "\0..\37\177\\\"");
                    if (($str == $encoded) && !preg_match('/[^A-Za-z0-9!#$%&\'*+\/=?^_`{|}~ -]/', $str)) {
                        return ($encoded);
                    } else {
                        return ("\"$encoded\"");
                    }
                }
                $matchcount = preg_match_all('/[^\040\041\043-\133\135-\176]/', $str, $matches);
                break;
            /** @noinspection PhpMissingBreakStatementInspection */
            case 'comment':
                $matchcount = preg_match_all('/[()"]/', $str, $matches);
                // Intentional fall-through
            case 'text':
            default:
                $matchcount += preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches);
                break;
        }

        //There are no chars that need encoding
        if ($matchcount == 0) {
            return ($str);
        }

        $maxlen = 75 - 7 - strlen($this->CharSet);
        // Try to select the encoding which should produce the shortest output
        if ($matchcount > strlen($str) / 3) {
            // More than a third of the content will need encoding, so B encoding will be most efficient
            $encoding = 'B';
            if (function_exists('mb_strlen') && $this->hasMultiBytes($str)) {
                // Use a custom function which correctly encodes and wraps long
                // multibyte strings without breaking lines within a character
                $encoded = $this->base64EncodeWrapMB($str, "\n");
            } else {
                $encoded = base64_encode($str);
                $maxlen -= $maxlen % 4;
                $encoded = trim(chunk_split($encoded, $maxlen, "\n"));
            }
        } else {
            $encoding = 'Q';
            $encoded = $this->encodeQ($str, $position);
            $encoded = $this->wrapText($encoded, $maxlen, true);
            $encoded = str_replace('=' . self::CRLF, "\n", trim($encoded));
        }

        $encoded = preg_replace('/^(.*)$/m', ' =?' . $this->CharSet . "?$encoding?\\1?=", $encoded);
        $encoded = trim(str_replace("\n", $this->LE, $encoded));

        return $encoded;
    }

    /**
     * Check if a string contains multi-byte characters.
     * @access public
     * @param string $str multi-byte text to wrap encode
     * @return boolean
     */
    public function hasMultiBytes($str)
    {
        if (function_exists('mb_strlen')) {
            return (strlen($str) > mb_strlen($str, $this->CharSet));
        } else { // Assume no multibytes (we can't handle without mbstring functions anyway)
            return false;
        }
    }

    /**
     * Does a string contain any 8-bit chars (in any charset)?
     * @param string $text
     * @return boolean
     */
    public function has8bitChars($text)
    {
        return (boolean)preg_match('/[\x80-\xFF]/', $text);
    }

    /**
     * Encode and wrap long multibyte strings for mail headers
     * without breaking lines within a character.
     * Adapted from a function by paravoid
     * @link http://www.php.net/manual/en/function.mb-encode-mimeheader.php#60283
     * @access public
     * @param string $str multi-byte text to wrap encode
     * @param string $linebreak string to use as linefeed/end-of-line
     * @return string
     */
    public function base64EncodeWrapMB($str, $linebreak = null)
    {
        $start = '=?' . $this->CharSet . '?B?';
        $end = '?=';
        $encoded = '';
        if ($linebreak === null) {
            $linebreak = $this->LE;
        }

        $mb_length = mb_strlen($str, $this->CharSet);
        // Each line must have length <= 75, including $start and $end
        $length = 75 - strlen($start) - strlen($end);
        // Average multi-byte ratio
        $ratio = $mb_length / strlen($str);
        // Base64 has a 4:3 ratio
        $avgLength = floor($length * $ratio * .75);

        for ($i = 0; $i < $mb_length; $i += $offset) {
            $lookBack = 0;
            do {
                $offset = $avgLength - $lookBack;
                $chunk = mb_substr($str, $i, $offset, $this->CharSet);
                $chunk = base64_encode($chunk);
                $lookBack++;
            } while (strlen($chunk) > $length);
            $encoded .= $chunk . $linebreak;
        }

        // Chomp the last linefeed
        $encoded = substr($encoded, 0, -strlen($linebreak));
        return $encoded;
    }

    /**
     * Encode a string in quoted-printable format.
     * According to RFC2045 section 6.7.
     * @access public
     * @param string $string The text to encode
     * @param integer $line_max Number of chars allowed on a line before wrapping
     * @return string
     * @link http://www.php.net/manual/en/function.quoted-printable-decode.php#89417 Adapted from this comment
     */
    public function encodeQP($string, $line_max = 76)
    {
        // Use native function if it's available (>= PHP5.3)
        if (function_exists('quoted_printable_encode')) {
            return quoted_printable_encode($string);
        }
        // Fall back to a pure PHP implementation
        $string = str_replace(
            array('%20', '%0D%0A.', '%0D%0A', '%'),
            array(' ', "\r\n=2E", "\r\n", '='),
            rawurlencode($string)
        );
        return preg_replace('/[^\r\n]{' . ($line_max - 3) . '}[^=\r\n]{2}/', "$0=\r\n", $string);
    }

    /**
     * Backward compatibility wrapper for an old QP encoding function that was removed.
     * @see PHPMailer::encodeQP()
     * @access public
     * @param string $string
     * @param integer $line_max
     * @param boolean $space_conv
     * @return string
     * @deprecated Use encodeQP instead.
     */
    public function encodeQPphp(
        $string,
        $line_max = 76,
        /** @noinspection PhpUnusedParameterInspection */ $space_conv = false
    ) {
        return $this->encodeQP($string, $line_max);
    }

    /**
     * Encode a string using Q encoding.
     * @link http://tools.ietf.org/html/rfc2047
     * @param string $str the text to encode
     * @param string $position Where the text is going to be used, see the RFC for what that means
     * @access public
     * @return string
     */
    public function encodeQ($str, $position = 'text')
    {
        // There should not be any EOL in the string
        $pattern = '';
        $encoded = str_replace(array("\r", "\n"), '', $str);
        switch (strtolower($position)) {
            case 'phrase':
                // RFC 2047 section 5.3
                $pattern = '^A-Za-z0-9!*+\/ -';
                break;
            /** @noinspection PhpMissingBreakStatementInspection */
            case 'comment':
                // RFC 2047 section 5.2
                $pattern = '\(\)"';
                // intentional fall-through
                // for this reason we build the $pattern without including delimiters and []
            case 'text':
            default:
                // RFC 2047 section 5.1
                // Replace every high ascii, control, =, ? and _ characters
                $pattern = '\000-\011\013\014\016-\037\075\077\137\177-\377' . $pattern;
                break;
        }
        $matches = array();
        if (preg_match_all("/[{$pattern}]/", $encoded, $matches)) {
            // If the string contains an '=', make sure it's the first thing we replace
            // so as to avoid double-encoding
            $eqkey = array_search('=', $matches[0]);
            if (false !== $eqkey) {
                unset($matches[0][$eqkey]);
                array_unshift($matches[0], '=');
            }
            foreach (array_unique($matches[0]) as $char) {
                $encoded = str_replace($char, '=' . sprintf('%02X', ord($char)), $encoded);
            }
        }
        // Replace every spaces to _ (more readable than =20)
        return str_replace(' ', '_', $encoded);
    }

    /**
     * Add a string or binary attachment (non-filesystem).
     * This method can be used to attach ascii or binary data,
     * such as a BLOB record from a database.
     * @param string $string String attachment data.
     * @param string $filename Name of the attachment.
     * @param string $encoding File encoding (see $Encoding).
     * @param string $type File extension (MIME) type.
     * @param string $disposition Disposition to use
     * @return void
     */
    public function addStringAttachment(
        $string,
        $filename,
        $encoding = 'base64',
        $type = '',
        $disposition = 'attachment'
    ) {
        // If a MIME type is not specified, try to work it out from the file name
        if ($type == '') {
            $type = self::filenameToType($filename);
        }
        // Append to $attachment array
        $this->attachment[] = array(
            0 => $string,
            1 => $filename,
            2 => basename($filename),
            3 => $encoding,
            4 => $type,
            5 => true, // isStringAttachment
            6 => $disposition,
            7 => 0
        );
    }

    /**
     * Add an embedded (inline) attachment from a file.
     * This can include images, sounds, and just about any other document type.
     * These differ from 'regular' attachments in that they are intended to be
     * displayed inline with the message, not just attached for download.
     * This is used in HTML messages that embed the images
     * the HTML refers to using the $cid value.
     * @param string $path Path to the attachment.
     * @param string $cid Content ID of the attachment; Use this to reference
     *        the content when using an embedded image in HTML.
     * @param string $name Overrides the attachment name.
     * @param string $encoding File encoding (see $Encoding).
     * @param string $type File MIME type.
     * @param string $disposition Disposition to use
     * @return boolean True on successfully adding an attachment
     */
    public function addEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = '', $disposition = 'inline')
    {
        if (!@is_file($path)) {
            $this->setError($this->lang('file_access') . $path);
            return false;
        }

        // If a MIME type is not specified, try to work it out from the file name
        if ($type == '') {
            $type = self::filenameToType($path);
        }

        $filename = basename($path);
        if ($name == '') {
            $name = $filename;
        }

        // Append to $attachment array
        $this->attachment[] = array(
            0 => $path,
            1 => $filename,
            2 => $name,
            3 => $encoding,
            4 => $type,
            5 => false, // isStringAttachment
            6 => $disposition,
            7 => $cid
        );
        return true;
    }

    /**
     * Add an embedded stringified attachment.
     * This can include images, sounds, and just about any other document type.
     * Be sure to set the $type to an image type for images:
     * JPEG images use 'image/jpeg', GIF uses 'image/gif', PNG uses 'image/png'.
     * @param string $string The attachment binary data.
     * @param string $cid Content ID of the attachment; Use this to reference
     *        the content when using an embedded image in HTML.
     * @param string $name
     * @param string $encoding File encoding (see $Encoding).
     * @param string $type MIME type.
     * @param string $disposition Disposition to use
     * @return boolean True on successfully adding an attachment
     */
    public function addStringEmbeddedImage(
        $string,
        $cid,
        $name = '',
        $encoding = 'base64',
        $type = '',
        $disposition = 'inline'
    ) {
        // If a MIME type is not specified, try to work it out from the name
        if ($type == '' and !empty($name)) {
            $type = self::filenameToType($name);
        }

        // Append to $attachment array
        $this->attachment[] = array(
            0 => $string,
            1 => $name,
            2 => $name,
            3 => $encoding,
            4 => $type,
            5 => true, // isStringAttachment
            6 => $disposition,
            7 => $cid
        );
        return true;
    }

    /**
     * Check if an inline attachment is present.
     * @access public
     * @return boolean
     */
    public function inlineImageExists()
    {
        foreach ($this->attachment as $attachment) {
            if ($attachment[6] == 'inline') {
                return true;
            }
        }
        return false;
    }

    /**
     * Check if an attachment (non-inline) is present.
     * @return boolean
     */
    public function attachmentExists()
    {
        foreach ($this->attachment as $attachment) {
            if ($attachment[6] == 'attachment') {
                return true;
            }
        }
        return false;
    }

    /**
     * Check if this message has an alternative body set.
     * @return boolean
     */
    public function alternativeExists()
    {
        return !empty($this->AltBody);
    }

    /**
     * Clear queued addresses of given kind.
     * @access protected
     * @param string $kind 'to', 'cc', or 'bcc'
     * @return void
     */
    public function clearQueuedAddresses($kind)
    {
        $RecipientsQueue = $this->RecipientsQueue;
        foreach ($RecipientsQueue as $address => $params) {
            if ($params[0] == $kind) {
                unset($this->RecipientsQueue[$address]);
            }
        }
    }

    /**
     * Clear all To recipients.
     * @return void
     */
    public function clearAddresses()
    {
        foreach ($this->to as $to) {
            unset($this->all_recipients[strtolower($to[0])]);
        }
        $this->to = array();
        $this->clearQueuedAddresses('to');
    }

    /**
     * Clear all CC recipients.
     * @return void
     */
    public function clearCCs()
    {
        foreach ($this->cc as $cc) {
            unset($this->all_recipients[strtolower($cc[0])]);
        }
        $this->cc = array();
        $this->clearQueuedAddresses('cc');
    }

    /**
     * Clear all BCC recipients.
     * @return void
     */
    public function clearBCCs()
    {
        foreach ($this->bcc as $bcc) {
            unset($this->all_recipients[strtolower($bcc[0])]);
        }
        $this->bcc = array();
        $this->clearQueuedAddresses('bcc');
    }

    /**
     * Clear all ReplyTo recipients.
     * @return void
     */
    public function clearReplyTos()
    {
        $this->ReplyTo = array();
        $this->ReplyToQueue = array();
    }

    /**
     * Clear all recipient types.
     * @return void
     */
    public function clearAllRecipients()
    {
        $this->to = array();
        $this->cc = array();
        $this->bcc = array();
        $this->all_recipients = array();
        $this->RecipientsQueue = array();
    }

    /**
     * Clear all filesystem, string, and binary attachments.
     * @return void
     */
    public function clearAttachments()
    {
        $this->attachment = array();
    }

    /**
     * Clear all custom headers.
     * @return void
     */
    public function clearCustomHeaders()
    {
        $this->CustomHeader = array();
    }

    /**
     * Add an error message to the error container.
     * @access protected
     * @param string $msg
     * @return void
     */
    protected function setError($msg)
    {
        $this->error_count++;
        if ($this->Mailer == 'smtp' and !is_null($this->smtp)) {
            $lasterror = $this->smtp->getError();
            if (!empty($lasterror['error'])) {
                $msg .= $this->lang('smtp_error') . $lasterror['error'];
                if (!empty($lasterror['detail'])) {
                    $msg .= ' Detail: '. $lasterror['detail'];
                }
                if (!empty($lasterror['smtp_code'])) {
                    $msg .= ' SMTP code: ' . $lasterror['smtp_code'];
                }
                if (!empty($lasterror['smtp_code_ex'])) {
                    $msg .= ' Additional SMTP info: ' . $lasterror['smtp_code_ex'];
                }
            }
        }
        $this->ErrorInfo = $msg;
    }

    /**
     * Return an RFC 822 formatted date.
     * @access public
     * @return string
     * @static
     */
    public static function rfcDate()
    {
        // Set the time zone to whatever the default is to avoid 500 errors
        // Will default to UTC if it's not set properly in php.ini
        date_default_timezone_set(@date_default_timezone_get());
        return date('D, j M Y H:i:s O');
    }

    /**
     * Get the server hostname.
     * Returns 'localhost.localdomain' if unknown.
     * @access protected
     * @return string
     */
    protected function serverHostname()
    {
        $result = 'localhost.localdomain';
        if (!empty($this->Hostname)) {
            $result = $this->Hostname;
        } elseif (isset($_SERVER) and array_key_exists('SERVER_NAME', $_SERVER) and !empty($_SERVER['SERVER_NAME'])) {
            $result = $_SERVER['SERVER_NAME'];
        } elseif (function_exists('gethostname') && gethostname() !== false) {
            $result = gethostname();
        } elseif (php_uname('n') !== false) {
            $result = php_uname('n');
        }
        return $result;
    }

    /**
     * Get an error message in the current language.
     * @access protected
     * @param string $key
     * @return string
     */
    protected function lang($key)
    {
        if (count($this->lang) < 1) {
            $this->setLanguage('en'); // set the default language
        }

        if (array_key_exists($key, $this->lang)) {
            if ($key == 'smtp_connect_failed') {
                //Include a link to troubleshooting docs on SMTP connection failure
                //this is by far the biggest cause of support questions
                //but it's usually not PHPMailer's fault.
                return $this->lang[$key] . ' https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting';
            }
            return $this->lang[$key];
        } else {
            //Return the key as a fallback
            return $key;
        }
    }

    /**
     * Check if an error occurred.
     * @access public
     * @return boolean True if an error did occur.
     */
    public function isError()
    {
        return ($this->error_count > 0);
    }

    /**
     * Ensure consistent line endings in a string.
     * Changes every end of line from CRLF, CR or LF to $this->LE.
     * @access public
     * @param string $str String to fixEOL
     * @return string
     */
    public function fixEOL($str)
    {
        // Normalise to \n
        $nstr = str_replace(array("\r\n", "\r"), "\n", $str);
        // Now convert LE as needed
        if ($this->LE !== "\n") {
            $nstr = str_replace("\n", $this->LE, $nstr);
        }
        return $nstr;
    }

    /**
     * Add a custom header.
     * $name value can be overloaded to contain
     * both header name and value (name:value)
     * @access public
     * @param string $name Custom header name
     * @param string $value Header value
     * @return void
     */
    public function addCustomHeader($name, $value = null)
    {
        if ($value === null) {
            // Value passed in as name:value
            $this->CustomHeader[] = explode(':', $name, 2);
        } else {
            $this->CustomHeader[] = array($name, $value);
        }
    }

    /**
     * Returns all custom headers.
     * @return array
     */
    public function getCustomHeaders()
    {
        return $this->CustomHeader;
    }

    /**
     * Create a message body from an HTML string.
     * Automatically inlines images and creates a plain-text version by converting the HTML,
     * overwriting any existing values in Body and AltBody.
     * $basedir is used when handling relative image paths, e.g. <img src="images/a.png">
     * will look for an image file in $basedir/images/a.png and convert it to inline.
     * If you don't want to apply these transformations to your HTML, just set Body and AltBody yourself.
     * @access public
     * @param string $message HTML message string
     * @param string $basedir base directory for relative paths to images
     * @param boolean|callable $advanced Whether to use the internal HTML to text converter
     *    or your own custom converter @see PHPMailer::html2text()
     * @return string $message The transformed message Body
     */
    public function msgHTML($message, $basedir = '', $advanced = false)
    {
        preg_match_all('/(src|background)=["\'](.*)["\']/Ui', $message, $images);
        if (array_key_exists(2, $images)) {
            foreach ($images[2] as $imgindex => $url) {
                // Convert data URIs into embedded images
                if (preg_match('#^data:(image[^;,]*)(;base64)?,#', $url, $match)) {
                    $data = substr($url, strpos($url, ','));
                    if ($match[2]) {
                        $data = base64_decode($data);
                    } else {
                        $data = rawurldecode($data);
                    }
                    $cid = md5($url) . '@phpmailer.0'; // RFC2392 S 2
                    if ($this->addStringEmbeddedImage($data, $cid, 'embed' . $imgindex, 'base64', $match[1])) {
                        $message = str_replace(
                            $images[0][$imgindex],
                            $images[1][$imgindex] . '="cid:' . $cid . '"',
                            $message
                        );
                    }
                } elseif (substr($url, 0, 4) !== 'cid:' && !preg_match('#^[a-z][a-z0-9+.-]*://#i', $url)) {
                    // Do not change urls for absolute images (thanks to corvuscorax)
                    // Do not change urls that are already inline images
                    $filename = basename($url);
                    $directory = dirname($url);
                    if ($directory == '.') {
                        $directory = '';
                    }
                    $cid = md5($url) . '@phpmailer.0'; // RFC2392 S 2
                    if (strlen($basedir) > 1 && substr($basedir, -1) != '/') {
                        $basedir .= '/';
                    }
                    if (strlen($directory) > 1 && substr($directory, -1) != '/') {
                        $directory .= '/';
                    }
                    if ($this->addEmbeddedImage(
                        $basedir . $directory . $filename,
                        $cid,
                        $filename,
                        'base64',
                        self::_mime_types((string)self::mb_pathinfo($filename, PATHINFO_EXTENSION))
                    )
                    ) {
                        $message = preg_replace(
                            '/' . $images[1][$imgindex] . '=["\']' . preg_quote($url, '/') . '["\']/Ui',
                            $images[1][$imgindex] . '="cid:' . $cid . '"',
                            $message
                        );
                    }
                }
            }
        }
        $this->isHTML(true);
        // Convert all message body line breaks to CRLF, makes quoted-printable encoding work much better
        $this->Body = $this->normalizeBreaks($message);
        $this->AltBody = $this->normalizeBreaks($this->html2text($message, $advanced));
        if (!$this->alternativeExists()) {
            $this->AltBody = 'To view this email message, open it in a program that understands HTML!' .
                self::CRLF . self::CRLF;
        }
        return $this->Body;
    }

    /**
     * Convert an HTML string into plain text.
     * This is used by msgHTML().
     * Note - older versions of this function used a bundled advanced converter
     * which was been removed for license reasons in #232.
     * Example usage:
     * <code>
     * // Use default conversion
     * $plain = $mail->html2text($html);
     * // Use your own custom converter
     * $plain = $mail->html2text($html, function($html) {
     *     $converter = new MyHtml2text($html);
     *     return $converter->get_text();
     * });
     * </code>
     * @param string $html The HTML text to convert
     * @param boolean|callable $advanced Any boolean value to use the internal converter,
     *   or provide your own callable for custom conversion.
     * @return string
     */
    public function html2text($html, $advanced = false)
    {
        if (is_callable($advanced)) {
            return call_user_func($advanced, $html);
        }
        return html_entity_decode(
            trim(strip_tags(preg_replace('/<(head|title|style|script)[^>]*>.*?<\/\\1>/si', '', $html))),
            ENT_QUOTES,
            $this->CharSet
        );
    }

    /**
     * Get the MIME type for a file extension.
     * @param string $ext File extension
     * @access public
     * @return string MIME type of file.
     * @static
     */
    public static function _mime_types($ext = '')
    {
        $mimes = array(
            'xl'    => 'application/excel',
            'js'    => 'application/javascript',
            'hqx'   => 'application/mac-binhex40',
            'cpt'   => 'application/mac-compactpro',
            'bin'   => 'application/macbinary',
            'doc'   => 'application/msword',
            'word'  => 'application/msword',
            'xlsx'  => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
            'xltx'  => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
            'potx'  => 'application/vnd.openxmlformats-officedocument.presentationml.template',
            'ppsx'  => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
            'pptx'  => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
            'sldx'  => 'application/vnd.openxmlformats-officedocument.presentationml.slide',
            'docx'  => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
            'dotx'  => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
            'xlam'  => 'application/vnd.ms-excel.addin.macroEnabled.12',
            'xlsb'  => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12',
            'class' => 'application/octet-stream',
            'dll'   => 'application/octet-stream',
            'dms'   => 'application/octet-stream',
            'exe'   => 'application/octet-stream',
            'lha'   => 'application/octet-stream',
            'lzh'   => 'application/octet-stream',
            'psd'   => 'application/octet-stream',
            'sea'   => 'application/octet-stream',
            'so'    => 'application/octet-stream',
            'oda'   => 'application/oda',
            'pdf'   => 'application/pdf',
            'ai'    => 'application/postscript',
            'eps'   => 'application/postscript',
            'ps'    => 'application/postscript',
            'smi'   => 'application/smil',
            'smil'  => 'application/smil',
            'mif'   => 'application/vnd.mif',
            'xls'   => 'application/vnd.ms-excel',
            'ppt'   => 'application/vnd.ms-powerpoint',
            'wbxml' => 'application/vnd.wap.wbxml',
            'wmlc'  => 'application/vnd.wap.wmlc',
            'dcr'   => 'application/x-director',
            'dir'   => 'application/x-director',
            'dxr'   => 'application/x-director',
            'dvi'   => 'application/x-dvi',
            'gtar'  => 'application/x-gtar',
            'php3'  => 'application/x-httpd-php',
            'php4'  => 'application/x-httpd-php',
            'php'   => 'application/x-httpd-php',
            'phtml' => 'application/x-httpd-php',
            'phps'  => 'application/x-httpd-php-source',
            'swf'   => 'application/x-shockwave-flash',
            'sit'   => 'application/x-stuffit',
            'tar'   => 'application/x-tar',
            'tgz'   => 'application/x-tar',
            'xht'   => 'application/xhtml+xml',
            'xhtml' => 'application/xhtml+xml',
            'zip'   => 'application/zip',
            'mid'   => 'audio/midi',
            'midi'  => 'audio/midi',
            'mp2'   => 'audio/mpeg',
            'mp3'   => 'audio/mpeg',
            'mpga'  => 'audio/mpeg',
            'aif'   => 'audio/x-aiff',
            'aifc'  => 'audio/x-aiff',
            'aiff'  => 'audio/x-aiff',
            'ram'   => 'audio/x-pn-realaudio',
            'rm'    => 'audio/x-pn-realaudio',
            'rpm'   => 'audio/x-pn-realaudio-plugin',
            'ra'    => 'audio/x-realaudio',
            'wav'   => 'audio/x-wav',
            'bmp'   => 'image/bmp',
            'gif'   => 'image/gif',
            'jpeg'  => 'image/jpeg',
            'jpe'   => 'image/jpeg',
            'jpg'   => 'image/jpeg',
            'png'   => 'image/png',
            'tiff'  => 'image/tiff',
            'tif'   => 'image/tiff',
            'eml'   => 'message/rfc822',
            'css'   => 'text/css',
            'html'  => 'text/html',
            'htm'   => 'text/html',
            'shtml' => 'text/html',
            'log'   => 'text/plain',
            'text'  => 'text/plain',
            'txt'   => 'text/plain',
            'rtx'   => 'text/richtext',
            'rtf'   => 'text/rtf',
            'vcf'   => 'text/vcard',
            'vcard' => 'text/vcard',
            'xml'   => 'text/xml',
            'xsl'   => 'text/xml',
            'mpeg'  => 'video/mpeg',
            'mpe'   => 'video/mpeg',
            'mpg'   => 'video/mpeg',
            'mov'   => 'video/quicktime',
            'qt'    => 'video/quicktime',
            'rv'    => 'video/vnd.rn-realvideo',
            'avi'   => 'video/x-msvideo',
            'movie' => 'video/x-sgi-movie'
        );
        if (array_key_exists(strtolower($ext), $mimes)) {
            return $mimes[strtolower($ext)];
        }
        return 'application/octet-stream';
    }

    /**
     * Map a file name to a MIME type.
     * Defaults to 'application/octet-stream', i.e.. arbitrary binary data.
     * @param string $filename A file name or full path, does not need to exist as a file
     * @return string
     * @static
     */
    public static function filenameToType($filename)
    {
        // In case the path is a URL, strip any query string before getting extension
        $qpos = strpos($filename, '?');
        if (false !== $qpos) {
            $filename = substr($filename, 0, $qpos);
        }
        $pathinfo = self::mb_pathinfo($filename);
        return self::_mime_types($pathinfo['extension']);
    }

    /**
     * Multi-byte-safe pathinfo replacement.
     * Drop-in replacement for pathinfo(), but multibyte-safe, cross-platform-safe, old-version-safe.
     * Works similarly to the one in PHP >= 5.2.0
     * @link http://www.php.net/manual/en/function.pathinfo.php#107461
     * @param string $path A filename or path, does not need to exist as a file
     * @param integer|string $options Either a PATHINFO_* constant,
     *      or a string name to return only the specified piece, allows 'filename' to work on PHP < 5.2
     * @return string|array
     * @static
     */
    public static function mb_pathinfo($path, $options = null)
    {
        $ret = array('dirname' => '', 'basename' => '', 'extension' => '', 'filename' => '');
        $pathinfo = array();
        if (preg_match('%^(.*?)[\\\\/]*(([^/\\\\]*?)(\.([^\.\\\\/]+?)|))[\\\\/\.]*$%im', $path, $pathinfo)) {
            if (array_key_exists(1, $pathinfo)) {
                $ret['dirname'] = $pathinfo[1];
            }
            if (array_key_exists(2, $pathinfo)) {
                $ret['basename'] = $pathinfo[2];
            }
            if (array_key_exists(5, $pathinfo)) {
                $ret['extension'] = $pathinfo[5];
            }
            if (array_key_exists(3, $pathinfo)) {
                $ret['filename'] = $pathinfo[3];
            }
        }
        switch ($options) {
            case PATHINFO_DIRNAME:
            case 'dirname':
                return $ret['dirname'];
            case PATHINFO_BASENAME:
            case 'basename':
                return $ret['basename'];
            case PATHINFO_EXTENSION:
            case 'extension':
                return $ret['extension'];
            case PATHINFO_FILENAME:
            case 'filename':
                return $ret['filename'];
            default:
                return $ret;
        }
    }

    /**
     * Set or reset instance properties.
     * You should avoid this function - it's more verbose, less efficient, more error-prone and
     * harder to debug than setting properties directly.
     * Usage Example:
     * `$mail->set('SMTPSecure', 'tls');`
     *   is the same as:
     * `$mail->SMTPSecure = 'tls';`
     * @access public
     * @param string $name The property name to set
     * @param mixed $value The value to set the property to
     * @return boolean
     * @TODO Should this not be using the __set() magic function?
     */
    public function set($name, $value = '')
    {
        if (property_exists($this, $name)) {
            $this->$name = $value;
            return true;
        } else {
            $this->setError($this->lang('variable_set') . $name);
            return false;
        }
    }

    /**
     * Strip newlines to prevent header injection.
     * @access public
     * @param string $str
     * @return string
     */
    public function secureHeader($str)
    {
        return trim(str_replace(array("\r", "\n"), '', $str));
    }

    /**
     * Normalize line breaks in a string.
     * Converts UNIX LF, Mac CR and Windows CRLF line breaks into a single line break format.
     * Defaults to CRLF (for message bodies) and preserves consecutive breaks.
     * @param string $text
     * @param string $breaktype What kind of line break to use, defaults to CRLF
     * @return string
     * @access public
     * @static
     */
    public static function normalizeBreaks($text, $breaktype = "\r\n")
    {
        return preg_replace('/(\r\n|\r|\n)/ms', $breaktype, $text);
    }

    /**
     * Set the public and private key files and password for S/MIME signing.
     * @access public
     * @param string $cert_filename
     * @param string $key_filename
     * @param string $key_pass Password for private key
     * @param string $extracerts_filename Optional path to chain certificate
     */
    public function sign($cert_filename, $key_filename, $key_pass, $extracerts_filename = '')
    {
        $this->sign_cert_file = $cert_filename;
        $this->sign_key_file = $key_filename;
        $this->sign_key_pass = $key_pass;
        $this->sign_extracerts_file = $extracerts_filename;
    }

    /**
     * Quoted-Printable-encode a DKIM header.
     * @access public
     * @param string $txt
     * @return string
     */
    public function DKIM_QP($txt)
    {
        $line = '';
        for ($i = 0; $i < strlen($txt); $i++) {
            $ord = ord($txt[$i]);
            if (((0x21 <= $ord) && ($ord <= 0x3A)) || $ord == 0x3C || ((0x3E <= $ord) && ($ord <= 0x7E))) {
                $line .= $txt[$i];
            } else {
                $line .= '=' . sprintf('%02X', $ord);
            }
        }
        return $line;
    }

    /**
     * Generate a DKIM signature.
     * @access public
     * @param string $signHeader
     * @throws acymailingphpmailerException
     * @return string The DKIM signature value
     */
    public function DKIM_Sign($signHeader)
    {
        if (!defined('PKCS7_TEXT')) {
            if ($this->exceptions) {
                throw new acymailingphpmailerException($this->lang('extension_missing') . 'openssl');
            }
            return '';
        }
        $privKeyStr = !empty($this->DKIM_private_string) ? $this->DKIM_private_string : file_get_contents($this->DKIM_private);
        if ('' != $this->DKIM_passphrase) {
            $privKey = openssl_pkey_get_private($privKeyStr, $this->DKIM_passphrase);
        } else {
            $privKey = openssl_pkey_get_private($privKeyStr);
        }
        //Workaround for missing digest algorithms in old PHP & OpenSSL versions
        //@link http://stackoverflow.com/a/11117338/333340
        if (version_compare(PHP_VERSION, '5.3.0') >= 0 and
            in_array('sha256WithRSAEncryption', openssl_get_md_methods(true))) {
            if (openssl_sign($signHeader, $signature, $privKey, 'sha256WithRSAEncryption')) {
                openssl_pkey_free($privKey);
                return base64_encode($signature);
            }
        } else {
            $pinfo = openssl_pkey_get_details($privKey);
            $hash = hash('sha256', $signHeader);
            //'Magic' constant for SHA256 from RFC3447
            //@link https://tools.ietf.org/html/rfc3447#page-43
            $t = '3031300d060960864801650304020105000420' . $hash;
            $pslen = $pinfo['bits'] / 8 - (strlen($t) / 2 + 3);
            $eb = pack('H*', '0001' . str_repeat('FF', $pslen) . '00' . $t);

            if (openssl_private_encrypt($eb, $signature, $privKey, OPENSSL_NO_PADDING)) {
                openssl_pkey_free($privKey);
                return base64_encode($signature);
            }
        }
        openssl_pkey_free($privKey);
        return '';
    }

    /**
     * Generate a DKIM canonicalization header.
     * @access public
     * @param string $signHeader Header
     * @return string
     */
    public function DKIM_HeaderC($signHeader)
    {
        $signHeader = preg_replace('/\r\n\s+/', ' ', $signHeader);
        $lines = explode("\r\n", $signHeader);
        foreach ($lines as $key => $line) {
            list($heading, $value) = explode(':', $line, 2);
            $heading = strtolower($heading);
            $value = preg_replace('/\s{2,}/', ' ', $value); // Compress useless spaces
            $lines[$key] = $heading . ':' . trim($value); // Don't forget to remove WSP around the value
        }
        $signHeader = implode("\r\n", $lines);
        return $signHeader;
    }

    /**
     * Generate a DKIM canonicalization body.
     * @access public
     * @param string $body Message Body
     * @return string
     */
    public function DKIM_BodyC($body)
    {
        if ($body == '') {
            return "\r\n";
        }
        // stabilize line endings
        $body = str_replace("\r\n", "\n", $body);
        $body = str_replace("\n", "\r\n", $body);
        // END stabilize line endings
        while (substr($body, strlen($body) - 4, 4) == "\r\n\r\n") {
            $body = substr($body, 0, strlen($body) - 2);
        }
        return $body;
    }

    /**
     * Create the DKIM header and body in a new message header.
     * @access public
     * @param string $headers_line Header lines
     * @param string $subject Subject
     * @param string $body Body
     * @return string
     */
    public function DKIM_Add($headers_line, $subject, $body)
    {
        $DKIMsignatureType = 'rsa-sha256'; // Signature & hash algorithms
        $DKIMcanonicalization = 'relaxed/simple'; // Canonicalization of header/body
        $DKIMquery = 'dns/txt'; // Query method
        $DKIMtime = time(); // Signature Timestamp = seconds since 00:00:00 - Jan 1, 1970 (UTC time zone)
        $subject_header = "Subject: $subject";
        $headers = explode($this->LE, $headers_line);
        $from_header = '';
        $to_header = '';
        $date_header = '';
        $current = '';
        foreach ($headers as $header) {
            if (strpos($header, 'From:') === 0) {
                $from_header = $header;
                $current = 'from_header';
            } elseif (strpos($header, 'To:') === 0) {
                $to_header = $header;
                $current = 'to_header';
            } elseif (strpos($header, 'Date:') === 0) {
                $date_header = $header;
                $current = 'date_header';
            } else {
                if (!empty($$current) && strpos($header, ' =?') === 0) {
                    $$current .= $header;
                } else {
                    $current = '';
                }
            }
        }
        $from = str_replace('|', '=7C', $this->DKIM_QP($from_header));
        $to = str_replace('|', '=7C', $this->DKIM_QP($to_header));
        $date = str_replace('|', '=7C', $this->DKIM_QP($date_header));
        $subject = str_replace(
            '|',
            '=7C',
            $this->DKIM_QP($subject_header)
        ); // Copied header fields (dkim-quoted-printable)
        $body = $this->DKIM_BodyC($body);
        $DKIMlen = strlen($body); // Length of body
        $DKIMb64 = base64_encode(pack('H*', hash('sha256', $body))); // Base64 of packed binary SHA-256 hash of body
        if ('' == $this->DKIM_identity) {
            $ident = '';
        } else {
            $ident = ' i=' . $this->DKIM_identity . ';';
        }
        $dkimhdrs = 'DKIM-Signature: v=1; a=' .
            $DKIMsignatureType . '; q=' .
            $DKIMquery . '; l=' .
            $DKIMlen . '; s=' .
            $this->DKIM_selector .
            ";\r\n" .
            "\tt=" . $DKIMtime . '; c=' . $DKIMcanonicalization . ";\r\n" .
            "\th=From:To:Date:Subject;\r\n" .
            "\td=" . $this->DKIM_domain . ';' . $ident . "\r\n" .
            "\tz=$from\r\n" .
            "\t|$to\r\n" .
            "\t|$date\r\n" .
            "\t|$subject;\r\n" .
            "\tbh=" . $DKIMb64 . ";\r\n" .
            "\tb=";
        $toSign = $this->DKIM_HeaderC(
            $from_header . "\r\n" .
            $to_header . "\r\n" .
            $date_header . "\r\n" .
            $subject_header . "\r\n" .
            $dkimhdrs
        );
        $signed = $this->DKIM_Sign($toSign);
        return $dkimhdrs . $signed . "\r\n";
    }

    /**
     * Detect if a string contains a line longer than the maximum line length allowed.
     * @param string $str
     * @return boolean
     * @static
     */
    public static function hasLineLongerThanMax($str)
    {
        //+2 to include CRLF line break for a 1000 total
        return (boolean)preg_match('/^(.{'.(self::MAX_LINE_LENGTH + 2).',})/m', $str);
    }

    /**
     * Allows for public read access to 'to' property.
     * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.
     * @access public
     * @return array
     */
    public function getToAddresses()
    {
        return $this->to;
    }

    /**
     * Allows for public read access to 'cc' property.
     * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.
     * @access public
     * @return array
     */
    public function getCcAddresses()
    {
        return $this->cc;
    }

    /**
     * Allows for public read access to 'bcc' property.
     * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.
     * @access public
     * @return array
     */
    public function getBccAddresses()
    {
        return $this->bcc;
    }

    /**
     * Allows for public read access to 'ReplyTo' property.
     * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.
     * @access public
     * @return array
     */
    public function getReplyToAddresses()
    {
        return $this->ReplyTo;
    }

    /**
     * Allows for public read access to 'all_recipients' property.
     * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.
     * @access public
     * @return array
     */
    public function getAllRecipientAddresses()
    {
        return $this->all_recipients;
    }

    /**
     * Perform a callback.
     * @param boolean $isSent
     * @param array $to
     * @param array $cc
     * @param array $bcc
     * @param string $subject
     * @param string $body
     * @param string $from
     */
    protected function doCallback($isSent, $to, $cc, $bcc, $subject, $body, $from)
    {
        if (!empty($this->action_function) && is_callable($this->action_function)) {
            $params = array($isSent, $to, $cc, $bcc, $subject, $body, $from);
            call_user_func_array($this->action_function, $params);
        }
    }
}

/**
 * PHPMailer exception handler
 * @package PHPMailer
 */
class acymailingphpmailerException extends Exception
{
    /**
     * Prettify error message output
     * @return string
     */
    public function errorMessage()
    {
        $errorMsg = '<strong>' . $this->getMessage() . "</strong><br />\n";
        return $errorMsg;
    }
}
inc/phpmailer/index.html000060400000000054152455302720011273 0ustar00<html><body bgcolor="#FFFFFF"></body></html>inc/phpmailer/class.smtp.php000060400000122341152455302720012102 0ustar00<?php

acymailing_cmsLoaded();

/**
 * Customized version of PHPMailer by Acyba
 * PHPMailer RFC821 SMTP email transport class.
 * PHP Version 5
 * @package PHPMailer
 * @link https://github.com/PHPMailer/PHPMailer/ The PHPMailer GitHub project
 * @author Marcus Bointon (Synchro/coolbru) <phpmailer@synchromedia.co.uk>
 * @author Jim Jagielski (jimjag) <jimjag@gmail.com>
 * @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
 * @author Brent R. Matzelle (original founder)
 * @copyright 2014 Marcus Bointon
 * @copyright 2010 - 2012 Jim Jagielski
 * @copyright 2004 - 2009 Andy Prevost
 * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
 * @note This program is distributed in the hope that it will be useful - WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.
 */

/**
 * PHPMailer RFC821 SMTP email transport class.
 * Implements RFC 821 SMTP commands and provides some utility methods for sending mail to an SMTP server.
 * @package PHPMailer
 * @author Chris Ryan
 * @author Marcus Bointon <phpmailer@synchromedia.co.uk>
 */
class acymailingSMTP
{
    /**
     * The PHPMailer SMTP version number.
     * @var string
     */
    const VERSION = '5.2.19';

    /**
     * SMTP line break constant.
     * @var string
     */
    const CRLF = "\r\n";

    /**
     * The SMTP port to use if one is not specified.
     * @var integer
     */
    const DEFAULT_SMTP_PORT = 25;

    /**
     * The maximum line length allowed by RFC 2822 section 2.1.1
     * @var integer
     */
    const MAX_LINE_LENGTH = 998;

    /**
     * Debug level for no output
     */
    const DEBUG_OFF = 0;

    /**
     * Debug level to show client -> server messages
     */
    const DEBUG_CLIENT = 1;

    /**
     * Debug level to show client -> server and server -> client messages
     */
    const DEBUG_SERVER = 2;

    /**
     * Debug level to show connection status, client -> server and server -> client messages
     */
    const DEBUG_CONNECTION = 3;

    /**
     * Debug level to show all messages
     */
    const DEBUG_LOWLEVEL = 4;

    /**
     * The PHPMailer SMTP Version number.
     * @var string
     * @deprecated Use the `VERSION` constant instead
     * @see SMTP::VERSION
     */
    public $Version = '5.2.19';

    /**
     * SMTP server port number.
     * @var integer
     * @deprecated This is only ever used as a default value, so use the `DEFAULT_SMTP_PORT` constant instead
     * @see SMTP::DEFAULT_SMTP_PORT
     */
    public $SMTP_PORT = 25;

    /**
     * SMTP reply line ending.
     * @var string
     * @deprecated Use the `CRLF` constant instead
     * @see SMTP::CRLF
     */
    public $CRLF = "\r\n";

    /**
     * Debug output level.
     * Options:
     * * self::DEBUG_OFF (`0`) No debug output, default
     * * self::DEBUG_CLIENT (`1`) Client commands
     * * self::DEBUG_SERVER (`2`) Client commands and server responses
     * * self::DEBUG_CONNECTION (`3`) As DEBUG_SERVER plus connection status
     * * self::DEBUG_LOWLEVEL (`4`) Low-level data output, all messages
     * @var integer
     */
    public $do_debug = self::DEBUG_OFF;

    /**
     * How to handle debug output.
     * Options:
     * * `echo` Output plain-text as-is, appropriate for CLI
     * * `html` Output escaped, line breaks converted to `<br>`, appropriate for browser output
     * * `error_log` Output to error log as configured in php.ini
     *
     * Alternatively, you can provide a callable expecting two params: a message string and the debug level:
     * <code>
     * $smtp->Debugoutput = function($str, $level) {echo "debug level $level; message: $str";};
     * </code>
     * @var string|callable
     */
    public $Debugoutput = 'echo';

    /**
     * Whether to use VERP.
     * @link http://en.wikipedia.org/wiki/Variable_envelope_return_path
     * @link http://www.postfix.org/VERP_README.html Info on VERP
     * @var boolean
     */
    public $do_verp = false;

    /**
     * The timeout value for connection, in seconds.
     * Default of 5 minutes (300sec) is from RFC2821 section 4.5.3.2
     * This needs to be quite high to function correctly with hosts using greetdelay as an anti-spam measure.
     * @link http://tools.ietf.org/html/rfc2821#section-4.5.3.2
     * @var integer
     */
    public $Timeout = 300;

    /**
     * How long to wait for commands to complete, in seconds.
     * Default of 5 minutes (300sec) is from RFC2821 section 4.5.3.2
     * @var integer
     */
    public $Timelimit = 300;
	
	/**
	 * @var array patterns to extract smtp transaction id from smtp reply
	 * Only first capture group will be use, use non-capturing group to deal with it
	 * Extend this class to override this property to fulfil your needs.
	 */
	protected $smtp_transaction_id_patterns = array(
		'exim' => '/[0-9]{3} OK id=(.*)/',
		'sendmail' => '/[0-9]{3} 2.0.0 (.*) Message/',
		'postfix' => '/[0-9]{3} 2.0.0 Ok: queued as (.*)/'
	);

    /**
     * The socket for the server connection.
     * @var resource
     */
    protected $smtp_conn;

    /**
     * Error information, if any, for the last SMTP command.
     * @var array
     */
    protected $error = array(
        'error' => '',
        'detail' => '',
        'smtp_code' => '',
        'smtp_code_ex' => ''
    );

    /**
     * The reply the server sent to us for HELO.
     * If null, no HELO string has yet been received.
     * @var string|null
     */
    protected $helo_rply = null;

    /**
     * The set of SMTP extensions sent in reply to EHLO command.
     * Indexes of the array are extension names.
     * Value at index 'HELO' or 'EHLO' (according to command that was sent)
     * represents the server name. In case of HELO it is the only element of the array.
     * Other values can be boolean TRUE or an array containing extension options.
     * If null, no HELO/EHLO string has yet been received.
     * @var array|null
     */
    protected $server_caps = null;

    /**
     * The most recent reply received from the server.
     * @var string
     */
    protected $last_reply = '';

    /**
     * Output debugging info via a user-selected method.
     * @see SMTP::$Debugoutput
     * @see SMTP::$do_debug
     * @param string $str Debug string to output
     * @param integer $level The debug level of this message; see DEBUG_* constants
     * @return void
     */
    protected function edebug($str, $level = 0)
    {
        if ($level > $this->do_debug) {
            return;
        }
        //Avoid clash with built-in function names
        if (!in_array($this->Debugoutput, array('error_log', 'html', 'echo')) and is_callable($this->Debugoutput)) {
            call_user_func($this->Debugoutput, $str, $level);
            return;
        }
        switch ($this->Debugoutput) {
            case 'error_log':
                //Don't output, just log
                error_log($str);
                break;
            case 'html':
                //Cleans up output a bit for a better looking, HTML-safe output
                echo htmlentities(
                    preg_replace('/[\r\n]+/', '', $str),
                    ENT_QUOTES,
                    'UTF-8'
                )
                . "<br>\n";
                break;
            case 'echo':
            default:
                //Normalize line breaks
                $str = preg_replace('/(\r\n|\r|\n)/ms', "\n", $str);
                echo gmdate('Y-m-d H:i:s') . "\t" . str_replace(
                    "\n",
                    "\n                   \t                  ",
                    trim($str)
                )."\n";
        }
    }

    /**
     * Connect to an SMTP server.
     * @param string $host SMTP server IP or host name
     * @param integer $port The port number to connect to
     * @param integer $timeout How long to wait for the connection to open
     * @param array $options An array of options for stream_context_create()
     * @access public
     * @return boolean
     */
    public function connect($host, $port = null, $timeout = 30, $options = array())
    {
        static $streamok;
        //This is enabled by default since 5.0.0 but some providers disable it
        //Check this once and cache the result
        if (is_null($streamok)) {
            $streamok = function_exists('stream_socket_client');
        }
        // Clear errors to avoid confusion
        $this->setError('');
        // Make sure we are __not__ connected
        if ($this->connected()) {
            // Already connected, generate error
            $this->setError('Already connected to a server');
            return false;
        }
        if (empty($port)) {
            $port = self::DEFAULT_SMTP_PORT;
        }
        // Connect to the SMTP server
        $this->edebug(
            "Connection: opening to $host:$port, timeout=$timeout, options=".var_export($options, true),
            self::DEBUG_CONNECTION
        );
        $errno = 0;
        $errstr = '';
		ob_start();
        if ($streamok) {
            $socket_context = stream_context_create($options);
            set_error_handler(array($this, 'errorHandler'));
            $this->smtp_conn = stream_socket_client(
                $host . ":" . $port,
                $errno,
                $errstr,
                $timeout,
                STREAM_CLIENT_CONNECT,
                $socket_context
            );
			restore_error_handler();
        } else {
            //Fall back to fsockopen which should work in more places, but is missing some features
            $this->edebug(
                "Connection: stream_socket_client not available, falling back to fsockopen",
                self::DEBUG_CONNECTION
            );
			set_error_handler(array($this, 'errorHandler'));
            $this->smtp_conn = fsockopen(
                $host,
                $port,
                $errno,
                $errstr,
                $timeout
            );
			restore_error_handler();
        }
		$warnings = ob_get_clean();
		$errstr .= ' '.$warnings;
        // Verify we connected properly
        if (!is_resource($this->smtp_conn)) {
            $this->setError(
                'Failed to connect to server',
                $errno,
                $errstr
            );
            $this->edebug(
                'SMTP ERROR: ' . $this->error['error']
                . ": $errstr ($errno)",
                self::DEBUG_CLIENT
            );
            return false;
        }
        $this->edebug('Connection: opened', self::DEBUG_CONNECTION);
        // SMTP server can take longer to respond, give longer timeout for first read
        // Windows does not have support for this timeout function
        if (substr(PHP_OS, 0, 3) != 'WIN') {
            $max = ini_get('max_execution_time');
            // Don't bother if unlimited
            if ($max != 0 && $timeout > $max) {
                @set_time_limit($timeout);
            }
            stream_set_timeout($this->smtp_conn, $timeout, 0);
        }
        // Get any announcement
        $announce = $this->get_lines();
        $this->edebug('SERVER -> CLIENT: ' . $announce, self::DEBUG_SERVER);
        return true;
    }

    /**
     * Initiate a TLS (encrypted) session.
     * @access public
     * @return boolean
     */
    public function startTLS()
    {
        if (!$this->sendCommand('STARTTLS', 'STARTTLS', 220)) {
            return false;
        }

        //Allow the best TLS version(s) we can
        $crypto_method = STREAM_CRYPTO_METHOD_TLS_CLIENT;

        //PHP 5.6.7 dropped inclusion of TLS 1.1 and 1.2 in STREAM_CRYPTO_METHOD_TLS_CLIENT
        //so add them back in manually if we can
        if (defined('STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT')) {
            $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT;
            $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT;
        }

        // Begin encrypted connection
        if (!stream_socket_enable_crypto(
            $this->smtp_conn,
            true,
            $crypto_method
        )) {
            return false;
        }
        return true;
    }

    /**
     * Perform SMTP authentication.
     * Must be run after hello().
     * @see hello()
     * @param string $username The user name
     * @param string $password The password
     * @param string $authtype The auth type (PLAIN, LOGIN, NTLM, CRAM-MD5, XOAUTH2)
     * @param string $realm The auth realm for NTLM
     * @param string $workstation The auth workstation for NTLM
     * @param null|OAuth $OAuth An optional OAuth instance (@see PHPMailerOAuth)
     * @return bool True if successfully authenticated.* @access public
     */
    public function authenticate(
        $username,
        $password,
        $authtype = null,
        $realm = '',
        $workstation = '',
        $OAuth = null
    ) {
        if (!$this->server_caps) {
            $this->setError('Authentication is not allowed before HELO/EHLO');
            return false;
        }

        if (array_key_exists('EHLO', $this->server_caps)) {
        // SMTP extensions are available. Let's try to find a proper authentication method

            if (!array_key_exists('AUTH', $this->server_caps)) {
                $this->setError('Authentication is not allowed at this stage');
                // 'at this stage' means that auth may be allowed after the stage changes
                // e.g. after STARTTLS
                return false;
            }

            self::edebug('Auth method requested: ' . ($authtype ? $authtype : 'UNKNOWN'), self::DEBUG_LOWLEVEL);
            self::edebug(
                'Auth methods available on the server: ' . implode(',', $this->server_caps['AUTH']),
                self::DEBUG_LOWLEVEL
            );

            if (empty($authtype)) {
                foreach (array('CRAM-MD5', 'LOGIN', 'PLAIN', 'NTLM', 'XOAUTH2') as $method) {
                    if (in_array($method, $this->server_caps['AUTH'])) {
                        $authtype = $method;
                        break;
                    }
                }
                if (empty($authtype)) {
                    $this->setError('No supported authentication methods found');
                    return false;
                }
                self::edebug('Auth method selected: '.$authtype, self::DEBUG_LOWLEVEL);
            }

            if (!in_array($authtype, $this->server_caps['AUTH'])) {
                $this->setError("The requested authentication method \"$authtype\" is not supported by the server");
                return false;
            }
        } elseif (empty($authtype)) {
            $authtype = 'LOGIN';
        }
        switch ($authtype) {
            case 'PLAIN':
                // Start authentication
                if (!$this->sendCommand('AUTH', 'AUTH PLAIN', 334)) {
                    return false;
                }
                // Send encoded username and password
                if (!$this->sendCommand(
                    'User & Password',
                    base64_encode("\0" . $username . "\0" . $password),
                    235
                )
                ) {
                    return false;
                }
                break;
            case 'LOGIN':
                // Start authentication
                if (!$this->sendCommand('AUTH', 'AUTH LOGIN', 334)) {
                    return false;
                }
                if (!$this->sendCommand("Username", base64_encode($username), 334)) {
                    return false;
                }
                if (!$this->sendCommand("Password", base64_encode($password), 235)) {
                    return false;
                }
                break;
            case 'XOAUTH2':
                //If the OAuth Instance is not set. Can be a case when PHPMailer is used
                //instead of PHPMailerOAuth
                if (is_null($OAuth)) {
                    return false;
                }
                $oauth = $OAuth->getOauth64();

                // Start authentication
                if (!$this->sendCommand('AUTH', 'AUTH XOAUTH2 ' . $oauth, 235)) {
                    return false;
                }
                break;
            case 'NTLM':
                /*
                 * ntlm_sasl_client.php
                 * Bundled with Permission
                 *
                 * How to telnet in windows:
                 * http://technet.microsoft.com/en-us/library/aa995718%28EXCHG.65%29.aspx
                 * PROTOCOL Docs http://curl.haxx.se/rfc/ntlm.html#ntlmSmtpAuthentication
                 */
                require_once 'extras/ntlm_sasl_client.php';
                $temp = new stdClass;
                $ntlm_client = new ntlm_sasl_client_class;
                //Check that functions are available
                if (!$ntlm_client->initialize($temp)) {
                    $this->setError($temp->error);
                    $this->edebug(
                        'You need to enable some modules in your php.ini file: '
                        . $this->error['error'],
                        self::DEBUG_CLIENT
                    );
                    return false;
                }
                //msg1
                $msg1 = $ntlm_client->typeMsg1($realm, $workstation); //msg1

                if (!$this->sendCommand(
                    'AUTH NTLM',
                    'AUTH NTLM ' . base64_encode($msg1),
                    334
                )
                ) {
                    return false;
                }
                //Though 0 based, there is a white space after the 3 digit number
                //msg2
                $challenge = substr($this->last_reply, 3);
                $challenge = base64_decode($challenge);
                $ntlm_res = $ntlm_client->NTLMResponse(
                    substr($challenge, 24, 8),
                    $password
                );
                //msg3
                $msg3 = $ntlm_client->typeMsg3(
                    $ntlm_res,
                    $username,
                    $realm,
                    $workstation
                );
                // send encoded username
                return $this->sendCommand('Username', base64_encode($msg3), 235);
            case 'CRAM-MD5':
                // Start authentication
                if (!$this->sendCommand('AUTH CRAM-MD5', 'AUTH CRAM-MD5', 334)) {
                    return false;
                }
                // Get the challenge
                $challenge = base64_decode(substr($this->last_reply, 4));

                // Build the response
                $response = $username . ' ' . $this->hmac($challenge, $password);

                // send encoded credentials
                return $this->sendCommand('Username', base64_encode($response), 235);
            default:
                $this->setError("Authentication method \"$authtype\" is not supported");
                return false;
        }
        return true;
    }

    /**
     * Calculate an MD5 HMAC hash.
     * Works like hash_hmac('md5', $data, $key)
     * in case that function is not available
     * @param string $data The data to hash
     * @param string $key  The key to hash with
     * @access protected
     * @return string
     */
    protected function hmac($data, $key)
    {
        if (function_exists('hash_hmac')) {
            return hash_hmac('md5', $data, $key);
        }

        // The following borrowed from
        // http://php.net/manual/en/function.mhash.php#27225

        // RFC 2104 HMAC implementation for php.
        // Creates an md5 HMAC.
        // Eliminates the need to install mhash to compute a HMAC
        // by Lance Rushing

        $bytelen = 64; // byte length for md5
        if (strlen($key) > $bytelen) {
            $key = pack('H*', md5($key));
        }
        $key = str_pad($key, $bytelen, chr(0x00));
        $ipad = str_pad('', $bytelen, chr(0x36));
        $opad = str_pad('', $bytelen, chr(0x5c));
        $k_ipad = $key ^ $ipad;
        $k_opad = $key ^ $opad;

        return md5($k_opad . pack('H*', md5($k_ipad . $data)));
    }

    /**
     * Check connection state.
     * @access public
     * @return boolean True if connected.
     */
    public function connected()
    {
        if (is_resource($this->smtp_conn)) {
            $sock_status = stream_get_meta_data($this->smtp_conn);
            if ($sock_status['eof']) {
                // The socket is valid but we are not connected
                $this->edebug(
                    'SMTP NOTICE: EOF caught while checking if connected',
                    self::DEBUG_CLIENT
                );
                $this->close();
                return false;
            }
            return true; // everything looks good
        }
        return false;
    }

    /**
     * Close the socket and clean up the state of the class.
     * Don't use this function without first trying to use QUIT.
     * @see quit()
     * @access public
     * @return void
     */
    public function close()
    {
        $this->setError('');
        $this->server_caps = null;
        $this->helo_rply = null;
        if (is_resource($this->smtp_conn)) {
            // close the connection and cleanup
            fclose($this->smtp_conn);
            $this->smtp_conn = null; //Makes for cleaner serialization
            $this->edebug('Connection: closed', self::DEBUG_CONNECTION);
        }
    }

    /**
     * Send an SMTP DATA command.
     * Issues a data command and sends the msg_data to the server,
     * finializing the mail transaction. $msg_data is the message
     * that is to be send with the headers. Each header needs to be
     * on a single line followed by a <CRLF> with the message headers
     * and the message body being separated by and additional <CRLF>.
     * Implements rfc 821: DATA <CRLF>
     * @param string $msg_data Message data to send
     * @access public
     * @return boolean
     */
    public function data($msg_data)
    {
        //This will use the standard timelimit
        if (!$this->sendCommand('DATA', 'DATA', 354)) {
            return false;
        }

        /* The server is ready to accept data!
         * According to rfc821 we should not send more than 1000 characters on a single line (including the CRLF)
         * so we will break the data up into lines by \r and/or \n then if needed we will break each of those into
         * smaller lines to fit within the limit.
         * We will also look for lines that start with a '.' and prepend an additional '.'.
         * NOTE: this does not count towards line-length limit.
         */

        // Normalize line breaks before exploding
        $lines = explode("\n", str_replace(array("\r\n", "\r"), "\n", $msg_data));

        /* To distinguish between a complete RFC822 message and a plain message body, we check if the first field
         * of the first line (':' separated) does not contain a space then it _should_ be a header and we will
         * process all lines before a blank line as headers.
         */

        $field = substr($lines[0], 0, strpos($lines[0], ':'));
        $in_headers = false;
        if (!empty($field) && strpos($field, ' ') === false) {
            $in_headers = true;
        }

        foreach ($lines as $line) {
            $lines_out = array();
            if ($in_headers and $line == '') {
                $in_headers = false;
            }
            //Break this line up into several smaller lines if it's too long
            //Micro-optimisation: isset($str[$len]) is faster than (strlen($str) > $len),
            while (isset($line[self::MAX_LINE_LENGTH])) {
                //Working backwards, try to find a space within the last MAX_LINE_LENGTH chars of the line to break on
                //so as to avoid breaking in the middle of a word
                $pos = strrpos(substr($line, 0, self::MAX_LINE_LENGTH), ' ');
                //Deliberately matches both false and 0
                if (!$pos) {
                    //No nice break found, add a hard break
                    $pos = self::MAX_LINE_LENGTH - 1;
                    $lines_out[] = substr($line, 0, $pos);
                    $line = substr($line, $pos);
                } else {
                    //Break at the found point
                    $lines_out[] = substr($line, 0, $pos);
                    //Move along by the amount we dealt with
                    $line = substr($line, $pos + 1);
                }
                //If processing headers add a LWSP-char to the front of new line RFC822 section 3.1.1
                if ($in_headers) {
                    $line = "\t" . $line;
                }
            }
            $lines_out[] = $line;

            //Send the lines to the server
            foreach ($lines_out as $line_out) {
                //RFC2821 section 4.5.2
                if (!empty($line_out) and $line_out[0] == '.') {
                    $line_out = '.' . $line_out;
                }
                $this->client_send($line_out . self::CRLF);
            }
        }

        //Message data has been sent, complete the command
        //Increase timelimit for end of DATA command
        $savetimelimit = $this->Timelimit;
        $this->Timelimit = $this->Timelimit * 2;
        $result = $this->sendCommand('DATA END', '.', 250);
        //Restore timelimit
        $this->Timelimit = $savetimelimit;
        return $result;
    }

    /**
     * Send an SMTP HELO or EHLO command.
     * Used to identify the sending server to the receiving server.
     * This makes sure that client and server are in a known state.
     * Implements RFC 821: HELO <SP> <domain> <CRLF>
     * and RFC 2821 EHLO.
     * @param string $host The host name or IP to connect to
     * @access public
     * @return boolean
     */
    public function hello($host = '')
    {
        //Try extended hello first (RFC 2821)
        return (boolean)($this->sendHello('EHLO', $host) or $this->sendHello('HELO', $host));
    }

    /**
     * Send an SMTP HELO or EHLO command.
     * Low-level implementation used by hello()
     * @see hello()
     * @param string $hello The HELO string
     * @param string $host The hostname to say we are
     * @access protected
     * @return boolean
     */
    protected function sendHello($hello, $host)
    {
        $noerror = $this->sendCommand($hello, $hello . ' ' . $host, 250);
        $this->helo_rply = $this->last_reply;
        if ($noerror) {
            $this->parseHelloFields($hello);
        } else {
            $this->server_caps = null;
        }
        return $noerror;
    }

    /**
     * Parse a reply to HELO/EHLO command to discover server extensions.
     * In case of HELO, the only parameter that can be discovered is a server name.
     * @access protected
     * @param string $type - 'HELO' or 'EHLO'
     */
    protected function parseHelloFields($type)
    {
        $this->server_caps = array();
        $lines = explode("\n", $this->helo_rply);

        foreach ($lines as $n => $s) {
            //First 4 chars contain response code followed by - or space
            $s = trim(substr($s, 4));
            if (empty($s)) {
                continue;
            }
            $fields = explode(' ', $s);
            if (!empty($fields)) {
                if (!$n) {
                    $name = $type;
                    $fields = $fields[0];
                } else {
                    $name = array_shift($fields);
                    switch ($name) {
                        case 'SIZE':
                            $fields = ($fields ? $fields[0] : 0);
                            break;
                        case 'AUTH':
                            if (!is_array($fields)) {
                                $fields = array();
                            }
                            break;
                        default:
                            $fields = true;
                    }
                }
                $this->server_caps[$name] = $fields;
            }
        }
    }

    /**
     * Send an SMTP MAIL command.
     * Starts a mail transaction from the email address specified in
     * $from. Returns true if successful or false otherwise. If True
     * the mail transaction is started and then one or more recipient
     * commands may be called followed by a data command.
     * Implements rfc 821: MAIL <SP> FROM:<reverse-path> <CRLF>
     * @param string $from Source address of this message
     * @access public
     * @return boolean
     */
    public function mail($from)
    {
        $useVerp = ($this->do_verp ? ' XVERP' : '');
        return $this->sendCommand(
            'MAIL FROM',
            'MAIL FROM:<' . $from . '>' . $useVerp,
            250
        );
    }

    /**
     * Send an SMTP QUIT command.
     * Closes the socket if there is no error or the $close_on_error argument is true.
     * Implements from rfc 821: QUIT <CRLF>
     * @param boolean $close_on_error Should the connection close if an error occurs?
     * @access public
     * @return boolean
     */
    public function quit($close_on_error = true)
    {
        $noerror = $this->sendCommand('QUIT', 'QUIT', 221);
        $err = $this->error; //Save any error
        if ($noerror or $close_on_error) {
            $this->close();
            $this->error = $err; //Restore any error from the quit command
        }
        return $noerror;
    }

    /**
     * Send an SMTP RCPT command.
     * Sets the TO argument to $toaddr.
     * Returns true if the recipient was accepted false if it was rejected.
     * Implements from rfc 821: RCPT <SP> TO:<forward-path> <CRLF>
     * @param string $address The address the message is being sent to
     * @access public
     * @return boolean
     */
    public function recipient($address)
    {
        return $this->sendCommand(
            'RCPT TO',
            'RCPT TO:<' . $address . '>',
            array(250, 251)
        );
    }

    /**
     * Send an SMTP RSET command.
     * Abort any transaction that is currently in progress.
     * Implements rfc 821: RSET <CRLF>
     * @access public
     * @return boolean True on success.
     */
    public function reset()
    {
        return $this->sendCommand('RSET', 'RSET', 250);
    }

    /**
     * Send a command to an SMTP server and check its return code.
     * @param string $command The command name - not sent to the server
     * @param string $commandstring The actual command to send
     * @param integer|array $expect One or more expected integer success codes
     * @access protected
     * @return boolean True on success.
     */
    protected function sendCommand($command, $commandstring, $expect)
    {
        if (!$this->connected()) {
            $this->setError("Called $command without being connected");
            return false;
        }
        //Reject line breaks in all commands
        if (strpos($commandstring, "\n") !== false or strpos($commandstring, "\r") !== false) {
            $this->setError("Command '$command' contained line breaks");
            return false;
        }
        $this->client_send($commandstring . self::CRLF);

        $this->last_reply = $this->get_lines();
        // Fetch SMTP code and possible error code explanation
        $matches = array();
        if (preg_match("/^([0-9]{3})[ -](?:([0-9]\\.[0-9]\\.[0-9]) )?/", $this->last_reply, $matches)) {
            $code = $matches[1];
            $code_ex = (count($matches) > 2 ? $matches[2] : null);
            // Cut off error code from each response line
            $detail = preg_replace(
                "/{$code}[ -]".($code_ex ? str_replace('.', '\\.', $code_ex).' ' : '')."/m",
                '',
                $this->last_reply
            );
        } else {
            // Fall back to simple parsing if regex fails
            $code = substr($this->last_reply, 0, 3);
            $code_ex = null;
            $detail = substr($this->last_reply, 4);
        }

        $this->edebug('SERVER -> CLIENT: ' . $this->last_reply, self::DEBUG_SERVER);

        if (!in_array($code, (array)$expect)) {
            $this->setError(
                "$command command failed",
                $detail,
                $code,
                $code_ex
            );
            $this->edebug(
                'SMTP ERROR: ' . $this->error['error'] . ': ' . $this->last_reply,
                self::DEBUG_CLIENT
            );
            return false;
        }

        $this->setError('');
        return true;
    }

    /**
     * Send an SMTP SAML command.
     * Starts a mail transaction from the email address specified in $from.
     * Returns true if successful or false otherwise. If True
     * the mail transaction is started and then one or more recipient
     * commands may be called followed by a data command. This command
     * will send the message to the users terminal if they are logged
     * in and send them an email.
     * Implements rfc 821: SAML <SP> FROM:<reverse-path> <CRLF>
     * @param string $from The address the message is from
     * @access public
     * @return boolean
     */
    public function sendAndMail($from)
    {
        return $this->sendCommand('SAML', "SAML FROM:$from", 250);
    }

    /**
     * Send an SMTP VRFY command.
     * @param string $name The name to verify
     * @access public
     * @return boolean
     */
    public function verify($name)
    {
        return $this->sendCommand('VRFY', "VRFY $name", array(250, 251));
    }

    /**
     * Send an SMTP NOOP command.
     * Used to keep keep-alives alive, doesn't actually do anything
     * @access public
     * @return boolean
     */
    public function noop()
    {
        return $this->sendCommand('NOOP', 'NOOP', 250);
    }

    /**
     * Send an SMTP TURN command.
     * This is an optional command for SMTP that this class does not support.
     * This method is here to make the RFC821 Definition complete for this class
     * and _may_ be implemented in future
     * Implements from rfc 821: TURN <CRLF>
     * @access public
     * @return boolean
     */
    public function turn()
    {
        $this->setError('The SMTP TURN command is not implemented');
        $this->edebug('SMTP NOTICE: ' . $this->error['error'], self::DEBUG_CLIENT);
        return false;
    }

    /**
     * Send raw data to the server.
     * @param string $data The data to send
     * @access public
     * @return integer|boolean The number of bytes sent to the server or false on error
     */
    public function client_send($data)
    {
		if ($this->do_debug > 1) {
			$this->edebug("CLIENT -> SERVER: $data", self::DEBUG_CLIENT);
		}
        return fwrite($this->smtp_conn, $data);
    }

    /**
     * Get the latest error.
     * @access public
     * @return array
     */
    public function getError()
    {
        return $this->error;
    }

    /**
     * Get SMTP extensions available on the server
     * @access public
     * @return array|null
     */
    public function getServerExtList()
    {
        return $this->server_caps;
    }

    /**
     * A multipurpose method
     * The method works in three ways, dependent on argument value and current state
     *   1. HELO/EHLO was not sent - returns null and set up $this->error
     *   2. HELO was sent
     *     $name = 'HELO': returns server name
     *     $name = 'EHLO': returns boolean false
     *     $name = any string: returns null and set up $this->error
     *   3. EHLO was sent
     *     $name = 'HELO'|'EHLO': returns server name
     *     $name = any string: if extension $name exists, returns boolean True
     *       or its options. Otherwise returns boolean False
     * In other words, one can use this method to detect 3 conditions:
     *  - null returned: handshake was not or we don't know about ext (refer to $this->error)
     *  - false returned: the requested feature exactly not exists
     *  - positive value returned: the requested feature exists
     * @param string $name Name of SMTP extension or 'HELO'|'EHLO'
     * @return mixed
     */
    public function getServerExt($name)
    {
        if (!$this->server_caps) {
            $this->setError('No HELO/EHLO was sent');
            return null;
        }

        // the tight logic knot ;)
        if (!array_key_exists($name, $this->server_caps)) {
            if ($name == 'HELO') {
                return $this->server_caps['EHLO'];
            }
            if ($name == 'EHLO' || array_key_exists('EHLO', $this->server_caps)) {
                return false;
            }
            $this->setError('HELO handshake was used. Client knows nothing about server extensions');
            return null;
        }

        return $this->server_caps[$name];
    }

    /**
     * Get the last reply from the server.
     * @access public
     * @return string
     */
    public function getLastReply()
    {
        return $this->last_reply;
    }

    /**
     * Read the SMTP server's response.
     * Either before eof or socket timeout occurs on the operation.
     * With SMTP we can tell if we have more lines to read if the
     * 4th character is '-' symbol. If it is a space then we don't
     * need to read anything else.
     * @access protected
     * @return string
     */
    protected function get_lines()
    {
        // If the connection is bad, give up straight away
        if (!is_resource($this->smtp_conn)) {
            return '';
        }
        $data = '';
        $endtime = 0;
        stream_set_timeout($this->smtp_conn, $this->Timeout);
        if ($this->Timelimit > 0) {
            $endtime = time() + $this->Timelimit;
        }
        do {
            $str = @fgets($this->smtp_conn, 515);
            $this->edebug("SMTP -> get_lines(): \$data is \"$data\"", self::DEBUG_LOWLEVEL);
            $this->edebug("SMTP -> get_lines(): \$str is  \"$str\"", self::DEBUG_LOWLEVEL);
            $data .= $str;
            // If 4th character is a space, we are done reading, break the loop, micro-optimisation over strlen
            if ((isset($str[3]) and $str[3] == ' ')) {
                break;
            }
            // Timed-out? Log and break
            $info = stream_get_meta_data($this->smtp_conn);
            if ($info['timed_out']) {
                $this->edebug(
                    'SMTP -> get_lines(): timed-out (' . $this->Timeout . ' sec)',
                    self::DEBUG_LOWLEVEL
                );
                break;
            }
            // Now check if reads took too long
            if ($endtime and time() > $endtime) {
                $this->edebug(
                    'SMTP -> get_lines(): timelimit reached ('.
                    $this->Timelimit . ' sec)',
                    self::DEBUG_LOWLEVEL
                );
                break;
            }
        } while(is_resource($this->smtp_conn) && !feof($this->smtp_conn));
        return $data;
    }

    /**
     * Enable or disable VERP address generation.
     * @param boolean $enabled
     */
    public function setVerp($enabled = false)
    {
        $this->do_verp = $enabled;
    }

    /**
     * Get VERP address generation mode.
     * @return boolean
     */
    public function getVerp()
    {
        return $this->do_verp;
    }

    /**
     * Set error messages and codes.
     * @param string $message The error message
     * @param string $detail Further detail on the error
     * @param string $smtp_code An associated SMTP error code
     * @param string $smtp_code_ex Extended SMTP code
     */
    protected function setError($message, $detail = '', $smtp_code = '', $smtp_code_ex = '')
    {
        $this->error = array(
            'error' => $message,
            'detail' => $detail,
            'smtp_code' => $smtp_code,
            'smtp_code_ex' => $smtp_code_ex
        );
    }

    /**
     * Set debug output method.
     * @param string|callable $method The name of the mechanism to use for debugging output, or a callable to handle it.
     */
    public function setDebugOutput($method = 'echo')
    {
        $this->Debugoutput = $method;
    }

    /**
     * Get debug output method.
     * @return string
     */
    public function getDebugOutput()
    {
        return $this->Debugoutput;
    }

    /**
     * Set debug output level.
     * @param integer $level
     */
    public function setDebugLevel($level = 0)
    {
        $this->do_debug = $level;
    }

    /**
     * Get debug output level.
     * @return integer
     */
    public function getDebugLevel()
    {
        return $this->do_debug;
    }

    /**
     * Set SMTP timeout.
     * @param integer $timeout
     */
    public function setTimeout($timeout = 0)
    {
        $this->Timeout = $timeout;
    }

    /**
     * Get SMTP timeout.
     * @return integer
     */
    public function getTimeout()
    {
        return $this->Timeout;
    }
	
	/**
     * Reports an error number and string.
     * @param integer $errno The error number returned by PHP.
     * @param string $errmsg The error message returned by PHP.
     */
    protected function errorHandler($errno, $errmsg)
    {
        $notice = 'Connection: Failed to connect to server.';
        $this->setError(
            $notice,
            $errno,
            $errmsg
        );
        $this->edebug(
            $notice . ' Error number ' . $errno . '. "Error notice: ' . $errmsg,
            self::DEBUG_CONNECTION
        );
    }

	/**
	 * Will return the ID of the last smtp transaction based on a list of patterns provided
	 * in SMTP::$smtp_transaction_id_patterns.
	 * If no reply has been received yet, it will return null.
	 * If no pattern has been matched, it will return false.
	 * @return bool|null|string
	 */
	public function getLastTransactionID()
	{
		$reply = $this->getLastReply();

		if (empty($reply)) {
			return null;
		}

		foreach($this->smtp_transaction_id_patterns as $smtp_transaction_id_pattern) {
			if(preg_match($smtp_transaction_id_pattern, $reply, $matches)) {
				return $matches[1];
			}
		}

		return false;
    }
}
inc/phpmailer/class.elasticemail.php000060400000013715152455302720013557 0ustar00<?php

acymailing_cmsLoaded();


/**
 * @copyright	Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..
 * @license		GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
class acymailingElasticemail {
	/**
	 * Ressources : Connection to the elasticemail server
	 */
	var $conn;

	/**
	 * String : Last error...
	 */
	var $error;
	var $Username = '';
	var $Password = '';

	/* Upload Function which uploads the file selected and return a part of the response.
	 * The return value is the file's ID on ElasticEmail server.
	 */
	private function uploadAttachment($filepath, $filename) {
		if (!empty ($this->attachment[$filepath])) return $this->attachment[$filepath];

		$data = file_get_contents($filepath);
		$header = "PUT /attachments/upload?username=".urlencode($this->Username)."&api_key=".urlencode($this->Password)."&file=".urlencode($filename)." HTTP/1.0\r\n";
		$header .= "Host: api.elasticemail.com\r\n";
		$header .= "Connection: Keep-alive\r\n";
		$header .= "Content-Length: ".strlen($data)."\r\n\r\n";
		$info = $header.$data;
		$result = $this->sendinfo($info);
		//We take the last value of the server's response which correspond of the file's ID.
		$explodedResult = explode("\r\n", $result);
		$res = end($explodedResult);
		//If the ID is correct and we have no Errors
		if(preg_match('#[^a-z0-9\-]#i',$res) || strpos($result,'200 OK') === false){
			$this->error = "Error while uploading file : ".$res;
			return false;
		}else{
			$this->attachment[$filepath] = $res;
			return $res;
		}
	}

	/* Function which permit to send an email based on the object's values.
	 * First, we do the test if we have enough credit to send emails.
	 */
	function sendMail(& $object) {
		if(!$this->connect()) return false;

		$data = "username=".urlencode($this->Username);
		$data .= "&api_key=".urlencode($this->Password);
		$data .= "&referral=".urlencode('2f0447bb-173a-459d-ab1a-ab8cbebb9aab');
		if(!empty($object->From)) $data .= "&from=".urlencode($object->From);
		if(!empty($object->FromName)) $data .= "&from_name=".urlencode($object->FromName);

		$to = array_merge($object->to, $object->cc, $object->bcc);
		$data .="&to=";
		foreach($to as $oneRecipient){
			$data .= urlencode($object->addrFormat($oneRecipient).";");
		}
		$data = trim($data,';');

		if(!empty($object->Subject)) $data .= "&subject=".urlencode($object->Subject);

		if(!empty($object->ReplyTo)){
			$replyToTmp = reset($object->ReplyTo);
			$data .="&reply_to=".urlencode($replyToTmp[0]);
			if(!empty($replyToTmp[1])) $data .= "&reply_to_name=".urlencode($replyToTmp[1]);
		}

		if(!empty($object->Sender)) $data .="&sender=".urlencode($object->Sender);


		//Do we have special headers?
		if(!empty($object->CustomHeader)){
			$i = 1;
			foreach($object->CustomHeader as $oneHeader){
				$data .= "&header".$i."=".urlencode($oneHeader[0]).': '.urlencode($oneHeader[1]);
				$i++;
			}
		}

		//We set only quoted printable as others may not work with DKIM
		if($object->Encoding == 'quoted-printable'){
			$data .= "&encodingtype=3";
		}

		if(!empty($object->sendHTML) || !empty($object->AltBody)){
			$data .= "&body_html=".urlencode($object->Body);
			if(!empty($object->AltBody)) $data .= "&body_text=".urlencode($object->AltBody);
		}else{
			$data .= "&body_text=".urlencode($object->Body);
		}

		if($object->attachment) {
			$ArrayID = array ();
			foreach ($object->attachment as $oneAttachment) {
				$oneID = $this->uploadAttachment($oneAttachment[0], $oneAttachment[2]);
				if (!$oneID)
					return false;
				$ArrayID[]=$oneID;
			}
			$data .= "&attachments=".urlencode(implode(";", $ArrayID));
		}

		if(!empty($object->mailid)) $data .= "&channel=".urlencode($object->mailid);
		if(!empty($object->type) && strpos($object->type, 'notification') !== false) $data .= '&isTransactional=1';

		$header = "POST /mailer/send HTTP/1.0\r\n";
		$header .= "Host: api.elasticemail.com\r\n";
		$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
		$header .= "Connection: Keep-Alive\r\n";
		$header .= "Content-Length: ".strlen($data)."\r\n\r\n";
		$info = $header.$data;
		$result = $this->sendinfo($info);

		//We take the last value of the server's response which correspond of the file's ID.
		$explodedVar = explode("\r\n", $result);
		$res = end($explodedVar);

		//If the ID is correct and we have no Errors
		if(strpos($result,'200 OK') === false || preg_match('#[^a-z0-9\-]#i',$res)){
			$this->error = $res;
			return false;
		} else {
			return true;
		}
	}

	function getCredits($object) {
		$header = "GET /mailer/account-details?username=".urlencode($this->Username)."&api_key=".urlencode($this->Password)." HTTP/1.0\r\n";
		$header .= "Host: api.elasticemail.com\r\n";
		$header .= "Connection: Close\r\n\r\n";
		$result = $this->sendinfo($header);
		if(!$result) return false;

		if(preg_match('#<credit>(.*)</credit>#Ui', $result, $explodedResults)) {
			return $explodedResults[1];
		}else{
			$this->error = $result;
			return false;
		}
	}

	private function connect() {
		if(is_resource($this->conn)) return true;

		$this->conn = fsockopen('ssl://api.elasticemail.com', 443, $errno, $errstr, 20);
		if(!$this->conn){
			$this->error = "Could not open connection ".$errstr;
			return false;
		}
		return true;
	}

	private function sendinfo(&$info){
		//Check if the connection is Ok... and if not we return false.
		if(!$this->connect()) return false;

		$res = '';
		$length = 0;
		ob_start();
		$result = fwrite($this->conn, $info);
		$errorContent = ob_get_clean();
		if($result === false) return $errorContent;

		while(!feof($this->conn)){
			$res .= fread($this->conn, 1024);
			if(substr($res, 0, 4) == "HTTP") {
				$length = 0;
			}
			if($length == 0) {
				$pos = strpos(strtolower($res), 'content-length:');
				if ($pos !== false) {
					$lng = substr($res, $pos +16, 6);
					if (strpos($lng, "\r") !== false) {
						$length = (int) $lng;
						$length += $pos;
					}
				}
			}
			if($length > 0 && strlen($res) >= $length) break;
		}
		return $res;
	}

	function __destruct() {
		if (is_resource($this->conn)) fclose($this->conn);
	}
}inc/phpmailer/LICENSE000060400000064453152455302720010320 0ustar00		  GNU LESSER GENERAL PUBLIC LICENSE
		       Version 2.1, February 1999

 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

[This is the first released version of the Lesser GPL.  It also counts
 as the successor of the GNU Library Public License, version 2, hence
 the version number 2.1.]

			    Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.

  This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it.  You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.

  When we speak of free software, we are referring to freedom of use,
not price.  Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.

  To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights.  These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.

  For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you.  You must make sure that they, too, receive or can get the source
code.  If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it.  And you must show them these terms so they know their rights.

  We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.

  To protect each distributor, we want to make it very clear that
there is no warranty for the free library.  Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.

  Finally, software patents pose a constant threat to the existence of
any free program.  We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder.  Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.

  Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License.  This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License.  We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.

  When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library.  The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom.  The Lesser General
Public License permits more lax criteria for linking other code with
the library.

  We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License.  It also provides other free software developers Less
of an advantage over competing non-free programs.  These disadvantages
are the reason we use the ordinary General Public License for many
libraries.  However, the Lesser license provides advantages in certain
special circumstances.

  For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard.  To achieve this, non-free programs must be
allowed to use the library.  A more frequent case is that a free
library does the same job as widely used non-free libraries.  In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.

  In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software.  For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.

  Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.

  The precise terms and conditions for copying, distribution and
modification follow.  Pay close attention to the difference between a
"work based on the library" and a "work that uses the library".  The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.

		  GNU LESSER GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".

  A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.

  The "Library", below, refers to any such software library or work
which has been distributed under these terms.  A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language.  (Hereinafter, translation is
included without limitation in the term "modification".)

  "Source code" for a work means the preferred form of the work for
making modifications to it.  For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.

  Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it).  Whether that is true depends on what the Library does
and what the program that uses the Library does.
  
  1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.

  You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.

  2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) The modified work must itself be a software library.

    b) You must cause the files modified to carry prominent notices
    stating that you changed the files and the date of any change.

    c) You must cause the whole of the work to be licensed at no
    charge to all third parties under the terms of this License.

    d) If a facility in the modified Library refers to a function or a
    table of data to be supplied by an application program that uses
    the facility, other than as an argument passed when the facility
    is invoked, then you must make a good faith effort to ensure that,
    in the event an application does not supply such function or
    table, the facility still operates, and performs whatever part of
    its purpose remains meaningful.

    (For example, a function in a library to compute square roots has
    a purpose that is entirely well-defined independent of the
    application.  Therefore, Subsection 2d requires that any
    application-supplied function or table used by this function must
    be optional: if the application does not supply it, the square
    root function must still compute square roots.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.

In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library.  To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License.  (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.)  Do not make any other change in
these notices.

  Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.

  This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.

  4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.

  If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.

  5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library".  Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.

  However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library".  The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.

  When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library.  The
threshold for this to be true is not precisely defined by law.

  If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work.  (Executables containing this object code plus portions of the
Library will still fall under Section 6.)

  Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.

  6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.

  You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License.  You must supply a copy of this License.  If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License.  Also, you must do one
of these things:

    a) Accompany the work with the complete corresponding
    machine-readable source code for the Library including whatever
    changes were used in the work (which must be distributed under
    Sections 1 and 2 above); and, if the work is an executable linked
    with the Library, with the complete machine-readable "work that
    uses the Library", as object code and/or source code, so that the
    user can modify the Library and then relink to produce a modified
    executable containing the modified Library.  (It is understood
    that the user who changes the contents of definitions files in the
    Library will not necessarily be able to recompile the application
    to use the modified definitions.)

    b) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (1) uses at run time a
    copy of the library already present on the user's computer system,
    rather than copying library functions into the executable, and (2)
    will operate properly with a modified version of the library, if
    the user installs one, as long as the modified version is
    interface-compatible with the version that the work was made with.

    c) Accompany the work with a written offer, valid for at
    least three years, to give the same user the materials
    specified in Subsection 6a, above, for a charge no more
    than the cost of performing this distribution.

    d) If distribution of the work is made by offering access to copy
    from a designated place, offer equivalent access to copy the above
    specified materials from the same place.

    e) Verify that the user has already received a copy of these
    materials or that you have already sent this user a copy.

  For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it.  However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.

  It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system.  Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.

  7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:

    a) Accompany the combined library with a copy of the same work
    based on the Library, uncombined with any other library
    facilities.  This must be distributed under the terms of the
    Sections above.

    b) Give prominent notice with the combined library of the fact
    that part of it is a work based on the Library, and explaining
    where to find the accompanying uncombined form of the same work.

  8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License.  Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License.  However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.

  9. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Library or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.

  10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.

  11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all.  For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.

If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded.  In such case, this License incorporates the limitation as if
written in the body of this License.

  13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number.  If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation.  If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.

  14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission.  For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this.  Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.

			    NO WARRANTY

  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.

		     END OF TERMS AND CONDITIONS

           How to Apply These Terms to Your New Libraries

  If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change.  You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).

  To apply these terms, attach the following notices to the library.  It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.

    <one line to give the library's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

Also add information on how to contact you by electronic and paper mail.

You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary.  Here is a sample; alter the names:

  Yoyodyne, Inc., hereby disclaims all copyright interest in the
  library `Frob' (a library for tweaking knobs) written by James Random Hacker.

  <signature of Ty Coon>, 1 April 1990
  Ty Coon, President of Vice

That's all there is to it!

inc/phpmailer/extras/ntlm_sasl_client.php000060400000014773152455302720014664 0ustar00<?php
/*
 * ntlm_sasl_client.php
 *
 * @(#) $Id: ntlm_sasl_client.php,v 1.3 2004/11/17 08:00:37 mlemos Exp $
 *
 */

define("SASL_NTLM_STATE_START", 0);
define("SASL_NTLM_STATE_IDENTIFY_DOMAIN", 1);
define("SASL_NTLM_STATE_RESPOND_CHALLENGE", 2);
define("SASL_NTLM_STATE_DONE", 3);
define("SASL_FAIL", -1);
define("SASL_CONTINUE", 1);

class ntlm_sasl_client_class
{
    public $credentials = array();
    public $state = SASL_NTLM_STATE_START;

    public function initialize(&$client)
    {
        if (!function_exists($function = "mcrypt_encrypt")
            || !function_exists($function = "mhash")
        ) {
            $extensions = array(
                "mcrypt_encrypt" => "mcrypt",
                "mhash" => "mhash"
            );
            $client->error = "the extension " . $extensions[$function] .
                " required by the NTLM SASL client class is not available in this PHP configuration";
            return (0);
        }
        return (1);
    }

    public function ASCIIToUnicode($ascii)
    {
        for ($unicode = "", $a = 0; $a < strlen($ascii); $a++) {
            $unicode .= substr($ascii, $a, 1) . chr(0);
        }
        return ($unicode);
    }

    public function typeMsg1($domain, $workstation)
    {
        $domain_length = strlen($domain);
        $workstation_length = strlen($workstation);
        $workstation_offset = 32;
        $domain_offset = $workstation_offset + $workstation_length;
        return (
            "NTLMSSP\0" .
            "\x01\x00\x00\x00" .
            "\x07\x32\x00\x00" .
            pack("v", $domain_length) .
            pack("v", $domain_length) .
            pack("V", $domain_offset) .
            pack("v", $workstation_length) .
            pack("v", $workstation_length) .
            pack("V", $workstation_offset) .
            $workstation .
            $domain
        );
    }

    public function NTLMResponse($challenge, $password)
    {
        $unicode = $this->ASCIIToUnicode($password);
        $md4 = mhash(MHASH_MD4, $unicode);
        $padded = $md4 . str_repeat(chr(0), 21 - strlen($md4));
        $iv_size = mcrypt_get_iv_size(MCRYPT_DES, MCRYPT_MODE_ECB);
        $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
        for ($response = "", $third = 0; $third < 21; $third += 7) {
            for ($packed = "", $p = $third; $p < $third + 7; $p++) {
                $packed .= str_pad(decbin(ord(substr($padded, $p, 1))), 8, "0", STR_PAD_LEFT);
            }
            for ($key = "", $p = 0; $p < strlen($packed); $p += 7) {
                $s = substr($packed, $p, 7);
                $b = $s . ((substr_count($s, "1") % 2) ? "0" : "1");
                $key .= chr(bindec($b));
            }
            $ciphertext = mcrypt_encrypt(MCRYPT_DES, $key, $challenge, MCRYPT_MODE_ECB, $iv);
            $response .= $ciphertext;
        }
        return $response;
    }

    public function typeMsg3($ntlm_response, $user, $domain, $workstation)
    {
        $domain_unicode = $this->ASCIIToUnicode($domain);
        $domain_length = strlen($domain_unicode);
        $domain_offset = 64;
        $user_unicode = $this->ASCIIToUnicode($user);
        $user_length = strlen($user_unicode);
        $user_offset = $domain_offset + $domain_length;
        $workstation_unicode = $this->ASCIIToUnicode($workstation);
        $workstation_length = strlen($workstation_unicode);
        $workstation_offset = $user_offset + $user_length;
        $lm = "";
        $lm_length = strlen($lm);
        $lm_offset = $workstation_offset + $workstation_length;
        $ntlm = $ntlm_response;
        $ntlm_length = strlen($ntlm);
        $ntlm_offset = $lm_offset + $lm_length;
        $session = "";
        $session_length = strlen($session);
        $session_offset = $ntlm_offset + $ntlm_length;
        return (
            "NTLMSSP\0" .
            "\x03\x00\x00\x00" .
            pack("v", $lm_length) .
            pack("v", $lm_length) .
            pack("V", $lm_offset) .
            pack("v", $ntlm_length) .
            pack("v", $ntlm_length) .
            pack("V", $ntlm_offset) .
            pack("v", $domain_length) .
            pack("v", $domain_length) .
            pack("V", $domain_offset) .
            pack("v", $user_length) .
            pack("v", $user_length) .
            pack("V", $user_offset) .
            pack("v", $workstation_length) .
            pack("v", $workstation_length) .
            pack("V", $workstation_offset) .
            pack("v", $session_length) .
            pack("v", $session_length) .
            pack("V", $session_offset) .
            "\x01\x02\x00\x00" .
            $domain_unicode .
            $user_unicode .
            $workstation_unicode .
            $lm .
            $ntlm
        );
    }

    public function start(&$client, &$message, &$interactions)
    {
        if ($this->state != SASL_NTLM_STATE_START) {
            $client->error = "NTLM authentication state is not at the start";
            return (SASL_FAIL);
        }
        $this->credentials = array(
            "user" => "",
            "password" => "",
            "realm" => "",
            "workstation" => ""
        );
        $defaults = array();
        $status = $client->GetCredentials($this->credentials, $defaults, $interactions);
        if ($status == SASL_CONTINUE) {
            $this->state = SASL_NTLM_STATE_IDENTIFY_DOMAIN;
        }
        unset($message);
        return ($status);
    }

    public function step(&$client, $response, &$message, &$interactions)
    {
        switch ($this->state) {
            case SASL_NTLM_STATE_IDENTIFY_DOMAIN:
                $message = $this->TypeMsg1($this->credentials["realm"], $this->credentials["workstation"]);
                $this->state = SASL_NTLM_STATE_RESPOND_CHALLENGE;
                break;
            case SASL_NTLM_STATE_RESPOND_CHALLENGE:
                $ntlm_response = $this->NTLMResponse(substr($response, 24, 8), $this->credentials["password"]);
                $message = $this->TypeMsg3(
                    $ntlm_response,
                    $this->credentials["user"],
                    $this->credentials["realm"],
                    $this->credentials["workstation"]
                );
                $this->state = SASL_NTLM_STATE_DONE;
                break;
            case SASL_NTLM_STATE_DONE:
                $client->error = "NTLM authentication was finished without success";
                return (SASL_FAIL);
            default:
                $client->error = "invalid NTLM authentication step state";
                return (SASL_FAIL);
        }
        return (SASL_CONTINUE);
    }
}
inc/phpmailer/extras/index.html000060400000000054152455302720012601 0ustar00<html><body bgcolor="#FFFFFF"></body></html>inc/ipinfodb.php000060400000005501152455302720007622 0ustar00<?php
/**
 * @package	Acymailing for Joomla!
 * @version	4.0.0
 * @author	deanimaconsulting.com
 * @copyright	(C) 2009-2012 De Anima Consulting Ltd. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

acymailing_cmsLoaded();

class ipinfodbInc{
	var $errors = array();
	var $service = 'api.ipinfodb.com';
	var $version = 'v3';
	var $apiKey = '';
	var $timeout = 5;

	function setKey($key){
		if(!empty($key)) $this->apiKey = $key;
	}
	function setTimeout($key){
		if(!empty($key)) $this->timeout = $key;
	}

	function getError(){
		return implode("\n", $this->errors);
	}

	function getCountry($host){
		return $this->getResult($host, 'ip-country');
	}

	function getCity($host){
		return $this->getResult($host, 'ip-city');
	}

	function getResult($host, $name){
		$ip = @gethostbyname($host);

		if(preg_match('/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/', $ip)){
			return $this->curlRequest($ip, $name);
		}

		$this->errors[] = '"' . $host . '" is not a valid IP address or hostname.';
		return;
	}
	function curlRequest($ip, $name) {
		$qs = 'http://' . $this->service . '/' . $this->version . '/' . $name . '/' . '?ip=' . $ip . '&format=json&key=' . $this->apiKey;
		if(!function_exists('curl_init')){
			//$app->enqueueMessage('The AcyMailing geolocation plugin needs the CURL library installed but it seems that it is not available on your server. Please contact your web hosting to set it up.','error');
			$this->errors[] = 'The AcyMailing geolocation plugin needs the CURL library installed but it seems that it is not available on your server. Please contact your web hosting to set it up.';
			return false;
		}
		if(!function_exists('json_decode')){
			//$app->enqueueMessage('The AcyMailing geolocation plugin can only work with PHP 5.2 at least. Please ask your web hosting to update your PHP version','error');
			$this->errors[] = 'The AcyMailing geolocation plugin can only work with PHP 5.2 at least. Please ask your web hosting to update your PHP version';
			return false;
		}
		if (!isset($this->curl)) {
			$this->curl = curl_init();
			curl_setopt ($this->curl, CURLOPT_FAILONERROR, TRUE);
			if (@ini_get('open_basedir') == '' && @ini_get('safe_mode' == 'Off')) {
				curl_setopt ($this->curl, CURLOPT_FOLLOWLOCATION, TRUE);
			}
			curl_setopt ($this->curl, CURLOPT_RETURNTRANSFER, TRUE);
			curl_setopt ($this->curl, CURLOPT_CONNECTTIMEOUT, $this->timeout);
			curl_setopt ($this->curl, CURLOPT_TIMEOUT, $this->timeout);
		}

		curl_setopt ($this->curl, CURLOPT_URL, $qs);

		$json = curl_exec($this->curl);

		if(curl_errno($this->curl) || $json === FALSE) {
			$this->errors[] = 'cURL failed. Error: ' . curl_error($this->curl);
			//$app->enqueueMessage('cURL failed. Error: ' . $err);
			return false;
		}

		$response = json_decode($json);

		return $response;
	}
}inc/emogrifier/emogrifier.php000060400000027504152455302720012317 0ustar00<?php

acymailing_cmsLoaded();

/*
UPDATES
		2008-08-10  Fixed CSS comment stripping regex to add PCRE_DOTALL (changed from '/\/\*.*\*\//U' to '/\/\*.*\*\//sU')
		2008-08-18  Added lines instructing DOMDocument to attempt to normalize HTML before processing
		2008-10-20  Fixed bug with bad variable name... Thanks Thomas!
		2008-03-02  Added licensing terms under the MIT License
								Only remove unprocessable HTML tags if they exist in the array
		2009-06-03  Normalize existing CSS (style) attributes in the HTML before we process the CSS.
								Made it so that the display:none stripper doesn't require a trailing semi-colon.
		2009-08-13  Added support for subset class values (e.g. "p.class1.class2").
								Added better protection for bad css attributes.
								Fixed support for HTML entities.
		2009-08-17  Fixed CSS selector processing so that selectors are processed by precedence/specificity, and not just in order.
		2009-10-29  Fixed so that selectors appearing later in the CSS will have precedence over identical selectors appearing earlier.
		2009-11-04  Explicitly declared static functions static to get rid of E_STRICT notices.
		2010-05-18  Fixed bug where full url filenames with protocols wouldn't get split improperly when we explode on ':'... Thanks Mark!
								Added two new attribute selectors
		2010-06-16  Added static caching for less processing overhead in situations where multiple emogrification takes place
		2010-07-26  Fixed bug where '0' values were getting discarded because of php's empty() function... Thanks Scott!
		2010-09-03  Added checks to invisible node removal to ensure that we don't try to remove non-existent child nodes of parents that have already been deleted


*/

class acymailingEmogrifier{

	private $html = '';
	private $css = '';
	private $unprocessableHTMLTags = array('wbr');

	public function __construct($html = '', $css = ''){
		$this->html = $html;
		$this->css = $css;
	}

	public function setHTML($html = ''){ $this->html = $html; }

	public function setCSS($css = ''){ $this->css = $css; }

	// there are some HTML tags that DOMDocument cannot process, and will throw an error if it encounters them.
	// these functions allow you to add/remove them if necessary.
	// it only strips them from the code (does not remove actual nodes).
	public function addUnprocessableHTMLTag($tag){ $this->unprocessableHTMLTags[] = $tag; }

	public function removeUnprocessableHTMLTag($tag){
		if(($key = array_search($tag, $this->unprocessableHTMLTags)) !== false)
			unset($this->unprocessableHTMLTags[$key]);
	}

	public static function strtolower($matches){
		return strtolower($matches[0]);
	}

	// applies the CSS you submit to the html you submit. places the css inline
	public function emogrify(){
		$body = $this->html;
		// process the CSS here, turning the CSS style blocks into inline css
		if(count($this->unprocessableHTMLTags)){
			$unprocessableHTMLTags = implode('|', $this->unprocessableHTMLTags);
			$body = preg_replace("/<($unprocessableHTMLTags)[^>]*>/i", '', $body);
		}

		//$encoding = mb_detect_encoding($body);
		$encoding = 'UTF-8';
		$body = mb_convert_encoding($body, 'HTML-ENTITIES', $encoding);

		$xmldoc = @ new DOMDocument;
		if(!is_object($xmldoc) || !method_exists($xmldoc, 'loadHTML')) return $this->html;

		$xmldoc->encoding = $encoding;
		$xmldoc->strictErrorChecking = false;
		$xmldoc->formatOutput = true;
		//ACYBA MODIFICATION : let's avoid some warnings
		//Disable the loadHTML function errors which may crash some servers.
		if(function_exists('libxml_use_internal_errors')) libxml_use_internal_errors(true);
		@$xmldoc->loadHTML($body);
		$xmldoc->normalizeDocument();

		$xpath = new DOMXPath($xmldoc);

		// before be begin processing the CSS file, parse the document and normalize all existing CSS attributes (changes 'DISPLAY: none' to 'display: none');
		// we wouldn't have to do this if DOMXPath supported XPath 2.0.
		$nodes = @$xpath->query('//'.'*[@style]');
		if($nodes->length > 0) foreach($nodes as $node){
			$node->setAttribute('style', preg_replace_callback('/[A-z\-]+(?=\:)/S', array($this, 'strtolower'), $node->getAttribute('style')));
		}
		// get rid of css comment code
		$re_commentCSS = '/\/\*.*\*\//sU';
		$css = preg_replace($re_commentCSS, '', $this->css);

		static $csscache = array();
		$csskey = md5($css);
		if(!isset($csscache[$csskey])){

			// process the CSS file for selectors and definitions
			$re_CSS = '/^\s*([^{]+){([^}]+)}/mis';
			preg_match_all($re_CSS, $css, $matches);

			$all_selectors = array();
			foreach($matches[1] as $key => $selectorString){
				// if there is a blank definition, skip
				if(!strlen(trim($matches[2][$key]))) continue;

				// else split by commas and duplicate attributes so we can sort by selector precedence
				$selectors = explode(',', $selectorString);
				foreach($selectors as $selector){
					// don't process pseudo-classes
					if(strpos($selector, ':') !== false) continue;
					$all_selectors[] = array(
						'selector' => $selector,
						'attributes' => $matches[2][$key],
						'index' => $key, // keep track of where it appears in the file, since order is important
					);
				}
			}

			// now sort the selectors by precedence
			usort($all_selectors, array('self', 'sortBySelectorPrecedence'));

			$csscache[$csskey] = $all_selectors;
		}

		for($a = count($csscache[$csskey]) - 1; $a >= 0; $a--){

			// query the body for the xpath selector
			$nodes = @$xpath->query($this->translateCSStoXpath(trim($csscache[$csskey][$a]['selector'])));
			if(empty($nodes)) continue;

			foreach($nodes as $node){
				// if it has a style attribute, get it, process it, and append (overwrite) new stuff
				if($node->hasAttribute('style')){
					// break it up into an associative array
					$oldStyleArr = $this->cssStyleDefinitionToArray($node->getAttribute('style'));
					$newStyleArr = $this->cssStyleDefinitionToArray($csscache[$csskey][$a]['attributes']);

					// new styles overwrite the old styles (not technically accurate, but close enough)
					//Changed by Acyba, we don't overwrite the old styles, we keep them and add only the new ones
					//$combinedArr = array_merge($oldStyleArr,$newStyleArr);
					$combinedArr = array_merge($newStyleArr, $oldStyleArr);
					$style = '';
					foreach($combinedArr as $k => $v) $style .= (strtolower($k).':'.$v.';');
				}
				else{
					// otherwise create a new style
					$style = trim($csscache[$csskey][$a]['attributes']);
				}
				$node->setAttribute('style', $style);
			}
		}

		//Adrien : we don't need that... it removed display:none elements from the Newsletter, we may need them with media query
		// This removes styles from your email that contain display:none. You could comment these out if you want.
		//$nodes = $xpath->query('//'.'*[contains(translate(@style," ",""),"display:none")]');
		// the checks on parentNode and is_callable below are there to ensure that if we've deleted the parent node,
		// we don't try to call removeChild on a nonexistent child node
		//if ($nodes->length > 0) foreach ($nodes as $node) if ($node->parentNode && is_callable(array($node->parentNode,'removeChild'))) $node->parentNode->removeChild($node);

		$result = $this->fixCompatibility($xmldoc->saveHTML());
		
		// Special fix for ElasticEmail, they force their users to insert something like this:
		// <a href="{unsubscribeauto:http://link-to-your-unsubscribe-page}">Unsubscribe</a>
		// The { and } are obviously urlencoded, we should prevent it as the EE team automatically adds something ugly in the emails otherwise
		if(strpos($result, 'href="%7Bunsubscribe') !== false){
			$result = preg_replace_callback('#href="%7B(unsubscribe[^"]+)%7D([^"]*)"#Uis', array($this, 'decodeUnsubscribeTags'), $result);
		}
		return $result;
	}
	
	function decodeUnsubscribeTags($matches){
		return 'href="{'.urldecode($matches[1]).'}'.$matches[2].'"';
	}

	private static function sortBySelectorPrecedence($a, $b){
		$precedenceA = self::getCSSSelectorPrecedence($a['selector']);
		$precedenceB = self::getCSSSelectorPrecedence($b['selector']);

		// we want these sorted ascendingly so selectors with lesser precedence get processed first and
		// selectors with greater precedence get sorted last
		return ($precedenceA == $precedenceB) ? ($a['index'] < $b['index'] ? -1 : 1) : ($precedenceA < $precedenceB ? -1 : 1);
	}

	private static function getCSSSelectorPrecedence($selector){
		static $selectorcache = array();
		$selectorkey = md5($selector);
		if(!isset($selectorcache[$selectorkey])){
			$precedence = 0;
			$value = 100;
			$search = array('\#', '\.', ''); // ids: worth 100, classes: worth 10, elements: worth 1

			foreach($search as $s){
				if(trim($selector == '')) break;
				$num = 0;
				$selector = preg_replace('/'.$s.'\w+/', '', $selector, -1, $num);
				$precedence += ($value * $num);
				$value /= 10;
			}
			$selectorcache[$selectorkey] = $precedence;
		}

		return $selectorcache[$selectorkey];
	}

	// right now we support all CSS 1 selectors and /some/ CSS2/3 selectors.
	// http://plasmasturm.org/log/444/
	private function translateCSStoXpath($css_selector){


		$css_selector = trim($css_selector);
		static $xpathcache = array();
		$xpathkey = md5($css_selector);
		if(!isset($xpathcache[$xpathkey])){
			// returns an Xpath selector
			$search = array(
				'/\s+>\s+/', // Matches any F element that is a child of an element E.
				'/(\w+)\s+\+\s+(\w+)/', // Matches any F element that is a child of an element E.
				'/\s+/', // Matches any F element that is a descendant of an E element.
				'/(\w)\[(\w+)\]/', // Matches element with attribute
				'/(\w)\[(\w+)\=[\'"]?(\w+)[\'"]?\]/'); // Matches element with EXACT attribute);
			$replace = array(
				'/',
				'\\1/following-sibling::*[1]/self::\\2',
				'//',
				'\\1[@\\2]',
				'\\1[@\\2="\\3"]');


			// The preg_replace doesn't handle the "e" modifier anymore in PHP 7+, use preg_replace_callback instead
			$value = preg_replace($search, $replace, $css_selector);
			$value = preg_replace_callback('/(\w+)?\#([\w\-]+)/', array($this, 'callable1'), $value);
			$value = preg_replace_callback('/(\w+|\*)?((\.[\w\-]+)+)/', array($this, 'callable2'), $value);

			$xpathcache[$xpathkey] = '//'.$value;
		}
		return $xpathcache[$xpathkey];
	}

	function callable1($matches){
		return (strlen($matches[1]) ? $matches[1] : '*').'[@id="'.$matches[2].'"]';
	}

	function callable2($matches){
		$result = (strlen($matches[1]) ? $matches[1] : '*');
		$result .= '[contains(concat(" ",@class," "),concat(" ","';
		$result .= implode('"," "))][contains(concat(" ",@class," "),concat(" ","', explode('.', substr($matches[2], 1)));
		$result .= '"," "))]';

		return $result;
	}

	private function cssStyleDefinitionToArray($style){
		$definitions = explode(';', $style);
		$retArr = array();
		foreach($definitions as $def){
			if(empty($def) || strpos($def, ':') === false) continue;
			list($key, $value) = explode(':', $def, 2);
			if(empty($key) || strlen(trim($value)) === 0) continue;
			$retArr[trim($key)] = trim($value);
		}
		return $retArr;
	}

	private function fixCompatibility($text){
		$replace = array();
		$replace['#<br>#Ui'] = '<br />';
		$replace['#<img([^>]*[^/])>#Ui'] = '<img$1 />';
		//We replace the header properly as it may display a non valid DOCTYPE...
		$replace['#<\!DOCTYPE[^>]*>#Usi'] = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">';
		$body = preg_replace(array_keys($replace), $replace, $text);

		//Just in case of...
		if(empty($body)) $body = $text;
		//Be careful with that line!
		//$body = mb_convert_encoding($body, 'UTF-8', 'HTML-ENTITIES');

		//Debug informations...
		//echo '<textarea cols="100" rows="10">'.htmlentities($text).'</textarea>';
		//echo '<textarea cols="100" rows="10">'.htmlentities($body).'</textarea>';
		return $body;
	}
}

//Just in case of... we used to call it Emogrifier so we don't want to break plugins using this class via the AcyMailing files...
if(!class_exists('Emogrifier')){
	class Emogrifier extends acymailingEmogrifier{
	}
}inc/emogrifier/LICENSE.TXT000060400000002503152455302720011131 0ustar00
Emogrifier is provided under the terms of the MIT license:
1: http://www.opensource.org/licenses/mit-license.php
2: http://en.wikipedia.org/wiki/MIT_License

=============================================================================

THE EMOGRIFIER LICENSE

Copyright (c) 2008-2009 Pelago (http://www.pelagodesign.com/)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.inc/emogrifier/index.html000060400000000054152455302720011442 0ustar00<html><body bgcolor="#FFFFFF"></body></html>inc/index.html000060400000000054152455302720007312 0ustar00<html><body bgcolor="#FFFFFF"></body></html>inc/phpImg/index.html000060400000000054152455302720010536 0ustar00<html><body bgcolor="#FFFFFF"></body></html>inc/phpImg/library.php000060400000024537152455302720010732 0ustar00<?php

function piechartToImage($filename, $width, $height, $values, $colors){
    if(empty($values)) return false;
    $img = imageCreateTrueColor( $width, $height );
    imagealphablending($img,true);
    $color = imageColorAllocate( $img, 255, 255, 255);
    imagefill( $img, 0, 0, $color );

    acymailing_arrayToInteger($values);
    $total = array_sum($values);
    $end = M_PI/2+2*M_PI;

	foreach($values as $i => $oneVal){
        if(empty($oneVal)) continue;

        $color = empty($colors[$i]) ? array(66, 66, 66, 1) : $colors[$i];

        imageSmoothArc($img, $width/2, $height/2, $width-20, $height-20, $color, M_PI/2+0.00000001, $end);
        $end -= (2*M_PI*$oneVal)/$total;
    }

	ob_start();
	imagePNG( $img );
	$image = ob_get_clean();
    
    acymailing_writeFile(ACYMAILING_MEDIA.'statistic_charts'.DS.$filename, $image);

	return true;
}

function imageSmoothArcDrawSegment (&$img, $cx, $cy, $a, $b, $aaAngleX, $aaAngleY, $color, $start, $stop, $seg)
{
    $fillColor = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], $color[3] );
    
    $xStart = abs($a * cos($start));
    $yStart = abs($b * sin($start));
    $xStop  = abs($a * cos($stop));
    $yStop  = abs($b * sin($stop));
    $dxStart = 0;
    $dyStart = 0;
    $dxStop = 0;
    $dyStop = 0;
    if ($xStart != 0)
        $dyStart = $yStart/$xStart;
    if ($xStop != 0)
        $dyStop = $yStop/$xStop;
    if ($yStart != 0)
        $dxStart = $xStart/$yStart;
    if ($yStop != 0)
        $dxStop = $xStop/$yStop;
    if (abs($xStart) >= abs($yStart)) {
        $aaStartX = true;
    } else {
        $aaStartX = false;
    }
    if ($xStop >= $yStop) {
        $aaStopX = true;
    } else {
        $aaStopX = false;
    }
	
    for ( $x = 0; $x < $a; $x += 1 ) {
        $_y1 = $dyStop*$x;
        $_y2 = $dyStart*$x;
        if ($xStart > $xStop)
        {
            $error1 = $_y1 - (int)($_y1);
            $error2 = 1 - $_y2 + (int)$_y2;
            $_y1 = $_y1-$error1;
            $_y2 = $_y2+$error2;
        }
        else
        {
            $error1 = 1 - $_y1 + (int)$_y1;
            $error2 = $_y2 - (int)($_y2);
            $_y1 = $_y1+$error1;
            $_y2 = $_y2-$error2;
        }
        
        if ($seg == 0 || $seg == 2)
        {
            $i = $seg;
            if (!($start > $i*M_PI/2 && $x > $xStart)) {
                if ($i == 0) {
                    $xp = +1; $yp = -1; $xa = +1; $ya = 0;
                } else {
                    $xp = -1; $yp = +1; $xa = 0; $ya = +1;
                }
                if ( $stop < ($i+1)*(M_PI/2) && $x <= $xStop ) {
                    $diffColor1 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error1 );
                    $y1 = $_y1; if ($aaStopX) imageSetPixel($img, $cx+$xp*($x)+$xa, $cy+$yp*($y1+1)+$ya, $diffColor1);
                    
                } else {
                    $y = $b * sqrt( 1 - ($x*$x)/($a*$a) );
                    $error = $y - (int)($y);
                    $y = (int)($y);
                    $diffColor = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error );
                    $y1 = $y; if ($x < $aaAngleX ) imageSetPixel($img, $cx+$xp*$x+$xa, $cy+$yp*($y1+1)+$ya, $diffColor);
                }
                if ($start > $i*M_PI/2 && $x <= $xStart) {
                    $diffColor2 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error2 );
                    $y2 = $_y2; if ($aaStartX) imageSetPixel($img, $cx+$xp*$x+$xa, $cy+$yp*($y2-1)+$ya, $diffColor2);
                } else {
                    $y2 = 0;
                }
                if ($y2 <= $y1) imageLine($img, $cx+$xp*$x+$xa, $cy+$yp*$y1+$ya , $cx+$xp*$x+$xa, $cy+$yp*$y2+$ya, $fillColor);
            }
        }
        
        if ($seg == 1 || $seg == 3)
        {
            $i = $seg;
            if (!($stop < ($i+1)*M_PI/2 && $x > $xStop)) {
                if ($i == 1) {
                    $xp = -1; $yp = -1; $xa = 0; $ya = 0;
                } else {
                    $xp = +1; $yp = +1; $xa = 1; $ya = 1;
                }
                if ( $start > $i*M_PI/2 && $x < $xStart ) {
                    $diffColor2 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error2 );
                    $y1 = $_y2; if ($aaStartX) imageSetPixel($img, $cx+$xp*$x+$xa, $cy+$yp*($y1+1)+$ya, $diffColor2);
                    
                } else {
                    $y = $b * sqrt( 1 - ($x*$x)/($a*$a) );
                    $error = $y - (int)($y);
                    $y = (int) $y;
                    $diffColor = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error );
                    $y1 = $y; if ($x < $aaAngleX ) imageSetPixel($img, $cx+$xp*$x+$xa, $cy+$yp*($y1+1)+$ya, $diffColor);
                }
                if ($stop < ($i+1)*M_PI/2 && $x <= $xStop) {
                    $diffColor1 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error1 );
                    $y2 = $_y1; if ($aaStopX)  imageSetPixel($img, $cx+$xp*$x+$xa, $cy+$yp*($y2-1)+$ya, $diffColor1);
                } else {
                    $y2 = 0;
                }
                if ($y2 <= $y1) imageLine($img, $cx+$xp*$x+$xa, $cy+$yp*$y1+$ya, $cx+$xp*$x+$xa, $cy+$yp*$y2+$ya, $fillColor);
            }
        }
    }
    
    for ( $y = 0; $y < $b; $y += 1 ) {
        $_x1 = $dxStop*$y;
        $_x2 = $dxStart*$y;
        if ($yStart > $yStop)
        {
            $error1 = $_x1 - (int)($_x1);
            $error2 = 1 - $_x2 + (int)$_x2;
            $_x1 = $_x1-$error1;
            $_x2 = $_x2+$error2;
        }
        else
        {
            $error1 = 1 - $_x1 + (int)$_x1;
            $error2 = $_x2 - (int)($_x2);
            $_x1 = $_x1+$error1;
            $_x2 = $_x2-$error2;
        }
        
        if ($seg == 0 || $seg == 2)
        {
            $i = $seg;
            if (!($start > $i*M_PI/2 && $y > $yStop)) {
                if ($i == 0) {
                    $xp = +1; $yp = -1; $xa = 1; $ya = 0;
                } else {
                    $xp = -1; $yp = +1; $xa = 0; $ya = 1;
                }
                if ( $stop < ($i+1)*(M_PI/2) && $y <= $yStop ) {
                    $diffColor1 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error1 );
                    $x1 = $_x1; if (!$aaStopX) imageSetPixel($img, $cx+$xp*($x1-1)+$xa, $cy+$yp*($y)+$ya, $diffColor1);
                } 
                if ($start > $i*M_PI/2 && $y < $yStart) {
                    $diffColor2 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error2 );
                    $x2 = $_x2; if (!$aaStartX) imageSetPixel($img, $cx+$xp*($x2+1)+$xa, $cy+$yp*($y)+$ya, $diffColor2);
                } else {
                    $x = $a * sqrt( 1 - ($y*$y)/($b*$b) );
                    $error = $x - (int)($x);
                    $x = (int)($x);
                    $diffColor = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error );
                    $x1 = $x; if ($y < $aaAngleY && $y <= $yStop ) imageSetPixel($img, $cx+$xp*($x1+1)+$xa, $cy+$yp*$y+$ya, $diffColor);
                }
            }
        }
        
        if ($seg == 1 || $seg == 3)
        {
            $i = $seg;
            if (!($stop < ($i+1)*M_PI/2 && $y > $yStart)) {
                if ($i == 1) {
                    $xp = -1; $yp = -1; $xa = 0; $ya = 0;
                } else {
                    $xp = +1; $yp = +1; $xa = 1; $ya = 1;
                }
                if ( $start > $i*M_PI/2 && $y < $yStart ) {
                    $diffColor2 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error2 );
                    $x1 = $_x2; if (!$aaStartX) imageSetPixel($img, $cx+$xp*($x1-1)+$xa, $cy+$yp*$y+$ya,  $diffColor2);
                } 
                if ($stop < ($i+1)*M_PI/2 && $y <= $yStop) {
                    $diffColor1 = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error1 );
                    $x2 = $_x1; if (!$aaStopX)  imageSetPixel($img, $cx+$xp*($x2+1)+$xa, $cy+$yp*$y+$ya, $diffColor1);
                } else {
                    $x = $a * sqrt( 1 - ($y*$y)/($b*$b) );
                    $error = $x - (int)($x);
                    $x = (int)($x);
                    $diffColor = imageColorExactAlpha( $img, $color[0], $color[1], $color[2], 127-(127-$color[3])*$error );
                    $x1 = $x; if ($y < $aaAngleY  && $y < $yStart) imageSetPixel($img,$cx+$xp*($x1+1)+$xa,  $cy+$yp*$y+$ya, $diffColor);
                }
            }
        }
    }
}

function imageSmoothArc ( &$img, $cx, $cy, $w, $h, $color, $start, $stop)
{
    while ($start < 0)
        $start += 2*M_PI;
    while ($stop < 0)
        $stop += 2*M_PI;
    
    while ($start > 2*M_PI)
        $start -= 2*M_PI;
    
    while ($stop > 2*M_PI)
        $stop -= 2*M_PI;
    
    
    if ($start > $stop)
    {
        imageSmoothArc ( $img, $cx, $cy, $w, $h, $color, $start, 2*M_PI);
        imageSmoothArc ( $img, $cx, $cy, $w, $h, $color, 0, $stop);
        return;
    }
    
    $a = 1.0*round ($w/2);
    $b = 1.0*round ($h/2);
    $cx = 1.0*round ($cx);
    $cy = 1.0*round ($cy);
    
    $aaAngle = atan(($b*$b)/($a*$a)*tan(0.25*M_PI));
    $aaAngleX = $a*cos($aaAngle);
    $aaAngleY = $b*sin($aaAngle);
    
    $a -= 0.5;
    $b -= 0.5;
    
    for ($i=0; $i<4;$i++)
    {
        if ($start < ($i+1)*M_PI/2)
        {
            if ($start > $i*M_PI/2)
            {
                if ($stop > ($i+1)*M_PI/2)
                {
                    imageSmoothArcDrawSegment($img, $cx, $cy, $a, $b, $aaAngleX, $aaAngleY , $color, $start, ($i+1)*M_PI/2, $i);
                }
                else
                {
                    imageSmoothArcDrawSegment($img, $cx, $cy, $a, $b, $aaAngleX, $aaAngleY, $color, $start, $stop, $i);
                    break;
                }
            }
            else
            {
                if ($stop > ($i+1)*M_PI/2)
                {
                    imageSmoothArcDrawSegment($img, $cx, $cy, $a, $b, $aaAngleX, $aaAngleY, $color, $i*M_PI/2, ($i+1)*M_PI/2, $i);
                }
                else
                {
                    imageSmoothArcDrawSegment($img, $cx, $cy, $a, $b, $aaAngleX, $aaAngleY, $color, $i*M_PI/2, $stop, $i);
                    break;
                }
            }
        }
    }
}
?>
upload/index.html000060400000000054152455614210010025 0ustar00<html><body bgcolor="#FFFFFF"></body></html>upload/20151012-fly_grand_restaurant.pdf000060400001452046152455614210013646 0ustar00%PDF-1.5
%����
1 0 obj
<</Type/Catalog/Pages 32 0 R/Metadata 8 0 R>>
endobj
3 0 obj
<</Author()/CreationDate(D:20151013105625+02'00')/Creator(PaperPort 12)/Keywords()/ModDate(D:20151013105644+02'00')/Producer(PaperPort 12)/Subject()/Title()>>
endobj
8 0 obj
<</Length 1007/Type/Metadata/Subtype/XML>>stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
<pdf:Producer>PaperPort 12</pdf:Producer>
<pdf:Keywords></pdf:Keywords>
</rdf:Description>
<rdf:Description rdf:about="" xmlns:xap="http://ns.adobe.com/xap/1.0/">
<xap:CreatorTool>PaperPort 12</xap:CreatorTool>
<xap:CreateDate>2015-10-13T10:56:25+02:00</xap:CreateDate>
<xap:ModifyDate>2015-10-13T10:56:44+02:00</xap:ModifyDate>
</rdf:Description>
<rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>
<rdf:Alt>
<rdf:li xml:lang="x-default"></rdf:li>
</rdf:Alt>
</dc:title>
<dc:creator>
<rdf:Seq>
<rdf:li></rdf:li>
</rdf:Seq>
</dc:creator>
<dc:description>
<rdf:Alt>
<rdf:li xml:lang="x-default"></rdf:li>
</rdf:Alt>
</dc:description>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
<?xpacket end="w"?>
endstream
endobj
17 0 obj
<</Contents 18 0 R/CropBox[0 0 432 606]/MediaBox[0 0 432 606]/Resources 23 0 R/Rotate 0/Type/Page/Parent 32 0 R/PaperPortPageTitleStream 33 0 R>>
endobj
18 0 obj
[ 19 0 R 21 0 R]
endobj
19 0 obj
<</Length 870/Filter/FlateDecode>>stream
x�}V�N�@�G�?̪M%�Ν�=^M+WР$ Ubc���$��*��/�~?�{=ǙqB$bĜs��|8�>��4�2@�,ɸȘLRn
�����e8Pl�>N�ϋ���`�s?�N6���ڑ�F�t&��IdZ��AJ����r�X�I��Y2n|<��K����/"藝0S!88]%��Nn�	h��i?z�3���-'o{�^��
	0g	���Z_�0�F�mB���4�ƹ�#}w�F��!ؒ���g�� ��\��.PW���a/�2
��<"�%G,Y߈C�StʁO"�1'����q�+�a_���6��ӓ�F�_θ҈�5�fѕ%��a���`19�4�����*�:��E3=d�D���3�'��@•�#j�����6�n��@
�es�0��1�p�tNJ����y����i��I_g{�yx)	<a��_u8I��*gx��ƶH}2��i��Ih e����}т��e��R=�,��);{ܲ�vY�������GUT�f^���i��xG��*�P5��$��w�]��0T7i�I��)ŌG��[ή��x��ZW��܇3Mլ�V��Cj��J}㎅
+
n{�f}�is���UΊ�`�-[��T'�oo��JM3�Mx۬|���
����N#��x�.���f:c�n�,��GJ�}�iiv
����I��M½(!���?.�$��6_N�@��:G|�A���+�,�6��:�(M�:�����5X���W��p~(P���#��8R�&���gTB�9{d���m
𭬹X&�J|���M�L��i��
GP��{���Fe�+�IAр�Z;�[WZG
endstream
endobj
21 0 obj
<</Length 59/Filter/FlateDecode>>stream
x�3P0¢t^.0+ȝ�����́�ɹ�\&�F`���\L?371=U�%��+�����
�
endstream
endobj
23 0 obj
<</Font<</OPBaseFont0 24 0 R/OPBaseFont1 25 0 R/OPBaseFont2 26 0 R/OPBaseFont3 27 0 R/OPBaseFont4 28 0 R>>/ProcSet 29 0 R/XObject<</image 30 0 R>>>>
endobj
24 0 obj
<</BaseFont/Helvetica/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont0/Subtype/Type1/Type/Font>>
endobj
25 0 obj
<</BaseFont/Times-Roman/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont1/Subtype/Type1/Type/Font>>
endobj
26 0 obj
<</BaseFont/Times-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont2/Subtype/Type1/Type/Font>>
endobj
27 0 obj
<</BaseFont/Helvetica-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont3/Subtype/Type1/Type/Font>>
endobj
28 0 obj
<</BaseFont/Helvetica-BoldOblique/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont4/Subtype/Type1/Type/Font>>
endobj
29 0 obj
[/PDF/Text/ImageB/ImageC/ImageI]
endobj
30 0 obj
<</Length 202206/BitsPerComponent 8/ColorSpace/DeviceRGB/Filter/JPXDecode/Height 1684/Name/image/Subtype/Image/Type/XObject/Width 1200>>stream
jP  
�
ftypjp2 jp2 Yjp2hihdr��colr,res resddʀdʀrescdʀdʀjp2c�O�Q/�����R�\#"wwwv�oon�gLgLgdPPPEW�W�Wa�dKakadu-v4.3.2�dYKdu-Layer-Info: log_2{Delta-D(MSE)/[2^16*Delta-L(bytes)]}, L(bytes)
 -55.4, 2.0e+005
��
���ߧ�p��-@����I��~u0�:�ȶ�Tٵ�[���Hy�~5�
qp=�F�'ژ[���^�[5�7�W��}zS�ٚhf���Chc����	#/y�%q�V�0#�E�n��A�9ӝxy�p�[F����©(�>	��0eL���I�m/Ԭ�6�e����e��D�J#l�P
X`C�8f�Z��;��ۄL��宑>�*��iS��-f���=� ������N)��)>=�~��, ٙ@I�(N�+��l�MJ�����%�����T\����v�6eT1���{U.�0s��#��"$$C���6v���e�G�3�;�l`�^QKH�I���?���(�b��]��[W��8�Z&���X��ٗ&}(��R�k��?�(�S%�`�����[QӁ	�����>���n~�B̏�	�zrN�`����][��>�ep��jvĊXx"9�z�pr	4.�h��d1�E)�����Kϸ��]�D�q����{k|��X&��R)�����Uݡ��N8�,B
so���no'�u�\k+R.dE&o�c'�����U:��B�T!�(+<�#	6����5�ȃ#L��羛]�x�yb�NĪw�f�*Nd5Ó�5u߶B����W�S_�>4���=�%y[�g佂zȚ=��O����.���}TÙ�EQt��a=��u;���D�y�������X�(Ћ�G۝k�D�Pl_AEG�%�4����A�Ϳ�g�s�~Ԛ`�%����o�řQn�A��=�Wqi������*�$?7ˏ<�X�KD�+"�6��)�Q{�V� ��D����DYHu��=���N5�70�Pb'�>
5�����d1Ut@���,�W��<��	��6��7�3��ͷ9P�a8QW�b��~z�k<$d�>�Ո,r���������\J�@�F-,�"
K��%H��������(�����S`���$��|�r�+bYh_��(j�V3��F䮌�#B
�2�Rv��l�UU\�(:�Z�E��r�+8}�&�C@���ެ����A�[s�4��aQ1O�������O�C��{�"��a(�w�[�A�N��̭X���٩m�9 B�6�Ӊ>i%aGP�
�6�۫$c������A�„��t�'jО|$�뮝s&�Bk�0����K'��ԵmDF&�Ģ���ZJ(^�$)�T�)"��Wa�h9������wܸ)G��OO�����|����ȏ�Ӌ7�/�y��
ﱣ��s)+�<�Mi�?�H���γ�͇n;�+_�;Ա��Y�:x
�EЩ�K�+�Bmp���!���%1��>���D�?7��HfS��S��A'���I�y/Ͱ���O�[Hcmc仧�Ҭ
��%u/��Mً27N�LN˖��'�[Sw�򝓏NE�K�f���>�\Y�-o��:j$��#���3���?��7�]X��w����PRꌳm�o	���%Kw�mj��*5Xh@[�+c|a�i�ҝ$��t�f'V�,�x_%={� �kH��adV�fp	�%�J�e,�D)R�F��\�H_�x_U��ҵd�|��?S�"F��e�;��^�%�(eoBQ�<�z��0��*�
��щ
��
v�����ey�������C��Rs8��.	�Q��U��Һ���v����=���q�F뀱�I"%,�Z�˃��jC{,s����N�s�b��[7wn+빆���'�*ⶵ��f��)Dt�^pl�g%����r�3�x+�궵	T�)���??M/c_yG(�|�Wam8v�GVu!A�@�{�*�R�	��ͮB<&O���	X���q�l����х;+��q���$�K.�����U�C�7D�ő�s�@���'�67��r�$�!`�MB3D�Fng�^�1�b��s��+RJ�9���l�>�f1_��Dx���Ty����Δ.bG�	�\����v��>��{�x��=���Po��h�밺Z&r<�AEX5�fhX��
�q E`�w��R2�!��x�&9�n��-O�\8�*�),1�=�W`����!9���b�J�MP��&����*���E`���s9Tn�bw��%�p(��/_�.��kJ+� Uak��*� =}��S9y�M�a�R��F��xUU�]�Š��F�rs���.� 'zb�YF"���9�C�R��?a0��6|5l�|\-��6Ru$�"�"0��Z���ωI�����^>Q/ՙ�~����k�BXX(�,WΖ��b8#��â�ͼ��(�_/)b��vEI|uQ�������r{�-!���F?�ܨY�v�{��:K�i���n�TK "K�-Q�����d�}:z�Hm*Fs+�qd;}V9��(���4��Y��?ڌc��b�2��@�>	�2�]���;X��3i)�6y�o14�f�����Yr�����^����p۲��\
r��6��=�>-��x�J�<g@7gל2<��2����,Vw�e���m_��� �T��p��!�%�F��B�0@�}i�ʎV�y
����a���w���.Ǹ%��Wѩ$*u&���:�{\t�]���4t�|��"^p��@6�� |�~o����Nʌ�/��_���\Ƹ�g�wǯLL�Gw�������NJ��+�.7C��BG#c�ٻ�=&�v��E��3tk�뤞ҋa���Sz�{�p���j�x�͛���V��Q�)���	����iC���kh7N�#s���Ѷ�{��(KL���R�j��2��@����|)ԥ�������ъ�6�ş��V]bN@<�"*.d�mT`���4��<%j�&��;�������,��!\T��J�pw�˪m�TY�2��[I�;�*�/�u�qeuHhd{%��[��z�����#B���2��)�.fl�_�NM�ʙ~��z�/�3��F���M>�|ˎ�¹�m��v>���ፘ5����F�v��e
�V���1q-ͤ��
�������� �Mx�;�����L*��
��6�/���V���~�:Q�_\��.���ɛ��@�w����B뵿��}����AE�.��NO8����3��w�nD�y�Rj�	�1�3y�?F5��b-8��9��
g�"�&�^�aH�a�� Nר$x�Nr�S
t_�v�~�7��Qs�(y� ���[~X����_EfI6(����e�h^r7� U��K��k%9t�P�@�Oտ�x�jߓٴ(X�H8���9C?D�!)�G	q9۵�M�F�R�sT?�3W��'�$
�ވ�t['ոv���yhf?s�yn�>5סs�N.�oԝ��Z�4���i�ֈ1�!��|F��C�;�������N@��GwS�cS�ԙ���9����tx�"�ݚ|trO�"��}ܾ�)B�j���a^�Ȼ����z�9�緹�w��Z�%v�cĬ�:�_z@/�w���5
�v 2jF<=
j�Ç��M�z�ąX�>ܯ�3�V��MN��'�
������f��{�|�*���������0~Sܒ���(�����G�+��R\��,�>�"��V�d=�=���6IRp
�sc��pݫ1AG�+��< '9x0����q�Q�	�6��?��r��\�4�esʅ~��.�����$��4V�і�aĬ
��3��B`:�Iu���:�o�z?yd|�tK���i���Ho#D���`ߠ7��.
�Q�$��};�_2d<�	�FSc�Aλ�� �H�f=:ٱ�^�lt����m Yfm�l�=�"��<��l@�9�c�yJ������ЖF��8A�0�隂̧rv�r�G�$�cjߍ,��Vq,a�L)����,��]͊�P�âH�مQ`J\�T�ǝAʖ�8��z辿���V�}��ΠBk���P�}��$������t�@s���`�)7�$�$��Q�	��7���3�V��b�|�v�{3x��S;U�-	[Ha�;!���"7�qQ�ō6K&�@�'��H�~n��w�S�w���̷|�rڧAsZ{S>k�V�Mw��-��p@&�8��i� r�ΦA;F����C�ޗ�c�3e��Z��K�oH֛M���H_D�>�K|ߧ�\�}k#���y��ז�ѫg�=�E����vNR�
e�m�4�{��<�i�t�Ѱ�ȓ�Y���	s�y�m�h��6��7S�Xo��X�
K�M��!}��t]lay/�)y	�4b۱�+��^��	fo;��?�VG���P�u��Tfv>�_W�[�Cv%�Q�8�	\RDf�6��*�@4<僥��W)�s\������Ⱦ���$3jM�)�W�l���}Ƶ�Ͱ���ߋPMvBK����4w>�P�`j�8�A�JH�S�F��OD��׀���p�f���-���sT�$�6S��5��ڱC��ކ^^*��[)��j+E�%�%EI#8�m��Šxh1/�k��<`r��¦�g�d UE��lPJ����!���>���V�d�v)[�%}�)_�q���?������L`e�&5Ft��1|℧
�9��<Y�f'� 7FBL��	R�V�<�}���;j*\,�gP{�k�u����KZ28�9����|�
N�&Wt;>����Nv�Y�S�R��T�v�а��������}�X���t^�h��������(4H�B�/S8���k;�u^?>k#��"��}6=���t�!�Ro8�2�*�hQ��ek��0R��X2~�N��s�B���N�ć�;U��'7�E��H���\�Z&���m�za�O?�ؾ�vʦډ�>�ȟ���Lkؘ0&�5�}~�O*?�4�Ac[��IO���3���? c���#j{x�`rl�eV�Rp�<:xL	�z����J�]^f.u|�&xY�G򜑉+$v4\5}�Z�XzbX������e��zZ:�$M��$q#u2G�R�[���hA��/����Y��'6��9yex�N�����C�ܟ;��9���Ud�pԠ�b���d�]�>���*&bz��\۬S`V���,�K���u����8���εR^ø�%)����o��^ȩ�D���F�80��~���B�J�4�=1k1v(�݉��4�5m<!H:�h1�y:f�b���-�QLN��b���dz0�ț��*�����_S�V�Ʋ�߸Egkn�
�4"2�SIf���
�4أϷZgh�Du�1�c�ߙq&�߮�j5L�c���UUS3�И��&Y��%����D�����Z�Mսi��ۭ����K"����q2�݆4�	�gӐPhx_?��:5�����W���X#���ĺܣG�|��i_�)�����&o�h�~ұ��9v	��Xcǿ̾���@��+#�cIH����4S��vn�3^��<3tk:�	`�
��*)/L�u�Ӹrҽ�j�1�&������`��+yF�yKs�~V�3�7�j��?4�q�6w�}v�>��=��;<~��_��T���K��c���9�t��]\��b:�� fh�m�g��Z�{7J�go�3AQԆ��M-s;ZT"�:LrA�!Z�.M��B�Qݲk"l\fجYI�fO��U���De-�,_�5{��P���cӒ)C��!�x-ّ�SN���9��[w0{9���'��yT��F-�Z_�����	c�(��$�{L{g�s�ڊ�J$ñ=�L �M�D�`�}�M���z?H�ts5lQ�2c��>K����U�c&|�LEx=z��G��Ұϥ���(�Y*�A7!c�I��
���Y<�A���;���t^�K�L�h���,��
P���xV���	{iƶM�VaяD��F5���x�M�a,����;-�{t?��/��+�g�p�S��� 0�!�|X%8.�:[�J�?
�!mtY���/C
�RZ��ٻ�~j��RMR>&׾�4[r�x��;0;pør=JR@��JNsĭ:�E{Jqw���i��a��	|�‘���C�k|,�8#9�}�M�sIp\ŏP���b���]Ģ]�������d�ñ���'+,��-{	�-��ZCh��!�]�*���8�Dn�bi0��c'�~�\�c�5��O��
����k9T@��
z�]����ڧ�.�/�Y�Vƕ�<*�
�����T�O�XU�E��PC�-��N8OJhY��̓M)$���G��c���/����?00���Qm�L��Ź���17k�+m�4=�>��P�cTS��UE�J�ɹ����A�Nq��@�<W
�^�
�e/
�\B�׍hJ1�#���G4D��E�x��͑X�Y����s�.�^��_}�X���-K�1j�xiC�����~e�ϓe��/���=��}G��T�	�,?�oU̜J��3�ؖdr�UDz̪|�����%�>H�r��1�·C�"E[g������s��~��X6�a,́�5~��a���ǁ��E��1H���W���rH��(?�8sU�䆕�vwKIpڳb^`Iw����@�v�P��1�r�4T��1_��G�ƥ�d���ЅK��Ig�0(I��zQ+�ܵ�Kn�MÆ���	����e�֕sUl�.I~o�sNT��)��>Q�/��A�2Q��?���J}tlj��S�K�J����nD,�\R�\�\7�l��0�-�%���U�,�r��� BN,���d�҈��d�LMGKdX{4B�-6�P�Cn}�$
����΃:r�4�)�ڎ+��9�~G+�q�4���\
�x@�x�z�ǨҞ�<�FC��2˥�W��E�p�`u�ڛ�2uv��
Q��A�g��B�C�8��ID�D�Ĕ�G=q�y�ռ���$��]0�����aE�����i�����Z)���Y.�&-O�v�jt5qu[E�Iv~��9�XA�Vz+�����D�?������΁���R$�W֜�	���ռ��#��ΰt�l�8�ܑ|X7ė�Ze��8i@�������B���3]��KpPpiP��5���^��02{y������|�}I�d���K�Q��q"D$�2W?�F�Gq:�,�G
�)��7�X,�FGwm�*�+�1�,j�oJD"!կ�Ɵ�jY��7�@
���s��k�Y*�E��>x��A��^s�P������v���̋�)[�g�b�RuĦ@�w3�qp^4���#(֌2{��#s>[���~���O��Ju�2�h�x��c�*oM�c��C���!�����7ֵd���`�}�G��R"rO"�o�3��h�O��2���<�,ۏ�P3��#ca����⨡@‰��"@�'��(�&�ˍ��\��v��$'鮽�"6I�����I��_�Qw����[I셋z{j<p��0<����ƽ��-�&ccX�'
&݆���K�V��m�Uy�Ȝ%a�@Xu�#_�
S.#����t�K@��3���$����&�7�3~�R������)���$��%ޤ��(P`W��v������q���ܩWC ���[����X�@B9R|D�Sj�"��t�j��;1��Sq\1�g���N����hu��s�u��ml���@[/��+�ߗ��B�1ϩg9�����/p�W_ˬ(�DoU����h���[�8F)tF�Q���C�yN�F\Aa@El�����$��p�	� a�a3�h�9��;@�ե��̥Rii�/����԰�0~'�a_4��2���P�����ce�w��s���1����Zw� �K1��R�(_�Ic��l�ə��#IqZ�M›G�#{Z����-�|XB#
Q6wyD�+*���F4�|�C� �O�v�����R�k%K��R���>U�w?u�'8�w���Il��C(Z��2�)V\y���h�����K�r��5#��m���S��or�L���4~��EZ/-E���ӝ�vvHX'�3�&�E3�n�G0�]����Q6��y��rغ�.�պz���ϻ��|��g�"e��K�|�
�G%�3\Z�:{�la,AaA�l(Iǩ��S~�n.z�"���<5)�?��_������N����RP�E�M�
#n�M����5q��\j��V�����4ɟ�	u�aQ��g��K�_�%��8��06���GE_D"�?�*Y�Q	4�`C�G��O�oa�����O�wk2��ehG�!Br�
VF�ֵ5S�$o��o��}]�]����$��Z0�TNh���N�7�8ʣc�� �
)�HX#2��S�`������yVP4s�~�‚Z�񞕒Z�s}t����v%���>��ڐ�kq�/��~�fG���C��j�;�K�f�h��"&�(�nϊ���{��kX���L`�h�B��|iD.c�Z�!fhv��w뼢=�KV�&�o�Z2�\{���]h�D�c��W1t�
���h�lLiF0L|)Y�8A�t=�b�㕪�k�C��Xs��>�Q�;H>�uk�J��N��G)��xa<�΃���k�kM
�O�=q9R�/��nCK�L8[�;�F8�A�d��lC�&�}h���2��=�r�NO��{?�CI{�\1(V;Z�麹r"ˌm�ݵ�����p3׸é�>���k�X mV���Z|�E�H��3\�Qj��yw��d�Bm
5�L�kߓ�|cQ7��d�J��h9����ۈ�`ճ�
C+[;z�lw$68�Lj�0K ��|X�x�GB�BT�m~2S¡D�� G���3�����>V`�$�:�ή[>����&�j	ڧb��5�:!̦/ϚI�����e?.�5C��"�x�k�/
dg'x�������8����R�Z��`<�n�Ef� �p��F�B⇲f�E5�/%2M<{lj�W;��Eʅ/o3�h<y1&��D�k񋴣���{��-�5LDg���Y�����#��+�V(�Q���o�����D�'���Q���
�߆~������Y�Ԃ���\��T"���t+�{S81l��=�
��yW�t3�(*
�b֬a��U`#�V6��m�=��6#]�!F'�VV�-��ۃw���|4��)��}�D"���x��46.K��Nŕ��+�5�*��Λ�g��p\D+���'�#c��6�d'#e�?a�8�W�&j{�zk�"u=
+���Ʉ%����'j+x~��<%#	��m�3�!����6ժޙ�R����̍PB��P%�+��jض)2?7u/�K��M)E�b�B�r+u�O��L�r��!hǂ|Z�m�)WUb�Y�7/W������,���K*8�"�g�oLz�7W�M7C��������G$9���G�������
S���M
��X�9:9�
i(*�(��b�d/2<g�Ew��[������h���G�,@�D��\���*�dv�[o��ꭵ(f�1=��ځm-P6����ǒW`������z�[F�q�"���G��!Ioո�f�����)(’�M�ϲ��|���okg�-�,B'�֮�}R5%�;�黺�[s���G���z/�@h85��4+��a��J��1��[�)�Ed��ٜ����Ȕ�[���c0j�T9uFg7���*��,\[�kwǚГ���"�_�#�(˜�
�mV8�����W�X�DQК���UJ��t���5�bv��wT�� }��"G���>Ԅۡ���j[��gqF� �U�R�(@��ǫ���[�I)!
�bt�|>�"?yz���W�]=�d^S[v�ɬ���H�hDWq�����!La
:}��Nf�f���-p���j�i��Y&&���bza��#o��1��U��±�v2�%"���߸��\�&*�[��NJ�=�
L�c��O��
��"�Ė��]���$o�X�߭�Lj�j�'*BG��,˝����ﴛ�fys�U�>^���O��P���]�sg����>n0�bw�L�;V
��I$(Ɇ���]��3��ވ}F
�/܂�ff��k�:�!�eUҭ�k
�4|�X�_�N!���KsY+_̨p��@Hr�o��`���n�{3$&1��"'���֢cQv�����������X.M���[�\���]�Ɉ�����Z���{�&��?�y��#��^ts�U��=eD�.5���N��#
g�m2��o�fK��Y
���0�(����.:��_Ёx�m�m��?�x��o�,�n��49������� SYEkh�Z�V��T�-$^�Yn��~=ϕ09Y���1_ƇJ���\I���^J-B
��I��D�z���q��ܷ]=������>~V
k+�*�IS<��,�*��k��S3v���s�n3uI��~��|�2}ж"?���� S�d���F�n�ȓ>��C�$j2.��փ\��0�g��n�DV�N��"��������4Srl�ɠ3�]I��V�XZQ�r��t*O�O#�h�_�W#�圝ꋹ�2Խ�Kш��@B�6�7�Y����|�8q���_cp>_F�z�2G��V�6J�t�e��=�֚�ƑE:Q2��#h��F����K�_⨞�MM�]a�j���"1�:�.Y�j��_���:L4�Mê�C/��_.XBe��o�7m3��4�2�ƳOy8w�z��~�(�@	.��W��S�z�}�����o��(L��OsR{��,��l[�$�	�^ʞɻ�_��}/�ۮUB�[ʮ�
������*S��o �b��]�D#�`�)�T��.,qv�^�WlT���Sb�TS�ǫ�8�h6>�S5Ɉ���l,y����ӻ��:28����ws�,�ڄ�*Oc6ЕU���)v�]*�g����N�ӕ�f�4잙��:ok�|��!��x/'Q7��Z048���$�>�N|Z�ݗ��Ȏ^+'oJַ:�<�g���d
Yy%���w�- ۓY#�hb˓m;B�W;Co���=q0�8�����>����$�zG
	���݁�]��_ܜ�e�[�(�1�Ot��S�f\1bN���X\
Sn��a�PMyhr��{0�2(�"ɓ�L����gV/�anX�n���(l�D��T��O�	`��^x��nB%f�[n����f��V#��hz\Ds���Yz�J�n\�	[�?�kg��O`�U������p���o˧+,�R,ݕ,����T!��׻��J}��
i���%�H6B�m�,���fz����O-ʅ[X=����?��+L�#�Y�yܯ����Un�ǃe?#�v��y��Ȥ�~�ͽTk�j��т�ù�=/*�3;/�M£����>0��\G�~��%�
מ�K�-�+�Q��l��2N:�f@*w�/��U�ԛ��G%�zZM8v�uq����T���!_{'W�n�{���E)�z,fH<Y��O=&�����2�����ZWb���Xs֠�ھ"t�2	�uI7��Ģ��;-"/����4�9$�����%�>��P@��a��߿�Ƹ�S	�~⣡g�eu�V����!ҋ���
j|jf���p�$�b��ypy�!�$�>������-��d����fH�_�Oy�
M6�n,E\�ÃN�J��m��z���M���*�+Qy��wb	�ᤩY�p����8����$�>��1�V�@7ޤ�M:+]nW�jA!|m������~�~v>�wf��S4�!��R�B�q\)�Z4��)�nw�Pt<���$��,�Ʉ㐈�r�Fœ���qM����4	��	E��}�F�Fm�n�T�p0)v��1���>���ڌ{��?v�tj�D��c�|]��l�S�-x��m��\���^��'�W*�be� �D��bo��Y|R�����5S �	���-�c"��+vY�*�&k���b[�%|���]`�r���N{T�vKJ��7��`#�	B��E�Lb�S=��_#�@/A���&�O��4C��*��i�A��f�Ca��:���n�8H
�-X�y��R�h�4����(Q�ڨK�n�Od�1�3��7����g��$�.�C�X-s�Z)���XZ�����v�%�g��_�\Ԓ�$ʙ��6~�4���ɬn�a��"
L���O��_�̒;�Fܱ#�%���⚾�m�$:+W�4#�*����g#�%�R�:�=������ƪw���N�]�Аԍ�Q��5hKr'��	��-�F�ݽ�.�<�
`.���+��t��#����}�0ط
��
!���1��z�:�@i�7+Q89#����{Z��P?g��Ez���bR�_�Ę\��4U�fR*�*B8D�_3r����?�전�!�)P�h��XP���
�]
=�q$�ߓѹ�A`L��aOQp����K1�ٕ��	�t�a��SU�Q/]�H�9�*�r�q�M��WXb�A���xN�3�=mu��v�ۻ���H�ZSZ��fr�Fx�\V���X�:Z4�B���B_��o=3������)��9� cW�ҁ0s>Z��jؾ���=�m�P�[��&�����T_6/戢' Hc�I����*�	�^#��N����z��Ɲn�F(��W�ğT�艫�س��//��h��c�pv�'����Ү��������?����O�L�����n?_���t��K����*�VV�\zr�Q��:4C�A��f*ˆ�*i�Y��Iy��G������>"��e؊;X���S�s��*m�ƚD�}CS�$F�y3���d�_��s�|���P����7a�ތ���EHz����<�qj1��HF���,,0����bq���I�2�G�kڼ�{�a���V7�Q+Cb�K?^2�~�]9�i~}m��:�Ŕ M�3qRw����\^:�R�����ט�D�BF=�.�ݢ�5"FI����y淚��A������>Zk_?�۔����ʩy��4#�k��ǧ�S�Ӫ�H?ĝ��{�q 	�X��/֭��Ƶ��{��J���QE�xG�^�+�2��Cfq��?����2�;�P��4����kH��A�
��ʺ��I�>��k���0Ecq!aC6��%Y/�K�x
�BV��&��sPЎ�7��B7z����^;,�Ŕ�ݡJ^��$���/f�M���AV���ё[�N�M��@��B]��J���w�/q�硇��/]:�"��?D�FI
��3�k���0S8�]p�c�\��l�q �?
	3���{Vf�bzO8�3b��!G���ʟ�,�7�1DH��<0VZ/����|x�uM?멟���T�gAժ��KSx\	@�ǽm�_��dΌV��� ���Vت��*̶��%c�
ܔdFu��$G��š	�*�6�¶t��l��[��'��Au����-4��w�M^�~
�	ŜV�x5�d�&Bk����1����f�Ȳ��l_�Kp}01XTj!}55��"=�}��cC�7��Q�.�Ym{����ؤ���*����Z8Q۹m�<Y�I�bg
���ƒ�>o���<�`�<����(�.UƷkD-]�Ѳ��:�UR��Y�R~�b�jݐNK���X*_S�.�h�~�&$���n�$b@ǎ�E�45%E(#;�"����n��wk��)a�Ȍ�8m	��ދ0�zw{b�jg�t�CS�-�����������}���~����h^2ydx���4u���`�y����g�G�.v�e�y�ĄkkBp[7��=}[Y�q�Czr��̥6�[�}�������F����&�3��>�!J+��t��n��K�����re�4��e���-���u��T��q�>dh�Cۡ(��'R�fn�V����}�<z�Y�%�r��	��
�`M�,�i����sҎՒs+"9�K��bGs3�?��w�^�:�5�{�Ӡ�� ]	������R�Q�*�����B�[@�n�����ڐ���%�л�0�FX�s��'�C6�;x�.��
�o7wX�68>�{��
d�$i)��,�瓋�Bv �ϳ�s\��+��H���Z�7�U0n4:��u�_�T� 셨w�;C�Q��U+)l��2�^C��X"w��4���ֿ$r(j��/:�f$���lHg�FK�q�V���E3!d���Gi~z]u2ɑ��%�ҍDū1����cb���_d�0� 0���	�$���h���S�uo3̻%>'mCh����M�YY�{,@�5��ɶ��n�cw�����
3�`�
5"-����/;D�8��,�4��ذ�5���Y)�P����������cX���s�ro��H�$�)���� Mܯ���襲�w�<P��˪LlJ�=y�Ym}�*n��B�ڠߤ�2>��9�`�Y͆��d;�RXϨG��n������N$v���ә�rCS����8�`�~=��cy�	
��B�Q�狭6&ݫ�������edI�0!N*�U�2��������T.z<	�����d��͜ugr�wZ^F�@j�j����Z`��5�5ǶbeFE$b�$�=�lY٭�S�2N��]�MB���s��Z;���������{�󐵹aҐs��P��Ŵd�llҀx�)0tZ]��۴��c�'�b�|wS��E��Q�D�`�q1x��D7b3��t��=�.|�W��ZQj;-�-�f<neRd�R:�.�qWϷ�Є4.�P���k��XT���A��r:��k+GM�̗�AJ\nѕ;'����G��GB~��bWzfB׳�kޱ}'�B�+9!�r�O��šdRu��6�S��z���P�SB����U���꥘՗Ƈ�A�H��~{:8��.�u�`���v�ѡ�
�
/X�ie2�2ׯ�-��
�Q�)g������<�\�S7�q�=�����'y
��&���q3֮�C�"��3p =	w�Th�'�-�&8'�x�{S��E��>,<�
hU� ��Zӯ�ƶr�^v���7߹yuH�
��E1��&��=j
��R�>$���b���. r:�y�T���V	Ǧ����753ԅ,,�CV�az���
�H�zT~A ���6�,������p����c���~O��l�f�o�j�z��b��Ǎ��f0����e7�ߧx��9��椻깤�
p�"}�u�a��{j�MS�s����V~F?�"�S�7M��;���~���Irլ�jh�VȽ�*2��3��C����;9ʦJ³��D�3�
��C��%��1�i��a �KH��@���V�f>.�fU�&�wY��{���И��(����3V��"�:ß xJ^���[�2[�Cr��:�8�Bg���E���D�_<Q�/T埅���tT���-�E�ѩ��3<�G�kZ��y&�R(�8��
c��W����0�Ҝ7��Mo�h�g��ɑ�c�J����J�[L�1����)�U(�x�,�x,�� ���X/��:��h�?*��I�N����Y�l=�*hAQ�6NV5Y�Pj�a�^�֒����P���b�1$�9w�F*��+@�s�)DC:̻�����$�|،�v"�
��j+hJ��*�J�ѾM�k'y�V�|
�?u0ҳ�KS����?��[GXze��of�;>#FSdtɒ�;�H`����+��1�A�z�C) ;p����@uސ�(�^DW�<ºf����_���gV�|#�)�P�א��ax��:T���i����iЙ\r�>���������(�j�d�j�F�1��Qj5�-�����%�\A=Hiޓ\��9�{��u��y��w�$2�d��-��v&��&��_� ���Г�K����
T]3Ӝ��\���P��,���>��I%	ED�'�ã
Z�N�щ
ƚ���������1�*�:a��e����H�֔�m�ɐ��mM͓�mg��'��2��1�5�8��uaz���Y[l�q�EL3)9��x�䞟?
�ī�1dJ��.Sv���AK�c8�N.��z�iZ.x�l�g����y��P�5^w&�(;r��xr
�:O]��+�X���/��Q/U�]�,q6�-��(�V"c�C���t���yf�����̊��y������k+l�|I7&�k�%�B��8AӲ����{�g.~d���0b��JQb�PL#�yj��Oe�0AJ?��U��0U������`��E��D�D�9�7���G����[� ž�����Z���(
�Ȃ�fG�Ҝ���0Z�ER|Kc�I�����A��M�p�$�_��43�೑nz��K��X��B�Z�4�j��>$�q���)i�2���(j�MD~J���:a����֫<.0���aX;Z��oc����3��5������z�&�x��pC�=*��O�#HI=Z�rB��NVj��l�:��De��$4潘EHu�'��e�6'pqk�C�[��ڼ�a�Ӟ�JDvnG���һ��~�ጎ��඙�'��o�3����cc���(BZ�g|WA�F��5[�q3=�d��h"	����Ι�1�u%^>�O<!���a��&��hx�״�"7Q7���t�`�b5
��g�+�8��լL���s�W������N���\$eK�ˢ��{**#�U�XSq�l�4$U)1�Zv5���,bA,��j���;/��.ec�_lV"ĢL���
V�gTi�(�ɓ|{6�
�4��(���q7O�]'���{��z��EHU0�R�Bl8l�Fx|�2�ڣ��������q��K[�'�:x�je��3����}�t�_�x.hT:��{��j���|lM�cj`	��߹sD����6@x�M&�¥{��i��P��M�{']]��D��b�p��$�P�m?K��*�Ns�����W i��5�k��!����B���6�"4��=�X�K˸'��n��\�r�rŞ3#��{�G6}��R-�L+��Q��b�~�tӘ�A���~� AW����k�U���i������I[��&�p�|�_^�����!r�D5f��ZLC���g�-�r�
��"[�����u�'��:U_�Q�e#�k���D���]yN��W�׭�m~l�uT8�0p.T�By2�C�����b��_S �4�Y��IW��ࣽ/c����tҡ�[);Pc���Gp�h5�O�)p�uv��`��21�v����n,nkE0��R���؆ϊSZG�q*�vg;X��X؇���R�G����:�@:�7�f���OࣶR�	�\��O�y\|�����F�"4��u�=2��m����
����n����N+���/�[;�r*�m���
����c�>}��b�吤��m��̱��w\±�_���
O)��#T��k;��.���}}n�o�C˭Ч�5S7�ùy2��h���ֱ��*gJ
�����@Bl*��Y�o��B�՞~�8��?�nUR�
pvm҉	�W��Dx�g�V�C�uMC��>툪6]U���@�$w�}��Y����W���:26i�A�4���	s�0aH�.���h?K�$��Mn�x�,̍�.�ڱA���k�^\�ec*��7�%���j?��(���n�Gp���+E?��y��t��K���j��6������ަ�(�hpÃF
K�OP�t��J��'�;�~���1@�n$<R�+��j2����+8�O$�س𼇭^i�i4�Q]����m,�?���c�w�c��"}�S�:z�}���F%\��t�J�!Y��G:�c�Sq܇�5
�”UO#r��j����Yw�R^z+a��h&J��>��L�ӭN<c�`'3U��,�p�]i��!sO:�%d�2�h�/����I���P���`�%!��%{]$5��dS��ݡ�!T��B�<�[Rn��A��[0��X��'���yQ���L�`P�\��tz�
�@�j[�G�
��#��<q86ᇗz!�rӬ�X��L����1��k�:��*���/I�i?CH�r�ԂS�l��E�
A͔EO��Ү	�K��p8�׆�N�����`1�@u��ո���+�8�ɝ��E���Y�B^$T�u|D2H[JfYP�n�b�~>*w�\,l��H��[� 3��#�{�ԑ��_����d�F�Z��
O'�YSΩ�~��R�c��)�ކ��H16q�E�V7(��'t(o^t���ڊ�sR|�e�S�*v��&���^we�Wk�X��'	���2��,����a�Ȑ<e��%���9i��d7�[�H"���&�y@�ȣ��g�p���yyA�J��mwa�8����E�%c���K`�w&-�
�ڊR�K��g G���y>��_V$m�J�1S��]���k���VA���&M>e%r6=7��ϭ�*_/U���D>��G�
Y�
�]5`����R�l�D���ɠe7"�N���-q�B�g��)J�1U������?^T�kP�j̮#Q��y��{Xѳš�}0�0�_��ڠ����~����ܛ��7s�`�,h���C}��܏B���`U���bץe\�˼]((@=u=Ha,���T�q��_Z��*��L�n�"��`t��886�U�m&�m�J����%VZ�L�gþ֣���%䚜RRs�Qs�C������ݱ�Q��*4_�3Q���6'3;�	c��>|���jE��eSW��
���_���:2H���70�$��
�X�Y*��D�?-��V2�>af_��@P(��?��~O�7�C>�]�{�`�X���z�*.JU=?�d�B��2x?C�9�[��{ٹ���-�1�t$M�f#s׍h���6�N�]de�V�
jH1�2̙E ��d��
�Ƚs���]�-iKA���`�B�B�3Y��s��^��n�+���a'��Zuu�y0H��؜و��
������ڐ��k<���*J6}Ha��3ʊ��e��>OQ�?
%�+�M��|��v,ƥ��P�O��O���ˡs`}�{�����|K�Z'�s'r����;~�R�D=w�i2c���y��1h�
昘MN0������m���O6r��̞ܧ&��:�ʼn�J��8��
x��)�L#D3(����/��c4�H��0�0�X/�����;�ic�sh��h�%Z)�3�x�*��<�n'�� N�]U�9$�Z}��\�x:�PJ&���t�*�.�
�;*�?��h~�O����Ⱦ��5|�����s�.�Z���
�?�V��"�`�2C٬��Kd�qbp{�}��$���B�D�P�;'���
C��j��\;��
4�<0�f����pMqճs��:���n��

Vƒ؎�K1�9�
�`=y�f#W$`)��ĵTp4��	t<��7�T�s�1<�%,y���Iں4~��yo/���[�h��.c�}�Wڭ���7�w��$��J�!�I�4��ԕ�6$��w���}�w�^ŧ]�U��z��V��a��f����T��D��}]�F�4�NAϖʙWxh2����L�'���F���n~����4P���J�:�iyW�~�^�ǾI��'�hJة$&��dJ)׿������g8/t��Ky}E,>�2�)>� H:+8���!�Æ�1ȔM�1��!�j�b�z��]�JW�W��w��� G�b�K#)\�c��cy+�h?��&΁���ݎAl�&s�D�n�٣ǝ�a�]ΎK!_�D�2m�L��
�N�Ϙ���9|�R�4?�^�tI'���*!�ҋ.ʃ�L�Z[x`���*���I��mk��;���o�6����i�|r����w9b��(�9%�sL<�[9��]3X�S��X3������%��8=��!˃%r�;o��<ĵ���G��q��h�H��1���e��
<Is��4�K!O'�
��u"�<���b�B+�@��"�P�ݲ-�[K��.�Z��C��@�A莋��v�?��D�-�X�@�d�{e�L��oW$6��>��^?,DVC�Y4��nQ�jy��X�P���J�a��J��V�r�b�����"� �2!�N0�1v���cL�4��D��j�MY�������l-{�uYRQ����Q��Ƿ�$s�j�v:s9솷RŌ2&�mN�d�o�T�[�
C���w@A�����+�Syh�h[�'PǾl��*b���J@���ͮ�Db)N�6"s
2�"6׸۝n1�$R�q�r�]��b�-W����S���W*v�.-Z[anrD����aqF���L�I�s�f�P�c��y̜�@W�|�mHl�l�CC�M��9gF�s�{_����q����r�ʛ�ɸ�|S5�zk"�3<�9���"�Ԏr@��|�LTݕYh�I�苀��(@����;��[kE�V
y��_��e��Ĕ��
�l�Q��yk�h��m�
v���W��>h�!�?�`L�kT�c�Xu7m��÷�v��EA���4+7�~>r�_�_I;ڿu2Z��?c��
?��I�,*�ʰLɅ�+GUz���kƌV��¯�eI}=6��/�|q)���m�ஐ*bAh����e��5�+݉��
�;�e���\��ŽI¨0��>�].��vU%8�e�gԬ=�Blp�:Y=�k�FLYu�g��K�J��oO]`L�)l@��	���5�>��
u�:2ω���j�=0 8��8���	�� �L�Xe��7�n3�^��O�
�~c/��	�$#.�׈f(q�y�R�9�.�v�-C�U�?�� �/�6_X(x�����~/���_�~9Fb��mUYv�?��ŒC�e(����[5b���3���Z��>e9Q��S>$'��i��S.��_Am��i��J���S�CQ���5)�6����-$I���f�g�v�+�*g]��C2ᥦ�d�aa�xԤơ�}��d;�F�홬&�`�V��
�?.�}Y����K�UK�kh�q1�*E��%캾]leW{^XC�R��|��4�R�b�\�o����W�9���L«��6��D�[5�A�5D�n����	��
|�3G�LZf�ZY�d�J��,��U(�
���(�Iyu+s�Hz��<��nj���r���?!�1և^+�����U3횂��#o�#�K~�(�jd�9#X�u`�7(gSP�	dFY��|̷���Sƣ�y�|�$���&+Q���z���M����ƝXQ�\����<���͆�M���ӁJ�'c�<|�#�E�8���tOE؅/��t�둔�T*(>4DY����&y�R`Iz��"+��g~�hL�8]*.�>�X�������L�j�P����N��:��n��	�?�vӵ�3!�Ƃ�;�g�A�Q�i{W.�o�^S��d�%��Ë��U�?�������Ѷ��P!�1�ڦ�H>G�˞�Q72��)=���i-,|Jv���J�B�餵)N�9G~��%�{c�JQ��eЦJ�v�
|����A?�uD��c+���q�A�Y��YZl9�feq�4}������-����f��x�[,T�Khߍ�ܕ阫qMbU���6��˗�p���\F�a�Q�^X���O�9}#I-��P>v��m���j���貌���bט]�M�ݑ�� ��O֏��ѝ�m�}ae�חНR�:6���z[V㪀'"!R�N?�
]��ԕ�/y��C�qfc�]9߻��i؈�^��E!�c��7Lj��$;�*<��VɿO�(��o�$z�}��֌��D��A��	�]�Vܩ�?m�M��l3���v��+�#5�܉M�f`��P��������,�l\w�.H"�)���ۿۢӂ����넪�,����qe��[�b�0����!�,��	0W�Ð�p�K��4]�3��2D��t_4M�;
����6e�g�.h	`����d	`z���5-���
�$�k�X�R�\�2�1bp�b终TdS@���4��C������L�\s�.�	3�M�_�Ґ$zX�/ҹP�"�`�$t�
"nw��y�̨NŲ��0o{�j�7�~�*�)��`!��I�-��P���}�t�����ְ	�D�[E�wc �w8�Y�2�U6���Œ+��A<4��}��f�&n��J����x>3�񖆻ʹ�n6�y����5
+D��pP��M�)
[��E�
�v�fL�Q�ޱ�gB�c�E�T6u�Q|^N�����ER�$w��y��_�
�Y���F��w$�;!�}��3�_�tR}9^y���@�:�0x���j��8�}��W�H�,ꦸ��`��0<��T��Y�����Ҡ8�4�pfc�R���,:��H���B�П<o{|9ò>��2��ɪ!/����]�d/���U����Z�_J5�:�"bkeۢ��|(�g�C��������PO�u^����L�؞�8,"��s�;'����=���I�5�m���Pˡs�
�p2�TH�1T�Fӝ�z!���/�
\���U"Fn
�D@����J5��.{�^ic
Nt��_���\���-��2�����e�k��K?5�욕j x���7����q`ʰ�.Fl�rX� {���-�f#�� o�-/�M���,#�,����8^�`�-&���L����ʔ��� >pePH��n���V~1�]R�fT�ɬ708z�/���9{DH��',��,#�-%��g�a�UG��A�{�s�2Q@�K�3F��o�4���O���T2��1K����7�r^p��t�WH�U��hFE-G����i�c%Dw�=��/!�?�TJc<��5<�xy?����`��P-/{̘K0Xs`'��U�/F�r�$���靹���.��`��n;����u~�O�q6U���zp^)��`t�#�ƨ	��\%��z�CUy���q�(7�0��������Km�P,6
����:K*>�G�暧����CCZ`AYN��Ж��)]�(#�̀����sQxM'LBg�@y9�=�?�c�c
3bs�"��,Ez�:ޠ`��х%b�hϮ�bѴ���Օk?\Vu	;ɂ/e�*T��%�Nܪ�,_�}�z\��t���е����q�˅`A�6?�VUv5�+��첧?�As��e�U<o`Y�)�;��95b�e��os���!�xX�mpg���p���l͔x�<+������7)r���<��'RI���m�Q�\��^E���"5-�Dw.=@_miZ��&������3���!�d���R�a"�2^��^J���D�絘�Ax����D~I?���z�M��y_&����I>���*| ����sn)6dqr^��w�p=�)�O�it�I!�ဝ��^�fP&AU�uҼo�
�sTX
"��T��,�3���"g_�Zd&@��,�C��l
e�C���vl'6���'l�ڊXLT�3����
������*�C%���	{�J�:2ǙY��P�&���gT���%���S�����}�A����.P��kDZγ�8��6#x��3T�c?yC��>�Re���_��[hm߶#S��y^�W��΀�y��xG�b��SA�Z![߻r�#Fe��L���M��󩙕�R���@��HMR�ZҢ,ҩr���؆���P��*/��|8�����&��:��vuh��[!_�ֆ�'u���'��h�������-{��[#�ElW%M.{�.�"�jG�_��i����L�*D�v�h�U��O���]w�LW�:|�"o���O�c��t�1f���<2���w�ߛŷ�#<hLd]�7}�T�A۔.
F�G]^Z`J�(8<T��x5ӝ
9�{M��dJ��\��D�1�6
��g�j��nJL[�;�2+�l*�m&�B�-3��&�ِ�H�����a���P�-tL�+T�H����b*=0H��iͩ0�y_}��h��=�4�RPw��X��k�@�R���E��s7v(*�x(�9��S�rԯl��yJYw6���p$�|s�){�ҙ�ey	�ߜ��q�,��m�
���ro�<�j1��1��̜X\'�l��V�.���4�6���m?)'�dF��łh�6sGK��e�S���jq�'Q�� f��y$�;�ö�gaG��:�n�z+?콻d�Q��d(4,���<;d�q�X4GU��������G�dAv���G�䛄?A�1�'錗��Zg�-@����˛�̒�ʉ��6LՁ tF`8��_c0�I�d�eA�(pcy3���ϊj%T��?Te'�6+�M{��A;N.t"q�`N�ؿ���l���������P�~�<��8�M��o�6�s��8n>�6�$�Ă��^"����oɧ<F̱I�4�v�A/���Y62�2(VlP��
HO�r��}�Y�ҏ��zB��):ڇ�	KG�vAnI��?sI^�sqU[���^u[I�]�������Q>��(Um8���C���+C���\[�<����߰Sj��2��O�{Z��� h�j*��P�qI�˦7>LCv�T����;�rB�$�U�:Mk���[�9�@��Z�6I}J�(�ZO1K��Ë�x>3���|l�J�j�)03�G֯�Ÿ�~L4*��n��x1�)�G�ަp":��aWS\kA "cOu�~���[��{�'�$a��֮I�q���&����>���6�K	FQ�N��\�D�-L�VϞ��z�e��}^.��Z����J.Ԓ�iD�R5A�t��zA���FjX#q�*�	�e�s�pJ�xNZ}+)�kpd�aF���ޙ�����IMb�?�:�x����s���I:.?�O��C	[ �¥X3�!�n��gr=��c�q>��Q�T��k̋��mL�
���S�dl	��`�v��ȕ�c�t�䰊�)��jѥ�b`<c�`��f�9yG��ĠO���U&'��-:�B>f��w�WU|V�io���PW����bkH��)��6M�*U��f�zQw�!,;�\4�J������Y���-���6�TYV]��'oB�VM�="��
\;�3Z�w�:��]U-�v�1R�F�I�tT$i��]�|d�,UG�5U����!}�!ƒ�a����h�<�P1�5���er]�`L����z�+/�	�;���?\SR�FR�Х���M0mG�!$���:��\�lWMNZm�p\v��xn�HCs^�ݞ�j�'��翐BåU]��WOk7b�V�@$��@0�
O�
���7=?��w-��/�8U�w���l�ɒ%!�X����I@���ѕ���l�;��_�f�_“Q�ȶ�����W,����{�,�n�rp?t�S�=��Wܶ�s^��VjN�:jlm�ݠ�B��	����↢-<ܺU�["�8�VxS4���x�eGtx)��E�5FS�0���7S�E#|������V9�4�ΜÒ�w�ֳ�>
�|؆Uhm'�*�2]�^X!<�r
B%"ʰ���	���tw�=I���o7���X�?P��pv�nG���Ľ�݈U�������fˎXX�+@�q��������-WA��z*O|�x��@ꀢݯ���C���Z*C����m܌�7Z��n��3߳�d�DҨL
1��^�(D�{Y4������>���1v{��V��
��9���@M	G]7�-q�L��8w��o߹��n	=n4ե�U��T�X�r�z�{�W��K�׃Wm�j��'���Vy)HC/������4]X��1]&W
���l� b�@�#��c�5>s ��G��XT���S��ض�n���w�H�W�*��ƒ媳�Gc|�9�M��e]6SO���kt@x��!��|�c�-�yE����98���v��J��pL|0x�3�>,�`�ejor���h]�&�����XڊԷ���Zn�*���vX�eO1���A41�&*7�C����Qk���<�~?��N��e���:�I��g��]�3�ze,ǿuLs�9.
F
���������X*��^{����&|��"��͛�}@�
���P�u���]~	C�� �$�V!���Z����Y�^�%�lw�VR7ȅ�΋yR&0'�����V���P�u2䄌�=�,�I�O�,�-#�6*�ZiM�Q�ג(�����XЙѠ���	X�}X��	�
N�p�J'�{�U]I�$�Gq�u�t�,�QP�r�-�Hciخ�~��±��%�8�	҃�j��1%Z��/:�L��g��q�y�I�ú�<�˳1:������Z�CM�U�}�?�{�
v��q��*XIמ�Qqu�R	F!��
����_ s
�Rܝ*%�7��W�n]�������(�"Χ�L�d sD,��Ǜ��R�y~���;�2s)�3��Պ�#���fJP�[)�Љ:�?y	k\꤀�;��e��4����*�eI'�i�ϔ��Us�n���/��U`͹�cJPz� ;`�v�9�,���E��(Tk��J�ڟzq/��|�7g^�.���q �ێ��}^����D�^���T������Ȅ:�޽ zXGz��^���]�+e��q%,�}�K��Hr��ޜ��h	N��l�gTB:�f�~C�3�i�.i��\�Ѡ�(�����sy�$	�3e-y��f��|�Ǿ�5��i�^PY�C�ޢ^1����(�
�b7�k��G(n/[��v�0�~HS�'g<r�F�3��r�>�0�X�u��
f�K{"�AEu�?�}�:!(:����_����9�pQyX�&74�mZ$��k�v�	�u�Q�hX�*p��ب���qi�ca��'S�p�y��2��Pe�D�~�qLm���e����Gx�3#1���}@�w`ˋg�HoF%oU�iSbC��#�W��*լ�ǹ�$T@َ�L�E��<4�<d�΁�,��#�rN�A�3�M�K�s� <�1��),�m
�T�
f�E��;+�t-������6��ʃ�-�؇�
{
0�~5 �:�;��=D��EΞ0���2�紃M���4ߏ-
I��S#����]�p�B�]Wzu:N�62�Rb�?f���1{J
=�ܯ���d��:t��T����C�Nr��rJ`z�o��}��ݴ�Tj�Eb�|���I��n�Wa|���{��?�5��ߗå�N�*��S4?V\�tzi����8��#
�o��P��
�|��e����;�Z�,]�;�?x"��LG�ҕ�!8(�g�U��f��3�9#�
46��?_\�,@|#�`IV�Q��h��(��VV%�i�:��(�!����u�īHL�c��ġQ������{��b`áue�_E��̘���/l�^-_�g�l�^��F*=���/$c��6���tp�)#�F�j��D�ߚ(��x�T{��a��Ӹ�fԖ�IJMw-�'���ػ3�axP�[���N����
ĂX��h�b":W�����$���T�D���OHk����_]���b�VFY���9�"��e��Z}
���|�j��!P9,ۡ���,���C�ς_��>%>�P޸hy�QG�k��}��G-�0�}��Yg>Ы,|�P���_4���vt"P��k��j^$����#��`�,��=�`;3��s���҄���N��̥@�5�ܿE-㍬��@bO�;�Yu��W>d����n�(>\���
��g5׫��x�	��^�UF���$A-��LV>�@[	�eyV�:�v� ���[�^Ƀ��a�n7�`J�}bR6�|���6R�P�YTϺb�%�
so���6�_���P�}ah��S
ܔ�1����"�B$�m�8H尔l?0\F3�D��8/�>��F,���0�"1aK�2�;�w6�}0'Hv�k��[�J�-.�L�r!�/��1wS��L:�L]�2�@.��V�Y�K�W�"���'=\./��lf'��xqI�RsT��-����]Xϩʁ��A�X~�y(�o��-��[ށeU���1�'�V��&x䋴?~��1�F�
W��`'g��d�O��(�JU�!Rj����m���'0@�:�N�w�	���fc~[G���|�]�y1p�\��]JP�Gy��
af�=2�\��W�lYv3T-��"�O���ç�|lr
Y�!XU�
/ѫ���Hs7h� >"*'��q299�$�;��b�`�<��O����`/ܑ�k6,x���}����Z��qW��!��O��.��8f�>`�sH
Vev?.lҵ f��1n�<���/�b�)� ӟ�E�5���鐥2�o햓�M#��rMc`��d�wM::��[ɘ�F`D�dZ�KL`N��iS��3y�\a� r
-���<�߽q$R��۠-���ʋߧ�˪�_��2�`Z6*�fQ�k@�\�6�W�Bq�md�+�w٩JVu�u��u��0pW�'�~���6�Q���N��k�i-t���|��Z!G�sGo��;e�)�
��P�ذ�)w՗��R��ׯ�r�D�/c�e��jC�)�-�Gc��l�Ƨ�挱M�P���"������g�G�'����
�ڂ�͓L%ռl��i�D�I�@_A�Ag�׎b�x���b(3B��Pn_�Xl�{r;n�wV<$=!Jr���-�s��w�����vF|6���?��c��� !yy��;-!B�fg�����=��ܡ�w�=������Z9��yR�蒍L�K�n�;A��P��E�~?2a7���Zgw�9���C�z$jA�J�W�%l��Ryy����L��I*[�x�2zZA�iA+Dڤ?�۴s��w�RJNc�0u��*��3�N�aY�X]�y=|���y���Q�%O�`o���'g=H�VgD�޻���.ۚo]�~5abK����j��JP�b�-�d�a²�+ՕVI�ڹ�Y���UY���^h���	g�q�m&^ �vl]���^�Ӂ!��244��y(����;�L�G�;���fv�]eq���|��
򮽭�X�TY�e��Pn^j��1��NJ�[���Q7V�f�JtF���v爝_t��`��{�?/J!Q�����.���a75S_�v��?�KPW�`TUqX���osry.g���a��y�����`�+Z$�4
���So�v���3e�rȚ�W������>�HE���:6q�Kٙe�)�*r��7C��N�a�e���1�7N����m�qU�[4�;b��/�J�y/f	x��Q�1z�#2������?�)��=�~f���eWƖ���IA�M2�����v�yh��W�<�T%}4�C�"8�z���^C�մO?Uf����ͥ��(�=���U�:���]�JǼ�����!(���K�wy��	u���Ią�A�:$7�oiڭ�F���n������ ��D�?[�ޚ+aT��Oqb���.�{f�{��ސ
��y�:N��όV�#c��Ѭ������o�҂�1�Ȋ�W��;Vf֠��u���[������E�d6A���?�Ô�N�>���ۂ2�/z�{FmZ�o�a�G���j[��Gy��*ܨ:���e"E
��`9����V��?߻"�W�^~:�G�����I��-�B�I-�o̚��d|3��q�^]�c���.�\�~�>�����{�4�=9;����_�� ��~�颱2Q�&�?��p���8/#O�ɏ�_z$3}�˧>��Y	y�z�zΟ���r�'B_.(�s`&�
��nL���Y�9�ԼL2�j�R:��p��PB�'%���5�B'��1����(L�Zq��}��s���<��<Aٸ���ʕ��]���Vk?��6�m�=&��w�L0�\7W�����
i��[���G��~�;{V ��Ɔ6��;�|�����>ۅ�p_

���HS�Z%OT���`��7�9�xՒ�s�I.��w2��uM���c��hao"1'H����i���|�=�iBe�U�'��i��%�1��eA��Ss�m�t�>��!\��u��`�%S��ù�N�!�����7�ՙА����R����`L���U�c&�M�)I*�4�[f��ekcS䦟�}�1i�B�<�#�
+��xp����W�x��E�%���y����N�	ob����z�,��^u�n�@�wR�M�ໞi���tP�T��?�8��b����:%��\F���AA�겖�\Y42�K�eݕ{;0aY�+����6��Ł�C��qE���R�-U@��4�H,���<kYt
���r����o"M1N��NA=�R.�,��L�<+�-ݴNT�Ō���;m{���K0�^�r���u}]L�s����.��W���n����B{�R��������vn�=��F�-�v�r;Xpz-IE4~V��c���8��J[䉩�H���w��(��PN�ӷ#_r����=h����jn�
�"��~��З�}Tx�)%�bw�y�7h>$Ag�\"� ��s9��wu!�ҳA�W�E�)��U��A ��y�N�����[!�D�K�
%���+�ŏ��#�gr��li�B��ᘐ�����A��jJa�$��Y�3��v�,�Ft��h�����:R/�uB�v�\'�{8��*�Ӱ8�� ~Hv���k���1]�I�,���,GM01�W?�$���j>{��~-�˶`d�#�S))|�A/|%���������팬O`Ϟ���J	I��i�F,w�������Тv���!X�3�v��Ќ�Ys���USz�S��R*�)�LK�@/�����:/�Q����?���
�y}n%?��[�k������[?��Z7�8�E}�(4'l���
�HxYF�~z/�7)�f!��j�O��~q��	&�[4�P2�jͨN��7�Zee���/#Ѐ!�n�n7���a�l�r�P����j+��rV�$H˚��:yȅT�z�;w���A�	�M�b��q
�!a�B����N����A�jjyD�����j:_T��N��+����Ȑ4�Bja^�t��(�i�g+�r�b�)�]��yn*�^0��=��Q�ZQ�#�ۭ�}ґ�a"��8�N��L%pF��7��hv�����`*��F�;Bdf�o�+�r3t���:}��owd��[�2��0g�G;!�)��Y6-=J���92U�9���n�f�O���L�����ãD���m�q
fح���Y�B�(�����U��Q�0�rί�l���H��[�Y���a0�'{J�(iS�*��I��n���cա��HI$�|�Z�� �
2��[�?w{��s���$,-6~�"�#|��鵽�b���e.�D�9�.��̏���UJN��b�I*�G���7�JŽ���R5F6+����!����"�8��.�
Y�׽��o��?��B�=�_Wy��{���=���w���O�p�w�}>���������[�`���e������;��;�~�f����������h�~���?�}Fװ���K����¨R�E ��c4���j8���n!?��,s�8G_*@p��l@�K��XLS~�5ri
e� �X��3в���O�t�0�'6�cH�q�)緶���7ԍ����sl �a�:�^$����K
a�����]]\�Z_X"���(d9*%tv���ؗ f�R��%^�[vzp����xH��H�lc�b�%�l�t�jʊ��uYO\Y����� T���,��IA��3�P����� �J�k��!�U���GёF���
g*`��=񐢐҆��R"g��Igc�f������'��EB���ȕXG��z��]<;����19JE�1͍�>D�)V3o��]��*>;:�e�l��ݎ�w⮴��x�N2?���q��UK��D�q3d͵� ����Xq5�	��
W}�B��^=0�l�eTBeFc��$�#ŗ�\�մ�Poc�<�)��݈C޾t?G��{Q�?�Q=�ax�=�g��*�h=�`MnA8��3�
�$6��k����z�]��A�/�j�7�ҘM��D��gϩ��X��;f{r/"�Y�B�m�]0[�71t;j��!ҏ��x=<�����o�c���'���eVk[�+r��0mh��G�\$�~~����i��(��|��A�Av�2$)�C�1W�v��ޑ(�<��	���d��vs�zAt6��d�]י(ܑ �C����:�JIJ?�*#��dj,�m�1��t�Ѥ���#���9T����o����w��f"?�9/%�n�4��C�?\�ߟ&�9֠w��^�@P�T)֠���t�)��j���LH���b���9��r��w���Jq��[�Ҳ��3[6���4�����3a��z$$]#�%�E��좶��S�*�n��☿!�gh]�b�8kH���m ��sI�(�+g��Y疦Wv�8@�~SI�����Ҏg���\��^df���!u��ѵD�������+�f�!�k�p�!v�~6��h?���Œm&�
ӝe�kQ��fP8a�t!j�	���szEŻ"$����k��12j�%����8��Ќ����;kJ��h��� 8�T�x�$b���T���ZE��v4�#��i���9��.��<���,:�� cZ��pN�����3p0eF��ɣ8���(:L��Ђ{����_��D�V�/V��3�{�-(���l��3��ԩ�5��NU�`�@6���oxY�$s��p�_DsG��Œ)�ȷ�*�'yX��L�o#È
�Iu�]=t�r
h`;`�+�QT��@�!����~ܿ�a�P��}.�P�*'E��i�ʚ���H���J�i��l����ֈ�;t��N�V:۫K���d���,T��鰹�6zML�X�����0��{'�j�Ct�L_����‘���~�fbS�q)XR^���<���6�uolY��B'�K=�q3��ꙷ��V@�(�K���)[p�XМ�0N���y��A�܎C�w=1E�;|@V�r��'�1�.��Zo�Qǀ�3)�L�(�I�D6����#ׯa˟�p�-/jDǪGW\f^���f�2ċ�q���e���*�Ø��:04Q
�q���MΥ�[��lcL\�v#M����l�2��0��$abnjh�����*Z~���>v������F�^�.���zXX�A(Cs)���a=4:��4uf���Xng7+�"��e7ǿ��?�B�t Ƽ!dG�JS��1�ƨc��^RsF�[KV�	T/����x�ң.E,�q�7,���w;V'H;5��XGڋEɀ�S;R���q�f���W�
q�	�V�*
����5�/B��.�^"�.��X<N�4i%U���V��$�7��yQR4Q��O6�h#�^��f�
�B�3O���l�>ē_�9���$E�1��/�Z�+/4'�����[M��lK<��>�Ŭ\[S���C-qs���$#�p1����� ��K"g�D8K4�����\	���W�B4���d'!�Z�}���3"u�~o�Xw����P�81U�W2��`�ɤ�ޓ�7l�]�W�5����8���`���=�"ڐ�?ɭ7G��&'a͗����{��ܝ�)�D��R��z53�����W�a�f��ZY1�$��,Ӡ���ꀿw	u�o&C�s
,�doњ��#�F.D)g����w������*a�]���h�j�y�K�U��c�`�ѨK�\ߋ�ƛ���^�@�mcQ�_��m�&[Lt#\�'����-�	|W�m;f��V�ޜN��j��}��A.�� �{�|3��d���L�%��\;ڱ�B�P�=��}U�X[�G7z䇭�%�ot�c����=�a��i<J������:}p�wׄGX֑�f���$�AuU��*]J��+�Kjk:9����,��Ϳ���}�b���z��A�7��/�SqڶrU�M�m�ʄ���w�Q�PB�%>��y(A�4&LX�
����j�,]$�`�5
��r���ԙ���G(�}o"��pC9w��#�]5�U��8*j�����@�{�w"�i��+�e���~��J2�G,(Ͳ�,Wu�v�]�W�1�KY��_g�ׅ+�<M�
X���5Wz���ا��>���E�e}���YI�z���y��Q�E�o�����}�n�1�mb��6�tK$6�Hm���n���vh���w�\_��w�]|��.7�L�g]�%+��W����"��j���������k������*m"��N�P#�=ȹ�_ä�BP�&����Pf$��Üp���o�{���!��вUf�F��QW���e�:�Π�����6ߒ�Lx w]0&��8�ECj����q�'�'o���b4��c�n�o�+H�v^�dve��}�7wV̜PVRˮ) )~�����AD)��2c����}޵D�^�Њ����rf��������/t�i�2<�����5c��\��szr������N�����o\�+��Yj��i�iY�[����i̪��/ 6t���]���>qa��dO�-�Ln8��	�Aכ�~åO���F���&�'��7��]����3^�r��=�p��Ǹ�	�K2�T����X��@�7��еq�ePaTRL�j���Xg׼�|��׌��^Ft���8,&�h3���)\����E�c��ڄu���v�:k�4��J�.i�H��<+�'.���Ղ� A���v���Q-a��˱H�T���m�Q���I�B���GV$fF�N�O,�D�;hw�H�m��:��Ά�?��Ž��h�i��a��c��Á�-|ͅ��0�[�ٵ����0�=�N�N����/#t��[f@�/U���j�u�ϭ��m�WO
�&	�\��(���l�y!k����?�[WJ2�m9j��Nv�?�E�wHK�d	5.T��!���8aH�#�Q
 ���I���5��H����*&�{����p���a�����S�ַ\�~X��T��Fa~s4c.#�`�?�&O?�Xݿ��o�J%EiwC������:�@�Gl�;6q�ޗ��QQ4��?{����i
���"��`!���!��O��x�g����C��
�/:d9�^v����}s$$a
�g��پ'p��j�1K�#4�>��u}��������$��\��k]OX�4��Z��X�)�׻��Iz�I#��da�i�);eM�B�7�椁”��h'��x�WU��M�� � d՜��]��j��1frh��
4�Cr~D�6?��]dXtl`8��[�RZ�Q�h	�g�UY�I����}�\ma<�Oa�O���<,�bյ�u��7�L'��F��8:j��js]6�1��ջ-�����.��
���]uiJX1���l	\X%]�]]��ם�$�؈7�O�<:ID���G���݊�>S��[,v,�L�c�G3����
�3���k
X�+
Q�%N���R�Z�
21Uȟ'�.P��;b��d��+�9a;˲��/�%rxK�� YY�|6�K��2��P�%�\M�a�m�xA�cũ���e��cn��"^w�RnXE����j��󑳵q�zE��	GF��1_Ov5B�Pr�
a�۴���9���@-�ٔ�w�;�r�!0HI����)���d�,���7W&>�9�<f��F1.ع��*��T�3�A�O~p�y��hf��]+\�vQl��]%-�-"�rq�h�4@�:�*���IPCQ���_��Q����{OL_1D���֫�T����6 �@����#�-
5��8E�4\�u�|�������$uq�1}�e+ߓW��gR�.�)�Z� 
g��o��1U�j�@%���B`�bi�ɱ���[#���僾�]DfsJ��rE�c|�����JFOh��`E�;����	�t�z�s�����[l����S=s~Q/;�_�mq2R��e��!'��͛�f�$"��1Rh�o�ق�)�[��V%�X$�c�*�o�q��\;ܿ�M���~��Վk�2'��� Ֆ��%���Cw|וpר7���#���̛]��,��v�]�'�F:ez���3�����1
��U �<����yH#�. ^-��z�DJ3�m^8c�s���7���=�`ب���h��^�(��kSj���r�m�%B#��O���������!��5�z��/Ԗ B�M�EI�B���S�mt�{���M8�&��i��x".�,�XU��"���<�f�kH.�P��E�_��n���q��dM�I�
�E?�`�q��k� q1(�=�]�<@ēvm�g�McȗP
����φ��<4W�5� 7����[v(�:��ݬNb���Մ�da|��Deq���~�����3p2&s�)ˇM�v[��Y��w�9$���ť5�hC�ר�%��*��+է3i8{��N��2LR9���4�I�٦!�s�o�;$pF��[��xy]s�lb|�`ݡ�$X{K�;��JZl/st��)}8�`���,�cU���I�����Q�V�1@�Z͹�a^\�(1��5_E���.U���8�n��t	������h�*���)�]O�!ٍ��mj�]xZ]:!�����/��*<+c����G��ՃQ��R�M@�5�Qj��fY
%Ym�
��}:�턐�|�0�}��XA�Zf�i7�$��0�<��1�F?�:yS8���j� ~ڿ�h��f����C���y��7hB@R�m����r)ݘF�:��(�֤U5"�:�d!6jR[	�����8�Eםg�آ��*��Çv�G����s[�P[B���V���r7���|�ã~��*��o�ՀŽg�y��tt�yf(��>�����뚾��u�5�)}V��Ұ�8��]%q��3ąGIvEg���#,!�U���(���u#2���f��}j���Ft��k�w��_�Ӗ_p!eQ�XHh�N�$f�t�,�`�B�4y�ѩ*�P`"1[/�W��GZ1�ۧ���5�A��@�S���$�5D��X���v9;��L�5UrHA�-l�^��}u�%��N��P��tMC _�/] t҄��A��1�a�ɟe,Ez�Eז���gm4��dq�t&�`y|(�NDcShcײ$w|�L�lA���"I��s��p�w���@W"&m���=�z��?5�F~�X��!7ڲ�O����X����U_����C(x� P���[�Gpˠ��d^��*NO2ƲO�ͻ�@_�&�[򸨽�G"��؟E��M����MG�HR����2u��(�s᪱3��(-V�!�f���;k��z�Z<����\����y��IX<��9��@��aR���^\���W�q��\�\Su�Т��2�Ȩc<;��a�N!l�ƿbQ��Ӎ�F������mЪ�b�X[�i�*!�XO��|s1�����Py�;��iK�#[U���Z�oQq�-�]D��^��l�� ��W7��n���VH�
/h{\�w��uC
|�0���
Ǟ��!�s�WS�-�I�^�^��۝���U�ǃW�`��c}�d��Ʊ������
�I�����ȆS8�&���F�w�XK��~�4����W�qā��ie{.(�-��p{�ҿt��C{�QefB�_5b(Fc��h`�vN�r�\I+��]>wZs��.�:/�Q�rV��F/���m_�.Z�`x���ʽ�^H:[	
�~�t�
@>��
֋�O/|��ƣpE�E12%�}�m�qjz�IB�ѤG%��7D�zv�F��a�4
}sF"|j��S��[�\���
@�_.��:K'm��Q�|LnȲ����\�i4��"-���=:��)SA�R_.�-�Re�yx!!��"����_gA�G������4�0�=��I���"�]���3����,�y�$�;TY����<wf�\���+(�;�b��„q�ӪKo�gS�x��$uUکN��d )>�qS|�0Y��靦n��p�Rq�9e]<�:r0xݮl�s�3VI�R�q���p�H�]w^'
֔�Pek2ѕSO�vq�@�5}�7T!"��㕯�
�Q�����F�]1�O]w�:�=�,�J�s"��b������*`Ox�Ѓ߂a��1��L�ʈ�r�
s���\�X�x���f~Ԏd	3��v,2�}s���yXDi�b31�*\�YQc�UA��u8�m����f	��\9BC�eM�Du�p$�V����r/-�ωsa�ړ�B3R����Bz��3يQ�y�Y�?
:_V�$��[K���	O���բ��'���~\���
n�!�*p"<����׆��{�,A�8�k��V�{���8 �1�Lq%�����ۊo��o�1X���0u�_Ì;f��{�g�h���\N��wʂ�L��I���49C2�~a&��%+Q�(A9k�A勏'w}z~��t�!wO.��P�]?�Ib�J;��'f2��H �:�;.�\Lb��L�[3�ja�	����u�z\�j!|�r*���LE]�^�^(u�ݦk�8<��w����A1�E���A�bOx��N&b�sB_Ԣ�E}�^绿���P)/z6$Jpcs�V4���_H�L��y��hW����9�hq�C���#�6n��j�R}!�����߹1Y�j�D*k��1D�xZb@g�p'�i�B��!q���L�2t�d���{��^aVM5���8 Mv���iL�)��Y�a�A�2�d�$��Q�\��^�L�#G���)G�`�]�.�g�aP�"_(��c�_���$>��~r�B1����0��_�rk��^X�m�յ���1���������W�Xs�?O�o���dOT�C60��C��v=��\�
��E6�ܕ��i�Y0�E8�ڦ�([#����54�%����J>3�q�b4 u���셏O�Z�������gq[RB�
pt��(I����G)-/�rP�r��&�])�ZBqgvX��+J���Q��6ΜWUgθ�&%�$y��(uw<���䖕tO�M.�5�۟��/�ʌh>X�#N.P,�k�
���"Ig�6c�WAn8a�"�	�/lz��1����1K\MP@�z;�L��zWM�LHep�l[8���QZ5�x��n1E�}���d�ʝ���A^�d�4��?�8^f"�d��7��%�.c�u�X��b���u���<]<���W�z�*a �NOU8/�xϚ_����z_�\D�S��cа%"mr~�T�1)Ik/�gFVH<jK5���j��1��4)��)�B�*H�km�`7�4����1����b" �ٻUY[����Xn�@�ʘ��>*b������:�*�����{Nx��G��XNm蛒���
�#&�.�&,Yx%������O�@=�fŁ�0ϽJ�W�����1�$�c�~��}/6^��;�¢��D!.��%Eh���a9W�
�T�pkb^En�ӯ���3��_&�ؓ7�M�5�I� �����s�siMuB��'0�h�Q�W�"��6���o��w�� 3"��6��=i�Wd�c��|�����w��G?�m����M�V�
�}�Z��>��Q�sV�P�R��E�#������x���Z]UK��~�<H.{E #�ylQ-O�*+�o{R-EID2�m6���],p����6�z��'�ȈFZ�\�����C�<�bJKd#~o����9X�n !8�)N�Hj��$��M?eG~J*B�װ�iZ�̅P��WՀ
9�Iw��ù�C��x,��Ɯ;v����j8���6�d�Y���t�ٟ<�����@��9Z��
����j��D��|����~j����R�m9�O���]�1�8�6����4�:�Y(RftaK��6�E&u�l\��E��9���p#W��=W-8~u�U�\߷�WƤfYY�X�%�U��b�P	�R/���6�1��b^�oH؍��y>��x��k�w}6��+��?P	�,��:
�BAB1d3��ƃ����M�bڒ]cLCf�\����̨=�R�K<i����/�	y��1���r�]��Dq��bd4���N!b�+���ޛr�늘�8)��O��:���ęyRh�K���]�O#04�&�	�ΰe
H�%8TX�E_��x��V��_��;5A'���h!�5��Wj[���zVV�U=��;��	���9$B�qDt�҅�"�u�;jJ�_��.^����n��Cb��'�w�:�"}�1/k��n�MP&��P��S�{P�����*9|�����������2��0�*�:.O�m�T��o5�V*���y�K���z{m�,=��a�A$���R�c���̌�~L��f����Ʊ�ҥ�l����E��`JZ7��������LH?��(x΅T8ӡ~>5�=/����s�Hv�7E/��5p�uO㫭"�ဢ�A_y��Y��v;!�GD�#���:A�z+��ҫ�V.�i�.n!$����{��S�HZdu,�f1��.2O��g_��ٲ�%��1���T�I��6�~�[h�\n�V�hf�;��Yg��R�/NY9���!��S[��=�J}�ᐙ�$@ҥ��W��3@�2C2��6 �u|�Ķ9o���iky@.��H�)
{
%�L�)��Pw�l z��A�s	W���޹�t��-��ģ<);4	��ci��nj��+��ʖ�ٟ��4ζS��Pj,Pj�=UĮEnN-y��8]4�YlY^~���Q�����)`�I�!�J]ؠ3L������<䱃���t��BQ��� @]�leu�,���w��T�7!�&�����$�Uo��Ã���B�\P���1�*FF�śgE��M��gky������y���Z���m��_Q�?�q2��^ǜ,uk}��q;�Oqd�Q�2ˈ���ܔ~�F���i�ק�m�M҂���K��D0�H�3��I
��B-���"�k�Yu���]��i�$�qcE*Ϳ�!��ժ��w��cKN�Sf���픦ȭ�E��AsW��-[%�n�l,�����W�
(;����J�v\]��aQc�T2�U����\�7�`��DՆH@��ˏ�g�-�i��4��;1��^�=��x�ve�	�<���Ů�3�˓U0�T�X�<�R�zg3D�ź��c
Ҳ��X�Tl�
����>0Ѩ2e�G��&��>��G���.�����8qcP7��O҆i��f��U;۠�k���'���}y�u�"_c��|�wX�m�8Hrr�C�z��@W骻(;jW�l.��L��M��r���b��R�;���j�PK�~p�c�Wt�ŀ jݕ��~���CjppԔ��֕p8�=��*����$K��@���ma~���R-�Z_R�$.�#ճn�Aa�������Uu���U(���R�>˒�ʻ������'�w�6%�%�8�=Q�6�����z��L*ܺD#n��N�yE?a�fp�ǁ9������RP|ۃ~~��q0�������W��|Cq��A��H�d�����ȿ�T}r>}@�r�5���ς>:�UT~<��@a��ܗ3*���c����jh�0KH�&�f����߅R�frр?�z�Txڅq��2���N�M�A(���hޠ5������>}%��ڬ�u���"�L��W���IT��
�V�a�L��'�FWS��L*%ZD�,n�y0����Ւ�.������/H"t��$V}3U���$X"}YnΥ����G�<m��,Õ8�(��S�s>V���jC^���ҹE���Ȕ���(����0ş�觶I�j�\��t�'��	#	��M�@�ٜf��L�w; T#��u�!ws@��"{ꕯ��f8g,mj�I_�"�u��Q]K�X��6��6��B܇� ��u
�%[�z"�z����Qh��:ǏC"WNݧ+[�}�<�M�:���8PG���e�`�A�{����7�R���*v��7,�qy*����F��A7PĬ��N¼���uT��P㓦��ܗY��n�t�s��1�P���WpU㹆^��P�����[oU���)�J��*n�wp�Ŧ�zi9\ؽ�lp�Z*8�����!���=��c��brYS-�:�\��v.C&���P43�.>�[^
e�|�Пv�P}5R��(��Z���P�0��T��v�1 렻qMw~֗�_a��\�:g>��C{��#�Yҳ�D�X���<�	E�(��*>_y)�'Cf,�L�?�RŴW8��W�4�CPzjɇ�kb�0:
a�̨�N�f�a��+_���̤�����GI�^�խ�z�-.�!�
&gTb�N4_x{�g&D�#$q+�~6�ސ1�ch��|�����$���i�Q�8���n���T>��/w�O,�uf��!�`h2S�u�6A�eј\J�r�IOv
��k#��88�:�1�jO�l�I&��Gx=i�� z���I#�]�8ۂ*���MDz(��Z��1w�"�L�;��v\�%A��3U������pc�Sf���v�^��h���G�X��T�s|�8�nNh���NQM�f��C��9'�2Z�A�G��]aQh�L���!���ꩇc���R�S1DS|��)�)G�x�'��ăX��|�աr>�=��è���Q�Y
�6𦄃KYQ���e���'P�F�\�_��dRDI9Nse/?qTL�J!xo�����:��s���%�/'slmc��IS�����|e�]���)@�+Id��`�rֲ��-�7�܅ڟx]�����"�fu��Ț�m���%
2��+���s��+�=bߋ���|���R�e=�I��}��H[�2_ն*ߖN	�
�7Cs��Ή����i��]��@J�|�w	���N���Zp�E�MaNs��e���=o��b��c\�x�{���&�<�U��v!f���n7�I��e}OR�s)X,�ǻ�L��+~||��M*\�@�NOvg���J���Q��t����]ꑲ�]�F�h��)�A=H�BL��q��0�1h2E�r>�|��a�\��_�%�<�#=�~�TaG�P���#���â�e(R
��@�D����
g���f[&P9���RmJ��L�t� 
F�ePoJ���(����Ș��_e� s��_}��
P翆�R���pB��"�r_&��eL�_ޡҽ�e��Ñ.���0
,�m��e��XM�h��Ty�n̄�l���~�	7�(�[B#�������#m; ���(�&�F����[�
�&�����T`��K��E���c�6�1eЗ�g13��^��#�"���%* ��u��̬Ү�����ar%S���,�m+�SJ6���R�{�����go5��д��	3�,����C���y���C1����p�N<���w���f�aPRzΧC�,ʝ�9�CŻ��<{c+cCl�(F�5�✊a����O@c3�Q]�Pl�[�������
�,�4��)��v��-���?Z�y�y��T�c�</�,�0�
��&�g����ο#����\[U˫/�p4�.�U�܈T�>R]�Z�_�4>�����4$�/��05�vq�H��#L���Z�W}|>����y��\`ȗ��m��'si��ɆL���k��E��_�G:z �'��h���U�*�h+ʓ����ߣ��Z�=�L\>���;�����I��gMl��6�byɄӠ��G�$Ugmbme��_5��ɫ�iY�� �	���4���#ߣX��L�k�t�
.[������5N�ܾf�c\���vLL߆�	]MT)�G%ݺx��:�"e�(z�?G�GF{�˗����Yѡ�=��<��2��
5F7�x"�y���F��~� ���i�9fSa,.*'J�w���
�x�������J�5���D;q��ơXPO7�e�����o�mS��Z�d��z����gBS�����w�vJoۦ�"wZ"�G�QJeq��_�z���pS��I?�$ا8��M4G�Wx���9�r$�5�c��N�u�l+&iȠ^���u�&`�u3V4'\b���
x<a�"�]Dˆl������UQ�ԃc i��#�	Af`F��B�BS��>�[�����n-^�s�H��7�d@��4r�:K3���+I�9���mH�ˉ)ٔ�A��ŊƧ̓�l�Y�k^]�PkЁ�A[��I"�U�|�si@��p�"_�z�s&�5"x��q�ĝt@m��Vb���J߉�{�*)��v�)D��y^}�"��Q
��v8��C��Z��dUXB��5�y�ײ�sr�v�n��'v"1�o�E�6�Ѵ��Oq��cC����l��4V��'98�e6��i5���g�����0�$�8�m�����P���r�X����2�Ẫ�D����X��F��{��>�U�>�(|��*uU�Ä�z�o��q�	8�]Xt&8u��cT&�������?��t��-fd�H��.3�M�S.�x��2.�����1��hb�2@Ӂ�-B�0yU��d�n�<��`��e1�3��n(h��\�0L]F�*w��즑zH=�����p��l*�2����v�ف��|�*�+=l������4�2�CpQ�]�2�yR��t����`�nj!h�����\�庽��[��Z�jw��8�A>_�$��Tlz���LIG���9��*ٞۜ� ˭�V���`�C%�~�0������KzE��T�o9�E׶�V�f4��r<*<B"r����$I�������bm�YQ��@�'�9����0��3�4�`g��k��.�V������v��9X�fjH�XwwO��׬��Ȭ��1ِ-�n`;�Ff���x^���/Ǥ�`�m^����PL ^�\�.���%��@�	�r���x�n�8��um��aP��\�G���8W�h��S�Cj70RO6-�3�+�[��
����gfrG=��x��s��ЪfD�/��Aӷ��B:���K����L~�˕ݎ�p�V����%����)�42�\�w/�<\��\X�A]wY��D^y��عA�&5�뀌�YV�7���ф6?��bο��%=K�X�
�\<�7?�T<3����~y����1�:��C]�.��`t��V>�7��ج��5��IA�]�����%�e�ϓA�6{yb��������Lv˲ǿC!�6}���y�S��zӀ�>�gv*�}ѷ�?Y��d�/&��ݓ���mi�U�y�>/��A�2�O1{���~�Ҕ"�aRu`�@��"����v������.i8����۪�E���xV�Ȅ\�"������"����	��q���_$���g��!������q_/�D���svQ��޻�V��ⷶ��nU���/��3�ˏ �q�����v1�r[RvNΑ8l��-��Ad���l9�&t���|jh�4R����	D�"�
����.���	�ՙ�Xq<��6�#�F��OX�Qޱ�#
O?��#q�����T_�
�aa�}_�Ȋ�e�f��ڟW�5I송CIQ]�L��sų
�v�w�-�6Ϸ����MD�v3���1��Qo�%<㍕Y*�;�^*Ё�_D�f!����2r�[���td�*6�^-�ӓ����MF��HdcTc*QS��`Q^����٪R�T�ۭ`���>C�f���@��Q�hZ Nj�W<$}ԝ��F95	$�&������DK#c/���r;v�U���l*6��ّ9�T�6�Es�3woȠ�h��<�I�p���=�uFf���~�� ����(v�'��:�?���,'"P�kw_�g�輇P��2��O�2/^����Wlrd��PRF&�>�������P!d�E�J����K������v��eR`U��̿M�X97�h��HB�[B���e��B����1}�H�٣2�.ؘꅴ�+�w�� e�ϕ�BXm��`^/.grBi8(^<ʀ�-r,[�'Xk<�
�N��<_�2��"��I�s�U��?=��W���ģY�ܓa٨ʀ�⧆ȹ/
|�"�%�U��T1�D:O��x����m8'f.�&���QJw��Ju^J)�K,�(�e�А�C��:!��[]���|"�{Ñ���0︟#�_5��-}|�Z�JP���i��	]tFm>u�&�J	��yĔ�9uH���L�Z���N�|�%��C�Ёj"�O�`d� �3G�Y��G�8���'���\�Va=2�p�"�t0�7ܗ�B'�6l�{�S��*�JTr�o%(�y��}�4 ��n�狺�GĦ(	PE쥣�-E��Y�⮯�H%����Q�@�?��7s���̺��I3�U�lv�O�i�U�dS�qF��;  [��"B>���S/�=+F$#Ӕ��4�kl0����&�FO���zF�u�0��Z����T�U��=�J����=�>N�n2�O��ӕ���3Í�Ӣۭ��=�ԙ^�QT0a�Q\9*h51�s���m~�M=Z�H�
.�W���!�Bf
�R{C�AU�L���|6UȩQB;���ݓB�!��I�(�Š�2������`+y;[��kWo<�)�|�!�!���Ba'Z�x��MM'5���:E,>[웸�"y،�gRx�
l�i���L���T�>�/�%�w ʰF�P��2�ӹe�?��cY��jP�2��k}s��Ӥ�L!-��a��80�N����ś
�8�tt�ȟ6�hV����,˭�p�sϊ�^lN"�מ�i/�^)|G.|Te5�M]1k����!�`O@�5�ڨ���;�$N78\�`�,�~��%ռ�Qt#�(
S�F�3��YZY�^�
�i�n�݀{�>��#��e������o
[�$�/�x��`�o���W�	&��R4k��2�ۭ�h��`�Ȱw��?E 9�c�V݂��b��X�{���<@�(��?���a�sڻ�KJ���z�A�*i����I
5I��Ԣ8΀4J���jI��3��B�4|�,˭6���^9��IY�ڕj��">��4�l�F۝Q�?
L�uwW^.��jC�
��~r}#�֫I�f�	��[������`�j)O-�v���!��L:��.C#{�}��
��s��vB>�ɬ׋��J�Zy�yV��0��@��ykx�x��w� ����5h/���@�׏F/��u���p��;�vv��:1�#�6��WUr�x�K��Ƨt,�Tר�{�����~�̱Ph?6(_������4}�T*Y�5�kZ�wcx���Nmі7O�N���ZN�Uc�6�no0�ϜB�w�������=���@����P�Ր�}���=.s`��53ZA+
�8�)J�g�6^̀]K����Mj��&	�o�ypsK��J��ƀC�!,��.�P��?H5��d6�e����wo�4ipЩ7лG�ȾԻ�ѶG�)�/�`K����5�x�`�@�*��z�.2�RKM�,4,�o���qb���~b�攁�Lu̾�8[�	��[!�CM"5S�K5�4
2�o_��+�$NAe&*O}������#����^W��!��P�Q���ޮ3"8�ij)S���#n�`�|�i�L��3��%%������[��hڗx�]��y>	=��J9�nX��C���𪂼H���l�0W'�͓k�
��:SrN�$����-�G��䚞b
�C�P?��<�i�{��/4�	pN���P@��.V6د�Ԙ��%1=�+�h�@���^S5S��~�%��};D�L%R��6i�1��ts�� ��b��)��o���'q/��x�l��M�'� 44�f�]"���8𾫰~��Y�(<xR8i�TM��I7�]���.�O����S���	�Q$o?j�<�]*��+`L�ˈu�V2	/R�6��d2��ƶ׈��=w�h����z+��s�$r�����`�
�Sw����K�?Q�2y�@�9֎^{����LzQ�=��3�@�@~�9b*��`O���gW�S�S%eh4
�QT�h�yA�A�m���a����
hF��$e`�Bsz{��
�
�ER���j��c�2uۯ;�Z.
'H�Y�3� ��kK�e�-���{���l+N��K�eN������l!�t[�<��M����Gـ�����Z5�\��[��W//��'1����
2&�G��o�����34fv�4�=$��� ����uIw�x�����&�]ڋ?g�I:�k�P.v(�Z?�"e��u�l�7C�=	�w'e���	�}#�ΤV��v��h�]��C��mP��JA.!I��u��`�#����Q!�1����Z[�$C�1|��-�R�˓�oP�P�Ww�������I����4"��M$S�7z�ܡ��E�"d~)<�Y�֩�,(c����s��
����X�KU�и
f;��}�A �)���*��ʒ���!�'�[����D��:b(���z�e�u��8	��p��:'z�b�1��c����% �P5Yc�2�hIh�[*�e֙v�����2L=�r<�����?UX
�h�ߗ�E�FV��ɼ�d����W��������iuP�w��^d�{��~{EJX��&j�OV�	�~�X�-?}�K�W|3��ޥ�r$�qE Y����%���%][4�
i��}����s�$o�I$�Ԡ+s�T@:��~z|==�Oa�����*j�˾�ƔD��V���c�X�i��8���j�S=��
���FQ.!.6־KK�4f�(`�2K@"���Tl�SZV���#4G��"�)����6�`���?��BT�alUY���q��
��w��Tۿ��V9!Lkœm�,|I�.�ܝ�oXG�_���i�b1RoB-�Q"lC+B`����$��NNz���Hl�o�IOvK~nfͶ�U�ּ4�����.@��/L�+yە�J@�蚦s>U+2�F�F��-��3�Q �5hCYHZ��@L��=QW��y�"rн����z���"
n\�S���пLe�j��̚7;o1�X��ʿ]���!�-��o!�R!'�V�}j��c�f���M-M�%+�A�h*�	]S�3K��X+�y��i6:Tç��;5
��r,Lf>Fg���\T�4�qx�Ȯ����G��s���y]�-�i�5�M�!)�
�$�8������oGi�&��]?Rj�������CN]F)v\Ȱ�����3�Z"�'�D��Hϰ�y38�!�~��i�����cKq���212��r~ԭ���GqaZ(@�i�e�Q����a긭&+Y
���^�)P��yvX�iw���A����?��,���^�V����K���%��=D��Z/Y��!�H`,���FV�:3�ZD1�J��b�t+�H�?�o[.E|��^Ќ��@�I~@N�`0f����.Z����:��׵���V�涿I��9U���yN3���$e�� �q�C�R��#��h�y��ZeV#O���֌"	m�_�����
T�G�V5MP��=�P��ys�Y^��QQ34�����V����	S��w�rؓ�����q��u,��6z������dGw��]�`|���QW7���
9����;)k�׵��V.�y����|�V��|
��p��r���9++S�n���*y��6��&�9��؋�y�#��h�بa�]��Ӽ-N8���ut���"Pu!'5q�mi
)%zK%f^I�|�h�S�mv��g���fR�R�N�f�;,�S��W6�v�y����#�?���ԕTB
5�o/�^&��)|}k�{�����I
��<�vo�<�hH��b�Prp�
ȷ��W��9,�
`�ˇX��j��q8�Y~��Maӭ��v,����:x�74h7z5m0ڗc9B�cQ���F��q�崑�v�q�R�t"�&N+�ؼ[-Pg�u��@��Bކx��%;�#�W�.�MI.�!i!�hbD��XXː�r�q���*<��$��n�{��=K/[�����~K[��	n��tab�}��i��6�d��S+�""��g��@�&��Z�
�5��zs��7���2���0d<��6�����YҘE9�qւ!= f7T��J��Cޟͷ�Ɉ���S��U%WvDt4�"�N�`����G�#z�A;l��e:��A �wB��$�A<ʯ.�@'}���(+�|Bt�s/�.��Ε�2^l����A��(T�3��Ѵ�\�@����z׫o���}dr7���(2T�U�핃� �4nt@�cy��l�z6�W4��2+q�� �e�0�\��R*����.^�"`wKV��ֺ[	��|K6��͠��\��=��	=F�*�Vpm�5���1�DG>f�l��)����$P�Bh���~�U�hy�H��z�:�����+t+x��!HŠ
5���\I8iw�,���r�(Γ��M�0im�k|)7_ҹ��!�%z�Z�q��!ّq��;������\o^��Ez�	�u�&t~�#������ᵴ�[S"��~�]��/�nԙj��Բ���yC^�<���˞��zdٸ|F�����Vx�h�ӏ<���䬒�}֠uaCg��L��٢��n��U��f�t�s�?��v���gJ�g�GƠ����
��m�^w �Z�'��F�ZMQ�����Ӆ�{j
��.	�{[Ȥ�.�wsd�*�c���1�>��X,��@3�<��	MU�����rq!��C���l0�n"��ۄ��|g�d1���<}j���ؗ#�/�Imq�9A��߈(�XXc��@=EG��IE���$Ex�.)�m"�|C"`#�J�)��B��*��&�b>.��W�iTe�l��D�]|u\�v�wl��N�!�X]7{�=�[�\"�rD6��:WC쳠���z_�#���O�;~���,���!�]�
�y������6/!�7j.�cg;��8��>W��� [x/s����puw=z"F|�CO9�G1s;��������9�ގ�x]��9ƀ��!�re1���%�?��;���I�C��5@��sn�?S4b
s��|���k�ڟ���Wᑋ�oW�w�����Y1�I�i@01��f	)S�p�z�IJ;�in��`�@�&_���P�Ʀ��5׾fN����Ba�::�����}N{��r�''����B�*P��D<s�uۧ�����!z�8�+����^Y�Ɉ��N%5P�^�h��}\��~�5Lp�k��w�@�-s�%u�ٍ��$��+T�$��<fN�_;YB�dZP��~p�x�Z�+�*f�w��
�F����OV��83D�L�Z�lL�T�����R_��6�	�	m���8� 1�����b�%.l��,)������H��y���I�]9L�9J��eN�`�=�*萞�^TX�N��Q����n����g�+��r����o[�&E�c������_�e1��ٹ��ƛP�B-��$Z%q�J��,
��4�󭨥��8��_��_�RU�M���\������q�ߡ�.�H��~��*������ś�
?�RX�t_^\�>ڻ0^��Մ�=������(������.�BH��O��׼�J��O`�K�����.�C�NT�݁e�U�6ƴ�3�R!�^0�}+�<_�Ὶp�W�	�4[R3�N��s�҄�,=៏[�|��6���#
�0�p¨*A7���3���u����,oS�ο�ܼ%t����o����>�^����f�~⎷D��`2d	�G�9�3��KXR��Y@�k@\�Ɉ��
��q&ȓY��L
�ug��R
�-��U9�FC�߻;Tx�mZ��a�@��B��P��-��ras��ڡ��Z�9r�I��i紆�
/0�pɝ�u�z<�<VX�2|�-(�>��0 �k��M��
���?Z��`�A�G5�4]E���q��ɓЮ2�J��<���:��h��~Ug!�U��F�H����ö-&N�G�gm�I�:w��[���4�/\��ɢ3�9”���vy��5ԑ812
ѷ���Qs��
߱�gEs��\6���-�!�����a9��#e�_/B=d�&�V�S��^�l�B�!o����48�y
�m�[�"A�8�
������G�6��9��v*K����晍����,>k�u��߮yD�28b�q���~�y9b�XO-�:�놏{=��<8E1I�g�Xd(ؚ��ϻ�\"�1YB�#$��.�����ڤm^�Ü��%2�Vhr�T�'٫bja�����]�	TK�͗���9v*�93����w)Efa�{Z�r�~U:E�ص�V8��-�\��v(Cr^o,^+���W��SXV�s��K�0�9��%��J��>���o��^/9[�`���P��x��U5j&�fFS7��sc��K8g>��!a��fRc`V��^���$��
rB��bO��8��qr#�k��E���	�7�1PQo8-����c}���O���6��T%�z��D��>]'���5�	5�S��&�`�,)B���d�V�l'����}�<sh��n<��%h�Xu�_&��Ɲo�7�Ye%�wű�›3ju!;F��4tp�
,��u>�i��싉���:��':��4����Z�!DL	���?��2*N���EG8��;x�C�Ľ�X��暓ݽ4j��m�s+-�=��X^,�El����
=�rҍ�����LU�p@���${�!sF�Or�1*��!������uS2�+�i8ΔI�fVA��Iy��;�+��L����M�<p��ۗ�~���F�
�t����$���	Á�<�����cU�V�h; z(G��v��g�� ��0��1.Y7���8����Ke��~䵐��:�˄Q�aC-����5g]@v���.A&[����Z94l�T�`���8�幭eO��_�06~�i��e/�eĘ�Z$�vD��Ia�4V�O\9�#&�·�
�-{�Ţl��p�����v�S�ɨο]TF��3Ԣ� ����&%`��6#��Dq�Ĺm���4_��N�����%���Qhv9&(2_K���!4jTi
�P����۽�~�7pBj(bq;�Z�SI�3�;l�S$������w@�2"_��?d�vtO��]�6���7�,?Q��w��g7�dG��7�n��I�U��`��<P�q��W>��q�Ѧ�`َ޲.�I�F�D%�����&[zّ���!�3X�ޗ,f�pQ:����<7K5/������Y�,�(Hvz��c�O.�$�rY�L4|���
�d_O�,��(i<�	/��F��oqݘ�&p�2��d���)���eؚ6��������%?Ԅ�DEˤ>�8�����g?.P=�J�5�S���z��N8{R��r6�|B>pl�=�C$��]�8M4����g��I��a r���$���F�K)���!µ�2�g<�#&���2REɲ�:���Aq�;Z�?�e{F�ќr@�|U���D��5l��8C���v���i�eğ-"� ɶtPU��Y�+`�E}&z�Q�pUe E���&R����S�рT���m�
�fk��� ��b2���`��v>�)]@X�{M#��� �ʪ{����⅙�c]��5�]k��p�
�m�*����K1�W��LD���ٮ��Q�|`�D޾���r��A���}���q�5���r�+�)�Z��B��/��3$L��j�씨N7�G��/��Az�ۢ�Z�a�}�:ƍ1�&_��Ie?����E(`O��ޘ2f8�XZE8�"o��j�†6]��H���T)�I���ȡ�;���VA'�m��c�G�a�!�=6"/|Q���'h9�d�ϛF�N�l���u>],��=���f� h�ld9�=�8'�z�������zwh4_�Ḯ���A��x��mz^�7���{e�n����f�D�{��A�lo��N?��	g��P-�!��0	�d��x��m���}�.@P4z]��x{)ގ�I�	W��c��{;XE�zsz�6��qtw7��pq�4�d�H��+��_Kk].=�zl]	��QTT�n��`
X �@�5�9q8�"�`n`D��\4��$��uHi���c����/�x�2L'�r!a|3<��!"���֚�riü$ent��3%P��wf<�c&�����5��ң�6��?^�	��]�
�M��5�R?;�"&�4>E�rnc�˃����P���q���Q4����f�1��Y-��Jz]�x_�"��pȃ'5F��c��Q>/�O=�t3�p�?�R�aƤwE�5
��)S��v�>q��{)�T��G��Q��6��_�]�Mc.�[��)�އ�����(���D�W��?��u�8ܿ�<�U�:��n[�G-���]Tv�~'���IF?!�ߠ��A�p���]Ԧg��C�aK`j�a�A|��������胢[�C���d�N�}!��f�������1����綍��K���f��
����(�D�`"�8"�YI�5�7���KT	�hģ�m�Cq3`Y�6K?�o����~q[{]��i0h��|B	�6N��*`�?�O ���#�X
�Y��4Y�w����pWe��uSL׻!����a�/�V��0���!C�o8��nX� �E�Q�/���hvl�
�_Q��
���r�����q�G���ˮ��Q���[���Il�SF��L���2���?��]WOc��#7I���+�+�h�'��N�L���A��S�7
f�%�D�QY�	�rqO�3I/�����k'��
��V�����bҐ�XqNy_�l�䋺g�M���ҁ�0���%�8�F&-3�]x�u�=�5��Vq\��9�cc�a���\��ܽ��<�^�;>5�J$a��+ǀ�W�f?����fK"�O��V�w�U~E��$�q��>@�]�@�M@=@;57
}�S����5a����o���X=r�U~�06mJ
�~��)�ioW@�e��$�L��6w�!��;�P�E����EՂ�tD�yh>|%��v�����{c7	�ީ����ո��5�G�9K���}M���$�T#0�A���-�3�5�x4QH_�<�.[L��Ն�"�b;f�g�VF<k~~$�&�����xi5-�xĝ�3�'>���k�.vf3�0����nYiS����>�j"�"u����:ZQ��,
ժ��Xx����vRG�	dF��\���z�q��h��#g�q,�J�7��Nik�sv�T����Z�@4� N8`�C�&ʠ��L	
��M��ae�>DH1!т��;wE���	��W
����^g�K2Z�b.1Jꡭ`{ѥ��Z�hEIr?���_l��x�왔�f�OϤ��Q���w����ZSB�;�9//�"��s\���P��*Ƃ���j�`�R��%�Q���"��jr�RTl�`�}��0�p�51}��̊F�B��
�����/H�V�9_��a�4��{�i��'��qJ/�aͦ��.�
�kA$�"h��{<]{hnv(b�Wb`IW���F4!�]l%!d��AH�����7R�8].�%�|�%�U�p��n{^��h�V�6�C�� Km��C�3���.Hd;��M����cۤ�f�
�����T�H��>�G�w�i�D�>��IJ�Dū�0�ɽSW��;9��xb)I�ua�a*�[�>�����3�����/tkx�����$2��Q�c�6W�ۓD��aq��`Ԏ�Q��L��w2t�t�/7(�*��\���e"r����!��]��k�0~�2~1u!ج[��9��(��r��Q)
�j&��=C��!�>Z��U5CZW�x|@�CV�y f J�E@����e�k�����go�s�S���:�d#�#��./�o���v3ߎ���Û=#�lv�Ѻ��#Jy�����߇�����͆wv���UZ[��Ng��etY�Hޥ� ��޾C��8?%]#��ŖAwlO�̢�N6�>i�’�p �`������,x6�0��B6+Ez��A &;��=6�+�W^ž�����Ń�qz�}_k�c�v�nN��*D���<
�>VP���͔������Tb�K��AI��G��_�+���2pӟ�W;戓b��,p1 0)�[�5i\3x�81�lb
`���R{��g
d�u�yhh�Ѯ%=��i�����83y�Z��l��u�l�DWbl�EC$��J���!�׳�Ǡ
M�L5�}�[�H9����_9�\Z�:%pb~�Ʒ�B�q<QЗA)9�7�F��͠�'�?�(�Q���EH�׃�
�[!��y�?�r����
�3Gb�R��hoE�Y	��cC�hC�kv�d����$���)��u=1P�ECjv�J�x�u٥b�3����T!:ݔm8���&["��
��� ���>En�n�Jks��¿�fT�&6�jp�=|s�o��p��4'��߳鍧���_�O��8�J�wkŕ����xM�yD��t�2�N�8v}֩�R����Bc9d%���Q\A��n8�>a?w�{��6Әd5�\ׄ$=nR��SVʌ�`,�(�5vE�}(h��E�Ƴ�������kk���C�X�KU��[��96���%'E���eϧ�:�_�,W ����r��S�[�6�JQ}aOs�Y-�6]��Pź���
�IĨ�D���Uς�Pg�fmfwպ��<9��2�C𯇰/��:�����o�Ҽ�}l����i��@_�/ɣg
��c�w����>wg��.~���#��v���_���4\���+�.�bb�c��Ӽ
ڛ�gؕ^���ҡ5�22���k,0��D�LU�>tSt��'������tԐf+�$X<��W��Z+Ȕ�1��K���͜w�݅Jn�I�*���c�X�,/�(_��BS%�#��lrx�JŐ}�-�I4��#��ou���ԎN|Y�)%.�����&^�A�\j}��kí~g�zl���AK���v��^��M�qz��l�uDҮi��q��Y����ˡE�ڇdc,�Z����ߨ��O6_Si��p|�'2��8P��-�
TNK赘Bx���+�<dD�5~�Un%'Q.�a�^��#.m]��Ϻl�H�;���M����{o4-�ٱ���#߰N�u@��_�:� ��]�9�m-�o%T�8�%v��Ş�:S�dЋ��>�]^ԓ0�$���E�Y�g=ń��t�	
����X�x'��0�
���,\}�x��Yw��"��:N�p�it�>P�.-h/�R����6 H��l�Z^�-�tD�W�+�'�[�I�]|9d��
_u��`>�{>��`S���zv����+4�kS�G@���Wy���x���[r��N����%��%�2 i�yIжݘ`���Ɓwɑ��4�* (�Z��L�VӐ�pnA��ZA*�2�ࠦ� (��Y0UF��L;��|�_�ẓ"'��S�R�Ou}�����aw��n�-R��������`d��8���M�봼�y�,�
�w��m�TE��
���,8��Ɏܝ��P�O�&��Z ^�*ɦ�6��(��$I�`&j�i��m�&��!ǣK"|,BpB�ݡ��0]�A�!��煞��׽0:�Ƃ��`Ypz=함 �ވn\	F�NS�\��qQ�-T�ʾ�:��T���6TO7�\�h�K�Q���U���"d�ԍ!��R�D�.NR��(Z�xY3j�w��D���`����m�+xx�F/W+�g�/�z��Z��IB�������G�ԙ��GB�W�K:�`d�1�!R�o�ӣƍ��L2�ф���+r�hT�}B&�w�8�
�JU��D�'��D���0
�=h̕K�K:��t	�:9'>vɞ�n�N.|�y�C�#Z��d���[jH���e�z|Zm�8��3���ZV,�e���>�ߙX�$I&�]�eX�l�
��QQ�J�TD^� ��qI���1�(����F\���ZP���(��^?B��f���n���X�^��}3�E x�WUϺ�.57�#�&�"'"�b��p����&#�l���H��
qU��H��&�ƺ�v�S��s�(�
�D�m|�Sn�@8��(c�'Ϸ�Ⅿ�a�����p��>9�IW�<��zL�J۬q���e��(�z�;Y@j��*l�י 0�@B��D�].����X�t4�m�mG�v�j��N��mhtm�[���5��k�̻�Jy�H7{�Y�3ΓB׿X6�i5n�Z+S�]g�v����&邖��!.N�b5���w:�#�.�K�͔��t�x���3!�@���֒W�Q��`B2�p�i�3�R�*8|�˨lX�#q�&��#�G{Y?���0�hM��T=��K1���}���¥{_���v5d�dՎ-���-�a�,Xu�f���!��s�X2�
E�!\�
9>|�;g8�OJ6td[T�>��tY����Vhe�f�����%�ÒϾe
�ި��l!�t���T^^b��u_%�hE�.L@(O7��؅��w_��Fp�J��3C�`J�D� �J6U���Nj�m�+�͑Ld�8u�5��]���۾�l4�J�Ô��$�YQ�T|���="�JO~�v�O:fe-wq���@��H�0e	X"�FQ��<��n�1�b+��S�Xh��ZG��\zĵw�yYv�ʺ�J�%�b�
z���ĢR�<��餻4P�ٴ�+�O�!u"(�TB�н��t
���I�^�tuݣk�ƛ�P����g�y����J@`e��9@�LZ�`t�M�|�A�x\1��{U�<�rU;��\R�w�-2�9�����(�<�����8���b�x�­��,�o����H���YA�[	�����H=�n^�Hȓ0-<���+ ���}^:&f^+Y��l�P���w����!}�l\l�ۜR�r���������4�ʁ�\�F�]���F�Z�u��^�<�tzST�˳��uz���zJɪ��5��*��C�{�������zӓ�|�x���>`��N,c�ܸ��OW(c�J�ڜx���1�!�O��j�)���e'dO��?�b6C�L�#_�RFC��o��'��s��SW=MѠ���n�@���O�A�]�[Q�5����y��7n��3�OX>�t?r��O8J
�-��f��S7���W`m��-(��5C�� )'�<f$�i�Z�Dޱ9�:f�]�Q�=����6#ik;����za
JW�a�.�������^[?��J�?=�Z�x�]m8�yH���o��Q��Q3��eLA)Nm�n�2qS�lӗ[:
�g�#�N�7;^�囜
���7�Z�!a���T�=ƹ�s#�K����T� ���*�t��
�zbG�\!���*Ƙ����]��0d�Y���[�㝶�\5��_[\�8��rJ��U�����s^*��.���B��CFB�b�>u�ͦ�v�^����j,a��#�n*A��g���!M�C�W��R+U��$�<_��nPS_���
��Tj+jSk�Z��<�Q�g_z�}��A��K��5֡�{��t���=^l/���n#0��.��s;�X���R���t{��-Ll*j�����q�I�ޅ.h�e�'�S�ٱ�n{ž�Cͮ�?;�(����Ƙ������4Y�����~�ڲ�����
��H���'�>&�cx�a]Fh�~W�Ds������F	�����H��e\�Y7Ⱥ
�W���4�V9��k�`�"y�O�.ƌ� 01Q�d/۽��`O7B���$���^�P�� ġ��
�Z܋\ؿ�����Ј�ֱĶ�Hu��B̐��,}vnFEZdR`WOxmw֒sx�˶�/
��_�dq��c��gP��_���*����k$6ctEv%ZM��{nI�~퍧�| 8P�7���g�s�^g�����@��K�)�ҖB�~9F/})4֣���?QF����v�O�;�ϙ�>�_)�,=�g
c
�����c�[��ƒv���4���+� y�B>�V(j���"y��J)41�qmҚ��æ�ઁ��\����R��W�'�/ܸ䑅�N�,>��6�߾��Ga��bV��Y�Y�ς��lh��_k�
+���	Y�A$Z%�E�f�f�ZO�q�U 2�x�?ǰ�gW�Ȃ��k�}gWY���
\z��%��Cu�����
H�bYd�۹)ޞ�ev�_�w25�wa�+,yy��xo�(�<pV	��68w!�q����f�c��p+�/�yp�PRlɘS2AxVB��VQB�vK��C�Fn0~�׶7��Gz^΀⬢��BU��h<��m�Y����6��d�pwv�ڠz���b�%N�m$ץ<r���'�X�LA?�;��N4v
�8�F���4�I��*҈������Z*�n�E��e��A�]P�l�:���V`�B*[�gn��طj���Xb�
�~�K
����j�um}
�[:������BC.حa���7���U6��It�#�u�;|��.�gYt�dp��)����9�J�(/�Y�\&N��c��\v��]�墑ވi�Oh�%��D�KmޫS'�o%]ަ��K,YC���7�4l��b5�PzU����rե�,�������,�-~�P��1��;sQZ��L����e�yĴY��J��ݤ��� 3,��$x>7��j�Q�D���j�M�xA�REێ��Ԣ�������/%N�#�x��*�p�2OD@k��._
9�=$�<#]sx<�b�L�AWPi���ag:f�ގ2&��ƚ������M��~W/��=�^V�~�'5����\��n�dxC�16E�))�o��=�,a]ʅ{TY�=���e|QF����Шך�|��`�?�z-,Am��3}j�5G!�Yy��A���֬/�Ӏ�F`m��Q@�XkGY�=��W�e$��k���
���,�.��]�����HX+�����(�g��h��bF�T5͎=��� 9??���U]doȵ���_��r����ϊ����Y'��hȮ�/�ĞL~�������̒���M�?��*ₗ��A���7&��b�(܂�S�|�Ն��V�/����C����?ŧ�S_�������}>��#�U;e���oŧ/�Q��G�s�~��&�v������h��s�.]'��߉P�[�أ�{hS��#�*��q�հ�r������R����b�4�2~LwF��|k K��Aߘ쬆^)B�]�x�`*�ZSہϟ~�V����
|�#�
z��f+ ��-~k��:�%�Y�G�6�*�'\��RC.�r-��>�s�0u�`|���5KĀ:�'��XT��.���?G�T-�d��#���7�4G.�1�NH�#ְ�L��g��J������
��ё��M~���A�i3�ъ����&\�|M�Ԓ��X��&��G���c���T��-�.�~���c>�o���W��M���
/KH԰��͊]�G�U�(&Y�	��	u�	��u�`��d>��	-�-�Ӳ����W:E�_��7	^�5!�4�h�h(�.��=m�
���Nƒ�un�^#���\
���V��lQ!�'k�jѨ�w������X��c�m>	ͳ�2͇�y�)<wa���0Ny��s;�vI�@�
�b����FIm�!�ь9$=��—�;)t$;�Lʂm���V|88+~� ��4u���q�CQ����|����G�~�v�џ���;���0�g�����X|�C������}�ߧ	<g�\
�3�t�L_ZCd?WGU{�X`cf��-������N�����l�!���A��D�h�Л�FT�H%x�LN@tI)Qv/5�|���vk��L�{R�ĺ� [��xQ�Z�����!1�PG��� c�b�	Kf��)��g���#1y!���7&��WL4����V�ߺ��|N�m�X8�C�lV�v��##��4��*����%�(7Jr�N�n�f|ȑ[ߖ���@2���~ķ�C�Bsr�4�(d[��������Ie�g�K4�u|�'"�|u����f��zw��GJT�_�#	:2\�+�	���%m�}2�i��7_�V-<�.��s%��֨�<䥴7��զ�[\Ԩ�U����$��RB]<c9�|��w�%%����#¬W�X.���{/v��+�՚��M?<LA�dGXgBe[�P�f��34�0c�S������U ��|���%��7�͉�9PJ�,�f��,��J��,�^=�������YB:����Ȣ*$�'Uct���W�̇/�"��a.N�t/�$�Ri�q�d�����+���b+
Ϸ��4�E;d���'�ܗqD��l�wi\�9w�kJh>V�4����P�у|���p��!��σF�U3i�;מ�����n�9I�@�h����V��~w�k�Uy9�P'����n��>>�{�2���<�~�\:u-�ɋ�_\cWX쬝xX�'_y,@�u�Y��W�;=�w�
w���(hp�� �-�ZUn��M��"D��%�(턩姦�P�,���`��HϽ�<U�A'*N�'2�J��ux�F��RO���jӶ�L7�K�YtwB�j-�P��A~H��īR<	���G׃ ��<�2dk��x�����%�2j�p�f��O^C8%�㠐ޥ���W�:��x3O�(&U�H!���Y��8)�O�!��:����rpZ�Z8�sAc��ް�*'���
��Pl2��������V&��{.i�;��s�)#K�W�a�QR�8ʪx��:�����
�:WH��GZ�(��s�m8���ָ�˳���Hp��)�׹�t�(>��<Au
�Bo��uk��)�-��ns��MܘS�n�g�4��a?%��dV'M��E�D��a�	m��}X�*�$!Q��x���""]
g�f���c<v<�����4��d��[r4�7tMB��[���o��9�1�P�?�y�ؓ��k���6��	��
Р��2=� .��:�2 ��D���?�֖�Mڊ8d�f?����2�<F���vn�Bc�b2]�mW1�9�,]J��\���ґ�l�2%��!\��o�j��EgaS�G��=_��Р����������1�Y�X�����W=�;�TAۃ�2�LN�N��:�^x3���dD���R$ؒ�C�}WfŊ�V�����R�s�E"�(ImܨeS:�-�
�^�u���O�M�t\O�%z�%���M�<��hZ��r:��t�!@K��ZB������T�0$%�f��3%㼵���҃`у�`'�Q�0�=��Il׾�Qn{���`�>�v�C"i��1�Eӑ�F�(�N2�ߍk�	k5���8���:d�৐͛�U����`%�2���
(������Mƨ6�p�0|wa[JtQ�;�E-K�G}��U~sc�}�$AIf���*�f�Q:�Y��%�a�R3�ZpVl^�;���6�r_�Y?Qj��)Zd��C�f�K'��S���fSR.xt����1e?��@�]��i����Y��%������d�byc��]�����d��[��Q�T�M�ɪ�d>0���
��q�t<T�`����X�1]'�m[8��u!;RI�,Nht<<�y?>����|�C�
�U�
ʔIv-�~������I%��S�
P���p_!���U�$Pv��o�0,�x�Ci�p��x��2nJ�Ral[$��z�B��,e�����#?�O�}��l}��/qnA��.h%�}�2��F��w�u��²	V:�|��,G�g`#���l�b�k��*q�:ZWݹkHU�8nٓGFh��Fȁ�{��?�������g��Z ���l�4=��p�;)�h��C�:w���\��#n�h�\�0쑇�˖Kv��~�H����H\��̰�v�@u5	UˤM�i�ǎ��f���/;���w���n���	�x����i�߼1�騅&�l�"��T�O�t/dw�y��Bq���R�yƧ�KLl�,=:M���]۳5������[khĊ�ܡ��}��Kv���yb8��bW:q��@�+-?�G6*�}�4'�%z�Hz`'
�Z�����;J�M����x`��
��^A�5�7��O}�I�;�ܩp���I�J�g��2��\5�S[����ڠ~���n��)����r^kh����u�)�J9y+J2]ͩX�KL%�<�J�0=��j��ι;�9��h�,�4��s���/���D��s�{c�R���D��̈��g(vz�ޣ�����*���u��,Ih~j�9�0���yΥ��x%ہL��2���
������KD�K�Ga�@r%�=�,K4|\U1R�Ŋ~x2ts���?3nҏ�F(��D�<��$�o(��p��HL�F0��}���W	k��x}�V��T+{t� 76�Q����{^5+���\~�y�e]�/��i��c�kq4�w-���pD�d�͈�kn�~1�xˏZ�~��Ou�y
+�6��-��-�j�%H_��m�mGq�L�m�2���t��v��s95���P|������YZ��MweZ �t%z�������,��J��'����I�����Q��`��3	��w��Y=��T,Y�pK�\�j�_!�I��Qu�i�z඲���Gwr�Ҙ��I�S��]���6B5��R������ �!�\��h�=m�8	W]�v�����T	�t�^���PT2¼0g�j��}%�����"D^ip�y�h-Zs�o$�R���#us�;#&�����NS�.��R������	;V�qw�9���A4��ʊK��=��}�OD���r��$���&�Z�&ˬwHе{~��{7Q�$����y63����A��Jz2��<&�^���}#�~�
f�ꕦ�M�޺F�i�eK�Z��0��FG5�N���RבZR@�]B[0K_�Y�����C#J�W�?�wf��:�l8��ҧ�����4pQ����Ĵ}@ta�<��C�i�>�����#�p�V`��N����)�
>�h^L��	�j9�T��x����G�/a]�֧2�����B*�N�YW�1K����E=�9â�k��� ,�J��=�U9R�ǽx�"<�^5���m�X;Y��f�J!!�"�j���`ʕi���j�h���%\eoȻ�~meĀ�1þ���[&���q�w��6q� +-���	C�ߣ�I~c���6`^�	bIi���u�����$s��N&��<��(F'������J{vb�ܟhU�?�˸� uy��x��#7z
�/�"ϭ����#9+��o�Ȑ�V�̥q�~JԹ��w#W���b]R�>l
�I���_i�`η�fW~v8��$>�Nwua����M�a��`����1h4�9��
�\��Jo	�ٺ�
k���K��4�]�i!F�X���Ю�Vl/<���E���$3��Д�]Jy�N�<�r!��D'�������C���ヂ��_���zש��*L�G���H�H��n&��Rr��,�(�[̕΍���Q�=Ie�&�gp[F0�ڞ3l��>�s�ߢ�ϣ��
��K��f4�D�F9cW�M;|���A�~��hp�{�W��@�d��CkWК�T���r<�|J"ZnM��ő��li"D��h׵��RNa��m�`p\�
P">����P)h
�.��"�� �U�jt��ňW��C���P���A�n��i�9��̩�j=�5P)��
(�j��>�$�]�#��^<vğ�mC�S�x@G�c�LJtY�ַJ���(�������2�p�l���3�.ˠd.��l�jhI?q͙G>�'���KrM��l[�y6>�B�����o��l�J=�MHYN��&�����Q���\������(Rʛ��+:^~�����X��˂��K�b�ڌ^��&�j����ˣ:>�]
=��h:�̪��8�`�rw�>	��AV��BSP��BC�C`��� ��GW"�B�q�x�˭,UثR'oH"�,� +G�E���I���Q��B�#����3e�1e���A5�3Z �͵qU�2?'�h�cK�_��ƔD2f���+&Ŧ��I��o���a����.c�M�.}��+l$��Y�!K��̝u聡�_�G�&TMtG�΢팫Wy���zd��bӀ^)�,ߣm	���Nɪ�"�;Zw���`��%Ly�ׄ�&O�W�q��ܖ��P��W5�AH������/�8U6S0��}��?��F�4r�P���&*�K٢F�YH6nGfm>G��'�C�2V�IYP�o���˵)D�XE�g0���W���r���Zd�B�VP��/ȍ_��D�ϼ5�Oj�t�f�Q�شb��!߶����$/���U�aD:�
��C��A~o�t��7T���9�(�b�ZG�.���V�:.M67v�cO�y���9���j:t2�ڌF���M��9�
Sf�f��
ȵ_2V�R�/�	�k�g�(q��X��r�	����.0���]6�ǥ�\��M�R��|���z�ײG�(̅T��b
-��pֹ#�e ��U(
�m}�CW�<)!0��^Β���@�4���F-z% :��y��X@���s��P�k�5�I�T���?�F�� t���a�0�+_��|ZE0�4��+x���~���p���!��lEz��oM�7�����1���mS��+Q"-�K�!��.�Jo�W�k~��`n�۾�����&��g�K-�K����@1:O�D#�A�"���1�]K�%��w��{3I$P���d.(��@q���:���q��>nM<�|.�@**}�ܗ��2�Y9�]{5�����a2��D���$T�*���Y%��e���	�M����)c>�9R!�?i&}ǥy��~��p�f���'z�I7�^R�aN�
&����<�K����j)�i�ƄT���85v��o�K��P��RY�Uţ���Z�	�sGh����{���@�4EMc��!F�!��^��>�P��j�q��(���
"�J�� �e�6�K�*�o�6r�[���"$vrT��Gu���)�2c�:#�t�3,„Ý!�ȼ�����	��F�G��\��~�Z��I�7�9��������-���^���i��WOM�`���m�=�~.�~~�5�R�&{����A�����H�є�G�����l:���B�#�C��9O��*������ڨ���7��U	I̝ű��ϋ#pm�a,$1�t��-m/�u���� �N�tr��iO�6Q�ho������^{^W�T@�%;���s�EϿ�do����C"�_�ٽ�"t��-�V~�b{;/���=x^d|��Η����r�02/k�b�E8է�F��܀�c���a�C="��B�+�'dÊ�5�po�6C-l'�K �Q0�yb���rX�7�(������[]�0'Į�~�h¯����ó����o��kt�.�.���j;�X:ο>O�E�K��:&��K]�Il���N>��JRk:��D�/���|RC��2���{�+��� ��k�[.ޢs��k�_fߧ��ޒ?/u���K|�J�n�~}��wo���ME��Gk�F_��;�v/�|{��>��l��z�n=�oy_�}���b���^�_��G�w���/����h������������nw�T?/S?.��կ�a������n�w�S��ߏ�WǾ/������q�ϾoA����n���+�����@�W����y�f����tÿ?r?Tw��w�������wN��M�+�G?�ǩ��~=ݯ]�=��=�{G�Y/n?�k�*��'S/����v�;���ۯ���b���ҟ��?�z/��_������
���g۰�����
%�M��U6W��
05�D��p����yx}��E7M���Sßf^��k(T�6cs������lI9��34C�������H�,W����Ih���A����sp�茓��3�rֆ&���ų����(��r,L�r�*f���ښ��+[鈦�}q���y@����O6a����6P���7P̵�k�ߞ���M>yh�y���(�z(}�x����
�4y`����-"(�"�5N^S�r��+]9��̔�ې��"�f3��0��%>R�ږ{D��H[�p�Q�NQ�!x�v�b�{�ޮ��/Ji6K�r�Fb����n�g��m�����-�J�M�*^�,lO��v�d����k��h
4q*���G�\�gYr�@�@~?�����h>C�1AƲ�A�;lV�nR�qT�'���g'��te,�~2�g,�A�������/\�v2@J�?9�2�� 
�]{��9�j�ɸ9�l ���� ׫bT�Y�[pȔ�0����������tMP���)X{�3�k1T=g�jR0�2�3�"$��A�K�o��gR.�a�U���c؆Z�C�Ds?��|����,�o�f�=�7��9�U��o1W�ÃJ����\��.�����C���ޮ$soݡJZ��c�͔^����G�	*7,T���N�l�(fLL�hx>J�aݜ��P�~:��–v�:A@��u��.V��Ju���rwa>�M
��w�ۚ���M�p�f5&e�i+~D���7;-0�
��>iM�����4�F-�4�BR�=G�i����#��������ILPR�7��B�NRL��{�~V�d��ۃٵQ/czC��Sӧ��R��޺XԔ��bNza9H
��K�}�%�x��x�o$nMU��P��#/�|���Ƈ���>^@܌SǴ�N��.\1^�(��Yg�eɋ������$#&�O�a���옢���Đ�U��Z#���n�A�o�KF�Fpp�#Ɔ�h���6�5��B�|�GE���AMDf���Z��3�fM��#��ie����׋�.���)]���2�̨��thl��Կ�91�@�4��J=�_����J���v���ҡ��'G3�6�5�WX�鿉=Pd����kL��H^��ӮpQ��9-�4(P謩��w\�%N��i�jC*~-�u!.��Z��H/D+�
ׯڎ9�1s�����dzqi75.��+�X���G�}i��s����;`�4T�M���&ЩMA�BB��Y�5�x!�-1��g-ֹM
�@���Lb�ɩbc�9r�F�����N;cˮ�@v��L=�TW���$��Èy5+�n�䁛3^OI�Ҳ4��r�0�f���
�Vȣ��,Ƀe�\c��Gɩ֊��(0&k��=����c�*n>iy�(��Rn(���&�=E�R�5'�Qû�%�*���S]�&]���R��l�$�5I�l�\953MB
�:�6��A�O⡪�����KŻ�v��K��5��n�@Ȭ�p�7�͚U��Oo���[�>��W�؝����p�B:�毹�$NĈ�!Z��7׃�JW�`���7x��E�{4�aU���L�����A�F�Xt������a�����}���#-�|�Bwb��d���YT��"G�����6�aB-�3�T�-�$O�p�����@dc��P��ja8��z���Ӻp3�P���d�;�����J��K�LInç
@eۙ�[mX�0����۟�T
�[Cك� �d�}�t"e��ӤN���T�%H3V��!�nۢ�9�C{k�\����'�����O�	r�㰱�X��_C-
��S�t�uӵU,��.�Vc��w�.�H[�w;���/c|���w�7�i�����������c��eG��3lCR$_y�ߖ��J�8#�|��!�� E�T���o�`�{hp&�̶>�)��č���<�̤���D�?��p��X�Ғ2<�3S8e��ڄry�Iք
��'IBu��v]�
H�V�u��<kk�"�u��.�syoΐN=;�Հh��Sz�-(��d�$y�M`]J�������H5���Dh��jN�}��q��Y�e��550!��}�\�[�b04`��b�8����\MU�)gۜ�f)�P�	j{O�޴��a�;R�X�S�Ьx�oS�T�4�%�9G7�ҙ�������FEkͅ#x�N�W?.6(�Uq���q���A��^i*4�	���˼���K�!J�a�Hz�� RgJO�h��y��6��aj�``�WX��*�r�#	��zFL�p3�!�^s���ql�u�>Q։'c�
�B��x��Ϭ�md(X)jm�f�t��ѽ(�|IKV#�SC%4���~GDB��$������)�tdya��HF6���%}4��%S1�"�R==��P��ᵟo}��W�&�@�r�0�,�A�<��a��^��>���s�|��Nc�
;1�`�Za��aʮ�d�>��߷nq_�&��l��|�Y�D�<���ef}���R�aBdͱq����e����1Uo�F����8�����q@-7���%OBVV���0�L}��E�8�6���%`r��-'�p�x���y���)M�Ǥ�u�e�5c�q��*��M��;��B�v�}<�B��=j���&f 
̨Z��������W�L�`�ֻ�Wc��E��*�]���%
���\��dҩrA��U�ȍo�[�͑G
�]�f<c�$�߲����DKn�z7�s�Xӥ�$����@���2�yI��A�剼/m�:�y�xfM�����
�-�r��3��'��8ۿ��a\6mg�Kdoa�I�,�GǗ`����&jS�釚�W��F��c�:���4��;û��#H�_�p��
L�#Y"�P�L	�e�L5/��?��V�@=����I�l���Q�%\��"��Vȴw��7`V�?%���-�}T8��g��ԣ�$��N�~�HI��=�\h���C���'�n�#M��a��(�`���(*�a
���$4��;R�$.(�ce���Q���t�)nB
��""�N�Bw*}ۊ�N��J�𴛕�s���e=2�q�
p����q��5�S��JH�0��K���g5���B����{ߔW�.�ӂSRޟ�䔩��6���h��_$b�BUr���#'��S�����obnj z��]�꺇�b3���}��ԧ9m��
�,m�Rlz����`��t���̦Q�}f˼�,��ڽ���/�c��J��¿�p�d�E$�TN<�X�mz�{�r`�t�wQL4}
nL[ʸsʞ�)����8;����k)@�N���6T�y�Q�Cf+0.�y�u��;�g��؊
\t�6�
6*��aS�R��ON\2�k'�h���rH+*�[���K��s�4S�G�/�¨�uz�\`�ϝ�!�܇T�+��͕B�I�F�����Y?^2�->E��A��=|����Œ����x:O�f�9)�?�3�мo{=ϖG�I�a*�FiJ���J�H�Q}-I�h�V���_N�������M��wZ�������O�~0�[�A	x��3�E+z5 2N���/�!q�}֫���tj>�i�\�z�,�"��锊FtpWx��:�
K�:9�U�u��-/�jځ�P�������`DQ�;߅-yȣt���2b
Ѣm���A�F?%��F�UB�~9=���+;�6v��G��P��" 
ˈrk�CZT�h`H�[�x����X���W�`l��1�5y��TP��8PYI.=�>�4vhD��V�!5�r_�_�\�'��� �I�(B�ۖg�J�&%�^�12�bͥz�zn!H�6}.p���%Mݡ̅
�*�sli��o~�W�e�$*���v�y���d�y=��K�[�f?�'Zb����]�L'�I���u��T��Z7�Q��I�����>�x�}.��
$�B���,]3�?��h%��)����ϊ�Z�Nb�H%��@p�>l'�5�Z�ER
��NHa��,��j/1�7E�xk�w���- b��Yj�х�R�tCJq�����Q�ț(�@K��W�E�q�4��5*$HQ޺R�ҵJ55H�S�bk���1e)z����[@<��L%����W;�T�Ec{��
Iz���kK���R��<1a�i"kΐxt|@<va׌��w�D�U�}�H��Xo�)Ex4��
�Wh�v�;�.;�6R���6�Z8F��Z#ۅz��V2�G�/�e�<�O�b�6�yۓ�l�b��sN��9�M.a�HF6�p��������q�iD
Hhv��� >�h�U܈}(At�'?�}�I8ND������8�?�=?���桱W҈�0Ҟ%�	|���b�e�މ�e`��&����@�IÊ���(��\"[�rz��.ZY)�$�ccZ$kGR�f?�E{bbx"ؘ� c�4�QCbH��a��[��E�˂���ߐ���M&�,�g��
ב�J����1����=��5��\�� 1�3ދ!,�g�݋౰��5z�p�X����W�BN]L�SP��X^�TAn�>�m	b
ٵ8�c�9m
kr�+�����ؙ�D-�}P��0z��,�Y>���ڵ��?�?��d\��ӨKnf��3��v2�������r݆��t.��ޑ����"�P�;���0>�ISţ����a��=����8X�\!�)9�
�H@w��n=7��-:��iكR�{9�E1YЯ��X��:j��v�4nhs<N���=d��2��$p��$ౄhn]�����������Z4�?#RO�$������Q��f���<�-��BL8���s1#��/�Cک�t_��q�y-@���K�&�ħ�zo|%�r�U�U�
���>^/���µU� �In�w����HR��{�n���s(���|C�k2��/���5����f��a�1�7��D�s���+?`��F3AEd{��C�e��T��=��G@�=���l��S�"u~^%���ىu�E�wk3�Àģ�3�����z�N�����I�1�T/��ͬg�R����ǿ�������QA��h��'�3��;��E�c�%�Q�l���p;�0nAD�ó�P�:�Mj_[;��!�'E��z���2�`Z�;�XN�a�F#g�}C�#r�D�+���Ýi�$� �l���j�7
�#6T�.�!�f�5�v�m��jp���㌙U�x8O�D��0%�:�#�Y��#�5�Uw��&W�LY������S��V��z��2@��-�
�"q��h�x�[VL���K�)=�l�B`�<f��Y-�zv���gnT��j�h,&֛��crd{��5Zb3��w�zĸO����Q)�3�����񽆖�c��r{ڐȃ��8�%I�#�µE�U�-{��c01���ɡ��]o�X��:p
�`4x^n��<G���^����~�I��q}O��	6q�G3���7N��q2k(w�L^���VOL��1ˋ@$�P����
���3��󈥧����w�I&��cId-�i�o�(��m��U���
,k1w��Zͅ;Y�KM�=I���Z���n>~Q?�Z�jx��G�B��b�?M�<A�ۍ�XZ�|������1���9�����>�N׬$j�;CS)�I)4Y0��;���S�{yzL���%�ט-��O/5e'Թ6�s���g
���'%Y*-bBn�_��(�n�4tM��$P�B�z!�8k�/��-g�Nxxv�5vU�œaC��IQ>-&%�>b'�n`P����^4�ķc2'��y��٤�(gZ�y�.��Sc����Y�V���둌܇����栗��0��7�Xv2���Uca�M#��#5�,�~��V�h�'ʹ%m�I��o�k	y�i@\��۪y�2ܙ��3b�3�~J���Z~��ỉPe-���&�5#(�{�}�0���#����$y���P�u�>��t�1��x4BD�'To�6�w�99�;<���5���|���ɍ#�.�L��x�4�/f�=�-���֮�G�/i����H%�M,1�{�涒a�tH�Ms1���̀���4]�� ='������-6���H�C��!m<B�5�f��+�*�o���ιhXO�Ü'�`��8�yƯ���+ 9�L�-k���W�~�7l!/� [�;
�`���\’>[@@I�ls��e�$�b`����i�& t�tˊ�KF�Y=�a��2(���d�I�>�2�TNM���k��(]ŃZ��؀�$!�����ϛ*M!׶���%k��gn_;�hJ�Y�n�%=#G��',�"�^G*�D�<��1O� r���xJd��-2���5��ڳ���Z�劑�[���O��SV&�_�Sd�)�?�\��ޤ�#Bnj��ЧiV1�*~/)2�m��
c�)���+���5^
⺫/3fo�CJ�8i��]t�S��1BB��2��iU��]�K�����s�l�1�E�(�FPp�^�ytG���	���E��•ކ)8\��\q�;RũZs�\�/z��~�&�y�3��.�خO�n#�>����V�z�sT,;&��p�_l�&�����=Q0�Le�HȄ�/����x�=��p��J�N���\b�,�4p4�몄g7�5\f(��Aĭ�8H�$�	L�*|SU���c�tvg�;U}ЛFfؘ-��P�nwLvZYUX�mq�^o��?t���$���
���%��@[αX��N'A���D��n��U�|5!�u4�(���=V(�N���ɢ0e�E;�˜�x�r�Ĭ�ΏTVY0�Z�	䖪�x;������`�t��ڱ,�Ch��8��6
n����>�$<2կ�-{>����	l�����$_�.�'���6$R�҉��L_zGM��^0�~���I+>��%�H-�tz�<��?�rt�E��-���r;\�SH��<�&���G@̃Ǽ�W����}�-�־&ᣕ����z}���$_C��ԝ�:o��T���Ƈ�%����FjH+��fQ���u�5��S�#?높r��5/5�d��~(U���.��Y��x�����2���!p��<G���*8�s���e٨�
��?*x��7��^��|��[���e�VT��o18�p���w��@"���-ғ�U��f^��f��3���46K��<Z��\(k'����{�7q��.Tw'�ظf�,P��E�6G��VE�S3l�5���s��Ԯs�eq��GVZ��
���B�>�j�f�)�����ٙ:Kr-a��B��^K�z�(�	���U��N��lW��?��Ehc`���,P�V�hK�cz�W�5�h��B�6��j�5�D�~�KuEْ�����+$�<�-8�v��t{����&�ܢD	E�� &=�ɕS|�=�E4�������	tWI���-2�2�P�m�����06u2�D׾����;\]��[6�~��q�������iP���%
cān�w��9��5�ih	A���J|��������K[�P��<����8V�+,����f���ϒ�q�B�.9���xAL�f�3*��'%��G�t<��=�
K/5*ϟ�U�$Ҿ����9<�"_�w��q��p�&��x/^4t�(��mg��20�Âs��t���}�?c,/��i��F�`P($�Gk�v�����M���i��&��4���C���PJi���
U]�a���;�4C�2�q}m]>��A�{��!����ӃU��ڛ?~gC��$�hN}�n���/�M��tX�a(��
�M+��8�;;S����_��2k��'B����Į#����3�9�H*�Q�(H4�6ӣ58�Ѝ�.����1u6��Q:X͙�J�4�X{�o�-Gw
'}_�Qf-sU7��b�~�]�ʐM���.#�Ǽ��bz�dEw�ݽ���)��-i.�`��eq�,��/��=02���T/|g(��^m��dzx����9q�8'A������T�ZC52������y�k�ӏ��:�Q�q�w�Xw֌��I纊���(_6-��c�*x��m����aO��8	�̋;����z��Cf�
��e�=�>��u�ʼ����Rjʹ��5��%�(�/z�f%$��A���z(k��x7��t`��BdN>B�}fߘn���QGTr��
)���2�G�P2w6Bk��U�B�)}����:��H�Y�Fذ��t:.�m4��_|V3�	����q��p����gp����&����^��3dY��Zx���r2�6t��(�=X�!����n�(���s�a��W��ia{�|�6s�ғ��]Zpt��qNj�B�z��f�J�:�2���LSP�MxD�=u����+=v6W�2B�M�0Ro������d.z_�6�J}ȩ�u^�1G��^=���x(�rbn����O�.P�[�!{�#ow�I��/����7��|�r(���o�������S��}=Se�;�����8-C��C�мa1#�w����Sh���\��э�,�=6����i�*�K���m�g�vm��a����O��]�]����39��ԇ�[��zъ>�8V�"� %�p
��l����1h�*��i%J0����忔,@ή�8�r\(c�QR�H^Uo��W��P.~�޲�s9���M���vȓ�d_��<M�!ku@��>r�����+��"�VU���q<ο�%��wt�$�� 9G����{�q���c���a+��#A-�)�u(mTa����6>�va#Ռ8�Sz�j�GP
����ڋ���Eo�5m[Y�b����B��J3�
u��3����R�H^?c��� ��
l�V�̃�~:i/4���\.xtWO��@����ߣ
�A�=�>PW�ll��G���ԑ4(B(F5b�9�I̐U�:�V?�Y�O�K�9�@)�Ê�)������N/m�+���I�>gl'VMt�R_�d�I~��x �6����h��;�87���׉	�$I���R�������T�čF�N����B�`��
���
C�Mf�IR��SLZL3]
�,|�M	|����q9���/䲓�j�(͢���w�2��ăq<�f,2���اTn9q�޵ih�M�i' �iDO�)o��U���Q�7>d�|�Y�lt>��	�ӛ����~� �3B��(��r+�kO����Cb�
��,Nd?
���
ԨS���t(���kwr�n"�n�z��e�*��~f;4�/��,?���Y3���@�Owf�k0�^�t�XH�ꘓ�L\s}�)��_��e/��F
�'�Y�k�*O/�nHvO���3D����5�*L��舣YR+A�B����$���*Q��˻9�M�1g�3[��JS�Jg�����
����8�������e��2�[�2G�m�F������K�C]�~Y�'M�N�H��M���#��T	_��|����O�'��E�&P�!s�uIQ̐�}R79��:�
sn�Y�
�w �P�A��=\�.�a|c��@I�]��ዼ����y���f�m�/>;D�魹X�MW՗JH���{����վz�Ӏ+H�򴠬Uj��$)*cJ���*�]���Џ��<Ǐ+k\lQ!1���.v��b�L��>�_�3p�=<�g�B�R%py�2U%9,����"(���B� �u3�4_���AE��/�3S�gDK���W�a+�����hj��>�S���m<`v\C����#����[1��&�������֑+���h���N>�ꝝ��#o^�0ޞOQ#C��b����v*�J��sB�m�x.{@Mfr����Q��}V��u���f�o�h��,�~}����!(M ~�5�}O��%��Ē+�����Qs�!��Aƫm�3��B��42@%�����STu
̷8�U[p�-��04{� �XG��*�w��� i;+zZ�t<�L�
�ĹY�)�'��5��L}�G%�����+�5!$��’�;�/9/��F�����e��?\��e0�w�SPR 
\��(�gaS���\"��(�A7�~�G�����c<j�_xpXG}�N��{���ƪo�Ш�U�=��M�:�9��1>����ܽT$j���4���{��?�ٶ�k�Mb����*��Y[�/���=��67�]
��ar�����=Y����\O�X�S�m�����E��	��8S�9�gC�"%�s�T�@�S��R�9~6�U���I��D�e�*���!>6WƋ��yT�'��50M���ᯰ"���!��e�[-�	���O��_i� �XH�;��-���>�_|���]eu��RY��6�(�7�B[�ϵ�k���'

e�C3� ��{���Qb��	�H!n��(��׀v�~��>���[��~�(����
2g��QN�ct��&hm@b��eҌ��9����?n�����LU��å��%�>�wg���7�H���z����萇�/�6�ڰ��,]��'R�����֌�@�z�u�������cKM:֙H��C���5}�ց�;�mG�A��bW,��R�,����Kw	Z���G��F�.�9'}yJ����f0�
Iٟ�N��W���+Q�4RD+�.$��ܷ��*��S�~��OOt8���8�w�u������I6��N&-��^�u7 �j�
A�9�ݎ�nJN�g��+�P�|RB�k��m�d�¦�4�.�pn����@˦�p)�=Vph/#|�����j�H(��4B� ���	c�ɣ8f��ҪT�S�d��bd�&y��G�F���3��zʲ�>SA�B�G���������#q�?�J8v����N�Y
�3��a�PA����h��eD�l�A�f�Ԑ�U���
P���~HNv(;@vɍ+}�
Y�i�
�����0��J��ǁ�	�g�����יg'U�a�&`%�ͺu�0�є������AC�JA�t��Q�k��JjL�]i�� �.ꈶ,����[
��o�����;������-f�D��`��y�e��G�j��B�:��ؠ�D҈�<�:i��Ο��>m��o�'�|v��#���RB�(,��ߓ4A}�Ld>�T�/�t�
{��)w^���Cxvl����b$;���e����v����}5��d�t�䛆�?�A��b������[�3��SRJ:��^�̿I��i�2�ީ2K!b�5+R��5ĈW�(2.N�
s���q��n�&�M��LNȇ�:.�����K�q'�G4�b�DD���83��wȔ!>{��7TFՉ��^l���m��P֋��PO"����3R;2�42�gU�s��;G�_�gz��T����;!K��ٺ����I+����/��$ȸAQ�K�Dg�ċ�/hTg�1��Q���M�G��utf��d8(hc��XML���%����7�D�i�i�
K[BԚ�_�E��!:���h���C ���L�t� Is�N�3�5?�x��i��(*t*��U��_���Aɪ"�|��U҅����tr��r���-���Lmj�?ɧV��"��Ѡ�z(���%�
���Id0[�?G��đ�5�h����FY�X�I�Kp�;���վ�oB��l
Lz���[��߮K}K3|��G$�Yv죝̶x�n�e�
�7��Z�"�^���Μ wk�"	'W2z��.���ȵ�^�"T1^���gk�74�#��:(U�t�
��^��&̎�?�Qp���v��R}��ʂ{$� �2��8��Ǭ��3�]�ٮW��|+P�^J܀k�����'巑��4�_
�@�ގ<ϴ�R�[?��JBs�J�W��[Y���Ek�d���H��r}rZ�$)MV��_՝y�:�V�����=��ʟa~mj����	<�,͎ɘ��2O�YW�]��m�����wf���*�^K)5?1�qr��=���9޽x`�(�'����l:�/CDi"�d�B
NPv�W1��;�LM�"���tg�H��we��]}�&tn���W`��?��=/=�s.��ς�d*`��:=\,�i�o;�^��	lQ���.@����o�՞h4�������N��`S
��I��Η��`�y�jW��+�m��wf���<(�csگ�)Ǹ,�[�8Of�=���S%�\�`K�r����D�f�	S��
��>V\��G���ms�SP��^,3�u4�m0�[�Ѕ�𧃥��(�>t?�"���ĖgړJ?�R��)O#�K+]:WS��D�r�$>R����?��T�(���'T�p�+XR<t8�����^^ et���]WA�'눘^�F)������8Ƨk�6k��
��T;SR}iv�3qO@�<�ע�:H�g�K�'�$e��d����e��62K��f�߆���
�\$�).�
�>����,���\{L>�mo��
s;��8X>Jce!�V씁t��p��R����y:0��s��!$�D�%V�*7�[X,�"e�;��l)�VAE����f��tT�+�5��[�P��Z�g�:l�}%�}P	<Za�N���G&�(�2e��2�+n��
��`�p��2f?�U�A�
k5ZfܻT�#�i����n��)
0͓u�sP�¯��=�~�0�J�`q��������A�e3f'0����#����
��ch�{�S�����,�<P�i]-�5�!55�%�s��Q����g�u5$Ѻ����D�������Rb�^�P�,��p��Kp�4嗟��K�2�=�K��6&��0��}�0������s�W��H�Ü@�}0<�`9B�ċ<4�B����?Q��>��0l�̲�i'�b��}2=	�uy��:���R�ndJ&Ui�B�*�~�܈q�z���UE��*|"@��L�͗'��U ��i){&��0���'�g���\&�6������9Ƶu�˪dzl��
�V�˯���F�)!�x$=��u��ŧ2�����|AM�aF\��d�;Q�0eo����ݚ��n�Z���g�^R�Oc��]�!zR�y_�
x�?T�FH��R���@|ģ���.S����kSX��!�ӷKq�7V#D_�'T���gS�ŷx'K����B	���BV��@�� 	�u����+Fn���P� �M�3?�7�rKt)<x�K�n	��OϤ�^��
�����AI�����{��=�u���ˡ]��P���*:��9���|Y���1��*-�`xS2QG
�0,Uy��ċ-3�Ђ�Z� [C�h��G7�k��Bp�i��9��=�õ����0K��1-J_�`Y�,h���GB���Q�r�L"��?�iA��(��(i���2�������L~
�G8�������$�N���EJ��|�)j��f#���ֻP�辱N�yI6:j�����P�"_�;��s��g�
�>VD5y�c�����]ȯ���^����tTџ���R��g���‚8���d�D�f�S�nd�X��G���N�~�K���
t�Yo����W�D���2ug( I������A���>��$�꼡�=V��6PC�%)�Ů�B�P�".����F��+3'�V@LFȮh�ĺ%�ØN�+��D��Z�@�c�]���~��|��m@����aA�)@$�8�l7����1�m'�$��&��"����K����b�oKY���-�Bd�G�2I�)8�ǫ����001�?�Z�>��1�yY��?�&����`���o�"�f��.la�q>�l���k���g�9�y~����8���܏�~�����ҧ(�����p�לV,2���i����B��'`�u#Pu=/e����.h���?�%/U����&�(�ER�O�Ր̸�
��8@"�ӭ�j�ۯ���ډ��$�4�׃<AYP/U����~��~
4f��p7֘$�
KA���B
�����iT��b�/R�^%yz��5�ǃ9��B�ǩR䅽o�	�[#�|�C6�U�s�<%�Ӝ�s�Y�&;L�r	:X��t����\�ۍ�sэ�C��y_ǫ�\�}���5��
��"����e��I�bI��L1+l��׼�̗�ɋھ���/E���y����R�S��� 1��&�nV%��Xs���_��N�\%������p�h?>e][g�(X���i<؀�sv�
6r������G��ns�%w.��;I!m�\i���(pdEfS����r(��Z�p ����<F2E�t������P������0�w��0�qܑ���|��֌��DT�֟a3F�xH���Xg�}##L�(q.�摗Z����>ډI�7xT�>�3o��ބ�E��~#�4�8�x�zy�'_��J���Ҝ%�E���� *G�L�?/d�����L���g[�$N�q��ʽYP•�S���:�U�k�ld��!,G�-���:|��MЁ��ѬB�Z(�Q�j�Y*I����N�U�ӏ\HE~�+�������ة̥uO�c���G�o���6�xO7�h�F��2�1m�,����-^d�(��*�� �Ԭ����ZJފ`��u�A~r6AjmX��7�`����H/\%�f��y�8��jUZZ���;�q��x&�6�x����܀+6xغ�ϖsȌ�c�Rǃ\¯[�t�%,G�D��>s�(y�v%�`��|6��򩨀���]�,�G&A���N��Ede�/@z:��s�@�����V�|D\��˼$^X=vN�
���=�f[ǹ�r�ٸЎh�n7�w�A�k�O�u�)�w��-��FA4�v9q��Wk+�M��Z`vdh�6�8^�U;V�7��ܨ�Trg�e�t%°�,l�7)�C�/��Uqi=5��1�/�7�L!�5C�iŔk�y�Z�<)^�T�Z�*��մbm	[fJ{�ߓ[^/�C�^ݿ-�׏���vt�4�1��Ue���PZNb�Be��j6\bfjf�ǃt�["H�~�pw��B����z6�MO�v�0-$Ԅ��VmWLB`)2�W]�:�.aS֥T�$�@ڡȃ�Xˬ����^�V��$S������C�ss��lI������i�����I�*&
2�~_j֬4nO�>��fz�;r/���1U3����ẂS���UB���{����9��P(u3
�oG_�^CG���Xj8�q����F:]u'��|z2c>VZ��a1g'�*���_A.;
߈�Y��_�`Q�M���i�Ė|'�]ߵ�5X��ѓ��|����O.���!�"�#���ɼ��Ds̗�W8���n�Xi�����IF�ޛ��
��x�ɗAb7Պ#�G��)��G������L֕�o
���}ڵ6��])f����>�3�'8P7A*��Hma;��{��IJ�!f.(.����a�Jf�o��y0F�Ŋ�{|R�-��u3��T�D˩S�8��~;U�Iİ��ͽ���dr��D���6�֨�dj\�4��Ne1����MD#�zB�7��tm4��+��p��oq�dx�߿�<ypZ�sfI�FI�zo��>]����mF�㼯�A���y�֫5�#���Al�x�{H?��qi�L��˼"'wE$(�i�5��℁������0��us_��Z��X���O��E�"oHM�ܞ��1��`���R �����s���zl ��dA�CйX���=R{��fQ��Tt>���;m�Y�Th��`�?} ȰS�q�q�¨�T�#�}���<�T�ۢw�QH�dm^�Z&_Yf}�4�"|����a�*fTBV��Qϱ �s��>��;�$C�?~	%�7�sO`��|�eh:��|e��c ���d��)~�2�҆�6�^��)�,"�4n쮊y��X�h�1���,�gl!"�
r�1�t�����5��N�}��J[g�]p:��s������>5���}�|��¤3�~k�4�`�� �����Kt��_�E>�@/��ӊ`�����7M��FM�w�f�5��d��RiЫ5{��sM�t.w��b���uh���2�We��3�s͵�Er�$0Sk"�jD`�����MݼH�4SDL�ۚ��1BR��g���b'IO�J��V��b	�}�#��J��1�C��7�/��L�ϹV�pr7��N���у�����_&`� O1g��l�P�kǿ�2�)�7�$��4���|�cX>�H������f��7$�D����R"��;7�/6��EE��9l�������6����i�:=%ͅ���Rvt��D"��I���b���"U	tCb|p�d
�6����ϳ�����ŜM9��)�Mj/
Q�O�@W�d�lj)��C�k�#�ㅾj��
�&��#c�������w�u���-h ���#���D(ƣ�쏢lt+�V��.ҿOr�z��3��Ύg�3�<V%����j�. ��0��D�Ҋ����pK$X/�>M�f��.�;��.�hQ5�]�{�v�(�r�dX7�w)�S�q糙�=�u��}
m���jo�C����ݫi j�x�
�o�=�3r)}��0�m����$X�F�]������ڹ�υG�zT��\D7��(�Ė^���q��+3���
��|i+�}ژ� (��T-�_\`D_���6���w������O���;R�io��V5{��!��k�HnL@�X�5����^��V@����+���1�C�8���E[�Uu����6B‘lG�z�����u�\���˦�S�42�SMڧ�1^`�S�u���fB��\δ����`���pbek3�|]�kjn�zJ�`��,�"��-;.��1��6g�q~'
\�
����S�[�����F�5ef��
K^���=A�^�l�o��t��P���Qq��0g��Y:x?�Z&3e��iv5�ޡ�0�?gZ>X�{:D�ó��*wo�aW6�ZC�0=�FL�V���B3�i�o6ъH�4C��FF�6�4�Ӆ+h�(C9���U�Q�M8L�Q�*�z�@���!4�bD�P�Q���j/	�L��I�u�^i&��t�f>fQXV�s��隂�n��(=�۾�nU��[7��謤�bc&
�t�Qw�/Ǫ�z>?3����D
�z�
�c��Ի.���u]�]�C4r�"�l�+���*�Y�1��S�W��H�S�}w�2*p#��AՃ���M��o�x�aO�,����<'�����lN�Ţ9V�<�[���9�',
E�6�Qk��
�o�\�N[�D���?��k`�8�Q����hR��O��&����v~��9C�W6`�����(����*���������(��!������_bX�'嬩�|�
�(5r��7i��R�P�ΝJ
N]���L{�Y�M
�" 1�Z�kG�|�m���e���2\R�r}}��}FRD�C>�Ռ�+<���bh�F&Z�av#��b�;���ܲ�Vk�rH98��_�_�23��D��
�GV�)J>�L�x����=Pw��
���R�4��l��!R;]p`�)(�����ͪ���h��
(�Y�y�>�g����ֱ����,J\MZ��	qok���̻(���e�l�<�QAt} Y9�!v���~�bL�(����7f{-fZ;����=16���Y����~ˢ��XQx�I����s�����*1x�ҡ�|O�[�PZL��s�d���GN
S|��e�Ē�Q�a��s@ë��-��ԧbۉ,SOTlu���h;�_0�ˊ�܋;�K.�ի*�ysf�b�Q�Gۇ��}��ݫ,GZ�����g�h��óC
YܥC�^2����]Gt_%�����q�+k� LY>��������>@4 9Z0>��1�X-4����ט�=��X[�|�3MNIj2Ke�=��S��E����ߥ�4Y�iH�4�.�H�:P����'����E�jU�qɥp����<zI]<���_[C�!#�5<�����%9����%a���:�ؖ�P���W��/|����\�ʽ�nFdZ���DyA�6EK�[�g�]�Kf;`SAD-jxYXE�qw	��X��T=,�K~�S2�?�T�ӿ��X*�w	qyq�F^0�RV'�/��܈n�i�В�^�btS�ԩ���J#m�Óv#�N/�~�G_5�;����uM�P;e0/F�k4�[�6��~d��k�)��-�K��Y#?*>��<߫�ZS�[;{�Y�c�C�)Y�O�W�,�h/Ҹ��H�q�nU#��?����z�����#DH0�y�^y|`<�I�Q{[�]����;D0S/�nsk�":����E�����Db]��C�@��Kx3P2q-H�����+s�\4΄����w������5N��&�s�r��Ҁ=�D���B0�
���M	��v�����b$~�'�k']Jk��������d��q�tgǍ�IA>c��ՠ���(�+�a�
Hs�a)�Y�t�}�����i��T*r��w�� r����H�VL%��V��!�]�:<#�G���K4��^��S�⟍︧�9�&"v��� ��|�m�Y]"ˠv����^�ӭW�5��q�_�y��i�ԅ�8n�f9n���{���=d��T��N�Xf��O�c^�?X���ص���`i�j�O�J�gYB-����½���m��/J��`�&}�Dն��}$�:�Nx�����8g���H��j��?%q6���'�Cs��":w�)#��e#;��4��s�
��R��0�0����,%�n�[Hjߢ��9�
t�+�|TI��8�F�\"� ��E�92�|a�c�*
j,���V<	_`ҽtQt))�
��!�J#9X�#@�U�Au)����Æ�x�0�?��wЁ�`���Yj�������S
�N[�t{�����Y���#�Y���"P��%8�m��V�j�tn�WRu��OL[O��~����o��s_��Q��}`Ȼk��<N5��z���Q���.��n�N����`�����YX��0��� V�Kc����tk_j�*Q��֘��W��ڿ��R��bA�"�v����=��G�*�l��z��@��剄q��S�6�G�K��;���N$ˍ�`$]8��W�Z1�Q�e�!�+#��D�����x^r:a���I�|�I�mJ����͖:k�͠s6�'�9ȥ"�Ƚ�0'��(b�y�seܮJV‡$�0��fX�%!/��ٹ�.XQO��S�嬹����}��
Q�� i����/�W'����bI�h�U�E�$�����ҔQ)�c
a�%`�y��Q���v�
h욄#c�X~�;+�}g9�l��/�@ɔ���MU��_6��Q����)Y��{���$�F�<��yaoDY��߇औ@Y�x����x��^��q�6�{�Ԯ�+����0�`:�ؐ���C�o׼P�?dA|+G��%�H�����)�X
�b���s������&j�lgO��'�NJ)�S�S4��w�W�H���e�4 GV�Ro�v�+�y�,����~�߃�j���R�
c͠��$��>/}��LM��X�r�kF\�R�C���L�5�63��$�^nф�H����z�V��4�Ϯ���zY���;m��M���gm��� ͤh�H��6��'Q����(`�iV�{�ғC�cU�25�ؾ�`��1��X��G��L	��3�!��V�b�c~��0�/���pF'�A�O	4��y}�ثu�H��zs,�'��ڮ�I�ې��b�� �#r萔w�Ӡ�,w��o9utR�Yz�O�-�� �R���Wh�t0B�ɾ�":,NdY�}NQ�\N
��O��ݯS#5�����ۀA�`l
�D!y.�M~�c-����7&h���Rn.@7fm�-�Ŋ=Ѹ�!wH
�te�!]e��Q}2�e���o�옎�	���M��80�x�u����D�-�̉tה��3�O�{  7�A�~���P&�D���:#�Ȅ�i�"�Y<�"{`_T�߭���)�*�'��3jZ���x��lo������:��m�1���\��[��콏��=$A0t>�Ҭç8��2�J�m�a*�=��?�ی�+*�źD 7
�8?�
@�s*P��$2��(l:�<������Yrl&t�qJ�s���<�?I%q0��i�&�O?�ٷ�^ضI������f>�	��q����'F��My6֙��7�#W2�D�wEp�fS�+�
�b%>�Z>ۜvg*\��Jc۶��Z��#�
1�i��6��DfC����a���/p^����z��.ٺ�y��:����b��(i#���Q�J�ht?�
?�''-ӘY��[�8�a�qE�b��&�A�X� ������ƚ�m��OE���UE���w,弓Z)8���@�(�RP��7L�"�@��
�
��i<bf6��4����ĸZ�1��|G���MÎ�˰ڡ[פ��hf�}��%S�:�-K Z9�����R01�4�V�>�"�4�������c�T>�/՜$��M�Ɔ���!��	x$m�G�r>�~�D|��"h�\�%f]_Za��4<���:(�U����*�Ae����z�L�#װ�jӍps٭�t$�L܎��0�p����tk^y�?��N����{�Q'C�$:j�j�A�l���ʣ��������ꔁ~(���z�2B�L
+X���������3Ď�D�W�Wn���]�>�� ��0�A9K@����U���3U!���Fg��}؊�ύV��B2��Z�L4��}�0�f���������$��KgC)�D����B�卛�ܜ�mV���&�I6�f��]W�V%�Smס�
��d�I��������[`�@�����&P�SOn�^�̍l���4����L��i)��ã=���*���V�>���X�tP3G6�VF��3�2��/���>��'jܞܔ,�k@�h�Dwka�f�Ͳd<(V��'vm������U2�N	�U1�=[%����?{P�������[�5�i}&y<ҝz��9D�H��ԏp8�a� �|]�)S�M�����+��ѭ��Ff��s.PN�	��9V�)V��u���ʟN{NrF�����⌗[�sI��	/]mh�}�C&:LߡUq⩮K�Wv!�R_E&�p�r��ld�`����p3�zM�<��NQR����P�%s��0E1�L`뙉��]ůT�"Z|�$]#L�����>T._��zJ�Xސ��^ke�8Zd�*gH����ل�ݬ6 ��O?�Q��RU�p�g@��Y�9k�(@8�bV�E�:�6��1�X�?�O_�w���,j��k�9���s�E�(wD}S�Ţ�L]�鋆�����!\�����c���֡�em�9?��m��������h�Ab�`O��6'��9�.�����>��2����D����a%��6	��
�4:�V��P��E��řb����K��S�G�
��F�N{��Y+��\��0a���.�=r�b
	%��+�&9�Y2��o�ˊj�;�<�9��ox����z>;�2��������1AF�-�,��S�E����k��@������g��4��1�#�K	�2�醄�XR��*jaD�J��]��fXM�]xv����ڻPI�D=w<#�GM�h�S�)iR�3;)]+G�����ʁ�K�c�ݶ�_249jU�#z���'�����Re$��1�\;)��dR�q"�m�v�w�Y���i�jK^�L�l6�5{�����HH8>��ϱF#�N_�;�''o�'��F�/��ext��"ֶR(n(8p���~���N�BE\U�*<MK�� R�ަI�B	D«���}���������Ը�2�܋V�<]�;$�����y;�z2��!~�I8?�3��Hs-u�T��G��������b��0�PK%������m�&G$]�7hHX�8�qH-lTy/�X�P
�s���o�-o�2�j�-׫�:]�ː{�?�8c���:K-P�l����g��G��nRa�/C�:�g�3+�<��JrU�e�J�B#pC�����H�r�LV�n5�s�t-�.�'�}�8P����T5V�HJ��y4��C���X
���Z�MY������&��_H&����������ԕ������o��qW"V�f�4�s�V}h�p��i�ag��\,��j�'�9C����+`Z�i�Wl�
�X�xS5	g��_�!-c��?�-*��u=6HX��=w��#��45��f*?�~�QGYp&��´�j�v���Ԕ��?H�>.�ɩ��|p�s?߹ntx��.��?�M	}�T�
dk����	�����N�����=��-�ej�`ŋq���?�zOA��|��wC��/m�|:�,�U_��}�����#�H�U:Q��3-*���[�ŋ�ۍ
�T��Sٯn]�3�xA^(VK�q�Ջ��/���g����-4�(�C�G�.'Y�>"�v��S3�^x�ع���/��K�܃�gG��O�Y��F�3wJ�:|m�
�bŜf�%�Xu�)�@��}a�8\U��s��m�˗�11�����2�hG����5�ϑ��ο7���Ȱ?V`Kdu�0y�&_h-q��rk=���yBs���kqz)��A`׷�3�;%
�W��suV�pg4�����P"�Nd�s�)�1�9
��evGj�z�3'"<K�
�C#�\Sae�(4mQ.����g�t�3VOÌf��FC!�&��}�l{&+�sQ8N%�<qj��M�D�}o=0����U3����_CVk�C'�t��?{'���ҳ�2��ڒE������&2���������}`��$$34^4��;e�ȼ�+;y�N9��|�/�c5��yP-��;���M����Y5_�]��w��EJ�
�j���BTF�JgF��K~2Z�=s��,��=�'�~a���.R��)�D���n,��1k��] ��Q8s�#��&&�U�%=xD�0���r�G�l͛�QVa�/	n�&o���?)2EY�z^Ta@��JM���ˀ���x��Y���N5��t<A;���'��I�#���jЙ�
�~4qQN+� �C�3%q	[��y�6��;��_��ȡ��#����g�%)8R��	��;���S�+����n��?u��\Ii�.��$���x�e�r���RV�LZJ0�R*�Qs�Q�J�@�{s橘a$Y��1"O|*!�:\�	3I*FV���UR瞘�vPwX=�G���6�sl��h�BOGVg��4�r����K���\M~��>��J����dx6��DN�|}�;�-j�r]	����X��p�L��\<���&��!"�
�u`{,��N�j��ل#��Xyw�j�b���[d�c'|���y�G%;MbY��e��*W~D�f��}��A��ğ:��Z�q4�VA›sz鍴ƨ��m�@}l.�����+V��(z�	���#�����EG�܆�M79]���qaT�`v$�㶯�[]{�⅁� ��`?�s�ښBS���Tٱq�_o�B�xt�x�v
F�_������e>dX���v����!�T��B%r����Rr��^�IY��Y�E��f~߽�q�;!0�Fg'�X�Z���.�,�e$�_@�5>�Qc�T�ˌ�*/�i��g��b��}>���%�+�B.
h��%S�|�Jt�ܾ�%�oG,��
��0�H�]%qk�2��e�0U�Q��t#�2]�=�:�I�>U�5�Q�o$t)Į��
o��m�?����!=�:zƭ���0��Z�Bb�9J;h�T��䧠�BF�/�D�`�۸�d����eؾE�8r)��0ʒ��䵩��9�k�/�N�4��wm(7�||�ܴA��v+a�-�X�v�����+��.�����Qݝ�D���h�m��9�P�.�8|V���=}76����Gi�g��u���כ�h�6*aUŲ
t7v���@�X�YI�(�i�Î0r�׆��B
�g�%� X���}bNV���c�7�C�'wAp�������#�6U���?�5${O�M��o;��cs1JZ�?�e|���(Ǡ^���c�}�Z�s>��S[�05��gB�ѡ�����G�k�;�b;[;��x叁f~��8�r�C�E�w�Z��5��˶4VE�ϝS7��8sh
q1*&�ra��5�i��3�K���PmLt�8z�E<Oz��j���o3pdo��4����}�~��k;�Ìcj�vB�l�蔒�mcC%K9�25��4�.a\��(��+�����zsu�o��N���t�Ax�����8U���P��
S{I=�"h!$̖L�r��b:�AK��m���)���e"��*(�<�F�J���	j��7���K��������x���$c�ms��o����IV[w�'!�Y3�$�,D��3\l��Vm��kq(5$��w�[��K�\����k��5t�D�6��V7ZQ���H�9�Pe�=���Z5��KwoU\�-&�
��жT)M�
.�=����eqF[��]���~e{,x���D��h0	ޒ7�F~���%�#�3���a��|�Ӛw*8��]-��Z�2�sW	�)��#*��]ݬ��ڊ�
q%�FI� �CY+�`��e��UUC�A<~>�ʬ��S
Z&E@�mz����E�7=6��뽄��7��\̊�
|��^�4�Wx�ur��@��m�.Q���U�����Rp+v�Dt�,�@��q!'�	�p���H��������դZ�Q�G����?��lm
N�����%���*=Z~�����+�!���!�d;�|�o�����ـ:t��S�"��������$~Í�U����5zwjE��w3��`=,ȴ�,7�9L^�ҟ6��!&��Ɗ������]�q{J��%������J��b��ɛK���}u��>
�Ak�r�$Vx�8�L7�{A�7F��؉$�*��fo=D4

��8J�q�
�����B����[�m$C�* /F3�\b�%'�+U��Z�#�����4��mq�%�&%�sdH�/�/��.~�`Ua�i
�x�ȚD2@��iZ��WX�U��ܺ����t��X̫���	�9%��M8�rM�%'3��K.�RO̎�� ��!�7��6�ۮ|.۲���0\1���i��h᫓��������T���烓��/��o�T��J�E�.
J�g�p�Ǵߓ5��F���h�<��zq}ɰ{t���I��R̤���/V�X%���
~�l��:��"y�����oiD��)NSF��`�H��\��eI�|輴n,ؖ���=�Ag���:=H� "��&���SkE�Ԛ�D��5醢e��A��ɵJ�n�~��хO���7�����|��L���
�p1sJ�����1u��Yk�����Q�BY����G�g��s;��q��p���J4�����k�N��:L��d��^}@�!#���<R~�"��n�߼)�0���Qhk��D��0"+^v��v�}p$�O������%~��`3�����l����kW��H���ٰVV�8
�OP�u��U#�z���9I�	�ƚ�:*7�"�A��!/"���E
r���5:b�3�T@�9L~�=�E�/`�����/��� ^Q
1w���#+��1��^�'�
6�:	����qF�����p��0]�![�ax�F��Q[�kp��(6] �6LfT.卲����
��/�R����wk͹ϭPq���h��}C�oUq����_�~�р�u� �m�~g����(!Gjbs�)mNkY}��!=W*u�d��Q���G�2���_�d�l�Kj�ɾ��g�1��x�G�Ht/u��dC$d���P՝ 2�d���-�A^h���P��{,p���rl=�mNuٷ�^cى%{G��{��V�A���
n��k�Ktd3ZQ�C7�rO��-�7�av]ԟ>^|�bH<_�.!��Г���d�1��3��[��&�44��&z��]��WD	�J���q>�f##Tt��Fɿ�0��Vl4�H�u�T�%�J�P'��.W��
�9U�g��>-P<{�����7C��=����}�k��L��S�	���o"y������3_e�F������� z��Rj�$N
Nh�6U��U�P�[��Y���|$1ٸ�Nӆ�ԫq�1��6ɇ'��$A�>8I#�$I\��SJv$b�Ѥǃ���#���e_�-��V�Md^�D���H�͋�e�p�p�y�㬁`�'CٛY��T��PDC����Bul�{�Sc�W3����6�<�j%�a�0Z�)=�~-����9*��	��ѝ�l�Uz�d�WQ�*�sS�uC\�!y�_+Y�iE<<��=��=8�B���=�W#����_��n�����SL���[s�|��+��{[��Ɉ�=.���cX/D��j�$YD�����K��q$�VIp��k{9�|�Eɔ5���z��8Iu���T��๣@�}(�shc�<Xa�dB?{g�~Ok=YC��fD��o��1o���j���_�$h�0d���F���r�B�e��P���64��T��"v�X�yIÚ�?=�)�J�"��ɧ����/Q�bh΢gr�&��GXN_��A�f����Wb�,џ���Iِ���&$;� �h[����jkخ7�~�i�W���J1��"�:B��X�i��'`�`�k��[ɴ[GB�L@��P4A��L��x��k�r`昛{��m@��B���>\+�9Q.����9ES_�ڼ�h5hrs��Wl� �o0��.�;Y@�_;Dd�<��"�|#n !.�� �0=��H����L��|-�֮�Yq�a�#�V2��r��
�N��)�e٪�K� �Q�g��Xyk%�0�&�:#���A��P���Χg�,�m��m�Q!i�8u:_��)��_\P	���oݯ����~�z�U���<����VkaDOҚ�YRzQ2 ��>�(</;b6���&��N5�|�n|���am��H"8������"-���>Fm:I�--"�_T_n%�Y���BU��~d��/��y���T��^$�HW�K���B�üM�?Vy�\d�%����r�:EEFP��	�0+��/��S`O�9Yz�Ȩ��I�/�&���`G�ޟ�Z:��'�^�.��_�3�s�z9v�/ak=�ՠ3$�~`oU�p0X�)��8`�QJ�Řh��Δh�w4�|��oAdm�e�H[&��N1�.�9���c<��_f�5��9
��Q��u����	nm@�y���y�j�%�s���?Z���͟�6��X֤�%@��3�_?x���'��/��}�3M�f��7�ԅ0�oy
��q��͂?��
j}ۣr��,��^�T�d��t�����SA>����qF�3�w!G>�7���C?�W�3�C�$��ڣ�u1�ɔɊ�{��]�Rn$���wš/��c'xO�]7LEnaB5�G�)�U��q8G�&;��1�k�e��BT���E�U��^.�.A<�`��V�
��lWnN;��R*Ǯ�A��^uv�=�᛹�Z�e��ibt�~IάNe�(t�m7��Eٻ���L��QGt���?zY�w����D��nn���6s�k�d[��,u�`d\aV�!� ��@�q̜^vz�W{{ ,?�P�t$Ć�-��`��@�&�S^�F��^�cRa�\5X���KW�E��8���pȿ���j.SW�.��Y�o�h��&I�VgQ��QXkvɶ���ڜ�i��mqG��Ũϐ�����>��T�c��A��BZ���@��-�^T�%w����#��%=[�.@ݎ�:)�t�Qd��$๻k�H�f�f���,��'�d��}�Y/�-[�oJ�}�-�-:�b`xI�5b�X����㉴�}�?.ֆ�{�<W�6��`C�#;�	s�%n�������#��X��!,EDdՈ����F�����w��g!	P�/©�lB�ʝf�������J8�s��!�,��EB@1�����S%�S���W��&�j����r�:�<b�>+�w��)e{�
�$RR�Ya�m�u��;z��#�e_'!S�J��
sd���E�x���$FLÒ�EI��#��|�a�/��Y&Ď�˾Z
�}�z9Z>;8K��	����\7,⏾;��*
Dj
�NI��v�N&��!�{�6pKe��O5\���r]��t��w�%͞����y^��3�I+�=1"�+:�SlEw09�;��5kh�?|���%,�����PD���i��DZgk1?>o`KuO��@;@N z��[�wH�N�'���E$�1WEk�4����V�
��7�D��$��UC���Buw Kf�R�Fp�ݖ#:l���0Ϧ{
7 �'����C���V,C��^q��u@�F5�� ����TR�N�,��w�y���~O���J�\�t��}��ë��tӝڋ��+�p�NRe{u=��+�Ti��lj�%��ʌ�|K*�.-
���;L���}�1l/�c=j��F��~��N��o�����q.C��+x�6q�
G|��o�C^u7�s	�E�˒�f�\�*HE_���-Z!�8�F��]�+;�>�a~l6+��Q�]x���n��Mx���TZk�"���@|74���
�|���ֺ_��(��h8lq���RW
5�4���C=�p$L�?7ɾ�_��@��vՅa��w����<��|��r��?pŁ�)q��Z�D�	E��i��b%����
9Yrޠ�����N^(�w�0 &(�N�ni�و=f|��?߻ݺ�ǰe���ꓶSI_�]:1�Xс���|�u�--٨\%O�8�z�����kM�M�6.��#�=�#Ts]�}����z�mvvA0�����H�Tղ����	eE�J���g�H3��KM5�'��6GQN��uErF�f����w#�N�=�dV�mUP}��.��X���~�����y<)��r����"���/�O�9X�c5�5}΄��1Gi!7]*����H����|~1���ޭ��oI	���cÒ��v��*w������Q;Y��u�B�F��\.\)�eJs
7E��}"�"�8���W x|�;���h/����]���:�7����H�}��}:�
��`&�KqPO$�s�(�W�:�1�kF��ik�����6@ �W��!A�-���B�7�T���s��%�'�r�y�s��@֛�C����~��9��WU�ӏ��Pڳ�
s���)����)݂ho���aHs��l{��v�g/��l�=Mz���D%9�-*@䢍#���~j���LNg���'�-�9<�9u!Ά͇�J9ĞW*P�#T�,���Yb?N�!�]d~?[K���ij�l�԰��z6ݲ ����z��K�q 1&����B��Γn=���T�J1��Y~����6cB�'��
���JI��_4d��ϓa���{�j�ڮ��8��������
�r���eB��@XC�9�q�e%��B~�n�
�^,r�|�T-B;�e�o�G���\V���䗂J��1[3�UX�]W�ou�Y\qj2��lz����Lc���(�%P�<�V�ѹ��Խm>+�.�3V�*�PS˹�v0���-d�?��('��WYuB&����:�,��!����L��$K���*0v
�yc�g�af��]���5>q��"�w�t�i�)<�n��A.�3�{�QcX�xV�;��+0-\'��S�r��RX�x[F��JQ�O�ePa̾�WO��yA��s��%��,�ZM{a����1{ �!+̘,��l���
Χ]�9�I�
,�puT&���X*4L��붌 I,Ki+J�q~�́���9F�l�Y��d٥Z�:9�!�<3\�`��pt����M�~��4 q�-#���S�^xQk������<���H���5�a�:Nn�Da�L.QW6p0���R�Eh��@�h�Ȕr���������3l7T��
��p�a=��<��m:��=���:bw
�:��ɽ<����4Q̩�;qOtsϵ2�|�at�V�����h/<0fC�H�`ɱ�!���T3�]_mG��UR�5��Vɞ�'�4��9n�t�]x��*2Rm,�K���3eP��$�/K�|]�&bߝ�aݼ�7�!J�y���'Y緈%���9}�
�%r�p�J�Z���7+L����C�ʀ�ўq�������˻���j��L;��0�?�!f�4�u����[�����Gk��9
�8S�c�x�^��I8G�NGˋw�T�_[����O�.�5�������H�L�7��E?�j0�m��hюro��I�T�4���2_�qŠw<'�v*@&��e��`��>E�h��>@����ʜ��=�Wh�MHy��1�m�&@�<�?�R~_a�#/��߷�g�f��.b���`e	���JX��VY�]祠��G��䴖́2&$�3��*�a*�*?�j��lE�I�2;wj��,���)vbw�0�q^�2˱�w7���ܩD�d�}M��s}H|ce()�n��*S4@�K�G��D�-/�q���VA��7���NٗS�)O�{��?���)�XC�66$�z�ڇ,"Dc�[��c���׋g��B�zܐT!w��T��}��j\ӭ=���"/b���^�q�!:�A?�;3�yVb���?a`؝7�?uR6w�{��07M#PY��m-���'��6x���e���Λ�B��ӫ��x�.xTӽ{�8!j�7*���+�䦨���y��P����Fj%��Vc���F���;C#�l����q	�T)�B�����
�@}u*ws�a��\�S.=1
�]�ܕO���'�?PI��U���T�Z�4���p����gо�t-%uy�t�� �0�ma-��S��Va]���M>V��x �E��u�r}�&�S�٘�O,�}�X5��˻lL�*7�xeͰuBS�vo��5Z�\�1��ȹ�⢬~����A,:�b�%f8ä���V���z��YT�?�Pz�lݿ�QsѦT(������8��:IO�!���}JTm���9�"�Vrז��_?�t�#�"�Z����&�_k>�B�K����M��|�Q���m� s ��%��$C�,�<{��ow�bܷ�96l�Ŭ.�@E�Y{"b��4��bk|��&�[������T��
��I�\�0����������^ߛA�����`�0��Ci�a�z�fJtl��c\ч�.�nK�ڨ-��߿�ť2�f1��	@�׼�J|��-�����W��6k���xMڊ-DIL����6=����~㦏����oS�� �K�����%Z�r{dV���s����SMI3�%��2�����,�՗Fm�����w���9�,^�I4Ԯ��7�������-�(�_��.�i����
p̓`8Kv��
���ڛ_e%�)+�F$�}Cʴmq�.h5�"Y�rA�WP���R7�/L(M�d����F��Bd�l����H��M�
1.y\eV}���!n�+3a��܂�M^H�Q7���Z��<%�w>�{����i�Zߙ�|4�W�D�-�hõѧ։���]�o$g��M�Y��Ÿ�!�Q*��"���cCz;ѷ��d�i>�b���F.�IJoX��*��Q�M8c�E�SL
�$��Rj�|d���t� f�p�w�����ۺ
8��Ӿ%<�5q[9X��^=�A�˟����N�^&�ǎU�Bk-����-�^��+�%�fk�Y\"%�^?�q�C׭P��0Q���ڲ�b�$p��C�CI�	Qe����g��L-n�ќ��|"�.v��qZ�l0
iM]i�է��D���7�js`�B�
��lрIQ<�g@jg�߄�c��?�;y}��֞td*}��Q��9��ns�pc�MTbiz���ȹ��#�T_aрn�\ͬ���9FGv�Q�/)���ZON��}�Ȥ�x	?)^�J�-v���U�1�,`"38Z� �o��K�$�)���Fg�P����݀x~��������
ν�Z9)�����D�N1�p2�7����˟n�ć�A':�ԇ�/x���ʼn{!�;_��ܡ�uy�C�M��y�6S'��x��I�$�`k�;�3�{�v��z�Ê^�[��,�ə#?�7��qy����?��Žx"| [%ָ�1u���_}��j��?��@�d��̴j��0A�L���V�5��5��;)W#P�^����'�V�؟hI��L-�0�6�Dm��}����l"�*�p|��Ԡ<�m	埭��d��1C��L�ʞ�L���m��Z3a�e��
�Ƀ�ۮBɳ����;����G��0�)��:���x�叠Z�š��(͋'ѕϜ���d�q�s�9���D�����chccg�����.��
=\?=Q3�cXᴲ��� �O���zOX��Ĕ^�C��q7\�
���oV��ƒ��!K����gh�Ӻk���j$#Qԩ��8�\v�T��m^�ⶶY��)�؅���˃t�)$�,`zן��j�cw?���!
,tL�eZ��=O_�w�Zɮ&�������K���@;�LZ-Fꆧ��x^oTH%"_}`����c��s=������3-�i�3%���ȼ�.+�m&`����E�s��6v������
Tr�xc��op��]��\��6'|iMb\s�y�ĺ����e����7|�7�y��7U�O�Ԍ����7�l9���vu�Y$U�ԇ���%�!t4V��%����;�(&e�gϨ�өZ���G+Co��eU�$.�*�a2�95<�=C?�B�^��^G>
=~4�>�8��
ڄ�-mv��MdHu{��Hױ�&���f_��uFf�m�L��Q;�de�ՠ��A��	eWq�r�R��t�Z~��Vg\���� M���އn���)��wAW��Kƹ�-w_�.�b
:�>���x��qo�pUX�󐝩��Fx|LsM؆�vXPۄ�;tnр}Z9��(M�z-b�ꐲ�����Ua�UA�<c �\?�Q5u�(J`w]�����eS�Y�*�;�e�'`рa
�R��uf����lD]u�g��^�X���9!J����7t׼�Ԩ�j�b����Z+%��P�%,�̹���鐸�@��6�ތ�X�Z5λ�Ѱ{grL�?^~;q+&f̞UC�M�1��y�����l'���-2��b�]"XXDW20�[�}�Oع�"�.Q��R(�`��`�/�q�������<�6����vs�=I�Jm��	��M$�����9�cYK���̡���ABmw�uckH�-v>�qb���פ��[v���Η� �$�S���5�Y�5�5�2+��%}�:ŷ�ĺ��
i@l�n�|	�����y������||����ض�d?F	V��]���c)��8 ���%hyA����O�][bp�D�@���o\��g�\)�7}m�{��t&��Yɏ5�4&��_���a!���6;$�G���)�	^�Ҫ�`�]����0k�S����$�J��Q
���O�W�]���C>Zˎ�ҏ���a���2I��D��8�J!�h�t���]��W��a,9����Ihw�Lj�#��둂H�Q|�>�rU�ʦ}��QY�^��B���Y��wc���BFFh}�ف�=�҂�DM=v�;9!P.{�%w6D&y��sT�ޙ!{3g��m)t����ޗX9�����2*k0BV��xc�}8N����|�2u�����C�G�
++�����5!��e�à����J��l�O$��Qe_�=%�vG�N�f�ʘ(�*/c��X}V�1���`�ٗ05F�M$]ҥ�
lk�,Ƨ^��*٭�#t�J P��/ں�*��22���Mۑs&�M��Եj��HXl��9б�D3��T�	�Nݛ	�v�Fԅ��S�?1�lW��z�m�����g��w��#VI����=�Ҭ�H��ܹwRI�0|���<�8V��7.<�)�g����/mg��f}J!�:���:�$�aM�`�+c�*�&c�,�Y��d2Ñ�|ˣ�Cw/��M���[����' �=d^G��P'��м���I�P:������5#s�7���i��3�
F�qwT����!�p�y�g���u0�E;XHx&�̈M���钷
�w�Uct�2�_�?��\��wI)��hB1�>����3��tP��`���4��S�Ulf�W2�B�?�XFB���w���
Ox����5����΅6PQ��o�"sCf��^�ȟ�V�ʛG��6�%+ �i�uC4��_�j��mJ���~@]��4ri!��;��d�n��'��Ѡ&��D���b��[���6d� �Hq��_��F%�(<����~*q�n}
(4��+�Pa���s8�����f5(��7�%��M|v���Iz&H�@�*���j�"h_�d���4����COQ�v���0�ԥN+Uۢ��R�3�Z`I��{��L��{�-{*���{]�W�����d�Y�b��Q�p):��vH���)�R^\�*�]��B��S$6SuZ`�����9���Ud�_�cDƃ<���ٻ���鬚*��Փ���E�A֝قj<+h�+她b����yNׅR�%dؙ:MC�7Q�K��^"�������
�Ah�N&M)�T���:��p���\��U���H#wt$Y��<�Lj^����Q	
�W�%o�Kn���Q��~�np&�nF,:�b ��q�Wqgl�1O�����GdM�_��4�VG��F���iWd�d0�/.�A���<
N��d��m ��/5�nIO�w��T�B�j��J��ޮj/�T���s�n�T���/"R�s<x��-���Xqņ3���/H��6�#�Z=�\L?߈?$%����}?�]�_<o?��S��Җ�rss�U�Z;�2_�N�EԮre8&?���a��Kb���݌��B�ҽ�P��\��U8��)7 � �����:#O�B���J{S2��0��u���=r���o���?���n�/9�G%��	'���e/�GT�qX�VMș]HJ�W�ӔT+�^���j'����2\rX��0Hg����ʶ{�n�"a�u��	��@H���O7�5��(�5v���I��ʸp[������J�#���
=��z������+A���Zz6��#��=�BP-���g���+֌A���8�L}��Ѽ"�R�&�8_�W���Z�"�Z4m�!��7m���kj��o��@�̲�ӽtL�m�=����M�O�;��a���&�U�]"17�s^���a����ƫ2��K�Gډi�Y�>���Ɂ��(_�a(�vy�"���ي��4�<tP7��Ez�N�:��vv}��X��3�ܽS[�[hftݺ�C��@L۝��5ŭ�U1��>3��'��`_�/����i�:�c=u[�(���6җ� B��ê�؄���,Y9��5;��W�'��U��lݖ��I$��9J���m��Im
{�+q^A>w���D�_d�!����K��ѐ�	��A�ص^�j� ��C�Wϴ��|�/�F)�Qs��{���I�D-��T�y�g���z���1��H�q��]R-�І�2�a�
�%J�F�r6������ݧ������"=�y��Ci��u� XE�����O�1/�(�	�
8�-s�֏�nb�;�Hۆ�r�&��v�~z�ͼ�r�s%l�λ(5ƺ���)
�Z�����|��f�����,��D1ݜ��-�˃
v>�٠,Qι-�j�����t��g|�_��[G"{p�E�؆�����n������Мz5GkB�`����5u��ӱ`�JBc�7��c��̿> f�v�+�:�FA�B`<�ʈV�{؎`�AMV��a�:��50�;�a� �k{��e�C�ˎ�e1Ύ���ǂ�����X`��
�!��I�8*	��ΩG�{t��[6�y���?\pٚG��K{E����*'fu7Ƨ���w��.��G��Y�`��/��|��:���W;Ͷ�ڢ>O���|(l���2n/�� .��|�<{�(LG<!����๐�)粜_|��
�9�/�i�7��baFDq�
S��T��*��Z=����4�w�L�Y��]f{���Q���P8�	D��3<�뙂Ҩ�p�Z�v['�اr�Wm�uQ��!�$h�2��E��	:['Z҄F��k�̣#*�xԐ+)})��m�s�pWK@�HQ��
����t�JV,���VE<pl"�~F.��%r�|��U�\�����l�XF�W!�|�����w�K}g!�:�,C�x�F:p��`G�#��&4��ꑏ�	:�������!�Nl`O�`%L⿡�R�g�l=k�C�7��FAD�f򭪲�7㙙��Mp�d_�F�,�

=���TٶE���HH\�-��z�_Ii7�F����U�@��O4�%��t��z�4.�X�Xf�xk��i<6Q�cX�jrL�ylq�b�Ur�����Ȁ�ݠ�������Xq%;���Fԑ�V��m%�j=��`d�f�DZsV���6B�jo��y���Q�%��8���ӫb�@������IY)*U�ɂ�;��z�3�(���r�����e()�7��$�>�����˄�%O"�i�f>��ݨ}��5����5��Ը\�zq%�$������,YP�ƽ�qm/�]���?�?�~�V%/����f����W[���8����4�<)P!3~|[��_��h^��iY]��0�n?g�����дG��>WH����I�yP��Dx��u��*��Z��rjm�lx��K�wƧ��!
%w�����n�-��RN�4��;˺2��+χ�[�K���<>����X����\;��Iʉ�����-SZe���lL�B�PvC��-h��Ek-�sgD�(���sJ1l~�o^�/�)c5�����I�3��jp�5�Ip�7n�ulƩ�_c�t"�]`����d��	$����_�^9x��@Ūt%6�����|
@��Ot��R�	
]�34�I��ۺ;�m����w��u����S:��H�\��	e��|6��_�V�&u���W�
68�0�/BHyլy�9�n�����ưA�Ū
�*Th�#IG"�y�<ү�V,�D��K��~��ݬ`h�[_�-”��+�}�����`��5ɗ�LB&؈@���`�L~��A�����J7]��!Ч�˝���L��ؐ�%`�e05�1l^g�r~e�#�HҲ���6�,�]&�3eX�|��8�Cl2��Y]�S��!����dl�1B�[�̞��*�P�yG&<�X�I�t�Y�9̅���>˼�76�	���|�ڦ+��rG��
��=�׸n�Bc+�Ζ�s�$��!2�[�n���
��3B9�%�n֚"b��m�؅n�(��-[��ݶ7D�,��ڠij����!�&��*Jz��h��2����	�S�603A�e�U�
��.U��Pڃ�[�׮�CK���`��A��XU���b\�!lQ3`V�����V�I���6���l�wq����i�J�y�A��ڃ�x7��0����?��N��
���ȃ�y�7�:�� �s��0|@���']p�?��-^0�LN1\�[�O�j�>�rU�J��IU)�R���>�,1J�YU���߬�3��92pD�:Ǖo}p�9�W��٩��(j���p|m~Z ��&�cNp��H��\]!�=�y�C��==�u�}��P�5�j1n'���#����z4�:ジ@4��:��j�(e�[?�ݝ]g�װU=B0�mcT�9ʈ��r�%�9?F��;�D��R�3��kQ�a�xˤ�����+�Z��pR�B�kf]J𿨺���Aќ�ʁ�m�}�����f�����Y�/�b�{�Q2���Ki�T����De2�mW@��`	����p���K���r
5T�h�UҌ;ă$�s�� �)�O��'y�bB��^�wu|_��3E1�]�[�;y�-��̖�\�-pJ;��|fEf�ԭ:��
�!��-ϱO�
,�{�&�j�x���V<��/�V/�z�b0��%�/&Д�V/��Tg�D���������+\��C�F,��E�_�P�k繗�;�x�E(��yz��µ�4ъ�r�TRhH�9J�lN�Ke�nN<��i�f���ͅ���ۃ�`�^S:�.����@5�k�~�(�hjH{NĠ�G
-���!��C��]H�J�6��x�N�>x�[9Խ��o[-u���ڙ�x��)U�Ž}K�	=p�V�K>��\�M#�Bf5���+
^��=�~���tQ�`xj1m�y&}Ѧ�?^b��Y�['�(1���X�q���KH��c�iq��@9C�L �UvF�-�*��RV�St_.���hB�*�׸⽀B�{C�'�;�z���:킱v����,�4�����vB[:Ó���J�/F�������z����,t�dl�Yl:?�Gn��+=�נ��ձ���yy$�$�Q�a��Nr\n��թ�|��J�H������Ĝ�-�-���Ċ���ԧ���s��ۅ|�ʡ��n�K%��!U�zm/T���2S���]��*�nŭ[���&�
�`��7oT�U˵�ٍ#�LY[G� =�3����™���!p�bq�7�zS��i1�)�+��p~፜�6����wm�6}�Q��)�*��kڳ�'8�=U��T,�o�s ?���%���g�k�Ax��k�3��k�ܕaPQf��bp?i珦�q�G����P/#����Sz�������bz���CR�2f�V�6t��W��o�m�;/��!����M�Oa�h�虻m�ٮ������z���4�=DѴmlUC0����g'�v�!�Z(�xzk@|vk�ߏt���
G#�n%�e�A3nÌz�hG��;�0r�vxp�!�O���;R�V�<?��-!�K����M���4�Iֻ^9[��@��P���UԹ*��w�,�1Hf����Z���4�fv`2����:�o�"�V!5����%���_�������LyQ"
�N�Jݑ�R���O��S�3A�`�4�����œc�'��s=��IIV�֎y�V5F�̚v*�<�a��Վ�q�l�B���z���l�:÷��((�9+�cxI�&I6i�����nZ���o�S�]v��C�0��K�$�R�
4|}�J��l��x���5@�ҭ|����s�]�����F��dn���X�98�� ����v��Ÿ|�V� ���������R��P�����@hΥ�
����_r�\�������F(�R�Y��4��Gc��	V�\'l4���r�)79!i^G�i~'��^O�q� ��օ�`�a���y���O-	sW�8?$�Vai�\~�Ot�MҰ��)�1��%l�zhZ�{Y�U�u��������@J>�Al�O��MC=��h�u�X0N���E�Е�u��d���x�(��g@nK�7v�4Y�D��o�n�l�KH�!�C��g��c�P��� .T�X_��s����*х�Ao���N��Y�]��~4�V����l}��L
)Mb.l�����#L��M��a�9�a�M����cR6��.ΰӼ���e�� `��� ���e�q���~�����~��#��a��o���U�I/^3,y�4g��1l��\!+&�f,�6��/�*�(�PW�X٭7�_�(��O.	t-��a�4~�a[~2��'}&I��1��A�`.��.r׸��$h�Av�®�ݢ���k�c{l�6����%�t�=(Rr��ŝ��~S����O'����IGȶ����~-U(C#�=ꯡ���s4�"��k'���=}��d֠nL�1��~L
��Dx��ݼ)ԗyEV�������fTa�Ѳ�WO��L��j�a�Q�3c��'�J:���}	�ˮ��d��7�� ���r��uf�c�p�f(;���d����|������"8s\�^j���q�
yyx~���߇�q/��jq98zZ��cՙ�JbH`�a�p�i�q�1�\�\�b5h����b��~A[E�#���b�cQ���e��A�[�e�7�O�5s7�����7�vW���y�:����УA��u��IqhV,�<Mb-�ڵ�W�8�uIOZ���m
+�(`*�s7�IBA�
Pn�[�#��@6�)��"1E]hܐ;rꊁ����9�8K��X�Z�sx��@��'����cd��f��ӕ�4�n��.ͣ��	�3�!���N�O(�(L���t,-��;Ջ�Z�X�ͣ�\7}q��H��\�T�n�Z����hU�����6���$o䝱�1#�v���2�wߐ�lq�㳌W��8�O��֏Ce��:��"|���
S�0�pi,�PNT�b��)�f����R�B���|���ߛ�����)���{�R�i�)�Y
,�3���p�Ӟc,h ��w;�$��ҩߥ�a����&W��1� +�-��q��"O��=��f��̢	B��&m6^�~�2V�I@��FR�(���K���'-]8�����J2j�!%�MD���/q�i��y��7���{���yc�S�~�Eg��E��B5/<kN[-�}�YŒ(֜b�O���;�/r��RQ�ٛh��A��D�O���+�Md�B�.'����iRD$����ą�S�j�2�#F�8*��4���F�y����@��"���>�<#�9���Q5
��j9-��˷L�m�:��Π���
�<���R��z�9�(�'4= ����d٫r4�6 �)���'�l��.UeQ0</��<�&�~ܾ����1����R�{��'*_jJ�h	[ ��VE����,P��}a�|�ךY^8����ez�`��O�n�ih�������|�����l��
C��k����O�Fi{���S�S�+ž2$yV�Q�_Nɒ�S;���ە��P�
e؊��'��`|�2,Q٨��a��&6�_�K�
N�=�n��"���1��fO�dh�"��Y����Q�ӯ��t��b�N		��?�s�	h�!�D����8��oOģ��+�|�� E��+[�-��/ܸ*Wz�Ч�EWj	�t���y�"��CP��7k�
�
~g��ďJ����RD�m����r�M(���tE1c�E*�Z�F�T)|„�yD�3�|�S�]�AHJ��p�����q�EW+"qW�zi�aP��hVkW�_G�H�Kp��t6f��G�w��y���V������p5ۤ��'Ya��y$ʼnv`\�c����m:"Ԑ�R�� r�۸��T
���$�O�?|6��T�e������}�	t���ơ�3���jѨ�}��N��RV���r�[�$��Y��H�nrw�OR��Zj[?��o����mp�_0�.���w��v��}�a)��M��4i��[����7�调`:�U�<ɒTG���H�Z����d�Ȫn���w�5��Mۏ����@3�\�2<,�76�z��c���t:Iz7�G�H����`��j����
�ܼ-�u.2|���ӓF��Sx�}�D}�D���s���F��ů�����_�3)	5\Y���̜�Q�X�V�O��"Q�G�S+7X�33���p�–~�14SH���i���zR{0,L�A5/���SȚ��O�����23�ԡ�unz7���#��O��)F�U>HX*���R�e.�5����y�zb��ǯ>ёMӞ6�Ϸec��0w���E9D|��(l�S7�	|rV�x^a�Ը���jGT�G���͈	��I<�,�	�
b|�^�:�|#�\�[S�Ԥ�`��{�dT͓MR�O��0N��_�?m�c����&�p���/�^��"~�?�YyI�9PӃ�a� m\����
GʲӲ��G�s_�7@��>kJ�z�v|�*�cV�,��AVޫ��i��3������P¼I��{���?D�.}K��|�����zm�膦%�@f�8%ܛK��蚔}�
�~O�TS��E1����N��k�����A�4II:b�L��wx��|���+AY+�*�[�
KW"s����Ccb��O�H�\�0�_�8;���e��y������4�&�z��`�b����Y����8^�����v(��j�+�V=�I/���P��ޓ�i��u�iiI>���{���_�X�w����x9�Ϧ]���̂��������+��B��+�H�ڞ�YCW�.{8uFM��ml$���"hu��g��r�D%_�܅t����F`�ݧNK���EᘽL�������/�=��C��c,��D�6p���#���,�c�ȡ�<	n�!�s��f�g��x8�y�Nblְ�u_ђ���qS[Ϊ��9���f0��2 Hc�@֓vA{��!�d���P��煢]I4��������x�b�M�2O��"Qwj^z�%F`\�r
K�ҧ�k�U�p�$�0�Z�Bs�.cw�<hsd;eB�TtS�[��a�_!/V215������^��� ǝˈO�|Te��o$�ωm@���b8�p������ʿw,I$�ь�8�l�N	O�-v���6����F�jh��/_��S1|v�ȋ@v�����֩]�xH��Jl���[��HO��u!C0-J<��w���p�f��ҞB�ʼ�:0������aK�o��g8����зW ��Q�\�5� n`�~�Dp�.` %m���ƛ�?T�v����2�'G��*O�'Y�z��A��k�3E����-w0;�~�e��m�Om���P>O$�q�E|B�D	�mJ=�ǃ����}��(�k���իn?Y�'���58�<�}+l�E��w 4&�$y��&Y���3�Q��&���� X�|�� 7��` ����
r�ah_)��m����Me72�['���z��<�����E�
���pua�Hz�~$Z��I��
���(�0�������L!��Ql����˙_��,��?I��u�M�d�Gm�Q���aE{�?'�ÿ�u0�ٗdF4y�E�/_u'N�2���e2ggA%����H��b���RS�G4��;N��&a^vkT��Wؙ�ޥ�����aT�0@��ւ�̲mh8��3�
�L�w�#���*R5�\#|�)y��j�%w��6�qJ�&�r�h
� �Dc�>��5���u�������/�81��Y�+�5���������k�%�/D�5R��l�x=��(��2�q���}M
����h��A�[+��@d�U���N��1���Z�\��K�.�b$>�͍��,���0
�I��h ���XкP�D����]�o@��\3�(�L�bh��{�:��L)�kt�&l�\�)�|�We�]9����̫��}ա׏��p�?t�${�����u9~V-�3���n ����6JC��h�^�疁�Ngh��5לs��JJX��N̴�k��AĤ�ɱ�]�K�';c�
�1�)$�R��Z�BN�@|�b��,k_�|GU3H�o�`y��{�wP<Ɏ։@�����5b�؉܍������঩�l9�b��"�N�d?�(����\L4�S�:�`��B��'g�۞�H�w���S19^ �ƗL{�1��D�;�&�(@�3����KF��Vjm���*�Vn�8�cH��F;��D8�,�PW^޼�Ϡ�n97��R���)��.yz5�����Ս#�7��P����C�#�"�K��k��ڨ]	
HY�5���JY �	�#��1�Z�i�cšUSI���`-*�e٣ʿcŶ�Ц@��I͕~���R�U��d	?��N
ǎRG�I�{�����x��lu*'J��e>�m1���bm�F6��n�UG|'�oo�`$���G4�ø1O]J|���\Vy`A�Cfd4~�W���M��Lj�����0���L�qsq���H:�x����xئ���fG
0$}�_}�/Inb9���g�<uwZ�]�l�J	��]���c���-�NXx�w��ޑ�ier`^	�0�<.��I���n�I�A����v4#5��9���OV�ڔׂ�*M�C��Z)�t�;pU�#�ں�Ua���.Dٌ��?��l@,�:�m�����m���@%��郑�$U�����BJ�e��5��I�A�^�Mr3!q��}��S8���A+�x���<�l����M�mS��1-���MP��x�P�#���q�(ZC,�+\P|\3aHԦU{;ύ�O�!}������iv	���r[�,@�i:޹׬A����K���hV-��i�;�+1�rA��A��b�G��Ym�@��B��&&G�S$YA��(�s����,C?��0:�Q�ͧ?���ؔ���Q�P^���G�L�mwd�!9+�G�X�Ő ��"Z�v*_�Z�N맨be��ɫa�:�%�-l��B��^�g�T���k4�eg�֢�[�/S�+
d��=��9)�oaW�j3\�'Rq$�7�t.�E�g&�@�A�r��9U�����ݵ����Sj�o�ҙ1	��*�c{���o���AAc�]�'/�^�����'O�\�8+�%Q��Y��tU��+ix�pG�GF׮��qY8.t�d����*��c�az�50 �I���@
p���
`J�
��6�nl���3n�����g%�>l��:Gjc�W��J����[���*Z��4�o��b���q��+�����"�9��(�CH|܇�#�)��у�D!u�z@�	�����b��(W�����HD�X�(|̠�/�M�Ri��i�YsU�q;��֐P�s�������dW�B��~U��&f>�D�D�$���\�5�a���[4��	ՆyB��V])	��Qr��fnWm��?J�[voᔔ�2m}��*�}�������T}ɍ
Z��(�A�T�)+aU�³|�?j���tH�j}���>�4	M�*��H^�:��1���<��D�7^1��f��T���iu�G%p�¾6p�DL4)]��Cd4�vQ�#���,Q/�(N���c,󎵂�B�T��2�̨ztK,A�r��PP|;�[�k�����gm�m����gT��;O�� _k�.�@�Y�OQ�Ip�THV���-!ԋ�,J�c �v,�{SuZ*k�߄�B>{{۩աJ�`f���<�ۗ)`u:��'W�pl̑]\b���F�Q=b�"y�X1���tD�L�(�VW�(4��iY����������z����¤��-Ҭ9o����$�wqW9;����uk��W윗[G���Hj��;a�����L���Ƚ�YX����PS��=������45����&�[F�����jur�%��״�C��� �a��"./wD�7垑5OO�Y_�'L���K����e�����9	]������*4��ǤBi{���&6����ĪW9��z.�q�C�K�]�F�P����>W��iz���æ���+붩"��%�ƽ���=yW�G�Oc�u�%p��k�����W�l~#�lQ�pr�0�~��q���{m�Wc%��^��6S�}��!����w�7J(���U{���:�Q��?K��)nZ��T�z�ۙg�,�+G�����\pQ0vK�#����l.��&0���j��a$��oٿ�H�I|�<O�*}œg��YCd�b�kS�@|}]�`��K�o,x��\����CpE�=��GSZL�"�t���/���(����v���#hj<��.
Y���	��\{����w'��*B�b��D7h�}srmAW�끚����'�
\9�Z۫�gP\/�Q�1�ܩ)8M��z
��ڛ���0�M�����BoG�����[K����+��âT�x��Ϻ��ʝ�6�620����U�������4�k���@���'�ߕ�m�OR�d�Ò�S�1R��NSoE�5J�@;��g�U~����\�L����7���+z��Nx:H��t=��Ɗ�'�7��t_�IL�>e��C�(KfcwF�v#e�$�B�>�4$(�!L�6���~�W�1:Z�P���0�v����,��D�Zq+�M,d+��k���t�6�F�v�"�u��TR�;��\
�vd�k��D@�X��O���,�Ow6Hǔ�n��C�FrI�hġ�(�C+&M�z�h��e����ky�4(?�IY�[����_G�W����9K���oC\,o�&�cU�=�-�0��E΃U�x�[��ݎ!�xa�$�k���Ve���Wzdc(��$h����!4]A��};v�_p'�Y�n�d?�ǡ^���i����A���ܒ�r��!t06���֡�����S:�1I�P�|���;g��X,I.�i���$5����U����
��1��޲�9���dJ\?�X���?��LH�&l�k��+
�
/�P�%�������Qs�A��(�[2�z�$���'��ԋ�5��E�0�A�a(�]G���tds�mut�4�BO!�s��.������I���-H<[�a׵-�m{3߁���b�]6^���?�Hix�Q1�٦��'
��K��F<2�^��ٯ��\��k�Y�FQ�	[�|��
/M1 +�E�<|�[��d��l���1�9{��f�4&�TN��:��e���Tך� 
����n�<d�v��3��'����4���
C���Q2�l!�U�xK��OS��)6���dµ���b�FΤ�xi5z�A)|Q�O�����/�k�s�i��AC�
;�im�aC���qrW�����l���*E�k�d���3�!�lj���5^à�W�����ú�)-K<��w�n9�k�B�t�:>l��C�g�w�z����r��v��Q�?��â\��<�s�_�w?u~}�=�4~��}�+8��w�#�
\�}f��K�HǴW�u�}�Z&ET
��|[n���@�i	�.�@��#
�n�ݹ���A����ځ�&���.����$�9�����i��F�JU�gW2,'��;`tD��[��	�"A�Җy�ːQh!'��B6����Be�#:JM"��E�ahG>�����g��uT)����V�m�&1�ܲ����41��37o���(��i�l��&T��Y�r�y8�>B���~Y��z���&BDzjW�@�쐓�7'P��@��,��'ԛ�f�`D�`�S��7��D�l�����;�)�4�M�ĸ��Ζ�u�-u���ݴ�s��xX�o�"�x�y����G�ue�­E�
~H��L��{�B����wX~"����'��=4����r|#F	���"�_i�;MQG�9Gɺ�4R�m�����^IXB�S����m��E�4I��G+��3C����'�.���C�LЬ#�=�Z�jN��V��jU�6���������;v)��=�j��DBz�˄�����L��
��V�(>�x��p�>2v���յ߰ݕ�9���o��Ld���S�!m�]�&�#�E��/#��X5��kA�����}�y�ۃ�_,�0?��W.��D'��"-�K8�I���c�O%��`#�C�����3r��`k�E��^���,�L}�E���;����TdPI�����*B|2zZ졶J�f&5���B2c@'+�w o�@�9i��ON�t�d�~�{H/;�{L�	 dG�e@(d�|��D&F3��C�B�/R�"�R?GA��L�M���!e��
��z�� ���z�%�_J�N.�q��%H��n���>:w�7�FZW:���6�˶jS��M�
��B�*�(
b"�b�t�"5��)
�7֐�,[�J��2�ՊY���MƯ�{�aI��Il;X�T�5��x��Т/�b3zm�v��)k���tj��Y�@d��x*V`!���^�#�;�7'/k�?�z=:n�9ۻg�ᑧ�$�b�q��o�9x_�rf(K�L<�W���^�d��F�	�����VDG��#�bk�����Ew8N�P��w��<�aˎ�Ď ,�h�b�_�T齑�Ft����qF��Qh�ۨ'?��K��@����])[����R��S~�:�'�2pسY�����s�wM�r_��'�X���am��yw׭ڎ�
�����9�}�er���{E�i2T��'����[9a��"�;�x�<��2b�\�L8����Ғ���[��S���*��7�|����Ax��m{���?�v@��)G�l�`�M3��|Wb��nڊx� VN�.����KS��N��{d{;IOsV]��x�a�;��Co$u�2������B펜���,�P-�n�~�K ܭ����
�j_�)*G�>�=�cU=ƞ3IVMG�/7+��T
7� SY~���Jl:Dg��y���l��xO��T���a(0�_
G�@�\v]�o���
)s"���vU&�ސ��{�6������/L��-�G��=��E��K^X�P�/����m��Wo��:jDr�Dc��<���[��o�}L��tY�Lf�;�>ǭ1�m=BW�֩m�S���6"��*ҥ`t�Y���c_��,u�%>�Ս����� ��~p��CA�`.����'A(�ih�f����o���6��no,M�!ZM��3�����]�z
	Q}
*J/�`'��n�߇�7�����V���'2�9Cb�5a���݇B�ŶX�T,�sPݗ0wvu�=���o5�Py��Hz�bџ��/X�"�`��T
��/�JI���[�	��>�jl\;o�1�w~8�l͖��o
�R�}�TĖy�T�Т��tF��G��,$$�1b���Q�Q{���)�XeT��i�3��$�~����6L�����'Zn��d����9�L����,������:��O�#&
f��0Q���y�����u�^��e��w���qa_S��gE0�T���P��C���l�dR���n�����f_}�e@w�•N�s�y8�}�A"j�p#i-u::���&4Hn?�+)��5��%���g����Q^0�?Kiy��f�,�;AY��qO$�n�7'V	�)�sOw�-kG��p��p;|���5�Vn1��F�bMJ.~��{ײv����t�]��+��85�44N�o.��F7Yز���'-�V��K��w��
_�o��X�z�OR�(潶
��p	9�Ŕ_��k=��P�!@g��:u��7�م�3�i�U��iv������@IR�����/�:����|o
�G@&�n�U]�&a��ݺNi[G��f�L
�Fӹw�%�Ĕ-������Z�^U������j��J�̒��E,���dݭ��قuK�:�|�[�kH4؄��Q�k��$�P�lT����4�r�Ȣ��4;)�m6?[����*�r]�qm���=����}u��=WS��٫�T�qn4���;V��?�R�p��1�Dw6�ve��ӳ�K��!���m�8��&U����Y:�1�(�{�J`P�F���	/CZ�����G���vU�sHT�:�YR��i�k"[��W����V	��YS~?j_����=�}�[��>��ru?���g�:���\�����_j��]s��\3�woݻ��v�ޫ�^>�]M�T��2)��br�~
��Q�h���ij�c���󞁒�B�OD��΂���D��{��k�}��
��:��s��,+����0�<�� �3��� �����T��8?_~\̤�h3s��N��Y����#r�ٙ�k\�����O&��L�Jz׾t�1e�Dȏe�>���Ř3n -q�K�a��C�7��,�p�A:�=�V"}>c�Ѭ�2�A��V#���Wk�s���G��n��ϱP
p�GQNσ$� 4��.��ퟭ{�DK�!�N��{����7���:��c��
�m�v/��b�K�wd�x*�T�`M��LS��0�p��#B�S��y������$dr��҄��s��j)�N$�aT��ͪ�5�כ�3
K;�a�i�|W�����q�Z��Wp���r�N8�j�&�;f�&��P���j2^5�G�#9ErB����\�r�Jk���7
�_5�wª�m�b1�Ʉ��l��?�J�Z?�N_����O�
�V	�ƓҧU
eN�o� ͹u5�Ґ���o$Y�V0b��<�JS��g�
�G�!��y���+�Q��	a��uI�Z�86�
t�E
3��>�!$oD.�V�^ZJ�O�f�qN�;�+��	%�	Ho�mi��s�%�3�-�{q�]h�j���
G���􄬰�S	i��t�=��:[�f_��v�m.8z����X��(?�p�y��<Bq��?JOЋ��?��t�*�k�4\R'���ܿ_d�h��F�Ԗ��_���FޛҖ�e?_��Q
���
��	�;^E���X\Au���`�Wm�6�T�*ɯ����?ޘ�*�1:�z��lo!
��oR��~����$��
�:�[2��_]��q��ͱ��z?��	��M)w�	B��L]#90�Iњ�:�	��z�+!���B(#?z�����0Ϊ$�o~2`{��)AYy<�L�.�&�į��A���O��9t�A����֮Y�\���(�B��s��C�t����|��xЖ�'x��[�iI�:/�Qۄ�p2%���u;���o��|��4���mZʹ7I���&���;���m��v�3�9��h��3#*-#A-��vՀ-���"=�|6��QP�#L~���4���|�FU3�ɞ8+e,��ecJNhh4_A�2�>1�/�Wl7��q1D7�z֛_Ou����j$Ȑ��v}�LBU����\��l7C�m��@��i�g��Ӗ�z��e-�Z��'�I\�=�䗎ln��q�ps���q��hʧ:�#ш k��EΙa�R�CS!��Tm=�y�VJ�ВTjb]Z�
�y�M_�eNHp�+g|�9�Z|(��\��7}Zy��WU�]`8������[F��.tX���l{c78I��2��6'Mm�;��׷��ᝌ�����g&YZ0�Yw�UO~�����u[3�=��K�"פV�O�:��f��@��A��Z.���לnm[s �s�MF;GnzG1���vH�7t=23ЁAu�5]���A�����l��x�/���p�����FQ�W�{�����T.���%��P��-#c�p>ŕ��d��)N�Z�B��H��b�^#J7����LB����}��se����7ǫN��J0���XW����L�AF��{P"�.[�6�Cm'ɑs�@�#���9Z'�(o�Y�7mmO��	}���EɆ���X��cɬ�c�������e�$ƾ'�K*)���R���񺘅A�M���2j(J�X��o�K/� �O4>�yD�Em�i~��\>��8���\نp���<�H���|��R�%ۂwH�'�'�9?�炴-����s��<a2h�Wx�E泐�l��B�0W����Gp���,���9��-��~��琌���:7Z!�{_�C�l�\�fup<�2���;��{e:K�\D�d�i\W>�UPH[��w8pϼ[�+J�G���=d��S�P�+ho����ȇ����B����}� �I��3�U�x¦2�}
�R,�	[���	\ao�f�����:'1o�T�7�����I�Ò,��F��Bשp2|SB��\��o4��f���F��-��1z����q
�\�g#1)b$�G���6LiZcl{����H�3�����D�Ew$�Q�8�}�O�Ore��$_o�xnL
�;C�J*۫~O�^h�4��t��A Z�wq(>�-m�����c"��W�O����'����"�'�D�{����3o�ux�:W�a�'����ʑ~�̵��w��js/�{�7Q�8���t>]�����M����T�����g�rKq��]wƑ=�Ww��d"ȇ/�~\�YO
P��-�£7�đ$e��!dCpsd��c[�ʠ�k�ǬD@�~�k�LZjPLq��;�:F7���ϝ�c�Jɋv�)3�+&��(
���ҳ%$fM�H�(}Ɛ�G%�f�G����HՆ�9Z�ע�r��-Ԃj�S�����\��8{�5T'hc\�%[c\=I:U5��PJ����Q�h��ˡt���`#qE�3�ũ�7��^6r]�r�+��X|֐U���h4�lL��D-��')��gV־��l+52]���`�u9����:�~��Vhxcé�.��9�������NAJӳ�� ?RV�Jfq��R��T.��?���Ja���B/�IW�����8��QI}�ҫrlݴ_��m�y��t���D����h�Р�+�I�_�^%��J��Ր��G�Zu�ԌDp���/߈��x�1�`��Tv%@�)A^/�>���QTf~B-Re�M�-o��I�ܵ�)oY2E5�l��-�%�����7z���Ij��=�S0
O+�{��5Z�9AE�+���&V̄���G=������G��o�)�l&q*���5��Gё�m�z@��vؖ��9����I!�eM��#O��iH/G��Yc,6�N绗�
�#L�\f��H-��w�)���Q���<Z����\��y
��fV>hD�Pf���8|/��˰f��G;i+�sh(wr����vL������H��*��E�}���(Y��n5K����ф�y��@��Mn�y:1��4�dzj�?M�u;�0Z��a[��8���I�)|c5C��F����}���%�1-ҟ�ِ���u���0�`|5Ps�����B�QS�q۫�$��5i�=�D�F���|�Z��99+j=Ltk���;̆S�(�6�W�z+y�f_A�ϝҍD	NX��S-���sH������}�)�T��~������;8���W�k.�EN��zPё^*�3�pQ��zS�z�����`�2Re!� ءy���軝��v��DH���v�z�z��o�t�S,���@�~\���&�%��g�c�8j��%���ߜ���C!W�s`)s�Z�򠧝��Ke��`$�}��$@$jk� �72;K�
jZEQP�`�~n�r�<A��j0(�ct2`e�G�忨��wx�o,K�\.��l;׵��p�ai��j@��괨/@�ƙ��m���s���0�_Ϙ�|�F���˱f�1�۫�D&��ҟ\�(_��������:|�Gm0�z���8g�<
vy��`�=�y���8wY�77����Ud��vW�p4��F�>��~$^���� q�Tv�[�X�� ��l\�h��e�"��X��ٶ�Bx������b$��%$=C&��Z���9��&V��K%�~���ių�N�cW�/Ɗ%o�s$�I����� $�#�@=e�7���{��(����9J۽���sx�jax<dX�W�XŃ�df�u���&J�ET��z��T�7A�s5:����91����rT1q�/Q}�Jب�8���RV���`�zn�T�
A�V��߯Y�.�V�m���?����Z(��FSuk�@�e�J�s2
�t7�V:ڬ�KX�>�����k�m
�{I�x����իũ��(	�\�F7�`K�
�)�aL��"�xx�VH�{`1�a� q�[��4���O&n#�(�t�d���5���v�k�N�n#��)�s�n�eY�#WB�td�<��Q�X�=Cx���Q�[�e��fŌ��#�+_��U0>C����%z���}��҈�xr��*�}:��*5E=ԩ*�k�l�+C`a%��i#-ԡS���?�Lp���y�k"���At�UA�Ql�Ѣ�G�3߳���8	�u89�ә�Dh�Ԉ���z���5K�nQ6O1�z��E�Zs�-֩7N�D$"��OL�)�A�.o<#���o��`��������"Q�Ke�,����q3�锩j}��U?(������[�~֫ �[d�ϟD��P/�B�v/��RӲϪE��J����f�!�n�+׈����m&�w(DMg�Ԋ�1�e�"�d8k��
C�O�U;_	�����x�fM)����o��tJ@�pA}�W���yGk4�n��Ũ�='��a��}�.�Gv^��s���z�
C������Y;'��4���:l=��!<t[U�8����h�p��˄`�Xޢ��Rn��X2�E�M;ڑZۇa���8u��rv�:�.
��@v�N���A�?��o��U����ʹT�\ɼ��p�#�R���N��'"^�'�H;˨�F-���S�j�����(�2ꚓ7jI�E�m�~��o����W��#���0���i�WQ��K�gI�]�*������!鑒��� j
�����Sz���2���S�u9��
n �Ey&Ⱥ�lK�OX�T����%��'?�'�+E���h	t����ī_jN�A�W8V��ǴG�d�~`l�1W���~�Õ?�Ndk�2����K��K��O!Ԩ��T�L+.�,�/�tj0K$��[tZI�L�G�s��;ڣ�(t�e�Pn�ˁ*����6�R��=�+�4��M�v��nY
a�^�u��ד�f��v��c�g���-��	�f	��T��M̾g�iB���F��-�Us��$��R
�28�X�-�b�I�A�3�E\Faц�.��|G��J�L0����V�O8ʒVl3��fm��w|�W��Z�<����L_aı���D���N�0Ow�O�m�÷l�(�X�ւ`�UR���H�9a�ʇ�^��2���:!ĸm'ޯ9@_�#+�?�։�c%��H�2?0֖T"(��}b4^��(5�'q�3��!�A%=��}�ąs6m7��~H���|�IT
ww�(g��#���cц��5~E����t�w��&F����X���!Rg�L�D�ŕ�L"$����nE�'�����˿j�/��q���v��޲�J_V�k�q�qv���0���hɌ�\5����C2�]�:�l3�R�=c�E��HRRm�����Z$���1���<� iA�8�F	���P�4�a�Gk6�����d�G>H@~(,�{�T�w7��֍�i$�(1���鱭3G3�����W��e�	,�X�.o���-�Sm@-zc8�$���g2��*��<ɦ����+�G�(�vĂ��I���2�*u��E�G䗭��-�8���`�Z��k��Y5O+~*1��Յu��B*�D�h"�_uE�9=�x��E�:�$�v���dr[bR�O�W��3�Y1%l��6�ϙ�y+��ω�M+ԥ�!.u!��*�������u���>$+�䶓���U�j���)]����=�"e��T���|�q�1:;����i�x����b���do�Վ)���PD��B��"
T!'�!��{�3YT�S�T���ׂ��Y<69�5�a{l ;�*��55p��DakF���)�����5r�&���i���o�t��w�ˮ?�^&��G�=/��h���~�?���/ť��vG������'�������J��|U?�h�˧�e�~U��>���g
���
��6�#��g�˿j�j���/v�*�֟�ҋ����;�}e�
��[�
�h?�G�wW9��Γ�4��v]���ƫ���N;H������z>T/�`�?M����=Z_'����?�z����??�����|��??���?L_�e��yw�������q��������b~@�����
�n���[w�v��{���Ͽ���G��c��*g�ـ?ߗ5K����z��ji�����O����ї���T~{�/�?�H;�_�t#}��?�^^��������{�������fo�
K��.��m�˛k���ܶV��'�{.�h�A��I��_��-��{ywd�_򥋍�Lg��{`�ԟ������L_��=�Q�����o��=~N�~?A����N���?'v{��=���;�����l?'�O�z1�L'�o��g���?7�K��W��/��g��e��{����y�)|}^����ֿ�п�C�F>-�h���<}�^�o������C���=݉���[�X�P�09>�%ۍwS��_�-���}������_���W�t���u�w�{�K�u����zk�}�Z�}9�}/���=|>�N�~N�N�>��N�_l��_����������ǯ�x��D��P?��J{��%�{Z&���;rHx�4]�O�n�Z3۩��7�2�_�HHS+ŚZ��C�'�C�p��
:<�8��B��ѵL��kCnPB�@�{�F���T���f��~��i��=�R�����C^��c�]R>��\l��+�Ǽt־q$�"kH�h�4k\3�
���Ea\�4�R�Lv�A�\�Z�o���Ѱ"�B�x��55�R��vS̥LO���0e!R����9�[ԁA����dԮv$w8w�"[�P^A|� �z��ӧ�O_�3!V�>��
�w t�C�q°�g}�	�}��"�H8S߮����*+&σ�3�����[���� �tU��bn��Шm#lF4o_JZ]��W��݁��cN�]�y
2�?����e�#HLZi��ٱj�C?��s����ޓ�D��o�50Z���&�ص�UGm�v�c�zY���X�<!(`�jǣZTc0�Ŕ�k����zM��s54��򪄹�—�霕T��C��G�M�F�C��1���������8�B1_!�hg��KH���̪�??c�é��Y���b�-9ܑ΂^�&;��v�#�Ć}��'�p��ح���8��j���ɆU����q%�xv;��!�.Em\�h@�l�Gs.{��*�*� �!��}��N�%���E|�Sh]`�D�9�a��z���k��Rt�Laʋ�;���{Jf��6��)'퓻���W���5���6�)��x��U?	�������c�ߡjf(�~��i馉�R�e�y�1Ӽ��8M�N@a׏KKJ�٪F�mw\z��8�4L����Ў�q�)Q+؆//]P�ed�J]7@��5z5f"�&���f�ه���R흺_!�C�e0��w���>S9g	h4��6�z-����(e�8P�e݌�HCz��Ȟ��^��^��^�ոq7C���u��Gt	ǒ�͡^}N�=p���N.��5ʛ4k��(�	?\S�N�7ų9ï������í�_r؄�p�'KV+��oA�,�XT���Z���E���.�����bx�:�/l�VC��G'�FN�4[ޓB1%��t��4���]O���q�$�M���7�{B�X7�^��R��Pu���f/ }���Hf�y`�w�t��|.–m��3���S�Ō�O�Xދ>Y�*ס�l/+�^��L՚}?z�=��
��-�ԾvG���T�t�3�nq�b��r�<�
����}�N��2�J.����>��r�B4a�<�nZ�]hKұ�W��+��l!l6~l�=��U�X���
K\?��և
��@5\�Mʒ�BKy�z֨V�y�����Z�?�#%���teo`�`k�T�^�����N��c���	�l����+ٹ�˓8�qg�c�>M-wg7�H�q
��R�yĹ�쫛Ǵe��Bǰ'KC��Y9`��9og/Vs	m�ku�ъ�i��hv���\�P\˱z��ҜYspwOcq�^�U�~��Rai��R�ԭϹN�+�9�-Fi@��M~@Աg'+�Dl�w��*s�5�4�݋O�'��2�
L�7d����%�"�j��~ �k Wj���v��k�]�=����5V�־}�e��y#\_�[��l�*���I�74���xo�g#׵e���3�\B��̓}��*,�#[�������Y9AR�@�3���
7R��3cw��5���2���V�'3��R�g#.��{����d���s�?
ef��r)C2��Ág��7y �e;��S�1d<v3�^��IfOm3�B0
V̯O[u��>��?���f���'�Ck=���8��_J��v����9,֬�B$���p9��x��
A�HSw��N�w��2��S�{��r��*8e���k�{+[Y���bq����;@�Ow��)����҄B�����˂aH�cZ�ҫ��֐��B��+�n����?�n�����?��"��`��nz/�©Qy]�+
�@S���7�w.h>h/���	�:�('�KRCl���^K��?d�
�4��}�#am�m���F�{�Vۿ͂�q���1�t!����R&�t':�I;K0��z�"��C���}L��HH�lGq`AN�}��KT��<#_�f_Ԙ�5P��l���v
'��6���8�+��S|;"��V)L��rT\�&!��Ֆ���L˃P�Љ_��Y�tfM!�I�����JM���q��DW�M=c`�;��彂u�1@���]mk��3�5mN��40;����Qʬ��WDli����_WQ)gH+;������kF�`H�b�B��/3M�6��<�����`:�z�}�=(t�Q��d���[���
�["W��3�8������%3�S�'��	�Ho�3D_���R����#��M�5�(�RJ
�u�
E�(i*eg����x7ZBo�k��/��c'�r��� �v�d��N��`P�`Z鸺E����c��lB�ܗ��S{d@��#v4*e�l��Xe�bg+�os��R�VϟYR����N��gy-�5:B���넬.��i��)ʾ����F$�*4;	!a�Tm���U��M�!9�tM��[�4�9�m�@ �1�>ñ���>@�<h��_^^��6���y߸�=2��k"qo�w���&�`7�
��4��H���'��PD�6������r��D�m��@e�kl@Ч�evȨ.u�֢K�*n���g�Du��ĉ�
ܺ�0e�Q��aymІgZ�X��,�<w�&��%�b����۹2ּ1�y�2.o�D��1=���U��<<.�o��C���4��@5���C
�?y�z���T>^�Z��xb�1!+v�0G!���1������e���W�-i�
Q���EϠ3z�~���^~*S��H�����*
v��W0.��q�}��h���F��umK�� �'xE\�)G[OG��"��|�
��!�B��NJ���Qd��J�xb�z��B�aQ�B�6���+�h�й��4X��'1ԴD���H�!��H�y�W��%>�(册	��%2���/|��s^QY?Jx׮P��~f����߄2Wh��5��FK��
�H��t�d�ˇ�K�	��@ ��'�B�����
7u?�����m_�Q{��tF#ӛ��d�j���&��e�e���fk�N�*󠭸�?���̡�{��R��t]&��P����?Q�1�g: -�O��#y )��kd(����#��/!�"z5�>�K&'�/��0ֵ���#�%����2-��������봜X̊��4�p��t��[z���hl�G�����Ɛ����*��f�T	)tS����V>3Я��Ի�{KY�H����N����\�� �ulFH@�5ZR�V�&��
���{<_��X�+v���Ɂ����3��C���Hd�6JV:�cC9'�T}g8cM~�6�,���U	��'��ګλ��ݍ��k�-;`YfS4I����v�v#Ra�z��lJUGH	�M“�zM�a�P�����‹U/%gMeV�=
���8=�V�ĸ*��Cz�tà?�_T�Xj�+��Kl�_��T�hIa`�a������J� /yd�Hx�f^���C�~��JX
1�P����!���r5:���
m�W�WYM\0�g	�K՝�C�I�I0AQ"�[��k(�"�@P[+i����/���Sr�L.�Z�p��#��i,�4�ʣ�Ə�}Xƍ���:��>��w6]t�7�+`��� #���en&O;��k/�XX�	P�,�Y����@���������x��.��Ȩ<�4MC�WA;��%�&��r*�g��u�Z�$�k�B[k�~S�Uwu�Q��:�M��m�7�d��%,��^`�<�o�*=�M�=/��"-n��o�D�k�����I3��t6��ºՋ��ڕ7�r�/�7c��[4(P9kA��EM�
q�a)�u|�)^�\�s��?�+�~3&6�?���$��c�m:��	`4�rX��ձ�����uln#�cq[����G]6����_��NW�ձ�����ulm���=}�45&��H���ɘ���e���з��X� Pv��1�N���6E!�8l���j �[���Н
b���ۅ����@o�Q�H��֨w{�\I��!�e���F;��l
��4b{�щ�F �P������9��fa��M�Z�w�SX���ǀ�u�?W#e�s7�=�Y�ng��碍P���/
wƚ:��#�
���B0ֆ&�,yni��$����@�j��{#�O�l\����fK�S��=�R-ݬ\dx�*�Y��U��GW,5�p"(	gn32�.��ޚkc͝M�{b�����JY�@M�O8�5���K$#m�����6��.�R��!�(��'9Z�D!�ԉ�ӎ�`�Oo��5����+|3�p>��w��\���i9�j6kRh��.&]-N��7�8ݾA,���]��J5Cb@�����i6"�|���ۛ�:��q!����!��n��)����b�bp�^B@q�λ�xޙW��O�u��2�3�\o6���-���j�aȿ�%�v�p&��Q73Ƙ���Z큥_?~�٢�J� ��-xX
Iƒo�
����Hk�
a�`��+@��1Y��h��d����$Jp���8��]<���N��})�a�=|�z|�(y�����c	�<�?�k���,�H÷��|F�I����,b2�P5�jZ��t1wD͵8\Z#�|�-���d�L����\L�5lt����ŜrP����zif*�;��TX�ޫ�>a�%=Y�mL~l�?�V�P�L�|�	ُag����Ǭ�-����nS4���[>�ź��r_��9�����+#�V�)��ʪ1�q�16���9��iE¥6��aq_ZB�Ջ\Ah0Q�!��F�H%i�/{���S'o�i>�W�!��
�!?^2���tU�a�F��;�E��Q_��<�xj���CH��\�C��bx0޴���jd����1"tώhH��L<�3�K�į!��2��H��2�!
?>pd���b�n�\D���jw4mO0wc��J>/z��j�P�̂�M�C�?=�n���r�Ƶܪ�
��~�`�=�qS��]�-�Y1h]�#%Tq3��h��qV
�Jԏ[֊��������JՁ8�%����AEx��
#�<�����6m��V��+��r���Uk��gF3��S�c4ڊn�*{+�!�£8rۍ���$˅�J�Lj5{˾�l���ϜO](�����oI�ǂ4�O��|6��+E(V'�v�_R��:xGD�Z��e�"���B�ş9]��;O�^͑
R$����u���|>D��W��KVG��Ն�TAd�w��*n�=|�-k�z
���^�y�>��D�c��i�q���ϑ���+��CG�v���뜖)Ɉ�h5�'��bjb��d-��n���v�t�++�[�+)Elz�n°�Z;"xI�p�����H�E�����EA��W'�(�Q�{X��U���<N�ʂ3!������Mq�Ce:���_r�(��dP�A-�X�B/	%Qz!?��'����2��u{�@}	D��C�Ճ؁�u0��W�e�3��C�'�������#Ρ�'El�C^���#!��G�9[�����s���(�=��ͯ�-��пm�]�Y6�:!d�J|��0�v��3'$�#�uԈZ/x�cQ�at�)ߴ)�3�R��B!b��l�z�	���1K�����2Ճ�aa�$�9/���D�Zh�ޓw;N`b.#ЏUҼcL�X;o��&	<��0D�T�U�Ά�+�~3&6�?���%��Ш�l:�[����GV��<f���($�&���,�Jh�C�N ��D8@�%َld����.��P�@̢�1DG{u�/�M}I�[��'k#��l��sV�#;O�cL(Zm��K�N���7"��풝�1�8-Kl���� ���D��A��x�:%E���{
�nŐ]��~�g
���;���Du�J�@G#�ma�	���&�nq�ܬ5	<Q�x�}�+�� F�4]{A�/W�a�0���"Cqk����.ɣ��3��qy#�i	n�5�@���<ʪo�8�f=��c�U�!�|���q���a.4�������|9�u�G�	�D�ï!ӊ����P���c��Ϝ�%�x���6���Y��D���G�����&ڑ�k�m.(�6D獷��j�\�|
4w��ט����M�v��i=eo�*W��l���>m=֡/~l�%�7�Uj��j@-b!��84��f����Ф�R$Y�������_�(�q?)W���Z��j�9�
'O�/�q��owJ1k����{.?/�o}�6w���G�Q��ҳ�)���G2���A>p����*�-_�S<<��{�3�,�lA�ⲁМ߀Ǡ�}T�0�՞��߸����
Ph��;6�?~l�?�i�.9�bF����e�O�j�?�4j!�A�y��	V2�0�!����%% H��LHDa����l{�$$*���f4��ww�a�j�*D7|��V�L�	(~�Z�̗����:N�Rb��G���qz&�ۡr�ť��>S0,}>��V����Vy��A9<N�����r��â��1a��v�K$h4kA�k�vK5�I>������u�m�&z��9_;��.�XΝ>u�y��b*
��{/D����[�-�G[�lAw�R-�̠��?w(5��n�C��v��kyE�5��#C
�>�:�U+���3e����wj��
��2��'t���$��[QY�)_h�k,@�q�~l�?�i�.9�bF������f���lsV����TU�@*K<�1��&��Y��'	�@>�[L��6ϰ�+�Zu:܆��ҖZ��X���ZG�]���'�.�;�a�5�Cb�S�4=�qqp�g�
\�SKd�ly�� ��ȱ���9s'�
_�!�W���X�Q~��_[^y��S�\������)Rg�\h_�X�ctX��b\�
0�NZ�O��2ea�\P�4��^?��cNX��ji�4a��uRM:�<걘�T�wZ�c������(��!�_�
��g��|�e׵��d^�U�lY#�f�gu�ע��^]��4WW�
��!o�uPbco��u���g�
�Z��ka\�oo�<C4N[��X��;�0䉸� �o�=Ƥ`�'E�� ��h��?� ��j��⸖�I�k�(�F��ͼ���떶q�8���m|���j~#]ʗv���p����,�ͬ�WI��[�
?�8�މ�H��q@��V&�&2ؼeŠ ��S���	�Y0%�qL ��4QZ"��]��M�TI���}�
n��`�����xjoz�#��ow��K���ɜ������+Z��vQ�<�@u�����Gbp�@t�d|y�?2�:d��z�]1�`#���%��zd�|
�^�)yrm��<0Y���6P�VXK�Q�oN<��~�F3�O�Ki�u<S
^���i�I�4�d0���!��):�7��Wq�rIn+�^�{��Is�Ue���LؕS{����O�z��ky�u-Ƀ`�I� ���'ث[��OX�.��?ẻ��婩�_q���.�����b�=K�[��W#��b�%��h�c�׏n��7�����[?��i��@�s_
�#w+Ubw�
L9(��+�9+[��P�m��6�2���f�3�b���pB��\e}��n��	����'����U�Q��r��H�w���c$5<?{�V�=`�YBy���0d���j���/3/�'/"�=k-M�mq����"o�	�2:��28�3�"="�AaUӡPx�^��%���k�m.��,D^�QW��;[=�u�!��f���cрuU��HJ'����d�M̮ǥ��ϊ�PBW���H�����[&�
>��2==��M�d�G�S�![��Ԫ2l����{(��{<��h�
�n�ʊ3�I��yb���K�9�~l�?�l�����5�\4���̔��8�3z���+�L�E�7)K!t�L쳈Z�)���n1F��Uy��iU�j��)�K{0hD�F���m8TW���s���=�����^Q��9�[a��YL<Al�b�^C�d��.��X����*<����H�����1���{�7R0�S����0MdMwm}M�"��ǥH�T�3,*n+Z�iܩ�Uhx���r�m�$B��}p����1�,��J�(�Dh^Hh��8�9���b�k�	��u�+���丵yͰ���91��
��,|b�5�^_;�pH�i�:�%]ZX+	ME��F�3-
���Z�5�
���b����56�e�pWu�S���낙;��o�d��;
N*����`<���Uir�ɾ�^�AVN��,&�PPE���_b.:��oA�>H�#�z����4;����*H��cU9�{��J9<[88<���-uzM�5	�Ł����r�x�w�S=J+,�Տ?��l�^��d�Y����eO;�P2�x�k��Jw�N�ݤ]G[�ג%��w�#��֤(&�:.��n�mM��\�W8�t��
���
�bZN�jv��K�������zj�\V^�3��癃,O�G`�"�k�W$�5'%zS�x�tH<Z����L�)��;@����px5�;S�����h���g4ʒ���1���%K}��A�l�W�
���:��t�6�忋��.�g͙�K���9B�cwL;f�
d�c2�i����'���vq�&�$��
f���Y�!��/�Li:xr�<}q`���֣Ǵ��*R����D���Ƒ],� "�(��6��%��<#�
���&�/�����&o��Ε�R�ȅ�o�%B�lf�ԀU�*U%N��,޼����W̷h�:�n��>���1�
>BU>=ęA�5���B��PX4��� ,+��T����2.��8��븥xզ���{��NN��w#��U� �+�ĺ.��:���L����<C�a�Ӓf~`�v���fs��em�z�HS4�?�}�N.��k�{9h�
/���^
��^Fن9����V���փ��;���\���cTw؉�N�p�����<��Yb�f�C�V=A����ܱ�� ��egHH�2�8{V:pc=O�]�ǖˡ�`�aB��4�JE�*�y{Wb�r�}�ZNt��m����I�<u�FĶF����4{__��
�#!��r�:m�$���By|�A2�ﻫ���m
��j����`0菝�A��;�v�^Ý
���#dsY]mK�����LQ�TLG��k!t�	�$	/XW�s��,���(�!9PP?b��\�M����5]'�N97�1�Z�(�h^,b��N�l^U��+�_�'�ø��X_���	^�����o��4�yE�p]�4��0o��C-��6��w[�g�O��G�vX�KbVe�Z�Fs`����E��f[�{�W����zu��\��_"���b���D[����鱔h��#
�w��}吤Bգ�?�G�N�h�N�۴�G/I��b��]s�����-�*�P���w�?�Ц����Q��G$j5�a;@[4�J�+K�[3����Z=��������ع�6
p�X���J�q~l�>�i^�(�)YS�*��!�ê1��RVX���6z�A�����Vv�xFΉ�4�'V�k����'�ӗ�D��@�SY%��]��X�(+�]�>�9*���	}8�
�']�6��;>�	���+�_m\6&�L�׫8��iJ|���iG�K0ݺ��<�ޗ��L���2vy��UL/����P�j�80�`����K�vsQ3���_9���"�~�zb�k�]��f=f鑍�q%_����V�ۖz<����D99a�+��k��o2�A�(�+r�y��4��ٲP�
4p�8��f����,3�^��S!#��P�g��U�� m���c$��)|�lˣ�e�.߹����BI?�"�˜Bjy5��}��4�Y���V�i���
�w2�`<�+�ދ+~��X��~���w�,Q���J�s
O�5ú�Ɍ‚��3�&�?���̆
Z���/���F�Jө��%�cxJ{���5�&��l�k�h��;�2�
z�fMR
2NF	��Gf*W��
;�i^S
�Rr���2���2@�=<��7W�1�ήM3Wr�5
Bކ����4$[}9Og���SBެ�����8ߓMy�W�
,j�ԓ,�K�ܧ?��ct�n��g�%���(ف�:�P��st�q�����d�Wš���o�6��!G/:	�q�/C�H�ž_zYy #B�v&��E~V�a9��v�F�`[>��;�N�"7mq?;P(��,�c��B�~7#�kT��KK�
���kD��3\)$ѡ�5|����:���P�Y�cCPz{��U7��z�G�7����)�:�!�+J�I���!��f\����u����o��K�n���Yc;���l1eq���(��+�	��>T���^V��s�u*�G�]i����'�"��zz��r�D������~l�?i��C�@Q`;�ުn�6Q�4�6���lO,���?:��#9���D�8Y`����q�"p<
�'�xO��CH����d��U¸��<��!�L<n)hL4%
)�lG4�0��K�yM�Y(mP���M�	���P9�������B���>L�]8�;_������~wA t�Cy���J���_�,�g�O�v��%�Y��a�;�Q��{��W�8��V!�5HY�k1*�T=���
�� ���jE�n���2�~���;�w�j$Hid��`�]���sZ��sF��~<D#�^��6���@�{I����X�5�(�F~:<}�]��X����'aۇ@g��g����!\��<"vq��4,��k��`>�Ysu��û�=7rZ��oL[p!����&�Bl���k�X�%��^*MW�A�s�eNÆ$�d���P54$^�̉�?2����l�������k�;Mz�;ɀe�^��cN�������ӧכW6�J��<��m���c��q&G�Y�B_1�yXy���0
�E�ˋ)��'Jһeج$�Y�߰���1�p�@��wA�ʣ�X����=a3Ph�K�F�ܧ
iW�����(́O�n�+�������gx���&���j7��:m�7[�A}�6��e�	9s ��
�l�yGl!Y�F��X#M�l4���M�p�-ZJBRrAd:��=��X�*Ĵ�	���u�n�#���P��k�p�m�n?�Ԭ&U�F�./��B��s��-��n���������n�J��	��CGD��p��^3��a������)
V����<���V
=4���'Y���
�D��w��V��m�������@���#�&��Ha�^�l�l�	@h���.�M�ε�2:+���[��eu�	H8�OL(�)�iC{��!bN������Ʉ��6:I�yi�
oeN/]�?�cd�<�L��%�g����s�w�+�22�8e��VO�j�L��W�-�;u��t� �W��0������[S:�5��~|�7���.�~MI�+	�<L�$��[��6�k���hޔQd)��:hA�N�GREZ�K�Rr���J�d�E�M�u�N�ad58�u]�@���"Z:���x@S�S�(–r��iT���*5��N�p]���r3g���b������!8E
�,�wa�	^� �b{0�q��s�
;���+�H�����
��u�!r��z�9n�A�xPs=z�b,�v(�h=�?n>���q��\�5���*�:E�z*i�0�;�*3x(�����[�0FO*���G(ƨ~��#�h��p� �-X>ڧэS(jV�%�H�1]��X��6�6k�x�Zhc7֌��߄,0�o�N�����U�⛿����iM���V{�ZJѺo�����r��q�zoY�"ٷ��̿�gl�"��ŦG��rA�>��,Y͛�$;[�O#�����6�yZ�{��D�]I`Z�3��Q8���wm�ߐ(Q.$f��%F��9o/�ڔ��?l��DMC�nfj�4���p�b2�E�m]O6ʂR�P�ֹZ���(|�Ky,금��f��N*���j碔��Dž�(�QNŰ�Z"�Qv�WvS;"��^i�c���y�B{K�.��r�AP3�w�$0on{��JfD�BZ��?d���T�/�(�){_ e��`S��K�{o��U+r�ӗ$�j�-���Y(3GIs���E�+�sP 	���-6Ap�_=b{�b���Z��X��:�!��k�Bğ����<U�^��3J���C-(���y
�7x�����5��ϝ�/�E�z7q(;j�����;�(�{ȘH�O;�07�3R?�	b����U�	!��WkGP��ylAmU�sU���z�F�y���1:yh�B�F��@_��u��A�����z�!$����%���wla�O*(�e���%Y�qiDZ���J:R֢Ia�}��X���(_O�� ���ش+H��n~���oZ����%������A,`Y�,/�V��8�6Ǯj�l�y;-�/���P*�,xW}0{��eX��:^��ڃ$�\� d���Is�X2�tU����Z�8^���C>�q���&ٱ�o����;�m8����FHa�^M$t;!�]9p'���M�~x�c��O�,n�;�r���6vV[Ya}#��Ҭ>��ͽn�>�D��V+��T,yV���$�?
�>_��ut� '���h���4ldA���{L"wW��4s�ո�ӓtW���ٰ�h�Ц|�y�����smd�W�:9vd@�~�=��{��FG2y�=��r����}?.1�W���y���
-a��9
'�JY�"K��XI CJ#��	�B�HM]��E�Y�+�����j���x����l垳�M��!W�S��濞cq�
��}��й�o��K��R�tޏQߖ�_�Ԙ'_w��E� pExt��h���By��T���}K��o�=�R���l%[C!?N�T���Rؐ��t�3XC��3tBi���a���i: ��q�_F�&M�~�t�ދ�5J��G���Y���'/��ȇ
#lv�Z�)�����.N �J�Ee/�S�1b�o���ؙ���S�Z
is+|{
����Z x����];~���>x�)|���&�@ח�9�_�je˗���<z��
f0")0��/�W��—��*�`SO�_���8�Z!C[��K
�b�yk�ێ���
�� �=����Y���3IB�W�7����O��gW��Tff�w5M���p�<+��b�5�y� 6C=�"�xx�q_��Ev�^�7	��Dbk7[�+�=׫1�K����O�r��n���#;U���*�:�E7��ш�+�"�a�ɯ乓�'vgUpY6�B��zp���Ò��N�j[��@���b�^��=����k�!x=ɖ��)��Y�E���%����Q����x�)�8e�L���x������ԶK8J���\	���S�"W���,�p`���`c�R
�FF�i[\ʛ��*�x]�_�`��L��\4�r E/�$�!.ˏۘ��+nv�^
�.@��^̦~�HDܼ��X̀��������+�/d�`�rȰe2�HX�Z��"����+�]�`��t������c�Ց]�}~چVS썂	�Cby!-�G��^����:�X�І�3�0���e�۝��,�7΁3����i>3|)N�#J4<Jk�����T`5Nǯ4�_�n�6����e�>�<�6���f��|��Zk�Y�ȇ˰X��.��	{�I�m��';iO�/�
��2j(L��$PtѢ��)�Y�p�/t�vjM���H�۷�m?
�hx���1b0�V�YH�	��|�uQ�)XV��f�� ��3W���?]mT�,gpV���:�tx�VA���]W��y}עb(O�ߜ�x\�C9!�>�e\��L��U�.oJ�SUG��P�Lg�-�
t���D<0ruu5�V�tʞ�N��
o�O�^�1{4Zp�1�8��2�UX��A|�1��
�&@v�������C�:�en�h���Ӵ��M�UA��&���<�6��
Kπ$w��Ց�-�y�ѹp�=���4�e;!�b��Uɳ:1�����VM�0x��YĺL��'',�9�5fKM�F0ZW�V�Z��
�[&�f_�����u3��T�Rh
p	�cmn��w�ݜ�"Ҹ~��c���am����r)�S����*�u,J�I�֏EiGw"��%�#�p9��lٸ�a#O���D�,f�#�t!l>��v^*Mx++R�:[�J����U��@�[���q�H��V4��Y���iAm}��?�0P#�(��_xA���)�¥i
W���%�P-�\��- �Aj?�JK �Ę6`r�#	��Ь�|#�>��]�[��;�ʱ�v�Ŝ���>�]��'�oP>$��
�'A
6)u��v۷��e5�J���ƺ�S��n�g�?�.�9��
&�tȅ�r��b��p��<�݀�s1M���j����acA|D�c��K���#�Y�ߗ����: �(�>u��Bl�'�+|�dv���s�UI"�^�zcY�,|��]���@��+���{��*� Fwlij��0��85��	]H��Dg��G^����pĩﷹл��
�R�n'��q��m�a�A�4Y�>���I��ަi��:_��ނ=�"�8�ay��K?D�#6M��Κ�/��@~ã0�8��g���IR���cO�oץޥ܅D��o�{�|@�>S�!�̦�TZ���'J�r�r��7�4kc�3�#��Zwl5�i�@�?ӕ\V���$���
e��C�w8v�-Y�OB���)B%X�˦�:�{��|������T���-��f�̐[ �E�ڸ���v	�C�g�.@ʢeWbT��j5|��b��y����D�P�<#�:��<�i0I�?_��#����.ë	����}	�_��H�D:ʆ��$�mA�F���C���[p�4e���R�I�����0l$��"O���=�	?�IA��6uݦ'��E����;'"�.�{��!!5�y�23�rַ���I��vycw���E>�<����.ۺ��6����O$�0J	���9X�q"��R.Q�^Y��&�o�mR�^���I���`h�E5AL��f&�@��Nk�O7��>ׇa̠c��q���1W����d���^�e���&>.G���PT��=�S�aFu�@��2���9m*�K��4���L���D���]��	�E��g�7�)a�&iXi���܀��]���v`VE�d�$tؿ;���@%7-�f�&U�i�נ��L��t���~����q�UCR��3�����,:�m>����*@*��`�޹5:�_
���w��TQ1brF��ּ-����KD����@�v���F(�\��;JV5�ʐr��+?�h�"Tl
gz����R>u��$=�f�̽�J�D�fӛ�'X�\qxR�$ɀ��'.U��,��w�G���������x{��X<P��	'��.�S����}��zM_E_]�fo����Rn1ZS��@�Z�7�nQ���U׿ۤ3V?	��M�����8�[$�ܼi�w_!P��?Xč���&����7��K����Ȋםl�o�_���7���`����aRut�[+3�HJ(��Y^9{ngMrY"�++�Po��ɽ�zi`��tƙ�)01��\�+��yI6�}SD�Nם �na��>ƽI�㕲�������nHT���"��i�+�a�o~�`��i���ڡ���;����k
3��f�4w^ʲͥ���Ú�뜊�C!��κ��{5a�^Ȑ�q/Ӧ��$��M،Άe�;h�:1���ص�.��L��G;�r�h�a2�@���M8#����`/�(~p҂$�Y:�gۈ�6+]��(�%JW��?�m����(SѣSCG~AV9&���MZ��Qt�B��1���ϸkJr�s6r���9i+���L�%�1rI#�
o�p���-�Ơ�A�
��|@�qo�ul�]߱���Ej]eu���2d�BT-we�	��r����Ld�K�S4�m�F�b/!&*P�@'��)��P��{�#J,���4=��8�T,�:ɓ�
��|�{X�K|X��Ic'�YZ�]�LB�Kq�V;J���pQ��b_~�����5��zlSR�	\N$9z�x�}�CC̕?2�]m��;x*ɚ2ͻ7�;�@����nJmPIB!���sΚ��;���oB� ��k��$�%"�1������\�a���_�0��Ӱ���A����Y<���"��{���s��{�U��^��(WK(�t��3��9�R��=�������	�CNVSL�}}�Ǜ2?{=^�p9)�%��a5u�n9�	����ҿ~F�=X�C��ξJ���IG�o�-JϽ<���9��8���4
?qZ
4��
�45�%ݽ��H�j�$̱�<�=v$m&���e�rMN!H�ϊj�"�	u�`SM/[����|!�k���1�a"�?�\�@}�އw���𲰉���k[1>j��h���~�ʼn~e2A5ރaqr����qT����$�Ɋ7�\��R?XL��9��K�#dq9��	*�˵��-@w�.�����P��*�TW�:<8�#�"C�?	$T�Hǃ�dj��ZM0�|BP��(��F��
v�.�v�0	ꣵ���F6pQ��j�c4F�yN7��^���%5ԝѢu��Bn(ʼn��jw��dW�4��)��~��6��ό�6�qMH��s2#K�~��Q����2U�DKl�u�7����h
�
YUN�
I^R��^�����K��w"��/6AIx�4}Mc�� �\Vr�V;�D�eL�KR����龨�x٦�" xO4X(u3�R�c<U!�ϸ/
��v�����Z�����K��{/e����5�h9Ho+!��>��Z�ְ�;�P�X����~S�n��ɢ-Cȁ��O%�qu�,d�r�KJvH>`҂�Boa�ȒNm �Y-U4s}�ŧ4���y��]i:*v���g�n��Bp�9;+�t���A>"-�J�qy���q��w��t���u��5��R�����:�Mg�!7f^���<y�P��a�M���f�x~�BhB=�QW�Gk3wa�}�idEy�]��`Y��p�"�ܳ�]̄��qLZ,�Egl��sq���C�������O���௿�}��iP/=�!b�~[}�q}Pս�\���G]��Mr�k4;f=��B@��/��$�~��j�ܵdP�>���=<4���!�DzK5���:����jr�%K�*��Gy�TM��OԤ��|�ϡN�o�{e�fDDz���F;@�y$�oW����?c�i��c�Og!ڠ��Օ�)Eƺ�Q�r2�@�D������=u"Qc�)H�.i��֮�n��=*�u�kE�#l��bj
���V'5;�;(D�&P���	�T?	���-��(��u8�F��-�@q����d�*L��?mt�!�J'H�1ˏg�JD.o?�a�p�>4�%�ᐰ���
5<�d	�\���8�&�y\҆�T�o��f��/u���\�{�r��W(K�9�i
��d�=���A~-�RTtܟ䂐#�z�T"!��)��0�$u�Ш��,�D0����
}��me�m��es_��I^ܱ���hc����/'��i�-s�_���Wt�d����ϟ1�q�IV��L���N�
���
�=��Q8TNr�?w\{�㣈��1��{<�#*Z,E�eNn�	1�8��i��
~�Y8��=*�ꩂʉ�k��1TX�W�`��
��۳h�n�n�ϥ��kMe�C��da��8�jƹ���!��y�*/��ER�T-[e8�&4a�ܖ��\��
��%i������R����cV�����]�~]Z)2}��It{�	�R%k/�S�:�iQ��=�����[�d����W�u�pB���­�@��+T� �],���:�^V���[Ʌ@f��>�F/��^��|��J��:_L������v�fw�r<�<P>�M{�;�m'�N� �9�{�w!d�`�IY�@Fz��ՙ!��TU�L`I��u`����j)�Qn!0g ��7�_�9$�C�)�xX�;9BK�/U~aq'��kӽE�s�a7�Q�,?H�6c�����ƌ��M�g�G[�}9 ��|��ٺ�6)�h𧇏��nv������Þ8�97�M�`�2ǩ!�n��9qi╚��|����У��RS;�
.$b5Z�d�7�K7����4\�ɐC�B.�]m<� �t�5K9_�A�D�1��7���o���;�f֍.;��ߏ(�
�����?�x�3Y�a�^�G`�(��2,!��{u6�B��N�;�8�Ìǘ���jGEFn#W��	 {i�tZu��F�j�5��+#��Ӌl��_'�9Pur��WF[���n�e=�4��Y�\Xf~���s�%JE����v�w��Gr�D������l��,�L %�e�f2ٴ��ee�8Cc�D^9��)<z�Ѣ����5�L��q�C��,�R�p$8��+ݨ��i�|�k�Yr�H�FO�YDH�E��b$|�v}*��w�_�3���
~Ą	1���LR��D�Pw����$dcC��n����y�N�Ә��QWX��T���<_e������Q�!�\e��I�j{8���CU�rO���S6���'��=5��/��>�"��)����%(`����+����-�{��K�{ENSd =��Z����/��<���l
S�Q����D�]�NܵJ+�'it����l{e�bҎ�oP:�f\��A�M�6���i���4a���<�8��3����up���{���C�
J�����K�:+�8��wn�#S���V��#&���*�E��w<��
��d�_,��e�8�#�[W(Z��;v!�X,�GdȒ(3W�/Y`fl�&c���m�9��2@1�~RŅ�
��CDe(��X�G�D*���A\f��$Ϊ��R9�y~g�X��cm�8r@�|���v�mmb~1����at��.�㉑���%��SRf��R���>�~�	t���LV?�d���S�;B�=��Dzk�*����_�t�r�IK�r���v��MDlN���*�b�@��_�"�A�+�@�7�0O]"�TU��D�G�9��m�)5�f�m�C ���҉�Y�:o��k�x�h�d<�{�P�[�jA<w^��'��|�P�����[	B&x�=,�Teʘ�1,�C�RH:��?(�.�A|`]UN���0<;��H��h�̃#�"�w�_��A+�)���
G�W���1�7�b-�&�3p���g�.La�����7vC���څ���*'(9���M�GX�
�R�j�a��j��]�땹ɮ-�~*�J���o�RN�i�� ����喲�������J��;BIS�����{�<���k�S�x�x��;���-s#d���C���z=�e�f��#���r��*s�s�f��-�E�f"���.?4R��d[�$�-�/6)5t�ɓ�v���INx��ȞTH��]Cq����R**��#(�pװ����6�鰂-u���P��pBY��س:t�����xhl|��=H��z�p1�ν�)�מ[��i%������!wܤ��p������o��jXU�8n��M�+�%n��6Ų�&PVn������s�����_���&W��(�('��\_蘽�`ɑ�$$wh@[�M� L�/oG˯ʩ�@H�x���ut~Ȟ�;�c��
�/m_�Y�)��!L?�([��U/�pY��鲴�����W�)�ӏ6�ǵ�S	��U��R���Lk$�2`�ߙ��zCp[:u/����^�+�dt'������B�Gt��.��?�;�e�NW���[2t;�.v�NGCY�	�������{麡���u#�m]wˁ��&~�C���6�]�+��(��҂vk<}/��[�P��j��5�W��d���u�}�"!��/6��,����}�l}@=�u�|�ҵ/��q�G�@q�i��[I�h�W�������]����1��+��;L�4{m���S��'�9�-�M湪�@o�j"CJ�kZ�ܴD%۲K��ʐ%,��)�t�3�B�&zE�o���rj�	^��.�����겱��,}�֞����f*���	��lD���+_v/
��
W��S��xv%����D&9G�H�y�8?)��=%Q�R|p�[��	�zzt�)v���R[w�L}����cqG� ��d��p��W�u�sbvQt�����G=��`��#�:�4����K'1���DT/x(�@zQo���<�\z.
�]���	����s�9��'�(��2HC�>ߗ�@��Y8T\�[��YJ`T�y�%�o!\茢;�����:Vo�3|����ۮr:™���:�4�!�|���&u�J���c�srSr�O��X��VV��`5#��������L�Uƞ�Eb�pqߟփR��F<)=�N_�o�t���U�)�Z^�-��8�\��
���e�����X����Z�d_O�	}�+�"q�|f��7�����V�͒�,=ң5?i��c�ʾ:Y�U�պ���U��b��տJ눗(��C��V�ތ�+@�_7�Q�{��ݠ.�	�K�f��ww�<v��qIZ���2+1�78�k"��\1~>�IE�s0��^�n��6�Dh�:�v�D�p"9P��(S��Ք�R3�Wܚ�Z6(La,hH�9������A���M��|��\:��\T_)�i�,�
�<�x�G�	�]�?˕o_�a�y!n���8J#g�XNg����KK�D=&Tl,p_�+<0��Q��ΪH�hnN�Gp�P�-�MAl�"����# ��>{�챎kUZ��g1}{�T�yh#|����]�]���^��r�փ��-�C��tn��L���7�#�դ��O��z�'�Sg@}�ݱ�C��=8-�9�X�O�M9=�w��/X�K4G�j�HUA�c���k��A�#R
3�גS�-�$!�cBc�]]�*ڡDtI�&��N����
-z�����6��?����x���m��³O ��4
��?쾉����M�7��=B�
]+��%+�S��7>8Su]��z����5C�H-��/�-J�~��o/l�>4q,պ���la�}`:�2U|���N_��0���ETMSWU�r�ێ��
��M�M=���,�0?�~ԗ�l�r�p���R�Vi.�-��8�
�B�ޙj�Q.]��H��ש�!d5��]1
��g[�P�J�	���۾�����{,��8}�?���<c�x�ٝ�
[�����q�50��8����4]�}�M�k���P	�
s�Z���ת��ύ���p��}k�7�r,�ʾo~F���U�nz��e��(��i���'���J��h��M�=�T�8�l�����o���o�eB�%'DV��iX�DR�l��ruK`_�/ɔ�}�s9Mqd��+��}T�0�A���~�%��E���u��e�	��I����@�j�3�c��֎Fu���l�gg�D�Y�Χ�C��V��{	Y²|U@�1;}qT2ϰ)��Xa��%�O0� R�wRJ�x3B885U"�i	��.�<�>W��V홤��]Kfk���7]�@�`�<��x%	J�O��_�(�8��.��1�*�EKe��I�ف������j@�)�
>�d�j���Af����~�a�	���n7"��G�࿏���0,-<�q��]���"�L��M�p>9���u�l��'�.|7<�AVt�=Jف����i��/�W��D��좰�C�#j�)\�����1d_)WgZ	8�J���'[/U�Y[g��A��ů��J}�6�A�5f���
7��4��,�V�h+H:�5?�&i�^,:������2��˞s��HaE0�Vơ�"�	�u�Z��ƌj���O�BPv?g2!�HxLZ���9��-�q} ;�*Zy^�;}���ū:�3E���\�E�F(!�sۏl���ۯa��_�.��h�o�Wb�E�:������;���	E5m~\�3�<���;���%覜q�h�Ii�ֆ)��%G��32��'9[a�����C�vT^�YM�VT�E����pa��8��w6э@�����{�I8��&n(T!���� #MH����g�[|�~�zCBY�3��O�-U5yJO��1���%4L�R��%��m������WA:y��[o�@�I5@6䈴)��O�J�Ї���	�^��T�Na�H�db�y�$��rj�%A��Q|
��B(N�}��`��*���շ�*� 
_M��oj��	���rRF<N	7�Q��tF��e�#�,R~��|�/з2��/t�6-�Xbl�q$Hu*C[K��fY�hȵ��/�j����ީ����sw��}��o<�����^��]�����%�u���q

�N���Q�Y;�5Ch�M�0���H��X:�!}�,9f�SW��p?�O���|(2�G(�|:1��S�EkWT�F�k�a�
���Js�ǘ|q�"���HK2�P��+n��f����#3�$RS��Qc�jʗ'�Rb뾏}��7�W<��7ˉb�/����O�(��rc��ho~������G,��*6*`��)J
��{XCP���e��bJ�lP����u.�C⃫(���9=��ue5�h�-�Fk�d�A�u%CT#��=tqݝ�S��w”P���oE/����~)�n��/󈿚��b.�sH�p%K�����ϗ+E�x�Hoi�n��`XZ�s�1�]��nBDŽVϴm;9�	B���R�~)��?��c��%9�[C�S�0���K�u��/�/�L���,����L�l��,K�V�:h�})�.o��g��H���;���qo1\�n�I��W�n��h�Z�Ɨw�r��g��Ѽ7�j�:�䰺^��d��i�o�K��eUy��_եb�=�K����q�bVZ��߷׀��j���5j'�I ���Pq�=7rjc�/����%J`���b�_���5�TfT�0�1>��&�����?t���r�2=�S{~|�g$�p:Q.����lق&b,��Tp�x��C���똮�^���F�Sߣ�p��e3�3�P��M�w./#����/"��R�����г����a�(N�����2�3����!ؕ:j�p��d�ʆ{���Zޢ�YZ�&��~��V䜵5+�ox�lV#몟���g)���'b
<U�q�uayux3�?�W��f7�4��S�]�p`j[;�TG���$�dKMg������r�����,�\�zI�A.ڒ�= �	�z������;u����0ˮF���1�w�5eW���薕�	���ƞI��]�A^���Ff(��q�u�{7NCM'��Z3킕���2d{F�0�h�K�qA����r$�pƋ}m�L��ƭ�5(2�P
<���tݰ�*/�MqSh�o��x�s%���ɭ�L<��A���w���v����~WSG �E��ʲx��hખ�5���q����}����O�w����~7C��y�Lky\�����Pq�]%�^Y����c�웨���Ȗ��v�9
�,��ۮ�ڡz�d.O�>���$G
0	�G↗�Bf�LM4;(���J��O[w��.`_re5�^�� ���`)v��.B&���R��ׁ�f��0������΄������}�]�����O>?2�7f"	�K5�z`�V?�ɑ��$�-�>�>[w�yC�����9��G2��4n��j?
�,x�U=Nʬ~�J*�[3w��N���M.v얎,��o9�Z�šZ�-\�2�7�bR!T�gl�b����j;�06�M�7�����~�)�U*�]B���
��e��@�JRT��kΑs���9m㯛ry6��S=�)�!��Y�I…t�+�,�-�ްF�wI|�PI��▌0�f���i�؁	2���n�'�_`'w/�>��q����Hi��KR4f�Ƙ�D*��r�\.Z+�y
?�ֆ��~�0H���.步̳�ۏ,5��lj%x�*�qZc���&���a�]k��s�(F6��b�9l�L���!�ry���4�����*_�׮�:�J�޸�ܷ�i������~nvUpH��K�/�,�7�Op�ч��7���k�0��=Y��.���
�aJ�L��c��
/{�:ds伨����}���U������Œ�{�$������Ū�q��2U�7�N��^����8���v�^��ZgPP�K�l�VE����L6/�n���h���,nxN����?��P3H0*�ߖ�"�\a�#��t�<a|pH�e�>C�?u,�K��g�4{�-U"���P�`�ƒ�������HgyM�1�C�Y)t��Td�q�7M�eC��&G�F��	�S��H�w�����%���Z��	m�[��J�߈m5/�J�`dh;h{D�8�h#:�yEw�g�r�l�GEiz-	���}��إ4�u���2�f�<�>�y�D�hM@���]�]X�8������~q
%��)7z5����ės�ÕR�S�uu���S;�ʹe+������p v���_��?năA�t6�;��O�q����{�3��f�$�sQ��FA���9�.��!�����
�;\@&BH
�;�zm�+n���Z_&��b���̓��g[dW˕��7�q���'��sLl�
ų���6�(>�j�c)S�iry�k������臚�$ʫe�;�/b�ut�D7���Zb���Jp�^OO��Hfl�󣒉�q��_�����\8��d�S�f���ֻ/�_}q,t�M��(��[D�]��o����J��Eb�W\7�e��a�'	+��ڦP�֕��B��j(�a�z8����΢@�2Y��DDZ�'qa���`Ub�p_�7�{����|���Z�BDt$0��� E�����)�;�ܻ�r
���V�=@�\}ߩմ�N
�:��T �g�?y�Y�Q�=>L�#H��j*�:����y?�G}d�ق�L���"�=����T�m���	�^d��|~��}ۨ��>Rr4!ן6;:��b�\3h�'�[3����ʛ�m3�/�'$����dKǰ����A�I��?�׻�8��
H��������E�w���'�uO���8 �k�e*}a�":���7!�r�9��q?O�q�Y�sV/�y&��4o�n�%.YjL��(+�b��jj��
�g������Bl�JS��`�v΋�eߴ�0SK_�Db�!+�iL�,�Ng��V��vX/|ZE�ZD T�a��P���m��6$|qʑ���6�g�H����
�/]�"�����զb:JW�Ǎ�\n3�v97�'��}t��P8�}�'��%����	����9'��}�傐f��W+�Dm�^)s���I/�Sh�MX�����n��� �U��0и�}-Ub����,k�؟/r�=��e���졉%�7hBi}%�X��Q�AB��K|� �'㉷�u>ɤ�B�U��S#$�:���EZF��0�J�Є>��B����T�~�#1 %����o�w#� ~�R=�;�ФP��>
��7~�E�8���yE��,��*hRb`�@�g�6l?]���NI�T���G��0ՙj3F���w�LJ;��w��q1H|��S���[�V������1z����o���W�&bDJ濜�W4��;A��	�|;�I���Y^S���ilk?�Z��JZw�pdAVߺ�|55S�c���6���e�"�G]�:F��xC���o)�u��Cͱ�����]/��k$�̉?r��z5��8��|5������#���H*��A�;m/���$��h���[<4Dvgz}��4�M��*|v�71Q��Z�l�TC��o�=���<R�������a���P 
�O��_���h,bؿy�7�Vd1d�蚮}#�Y��Z�Y�������
䫙���h>��9��@�I(�#�B�>�G��>f��0M�j8c�R���XMt�2O���µ��<��u{�(���y$!=	|E7w��(lˠ&�ڢ�|P��7L<��oW]L�-^rn���[�+�\�=x@��X~91�fF���.��䁍�n�c֬;覟y��ظ1F^Z3�����s��
NK���3���7xp�o�N�lV�]E�<���I��v\Eha}�&��@�������`����Ahy�[2�j�i��$)�kŕ��_8� ��fl�I+��4ޛ�i/�}C�Ք�p*mY�)Y��A+�d���?��?��)j�[Z���"򞬫��>�9ĩ6�,T.R���4{T�R��=�p֨m���c~�jp��؅obړD�Q��Q�ڊ���#��"��b�]���ɋ��2;���›�!��Z7#�w���.�頃^c?iYH��TO!Y��	����K��/җ%���n�am�֙����݉/�pn��H���sr�-G�xR��w��4���bRz="��e��Ĵ��a&;>�.3��񍘋ե�q�yÏ�sY�}N�����yMO�B��}�	�]BXj"��hR�;�%U%��J�w�~H۴�O;�u�
�O�-8S��Gm(�J*�y3�	6��*t(%���2J�C9>i7�k�yj~�c�,�e����:���8Ur�<��<�NkQu0�V
"c��-�0q\���5Y�F�#����/����Wsޓ#С��ܘ���i�~��X�zRp���GĨ�Sa�Fz��%�Oљy�w�_���c&g�h��S?�2>��dÎ��V��I )�*�>P��(��9�ɠڝ�%8of�*���K�<�[�h`gt��2^���:�l/��ZY��>&^��I!�A���dg��	�q��k��e~��=	�}��{�g�l5̵Pc�<�\)':.�s��m
����Fe
�/�%#=���a�q�/����V��7��/I���HM��3��,f~ff$!��KV��=۬s��ې�O%!�.´����?1�>��*7��-I�k�D(�e��*
g�#�T���}I�G#�u�,�V�vI�	�
j�q�e��{�-�U���˪�41w�'#�&�S6�{����OݪS��/�_2R��J':�����M,��u�z�s���6Y�g����r�߬ꩄlɛMg�4g�H��T4�x�ҊEE�z�u�L&\2���
�ͬc�I9��]f��nkw�M�h��g⎦.ɵ���?�`|�c���tF�mp2��;�_q����)`�ч�®a�C���c�E��8ɿQ�Ag�����_A�͘�J���)�d��4 ���x���o`"�h��[Z�^��n��^%�0�� ����6�WUgE�[Al)��~i��N�	�&�~�E��S�XM�!��!9�Wd&�}�
_ƹ�D���T� <�b=U�0�䲨�#���f8��]'�i�Y6��8T^���Ej�q��QV�Զ�h�~�a�4{�����}d�^��g��º�3��)уu����oY(�G��T�T���fS��o�[�JH�����M\� $l=��e�oַf��tWh�㺨�<ĆƜ�Z�qY�a\3<fOTʼnʼ�����/�p��(˞5�čq�A�Ϻ>d⦅u頳\r8@8�{l����bf�' xw�ʀ� GY��;�5hA��#}�ʔ��"C|6����#<��/�	�ֱ����BD��{�Б;�F�������`	򈲐t�n�	�7h��6��B�@.��ڙ�As�u+�%��ݲP]��&An�0�8�,=��3x`:�e��5Fp�I*q�����L�- 	s��đ�3��Ɏ��_�p�:��C��q����A=�|����ۚ&�}YGGJ*����� ��N�)х��	�.lz���;e�+De��G�������.��
��.EY`lA����fҚ'�d�2�wƢ�5�V��VH����]��4,�\�+'���sُ��'ژ~��-�M��	���mQ�T)[�0���{7݄��e	x�&<� `ma�<�d���@^��w���v:XWU��Ϣ�A��a��x$8N�tI���DkX��b��!w��oC>��z��-6O��a�c�Р�A����W�_�a�:Q�>*��H��59�&�.��V��YV��@�l���Ƚ�]q��JG �_6`���V���g�X���x�Q�g�v���@dGrq�gf���+�0���;G$��C��1D�"�.��sz���k���*�_j�g��צ'v�l�K���Nu٧AC��\���b��z��)	�?�E�C& :Y�Y6�.}2�6ÿ�PV�8�ݯ��:]@8*�(��ɥSqq�ZL��K	�N棤�l�Qy�� ��NO�̃qO�z�%NU�G�&�0w�(w�{����Hp��Sy
?��zoí�05R�^�������{����\�� ;!5�w��t���C�Y?����Y�(i�ﳛ��pIv�B�Г��恗��A���F0���d:|N�j�,)���4��4׎8�& 8�a�rY�.�5#����M�Y�����$��Y�zȷj٭w�y��wO�u�P�"�uU�x�<���H��;3qpAG-C�Y�n��Ez��'�B�5�/��sO�')
���@w�2���q�80,��U�^)�P}���$@5h3����%��hVr2B��h�����;�B�px����;����/3��-m�tA'Ï�iȷz<��l����~\αg̣�O�w�	� 3�=�Di��2"|�٧�a��W�0�I;x�c��l����r��5�_9B0�г�
�o��NQ� 
 ��9��C�f��ݹ��c��y9DT���X~��BwZ�1���b����<�א�i/X�{�۷c��ʠ���\+P&�'1�Z�k6�+_B)���oIU���1S?�1�Ѫ-�s"z�fR�).��6�6�g>͠��iO���M����l�ށ�AW����h��r���7>�-0����P|B���
��+�S��j&:%��m��+R��r�IfJ�c)!-gM6Y��0���d�O����(%)t��҈J��'}��NC1�%?�K_��V�֮~.� �+�Dc�m̿��?k4���d�n�4�iY����M��}��5�d����^�*A=�}�f��dL.G2�?P8�����TZ��3�7
3���
���1�^q1JU�ܗ���4B��)^�C[<?��ik���?������|�mr6Q�!S�f�
����B�����Ե��lQx�ڥ\k�ds���*���zǽ�5P.�U��(2/�� �4L�]#��bF-9~�W(c����i�C�?�*�L��_�~*�xj��'��U`)՛*sŌ�Rc��"�r��c��w���Q����NϜo�UZ.eO��:���l���*WK4.���Q�6q�@`
[�9.>�>�s�/��i��H��;�	C�+�Y�V>���kL88"�j��b��sI�[r����.�͘d��3�9�Оed
�&����ś����.��:f���.���1:r��'�1��v2t���9%��e����J�Gn�H����Ch�b�Q��9�{�矾�)�pykt���ǂ���sC�ڰ|�Ӏ��I?�L[�D�eԄ.-�S:l����i�s^`��Z�<L�`�;>#E=
����L]Iiѭ&"I�*{A3����2�G����N^2��,��}���YK0�x��e�Gp8��[�q�������2U���p"�}k�W�mM�O/�����bW^��(���A�F�����J�Y��Wl妪_u>N�r��M�B�c�Ra���VbK-�y��fDE�Nv ��lr;�X�[�eY��t/
���E@o�������SZ�EB���&�Xa	>�@`1�����|�3�k�q�z�
�<&�d�'<Q�-�����ݷg?���C�m|��m�K����99�N��0�2oT�k:�r�����ټGi7	q ����
�y���C�o�F���_�ގW�w�
~l�?�d��Y��g���B����x�u�̄=z��?)�Ub��͝�8��Y����Ys����e���(�-�K������mJ}�!��/FL-O�l{�^Ď�H�&1ԟC�Cc�}�r��x듓���D+R�M�u��4$Y�ԫ�io�C$n��*�ɂ}�m}Tf��<�2�\G���m=�[�E��e/��A�
"�b�_fj֣��R��B���c��47u��>U`5�reޕ���o��@ʤ��E
�.�'�ґ-?��jE�V1D�g/����ӠN͂�B�Ta�r+,h7o�I����sbH�(��kD�vo�	BM��:6��m�'��G�n-d��>���Ҵ��|��FI�<�CF����K��8�o���_`�tGt}���EJK��KrU�kk��K��.���qoU��i�u)�8	2?�Y��9�W8t����b����[�h�8qe[�!�*&$�t=|���	Q�-�%zn
�_��x�[�1�&'�a2�q�df�ɗ�ѫ�{��c˒��ƚ�L��O���킈��d���x���n��
z��n $�N=�Z?jF����h�(!1��}��������pE`<I����%t
�[��$~
%^�&w�֙��P��a��X���n;�,7�J��=u/ŒX)��Ni>C�e�֒���
1,�xBU�դ7aH��⛽�s_�R�n2L3܊��[��.FX�!���1;\�C��0�[��|~��F���G�<	vgg�8/"|cTC�Fu���#
���T�T��Z�}����,��k���[XEC���@��a� }z�S���۱�����u'K5*B�o���!�F\�p_K��(�F	4���h�6آ�Ϧ6�M�Q�9�#J�h3����A�����}�[r�?�\Ϛ8e�<���N2�JI���į�����I��k��fq�xcF�Im?�y����E@����X~]H"��H��y�[1�瑤燊��W�Y��#�[06T���gH~�L,٨�6F9��Sd;WC>�Vƥ�	�<�$ O'��-}2
ʃ*�]�2#�r�=�*����ܬ`p+ٳ_��5�ہ���D\�����Ȫ�m_Ǧ{I�G3�,��1�I���URk;G���D�������$�!�{�m��.`�obv*U�E�4>NO��f3okn6;q��?���g�+<�A���Hv�c��OG���L�8�[R����O�%LD��5˓VrYn��=�B�K�%�	�vB�S��ȁ�힜��5]aA4��_��450�V�V���2ޚ��7��״��
e��*���WY�3n�%s���@O���qj��_	�I����o%��M��;0_�A��	�m�A��)��Fyᬅx���
��F�X�f��@��<�B�&Ȼ��(<HO���C%9����g&��yЂ��1a>o�����Tz������x��u����w2�!e�$@i�˵$����Yv�r��3!��
��u�m�r&'�`@-Pj"�nCH��{ʛ
�賩T��Ͻ��b�"k�3�z��ڒ�Ī����ZP��4.�_c����Q�N��Syy�8b�l�K:ܜ4��Ï���p���i�sd?��ibqa����S�,B�
�܋�VnN@�o���o�m�g�f��M�"o�ZP��V�^G<��}�������Ҏ�ީ~y���]�E�[Ɖ&���E��*�0Q��R���0�t+h9�R�|h"��g3
T����@�J�aܜ�r}]�k��A��p;�
�5.p����p���m ������@~2wKA�S!��*+O=$��=���r)�=�ư�aF�C���Lf
.�+ [���c��B
n�us�G�������́��ɺ+{\��>�U���Q�����(-��T1#!L�{��e8�������1j0]M)4l~l�?�O���P���R�Y���?L���[%
0��L�p3]�v�e�K�ۄ�~lū�&Cb��i�S�I:�6���` �:H�����סM�I���x���8��w�qR����;��c�����A5n���V\�?�1�j��A~�7d!،����[�⺁v���
4�E�D�u�Ɏh[�\ف,];Rj`�^I�紮8@�a�&r��@���?RpÉj(���vR�t�_l�� �ۂs��Ѵ2�����h��(���;
��,���jDn��1[���ϹD7"rq�v��P��|Ǭ=s�lST�Z�[`n_�[g�V�U��!@�ſ�j�G�Z��x��3;�,{z���
��~pNv`!EY��/N��]�"=x��-�F		�y����Y���Y�ȁ��܆��,��^��+緂�|w���,���Tq
r����$�ʐ$�2`͎���C�u�ti� ˻�3�=]}>#�7�WG,�߰)��g�!�༺?�EQr�o,I.�:��f�M�+/
Q����v_�v�ǣֿ)����_!���>ٕ_]��MS	���0&´m�1������)��.��B�
�#��s1~U�f��N�THB�_X�C"S����bng�,���g�6�����$M��Q�
Y4Ф�m��9&h�<�2�P��u����P��)A�>b��5*��!����e�r���w�x*MH}�-����A�n%�*�rᯙw�u8��J�3Xl�2]��7���Q�Vd̷���Nt?�&�������}V���4u�)"�V���r��!NI�=�uJq�b�;�Y�y�B��
�_)�a�����{�B�f����f��2�M˛�
���h̬EF�0���8܇�ɝ�D��I��\(sX���[`�7��c��Yv��bػߟ}�

���Ƽ�QBd�)}"�|��
��Uwŷ��r��n����a���c�9X��;9�$fA4�}�P�^j<%�a�.]�质D��p���<�rBC���H�e�I���ش�%�wG�t�+\f���es-�C4�	�x?�x���
1>ƣ����� ���
���	�=�';'H���!N=B�;�*]�ﵲH5D�?��*�)�}��-ӱ�J�5f;cH�uYL;v�?Cz�.t��-m7�,Xl�
��B��q�I�L�7�	#g�{K����_scK]��(����If�/�����e��aX>ᓜ�'��s�r�x�]��_t����3R�;��\��Z�\��JXe����g����<������d��{�F��W"�Bߒp�%'�V�
@f��\ߴ^HZ��6��9k��@�n.-ɔ��6�A�Q �W�O~�ڳƝ(P��9��?�,Ḓ��G�{�sa�f������?�i6�^�S�|�f�B�����aj2�L%L"�=��/�q޽�PՂX��~�8�0�����|A��4��i�^a�L6e#=u6�rB��u�Bp��S/+���qNE��h v
JR6����5E�7?i�pSU��`7Z����+р��}VV(���Q��(Z ]�\��8W���u�k	�b�d�;Ta8,�{5BZ
����}���d3�	h�~XI�L�a�e�|��
O�Ȁ=!'Eu�\��,�������:�1��{�D!,c�ו�G��f�~���2���F&�sQ���E������=���

E�;��
o:c�k;�у���F�3�ɹ����J��!�j�K:�?��V5��z�P��r�hgߡ��[�����#���L���mrd�!b��{(��[��#��	c�����.�P��!�l��u��ycg�fٻl��ɵ�_�D"��
�E�䰼�D|
�	�ݏk:$��A�f�����&g2@e�d�͢)�F7�5u�64�@����&�{v�;n嫂�����o���d�Kp�/���r;V&Q�����A%�.32�勛�!��:����݄'�i6����(O��C�L�k�Ǻ`�S��8G|f�|J�@ݽ+_MO�@Č��ZT�RHR�r8s�� 8��Î�80�;SBC.3R�ň:x�'ӯ�׸�I�-�qˏ.㽑w�	����}�q���'cv>�o b�L?��"�K��Cg<6��J���D�&���FLk�f�~���?�Ӄ�0�{Q>-�A0Q�Ic���gX�����R]����/�P{�؉"zQn&60�[�B�OH1E�F��#T��ֹ���#��ӟ5~/!],]gM���\��Á��̼�.Dq�5��Sđ���L1�'�i�g���ҕ���c~ao]Cw�� �{�L���ӯ}�6g��{�C���"es��H���!��3���@�u����J��}p�����tm�(�؋ܒ���)Ȉp��R+�W�e"ېtJ�{���N��-��bc+��$�
5:���N�YQ��|g�\��?uL�<>�ټ�o��.�^F�ˀ4�I�H��M�1��;n�7#�7�ߥ�O�w%0��쓈��;����?�W��pdIx}`��
�i1�9B-�Z-�y+�N��EZ�3~N�Ơe�28$���>�
,�N�e
wk7@����<�ƥ�P���|�[oOgE�Lz�s9�c92l�r	Ę�Ž�r���~��DP1�2�6�xDŽ.�7�}9��WfR���t=�8
j�"�DK�2"�j�j✞B&�~/x�Z�];d%���:^�G�Z
A��L��N"��!�|�mW"��ס�@,VR���Nh̫N^�r>5���
F\����h�3���z�S����]Հ��E��rJ�O�bN��3li��$,;��J
�[S�����&���ʏMk��z!Fm�8�K��t�M;v��]nh��+mC���̻8PD>��|C6�*ѫ��s=�.`��V����d���C1-�S��n�s�'�-�]R�5j�s�"<%�]e����B�΢&��-��W��<4kg�
;�:��qS[G�Ju?5,ʑgT��A���E�Տ��ո��²_�5�Xo�_��TΖ=uj���-5��{�G�W�b�o-�k���"S(�a=�M
i	��c��Y;,1����g�R?��ܞI]�]C���1����>X�J&]���T�;�4�߲���t��CF�c$֑�ë:�E��G�߽�����xН��U%�K>
�|�][�E��5�59���5`�{8_j��GXU�o�9)|1��A��6g�#�Me���)�a���2i�C6+��Gč��I�:�@8�A[J�NS���<��ُT���r��N��O�}(j�R�����L��
k������CY`���!f�ˮ���Nc=B&S�B2 )�ȗj����f������vF���q��
�'n�%U�|#H��{	-�#�*�ۗ�Qܗ짬)>��E[D��1)�-EAQ�t�88�r��L��x���Z��"T;�W�dc|R9�K��˞?c�հ�Q��E]�y�G�g�"�4XP��m��k-Q�W�,����M�z�XW�p0�uQ?=�,]��v#jB��#�T���ôe9��l�_b�dn(�/I9B��h��v���`�F3�W)��H��1�߈CM��xY��R�ɐ��ҡ��9o��(e�w��e(7#m��Ĕ��>�����l�a~��p�a<�Cr��8�Hi�srb�f��&���
m��E�@{�5�%�-g�nJ��>�v���c�I�V�D��<k�%�3A�|�{8+o1<W;
��8�.0��]kS=��V�|K�p�q��`��Ԋ7%���mN*��>��{��</�,I�/=C�ףeR��s	�?�{�"���7���[C������
x�1�P3��w����0��?��|�#_1�7�s�<��A��d�GYH9`râ�-�_`��wʧ~΍��熛Hg%{�5fa��~{ �z�/�
�f!M���]���V,?�+j� '���lVhT����!]2�B�FR�GB��\�u��!��懔�M����o|�!N�=�0��
��Pd^��5�K�^�"O�m���%2���.b�gQ|��h�4
낱V�$כth��-_z�YT���G�8��s�<����O�O:_
�Q�a듸T�ɤ�0�N(e"$�c8͌�@�э͇��Phn��A��q��ča�ne���UҌ^��<-��%Z��V���Z�;�
)���~S;)�1���*�q2�1YpP�������/�;'J�,�?[8��e��!�L���u#2�!�_���8ފI�k�|$�m-+ R�P�C�*in�R����h���H"�o��^�R80�5�]�M�>���-���kوT��>�5-��ۂf�c�1���p��4[��i����h1yܧ�k�I��t�]�`�(V*��%0.���J�Yc����-.���g?qw_宓d%��n�e������ 6׉��}�qQLQ!��<m��^��eX�[��߷���]Zٱ仉��:�,�D���ԉ�w��j�'F��@҉|�0��KS���s��T ��I۝�+�ݚ�	�oڭlfW��2��+��Ќ�(F�uY��R��k���]�Z~	��C�&�<�qi,�*(�b�ڹF|(��r�h)��z�	��-�����2�ޜ�Ϙ�|2����L�,]�b�6�^J^I�m��̾V�9�~.�O�m.��J�ЀQ�_����=�M�<��ri�%�8ՂK���7h�/�l�5�E�#��8�$�����2Pz��"��47l��P�ހՃ왌��`�,��۞� �>A�kJx8�ua�
�w�����q/x�x����7-������A�&��5Y��P��b�?����~q󉮻@��.3�J1�I\�n�#������/`�U���莃��J@�OVP�	�
"Xu7����^14#�&LO^�h$%t�*��W��Gygr����d��6���`Ι��?낁�L��;P���4O�����:��a���Ľ��1)W�bɌx��{u7�
�Y���Jy
a�~!)$��6�`�o#Y�'*孯*�p)� o)�|,b�"����0�m�ebz���n��K 1��4���:�ԝ#Ԛ��b������UW6�EƪWY#g�,�f�f
��xkVp<��r2�|����%���v�5��q�+z���^��;��׻�gNv�l�Zr�:ײ��ho	�/?m?7��;����Z�I�a�$a�~�r��Si�\�)k	v�ф�c�c2Ko�<�|R�s�h��	2'cN�,7��HW�/הx�"n��6$��R=��lv��i��B�W��nv!���ar�"���
W�R>	��͖���
��k��Ox[|�S�v��1r#�z��--Ż<w�$Û��@59���
Ȫ��EC͇����B#SbMH��*	�%�K��^�3ʃ0�#�4t��G��V��F�,4���Zܚ']���Qh�T�gɓ��W,>.�wP�.S3�����D�B��
V���I���{��D��t�u��c�rM.��C�q@����b�a\��>K�c�/2"��/�C������,)
=�o���A�`ƭ��D,@�S���x�e*�O���%��7⽹�¹~`gh�C�=줐�AQs<�r�'ؐ�Z�ֈ��g�JJ�x�l�r���$%o�kی@�~�52�D���
��+�(h�Dx�<�������i1΂�J�"�4W;غ�ۦ�V�V�T5�?k���W3���%\���d�XF���K���a=��(�PO\,�ͼ��tE��n¢�4��X�lG8t�o�8�9C �Kcp�H��9�n���B���{��#qA8frd�m[���A��#��1A�1�a�йkp�B##����4<�8|�ei�B�^���Hf��]�›��#7�,�\�$D
(_
b݃�4d<O���63�(ǡ�*a��$�6��/�u@7�d��z�8Z�:��,�A���G����*d_?�WH�!�#��Ш���ØJ`iT�{���b�'}�|�E8n��MoF�&EJ/Z{��+waM��
�J�%anD��[��h���x��{�l(��y�gD{�[��u�L�2�[V�6�5S���)�"[Rނ3�D�(z��ȡ�q�����xX�4�s�d��Zo�)�@��>�e�o�C���/��1^��?�$x�N����`�����E�Dг�s#��]4�6�(R�/D��fc��c�S&QE����V��U���xT�f������S�ʛ,��?�����F��R+�n�&�+S����2|�-x���p1o�Lj��X_	1)���A�][8�ښ�E�+�@��8Hs���D]�5�Jc�Dy��b�6�`�K\b42��ak�i���G~�uWn�{
�{�l劾�t��Vĝ��,ʹ?����+�T���;�ڻ����~�#��^O
R����]U�(+��"���[�)yJzqX�
����S����2��[D��;�O)U�)�g��~���P���X˫m]�`��.ƾ��(�Ǯ����� �q��ٟA�b��,B�nQ���T�����Y����g���e
pB�:��B#��Kڼ�p`�tBٿO������9���@89b��#���@��2()�����,��5t�k��wR��L�-Vr2������O)�a�[Io׋*T����4�]��OS��0<ذ��\|�E$��Ҥ�ٕs<��6� ?r9���Š�-�ʬ��%�Dft�s��b�}����,N#�ǂ�}"���CF9Rk���X�V�(,(*��?�����4"g}�h�(��ό��֘ʮ�޹�8�A�B���ˋSv�2�|?hr�RP\�/
#�A֦�
��O+Sb3�El���zEN�]
��\oa����`]��
~�L
vB��+
U$`#i���LȆ5�
B���
���}ע=֩�
:ɂ�/��Z7#��<?�4Ju�� ;�!t�m��㑛�g#Y8�(%�K�2 �-���&2�jҩ����a!d���չYV��!�{a�{9c
|;}��ݏ�N��\�7+R,��iVr�h��z<�|~���ܽj�ZwC�%���M�]2J�jO�!�f��E�W$W�y��vT����I�j�	r��A[�Мy%�3���%kM�b��Q� �4_J��7T�E���`��t�w����V>@P-� 0��5���"��,�4�i��:rK~O���ԏOS%"X.�<`&���Q�p�U���j̖�؂�)�#'DZS���T�;��V��'6h
v�Oa|c����^���b�U���@\��'���5T��\�:���P<
\+��6d��ő-��Z����&�P���q�C�+��x�2�B�(+(r��W��V���Oד�����=E�a�^�-��/��HQ��6�.یt�1��]a�	��
/�v�QG6�O�@�˄�0���eZ�Pŏ���c�|�__ފ֑��O�c`���:�5-�WzA�׆5w��i'~�e�P��-7����=P���s-U��k9�o$jb)�����k�J.s�ky�,�L^:#.�|F�z���M�j�'`)��Ca��y��s�2##���GJH�?��a���,�d�k���W�i��Z���!�X"c�|��x�NI��p���gu���Ƿr�	i��T��kF�PɧMF]H
��v��J��l�7�cA��4�֠.�y�ρ5�:�~?(�<��IiJ��ff�GϣwP��6f��ڶشb
q�7
3���E$1��
`������%��7��X�'�u>M�8_[�����O���7�R&�M���f��K+��ͫ(0z��}+YX�w�jc��d*��U�Py�+��,
�:�ՙM���Ć�"K��6%�u5]��G��&	7P�Ǿ���=��]t�Tf8���ųhBi��4�q�
�&�LZ!���i�R�;��:[���:��E ��6�`�����f���X��g���pL	=Xe�A�&@qD�[*�@*��[��愧}t��픖Y�#D��=�՚_�z{��X���*��̩�A;���.�����]�-��B�
m���s�0 ls6���s���ᔭ����m�ΐ`i͵	�����K?����tG�|�|r�p�L��Nu׺�O�Ơ�`��i�����B���7�P�|�S�y6�5"P�1��0�M�#�����h�0;�Z?�A8��p���le����1�l�؋U
Ź�s����k[�R���uR+�,@������b�~$("�a_z0D`���~���:"�g�1;�锂�*��,!ș��P�������3�-���y����9w�I���B�C'�nM�p�7,=$�|�B������H���e��@�O<��`�^��:���T�"��Sj�g�{^)�N��!�y���q�m�*��yd���&3w�xT�U
��Bc��pnR+�3p�ͺ �J�H~�v$�쫻;�Sسa�!��2S쨩��.
s
��Aw%�t�np��漇��u�p����&��ڏ�nr�t)!?�o�2t�W��<r��/Cs�w7�{���:�7�}cƉ�a�-�&�}�`5�Κ��S���1��)�����E��3GL�H����i��&�<Dh��;`�BRr���n�>�-�+�=�7���

g��@��Z�O���%�I?��!3�{���)��g�,�9P['�B���iS
\Je���D-�♓(��izyHN�AD��3�m�o�?�<�P.;��Fv�ƫCՖ�b�.��D` ��s�,{���=sN���I����
~Y�d֖Spv\����Ɗ~Wn?��5��ðky����ST�z
I�P��C�dîY M�u�G�B��Y�oz2n��0Hٛ�w��hK�+�{u��w�ߗ�H�'&�?�$�p��u��Zv��_W'�	|I\N� �Dq��_C[��ϴ[�5	��,�^`��"y��(O�i��o�68�LǍ��W.�9�(�Ǡ���}j���N-��>}�,w;i:HvI	�~���}�z��?^��?�1x�q�Ph=l�JKs�z/���Ť��=j{�����d|Q&y�I��/�kZ��i�~�܅��5�~EK���W���ζ�k
!��6ѣ �V�Դr�0���s�*0��ZC�y0��d5�(��jѷ��zl��:�:�e�+�-����iH1�7ݚNȝ�?~S!���ޖ(�<{��mr4X3�z�A&�`~�a�n暼�1N����O,&Ra�Q�E��6N�HV�G�ݙsM�� �Zv����|���	�z�2ư�p�e�O�
N3�P�i�����'��
Sq�[=݉�Q�͘.;����O|vst� ��:��q8�k��
�Ho�Z"ֈ;�vZlф�^�R-�݇�/_�_p�N�F�rt���#�ID!�d�\��U�&#�c��B.]WM{4��v1k���W����R����"!]"�@/Lz<q)a�wWd�x��1��qtd𸷱�Ԁ�������*ɼ
�ƧҩN���ABF�QUf���BE�G��s���J�yOv�S��Y���yE�~pJx��ҁX�fυ��}xȍ�l݈#��3�7�уB�x���K���uU�
��ʢ�m�@�Jv�3d�(D�ߠ����4j���+��(aK=���F���Y�14�W�5�`19�P��ڼJu[�����,~��&jޔ�̎K���'��x}�H�^M��c��,N��Kd���8;V�Hd���>W�B��j���m�^m+~�����
.��, ����~�BBӤ�8�S��8�ߊ��#�����`o8b��7`�ܕ�ŵ�����E�~�!S����{�jWT28��#�D�f7�Gc3a9s�Y���5+s�\�m�r�r
��5�璊�o��oC��}���z��%�&7#Z�W�78sUv�,��e�I[0wQeE\�H���F_0+�FG9�ҡ�’�-�X�q�v�+���u�a�4[2�c0W�ц��$��a"߉��h�N��uUv;�����=�F��ߟdd���4��
�&�;
����8s��e��@,Ipܼ��C>�e������*:�p��e{څ#}����:
a;��q�
�vTG��+"D�W������5�����물b���\8�!�ک6k���8렳+G�n�ż���S[9�����m���#a߉��S��Oj�Z�N�f+#�.�����P@�
2*h<�5_M�G'8̙��-�>m�#����(<�x=�=0>�G_��#��7s�*����
��I�!�@E�+�Y�r�ղ=V()�ψ2�˒��\�I�����>Ņ!��'��xn|j^�)5��,�Rt�u�'�I��M���_�	���=���NTz��>���+�q���Z��*{F�����\;�K��1�P�@q���Ќ���<�3��U��>����i�q�6l�*�n�O���Aa�0�ǂ4=�Q�_~	�HU�X�4��x�YB�<Hpc9p�j�*@�+<���M�B��bc��ܿ�I�ϱI��w�Gg�'dK���5¦�4
{��V|\��9�id�!X
u�^��GاɆ�$t��`R'v��v��V��a(��C��A
=�P��&�<o�c6�G��8e��10Uǽ0�7�f�X&��R�i1�4�e�6�����@���u���g]�G[[��k�;-�h���`9M�󽖯�}qO�x��b��W���o��7�M��J�p�w�n�;mZz����.��%U��~�I���w��q���m����A��uʘ��u��v�P︅�9��$�Qcf���Ӭ�w%�\�Tk>�ʡ�1%-ecx��4��N�Jj;�?�͚������<�R1�ZӴN�8�ӣ$8]xG&���GC^N���������A�o��>������	
;:���r���jCQ|�6;�9�����)�X~҄7)P��#j�C������ʼn���h(�&�m��
FL��JU�r=bm�$g�2@�����"��Ȱ�l@��E�>���V���)@9�Jx�\w���b&��������g-�Tؘ`1�岪
5�㌊ȝ�1�����T��������/\���i�O2}W�s�l@�Dk[e�F'W՝���B��j-���tA{	��!�b�[R
�든;;�4o
���Y;���w.���jo��-*8�V����lN���X���w(�pwtu!o�Lp
�#C�E/�o�F��W�.���HS�5C���HA�|\	
��%Nd`Y?�S;5Z��`�,��΍�;�#A�:=�v�����R�p��x�x����3C���+�Tg+,S8�A���j]�y�C��$���s��Z�F��2��Q�g�Q�:?
����S|�Â,K����[0�Bx48�&i&�C����>�F2
(b~�6,�v��l����;���6QP(!`��}��yBm�p�;���`���ᕕ������X�Q��j��S@�Mߢ.~z*o��,�W�E�e䘌�6�1�Z��x��Y��#����q�U�r.@����^������9��	.db��D֬"M�
� �Y3����s���]�8_x�y�`�Ϟ��j�i����)����J��|"�	�� ��`�m����H�I�؁}�V*w���BWu|�*�c��%�������-�D��/D�=1pT|P
��%W%��yH\�E��p��]N��lٕ��׷΄��~��|�.�?��l�ʾ�l3 �_
N�܇�+�"y�A�t	���s�<�}��*���h�	%��O�]��t�b���ZB����ƣ�a?�W�(��t�)o�n�}h�3��ա�@;9V/b�
��� �ǡ_��" �c�j�B(o"ԣ?�d��)�Hw�1���?�wć��1��?�\磲_
�Ac,E��$��~�Ǿ��_��"��������c�=���\6���	N�F�ziU��^��`�LT�q�����j4���o�}�"S��7N�x�	�յ.�*	��F���U5A��h$
�-����n��؀e�~�-jSp*i�����7�Vx|3���"�W����H�&�\�	⌤釾K���b����\�tC��������$���C�^���o��\^�.7������������
�!�<�G˺�|�h)�dL�yu�x)�?޹�1�&��V�Fj�$�s�o
k\�M�ee���ɋQn����47��X3EיL0a4i�W]W�r	t22��0�Kl�<N��i�V�d���u��"���,���HLv(0S���=���-<�ULH�RX�ں���R��4Y��
���R`8�X
��L�B�=V��g�h�F7�d<xeK��~�v��|]6K�+��
[9�K�=W#�e��|�¡�I��eظ+o�P�όN�.$+�؅��ޣ��B����W��}G�Z$2J�/�P���f$���Y 3�{���F-�1Y��d�4�KX����\�9�AL�6}�Um������-ʜ��(�%��:ч%�:)-&�^����Àx	7��Bw}�UB���>�U���V�p�7�b`�a.�p��y����>���`%c3�R�0N�tՑ����G�P/Nȫ�-EQu$(����3̴�5#
�[ӑ�zo���q�O��@�����k��m�f�W�R�Be!�"NR�-׀��Ysߙ�(ɉ�7R���L�O���=w|Yֻ�l,��њ4|�s�1o��[��]�,Ja��p���D�Q�،L�r(3��l�Z��:�W20jH�^�G���T:�*���r1�w������Ȋs���pz�ޮ�V�@���w?��_�
�t%.��Tt��js�H�O�n�T�,���_��e:#�����Ιs��b�F�>��݅7Sz��5�$���v�:~�f�(_�P���F��N����l�� �,l��(�|�Ϋl+O���P(1�21C����,�&v����$}ݛE�<Q&��ɭ�����)���@5��4e�/��T^�{�ĻԖ>�\����'����� ��\�`���$�J�[:�{�J�R$+v@x��_�V�t(C�uA'V�)���NZr�HJ��E:tS��PT�pbE�"Z9%^=��~1�
�P4<�̣ʢ$����y�xq��H�CJ/0�t�?i�.�Gf��W�<
�l�,�p�űfb�,�J->���tX9�U��ؖ�w�.3�{���?��9����(=����(*/�w[T��Q�x�_��N�6�IV���Wwe>�3ܛ�X�7e�(��|��:��Ui��}W`�lB���fnK$+�ߍ���m��E
4�8ڏ����v�-�ɗo�Vv5{mI����2K���O��l��A�?W�a�,���ǿ�S|�ȞļLmR����
%��ZE��ޫ�&����P�4qؾ��f��34�-
�r�x��Q��n��[d:Ta�z�=��Ưy�k�l_r�b�#�+1��y���e�<(π��i��āWn���jlߎ�,��\ŨmTjM󿷔y?�Ý�)?��Oa��Bӧ(�)��D�U�>��H�*��0M�c�%Q��3�CQ�9��}���`�l�i��ظ��>]�a���g���q"٩X!s�F�;�\̱J��J{#+H�R�kV`I/hg�)d�����ˑ�F,��|A���ɗ�jH��=T�6|�-{�F@��ݿq�(�JfsX��3Y�x�+8ӎ�	����LЙhg���Q��X��J��]Ԓ6,$2C��~M$���x�-9wpH6��_����?�I~�+��ڇ�4�7��Gx�^+�$����E��G���;�DO8H�
��!��XދX�*X�s_�5r����Zd�r�ܸ�������Ey��95�6lԏ��^�x-ճ�>�r	1WO�c�E��4��.>ԓ�5��T1�J��?H���CP<�}:�+'1c�������,��������D�	3
�t��f��79H}]�[�N�b��Bn_���
�ȫ�PzMi;���&���ɷ�����^
�[�+�2��5�M��S-�9�a���4oq��%z��UWm�n`m�i�
�w�7;6����.��f�`�{���R0f�""	�o��?��軖9���~չg��F���Mڎ�ۏO�C_�3����"J-��z�H��T�h�O�������q�9���|G�t2a�)�#��[��{M��U����x��o�#�}j�;0A��u-�6���T�6*�)��M�.`\f���wѹ����P��9��1↝���s�H{�!��^�3���F�����bA����1~Ү�w���l��6�z>�x�Rf3��Aga%�oZ܎䂝�i�m
�D�(8c�g���v�ܲ�"�>�.4�O��QD{y5�=�����[uJ:t/�Z!�́3�[�[p�ߏ"��F�t���.��o��m%�Ntr�E�,�z���ݸ�Y�e?f���к��s��^�d]���o�+t���ٗ���#�/�m���q�ޡ�N�~��w$�y�Ӱ�GQ�y�Au�K�@eØ��|9~��2ļk��K��ir	(%�,�ǭ�@5�}��ru˴m>�L�>���:�F?�¦��\\�,7�j-��e�""�+65�|�]m���J�EDzX��R�SN��qإȔ�RW٣�zWs�F�i(�`lK
;v1��Jo�ލׁW���N"%uk�������x�ӾbR�3������c#����-����xeO�zFUм�J��FnG�m�/Z�8ug�g�'v!�م��f�/i�4��� H�|6I~I�z�i�h�t���-����� �Qdk�D�ֳ8�T��sJ
�u�q����Wũ;33�QfW���\D$�ϝ��y��9|����ڷ�f|��(�����uhxEk-���f���� ]�4�,:zWtآ�i�*ߘ��Y@�{R��ㅣ6}-���ƣ|!
�4b�?�&3�Ϳۚ"P�0�|�-�c,~nZ灅� �b�c��~t`�:ƅ/-�q�'�;b��'�� �Ǎ�)�"{0�[����4��ݒ ��J_���D��ƻ�)���J��1�hԧHe�Pw�~�5+]
��o$�C��}|���rgk��o�x^�%$^��KȂ��&!R�t�KAj��\d;w@�[�r������R@�]d:����v`(q��`#� z���ˆ֊�i��r���a��^�׀�/o��k$pfX�#&���3��s/�3�kyx��Gcw
���M�iM"wE��ߴ�iM�KI€a�+$	����	XLvj*k�~�L���xн �h��6/Y����jsš?�,?l!���=H�ciX��;���=�N��!ύ3�ɜ6�S�~�&�%�2�6�J�&9Oi�x��?��V"���'��X�@�_kLca*����\�W���w�4G�l�Y��p������go#������"w��j�D��H`� �]�w�+Y�����o�c �K��:�;s&!~"�U�g9(1�ު��)��\��	\�����#�-��0p��#�
�32�������x*�XgI��"�:P8�M�a��5Y�5�����M�BW�_S��pi�,jb[2t�8;�m�{9X�ن��*��=���׽B�"A�@���X_�4�Y��_dA=P��G>�G"�Ma�W�}dqiE8��@�X��!D����R.j�TPaٹ�$�V�i�v[-���o�?�E���0�ѭ����$��`9bUp�?��|��Y�|A'A��?�6��P̤��?c3�-�ո:׆AQ��>%��B
7�%��3�����+����&6�
e)o'�����_�C�S�׼��^`�k�J
�`�q�1��N���	�F��L脠�{�#p��gƉ�ųKOoGrp4��Gg��څ�a����OЗ^l���I7I�@������X���~$cc�\M_`��(h�p� ���Ȧ��D�=�k1׸B�Sq����< S�+�2����>0t�g��K����	)&���Q�N�C�u9����u��w�l)K����,�&�O�|A�F
1��f�B4���h�,��>
��?숥f��E�x	�tMٮ&[��|�]�0*r?�y͘�I�,��m���Byne��&�qfnq�w��-�0f�oe�|6g����9�T�3��z�ſ�>�,xԐ�Q�Ff\�t�Z���XC/�bks��:'�+�(H�$R�A����Q2�9���1��J�>��2c6�M�ձ�ځ�&\\���G���.��L�@Fr�.ɷ6�C9W��Éz�j}�;}/��o�0Bؕ�F�8�KXˁ�4y\���3I4N#�D���o���B��j�@�$�V,��C<��p�P����C�����[��<?��]�gD6�eLܝ�<��U���Ԡ�\8
�d��S���E�Ӫ��Z����u������b�ׯ�݄�ݠX�B���$	|�+�(�	���1��)+]C��#h8�!p��
eXN����&k �X������ӐDŽu\oe�|�^K�Ӽ�In�k?�%��B�d���j��t����<�xlw�u��^��a�t�/y���a�ȩ�١1�������_G����cU�.g�H��!5��ӯ��6qux�o}|H�<P�ʴ�(_�����l��$��х��P��o��l׿ܒ��*��)F�
_�� oґ~��s䙚�\�jv�%��=]K�ۋW�,M�����.H��uC"j~� �LhַI�&x�/�o=���n�^��l˕�w����!c���"�*���ܵo��S~+���z�A��C��5�y�l�x��y��R@`��s{b5-ӎ1B��؏�u�-�^f$�h�kqO�d�oMsa��Ҙ�D�r�W�$ݡ�%�_j�K]��&���|DV���'"G�+n]N���X\��&��Z��'�F��C��87Aӫ���}�l�
m�y�n��")f�|<��/��t�8��b�G�WT���2�������q�ta_������HIU�c��M3���h_U�w� P5cR�zY�
�Q�7b{������̩DR��^6�"��&�{T��
D�P^���V����dN�x�5氰��i�vxWA��-�o�o N�Jp�(ڛs�2���0����8�e
n��[�r+��`@$��QOН�ą�` �Bh�I�^rZ��{����
�
�3�֊�㊠�+���6B�B�yh�"�䋵���5��(ڗ�'H5�W��!RɝRA��0��O�B�r(	H��P��v�Ok���vJ�A��`h��n���^��<!�l��+�=�^��LU .d����;��םL�C�jn�$VP�E�BT0�0��� ۙ#������BTs�/X��3����
��T�AW�p�q�k��OxCr�5O>����'U�|:s��I�ffl~�w;������G����|�=1q60�k�篣��]�1Q�)"��� e�׳�W�]�eP�7�yv�"c�Lآ�����C߹��7��e�N�>�m�Z���YR��)D"	�P�s�g��]+��)�! �-���m5���݃��S�8� G�AT�HN�*�$��F���c�u+;��W�U즸iq�=���Rpn��ky�׾��mr���z�w9���P�qzrq���?0Zh?�Q����ڐ�[����}q�J��08Ɵ�~e�s���V]����8#M�g��6[�-rơ܍1uu������[����R�!�?�f�k�V��d���k!�1]��?�CB�aƱf��vN~4>\�5�����9l�ە�z]y�h�lB�sY��R�;��0(o>����ݳ�C�~\U�8O��[\rM[=Ìz��]m�����^���Q�a�j��쫌K~r2��O��W'S&_���0n�%q-*ے��g;gƼ\��~�D�)b��~~*�Æ[�16q�J�_���ZHU"��/E	ee���L��	0�hXuu�Mh�ƌs]�s��*k����0?iom�;>-��1r���JZ��Un�&�-�����0���"6W�-��;��+�\�z�U��o�na;�@�0|I9A� S�(8\���:(z4�d�{���VGf�3��<I\�P���y���mУW��ia��[Y�'���&G��
�����Qi����si۩u�شlTaӢM����n�m]N����͙�R:$����1`�#5��7�}��1 >��������ً@��2�{;F–��SԨ+�*�S��Y:����,&e��E�1�˳6�M��W8���$1y�p��Ͷ��U��
�����˴���N-���\/�ѱ�UВ�zZ��)�Ҕ���neL��1.��K��hq<rY�)�a�:�[̲�hS����G9O�I�>�=@hV���m��^�c�����2��9�(�$["���+h�E���W�V`�w���cr8x�M(�O���NC��J7��z|��ޤ�հ�La���1y��Lp)�������b����D�u���V}l�6����b��n��2v!�$+p{��X���.�u�-�n{R?��F!�FO7Y$��r;_�`�}�qҮ;��W�֊I��x9�0SV�!$�����]	�h��Ow?��L/�L�´������-L���&������b?��o����YC��M9�I�-�V�^�9��H���`�R�A��$���6$�xŊN^qC5�S����uLZ��9R��Jljfx���lv�N/]� �x}�^g%�"u�%�/Э7��V�y�ö��?c�"�6�R�8[���^js�1�ܺ����[(�1�IX�m�['�[��]�c�	�ae�=P1�!�A��W�X�C���t��B��n��s`���F�[�
���I�ɤ���a�P���Z!�]I-�i�
J���L�P�Z�AYj��
Z���nj��A	O�kl���+A��c�}$��l��!���ɝ[8T�UDM;�`��"��,iGW�_��4MA��X�#�'�]^&0�y{�/F&�'0tu����j�^���
F�ԡ:���w��J0�)T��O�zg� #���{�;U�L��g29&j,�;�WP(�~dټ"
F��ŗ�?T;���i	3�� 
`��lh�1�ź)Lm�L��lN�i���u!��=D�ȼ0��H<L��ƺ!}C�W�b)���~NJ.��6�/#aPj8�k��U˔}��`�c����85R-���00	/o�2v�r8�-Ŗn�p|ƫ��t�	��s��wc!���܃�Y��,f�0�<~I)�����@�9���ޏ�K�#��2H�:�t8�E����}H��q�2@1���r�1G��~N��s�-Gz������+�S�b�Ye���=9�v�M]3t�9�.�jֳք���zh���b�&.��
�GR��#��A�g9�0��1�ux�:W\'��?�\B��|#���veF���G9bI�j�1��\VO�76!|"Gmj�����O	ܳ��}��)��ϑ7�;}
�eZ��
��R�C�a��Dʗ�F�..�MƓygҪ�q(o��@��Uͼ�&C�
!1�s��|��k5���6�
�\mtN�"WГ3��,�!�rsx�\��+3��x��p�"aN �9|/v�;��`ʞ�u�3�1J8�<z,����(�*Ѓ��&IEo�!8CK��k4����b���\a��%"��!�@n7�T+����	֙�G�l� ��گnU��Z����w�H�������+!nˊ��jUW����7�rw��k��PЧG��]��=Oǫ�]���L��kJ�ż{T&S�WT{._����u|�k^\P�T�o�G�л�A�K�_�J�:�'7R%`�"��٦*��ڣ���&MWC��G�)�f����'wO��
V#�a!�~����ю�=����H��Z7�YZӏg1X���p$1o��e^�E�F��w����M�|Kb�ۋ-��d���)�KtJ�Vn�6?@8�h��=�*��Uc?��U���������ʗt���"5.FE䂏����P�GdI6���n��r�L)#�w�S�'�������XAɪ�++��HTU��w�V���tv��o���W�\�\��h��:��J�sd�k���˖�e�8��ѷ��i3�n�J��D���'z
<*M[��~my^T�*�@����´��8LIZ����~�	���R>Td�Oܭ��|��� V��=\�%�X輣U#�=��b�5+j5������(B�c��2�����F��v��=�鐔%���{*oO��ƀ���ŞF���S�=�N��ُ��[��ä�%�A���L#q���H���ZN9#X�3]�OQ	2
�_�o^pjάC55��P�3^�1�|0�~c,�f_�W:�o�9 %Ώ�ۛ��X顲���s��+0c�LN�kN������DtI��v4(��b���ێ�8O������nZ��?�TE&T~u-�N��-�/��1�X�eUI�w������ii�IU��{����q��R-PRf�%D�3j�@_�ǭՏ��A�o��};�_�����˧���	X�
O4�J}�i�4�t�����T�q�f<ٻZzӆ���k@��f[�����L�<�r��d�>"�c��gD��jQ��D��@^�f����H�,��y��L���Nw�kW��\>��1��)��ՋB����q�g�p�{�?J�]�7�o�g�5U��{<��}��#��C�5��xN7B 1�J�2�DW?[`�e�׽x�b��$��u�+��l(��	���
e�?ПD�N,4H�*д��nW`E�<�T�:���J���,�ˬ�ש�_YgF3���jw*�|$��om̈���B��Wz��W���C1�N -����+잹z̜��"]Bb�Xy��|�
^�P��HP�*<��m$I����mF-��̨�`n��3��Ϡ�Rs6��鐘F7Ԅ")��Ӡ�17h1AI�,+v�Ja:�Dl�p�D��x=���3��b葳Qa�5�^����״�q�<K�z�A��ׇ�ytLV�h
Z�z*%�Ĉ����.��/ouZ#���;���Fܭ�.��[Bu6(I��z�/��K��xl����z&�Q
<�hy��FM$���i����,X���c�»��_��I����M�!P�T�;�ƀ=��A�rh-(���,��Vx�@|��P�;��|�E��.l���6S���p� n��n����e�%"�Ԉ��o�&-yh!�pBIX�R��1���.�T�	u���9i�(Q9|����~���cN���v����6s[r)ڨ����i-R�0ʋ�3M�q���qq#����f��ɍ��?X��D�z���O���̑?�񅙤�_�����Js��q{����7Q^�G޷*�s�V��]n$�Ht{�cT�ʼx��X�����-��f���4!�$D�$l�
�՟�9�鷃��NW-�~�C6�e\��X`�k
�/V�M�1����K6�m��p|ޞm�9\y�����E��l������8�G�s����ʫD�c���#|����}��:z�O#m���e��O��E�����}�����A�ʕ&x�s�Ʊͯx@%��w�!�C�oY�#_C���D��̴�ir��$>��*�������0���bq�%Ŝ=���Ę��ӿ��6�Q����w`%P��PbD^DgVg:��i�r@](�¯Ua�~	���O��/����.�$���']��}�+��vT�Rf�Q��뮭-�d��W`�H\�A"��G�8}��󱮃.D��
;ڠ���B�M�ɮ�,�@�[�eM�J$1����5F^�7����u�k��~��v�oC3�%�Jd��kP�'���V1�N^�\Jn!n٬�!t��_ۍF����#΀\r@����2^��k)��K=�%���؃�3����ۡ��}T���RD�Q|�o�7ş��I�X& ������iSo�Y7f���)lLg��UB �4���U�Z�q��ͦL�,�N0���M��nJr^#���z��v�xV8��q��֊��cBQ��D|[
��W ����@���6O����WT7�,��	�LY[،�p`e�w�s�RpL`K��:9I�m��C
R?p�|~���UxW�iJ�VY��.�ƒ�/�SAA
�鲍�iQ�'\�m��$N��w�Vƞ��Qc��<�)d|��(/\�����ܿ�/;�"n�V𾒿�L"�jZ$:��2�f��J~,������4]^�#dy�4OoyT�}�[R����~KK���Qn�\f���5�UhXPl��)w���8�3��4�?��{S���ͧ����M��S�[A!Sε�s
'r�=:<����X�d;�V�+�;�x}'+���׎#Q�Y^�@���A9���f�d�*]b�7�b��S|�]�ܱ�U����Y�g��)��Y�v�`�:���
�.��+"p��|'�Gl�(U�I�0�=-�H��"tO
;��+����#�IkMو%��N���ݰ�0 ��"�bJ���oy]������"�)�t�����D��Ň$:Џ��r|„z�(�n�^��x�n�틽E���l��î�2���׃c���q?Œ�l��\+��Ꮎ���
�AJ!x���O3eё��3�l ��hi�g��f�␦�Lr#�ejB�MLxxR�'���ѕè `ؼ�Q������d�"s�f�;,c�e���[m-/��l�0�4�ULJ�M�y$����-��٪}ʄzʚ�(T3���x#p�'�v��%%j�l]!�h��١�vN�,4��2���h�ɣꉏ�DN��y�/A(3�`8$
Q[�F���xI|������>��'q�Xs~͙)�,o�KC��{J.uX���C�M���	xL�k�޹���I�X�V�	�H160�E�	
�)��
���6;ʾK&�b6gF��V��O��{����40�x���(qv����r�K��a��z��{p��L����\d2G�Bم��>"����ދ�W�A$�6�� �.�X�=#���<�*˳��+p8%��	+���)�%�m"�p���R��gpZ"�f�7-?d�5]��wH��k���I"f
��ōJ�*h��E�5�\����W}"i���u�9
�R�]L�/3��g���r��Y��V�[��ͺnv>���nJF���lJ[�7��>*(`�5����=��[10=�Q�Z�l��RFҬD>'
6�C�7Y:x�Ch$�EnD����!�8����?�Q���&�C[�}���	��R��ǚ�1d�j��" J��'ҹ�4&��]h����;T(��c�>�#�q���i�J��[Oe("t�[mv^`S���/w����^op�-[D�5�y�M�M�AaRR��&�@s���
�(��
T�!�>���.w�X��)6c���L�UER���'�6%+u����>k��Q�`����aEQx�Ŏ��|�Q6��[y�b�#,B�Xᩔm��BDvm�B����E\�+��T3	�����!��=AD�
��
�N�A3,�;��]j.B�)6�W��ƥO�H�͘o1Ԇ�� �=�
ҦR��]��@O�,�ki���5�LD�i�\p-%��X�s�0��C�/���W{(~�bA�1�9:[*(Q�~)�������m8���-+��Zx�
o��
+��;~�� !4��E�A��MhO�Q*pjl7(�K�1
�2w&J@S�ܥ�;����{)�8J�{1���b��cS�p�ҁ�sUN�sGLt�5;L`���G�u��A�0��Pvm����q��U��3�Y*��4��g�r��
��jߡ��㡠�*���*0��M�*��ji�M�m�{�{`�T�S�n��>Y
*�J5�$T�#?�-t��^2u�5+a��t��qQ��!:�\f+q06� j���v
�� �
�э�k��J>���#}���I¨.��������e��ѭ0|>u�-kx�a�0�޶aۈmD�=]�⺕��6>z����r�a-� �%2�aV)K�@��̭��x��"����7�_���|׭OyM�CvfUm�Wg��W]�����v��;*h�uK�+���$H��;�y��j�S;�fv�b�(Db��P�aCϥU�bx�gV�A�F��n��@�y.��@��s*i=�Y��S�asi�[���]m���RP�D`��Gk�;�(u�qB9��4���X�Ge��$�X�'O��$q5���}%k@x�����&J�}-�eҍ��F�I2ijn�˗fs�k��
����:��b����A&��� A�oH����$�E���6�B�l5Ƈ����|�ܱk�V� ��@�,Rn�B(��`ik�ΓP��M��w$K��+���(���7�����B۝K���Qٿdҍ1_3�vs�t�`�t�o�\C<= l^�y4�,�
'_��9�- K��q�jK˫P���g�X�w�O�s�ƻ��J�:+
L�r��zד��L�
u�m��q�A6k��2D�kN��݋Z�1�S��)���[��T�c��:��i~�>Z0c��ڄ]A����]��uJA�Ǧ��.���B���_a�_�}mL�L+s�Z�8"�"�		#:['���W*g�����}5���-}�GAZ}�YRD_�I�\�޼+�}:���g{;���f�� *]�iG�E���Y�*l+��:�7�+g.̚�e����{�b=&X��G	D�Ë����
��`�m�w� ��W�E�T-���)�ɧ�Bi�9��Z�#G2�ݢ ����3���?�N�0����2T�˒�ث�i��[T4��/��yl���)����_�ў�6�%x��.�d��������~�zJnj���\�aõI�7~���(qn���@�+�����)�_ƞ�/��2��i���nD�Z
����8�
7[��
���{ ԪGRYm�~�6=e�RU�?�W}�|�Z�5i���h�|ϣ�{,�RH��PeB�+��G��qw��=�*�s�9?7����)i$�qwc$N^�	:+�c�N�Z�q��-3+�#K}�j�6��,��hߍ������aQ�W���.�
��È�}Ȥ&��
��qsqS.M���Go�,���f�d�aH%;+�6��bH��N���k"j����\��1�e�ZW��|�=��a$`7�3=��Ű��*���I�.Rv�(��"�l�V���)��5ۙ����9���'��S����?���x*�|���(6��*9t��ps����.Fj�`∨�7m�ȳ�N������~b'`�
 ym�����a��{
pYl�(8�Z>�z|1W�Sw[R��3LǹX^��l�O��q�™����tgU2��xE7
̛��i)����մ�-�΀�Q}#���?�W�q��=�& ��G^�o�<�o�8�"�c'(�
�w��ߦ�,92�g��/�,V��t�W��<��@�=�;�1���6�N��b:1諻he��t��3nu+G��{2�hY����w~��w7�����6��	����e>B���Ej�xc�QE���9�$�}�5sO4W�0���᳇�ata/��ylG(Nוk�X���^�̱��Mc/�"�����S�'8GD�t�9�@�O��5��1��׊�g�kD�1��4�]�&�2\�!��7)ԴAW���VN&)Q�^|�x�^+�|�����F����˺
U������
�������Y�8�9�y�W�d¸��]���20�p�X����z�zI*V�ɑCT�����
a)��Xկ��vuv�_l6	CU`�Un��*;N�0�e*�K�yxb�Q_�%g�H�l@Gd�P�]���2z]�2�켂��2pa3���='��v���:�<VUΈJ�ɵ@��7�P/@1��/z,�+7\�7�R�<�
xtVL�K�����:��K�e�hpC�wd����Rc%Q��5�˗O�%�O�t�������66�E��Y�����Cw]��O,È��wB��n���(���������Tj�O�>�׻4��}�vZ"s��F�ͦ��K�8P�8,G�+�Ob��v�6a��9ɉ���ф��B�
^4F�0a��aY%L߽T��&�3j��[�^������kr���w�Ph���
޳i�(�rwN�y�"��?I��@��7�>a˸�

Bԅ~Ja��k�
�g�D����"��E���H<�.�1H��Cr=�ZQ���۱D(I�X6Nv�⤺O�p%�V2��S�aT�S'��#yH����O1�~��f_Uv���8���~�U�MN��
A�&�Z`���TT��H��4�a������m�ô��ʹ�[]
�ل׃�@`�d���]�;�q'SoWG�o��!�A��`F�,��B�\���Jȳ��_�Z�*�d�ɶ`%y|����c�TF&`�㷰�LE��RG��_D��ۖ��Ӻ������:(�����7Yk�Dj2Vυ����e2�ge���/���*k�S��"�yFR��d�f�q��G�ĸ�kW;�!Hѭ$R!⭙�^O�C����^�@�y�l�e�f�~��%�)Z�Xum��J�}@*ǔEx��v�o.��2pf��wAm�%Q�Lʞ�
�R.��l5�?w���
�Y�@�^H��Nc��A<�R�ťŦ=_�k!�\��[��\[Q�=�Oa�2l���2U�J�GЪ��Q%w��D\��{���P������R�P�Z��=�U��,F|�Nx]��eI�(Y��Ċe%5����
S!�Iΰ����3�M.��<�S���=r����am��7b^�6ߐ@�C�/	X��il��~�e�ə�
&_=$">�FXH��*�w?�'�$�j���+8\�@��O
5dG�m���0���f�x$*X�A�o�Qu�V*�w 0a���		K�_M%���a�>-��̍���`�:=/:�2�vq�\ ��ƌ!�<�@Cw(����Y�F�L��{$)��9��H�e��@Y92�l�?楁>0�óM(��L
#c6qwM8���Z��Xʦa�ER%
y�AK&�:˳�D��M�>�*}�� }�k�ɬԑ}�1�#B0�`Y�H\MhUy��nLf��{*Ȣ^= ���}���l�Vw<��cT/�8F���2&S�e�fi�Є�b}���VL�~8� �h��e	����l@9�s�t�:��XG�o��0	��`�.�)rw	��8��	N�"��/��+~�M�$��	�y���;MxO[I��9����Q�U�N�mN���/��p��O�y(�(�)MV��ɲJ�̞Dh���ۘG�W=k�'�����u`Q�=���>f�^����j������9�X����6E$�Um�~��o��4Rra�C�c
D���S�OSNcp�u����&w%���a͘E�������4�|b�op	���GϠ�Ӌ�8�j
Y��x�:!4iڠ{���H����g�	Vw��)Y6ϊ�3�� ���0�)�nG�)4���u=QF�1e�baE�c�
Ԭ�_Ϛ`��,=&Ԏ���Jˈ��*�Ov֒P2uoi\�ʊ���u�m��IC����!���W؈"3#܁��|��!)Ԣhx�>-��m��nka_�
������x\�G9e��널���r���آ��t���FH��/�4�uVHD���G�V�Y�ƭ`�#���s��D���!��M����?�k�f)�Eq/��4�9��9Q��!-���D�N~�Vt
L���u�]D��������Ž1�+u��ԋ�é�u/s���/]�ėXz���_�)<��i�/h�,}b�.�D�W�B+f�Q����P\�jc��Jc��xɃc. O���T�T�=џ;v0-Z�)m�Ry���}�V�p�DZh=�y�|���,.spc��+��zP��:R�-����"�&����7G�,y����P���G
:��D�A��
�r�a��j��'�-��T�pd#��$�7��M��X�!x�Cj�Z����p�V�G�Ϻ��k8+"*�>�p��3S��/�m� D^͗���=�hAU�Ly�g�/ח���F���I_0�
�ʚ��_NJ(�64e7*�7
!��c��C�R����Տ��!��}M�G��'��6A�ݢ+�y�(�#4P���X��C�lm�Jsv�y�g@Z{��هq'�n�<�E����-����
:����_@��&_�6a��7�×QC��:�:�a����}\}E��������c�4�g�eF��_��ꕦ���i~�6?.�8�B��;���?L�B:D'3�rn�wl�QlІ�)���Ah��<ÖDa�'w#x��2D=������Pm�H�ݺʶ�E�n$^40��x��6�eY'���I<.ƍs��#�k��#��}��H���$r�p��f�L�'F��1�����Ȱ�4q�Z3&�{{`�n3�hYK�,��;*H�x�U�I?"���Q�A݌4�BK�h�έg�mP�9vֺ�Ǵ�3�K�w�~I�F��Fm.��L7g��A�z=-�f��'��q��1{d���	�k�)S9�qG�`��r].���1���pFV�_�M�^[�3�fC,<�ͽ��O�1W�/�5׭Y�4�(��J��+C�QIu*-����ww2�ڻv��|�Ŝ�ثd&񮾋]����^��}uY8	�nA#+�u�c_îKP��*��8�^��"�����Rb�U�EN3L3i�t�^X�P��D�x����gE[j$i�}DT�J�U}]_\W'�#Y��‚�R1����AZ!�>�$�>uEX�&Ӆw�X� s��+��9��/N�X�t2��~���ٍ=P���f�T�Nj{K�7��Zߡ��������lx	�X
����:��lAf����y|Y}��ǪF'd���M"$�5म���r�{ɓ�	\z
��èk(xp�9�pH�CPBY��|1�Eب  ���l+Ǭ�ґ?튆"�l��X`y�|���FRQ!Q8g�̘�����+��*#��?���}՜��1�,A��y�d_FnK|���W~z�k�x3335�Al����߄�L̫\��
J1���=��)DE}���¬���+m�:�z�V�N|�쏶���d*�z���[l�Oΐ��
�2��UAԎ`�Θ�_*�mw���G��7w=��=?���mXT�\0(!�jH���L����m?D�@�9��r�%���w+�c1�z՝8�o�n���I];�vn��ᛣEq�Ri��Ő�謑�ol�ҕ����C�h�|i_�06޺�	�+�i"&_�s��Js�76�2#\�W٤)�\��z��q3�!J�H��pS�2�$�5`�ր�Ɏ�w�+Fx�eT�=	Ւ���N�l-��k�!bh�̝���
ؘ�ᷥ҃(�,�0��Ӓ�#ж1v&��mY�3ݡ��;VVG��CCn�Pژ�e6$��_��ڼ�ɞF/K�I�����,��O;A�x4�]�>P�9����7sf�3u&C?���#D
�{ħ�����A���Q�C��J��l�+�'�ވT���M�M;f-�OR�ظ��m������5�U�[���_S��dL�Q�ʡ=6~V`3
-�B�]W>�6�T��1�{�>�!�mT�-N��^7��+�~P�^"�N4d�&i�����m��o�⇗��$� �׸.��JK]�l�
����Ft�5��{�5���bH}���(/boU��@C���ɴ=����Mލ��3���~��>.��`/�f�gsCz������H1���!c5�����E-ϐ|���}��P���O)l/'���J�2ig�&�ҒqF�(���v�
����(�K�z��{4�n�� y
�"�#���~���ïA��d��~�+o.TXMz��_��S��@�N�/ps+��/��oe��D�t�����⳹\���ٹ��>r-0*��r�p.x���n�(�8�&�]p(�����YY��l���#��B��t���Aa	�h?������0��3,1�����Ҡe[���f����/��f������ɞ���g�4F,��c���-�t>��>m���Rw���hW�!�|���!!H�bv$�f��
j�1�qn���zG�˧a2��އ5�A���E5z�&2Iײ؍ӝ�G�Y;�/��gD�����QU#Q��L��#�`��#�)�Xd����"��T�K2U��hN?=+����0HhB�=�&"7^/�ְ*����;�-iC��#<�D�Մڱ���2�Nn����?�!~�8�D���Tzȫ���_�{(�| R�WE�v��T�gd�m��l�f�;�P�;�U���(����n%�I,VSB��T�{,ϟ_�:���~�
!G�+���-���_����Ʈ�z\-��p^2[���Wm�&ʀ�wN_�XjNvE3���௵�6��e���O�%Q��T�t�r���b�+�2�HN���7`���y��#F�C�0��<�\�,����>)�t�����O��+��@�A��ȳ��s&h��M�D�|���
$�J�a$a��`���ɲ��.{�4��;�LV�f_����{����<�M�hN����E�1:$�/h��c�FDEWPE��j����徯��>݀��%�w�S+���'l=�����_XI:�����|RdD�䕴}�$�� �}��f�?�d���~U�J��E�z��{�˗���1/a�}s����A���R�x�YC�"�}j�]��6���IĜwaw�ģuRV���!�N@�kc�1��<���+*��E��|�K�G��oK�)HK�?[�3��Hf �����2]�����9:���G��Rm���,���ڤ�r��RW�&p�f2�0Y#d����=���7T���b�
�v�����8	�����'���(��4'�h=��r��Q��:X��Xl,���K�c��3y�b�PH(i���t��C����s-�����y/Jҳ��O�T�D��j�����e<�T�B�"ĝ�.3��"��D����l�j�Ï��hBx]�ǎf�i�C=�)�fr��u�e�Gm��C;�^p:F�K��s��J����
���:�>\>�_*T*d�U��\�0Ǿ��k����N̡��pӌ)��%E�J.[!�+�р&
Ѱc"���&֜�9�z�`�*��Z||�L�j�Ɠ�Yd�ҋBA�G�2A"߈�vk5�s��V�$��I1Py��p4��qXU�Z쵧v�o�Z5 �����S��Ţ�	@2f6Uk���=���8��>�~Ys�A.�"l
�3�	;l�Դ���h��&�6Hj���,��"YU�f׊�҇�C��K����H�TV��C��m�H��W)g�?���4;b,��FW��w�}
�xFm�V���v6��7"���~fvpF�RE�GFYe���8bx��
�mJ��Π"�ܿ�g�L.�p��G�D?�qO:=���d��!���e��F5CMT-�y[���c������k7$}��r6^|v+�t��-G��=d;2��|*�a?�??9��aV��%�`5��H���UXs�v��(�yG�d9C�趗aLo�i�}.�������
o�52�ȗ|�w���Z>�eXc����zz�G~~��_��͗�p�=��K[:#��!H�`���֯��׌��:p}��9,���6�L�:��l�S�64���O��:4�?�V�}��h;y����GW��U:r2=�=�Ίu������L����'��~nA��@�n��u�f�t�A��y�+�n�V��t�!�~�i�z>9i]$�	Sl��q�o�z�C���H��"��s�S����[��_���gq�mV%V��<8����9�n
�gS槉���?�eO�v�U7�8��[���B:�5=gc�σ���]_�T�����`03�-`���/��qp9���o��7o��w^����i^��t|l�	K%���ϊC��?@�e�<�^~?�TOj�nQC@7ȥ�Dz�X���񒞣�P��u�d���-7���`��m�վ�LG��oƘ��o%1�XV�`�wz����,[?D�m�/�8@'��J.4a�O�-L��qߕ�+̗�	��
��D��'�~�4���4��2}r���[��r#�ࣔڜQ�ul_L�����؃-&خJW�<$��?����
&\��a���w�a1`A|�͚4�A/�h�_��Z(w�z�ս�ݜ)�F9
�8�K�����Z��Whk���
À�9�k�X�ޝ(C����;���=�� I���C!���)�1��C�*�4B1�tđ%���x�f~C ���ы�[j�h,�:��(P���B^F,T`��/�aI�i��a�W�/�E�8��p��z|F����k��ϡj��d��}O2��t
z�j�U!x�~q�"|��f��oK2�I'~N6GW���c|=�,DV`z
���c��X2����>�Q���B�4��UH��l���{,�y�������Ѫ�ؖ�N$;Ȇ�6�'��$��)9��}��"��?�K@�`��z����噏á�kUE4D��q���r��v8^��@�3W�h�<�+�ϝd�P>`�yTr�Os+l�G�u�i<E+��)Yw��0b��>u^ƛ8s�L8h��&|	\:�He�KY7���띪r�"�"I����#���gK%��C^��׷� zP��jx�:]�C�ݫ�K�Cz~\G���׀��:����I�l�h9�A�$ۇ��X��� h^�Re�$/�>6J�}�>��_L��rX�]x���&N����Y� ?l�>#�M��N��,[6�,����S�R���­���U�`�>cw�3��^��դ�/�R��Hkb���ˏ��
�hN0Ko�[P=��&9!���%|g�a#�<�����a��>^#���ɢov��w-H�xuH�W,1
��8yג���𑅬e�/����jH��s�O�p�Da]�'�2�qѷ����J+���6C���F���ٓӹ�h�"$H+W|Ƙ)dA�SH�e\�;RO)�veW櫋� ��(2�=���V�r��N���+f>.ϔ��/��R��@�
��Y��’*�Y�z�A��:B��b��H<�w{�M�U���\��؅I�P�O��q����*cʇ\'�h��i$�u�BW~юG>YВ���(I��P��G)��m<�.��r����e���S���x��P��8=q�w���MS�z�;���_q��y,8�
�ТY�_��ì�e�C��nG�5�`��"3s
����H����GDu�q�#�fGx��p�����d�iF��D��K������Ҥx/I����N�u)���N��3	 ��7�W	�i63�edǬp�ߒ�'�s�q�^��8-�k�������Bp��7O^TlNo���–6�s/�'�VY�ғƃ���XZq|-hl����B�h���0�5���đ��
��M���.Bf2KH0�[�p�~G63L"��>���O���Z.�uL+t�Zw�-Y7���H�8`�?g'X�Pۻ$ϞO��.R�O��y��Gr�� ��+�.2
�Z��A��,`��ԍH���H��g 6c�&��7	<#+�"��V~����F����J��t�ݟj��Z��w��D�t#M"�`�E%8V���G�?��m�b��<r!
F?��K�`�v_<W��)!��I�a�"��}�[<f�O` �K�}�Nc6=�`>�8ni����c�*�$�-��3z�����<�aS@����@�O~4�w�O����@jⵆ�0�h;f�0���MWV�R.�xH�}���K呩Xz&䑺�*��1�?t�%�S����a�9�~hv�;��K)�Jx^�e�����/�N������0�]^�7w�k1��`@ڒ��	1u3�p���P�@��ҔR�wN#"��%�]��A��n`O�	��Fz�WA�PWnX���W ��lz�bxb��N��sZ�
,:_��o��ު����7�fu�xw�߱ް��`)�~]4_�_AEF�5m"�fd;R�|����H���.a&	����QFtM��M�c�Ė�:��dȚǚ��x���puD����'���"����3섹�!1Z���2!��Xñ��r�?�Ug�hy�ê�+�"ћz��س2�v�c�e��k�����w��)�L��)�_W��)H2�$�0�3��bi\86R�����ݔx�T����0j��W6K���o٩��:�pƎC�Ǎֹ=ÖE����{��G��#4ӻ>x��n]4zp-�~�#�z^Q
b>�cft$����n`OP���v���S$㟜��Ɉ����(������)���geaH5���jЦ��D�����1��rgE�?W��$19з�����x_l���d�ܕwƃs�}VM���rK�R���Aj�A?�R��I�c��mA���t v7Y���/R[m��W�+�=����:5
�PP/��0Y����K+���H@Q:�9ZwԔ��;O���)@�U���{�#����z��1����_E�v�1�J����;^�B��zG�{�~;�4Ѹfu9�+>5.~l�!�]���jjθ���\����ܩ���dW�X7��^��lD�2��A�Gr�����t�f��X��z����Cu�?���@��9yYEZ�-�`�3���-@N���Sc��Ru0�v �&����hT�^sj9�#>]��e�F9p|"���7K��U�c72�aX���m������8b����቏��ꣲ��=Ƕ3�㰑��������
�$qvLB�(��_OeP��۴����u<��4�y?1Tͅ�Zp7���a~�'����{���?������뾜�z�Η�:��k{i�I\��z�y���$�3��W�x�+^;�2�ǎ�o����~x��
9��q�[�}�=�k���[��_{3��Γ��ݫ�~I/�?.�C�<��<ߕ<�൸��������U�8=�=�Cw�����%�z}6.l5y���yЧ"IU[���%�Bpe��a��MW�\�7[��K7� ����A*���wH&��6�\
�����a���9��)��J���a~�L�~���r��#'��A�lxN'��Q�L`�]�n@��W�2�)���|V[ؕoŚJd)�7}�#0Ӛ0��*�@-ck�����NAmĬ�	yN,���M�Y�Zc�8B�n̍�VQ��<��J�*�v�¡�,hN銻����X�u��n�s؂�d��X�ɾe�]���{����z
��`MЮ�C�w&��gM�o	�!SV�j�~r/ݭ����
j�w',�pUP�P���S6��f��i6�^��xN��2I�i�t-��Hl�c+�W.<�E(eD�/aL��4E�g7��WWզ����b��֣
���V�TF,ͬ��c��x���a��+r�[�jx�d�v[s55	K�o�9
��ݱ�ep���[t�@���]�r�4\�� ����S@X�:�/M���~i���|mdl�Qh�sG`G�g��ϨI�|.���lN��>Z�t������}B꼬������ɪ�h��h�pf�Su[!t��Ъ�r�~`/�銂
���]U�zSY]=�\�W��W;���Ӷ�b`����_X��2]$,  t�ea[���~�!��Fw�yhamuco�Dc-���l��q޴�"ߓaô���fkt��6=4ڍ����#��������`�T
��Pr��5��~#|�T慾��e��Bs5������柱G�q!�z��0"_(G��+D��i��F
;����b1�����y�F=�9�@�J8�;l�YQT�VY�4�����*)Tx��}AN��O�^Yq�Y*�s_W��(���9d�������)��a��G��b��eD�a��/�H��
*5�L��+��$��%��m<��Z�N�N���n~���B#�A�A5tuH�0��j1��t��*��.ex�������GdWO�L8�����q�`w�x��ϟ�M��q���-<��_(�M����l���A��a�2n���o`<��u�@�
��FY��q�-�^]d�*��T���e��8yZ!�b��mN�#ބ�'G�Ϝ����?�W�q�g�Ԏ@���s��ߠ�a�Ʌ'�G8
@�߼�88��KxX:x{^)���qK�,��Ml�1-w��{��8�*��?��wr^A]:���.�R.���f�y�p7i�\����R>�.��'gg�k�Q��`
��0Gmm���B;���I�;]��R�<0�:�1�m��`�����۶�]I�3�1ˋ&��
0n��E�`5["���1M��g��~���7i��ց� %�S`֯�e�c�&L��������/&�@�j���£j�EN����Ӕ��!^j��_�p�*��r:�`�+�)?������J����`�:���-�
�X;����JU����<���{;�(�H���t&ɞ�B*��8y��cE���z3���:�@��R��w��$�<b$�C�Г	�`g[�:Wڄp?7P�_9�\J�w
�3+v#�E����vFYDtJ��|y������!a0_��>S
�
L\vO�.�vG���K��;�̽}�Rvd��Z�rw�xY�īp�
^ku��K���J�Gꀧ���>Ld	���eߌo�~���cE�d�O{�bcsoV$�"���*|+�:�GN� \�&��fn.� D8p9���}\F]��VR�Z5ꙴ\t&��9�6ˉ�_��,!��
>տ��ͽ:�_�ؠf�V>Ϋ�X~B%E�c�0���3���&4oS�����}��K�i�;�XL�^��|�G!�O�v�l�z�	.�\���E��z��<Һ<��6�3�Zd��)B��l3��3B����y�������+���Sv
�E��d�_肒h?Yy؟.�-It����	B@\�vD���Siv{^�mg���Y�m����C�]�-}�{���g�Q�ݾN���Wd�z����
����E�,�L��gr=���D�W�u���k?jQ4/�Pb�Œh���jT����"P��D�@�Uхl���a�~��|k)��!ⷂ��N`�L��j���+:�4����D����mI��Q�)�c5"�#��uP�����Y��Q�f,�<��E��SB�:29J ���@>�`6�{��C����{&"Tw}�ǿNo8��{t)���5-؆����[�6hf�+����A|c�ĕ���o�%��j�C�ݎHzuZ���U(�Q���2���↢��H��מT�HC-��z�
ΎSDŪ���x8;+������_<���,�;�S�ex���x_�)(&�Dy���uv�44m����Қ8�AL�R�^�*�v�!��t�c�>7A��ӲQ	����\�S������2�lB���8e
��L��E�A�_�@Ŝ����wm�B�]��t��yV�{�p��^��a��
9���x�c*F���-�C�@���9��=�&J&����R}����'
�5I&��׆+N}�s����U��3���u�9J;��)��3f<ԝ��|��Z�J��Y}��b��c�,ulx~��Jس�P1��P�
+�z9m��������ʎ-�IQ<����r�ʋ��:5�1�iϐ+��Z��=�m�j����e�p��!,�ŸbPG%vrY�\l�k%C}�+��~����}����&�7�lntA��N���� 0mL[e=�w�2��koB�P�z���@]��i�GQ�h���fb�m�,�©�n����w&�܈�����53�v�MoKTM��Y�8�k�ά�$J"����V˾���=�W?;B��Ps�L�!{Ie�8U�񏭰j�p`����O?�L�t�
�Ȅ7�lk���A@GO0�H(�9\�5�ܤ"�Jp* !S�^0�m�t
���6����4�M�N�%�o�����y�,�R��J�>�ל�DTV�&����c�Y�֟���<Do�/�|��B�s�S�M;�,\e<�9s5�o�.�3�B0{`MJ[�
A�+�����8��*�U�����C�>�C<�̍�j���7�v<k����;>�Gi��T��4�>J���60�!�f��*G�زnjǃ$��a&p�/IuUe�ߒ���Lj�Ň'j��|��uJ����>��d��p�,��‡:[����O=|W���o�T���[#���MR�����������H�#X,Р[�k�8�/~-�!����;����ԘU]�s:�(��886���mw��oN��ڑm�MXt�р���v3�>Y�z��]#f-,vZ�f,�#@l��v�3W�
�u�9��֣��
M�z�1΀�j�o�K9j��-��&�Ӭ`	�v;�v@�D��l*�S�q?��
�P'��@�^ܯo�n+*�7�E���3�{��:�x�zJw�]L��Z1�J�x�/����:{h�R����!П]��
�$W]�&$�$L��{�`�Mm������tΏ>���}�l�xL�>�w���K�Բ�
�v?=�0@#���[���$˴әX��`���.�6�Ƽn%k_œv����V[~�0����K��$�NDl�(�4Pw��mdB�ҕ�i�v��{j��������]���gFSp�},>ń��
�S���E���*�#?"��B"����:M�-oO� ��[�{�tj����y,h�r��e΍5� �ž�|Ы�0��6�AO?4{�v��8M�1���s�+�c�Xdq���kȻDSU��|à/�-8/�q�)?#��"ƥ~�	�>L���LP�oߥ�9$��8�b�o���k\?}ϖ\OP?9g7
��;�M�P�ͪ�Jv
*"$y�w�"��&/�^�9��Bʠ�J���#�7��a[��Ta��Vԕ�����Z����o����t,�.�&��|(�3���K��5�ǝ���6���;����ϧ��]o���ĺ�m�$c3}~]�-��Gk�0+�}�O������B��a��
�Z2�ZK����4}Ç�}[�we'g�*eRO�R�I5�:�L�1�Ր}��|CE?� �t�=�"�������7��(������*[x?��퟇=�`�E�������I7��f�U1�$O��DpG�U�8?hR94�M�4�H}��8O��P��h$kF…��#���y��]�b����~W��%T��.��
6���򀽥��o���&|~�x�+U9���B�
�/ׯ�E|���m�=��	�dž��W��O����5pf���ڷ��2��k��yܮV�vB�v��T�mc�.���=39i_�π��o�#'x��
㡰� ��6f+}>i��
endstream
endobj
32 0 obj
<</Type/Pages/Count 1/Kids[ 17 0 R]>>
endobj
33 0 obj
<</Length 10/Filter/FlateDecode>>stream
x�c`
endstream
endobj
xref
0 34
0000000002 65535 f 
0000000016 00000 n 
0000000004 00000 f 
0000000077 00000 n 
0000000005 00000 f 
0000000006 00000 f 
0000000007 00000 f 
0000000009 00000 f 
0000000251 00000 n 
0000000010 00000 f 
0000000011 00000 f 
0000000012 00000 f 
0000000013 00000 f 
0000000014 00000 f 
0000000015 00000 f 
0000000016 00000 f 
0000000020 00000 f 
0000001335 00000 n 
0000001497 00000 n 
0000001530 00000 n 
0000000022 00000 f 
0000002470 00000 n 
0000000031 00000 f 
0000002598 00000 n 
0000002763 00000 n 
0000002900 00000 n 
0000003039 00000 n 
0000003177 00000 n 
0000003319 00000 n 
0000003468 00000 n 
0000003517 00000 n 
0000000000 00000 f 
0000205895 00000 n 
0000205949 00000 n 
trailer
<</Size 34/Info 3 0 R/Root 1 0 R/ID[<8c43871e49b2cd2deb7274482fa3e1ae><7e037a56fb26aeb76579d0e8100f193a>]>>
startxref
206028
%%EOF
%PaperPortPDFversion%PaperPortPDFversion3 0 obj
<</Author()/CreationDate(D:20151013105625+02'00')/Creator(PaperPort 12)/Keywords()/ModDate(D:20151013105749+02'00')/Producer(PaperPort 12)/Subject()/Title()>>
endobj
17 0 obj
<</Contents 18 0 R/CropBox[0 0 432 606]/MediaBox[0 0 432 606]/Resources 23 0 R/Rotate 0/Type/Page/Parent 32 0 R/PaperPortPageTitleStream 47 0 R>>
endobj
32 0 obj
<</Type/Pages/Count 2/Kids[ 17 0 R 46 0 R]>>
endobj
34 0 obj
<</Contents 35 0 R/CropBox[0 0 435 609]/MediaBox[0 0 435 609]/Resources 38 0 R/Rotate 0/Type/Page/PaperPortPageTitleStream 45 0 R/Parent 46 0 R>>
endobj
35 0 obj
[ 36 0 R 37 0 R]
endobj
36 0 obj
<</Length 812/Filter/FlateDecode>>stream
x�uU�r�8��J�07+U	|��8�NN�l&�\`
��"A�6�������_dHX�9��P ����C�o�
���V7�6���Q@^1h��BPh~,�\���~/��0O�"4ߖ����ms���S���~�)ᐕ9���(�юp�S����W��G�x"�9�#L���ܸ�ߪ���s.��e�Niy��R�I�tYI���TKc��AI���q�Yy�,����V�l��y���8e�*XP�h��{��Y+���$rPJh$����d���]���&�Ѫ^+m�q�5�nvn=|�nis�}M	+��9�����߃{g�Bw&��۽��Y0
�Џ>���!��4.���L���2V֤|&~�oQN�Q��~�W�N�{X�;m��H�#��O8ʟJ
bL�
��y�s9F;l����w+�l��]��
�6R�Vl��K-�����f'�O�2�\*�Ya��4&�~	�Q:����֘5�<Zk��:��}�^�A���|� ����|��؂Ӻu^��맷�I%@�S�����`��l�s��6�Ŧ�p2�� T�r�)u��fO�_WEK��7i�8�-�`��m���[�4�o��6���׫��Uv��u��t��Uz��@G�=���S�<��~p(g��y�Ac���vnS�ڧ�e��� �(�g3il��x?�3����is?t�#�l�X�i�9*�/?!�\�RwpO��v��0�b�h>;��1n����XEX���u��r��n'N�Z��8?�u5����/�#>�j���	/�	���W
endstream
endobj
37 0 obj
<</Length 59/Filter/FlateDecode>>stream
x�3P0¢t^.0+ȝ�����́�ɹ�\&Ʀ`���%\L?371=U�%��+����U
endstream
endobj
38 0 obj
<</Font<</OPBaseFont0 39 0 R/OPBaseFont1 40 0 R/OPBaseFont2 41 0 R/OPBaseFont3 42 0 R>>/ProcSet 43 0 R/XObject<</image 44 0 R>>>>
endobj
39 0 obj
<</BaseFont/Times-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont0/Subtype/Type1/Type/Font>>
endobj
40 0 obj
<</BaseFont/Helvetica-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont1/Subtype/Type1/Type/Font>>
endobj
41 0 obj
<</BaseFont/Times-Roman/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont2/Subtype/Type1/Type/Font>>
endobj
42 0 obj
<</BaseFont/Helvetica/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont3/Subtype/Type1/Type/Font>>
endobj
43 0 obj
[/PDF/Text/ImageB/ImageC/ImageI]
endobj
44 0 obj
<</Length 204601/BitsPerComponent 8/ColorSpace/DeviceRGB/Filter/JPXDecode/Height 1692/Name/image/Subtype/Image/Type/XObject/Width 1209>>stream
jP  
�
ftypjp2 jp2 Yjp2hihdr��colr,res resddʀdʀrescdʀdʀjp2c�O�Q/�����R�\#"wwwv�oon�gLgLgdPPPEW�W�Wa�dKakadu-v4.3.2�dYKdu-Layer-Info: log_2{Delta-D(MSE)/[2^16*Delta-L(bytes)]}, L(bytes)
 -54.3, 2.0e+005
��
���ߧ���?$����<�3��H��fu��a���-����k�B�Y9���)��7����^�/r|-��A�ʥ
$�dk��Ԯ�u��}���&�zZ�\-�H��8�ѕ�j����<�@��I'ݷX��r�a&c���I�6�Ё^�Zr�|EBn���l|O�:�J`˾�6b[���ҟ��Vϟ�&w�`c�ifK�L�}[T���k�p3�h[�U`�>���	��k�����X�Y.y�m�LmrƠ���*K���`dQ�,�TP������=��F��i���O.:�m5�{p��^n"�8�vٛν���%�o	��J%�?����eD�7ƅk��L�����d���}���b<��?N�6�N�x�I� �"j×���	L��FKn�)͋��Q������ߙ	��v$y�'ȧ�"�����.(��b�wX
�8�X=��4��^7R��
��"t�`����<��JW̛��^�x�P�~�7�X�"^(�2~BB:��������k�֙!�cQi/q�N�\���S��,щ�o�;q5�F���cV?&ha*�
>�Z"�`��!%H�hbq�΀
�j(�2�5��{>#��6��/��
]�� ?
d2Uv��Un�笔qW��B�b SWiT�9PR����Zc>��y�ծ�F!�A(����p�P��-b�12��c�Cy�m����Cr)tX[�����*��juƚ��gh��|�;�v�0<0w��7$$o��Ɗ�������N�C����;��������~��?�x�:)��d~􍀿��.	�<��
	��SCL�E'�"I��yM�y����nw82�
��|�ge�dz�m��[!�')ɯ
����
��n�O���=�C�o�\O�>ō(V7�♭�u�||,�A�0���kj�|�z\�{�Ϫ#5�Fԩ���
dzK8tcO:w����S�j�&]cw�M䆻�&��M:-�:����7�x�t�@����]B�e	�r���5����)@�M����w��DzR��x�A��(t�~‰!�&���s�{Q�m÷���)Ҳ�o�, ������|��a�^
m�‚F
c�MfV�)x+�>۵� �������+(��,,���Lm�E�'5�"x(**-2�)5�P
4�뺢3'D�tڳa=ds�����~F���/��_FX�<Au�z'�i�:߾��+.��M��kK'M����A��C��*�lO��!��2�	R���M����>���k��e7���"�b]G�R�4���H�n�{�8��p��1�꼭2G�tb��{��y�*4�j�|U�Zb*��g�<���}�	o�e����5",}�}���@��/���㰎)Trd���mH��J�e;뚝������f�A�؜zS0�tUj���P��g����e�>�f�r�kԥX�ҙs�?����448�H���DŽVW
V匰� q��,	��Tz�[B���8@��
�:�^�I�\���U��pF���%.���Z�"vҖ	�H�DJǵΧď��iI8����{��]Mg�����qG����A�
���3�j��T8��j̕��/��K�D��t������>A6�\��,c��7�7'�A���*��x&]Ha�T20؉ˊz>���SM-F�:�u�raA}�(U$�L8���}�Z���[�H"O09oy<��5�Q�|&�@ʍ��W(�=� ��m�O�Ѥ��K�1�V�����,��@�S&[#�o'q˽�w�!ӤK8粥]�0��A'� <��J���=�c"�}�ʜE��q�t��;�vmG'�O_���<E|��/�|`�vC���dg]o�3�`c�P�z�4?M��9<��0x������Z]u p�=Ԗlͦ��]�<<�.�K�ta\G��&0]�6\�!��v�^`�_���>������f�!w�\qE~��_�3J�K���*���;���f�~�|�'�3��45(`����N�X�1��2�tC���rR��-�χ�Ãg0hh=���b��(Y[�E�R�x�zh���"��1��:�Ar�"�|EdV1��cIh�DZ��Ⱥ}^~��to5�$H!������j�f?�~x�*���޴�E筟B�a�Y���1���o��~7�$w@�U,�=�`_���S�
4�+̗PN��GV�*�;D��K˅�N�%��KD��z�Iz��zz׃��������ΨW��t�hj#��ۈ��6���^*&O��(�6���&I=�v�ܚ;����=�&�|�i�Fev�E�*G����T���kJ�ճ�ᆸ�G���V��<�a�c
c���T�폊ƻ���ԣA�f	L3|���M�R�u�O!In��a�d�Q�m��K��&��k�bT�٤Է^��K›�3�?���D��֨)\��q��ƃD�����[����w��lᦹA�C3����9����A�ï9�@g$�Ť	�D�q�eS;
�A����Yw
��3�e�"��'p2L3�@E��]���$kVs�#z��H�WJ\<��%?A	 �l�*m�	��5��X����ur��Fc�|ϭ�����J��9!��W���b�7xꁁ>[�/���U��"y��.b�pS<Ā��_��|�x����oE��<����g�MW��y���V�!6�ơZ������V-M�� nƲc�6[��Y���*V*��S�d�A���
 &38%r�
Ft�q$�:�AN(ߵx6��!��T���Ƭd��OD��w���	�LJ|!�3�����2����´������j.��=�Њ�p�bڴ��{㤭����7�
r��x%������W��]�_�3�b1�wyi��7
V�\����x��"Ѷ���+�!lWh�4���߸���,�{砉��=���t���D֨8�#3����3���/�Ϧ��F:R�EK}*��aO6�t�[K?�هV(:�]��
e��\���R�Dx��fz�b�����E%S�ZV�Am�Y�f�od(�Cr�̘�*���ZFm-�	����ܥ�%�MYA����G���|��_i#�";�_�j��gK�2Ͽ��z6��@����S�о3��6���ѫ��`�.t3e�zx�O�2n��zg��l�NNN�4��O�A'���s'�D�zX��J�,��k�w��m��
�9y��}�I]�#=�!ؔ��7�C��<M����}΍PB ��fo?�UBW��'��F�¤�5Cq�w�x�\����G�v���-'gc���'�/g�Qؓy%�I(�O8
3����g��=��Q�ehB����
u�8�S�L�9�yU]B:7IՕ!��b�X��,��b6ع'8X�%~����a6�W�V�Rr�0��Ƽ-�[H|*2ā��mw22mUC�SM-n�u�0kZ-a)K���֏Dr ��F�|k!�ָ�.�Z]\/���\ko��p��#6�EE��S�ˤ�3���7'�u��Ж��t���4蚯��9��l��W�D�gE$�?]'��߄up�w*O2�	cNpa �*"�aA�9�U儶Z��p�X�sy0Y���J��Ν�GA%�@��y���MLK���S�~�ʬO=$N����K��yͧxu��y��<K�)t���a�G��=��П!�	�Q��Z��qd�rY
�~E���~"D.F�.{9
k�i��8��2�V����y?�!Yf��?|2k����q�0[�*���o�D8+��B6�w�8���µ�Hs�i�
�~��p
�2cT�zCD�j�)h���m_���w.`	҃<x��Y�b��s�D[��'D���X
�ʌ��N����C+i�D���E��Pl��'���-��2
IC��jv�+�F��2+���E��.���n�6BkZm
��[
4h� ]����\�1f�*�I-����*��Vr�r�D�s�X���{j1T �+�i��w\;�f��þۑ!�B�64�o�V���:��?r̤Y��$}�xC��V��h�4B|G�	�|�kLD�I��(c(�T���R[cR��/�nI��P^\�15f;��6�J��M�a3P�L�{�ؿ����r/����|�MB�V�-���g�:[��"P�R-F�Ҫ�j:w&���M�KRCal�����]��#��ī���V���
�$'o� �uze�O��>��qcxǚ_�۔�+��!�ү��"5M�"�3-�?8L'Xa8�,k��n߅ܸa�%�ύW�S�6��ӯ*�G�T)�e�8���)U��ñ�E��,m��k$Ko,�� \5�n��m��?=l�^�I�y�M#�����~>�Q�z���G.���tvݖU��˿Y����ћ���5-���޼JCE��CA��D��F��tJh"�{�%{6>B\�R��Q�&N
�-�/���/�jOU��i�l]
?�.��on#�c����2��V�	Q��4�����+B P$ZS~�������;P�����/jv����cHu��:�(<�g���3��E5�y�(�k����D�;�8�e94�/�Dp�ݩX�4��8��2}��b�}���P�w�'���SuW�bs֡�\�} ?"��:%/�\aw��?bѤ����M�8cWb�޵ȥ�dn5�@HC-���g���~|��U��U�z+k�D�o"(�9�C��F�`���lt�������Y�V$�݄[�\h�.��A�]�����9e��<گ�Ǽ���q�QΖO�G�|�
��]����ƇG���x�J�!�d_�b�K�QT{~Ovd�9l`#beaj$b�v�ぁ�o�O��ą^�mQ���c��$��1v�Ľ�B�;{]7j7(�‹0W3�0)�����Ζ�B��FH~!#�&�S7ʚ��KstM�a ���l[j�N���]
N|�bh
`��Q��b���U�h�.JƋ�AT�Jt��~+��@��w���q�PseBiWN=CS
@�e��Al���6�#0��@Qe��P�/tff�S�KAָ���3��V�K��5�D槛�,��%�<��w]J�#�џ�����>O��/_u�� �o[��7��Iy���K�-�<������@ż���@��t�.��#SI��1����KK��f��,�6ܢp�
�c�TĚ�T�G�ם���p�
D��YR�P���lQ ��bX��!¦��ŧ���+�[
E��	��u���(6�Ôc!$��Wl�O	�K�ӲOG�ߣ}!cq��Q�w�j�
?z������//E5\��:P'�.z�]�K��w��
�pR&	�ނ��IR�c��p�#6<[Ϲ���3	̏-��~��LAm���?�(Ůp� �j�=�¢PB=���*+\>Fu}�"��_�2V]���@g9^�.�Yʆs�T���
�g6��C���i�ʫ�N	O.>����K��_�?���ɇ,�ӛ󟛨���u��hG;�E��/Y��A�*����
�A8��[�ۼ���+���X`���:\v5E�
���Y[W���I2�@�&��4��3'����m�-sh�
�a[�[��r#���
[��M�*�+M���&+k���J��Kp:�I`VvӀ�cG��"\ea��Z��m�<Ҩ��)��
H��4��v�3�RE� _�s���l�e���!�H��yC��c�j
Z�Y>��	�Ro"�=���O{C�fM����O��P�n��1�?s#�R`�a�ݦ>��+���r����=c���<&�44�P���a���܁���R��ŭ_�3���3�'��a��l�fL��[~m;�{��0`�6���@F�['I�zfFp,��pY��ssP29�(����VXҵ08by�;��"�P)\<d���N�B���g%�=�S��KpY`0Fu��=�e�XRG~�*�G�6���h��K�<$�Դ��sUV2���W�ڻNM�A�<��`Oe��VVET?Q�C��	��\t��R�Ti����&�و��:�Rkk�Xh���k�Rih��N^=EFF��r?n�Ѽ��T.������9���ٻuT��#�ɘ��͘���q^⡺:T�T��#�O��;�	��3���%�()9M���OC����8�488=i�<@/v�uRx�i~��^��RLT� �����_��V8�^��=�/B�������Ȅ��6��h���Z+Z2�*�7qN��0���N���G��[г�(�t�O��k��*R�ŏ�!�eO�%�{]�P��������r2q�<�{���]���N"'Xʁg�a���K5�u=���dIU�����ZS�ItЫƔ��Kx�		b�X;�vSV�Z>�č+�t���W�bz:��T�-������[�_&��6Q�n]´@��jl��F�}͘@�����{DŽ����t�]x�(��`'�?��⭒��nO����=���q���y���(x��_8πe��I?���2�_Ye''��_ї����ǰ�Ҧ3�
+g{�(�����|%X��=��I�,�]�v�W#a� �p�\j��3����@	Ε�vr��Sj�V��zw�oI�!J�[;(�wF�����+-�˿Ar�<a�xFC����\��f��&��R����|Uȓي�΁NH��lҰP���\���n��7�h@â�?]�^|rgqEf����9MҺ#"��~7�s��h���F�Kp$��>VRFۊ�8<I�A�� ��V�ٿ���\�#�l*�G�0��Q��z�� ��=F�8��/�U��}��T��(�(
Ǘ$�0Av�7?��û�Eֿ_�d�J��+B�J0�T�,|T�(00
Y{) =�TDqY��M�����5m9t�h6��=�[M�@z�F�ɑ-)5�����B�'j�]P�2Tz_Ĉy=���Φҽao*1$�p'a�$��#њj�㎝�5��U��g�ӓ� ݚ���h�vh�����FW1;���~0b�x�c�o ���E���}	xg�$;�NL�Gf�F�oʇ���+1&�&E%�dv�����;KH��mE��
��?�j,)��"@vJ/�"�h��'��d�-������2��6�O���e�/�`�����<��;3�U�fxٴb�.��F��u��E[�,_3���

A��in��m��ɕy�\�4��4��D{���2����h9T_U\�ދϩ�3��Y�ح�y�q�:�Q�^Q��A=�۾ܵ;�bN3�T@B�LBwӑs�!ֲ�������{�m�6�4c
�/�U}��šoǥ����.#2ۛ\��q��g��� c����%k�/���o���y���'��1 �E&��o�?��kN�r��T?Bz=�!�i=I��J�2eZ�+(:;N|��j��M"-B��Gh]�R�ȳsQT�� �L��KH]�a��$f\�²oMu�Mz�}��;��j�kk�1c�4����O��{��|�Xa5I_4�|�����U��ե$���B+:�<�|/�k=tL����>�K�yIE��S.w��9���,M�-/�6A�!���3b��1�.s�'�/�)�6&]�^��������V��0�M2�/�J��v)*h.�@r���p���U읛4�Ǘ��t�t$
Drv�Q��~㽻P�Fh��;��Lp `�:�q����t�B���lW���8��M��g�����n���"B��Qo�!��BH囬�d�-����G:*5p��G��K�v�13�����j$���G�5��W��� +�v�<�w���pf,��{��F���L9���h"����DB�Hs���`f��	��Γ��5f�;���jd]а���+���b
_�p�j��,?S��̢��Z��qf���ʴSh`�N{]@(���n�ֆ��Ml�n���☻�Xp�r�6��i��(</k=@�{p����/1D��|"S�3Ս��1�6�8���pl�_Fȱ5q��2?edCT7Jfbǎ:RSSO5��a��\O�^�5��aAB��ǛD��6WW��c�0�!u}+UL�2I2�
E�I��_�(������v�)��C
e�|�W��xB��Yb�W�)Q�ۼ�s�
� l$�)_�e^p/a����)\v3<�'�6#W �$|�I�M�[����l�U�E00�·�ќ��4܁5��f�]�ost[<9���>(���<����M��l'-��(1��9��JL/0VL��d�d“o)�M�?�Ue~EX?��''^�LF�|l�Ba��@�93ı��†q�պ��e��}��*��&�]�%W��/�q~��i7���F6�l������Uo֨��`��a����{3�%�X�(1g�N�F�5_�sp���౥u5gNl���|�-LӺ��:�ֻ��@��^rV�m�Rc��(v`��D��>&��[���P���!�r�*0�:��_7���!m"�����R��֢V���l�.��(i�{��V%�R�|^W�鴧
����/��:ij��\�I�G4 ��"S����$,.ߩ�Ϩ<G�5|�{�$��&�6	����A59���3x{r�Y/��
���a������ᆲ��1��[oSv~����q=z�C��P��}�TSvDY�Z��G��e$�Z��m��Z.錏d��<��y�k��G�t��Q�g9d�!O@��MaI*��&��~)�.1��{:������p�Q�j� d{��R3�1�Mww9��n�;�`�+F�&ި�N9Fx��=k������sP�(!�'K��S��r�~�s��c0]J�d�3�!�6�Do"M
�3�����T�X~�7���a�4�DM���RG�jc�2+-��@����91JFm���y|QU���e/1N��Kc�.��2c0��.jTR�q����ps|!�t�6�d��1���L����Ͻ�m��rA��ʼuh?_��iH���<�[�A���ME�=+J���+��֎�D��M3
�����b���s?�A�1P�F2�#��d��7��m��o�tt
D��+���s��U�ݲ��tb��Ri�km��em�i#s�a+��;�!j�lg����ǣ����d;����VCRl��@1�u~/;ߕ&C���}%�8b�����jL@�ѹ�C��G�c<���
xڎ�.	!|7V���݇D}
Y-�݃҃�,�{ز�*��b<�
{�Ȑ�I�ot
���ӤQ޼��j��
���OOJ�|4XTmSώhU�0�G�H�Wrf� V� X�%�U���q���@j.�‘u��_|\ָceI�ǩ���HC���ѮDr����ټ�Ku�A�+_A�\K��ʖ�s���^j�[�L����K��o��a9>
uw���� �<�埛&���r|.�a�wi�>^�enL�\�F�.|
�zH��#��g(r�x���T�L`/*�H�C�	{DC���.���>��ʺ�|�W?��9A%��@(��p�-f��]]1���*��6�d����B���$������?��{��G ���+�0�@x7�^���ђ�ʹ�Ӫ=q�߬Ty��_� ���Ǭ��[�H��cOܚ�y�'I��
�� ����Zچre�2�S��V�z1�\���0A���2�,��9j>�v�6��b�VB�J+�O4�+���?�"&��ʋ�$�\ޫ*#�e �YQ{��@ ~{=�]�x�
����=w,2s���
��2 C:���?�[��fzs�1mB���e3�M�5���5KG�kڐ�O�.f6ֶ�+`��ˬ�R�ͯ	K�~��~���o���J?�ǃt����-���_�/�z�=6��c�P���+�ã�E�UC!QG�a�j�H�W�@D����?�پ�Ǘ �����n��
c��eˏ��B����f~���I��-M�^����2pHC���ȫt\�����w�n����ޭ�HM��8̼�(��V��pV�ng�.m�
b��o�+��+�}mS���*N'������	��uł����8Tϳ����63��{N���b|@̋2�٪|�k�*{Pi�c����@"��y��H#�H�~"0tW�Nj�b�gNp��W�܌|9
!�A�߬K�o�ߏ|L@*q��oҨ\9]������޻ad��Z���o�E��2/��$=q,Y5:�T0eJax�+�Ӯ����SĺZ��|��)�@�����#���ȫ���?c�}��bUAK&�
Ap�<O^������3?�3��CѤY���(�C����A?	��̨ܐ��ԩ-�}��EK���o<q/�z��j�}ձj�S�����d�f�����;*%��Cg��T���e�(�%��K��������u��Z�m!�;E�4}���C����UDr��#j	�}�t���9�aԔ�Oc�D����G��T?	�<��g�c[�E8��#����u3����?�N���_nܦ_5�6i�������|H��2�f�6��	�-��)nN�H���H�2�O��b'iߺ����h�ǐ��R	��s�AO�����:��A�����k�;�ɓ��/(p�5}J�eRD{c�? ���M5ݶ�&����Kx�6�)����l�]h�K\އ\E;V^��M�l=\�*U�	�xH�ܯ�h(��
���r#���$L��&�3�,��'�g���_0�EO?�Z�|���ֺ�`���u�:z���(ɑd*����L��R'R��~��DZ�?�������w�o�{�Q��7��]���q�f�0*�+3
�Ռu��}@~�5�(hms�g��U+�D�k�d�̞_�5	#7�Ih4B�7Rr+���~���Ub�/���̖��&YC�|���b�E>[��WR�)��E�U�o+^Z��:�4�Ɵ=@�%�O-s��c
����%_P����!@�'���4_v��a����;������1-�e�'?I��"R�!�J,��/"C?�;�xj_
�j�U��;1U�?��]Q�(����(�1�W�v� )�r�1�~����>��`��%�D7Bi(�xA�p�ͼB�jUNE�ةh>�­2TL����a��P�j���u�L۬Q<�[�CӛH0ū٤r�Y�Շ��8�r��^,C�5lO���0��_�e�Y�a�&�o�ܠ����VM]8*.�\u>��
R�v��p=9yK�ֹB�j��C��N�G!����V#���Φ��aVj�)�8H�@O�+r�d
M�e;ߞo�,��h���!s�ַ�r�o_R�:��� ��!��?
���Epɗ��گ�*�,��s�o�0��&o�0��k�=7A�׻z����N��4�>JXVF�M���mC�;������Q����L0��w�K���<PA��@�Ɩ��r���g�[F�����mj���C�oΔa���U
t��:iOh���q��K�L����K��xw ;�A��l�R�H��������&��I�0]
�����c��
�4pX?����1^�'bf�{֜N*��G�2k�R�Z�8�T4�$’z�Ų�J[�1k��.Z�����.
lP��7��6{�l�m�����Wԁ�1�
@�5�>��F2/�Hy��W/w/N�u�͐
l�GGt�ۄ�4���tߑ&�!)<:���A�P�^����/v�\��y*�Ne��E3�D  ���7�4��̄;�q��5�GV�)�x���� �z@$��p�w
+0J%��B|����Qq���9N���!U.��Pꗁ_E�v�0����󖯇�ܝ����ȩ���� ����{NJ�#�U�Pst�'EuA��K�2��}vV����̀���8���S��qDwb�%�dž����]r�9@Z# %YRLb���U�8k�����<jڸp�wR Y�z��
m����G͕+�mI�x.h��r	�L;�h;�5l}	Zm�����V�'pB
{��X
�,��M,Cӫ�T�I���nki�]����7�ÙE��ek%G6�	��`�Z��sxj[w�xw]�KN�2j4�3���Ds�
�<�<q��լ{#��M�����1�R-�q衑���Ԕ4��
��%��h��J��Xӑ���=&��Ȕ��sԔW`��5X�έn��"�����$+�<)K���K�����D�B��e�ә��[��N ��p�x:=aJQ?�%��bܱb+é��<t���FE>C-*�e����ӹlxr�ʡ��}ܭQ�ݸ0�-[�X#�+����9�_@͟1�q�	Id/�t���h��Ȗv��:�1f'ǫ�
"�S�}*�-;�sd.��u��p�4�r��h/�r`z�R���8���X!<P��p���^5�#�����=�Jw�˯8�<z�TF��hz��3�%'lv�����n�'t�P8���T�tT��?�a�c\F)�c��_�Y*���%�2�ͦ12�x��8���D���2Y�5Xh�!�j�%�J�?��� �FD�!O<��ߑ>9[/��r�;�4�M�–�V��v�uyy3?|r�W��̾��_��d�z˹���� �ʢc�@J^g�E��^��K��W��M[-,�ګ(Ɩ*T6jɝ��•_���1���MN�w��@�(I�VХU��p�Vv]	��ˤ�â��(��k�ʴ+��:��X����x�-��T��%y��zu�i�~��CO	��J��c��h����
��CR�F��s��ezXХ�ʥӄ�$�m���(���v��ŗXg���*�OӶ�ʇk0�<�!�%�s*��@ ��yhg��k�e��e�r���n�i����8�v%ڲ���BV
�XH��cZ�B�w<�SDP�T��8a�Mg[�������6�8[7���ל�N�A�r�Ϧ�0W�?��Xb�0�9zwk�`ske����¦"
!Kq��ʼn���`'\׵%��|~��\�b}YE1�B��k�=D��A��k͸�Ņ<6m�����V䔜�t�t��ev=^�΅����D�Lu���S�-p��Ms����9�|���U'�c�w8e�]('z�K����2˞�p_���^��$h70F�	�r�)�	��!���͐��|'�K„��)�Qd�¶�Dž��]��_]�2b(Z��8�a��I�k�$�2.��6AkU�͜��lu�5��qj�!A=�"ғ����P�ݫǞ������^F�u�`�nF�l��h��)
"��j�w�
��V��@�W����`9�f1� =�E2bu��\�R!Nd[���1o5�r�}}�}����p!+e���?bS����y��3�R���O�W������?wғ������������>���_��R@���x?�~0��0�]Td�%[�>�<u�Q���K�)�_
��Ѩ��e�\�K�n)N��Օ.�X]
?ۀ��UY��Ŭo}+�O��.���k#��.s�?)������aƷE��T��)�A�97qIlo�P�W/�M��8�9?Fܴlq0b�k��m����2�h���Xܘ�Q`)����w����A���l˟J.�(�;xq%��X��/�XdW+K4�]�{ɳ�T���[�q�S���&�.�%.E���R�o�q����_��!Vs��\�OǿY��
 jЄ���yدY�C�|Vmk���Wa��9r0��|m�U���z�*xv��I�-�1�
�Cח��,�B�S���|�Κo� �S2H�``�s54R�ěӓEV���mD�
���d<��(�c�s!�Gҳ��v�|�����8��H��xA4�(���w�E+�<�\�M6bd��c�h�1�y���8��;Buc��"
�+&�jg�g��C�͊��Q�bSȇ�������k�����z[f�Ц����yx�.e��4�q��X�hz:f�aC��E��&Ց��~N��$~�<,�C6B/�%	���sWgO��S���s6!f.ۓ�[��.�žܩ�B�=�%�J��>DL�
�`kE^��'�>�}��n?�t/���WX�Fc��@w�p�縵,s��6��`_n2�ϋ�#£	�}��{W6�?�����p�D��!�lSu����r,v�z�m9��C:�V�kI/_,1M�C]ac��/�N�u].(��s4!�]�력Z�CP��6M!�U?��,7�=�'�,��-9��So�@�	b�"j;��K=lќ�X��N;��kTL�"�Pwzk%�n�n���W��&�sE��׺��\ʑ��#�#�/���dD�:D���.9�"�&�����&C�{��O�q:���p�Tҝ��޶��n�"]��RnZo���*��u^%��΍����2��� 4Y�q�G�����W~v�N|���պ�Ħ���;?w�b&�+t�'�1FXya���(�ژ�c_^�*.i꾮��>^����e��Χ:�f��§�yTp��Q������F�͜$�
��{���d������*�A�p�[<SP�a��6�֌%^��C`�ղ��>�0Lj_���j(�������d����u}��-����~'�3Jm�S\�h~�Q<�O!w�ǂ��n\�~
���
$���Bp!W;����_�h����F�V����K�ib��|)w��b63�=�-�^,�H}
w3�!<��e��.��j�럨���Cmβ��Z�^�6��>��Rӽ����e�D�#���Y�1�沮���`T�F3P���|	m⢮=����E/��SN�ad������w�Kq��k,6}DT�^&n�f�
C#���7�`�#1�1SλRČ|.iY��Ʋ�OA2����->y�3��ę���D�W�ʘ���4D
�ha4�Qn���"'^=ԁ%qx��f7p�Z��.��kYl��������Cr8yy���u	h�Ad�C���P2>��ի�y�w���Χdwň�"��r�˞����͟l�Hw�m��g}K��):E�c^�T��[��DV
/M<��d ���>���i�?O�k`9<�
���#�:o&ὀ��}��z(�#�$
�h�7:��g��EddJ�=$�F_Z�)�YA�Քg�bxA��zLp�M�{ ���� a�nߒ��������.�ћaw���BT��F�jh�{��`���P�P�$���]��)~���OE��[*�y��T �;�]��K��I�u!>�����FX�i�&H]Hn.�*n�$Ӝ�1Z*����K?N}��Alg�ej��E\B�����d?y2E�Q��DIgF�(
j�=�][�FB�S���q�>������c��SR5av]�!�2��s�Ľ��g�Y��%��7i�;]��~�.P��*�6TLJ���UB���-B��e�|�3��˰��*b����ZU�B��܃~��ԃ�_<0�6�Ԥ��@��Y%��~��8���Uȯ0 5w���d�yl��l���+!,��=[����CQ�5(u�l�k`;���Ϟ*&FO�آ��-َJk��"W�������2��ҾQ��w�zϏV�@������e�ڤ�G�������k�%��#HC?M�O�>SC]t]#�8�W�� F��������P��}B��0���L�>�*A{��ԙ��aϊ�YV����U@������TM[�6I`_�8��2��N2�w���Ri
�T�BW��q��|'Wb~�n�
B슙�	���ľ)i�sT|Et��V��|Ɲ��ֲܼ�B�A�|F
�i�D��W�Ǿ����>�����$�RbBԒֱ��z0/bd.gm�m��E��H_%4}פ:�v�^�`�c0ߛ��a#�*L���������g�O�5b]��c�@;n|l��E���$�+���dڵ���1|��
A�X���Ԫ�56B2���u�t��Eb
S/۰��1Fk�q��d��Vg�AJH74�gC%LE�F��?�NH��t
��6Ѱ�����#��Uk����c�r�3_�jw�ꦧW�Ru��:pr�e��`v��A(�n"8Y���e�q։���Sq+U��w�3F��Ӽdoz�#P��YX:���i��Wn �Szd�l�)XE�􉠍?B�E	:���V��~/�9���i���	>�}�CO�Ip�|A��1yT"G.!�溳�b��j~xT�����{q��q_z�/|.2���4sE	�U6�iLl>�{���XB2?f��

7>8�1}6�,�8s���ʁ*`���p���?�l���6��Go�����v}-Q>:\tp=>��ǚZ��_- zc����2��1?6|���Ȏ�g�W��J�Gz6�h�dCۨ5�'m�<@�uE�A�ý�8h2�_G���
�[3g��]��kSz.�O!��z����Q�W�'y�4JKN�Ϟ8��G��W���'��7\.k���[�)��+G�^k�d�G�3���R$�Hr�Ƥ���$3�*�bQ�Oj������2��f�=kЖ��P��@���0��CX>z'�}Xs!`ݻ�Tc�yS���Ǘ�B2FߢXy'
��gҙA���Q�ʨ?�-uC1�����^QQ��C�Zs$꯵���)����Rh�A��5�e�$)+^-�	ω_�M$��OU}*R��U�[��M�W��o��ׅ�
��pVj�'3�lQ��T3��m��:���u9s�E����4	�6°�61Q�ۊt���;7��~���C!����iA:�qZ��-o�q�����q�5ݟ�;�B�b}c�$�-�f�Y��0M�e��T�ɟs׋kzElq�zՄ��no�@hS'p'���$�ë�!�_��g\�%+`,��Q��� |%��O��z�͋� _�`G3��ި	�[*B�k*'
�K��	��R��a!����J�-�h�HI��*�ͯ���g��_wIP�pA8Ԍ�\9Q�S1x�����Y���0<i�>`~
W4+��-��
�egZn$4D>�g��F���ސ�T��h�0�CA��y���^�,~��F	-V�Dz�9��LA���z+��w{J���)$�8Q���kϼ��c��Z:���1�Ge&f0�s�p� �y&l��,��ev]��]@�۰�A�@�ٶ�}��sH�A:Z��U��9�^@�WSB��B��5\q{�ň�;�A����t��r�l-�x���j�hI:��#Ru0�6&u�4�Z�\��b��Uŀ�)�L/{� ;m0j<3^�33#��lן]VA�ii:b�_��5e�t��U���Q�1�b�pUC�ҟH��*�R�3�4���ö�]��'�ŽJ�0�f"�PZ��*^�ь$�����"��/ϝO��f����E���n��\-�r(�J�\]
�{5��q����
[�k=��L/VSY���\Y[��~�*���=?�@R�G}5D�pw�DN�6��'z���&JP��8�4��R|qiճ�t쨢�/���5��u~����裄�J6�����x1�PB
/�9R���u,Vs�}k����4�7�ZL2�}����q�i#�Q��]�@�V�{G;��TiMlw��m�`�+L)i"+>�����r���y�so�
S��;c�>j���!�.�8�?/1�W���A~r�X��d�)X���v�)���	��fOfpzuۻa��T���>_L�f��mi,P�>�v��燣�uc=>�����/�we�_Qҡ�������P;nx��n��赏�5�C�|��G�C��`�R'A�/��8��ˉ�V*��_��aNd���F8@�Hә����lc/�~�3(���>��	���b�VJ�@���U�b��ꃜfv�(�1x�[?\�49��l�x��2y;J���#�j�
&��.��`��8��7�?R�`^������t��jh�I�{K�eΧ.�Y�`�:��74���٘Kݙ�rm��S,�q�s�_s_�I����^���WQ�P�Ki��;����-,���]�� �y����4XT��%32u���Z��"��I�{�*�S���P�� p��L#��P���Q[�b��2��4�>����f�OP�;˞� ��y����"��H0
g�g�@|�<�yh�@��Ĕ2�o�SD��E
�6�|���ŊE�=�,�A�"%';
�ͩ��rVᾢ@}3�|����h��d�	xN���7�WH��o��h�ۉ;�^��țs�$�k�˰a]Au�z�1ӡ5B���Lؿ��Mf�vý��H���bh�\�-c�Ď�Hk��
x6O��^Ha.�y�
��$�y��[�J�LV�y~	?�+\Qf��a����)����+{p�[$�)>�Hn�����̻=��wCV��z0�nѐE��:�B�f�J��@�[�oP6ڇ�]$\��,��j��9@�EnP��� �ԗ$�ȗ���(/�_�;7Ȟ2m��8%"���1��<:����[��k�O�>����`�vN=2Aޗ;_�HTO�RG�{梻��.�U[�.DЏp �FhԠ��U����{Oʕ~��	BM�g���)��;���ۺ^C\?r�:�y�s��Ot��C����\ ��nt��c��mA���2�cP�ɬ�.:��,%W8�$��d
4�Uz���oq�QV���s'�N����u��ĩ7�P���J��:��{��8A=m��/,�]�*�	�����}➏pI�gTC�BwO��N:��ͧM��B:b��P8��(��W���^FaJO5I��6��s��N���u�Y��S�ˊq'�p8������;[,D��d.x�p�`�g@!�}3��e��ܬ�,�\GLa�ž\�u�0�=��r;�.6���M�Pr1Q�����:�.A?Ms�C� i��B�nդ��qX�+iHPpCE�T��3y� {�Q�_���vu_�O;c+��$��@�`�sI�ə�� ��Z��$��X<c>4��]<����ξ��;�/u��Ud�x\p�n�x�h�3M"��<��}���ρ0R�����>���{�4S�L��B�y
�QR_֔�b(�Oe�3��4��B����(xU�3oQir���a�y���(����ۭ��9?��g<_���Ը)�CЭKr�"�����C�����f��9|����%x47m�5�ڥX_HC^��5����ֽ��`t��pI��x�i3��LX.��;�"�E�)މ|_�/�����0�JSk״�P�tѯd�nY��5^N��
�k����,�Y�(6���56�+6�;rKo�^V-��j3��wt�2 ��q�.fia�)���x�a"��H�]�|,A��eBb�[d�袕hS<�X2&�
��F�����N��ϻ"Ι�cs�����Y�?`���R��`�^BC��o�I�h���|1lc�d_�LtP�T��V�r���T����������s�z�)*w�J�Ϲ�O�X�y^�	�w��Y��w0ջ��ό��F�L�4گS�;��6_�3wZL���+��|‰
p�§g�������P�-RY[���PZ튻��qu���T�UНM�Ǣ@��I�~�;�U8��b�N�mYS|]�O��J�O`�"�<�����*��P@���/�(q�����r!>��4��1�o��m�)��@[�#	�Xn���Л�j7�PD��$��Oz�`��P���Ui����P�!�_�;��7��i���K='&��ؗ'��g4�y�s�7��%�>V�}Ϲ����[�Tӱlꥅ'�p�Tj~hXoE�Ά@f���K��s���b�_��>R�����,P�"OŔB�[ٳVJ��twsq�>w0�/�Il�֪�/�)����S�����.X�{�bm���b�C�LrcX?���tT�JR&6�H�4
0�D'u@����
�<[G��DN�t�z�;�+�Tbi��l��w��>QX��	���s17�k�V��[K�<��U�|.��&c��������N�����Ga�]�&������1	���X���&��~�2{��Hπ6�1�L�$��ka���V��AF�ePް�)d��^E���{zV���������x�Ku��������}r�^�?tt�l�y)��Gg���i�z(S8ȁp�sX�ܒ�Hݠ/Oi�l�&�@ʌ�5[�}n�}#WX��N�3`C�1Mƈ=�B��ը�A�|�#+���W����O:"��z��W�ǃ��b#f��?Y�JF%T\)�z�4U��[&�xu�*P�/���*?�C،�p�,P�Ngi/�u��W�;��f�Zk��rQ�D�ѭϴ_����8�N���:`��l�ק�@8�x�܌�p�z"��$.��%��bc+�@F��抗?8
އ�s�y6��!Hb��_nN���@XdW��#.�͝E��aE�M�@n��E�61�+k_�!D§��s<�B���҄-O6���-��_A�du\ל�;\Ï%�:�7�@�[z�-���4r�3l�я��$[������L�C��qAæ��%u��+��g��9���H,��L�?�8��P+��添��l4�Ztv��-�䭭&O�ކ'���V��y�))�q�X#
J/Ԥ�~.XP���%q�0Aҷܔ��vygYn�^�鯽J�KÞoiJ�|9� 8�ݲ�C�h�X?b���qL~�w{`?�]�j�mGD"��9‰��>���ځU���Dv�Uj�IjΔ(��J|ww«�c�jRR���GGiWa�����<z���>|�G�Į�I`D�Z/�>��Zꔗc����㿹�<&�Ap�Ö#	�T�Co�T ��Z��]J���ã3i\�j�6��*�Y�(���q�tkI���Ĥݯ,N8��b;��p���+�6Ks'ϻ'�KԒ�]\G�
�1�ڒ�Y��A�~�e�mKs4O�IdD��l8c��Fp+Ewz��Q�������5��d(�Η�8΁C��;��᪵��^D�s�-嚜_"唞�M��0�]�=���sh�e����b[b�(�؂	�-s�ma�ң�Y+��!�A�Q׬г�|]@*�!KJO�\PF
)���`��vb�Ru¢l�T"�������l��s� ���&�Z���G��(F����s1W2]~�X��ǰ��[#A�۳r�3DG���U���AE��1)�[���L������O����U�f��:9��ɫUzQ��q� IUc�S�XU�%5�D�Ű�:�N@t��	��!\�4���U�([_^��5*��*c|�`M�������Բ�����{�i��6���Oms��'��7ET���6���V+cɨ��Yp}e1��t�Cc��MF�JW�d��xn�R��Mk�C=���
�ɼ�t�;X�F�8G!
gʳ�o��i��1�؉Dt?u�����ͿqL����&�l�[�8î���o�UD���E��0bH|g���Xԅ1�^K8��m�"XAe��e��mEZC8)�O�;=���!��`�N�����i&Mh�{��`��ey��9��׵'��h�ȩ
Xf0y�S�����1(V�|Pi;�(v����@����u���hRMU�����ԥ�������#��?ᑶ�1��5w V<&���k�R�����^���O���$o��N�Jk�iH��%�a�٪�w,���T�h`�|wff�f��}��F>�o���;��|�H�2~�Lϰ+r(��4�G0��#�tYWD/ϱ.*��u�����b��?v��	Ե��=��q$,p��[P "�߆ڙnf����F���n@O����T��Geh�� |&����'��c�*�;��oqz���rg��̕�2l�
��>�����3��%��ʿh�7zP��2LSg�&t�6�c���Zs�M���
�u��5��B��y������g��s]
	�����/���M�)��ۯ_I5�4�;���]}�1�/�2�>�8�d���Ҟ�U�ڽ���9mW���^bs/�s��v�`y#9�…1y�#�)�G񬲆1R��5�-�hOĿI�/C0�G�.�чQ�cd1��9}*�Y˫��qh
'�[>�B܆��ڬ�AzK���z��׎y'-����I���f�\KB�9��'D>c����~�E��5�����v�*h����k"1~W���Cڛ�$8�v�2��~$�TW��u=�����b����9n�M�H�w���8��i-���������r�q��J�͊�C
R�2E�Td�7v�.��>�YP�ŋGA�KA�)
K(e�EO���t�L6��Z�sD-�#MB�����
7ռ��)�"N�I�|�S]��52�Q[���.�R������Q��{�ZD }����uy$i����N�p��C`;~�Q'�MA*g0�B�uD1�_��e�^��Tw�i�
#àz��ETW���wx��1o�n���
�C���2%!���ւ�F�A����fA�!|�Me�?cbm�L��O��
@ye����F":qu�D_�5>���S��w��mg�l:�c$
��~�0��5sP݅�;�/=5͖~�7�W��R�D��F1�@xP�\�H2�CIdg˲2w���Kd�prm�L|�iI՟�J��T�먇:�Tw��Y�ТT7�B��nR��R�8E���غ���@�-a3C0G���߽����7����p�
��S{���s����N,��t.���C��6����D)���=BJ=9]�����}�r��T�0g��T�����+�q��ğvUL�a&u�s�����_j��"Co�&\S���N�
���U&W{쫱GX7E,ru-���|I�so����Fm���6Ĭ��g�!!4��x�
�!T��Mc=��n�����P8�4���Zn���
�xq��V&��@A�4(TG�6�lŅ/H���R���M�\�!>�L��U�1�r����Bs���f֖�_=AP:9�G*1:Z�qf]:=��Y_�Q!�Cc����dE��`{�3�윜a/<���R;~���JYP$�,2UN��o�=�dY���%��1��ɠ��<�Hs�gq��%��Uc��p�t�l�MlIj_y=���fV�Dʘ�q���U��Z�i���xDv����/��WЯ���'b*�b� T�����F�݇V:bp=���7i��&ru����Y�^Z�kK|�$�ʐDO��vX�?� =ʰ.� ��w��0����lB��6�b&��31�U]�}!�L\J��8cUb]����`��g\���4T�,�S��#z��Q�*.m��RA�ک,3>Z�m6�%�=0�3���#q{�L:w0wj��
�����Ղz6s���j;8_�}��{7�#����-VM�yaU�v`և�H+�3��J�=-
�o>f�rd�Ř4�*ds��۳��g����L[oPw�YYU�x�1�2q[��S��L��9�Qc�H3�'q�y���e�}�n Q�#<�z����VL4��\�^%+��N�.��q��
�=�����Ј&3D�0DEv�o&�����K�=Q�@�0uugu�\�­�y\#�I�1��7��=��,!�����l���(��Mۖ�oZ!�K_�y�2��m(�)��04� �n��K��'�k��׏��lYW
�j�L?>x6�{ֽ���ڗ��ϰ�aA��Y���<��1�mx��ud�P�Z�y�6�X�>�e[��Y��*F�1��.Y%|�T�6'�F�<�'��/��o��)�
�d�^~�JaT�,1fT�xL�8]O	�%�Z��j��srS��SHr�ֱ�
a�c���5@bƜ-H'Y��b�`P�J	#.��U0�`͝)�j)�����[j)\0�v$(���a�?��b[��:����O�����Q;`J�����pkB�xY8P,n���<[�*�ktr��^d����ҥ+��2.�s���|j�ȅ����T�4.2�=��B2����C�����r��҃LP:E�p|���w�pP��y�c�=R��m��t����3mw�
5m���rR�
��^NI�/���J\*y���B:��z�v�N8k �u�������J���Qa�������@���Ҷ���Q�
m�]�7��M�>���4@FN���9oxPFig��Ʀ�Rm��Y%�h4�#�D�i�S���Γ�ͽ�O��{�R��h-"���U�p����ȏAn�[�e{��E��HI&'#�m�_���C9�
|�,#���8#�%��T��[�L�և���f��@�"dv�,Iz�h����	k���a��i�+�4�q��J�T�0��X�̘N�e#�Q���<O}ṝ�䄽���T�WK`��` @�q}3™C��K����j�+%BH��)3�F%�_aSB/=�>0��R+@�i;�A�����"q�?��[�Ά����S���ԃ+��$/��NAjD7�OK�z7)2X(B����.
W�v�d�z`.b��M�&:;L�Bzd�l��?�����I>ҲkPu��S㠸t�x�怒L�3�|��z7D�l���p��u�g��������ic���-�U�@�ޖv?��L8m���T4���[#���_�f������c΂X#����F$�Z����!K���F�u�q�S�v��K'���
�:�I�ˡ��ydL>C@�Y����c����]rJ%����������TȺ|�S�1V0�u�-�ע���0R��|��0_UEw`El���[��^b�G�$��_�H��:���4ď��=�`�<�!�s�e���w��B��#M�h��l�J}�/��{őd�O%Ig���\1{�y���
sm�qJ��@�#�~<!w_�3��p0�HxL�����`�<�]z�_��X3��2L@�D�����ﴽ��fz䔥���O����Ejխߖ3ɘ�TU?)��2C3�^@^yڏ���8�.�p��=;'<-����b�D�.�`�Kg�N���:�(�l<�J��;��rj��^�_�~�D���N�d`AE����JH�#=L�ʹ3���m!~%�h�@5�|F¶�VTq�e;,E߬gr_c%:����8�_ϯF6��S��`/G:�Exl�0w��(�kAg��'��i��fC([�W9E|z�v�7�;�S:�ž��|F0vk�LP��Q S���~�8�t��.}�:Xq�W��k�Ϧ��da�$���yw�npz�aW���}J���HOw�?�(�)�@�nqɲ����~�,���K�_�bU޸:l�U���G	�'���7�Ļ�m��/���䜔1�pֶ�l�)3Tf�%����SN�RH�;������L�\{Q��/�E7Kϳ7�L�8dI͊�m}����<�ķ ��ⸯ�,[ �5�%y ���X��cg7ː�/�|�È�nK	���yMэr�b�>�<{��'�
R����U�T�妰&g2��԰͈u��~��t���X,}ci�[�\$�>���\�܂nXe���1��Wt=�Ք{%N���䯋Q~N��[N��s|�:�}C_-�����w���в�>��>qDs��
������&���v��jP��
��Z�H{K���n���a�Ea#;���G��H��.�`A���5Q���y����`��x
�sR
jZ�o7<�f��\$�b	���	
�`�Q��73�=�/z�|I4#�X#FL�‹��c�#��`Q(�_M�2d�ʣڀ�`^���У�3!~v�N�A[aIƭ]�:�Y�M��g�Z�u��Jy�~$���oWA9�r�㽮���޶���f�i�s�vMp�N{C�(�1!;•�8I��<';�XJY"g���ّ��q�E�K�3n�(K~]�{=����݁��r^+>�?�AiK^|��j��
�zө��	G�Er���	vן߳a���I�(�R\d]qTD�l��X��V��Ek�+u:;&v��	G����LmFѺg>��P�q���j��x�j��v�Mb��8#�;)���m�N�KϬ�@B\��zUM9�m���=FD��QP
��&(��ϸ�*K��	$$�E�F~�39JĦW�%�p;��t}b\�NCe	��[-���I4�h�Z��)ʅ�WܽhF�+Ml��Z�ˌ�&���;���رBɆ�-�	�5�S�!��cV����~+�"4�,<�O��6�̺>��~Jo�TI��1����m��ʪg|�|�iv���3����zFQ��U���1,�k��:��-R���H^mƬ��G��5~������G@��c��J"\̥��X&�mX��Jp���v�yɠcǞǫ�&ht\lҗn򄺒�k�q�!�W�ѩ�N�.\ޕa�>�U��_��1kw��j��\�����Q�T��@���2��ɠ���5�Ä�9㐽7��C��2ˬ4�W���+^���U$�(@��})������}��|�	�ヾP�({�9��@7Z�{	x�tO�|H]��HH�t��ƽA�1`N���T�}.��H�ds���(��4v�g��J6���
+�)DW�FӼ��A\bxډ��8[C�'�!��&q�
YAq�,}��Sd���4s��U�ʺ-TZ���K�`���ŕ�(��TO��o��]CM���;}�y��.*����RN22w
f����Q�]�����_g|+�ͥ�J&���Ԡ�q�=%
�N������+�k�ۿx���wE��T��I��n��`i�a錶*��C�Sm)Բ�{����_�Do��+�7'p+e�W�7^������}�u��/L��`EZOx�p�}����sYb4�l���I�&K��Ɋy
z�>J�9,�����<u�	�g�gX�=�7��f,)��b�o�A%!4���&z��T;�w-��Q����\�ꀶ?���,8�j)#l��mk��Ќ��H'��T������&a0k��W��7$ǻ�I���=bœ�kz9`Ҫ"�s𐎰gZ�pG�� ��tynS�i`Y#�*W�|U픉w_bw�坩	�9x���sȿNQ��j����Z�U��7�Dl�&���e�M����(,c�{��!�t$�d��t������^{��XQ��h���e����ry����K7M�~�l�H�~5��|(���vw<�P�-��
�Ɲ̈~�LQ�R43�s�6��El�=�	��V��o{�OZȣ�]2�r(�L4C�\5��������V!�U]LO=��!q����
7k�ߧ��>�����P���?�2�Z;����7N��M���d�o�a�%�.;�M�x�>A��\�G����)�XF�N"���3'^��y����7�#�4>���_���y`�O��פ�u-�Q�wZt%i���,��m���1+�G�)pr�8�q��3s����""��	��ֵ��+��S顠�ʞ��9�����;a��S&wێ2�{�+����˲BU��Uᓵ����-�R�-ci^ ��E�����%'9���:9�m$�f<xv�n-fk�����BA�ſ�*��`A^b�/�|�}kO��֖K���a��m�'ݞ�.��vRaCf��w�1Ԩ*���),T~�B1��W��^���^C�5X��Y�R�F��g��v�p����"��b��;LP��$��S�����&.`/n��oxrr��^�����-���@���T�|��C�\e�:`P���6u�r��
%	"�FYa+��^����v/�/y�C��Q��*�w�����,�g(���y/=>�\��+�50ͥt ���{����H�Q𬱿A�h�ڞc���#�D�w�$jM
�S��8 �h(�k@,��d��W�a|�
r�J
���m���[w�����Q�`�X�߻3?~��dڸ��^N$��vz�!�{�j5�C�nK�9�d��}�wH8�ګ�%?ζt4��ޖ��ݞ���CR���_u8��9[�ż�^J���>
��A(~���<�T���rў���՛J�!�^e�pVv�dL[c��t�|�B�A���g>�Gs`~�C��c3Ԭ�$qh%e%����\���"�E�kn�
gx܊�2�oG�Q|��{�Oc��1m%��2�fN����+��bM�Gx�u��^� ��S\���L̠`���R����9�	�|�I�R�!v�c�K����9�pZ���Vaͤ�����l[�#��FB�*�xN���,=.�z��*+T��j���p�S�P�Z����������W�>�!��`��|KK yv�r�RÏ�_��0���ŵ�;%펖}��v����~��V,��{V$�\ݑ��w^3�Zc_���	�C82`zM��^���U��@-ɠJt�/O'��v�W(���cU�La^�K��W�eۦ�t������=��eM:Bc;��(��F���)a	uD�a,�Q��c�0�ZwxA~[��i������v�G�ۢD0��E��E%�?ʶI�����I��z1�&G9�e�lޟX/��"aJٙ����K�Ӵ=s�
^�^rӗ:��Zw�c&�&ٷ���c��y��~b�7�!��[�
u�*�Ygh�^jen�L	+]`�� ��ށT��U�X�1e7X6:
���Ȋ�`����G�M7�}���9>�/S���)�9���Ũ0k�^�z%~/��6�*�hy�)re�Y����<�|{�myP���|8-#��q(�V�Qy��(���i�GF�(�_._DK��Ң8
xzT�Tf$����6�7��q�)�{��}3�-��t`����Q��z�Z�8��҆��-	��r�b�2����j�x�[R���
N�A_iDZ7����*��vC���G�Ё~���m���$A��7(��KP
�'"��/�Hl�AV�S��%�]V��8d�%"��[�Vߑ���x�`E��y�:��}*τm�꤄��a��o��=�u�~+�ώmo�f�-��I�Fa7��i����T��i.�D�1P��U�2�6��e\
^U�[nq���l/"3�l��0S��,B1�zm�!�&]��C���Gڭ3����Vgv��	<�m�[oN��۪D@�-/�ۛ�dxc�p��%Қ>ퟜ�]�z�]9A�T�,wgJ��`�xx߰BO���@��4:�ϊ
��TX�ЭLqZ��Y�����نRn�"@���Ӻ
~�\�cU;��8-cG��x�Y��&��s�v�t���?�^�'g[
��c���0L��z��l��g���G��BS׉<2*� �����
���	��$����.�:�7I���ĝ9���9/8��������8��NpV�MCޔbό�.���OO�U�86`�n��j�tq�)��c��ˬ�Mx��Y��+�I��tq2�D��_	b�j	�8
��u=oiU��V}�/��wZ�>C�D�aZ�m?I*��HRy��H�n�K	XC�����R�цފ�L	�t\�lLRnGxW˭��K�~$,�{��`��eu�&6�yjc���l�"�KѧE��T�M���+M�����(ze����Gb�:G��w��F�5�v��-�_�H��fARADr��FF�:0=V�J�RX	߂R	r�^���&���JQ�DK)GMl��>�;V>}CS�R�"S��X��_DiY�@�bw���ϓA~��g�r��Mm��C_%���"|:����i�����Δ��,ʑ�H�I3z�l�� /�v�1�hf�·����sa�\��!���ջ!�h�#n�%�+�[$h*���7�p&Y��:��	��ߛ~�����=�VH�@[h����t�+{˿i�����ӌO�'��}��Vb�q'km��'���ZӠ�]����[�|0�o$^u؞�k�\�L|�Ӽ&��slI�L��)IBQ�.��Z�b!\�ҊQ ��qZ�֭��k�!�8�
����i�C(/ZxYa�E�Ӫ��z#�0/R��R>��`
ՍڅF_���Q���`5#k�A�u�3,A39�����$�"��`0D�'�4;�(���
�r�߅�^��1�F֋	a�깻�4�\�صYҝA�^���E�h��6Q�w���U9ܔ���i?��y�JNl���6�f�$!�,,
bZ�I�^Ж�&�
�&Wf׸3]E)�G(�@��XS�:��[g�[F�K�K�|��֯��[��s�77
��u�[��t�O'�q���w�[!͑Ư+�FC�r����Qz��D^����<\����S���6%��3f
���|�3h�%tȯ%�Ӆۻ��X�͸Qތ1���S�E��O�1�ǐ�l�N��&��LX	y��T�B��ԑJ�-_O�����K.���j0�^[���W"�W���o�|z������_��BwQ��m̱st�v"��%�O���%>-�B{]�	ގG�C{�.�L|��S�D��*�{�y!�n������,i��J��p4R�0���P�D�8�A��_9�O�R/���Cq�U�N(%�>{��#�=
��#Q-%�4t���ʄn�ٟf8m8��zDc�����`L���14R���}]9>��)���%��d�=�Xw��v޸�<�5w��9�9���CJQ7@"J��B���� ��8z�.�K�#����j+� �\̟=B�E� �D�Ch�ƠJ�k��p:���f~�i�u�k�D�կ�Y}���O�p]�M@*�dY���+j��t�Z���c�P]@�Z��I�ƛ�_lp@;�^��M`p�B����M���L�Ф�`Y-���ҫ[N0��^��h���s�e�=���q+��p�؛&�E0�we�zz�9:�j�@��B�����$�v}���8��'��(��2d�e�3�8� ��BM�����^U'��]I���P����H7W���kK���ޢR
��q\��1wl�1��O	x��[y��S�g����k.��q#�6��h�.���8��d�l�E(<чF|r
s - �B�W2�
ɾ�&w*��;`d����B2��O�j�8ر��iϘM2��O�!D����d�ӵ�LG<(��		'��{�:�LX<{i�����In��D����(�s�Ec��uh�l�i�%k��K�t٧q�Մ�]>����T2����`�WVu]����\%���ӣY5����^� ��]���:}j���rC�2�u���5�����7Q�����j�]�X��B�6@�N�ʑŮ���|k��.n�ٲT?�(���BJSY;~��+�Mš�di<y��2>�㓱.�.��I��( G�>7�Ӕ�".~9�i�5�ঃ<��}�&#�W��E����6�����v74�����S��4�O�r��?gM�5)�|��_[6U}lB�7���_��.���(�j3�e�6��=;}F���j6̶��뺒iI�g˚/\�J�,(�Ҟ��k�?J�<q�������Z���kfϡp�7��U{kn���h������	��jx��=�^�k'�:������IS�6nl��U�I��:� ����������,���O/m�BG���M$l[��b�C!6�E��}���E�\����XRc��i:V�OAULm�_wS��r����A�j?wC�}��4Lw뚴^�����3,�|�i&2�����b���2q?�1 ��j(�&F�e1�lf��Y�}]S�)��Še��O�1St�!��>��0F�ca�G��V��n���䖙t-��A�fG�ݷk8>��h ��A)��+~�'⪰^?h&Ђ���j"�c�N&vk;���`|�q��� �r����ٸ�Y�.���5���-Z��^���tM�� �aT9�>E�g�u7{TJ*+MxO��ȍ��?� �x�&Vɘ��!��Bw?"�_����Ǣ�"�<��7�dy�n��fU֖���PE�W�-�ݾH4iH���
�/V�J���qJHNF��v�U��l�/�Y=_C.	�"ȫ�Tj���ew����q���?��@���D�xt[�N�-	U��[9��Dl��m���~K��_>3!�Ro�V��9�,"�Q�<����x�>z���m>�Ы�&y�a?��xI�;Kwcb�@w��R@�V� %D[��w�9�����x����˸~>E9�y_���D�ϙq
G1����j��+85®s���&�'W��dK$Լ
���9��<�()f&�z��#����˾f�o� 
_���ĝjWw^��2Oy�hKcV�cj��W�@.��1�L^���w����
h9?�`��0�Pv�Л~0\|X�5Z�0��=L��j)�Z�
s����gD=�#�l,�-f�f'�Z�=*#�8������$[�{S<���hk�)y��O�էlW��M��'J������۾��U|u�uU����Q�E�;,��G��P�0k�J��*�L!SH$5�-x�o���y�Ωj��堔���{>x�5E�ӹ���Iɥ�6�d�e��>R�Т�7���F���Sľ�]��A�)�#̘�M/���<�/ }�SX�n��8be��pq�*���H]i�qٌ�0Ur��OgPch�>�}�xt���s�ܤ>���q�I-���{��GDTMʆI���n([p��*rK|ù���s��>u%t�%�5v���V��_�AY�l���Cv
g�:�\��n_ȣ’w��F�Kf��\{QV���$zv���DМ�a�#;*�7�S71j���Jf�k3	ɗ���|�%���>WvK��I��d�8�
3W�L�ۍ$Č����X0��q�%�Y]]��˞gD��������J��Q�}�s��HBj2O��(��ͥD����j2G�\�18ޯk}��]*��R��Ay��M�N��e�S�Tt=.����&���y�O����C[�b�S�o]�j?�r�>��`B���i6O�kź�
�U�,�r���&!��Ld9܌�,w�x+ۑG��8Bʒ���U"�-��I��D�����A泔lJ3\x�zȇ��_W2�����J�cr�a�q����{Gx�WaC3q�����.�,b�P���ME��k�t	h��|ޖ��X�`p1���KU�#ht��C��ͨu�L�	Y_�N�G��_��<CVW^��X��IQ�p�����<͟�����$�!(���R��#�x�ͦ�A����)�U�L�r���,M�w����s��� �p���!��zG�3��MP����z�G�),�4�>K�����]�Q˜o|OUN����`+�+�%�e��VZ�Þ5��!~
mљJx�J��+�T�Z;�?�I�@3��;[�<��t��)9���Ѵ���͂��=�	�*�7���@����΄� s�6l�շ�y�tBf�/���4<ޱ��;|�!�)�v�>��.�-��=�a��.�!�*�n��^.?�v�G��f\q4�hS�������́�cᦖO</Q��cZp�.��/��B�H�4�U��F�_	pk�֢PK��%j�A��9m��/Onr�)B�H@x�L�ɗԢ�A����@��
K�=�H.����_��.Ⱦ;��}��h�s3��b8�H0��aek?�m�jb�v��c{��5,�e���ID��S�����G��5�h҅�����Σh��p^0E|=��
���F�dk��o��ܱl�g��D֪é�m�e4�f�F��3���I�nd3�S�����@�\U�O�:y<wkc���A�}>��^@������h9L�pP/s�Ծ�x�Bd�č �$�ؙ��;J�$���f�x4~q�&����&�Xֹ���8���X��d�x�(
���N�>ǀY#�d�0�qA�;i��]I�Fir*��vɔ.�
��� ��4[�P璫LX�Ca�ͧ�g��L�U����QB9���f��2��k��᫖��|�qSy~/�B�8~���DB��+3M
�h@ýݗϡ�����]_W��_�d�Xv�{�q*��i� e� ��x�.�.�C�g���"�RNC�D��l��j�6�]R��=�M}�Ǩ�Si��=�MK�>��k_�~����zk_?�����~��گ���~�a�]3������)}R�z���b_G��?��h�k��_�l�/���kq��ʯ������=�_'������������j~�B��A��i�(Y��-*��� �*��v�sj���jɵ��f�>˜f༴�׻���x��o0ģ����Z~���j
㔬KN�.�2S���\�e3�d��'n�8��~�����K�H
���
�%����5L"�7�󔗒l�xW\>1���ֽQ�}�d���5��:שCm�k>�]*�Ą��^�_䅙P�4��L�n��W�����<=6=w�k�9HV�������fV����4Ʌ�xi�j����5$�H��PF�������6�X�Z6E��
�z�aV��I-�"5J}9ڗs���in�($M��(�2+Q�xe�E���>
^�0�C�^2\8���߲�\W��A���	-Y�Ly���&e&4�l��v���"�
���%�JP5�Z���65*�3~h��ϛ�	D��P�T�r��@��t�"=��i��s6EHU��u����5!����I�uÇ���q�#_4�4�	o��"�KW�|���
O�*�p����~�"�C�9���	�詧��U��D}&+Vxδ\���u_|�,���Y��l��G���
���<���z��n1�7Uz���0��$`�΋�^����e��^��B��p��e�o[���^D�6���A��[�J��$��p�͋�,>{�<�LF�1k_�r/��e�SS�|���2ĭ&^C���\�����'�
{)����ƚ�
�^�q������H��:��9hv��`Ծ=�Q�fj����ᜊ��x�n]���T!�؟�XR{�*6� k�	�_:�S(�I����=�૜c#�?��1R�Q7�.ŴGg�af�ǚjr$�@�������?�NZ}����7�iKՄ"�}N@�nv}��rLI�����̎@` ��

A�X1sB̀����|,l��%O�$T瞿+�7j�PO]�@b�W��s��7�,
e&��Ft􏐷񨪠��j�:�C��!���!t�+��:�Q����QГ�Gaυ�E�W�+���Mp��M�����j���94*2��%���b�P%x`x+H,�r���o�����XI��؈(�M��1Ҩ[�Ȍ��8��'�_�,�)n�;��b�/&��55e����r�$��|20�t���c�ᴫ�	��=U4��ze��|�6�+o
.c�W�4��A�wl H�$*c�	S�����DL���%�y
��������P,@߳�=g��B\*���t��._��߯��]�r,��e�Y�,oj��m���|]��=�![�5����n�@�l�"�b�l.H�z�Ľ
�E�b����Ǿ�5Z����M�]/�!g2��51I�#Fc蟮�	��u���+F�{�e�H�{�;���������I�b��`j�Tf]v�q�%��ya:�h	f�eF]7O^2�ߘV�Ѱ.�f��)��Mۋ=óO� ��5`�l��~�(��Ғ�K�vr}�K�]�a �/7?�[�rw��H�h&OHA�=GI����^c����~�%�`"���b� u�4��n_��k�$�δY�{o'I8��x�V��3h���j��@kS����EJ�(�Q���q�.��=B�cvR���p|,�3�٢�x+�&�4[m 
��/Nj���+�[$s���~Y[����5�ӓ>�C�~��ICIJ��G��=�s�Yg�	G��Ú�aN��?�KK�,�2����D����
�Z��fy̑�%�Ij��y��E[f��1��𽄧��k
8>V��+Q_MO*��D�3���0�/HLb��Q�s<!-S�8[Dx��P>�%K	F��I��J�O9�U콗c�]@)��k����D�P�)ܽP)�`���k�A�V.ءl����cqL�b�u��������,�ff��h��]���w}$
�ĭ��*�;��˘[�Ƀ�׍$�,0ҽd+�d��B�d%���}��f�4�� ��;y��NmQh�ntє��R��1pk׶#U=��6A�6�؂n�ss�/�l�X�2�n�<�	����%jg���~��]�2����SHe/+�m֔�

{S��ʽp��қ�m@�`>I�U}�t+��;�� ¬:�mf␀�
:"�#b�%��a{A����uy�|��z�"u��V� UV��*��Z��	Rh*�9�ER.�(,�␌@���o�q�f��%��-�Q�@
H]|�ֱt�5��5$�����������i#|p��)AN���n�BX��O
�G��9��z��|��{ƪ�B�4�����?���k�2u�[��6�s�0+ޢa�wŕec&�Ţ��qeo�ϯ/��T�nK�����K�|��4Ht���R���]��n�^ԠR�NB;����2�(�e�ͤ�D=�8��b'�Sy[���:-�^�[��&�LgMT�y����ò��:S[ϠqB����B+����͖	��;��A�屳e��p���8���ͮ�����胺�)����TۑD���ٱnA&ü��e@�^�+/�pq���W���	X��۬�dj�_����<���M�ؼ�c�oeZ�h/���$Ki�$�J�����y&b���1G���ۆFE�N%�M�]!����z@�lN���'gcH�h/�)�7���dÊ�M~�a�Xo�'��6�=�4׶�=�<����)
����dCg7�L8���Kc��-�{�KD!�!�4ϔx��s�|r�g��Jdѐ�'a�z�M5��x���]���hG���kF.8������H�k��5���\*�ڐ��.+*B����0�v�GW�5��4�A”�-��ɲ䨼�Q~�p��.��(�|ŭA2�]`>h�/�����iAs7��y�E�7^��y##�t��aM���	M�hSB �nɴ7j�i3��s���l�}w�/�;u��z*8f4}j���k�!j������^|�.�Lr�R�JN�M7�"{P�A�w-��*�D.��A�E@�GgL�� ��dU�����=�BT���ӔG�ֈ�+�r�V[�	�g+�$���;�/�������1��v
�<���,w�
cB�ɔ�Ya+#�L1��,�e�+}ۜ%�V�G/�z��h	u��|u1��t�GZ�U��=p�)G���v(%���}P��������0� � qj�	~za/� �wGb}�٫��3�snk:h3Г�j�"��� �tK��0�p�kM�@����8�	k�WY
��J=�����ij�[{���9O��͜��K}��SGj>�DQ��I��`B^
����C$3�B1(B��m��ji�j�Y���n.��j'���5ԁw��M���]l0��v�\������2)p�p��(�$L!��
��/d����mI.����Թ�H��.ϩ���8�C���P���$�
���ު�o�)FN�K.��!�$�8T���Ԣ״���;�:qF���G��$�{Bz��V�����H)����las���Q�(���Q����,���~|f�,��B�:Up��ݍ=ӽkL�,�ۈ���}fL$7DɅ�`�����G���-[mlN�!�`�D�� ��X�Y�k#vD�+�{b'B	Enw't�=��:ǒ�3m�omʻ�!)���Uu�X�˵�
��/�|U��Dd��Xⴔ��5w�묬b�;�i��W��iW�"�l�7s�N��)c��\�8`���6��]Z������8�w!�_���-����L�����^,���jN'�]���6�?�1��&�~��a�G�PuY� ,��#
'B�}���Xv�'���Y+�.�S�*��])��q��m�z	E`5*�<
k�0P1DR;��2a�b�8K=G۶{��Y�c�����V~=���0 �m�"7.{LwJ����wP�:���:��N����5t�j���
��Ye�p�f����qdy&���C���*��쓷
c[�mM��c^��쇩rdUx;ߓ�S��"�cf�1Ç*�9k�OC�X�TS�^W���`2
%H6Mi ]��w���5�3W R�_�dWK(�"�6c�t�U��e
^B$<Us���/jnP��I����)'9����oqp8�ص����sxjHQy�_���U�MrE�������U	�i�Ї�7l'�p��,�E3���QC�K�M����T�+�@�_�{�e�D\��
ׅ.����h�;��_�I��f4z��\�+�Ⱥ����E�C���G��m�� �;N�M#�e['jc�e�<��m��h�r��.��EU�D����—���ptG���A�� &�w��gf�)f�K�uMhG�V�&�[(`�-�/Z�8�>��v�;e���
�#n?(�8B$��ټ�Q����X��X7drߋ��#$�v�KSD�}hrP��E����]��gd#m\
AG��807�nf^;�Y�����K�t擒��у��эk��*�?�J�*ύ,܂��P	,P��l�č���“xyf�y4?��8L���T|�ݼ^��u��i��l�T�{�8���۵��`�^8�j���fJ�̣J=�vCN�N�af_a�QA�&��C�����kb���)���җ�c!@wU1{2�������=Y18�5��M�to�7����ֆ��"$�A�S�*�l��6���^�c�X�.��7���;nP
#������a��3�}H[�{I
�XQA
j�ш�d�o��(�T'���x%��;7Ĝ�S3iu���
�=D�Qu<!�2��L�V	�P�zR�B���%��L���v�� �C:� s��`c�:A$�AT���mD�Z�x��˴j�'�)�Oó�
mgdI��@p ���wڟ��x�Rd=�k}m���2K��OauPɓ$���V鑨�}��+��m�@�d�bZw�Vo���S��*;��.oOg8��zs�\�A<Y��+���h�û�-c:�	0$��θt��(VĉtBe2���9ʶ�<�h��G}T�������ۥ�~�(in
�@B(�V�Zf����vm�!��S@,����n��	��ˈ��l9d�5��G/�3�]Jqś�s[��)R��}B MfBZ0^G��uEf��
K�{�ʯv��;9�L��[�9��]ÕS�`qb���dEv��u��﹦� )�Ϫ������k4$��
ڀ/����aWr`����W7G�.�`��}�j���:E>g�ҙ��~���i�^m�2�L0t�$��5Jv���"�G��;�!L� ���mSh�H�;���0)���${~��p�z����\;����2���B����%�z�9���p
#]XX�i�C�3�i�+�f	���DO��C��M;��N��n�T�<�C�̳�\F#f���lm��UӾ�GZ��r\L��u� ����.&�j`���g%q�Ӡ��bݑ�*y��3�.tS�߆��'��se =���Ao�_ej��{p��ǬUjG���
����Ί;C�2G��3?�eZTS��+vKn�C���(��e��M��&�t�6��f���>�X4�
��Z�]�������V[�ٍ�AıWoU�Qw����p6�6��sLu�#��\z�=N�y��x}-8.0Su-~�F�<����C�/s�����Y~��t�qA"XK�N��?\����`�e��P��+p�Cj ڴu��S�Um��i�4/Ї%-��/�kf�tM1��u���E�q'�f���q���&&�xzk�.��a�{���R#�.{��)K�U-�U�)jp����FC��{�Ʀ��3���q�ۻqfB��%��`H���	�]1�*���^_��1�*����ɉ�	}�!���:(��w���:j;I!V��B�].C��|�F�^�������5��k0/0�*�T
d#͕��a.���L�b�@�"��F�+0ðF�H�Ȟ�w#uܗ+�� G&G�E{�\5=�R��v�T�>�g��,T��
@5��hېj��e:[�T���NG�����<��D�"pғH�b�B4��>�^:���K��b�)|���V��-ǤOϦ��mC����-�z�!�p��s�b�l)Y���f1�z�,w�#l\@~�7s���W�糨�K�v�d���&��,� 
�
?��LC^��5|t:@v��lO�l�����m�����^�0����J�^��?l��"G�m�Za�%;H�N��<6��L=�j���v�#�����6���7����k7��jal43Ʊ�1���]]Lw�-S���Ak[��{Y{ݭ\�i>+>��=6z�R��HŹI0D<�"E��{܎N_[2��٬^���Šq8O��N!;7q�0����S���3hDvI�A���"�v�_ٽ"�qt2\��\�iP	m�T�k�k��}��q$@�q��n,u�i��6�j�k��E���%��zo�}$�M��ʔ�E�c�q�_�GW�͟aX��:�+���m@��c���A�ڍ-�4<
)��[rw�e�`Ms�8fM�����i�	=��b���D�(1������3�Ԇ���tpwՆ:��U�y��w�}�͈�ùm�4^;�G��D�Z���kg8(�e��d�;���5��SB��MΈ�M��:�d�T}u
�#
����.��J������֠�k`d(����m��L=���8�.�Ok�C�3�Y�?�\Lfec�TAئro�ovoEr5��/�o'!�dYZ��I�~li^Kx�#q`�ο#�ŵ���G��%���%�Ո���k~��8o_y��c���������
Y�[�aD7g�4}�U�줱}��ՙ�5�i~
��#,�>(�/e�(<�o�[Ȍ���sg�"i�ĵ]�x���R�%s��a���&��b�շ:\w�Ff#Sn��-6�u�MX�@�+~�DQ}%l�`׮�d�^�]gdC�TC�Se͌�G�N�0����UXߊC�B�����T�!5�dg�?=j}�.@��J���*ܙ��~���?�Q�� l�B�c���q�H�������[U>5py���D}R�Ȓy2L�#B��z�/⋍<w���
.E@��W���ٻEE��}���y�T�:���w�!ߖ濛��f�PҌ��%�Sm�Qo��L�~>M1�:z�6���6Ra�	.�E����7���%�$��O���$+�w�� ;�C�إ��M�GNj�:��Zȟ��^)��Njh�F�5�gj���l�������KT�����ە�����;M���@����l
�6^�Y��	)��"3.���T �?�E~�-C�2|��@��.�V8�*ML��a4�_��?�6���=��e0F����|�ז@G�'A�B�z1&Q`�N|�=)Jc<�f��B(�[=V'&��Ss�VN�?�A'3M�6��mh�����޹;o�[��6��/�6��]�=G��2&����&*Fc]�[�.|
0�9@�V���/j�E}o�w.�Y�]���h��4H�N�-�xP��q+e''@�@x0��U���O�'����:�����M�y:^ï9^F������J�H^b�1�9R[�%��Q�xa��\0C�+9�K��*M�9���f�׊
C�µ�^��u�V={�G��\�����-5"~�C�.$�8L���n?��Ϯ�2	l�	Gn0|����(�lKN��؟�4���`ڲ���s#����@7G�.��K��V��O;�vl�`��WD�ŸW��,$iĄ�	W�A����lt'�1��2�=�'s���]�뜐o��̬<i*8�F��j^mq�'w,咞L��O��a��
v����*�l
�<�tI����Rn@�q[�߃��Վ���/v��/h0��T�K�SF�:2��2{L�e8h�(m��ȓ4�М_�0W#�&#_ҍ���鿍3<];y��Uc#L���F�������h��|/�
?��G��'���2�J���+堰�"OX�ח�ڰ��_-�c���!�V�;_><1�h�DQ��Mb\p��zg��[$�gH��WDԁ�.[����#/��Q(k�c,�c���^��>ŭzY��xn�D�Wky�m�d8(D*�1�<�N���}�
������1<Õ-�@�:��ېtf����;�гed��S�e��w:�!קV}�>/�L��S�pɜL?��^��\��]��G�:81�do����k@&�i�����!���%��0����ub�m[Y��a��$Ifc�1e���2�`Aܼ��,�A"�;�}�=(˼c(��r
^�|��ޤ9���UD�c���������M�X�ő����D��jOz�'��t���~���^���?�h����5��� ߺ��W�j����^mY�LIZ��)̣�`�������Bs�}�k���K���$A@��JD%t���T�	�]�;�fJ�J`iWeM��2"�L�I��BAI�e�s����艿�[���XS�S�|��#|w�[��]���Ք�,�Dj�6���AWW�Sd��8t�[F$!#ܗ�Q)�x�QV�n��~��a���z��cfcp{�ӉӍy4~u*���>�BS"r,��X̵�~��ӴQ4�h���0�_^E�F�%m�T��P��Y�ޚ"��HY�_Ҧ�<�:��"����ߡ�$Yb�b�L�H�
�AB6k@ѡ+\�&�D��2���t{�ߐ���u�]p���O3A����Ƞ�
���#,�/�렙
�x8s��QrW����|=0Q#|ʗBڹ��#|g�S��v@7J�X����Ty�{�L��t�H�O]�����C��{ۜJ,���r����.�K����R�����_V�@Ґ���2ј(
PSػ�SeN��ۍ[�x���KW�l��L��>=�csx���}i
�uɊF{v3�7�ǚ1� S�9��P�`��/���W>v��}���+²�%2�O�E���p�2�=���v�=Aӱ���…o���
"Ss�Kl�)o�]!R��3�?�3�uhq?:՝����E���&�J���dwjV�� 4��bf�����!5nؖ׭�@���I�v��Gx�d�~�\c��ݿ.��̭��kV�U!�џ�y1�e��4a0���@Dz���� �y�z��&�<�n��4��N�����
�Ý@�]Sw�R�]}*��|s�a�H� OP�:�Q�%��N�㬻���B�w��M�{/�&�+��7�%�c�:Qt�WR%�.��rdf�I[������m���b��$�G�31
�h�|���olQ����7�\�jEgbħ>E�#.����Q��Fc����r�icSJT�]��~wn�,U�>8�0�<��v#t�T�N�N�W�wG���^�s; �J!�R25�&w��8�3$P�p���G��Y�'���U�I_	_�=�������q�J�jNc�DB�̋驨�k����K��i|=���js��)���{~�Y
�:_f��*��m�p��$7C����}��ש7��ϔP��𢌚���T�(1R�"���C����,w��+vhi�z����~)��F�G5��oq���V�k����̲��mk��J�3R�y�~#��	�(�q;-��<;�Xk��N�*f]�����6}BC��|�Ť	���O��ڿ^���l�KF��(ޝhIp^�L&����t&���=��k�l��*�bV�����HA팮�q�����/�� �V��P�wo�|6�����Q
�s�	��q�o�)��(����s��	���Ά1A�'�Zz����(-�B��G�����-~9�KӉ��N�U�&=�E k���'�^�,�Q��e'�w3`�4hwG��B�c�~]^���,F����x_�˻��W˻a�����້�X�+��淏ER�KI-�Q���p�p��{2T)��Yؠ���sŧ&Ԟx⫟����'�	@��jk��&��H�ڹ��:�6��Ull�l�/����>CH@YmR�ѳ�XIog-+�J�Qj^?��G�v�7�(���&n3���)`����N`X�]ꦵ�v?���M�}�{^=_�S-��C+k(�xK���jQ�E4��By"1`�E�-�7V|a"i�Y"�X
ai:��Bw��v�<3�zb#�P�E�?��:�
����t���k�a�~Z*{���gz�8y(!Y&m�gS��\0�{W���җ⻤P"�{��.�>�4)�_#�uv�c�*�<�{���g�e
�U�u��t�Rں<M���Z�y����5	$�����ۣ 9��7V���~�}P[��o>}��`U�=#G�ߚ�1Ɨ��V�9�}��S�Pl��J9���L��>1�}���|�Ef���b��p�/�%1ԫ��]����h�;�E^^ڹ�;�Ƥ<���/�m����_��K����8��v�\���/��{q���8�Ow,�It�P�l�c[`�.����^_D�c�
�~)�����[�;9aԺ�B@T��v����z�E��M��f�n#�s���E����Fp_y�h�̃��Uϫ-�Z�1~}ߌS�X�
 3 R�?( Z��_u��s�����f�(gp�����l�Pw�,g�0_@&r�VL��Y��e^��w��3Ux����ķ���‚�l�P��~<�Ɋ�'D�'`i	�xp}����%KtY.C����?!�7�il�b���w��^�7�΂/���ؘ̃�9��R�|���J������i�'hB���t�~���{����d-��`e�'.M�'�
>-��2�3��Z~z��&\	�^�Ė�+4���k�G�IF\� �}��JΜ�U�Х1�
�L'�ƹ�b��
�[�q�C�Ov�&�n�ܠi����n��L��~Jb�y���{�u��^
C��ı]eS���d���jW�����z��g��|�xV~P9��w�B���m�����@�"�[��NN�Pk83k�r�Y�������u�
����)$����Ә'��?�jXi�RI랴& ��#�O=6����\�gj�Zt8��/���05gH�MDQ����6&�SEX���E�1���Q�4�i��̇}�zH
sdo#i�8ԫ����rc״�T[2a�k?؜Bޘ���M�(e�n����Z������zepH��M��>0���|��2���*
�7a=�]-�	�ש�ҍ�,W8�o@E����O��~�eH�3�B���t�4-cGM".��M�eC��yh'փ��8+�O�Gbcs_+a�r�vv��U�UH�"�}nS>:[p��e�=б���;�Pߊ�9�韇t���#ͧ!�Ɓy4�>�A�
iѯ��Y�Y+��R��t����n�<U���~�u�Ր����m.���Jj<����c�ڛ^����_�tqt][�^���̰>�z^-�CP�sܞ4��.Pi1����ka�����X��y�S؋����(����P���8;=6H5ɴZG�����C��XckD
@����U;������R���st��*�}�m���-� �auB�mq�F��ZP2�-}U\F��Z��҈J�RN&���B�0*�_��w��I^�%ϛ�`���U��!�sFai��G�@
���5a�B����SD'��c	&�M���k��۬5����D�g�� rz?n#&��9�FAM�L�iLS%��04��s�w��J/ey):t��WT��*����V�ZJ�����㎠/�^�r#4_Kw��d��[h(Q��Qߨ�g&��PG��/	.�-v�Ж�;
QE:�K�
��`����rJII�v�7�Jz7A�¸j%U+���"�"��qr>/�A�JT�N'%��X^����J���,J��a|�~�5��R^�7�!V�E�]*6P�װ���@��u�s�:P�p�� G���Ҕ�m?���Yj�,���q�e`�l��h2�t|� K}�
x�hM)??w��<�Nr[
��/n�b[������?|��,UOa�m���T	�ޜ�J[ʟ ���C#����B�-�3j���0
��u�k2w�+�4�34fĪ�C-U��q�$�]�hX�v�M�+N��C������~d��˛;o�;s���&�$D%���O��Dݦ�=f�':��ʪ/�j�&
`��Q4����o6�W٠�Z`������۽v����	�7�V��wH�Cۍ�C���ײַ�kȸ����R vf��o�:�(^���G�@S�2����Z���}�X��G��X��q@��r�Yd,��$Q^�����왓yA��$�4�m��f��PÊ�NB;�~WI���
}W�3U�@�S|h�5�L�g���2p�F�
��_2\�#�U�Pe�:/P����Ipn����.�S�6�
�\ŝ�It�L��=s��3����O�04i�{��N�����9;��T<ܾQ�?�ef4bUeV*�W�p ��oFxo����:�n]�w�P�,i&�l:Gso}eR�tVC��P��W�,���v}�|xӬ�J�߹vVe���[�?h�gb#��PB�r�Xঋ)Dy��3oN�-�\XG�j���~�JMc?��WS?���MoM=���;���j��b�и�O��ŅsT_ Zp�#�(�G4$�۟�:/R�.�K�W���V�;�M�;�c��۵��)�yabۈ�n��f{�,;��k���vl�n9'qA�4������	�g���2�B���	տG_1�k�����V镕6�E܀R܌`��|�c���G!���5��^_����%����Ya|c���%L+hSr���r��m�	��>�Oxž��b�'����;l�@:@�W6[n�%^���"�ۋ�ր��ϳ�?A{׋P�j��V�����0�;s�U�Z� �pMuoiO5ꂯ�*g�$%\U�}
����T.��:q�����!��ө��%���x�J�ps�gDJ,�w��Q$q3�髄gL'��.Iѫe����[p����r���@��M�ۿ�Y6P
,��Z�?��L��Β��0 �W�M�GV�<�ʕj�DY���S�<5���>�j?~��)+B/�Q�CT�0��<��\��O���o���"n��ŕ5�YuW
J��LOZL$践�΃��O�"����r��S'Gd<'>�LS,�J�˯D]߯6u���:�ZDG�>���ћ9ؓ^��x��T�?�W�#�=��ɝ��N+o�W����֜��	R����1���L!6�({�P~�s���
��U�?F�/��_]���
>�փ[�#ǣ�%���˶/3��6E����������B�cr�M/<Sj����W�^��(�OV�b
6m�k�2���(Tn2�G��i]u@ĒS3�Qlہ��>aO�8m�&75[��(ȴ�
�dQ�Q�9�����ډf(/�T`�$�i?3b�T6 i�ʹ5d�F��?����ӊ�T1T&�ɋb�^_��"���:,��D��������nлgw���7�<�°�W��]V�C��-��R��3���K�F�oe0U[�݅������>D�ؔ�HC�X��b�u��m��)��1�Q���o⦙�1�͟i���y)�ῤ�SE-~y�
��.7%8���4���	ߛ?���d(܄�L�9���$�gZ��zCB��F���~F:�b4E��bpb���H_(�8�����}1�?�p�g/��]��eT�弛qir;����[4��ę��"݉���yv꽧($�KS���n�A�vn�F�W��W��2�²^��o�Nᵡ2~�
s��+n��uG��k�8�x��@��]Ȟ^���$&oK������ü7�k����/!�2�8������"�aP�b+qJ�:�~-��r�f��dq;����HUT!wb���t�
=�8U�<+���F�Zd��.@W���o�#�y9�&/����@�S�v$U��3��|���W�7��KY���T�Y�M���MT��0dT�\�m"�Tʺ%!�����h���/���:�Q��
���ζ�"?��3�����u��o�$=��9!`����%�i#u��,�����I�ѽZ����l>:���,��1yc1��ҿ���5Cj���ō�bhp6?5E
%
W�����9�1���8��~�,��15��/����b����q����yW����b�b�6Ku+B��o㎃q�(�� A�R�჊.��"���5,�m����F`WC=3�m�K�-�7�[*�J�z���s���W��
w��k��i؇p��D1�ƴBtc6��P�)���Whum�3�D�&.L`�'�/�]5�rMG۠f���P�C�6�7 ��(Վ�Yf^�ns��BaC�gq�%���2����ȑ��|5Q޳�r$M_��Kc��C��Y�Q��ox�qN��3?~6��b�?)�C!P���(z�O�Y.��,#�cw��riTE�����J4��6��VQ\�J�#n��WRDa���q�ukS��1cӅ4Je^��+j���0g<���/�Y��QUp�3�7�$�,s.<v	�KT;�﨡xA�5�fO���n��G�wj����R0{^�U���:�4�y�i([u	����%��{q�y@�*��.I�O�B��JuB=,�	=$Ȉ�b�@��=�4�|�ԡI��Y<�:�_l�>>�Ac謑L�m��Ǜi\�Іb��_Ȇ�7l���OC��I��E-K���W���U�A=��.P�=���j��x��v��	@�?�Ԓd	�׷��#Q��16�ƯVWL;ZA9�4.1^�g�I�m%o�=
-WiX,R���-a���!�ѷ@�|�;�!f�ߨ/:��|]E�����Gx�Ũ����#UR�`�P���Z��@�W��@Œ�,�xdPK�S�5QI̽O��r�VX���񑳺�ɥ��!$ކ�I�	Z٠	}E�n�%3p�8 ��:��b&�E?i��ˀ�)��F�[���𘂕�zSr#��{�����3�"k.���e)=�Ϲ�Ϫq�!LQ'3�6rh�9F�0�&�W�3�/����S�6�S��
�w��á ��m
Ѐ0u5�S$ҐC+n���ڬDC�-aMp��]�Z���m�?�~������f�t�!<B1�-��bx
b��z�m�93;,�s�i��u3�4��A�W���
�C��U���(���j�&sF<��R9�9`����9uoEw�۠�׊���G	5�M����D��O��@�&������d]G���� u�j������h�q)~r��i�/es)�����!��3�%\��DXO\�,��%�,�Ar�T���4C`��D������J���؊2�*��w�?*�?���i�|\y֐�pĊ���t�x�r<�}��ڀTFw�y���E���;��0FPR��Ԫ�N��Z�Xq��dz��VxHe��	Bd/����!��i�N���e��2D���#��j���Ĕi�0�����2Cޗ�y�
���ږqc#�{Q:��S�?��*1�`�I^q�l���5׮/_u����->ņ��m��.�Z�\&��|��f��(�Y.:G�%�7o�=��߇<C{�)3j�C�������/�������3��@VጇL�5l
�e�nP����Y@�4h=��:Ld����cC�C5.=c=~��~mm!f���M�$y���Ȯ�UTcL�'��3D@��ˍ��E��iji�P�Ҍ+:��u߅\�,{R��~,~��K�{��f���һ��r�Zӕ���ܮ�5�MN{پ�2m�����8��(���~Ek^@Ћw�Eֹ��˸|�`6x=�28�>�rn��>r
&f�&�+Ђ�s!zL*���곉:ܖ�����^���%�*�u�k�Rg���	��p1��Z)��93�|$�O�u����R�f)-�嬶�
�A��Q����d
�Kyh���i|�.d㊻��2�T�9�%h��}���Ĕ�/����%P
TB���q�oPHn�(U|~=\�̟�w�nr��@�4oW��<����AI��<F�*�-x6P�rNk�vF&����c�(k�u�y���:�*;�ݒ�35A��c9���^:k���n%��V�?(��3���2�xy_H�9��������9p&�⸳���
�v[�xnbq�1��&s5�s�`�����J:˭PYX����k �2 ^i���/{���\\
⨰�Ld�ZU*����l]�
]'�A%ak��o��
tY���s
�G�������b�X�S3�W���+�r�@�l2n���|�OŲw�i��� ߢ*��A�����e�
l��DBd���b��n�{Y����%�z�{��i}7,s�m�^�g�
Ձ]	~��\�Ȉᱱ�<�}�l�c��k���y0e��1��������{���*�`]pD���
d�|��G���qi+ͤ_��ʞ+��#A(c�ѕ��z���Qv��%��L��fשz�Zs���y�MA�K�ey%3S���_��'8=�۲(y����A_�D*��j�A]�I�j��J�b2��h���䖒^�u��*�r3��B����iS�t͗>���U��H>S��P�u��+���]�[a�8��!!��;ľt9[6��Z'����<�U�r��"]��D+��@��U�r�κ�-���C r�pz�_�k4�Qg�C_U��Lɢ4_}��(��\�!�_�u"�rT�p�b3l�:��D�_<��8f�_���yOs��53(���i�r��͢�/�%�K	��x'��d�����+R-�b�]���-Z��3�7�˛���7�F��*�7����,�w��P�,;�HO$(�t�Q�P�J**_�%��������_�W5R�K�;b�׺@@�y'�@�i�0�hؘB!�R�5�Yy*���3�9eIͽ7�_�k�~sI|�њG�6�n&���?D`��`gZ-�I��3�l]���2�V��!V� i�N�E�xh�Qm�Nr;3�߮��Sxk�!I�8^P��ʷO[�� �����؞�Ɩ� �{y�<{�=g�7�l����I�2�[Q�py��h}�wA�0�߿��ze���G�
�J�!��t���Ǹ����~-��YUX�#�RW��'��W8?9���ܨ��3/����F�ѩnC}�`�3�C�Ywg�?Z���Sgyb^�gF��
�s:#3�*6ʓj�+Z۪[�r)��}��{�7�����ύ��KYF1��D�������J`���vH��G��e�Ώ3{Gw�b�kiͦ�	�q��7|�h�n���˼�t��箟d�U{�HP�j��!�e=K����������!�F�����ل'�
)#ٵ���&�
u���X���^0�u��J���X��d�J~y_�dV�����s�HT��Fr�&<�Ż�*��sJ��k�?J@�[�E��O<�Xh��O������%�:l*`x!�ar��SW�p@�b�t�A��4R�&ǒ�u���T
�w�&ȃ�ɑ��^���{���YF����6$�U˲a�P.Abx��m3�ShA/uu�q��Z��1�0<�	�د���%DD��Ř�s�ڱC�m��x��Y��yhL
���L�?�_�4�NJ�溛�,L�Q��8�
�u�]8���Th6�ը��:��ʼ��s�k�CmŦ����;���3\�;������dZz��-��(T�W^�w��D���e?�^+�|�E�sf�I!���W��ކ簎^�	�v�(�Ǽ�b��d��oDpud���QpQ�T���{!��E��F�s���NF+�*��n(��d�EQl�3Ό�ldq2�"�rb�E�n��,:���	�GN��iOZ�ޑ��
�t�ڣ�[}	���-��T_D_N��đO��j�����{�#�\�_�'�����=i*QG��E=:K:ClA��?X�P�!���}ܮ� @r�e�Q:R���%*���>U,�S�7|Ʊ�RM��TR��裯5=�L�W`�?kv�w��uh�Ͽ�å�Z}|��}��I���8ؠ�P��>?KI*�e��%�, GO��G;Z[.��1��uޛL��g�Se�e�s5fZ����8(�)Ǵ^�ԟVi��U�f�-`���[m�J�;��a�X��	rl�u�����m�_)�ȯމq}җ�S��z���_���J9��A*Ԅ.�V�������v햠�k�M�����J�;5,���H��Ղ�/y�����
®���^���M���zG:���[�'�Ab��Sd]�Ź�yyc���e��V_�Z>�n�31;��a�;Qnz4�ӑ�L ��47P�7)T;z��h�E�gm�������E7��BAf��%���V�ʗq�V]6)9�|�ru,A)B.
�Ω�;�e�Ln!tv�{R	�B24��u�#t�K�P�`�:��5 ��@M��*���3���?�r�–/���ve�sε4���$���	�[�yT���6D�Ӊ̍�PW�@u�u@3Vo3���f`+��>�w�[uU[It���8���h��PMw�`b�Si�w,qu�"�s���f<F�RSХƛ�5ZB����S�����a��
�Wz���"Ǣ/jjp>e���
�[9�r"��(�ߦG{��VP+|g�k��-���z�>��)$=��sL�n�
����0�;Gw#�COZ��ֵ�>�0�ySI��;�B���N�sq��D0zt�v��X�mN0��ը�J�r%��1�?�lu��L�M(ql�(�A�Z�Dߓ�kL�~#̜� W�/R�=C�
�=CM{�G�d��6�H�Kʚ�b�[,���8C-��*ղ�����
/
%���b�
(��2�ڒ��+g4��󷐽�����m����W~�G錄��ꁮ)�ִ ����$��F4b�P������|5#k�W���T�����<i���M����Hlv '���l���ſ�N��׷�t	����*�W�,�GÁ��ʾLګ֯�%*��5-�$���H����R�uc ̘�lo�͞2�5�[����2�u�*}a����}�^j��.�i�~�.H��� mT�|A�y#�8�M�+���`��(c
3H�M��"냖?ۯ�k��{&U��|#�<��
�e5��x��
g�S�s���Nփ�h�6�����!n��'�T�z���uPw��^A#�����N6��[���p�@V=�l9�dl����ё�7K�;l��F|�m�u�2w��g�Ӿ�t�H��o��^3�L]t�D�)��\Y�+�W�~,��x���(�/�NZ^A��%��P��	������U�"iͶM1�T�HP��|�NN��_l��l!Z����,���,k/!��_zY��	��~CKF
�Z*�<C����;(����z�i��n�._�**��goe)u�����|�׬QQa<���zY�Ă%m����}�g~��#�P���+���Vz[�"f[l/�weˌ��`
]Y���*47
�~�
��w�4�����M�m��1ԀC�HD�dnj:�) ���,���Z�����j%��YO�a�F��΁]��͂-.�_�!=t�ɉOr��+4$"X>����k�x�
��K5����?�T�R.���P�v��o�JP��*K�%��,��ꝶa��!�������Q���9�m�_��NQ�Si��n�|&l[�t/]�~d��a})�o� �������x=o�1�s����r�o�.z�^����35x[I(�h�6��xh_��<�x����9�ΐ@��B�_�f!$���IE�;�<�>���������T\��e@��˷˪���xP�Hѫ��R��g�شL(:
jD%k7�z%c�o��7	_�+B����E@��3B��9�[�aQ/��Y����o�H`�:4͎	������D4�:�_ق����AU��}��:_5`�ao��J
��S��Z)r��C>U�d�H\�����H璞I�M�##;Q��,'
/��OȯF��
���۠�Qbni�n=�P�y� ��6:�;0>����4�Ꮖ�?Gr�
�5�obC��PO�i�U)O`�4+���=O��HZ����p��b`]pe�ߥ����[oȈZ�m���g�r!0�v�.��q�1�X��lA��;��X/^d��~�����e�AZ�3��`��4+���2�,�g�i��γ@Y�*18qf��@IS�޼�Mz�S�83a��w�͂�v�R��x<��[�q���)�gXͲ܆���T�"*n��>O5���8N�r�]w�a��w�I ���z�̱O���W0L-Qvk�H�$��55g���_hj[b7�8r���[����O�s�Ev�]%�7�t~B#v-Y��Qz��Ⱥ�~\��Q��:L�
���L,OZ������	T�$a\Dh� �eXs�2�)��"�zu��me��Ŗ]F3��7��Gё�g��>���
(Chf
Jp��@�%�=�x�,E�Y�|½~Z�d��W<<2fCgr~����zI=��~F�k5�ݨ��X��d}�7Z_&$5�.�0SPO��uw�m3��S8LW�b�B}*	'=�Pq'��t�U��UMi�r�g��I��eo�Zs��&L3�BI?��'ABQ7^;�A�x���w�|#��v
-����[ih0�T�7o�E�E%ń�㭤�A�9�'�d#� j�F`�"���^!��12�$M̢B���s|�Y�%s��J#�P������Q�h����"���^�'/)c[4�C��&7=3��ܥ�X�����/���Lw�h��/C�����mf��%HYˈ\f	��ِr[��;"��L�U@�r97�*����w�{�S+��G®��H��{8�鐦,%�̋�e7�Vf�ȳ�����
�M�l���^)����!
�Պ�?`=��t�ho�YU��LF��!���iQ�q̕�3�t��Pc�,����$Z�Q���0'�h����>��*��o��vV�ԓ��lXS�ͻ�Bu��<*i䙽��3�s!�S��9��T���d�(���HևZK_�W��lC��kZ�1�ײ~k$�n[���+P���(�y�K��ʍ�WXw+@�W);�O�H v��qHs(����R�]��ۺ�>���^NÈ���;�زM�ڐ���1)Do�t��:����r_e�<�*ؑ�(<�^WY�߮7s�_sѪ�Y5歫�s��zll�bjs�j��[�U�H�T�8���^1F�r��br�.�\�0��%����y7L݊�$���m��s���S�ڋ,�IDծI=�TO�y�]p��8�z��qo����(I�x%��~Q�14n&�J��sdS��@W:��!u���h0��V�M�����4Gi�"�'#'�bC�qƃl�� �sG�P{G�ҏx,q�kn߂�<�&<��
s��)�JY�D�wu�
SE�Ґ�>�E����4�V�[n�0x��@��I��+�O��P�ä6Pe N���q��&;��L�x���9����-W�leT�۹u�l�얹�O>�`v��=��|��r����g�%�E�������[g�;�s�܅Ug�95��&5��f�ŊW�ո
^�˗Ý)��x"vb���C
�v���Q���,\%�n�z�,zBO@�﫶��E��G���&�=D�U��zE��Ώ�A�.̘�|���%�Pk��a��*߀m����k`_� "m�)G�D�r1w�7n��B�[V�Ѐ�C�Cқc�wT#�jY�FM�wo�O׮�Odc���I����d+Ȅ��y�aY�>��D�]��.Iz���yĺŠ$'��߲t��D�s��6J>�`w�y�t�0�=���%��d�>=��vu��i��F��P��������[BI����qI��v��wO0���H87Am����C۴ע�j['%�Tsg��ٺ���'�L����Ia��]Y1t�b���6�z�y����s��x�`��-�e�t����.��\Ʊ!�a*���2�����K&ȏJ���f])��:�أ�PgI����7���A��`]�ˍ�*��%�����-����>�Zn;3.�E�qr����J��{���j�S8�1��=��\{��-6{�_쳦�׍]4#��Mt�,���H�m>x���2G���3�m��f&�5QB_�6�cN�n*0���gEm=#�:���p��
y=��/_�c�/�h@`�dЫ%V>&
�c�R�|RsEs�SNs:�%]?��jf���T�6�����X�OD�����3����,�&�tq�ښ�v�!"�L��R)p({�J��<}"��ёQH!-)�J����r��Sq�8�L��0�=�R�UT저i��v/�
K���B�)2�Ԛ�X��(��i�VU�%y�^���=�����?Pq��qno�[&�]��L�I?��wup�8~��i����l��Bp�nûͩV�%�9J��}Q�9L��`����h�V	��c�����$�/eS��F�ߧ]F�w��I��*��Y�=ک��\bp���Gp�'%��S|O-�gr��D�V���?��ߵ�����f|_�~��h %1�$�	�-�$� 
g��>�^��S-i���6X?���wJG�n�Y����nó���Y[��&�P��$[���R�x��1���l��]�����e�@�'��ή2��w4\j�EA�%z�4��+蓗it���)�l�jYv�Y� �:��W��lnp�#��)&cy)�03�E�u�U���•Z����8����q̵S��_;��}�F�{Z�*5-=g���l􁌅��J�CYE8?5����咦�T����z�;�2Xj=���r��A�����"�jw�@rGM8�5PM�߬�-���xXC�[�yp���䢟�rx	��b��N�m���*ұ��!o����z{-pL��1��:��$�c��np��Ԋ� �>��(��#�&ow�+�<�hg��ݕ��:��w�N��xe e���Ft�-y�����
�P��2)��PE`�ȧ�����_G/�`v[�#��Gb�P�I���kJB��KR
�7.:��딅ɴ>�g �O��WlBL|�_���0�C_�5;��!��
����+/���巺H͟�-�qwz�`*�SH3d��5GF��Y�8G@�����K�F/��;��(��dҝ�6G��#ɕ�i`�):
���W'�rḰ�
������!ķ[&01���������
~@�����0a�g���s���o�"�l+��	�m,�:�ւ48�����b��փ������vܗe����'�n
)
s���^���O����<�>�$,���
=��/��d'Y(8y�c6!T��.���iwJx�4��~��JpE�Թ��}E2���X�Ĩ�rH�Y��g��?Q����|U�ބ��!¸)ڙ��X�!I����i!��VsQ@�4&�y\:=A�:vO��G��k/c/v��Xl�O\�8FWմ��$Jܫ�7��b(���M�ɮ]�b��3�#:�՘�!����4ID��Y��T��ĥ���v=�^Tٟ�n&�Rj�G�e��~XT�nU<!8�r1���D��^)Y������6����W#
��w�ץ��[��ITT'����m�z�K�>z��Ѕ�J�����-0��6��2�VN�J#ĩI��<;�]e�D�g�������r0D-6V^��}���dm��(�@h�^�iM�ʢ1̱
&J}4#�n��F�����/R�
�Z�Ba��^D���̑�4>�����+).,�W'!gP"�s�7�4wE�Z�.
�5��vZe��K��Յ:$����b�;��#(�ܻ�.)v��%���4I\D�ç熳�
���ъ2��3$lt����F_����On�I'��b���Ƙe�oQ��4�o�w�*39�+
�Q��8U_�n�k�N.W3��[]��ikK��)�#ds������l��sh~@�
��J<'�l	�擝]M
G(��,t��>�&O�yV�؇.�Qݴ�ћ�
B�	f.��!A|������oI���4׵j��h�`x���1��

�f�o��A^}�Ñe�=���y#<4g��F��ՈE�I��F��C_&�U��R2f�B^�J�1ھ'��55�]�9̫�\O|j�C7�s߸�%�N��9
#t:M�Q�4$����ˎayy�rZ����_sU����������u�7�h	fn����q׬�*;�/&�5�e2a�Oՙ�KA��|3�|C��o<&�M��tNHs�r4@��ˍ������?I��[�M۵�5H^9�>n��KY�x���M��8�R_{��"�:N�EC:�<w�$��*��1��	�f���7�˜�'R��B�_�6D��:����8Ȁ;��8R�z՛��\����,��U�z�B4%��@7��p��/�k����J�
pE��K�!R]
��f��Q&�Ĕ,��M<%�+�!�~2N�ŭ|"
l^�� �>�x�����>����y��e�v0��t�x�G��F۰X��
00B�'�4��<r8*V�	2u�Cph� �s�8Ɖ���ݬ���_Oi	���E��3d_�~ťȯ�Q�+�	_��6	��x���P���p]�.�2UNN�d�ý����„�܇�t�Ȭ:��m:)�7
_��--p;�����e��WT����_ؑ��=���ZkڷžVSEj(�x����ن����D2z��xKַ\3��+��� ���l��p����j(���$�?�e���<ٟ�Di�C�싧���z=E����K%	��uND!,�'9��C��t���h�%�v��*���z�?��t/���?�ݥӌ2sh��b��ȵj��������1@�'k�nQ�ë��g>$�JB�)�z;y�aS,h�&��3v�ѷ3�6�TH��$�Rl���9�xF$��Wk<HSj^N�Ai�4?���k�CN`ȑ�9B�-�a��|^���e#����@��w��Oʯ���G�+��,�8���V��(<�|�T�WX�C�Vt�̀@��SV����e����ڀ�%.�_x�����5�3���3)�'�Wq���pP�q�d1��7՗,�Z��0��0�~+�<l4�c(b�������0E4 ^��L�P��
2�����Vx�7�b���NbQ�Z�_���ݮX)�(�U�{,�����N�V���V�L��+xX&�Z-���6ٺ�\�;1=b]P�D��o#�b,���uW���<!z�+��h�b/9�G$�j �H�O�;�����r2q.e�yԠC�0t+�Sd> 5]����ܮ�\E��ЭE|��#!
�������N5�߸�?ȏ蛛����!�t`do�y�L��zh�=4�g������9���5� �|�Ę�|���r�}��b��4�1=����P����d�2s+S�/��M����Z	c�%�ȩ_����{��.�U��7�m�G����J��_�>*ۜ*�6���9e
R��X��Fj�W�l;?J)ZS?�!cO��xC���@Q�;�IF�2�Y��s$�eR����"��C����J�E~�!=W��'K�m�"ʧ�({]b����0�+����RNi��M=���j�9ȺQU�2��W�۝
�K�/�������T�h��N<��*�f?�Y�|��}B�e����>�w�a_�F��J&�@i���9�pn�\��2�b����E�_�Б�U7��a�Wbr�k�SFmM�;mQq:�#*����1��9�u|+�T��T���1��
�=��Zw�O{	�كM�1���g�`e��-9)R*^Ѷ���%��xt��.�+�BQV�E��ќ��{#;�'�~\'
y�'g

�77~��]��Zf�@�¡B�HN���i	��%��8�'�
�a�Ce:��F*���䡭�Ҥ��7Z��©��ɂ�r�5t$|� 8³�%�[���$��\�o$g���Er�K:d�$NZOJl���g���O���4��,	^n٧
�2	�x��ܞ���tr�{��G܇w(+����HOYi�$�x��o��Bz
Qì�l�C†���|?qk��r���犵&�K����q-/=Ã��a��9Ѱ�-�<'�d&l��������=��g�&$�ő.��a�aN<^��]
٩�O"i���]XL�{1��w�7�3�5������N<u�0��n3r'�`{h��ZtZ�bt�Pscx2F݋`avۗ�������`Y�IU}�}���$�]�e��ٔ�Q��n�եX�j���P�L^�A^d֗�����8�і�UɸmS`��5����q�FOa在i�z�;;�܊����)x��hD����0�D��������X^���⊧"���'Ig(z��q>�-�uѡ��4o�F������a�Y�F���dw>����m�Ci����SONT�7�Q�	r�۳��
أ/؁��hĽs���!Ȼ/IL5��a���g~=�q���34�V]���\�.s5�Us���7q�g蝄����0h�r��/B$p�5�g��2P1��4�0��q��_��y	����3N�DbW$7�DzL��_�.�*��]�7�VNQal!Bk��8U�9��M�}G[����i6j�`찂�q��S����
D�wle�4�?�6`�E�uq���ȥ߮N?�H_�^�Z�՝r�A�T����Ѡ;�g����YwL*������z�/-#K��yaBn/��Ls�z�f��Q�Ts���˛u爏
a�[���2�n�6؍Y����0GE�����(� ���9T}�Z��O����$7������7X�h,O"�l�i����9�)[�(^I���.��\$[~X����q�.[�����:�Ċ�ƱT��k	R���'c;�0��%��.9e�O7=�>vkKc�*�V�Z�64�6e?���^Q�9+}gd6F4�s}�b�q2�Y:D�斖� ���X\�����3Z��~J��J�Z2Q\[
2�G��ᖗ
R#j�e��P�!Kca~+�ᅪ�ρG��!��f�g�m�e�N����LҖM�X2!)	jbx��뼠Ze̲�#���m��j�pS�v���y�c���"�OGn��c`�0*�?]T�~�
�Ήm,�����^B�C`���=����2A��5�-��?����$��#_3ux�k5�I;tL�󉖚�{t{d��he{ɸ�c��ê�Ds'eؘ��J�����;��]��~\�n*<�]W�u�	����hQfTM" �M
#
z�>�g�A|�z���rm z������b��'Y�	rq��$4A�c6s&S�� c�Zn�M��cN�o����1�!�Hl7������b9�& <O:j��X 쌤�|�

�t@�������!A�d1WuhL.8���0C`��(��XJO
a�T����~
��뒒YIߑ�]�6����?>c?�%I4�0,�O[}4^51�L
��~�U��ͮ�f{��|�tdj�ve6J�vR����w�tT}�kܕA�n7H:{�{U!J	�dĹϾ��<,��c�_���nY�.��7�\"����h��i��/,!��ݾ�g�Ę\�7K�}L�9h�*g#Ą	��oU�+�8a��~��#	�c1�*���Y) ��b�e�4f���aXA�I6zPg�(Vd��ߨ�=�٢E��t�j��}������<����2]#�*�c�	Z�y_��Ӑ����TJ�Z��P��px����0~-��>�}����y��R�y����>�X۬�N��Q��P_4K
�{�w>G#�9c�[��ь�N�:��]�����$6��q��h�J�zup.{�j;T���	u����6���\�|�S`�=I�L��a�����Q%G�%1�8s�VNK3L�2�tNM�s���G�S�b�_����ӣ��DE���y�g���'l�[J}
���ro���O���k�QZ���B�ӏ ��f��ULp��JD	{��P���]��~�pr��mOBi����<F8���MK<v�����F��KO�ciy�b�>I��L��"8�#��TS�(����(|:;�M�H����9�Gc@�°�w�A��;+_��]� ���\Uٌך��'o��r)b����t��V���Pj���p�)��n��A�^o��,��撘z�����̊9��rpC߸���L�����8�L�I�u��ln<&-5ȳD�H��u%�����I�&A�-�¹R���:>xӁ}�E�Ru���̈���x��M[�S�K)��/q��Y5����_f$���p��i�r
���)��O\b�!"�~�)?�	X���~����%����v?/i��M�;�^޿ɾ���ѷ�_
�u��G��S�>w�g�w~.���ߊ�t��ww�;�K�+v��w����`դ�_��S���->U3=-je>�*�������^�~0!��U�QW��E/�A��F<�sJ��}���#��0U�8�,զ�o!��^Icf�эad�Ug2ܥ��|9���֔[�jb%��!��Ã�{O:hEUL���ńPy��,�~����j/Z�
�w�>�8P�v�W��r�@�֢�jp�~�h˾e��OMڶ��(��j	SH���ZV-�Qbt!�K"��:9������-+;@�򚫢��l��<���:�́��=FbQ��5[evk�{o'}$<�!b���D;��g+On�����cِaЃa߼��Ri��35%%�t��D2r���1SP���N�4���=\c��nu�)��(V�@M��'�+��>��$���u�{�=�p9���u
S��#��8�т�D��eVa,J`���;Q��wg����L�v�m&�w[)(fo����)�����H�w�s0�c�	p��h�}0��Z�\l�Z�������JLoS�ƽ��Pp�1Wm��k�U�'��B�!�A='���q�!L6�S��$�'����6�o�;����u�-�4���]d&�_r���G��h=�B�2�� ���j=g����z�mt�AU��a���t���]u`�k2.��:dw���X��8���PK�}�g	�W�5"��%8�MH����A����c�N���`A�j��b��8�J 
�K��M�y����g`�L#�y�[�f�-�s�[�?I{�eVE�9)��Z��R-�]��|��:�|I>B�n���|ΰ�>����A����14�U���w'���������<����-.��s�v������Q0�$_�Yw���A�4b���A���4�}��{�3����R��#+j����g,B�O�]&�Cō�B���b��*2����|�hq�3U9�ݬoS1�O�����v&����HFs��T�?���ӝ;�8����<�j�$�q���f�>��'���["����4��{a|�_)�����7q7+�(b��r��
 ����S+6�ϳn��c�ТǷ�m���۸9��;CH�\1� ?X�G۟�Xu�G��J�q$�>��U����qi��Y,J�%�A�G�jn�c�b�},q���	<��bf���3�Pɛ�Ž�
��6�^�tP�E�2�q�������*�ԭ?%&x*
9TM
��^?A�0��g�i��:�A	��B���/�0f�8�'�z^��	|��"�����I�FdP��Y?dZxY�KG>�\�������3���$�Yy��_���@.��;t���{�@w��G�����4���¨jfEn'yN=OHr��b�w�֍�lDA���._)ƒ���D������[��\69��
�o!�-�Ï���б�dn�k#�;�iȜ���O'��C��WuA��U*]D�Rc^���|���9[�5�OjU�g\$o�����H@�
����i�E���
H��Z�W]��|�F�'���Ѱ*qAj;03�p�Ԇ��}�Ң�����u+��)�/���G�(L�K���UPySW�~�-�	��r���lt��'O��Q�H�Y㟔�5bHh�R���}��-
@���p�v��<�W�G���Ty�t}&��f�g9m��v��e���*��h2v&S��fB�L��{;�q����%�ϕ#�C�A^�EX;x����22�=��k/��o��*qJ��*q&�uT��x�i����,�k��0�0i��[,��R�sc��P��I���Ɗ���M^�;'�\�޲�k������Yd�Ry!xc+Lj�ږ�7��Wc�1�]�]���ae0 8�6�?̶�3�=���2�M\
`�ВLo�a)��YNQ��U}�
�������,)a׵u�~��#@Ø=A+w��HU"ɰ��h�<������"�j�/xK�
>51Wq"W7�J�Ёeϝ�Vn�����M�F��ZX��kݼ�җ��K?p[V�,���?��I��/	�d�h|�I8����ۼy~|dHI఩�8o�<��p�U�LN~����Ps��l{���Y���jy��/x�S��~�z}3v����*
٬��o7�����q^��P[0�<|�;;�=�%��Ԥ<ۡ�/���

���4WΗ�jK>��73؉Kߡ�d[Bœ�F�Z����ڋh�K!j�n�ud�փ_X�F?�Ixרv���TR3�[�K�n=���}m�J=�Я����
�x?Rof��ny�d�uF/8BևX�g��C�w�ȴ)�$�
Lr8uΏq�n���02�+䨿��_d({ѫ*���qL�*#
�i�b�G�[���v.X�W���g7����7Gc)�r"X�g>�Q��p)"d�侶k�u�pT5��<�S�Ħn�wއ�e�����7�s8V�靄�(*ǡ�ͤ.Y*�Ҏ�KT�+�c~W��Wti�,fh�=Sg�hNQ�]��D���z4'*�%�U�s��l|����8�ݛoR2�~���ZˬMxOAM�J��z7�����ѩ��j�������F>��KI��kc��Η�b�D�0[��F�U Q�R~Qp�������ʫOL�3^��rQ2�w��T�g��x�
%DnQ�qQ�Crb�~�^��l��+D�^�F�~8��|N�9o%�q�z���z&xV?{I�]�s��o�������_��$Qb:7lc�cg��1��T��k3$W�U��_Ʌ���Ċ~����㉥�N?��ێ�hy�x�i?�@�S�����X�[���rC�֞9�Z_u�.�^���7>��fշC��E���} �/~1>��zİ��P�>���*ڍ�:����A)f����ߺ��۬�]u{�X������HJce*�>�����p�i���1Z�6{�����5%�����<�Jְn����_��5��M=�t��z��{Ͽ{P�V�u	y]�*�}����U���[wQȊ�_xn+��-(�N�9~1�"���9e3�q��В�/��E^Ť�	���T���v�N����.s��E�z���+
tohȞ�p�q֎i}8���9�>��P��,-H�.?f��;-DZ>-��ۤ��	��`\��Ç<��ev>~�i3B��+b!�(U:WZ%�Ë���ݍG+Hq�<a<0�+ʯ����o�d��?LE�i�H������![�'�)�`D{;��`R�ṘE�Z�Q����_���8�|�
k�/>�˕J&�B�Q�}[�;{��N�������v{o7�6�`���,a,�վ#�uʼn��M.��Kb�^�A�T����Ou�}��e
/��[����Q��i�*��{\T�&mNe�lk���q+�d/����xI����=I�M�g~�����Y�w��t�	�&�V��,��!;���^s���8��H�Y��W�!�pYZQ����t0S�U	�J���Q��G� ���7�?�٘���R��.��M�F~��Q����#�t�MK�;���(L����Ʀ��^sݡ�����������z�t�b��a,ɦצQ�&h�-E/.�k�u�B����}e� �̿��,�<E!����n+���:�|=d�	f�8�Id~�(�JѰ�?����_�F�4��pBaF¸C�`t���^*6�2�&��su��vv�c,dQ}C?�A"������@[���/�EJ�ˑЮ!�=����ŚM/��`�i?��d�K�ݫ”=���/��\��>�������mPs��
�v,�|E�K֨9&/�-�QgZzm��ZA�(�5����0�}����`l�0�=ŹQ�<RS>/-�is�Y���[䂿"��hp+����b�2�qV4��3�#�C0+�̞�C��T�k�<�5�ט	��K�F�2���g\�G��X�wO���fXs�Bm��tR�+��S5��U��w�c���(�ݧ�M`R8�EqsCVG��BU{5}����䛒eY53�0�3�!sE"g��h}����‰��<�,�n���&e�4�53���AQ�@Fp
$N�+h�=����l���X��^#m�f���l
�jJʨ�<	�M���_U&�v6WeE.�~�	8��g�@��+��g�0�03'��36�N�I��-C,�_O�f�d]��s�;8��a��"4~��]w�=@_(J�����
��A���?�[��hS&y�q�d�Ķ�)Z�1�#����LT�d���N���<��]:���ԯ�z�~N�ۦOQ7�s���]��"�;�Ս�!���.��)���r_sw�[�^��x�}F�;���3�U@g[���<%�C�
!ky��L�YI�8^�٬Q�-ts���� �#O�ށO%��L�٨���9�Cո�&�5��f��:!"���S�ْ6ZF{�S�c&)�O�B]�e��ػ�K�W��.!�Mo5t&/t�y���]�wc�\�2�+}m����z�X�qM?�ˇW[N��t3�.�e�\���=)~���>V3�>�_��[PjI�������<y'�kѦ���ٹX��V�XdSq�?�{�������^�l�hU�^z�#�ַ뮆S�Qt8�����,>8�}��z�8�Y�^x
�f����l�[���V�l�=-����԰s=5D<բgpfq{�Yv��0���!#0�ss���O��g=y�d�…˂���|vU�× ��"��/���b��sъ���4�ղ���y;yE<�
��T�5��|� �hj�}�9G��m|W�dd���+S;��nҪg��Űw���^���5����t5�'�u�ܮ&�i���@p|����3��&�y�ϒ��Ň�0qf���3٭���D+��eh� 

��\w�/n���bP������R����F\.�SU��0�<�5�v ��k[�ϩ�t�f(	�ȭbo;b�C��gWd�ET�G�d+��ltWA�������B��gA�h��Uե�a�	Y�d�|�����ptY��e�C{)>����P
�Z�D�g���K���[�&�F&�l=Z��؎��ɖf� ��&^a;��q�\mB��j޽�v�|�d���uY8�� 4�
�g�_�_��ޣ��<�	�o�D�b!<GM �=�SW_����23��$x��PfiZ>2A������-0.H1:��^z�fn8l�+�N��'G5��~~�χ����~�~~���ԯ�dO������}�N����??m'��g������n~f�v�w��l<3�}��=�7��|���7��Y��N�z���o1��kL�t^���s��>�G��IL	튿�F�'��B��8��7�-|c��,�m�x�|���X�q�{	�JՑ����k�!N=����㞾�m�\����������;	��x<ȩ��T����L`q=C@�~+7��D��(��̺���@�@(�8�o�`��ꟈ^+��w�����k��[ba�w���,�PU���ϳv�Z�b3��ӥ��&R)&�~�t32g�^袇,	{�*�#6���
j��F���]�s�Pf[���F�_˴��˕?�PF�
f��^ԝ��d�Rz�d�*��+t�v��襭��s��D�揔0d2IPH7��pA{��V�#��^��wt�X���D"��cٿ&���1���L�)��+�����p���N~�OE�8�ݭd��/-T�-0�e��6Y�>��Q뙰�mX���-q���-Y<�/�0Q>筙��J���J%BG-�‡�a��R�K���[�Xe+�
$y��-��"1��_��(�W���IaZ�eH����s�Mĥ̈́�d�'�����/��w)P=~�I�a��)۶F݉��
�	=D��y]u�����{����D5��zl��޾{Ubc�	�e5;<z��7wv%���{?6�:tnR��;����M��=�o%x>�0���C<��4��+���ӂ+fb���1C����UP��]�J/��?	���r���+.1H�x.�f����������G�`?0-y\�n���K��Ԅ��/�rݕR��J
�hd$B�\��A��_�4�U(�?<E�ᡭ���5�bP�I�ЋV�@U2�F�>�m����
J�XhOe��L�]~���1��á}D�B���ۚ�|߶2�X��%��^�e��M�{
j�C+�_s9�iA��Ұ����e��EID�8n����'g�@iPO3Z�ֿ��vhc�͓�#"�!	�N�皤�(]�5����bt���~:LaY��9�+��ey�8˅W�x�"	�c;Np����Fr<C��J,�ϹNt��0V	HWԁ��e4��wZ�36KםHM����4|Q6�c���\�˭���ǽ�j���x�,X���
.��!'�"�a��Q�dgK�h�G+��ܩө�y5C\fj,��1�gm��Z�*�0z��4IǸ5P�J��y����%t��\��zU(6B�)$�%��{��
Ŭ��w/�O�T'e��
�G	�.�²X��TO7$��/K�6���^/�s�:�hN>�8�V�S�|}���#��*��V���RĠC�&E��dbƉ3��<g�)0�B�~�x���;1D�B�E֒>�]<Sn�B�B���
�8_�;s�dy��@K�Fp�[�BY��Ȓx�e:�Y28�Jx}BQ��-^�b�#�WEB���}֥�3:s�"�щ���h�vw	���J����Q(Hƛ�]��>��ׅ@�Wi �=��6m���LFj��gÃ)���%d�a���j8>2>�C�Ȅr
F�b�F�TB�sbO!8��v�z��p}�7o"^�mAM�e7��	��b_�6�5�~8�T��w�4�C��Pc�y�:�C��������,��n5�T�BfE��e"�tl7^�`�˚;Q�}'��W��a`����(+S�mCC+=o����.��'1���vR��r�*���.���W��~�r��c�$h�˾��r��y!o@�-�"���/yķ=s����r	םjf��	�^��}6�f�J��y��(z
����ZCpΐm��Od܊أ�k3�Ÿ��/�M�OoN�E�����h,�du�f��Y]�F?�U��M
0e�`�ֽ��įA+Y@@U�p&��	<=8��/9���o�qӝn������V|��$�T���9F`C��,���ul��b�ۋ��1��)�*I�?��'�ۖ�%�����+%��u�J��vaD�IS_�6�`�J�ѹ)��m,]���2��W��FU»FYG��ͳC�e���p9�em�k'/f�{�����h]����M��R�3I�E:��
���+&��Llg���g�Ru����z&��9����~f���5�Y�����9y����ks뒉ʜ����:øSQ���6#���\��c!2%�����S�E�����{^��}a��n�Vx�+2��"�֔��L+	PN�ռk���Rx��֠�HW�K�z6�tʦ���6ۤEW�X�DS�5y\K�6��>��T��{@(��	�����Y��&����{���+$��ad�:�F�c8�魡͘����A-?	���bEZ���U�w>�(��_�
��+v�J���0�0*
@[1�6�ެ=Z��qϷ�m����Q��]i/?a������^�Y� �ׯ������.F;:���q���*��Đ����w5n/� Rt/��+��Y��䌳d$��5�"_����|�8&(^��a���2��r~^"
J�z�s��"iZx��e�L*V;��>�1�m�Z�&_�enc���(��L\��:G�	�B�q�h
�A��Օ,"��A<�E/a�t�s���G�_�J��N=]�8=mV�%��Ԧ}�INx�����/��b����:�ݰ��hW�
�`���jݰ�fm���ك�:r�HL����=��#���X8��g�<�ԩ�z�`���&�G1�"8X'�o�0�v[A��0�R��w�u%���'-B\u� X�K����d�FTb���E�y�lL�Æ'���Sű����K��񔀭�Cy<���OR�����G�O)��=U`ߪ裛��J!�_C�M��3h�.@Y�Rs�|�	x��v�<G����%?��o|g�@��N;F4���C���/ �&,��B����������+0C��T�xo9w/��\�aM���p�c����6�!{#pΔ	Nu�0lë;M��N"����.#���Q+�]�Ǹ�4�0j�_��$�[,*փ~X��YemQZ?�pcF[�$�?��y�����L���<o��`�z�xc;��-�_B_$�GL�yuB"��l����;�~l7
>{�y�����}�ۀo`��Z/m�+	��Y�����{Ȍ�J�9����+�����#9��D�r���	�b�v�g�����`�t�3X���s��V��T�Z8��h<�z�߷���\�V��4�m��#��8YJFY�a��T�l^4��Ax��e�P��%�1��L�OG��:Ep9g�)5df�8�j�tr�m��v�F<�V�Wc���F����,�*�Vx�+4�p��$�c�R�k �bXH����X��8E���j
<u�:�i91��Eyu��p�'ᾋp0��CУ��x-����iq��r��:Ǯ��Z�v��[lw�jY�l%wޞ�~��gnBΫIab�3�睇7���
LAc�
��z��~DH��t�@��朽AYe� �'oC���V$`Lǐ�D����ZZ�(�op���T��T�<e�,�$ٳ�p�HD*��&�1�I�G߻��(�{2�eʖ]h[1=�Q��	�0x��i�ݏ��u�,)ys�$f�}�8�%1P���*��X	^�תrR®������+��O�	�Kjy�d�����1�K�R�[e0��[��Yq��&�2���2�󘻦q:��p�+sT����-6����mb6���$��#��O;�-M�&�r�J���}�����V��|)�-T!H#\�)fS�?14-�n!k*��L,ߜV�_��ħ���h�^��T&�� �7EG�}kc�k~w{�5i�2�	{u�/�bK^$�L�cP�\E�a�m!p��>�e6�@!�)�=���+�>f��D�JhJ���J/s�����
��D�ub	���J������bM���Y���-='�ux����G����'`�+љ��a�G�T+���?�T�h���_���r�i��Ui����BҠ�1$����s|���sz�����>m�����ia��R�|�Inz�ăc���R��� �D�4���M�tϘ�����A��wm��9Ф������'��%�e?��[<����jX|�n(v�i�|�}QƘLg�&z�|AW&�j͎C
�(�4���Y>�O�j��@u��b[7���d|n�ҫ�+8kD�Se�A�ʅ9yR_qI���Ƚͷ��J��2������Y�ˊ�F����ׄ3�(pP��h���y��P!�t�����:�@iWg�%$N8Š3����O�7�^�BxNEzF�Σ�s��Q"ҥ�H�%��_��ݜ<�7_��\�˟�V��/�M�{h�slJ�AWd>#
�۵�S[��W��\s`�0�p���g��lD�y�&�}��M�Z���+���߾�{'�5(�G?.�'^���ٍ��0Γ5�8�ak���eu�������#1��ۈ�R�,��\��mv�r4��X�w��Xp�P�-�(Z���a��I�{I`+�[��5�|	r��������+T��"�e�n�r�Q�C���iª��B�"�}�͓j�)��ƈ�/�/o`��#�
Z]i+�Ռ��M���s�������]'���+��v,s�Ą�õo�0�
�y<�,��f���iP��*W��je6��I�X�D"��J��6"�꥛����7�R���?�n�rऴ)�6�M$�Z�ݬ2y�lltJz
̆�P4��� !v�ŨF}G���:R��$ֿVF����gIh~��0���m����Ã�-L��ϭG_S�3z(����2�w�aL�T\���X���u� �o'H)��!��#��t��Eӯ���􆞏x�T+�����kY@��<4�R9��(C��C�Y� ̤����Pȑ��RZ`B�|��\0�y�0m~.���X�H7�����+g��%C�ĸ�`%��ϲi9=�g�}�o�s�65�b�.�PK�tᲝ0�xe���̕i�1�?t5�����T�}���t̼�Iu��m
{{o>^�Nr�ˣr)�[�V}�
�s��"X=��9)��p\���'� 'Y���`��#1ji�~0��X�����ǡ8�Fd9��q�D]�[����p/�72]�Q�O�0jª��g���k�B9x3HSҋ�����4����a�8M:g}a��W�!�'�2e�/�յS����J���]�㡕e$Y
�]F��xesl�%�2�#L���IF�g��p�#ܭP�#�'E��n�\��5j��Hp�70ͺ�C�]ߤ��I��-���7g�R&õ���l��Q�f���S�]ꦷ�,����̌��r@�<��p����D�r�DDeyVӍBO�0GH��k�i�æ�t&X��x<��}5�`9�C�>@4i�hlĩ@`��
iO+VԬ�Z���I%�����f�i���~�;�X~Qh6���	iW��/�cw��K��]�p���F횗.Q|�oS"�,Uz��B�#G���X��Y^D��5�Ʌmڸ~(zd��墈{t������y����'����r7gl���,�21��(Oф�X*�!�����(��k�]]O��C?���y��ǣ0j�ye�x��h��%{�z��w���0M��DŚ��/<�,�����u���m5Sz4~�B��maٓ�"i#���'�o5�|E��/�'ք��(w�K�d�hR�O^<���Ե{��a^LZ���:q���6?#ۛ��I��m��[������*�%ޤ|��.�"�]uq
��|�5yK��NHS1�b'��e�}��\��1w9@�F��.�sR=Xj
�F)Mb7k�����LJ��I?�_ ���7�ꃧ�9�yB>���t��X�?���̫D;jՒڳ�����`��`���|~�h�֐�d�A`�:�]]䷺%�Y8G�������88�&��tJ��0��7Mvc�PO@Z��:Dž���&��fB�8�ߒNRc_Q'~�	����910��N�wv�p>�ř�Y=d����N�5�z0?�C���G6P{FH}?��GČf�&�dP+�:����V�����\*��[ɢb�%V#̡�I�<�K��7����~�����Rl�Ʉ�e^x�)G�&ȫ��AL+>�@�񭖒v"��u$k�����I
QsQ�3
���i����f}���WY�ТG�(�}J�wU$j����4��@1qF��K�HL��(<{�!�A�RV����ߔ\Y� �y��)��`��ѝ74D`x�RS���ߨ"��J��rٌ1���HH@����Mh�C�'�4�;
�w��X�{F����޷ߘax�^Q4n�Y�u��ruA6���e
��iۈ�G9��7���X
�	z�oJE���؅/ƽ'��f�OW�wF@G�PyJ�Z��n׻�*�g���%�M���.�<x�*Ċ%��כ�"�N���;q��*^��]8M��R1'�Op�
�*�𩍙�uo͡�)JEr���Bt��`2"�B/�QhB�ߏ���vH:��8�z�I�F��/y���_&�N��u}�z��]s~K����t_'n�#�N�����?��5>b����ɪg������'O����Q���������U�~��M�~��~������~��N��'d��߿��}�_�C�{Y���/����-�}��_j��.��I���^��D��0��#��P�g����Q����������?��=�~}�|=���~~��֗����y�G�Zoö~��_��ߓ�_������?ɫ�&�߇�?���k���zJ�zs��7���On���_^����o�;#|=Z~B�d�7�M�B���i���s�ѷ����;`Ů�"��qI������/�"/6�g�a��}2QRS�
�OA�Y�$�ח�jW�j�������͔Ŭx�8��/��D��,��QA3<٬���(��.9~�LA���Ԏx�����so;@���ݓ	�IA{C^��̫�+��m��Čň��UG���؃�n�pXE��[��B��4���+Vu�u��;' ����=t}�*�G��:r��w��X&�3������O�(h`�F�=�zrW��a0E�M}�,q1��
N%��H�jΝ'�R�=������e=US���c:?�QK����`�ìl>�ݐ__�1�p���?�w��������
�ê�
�6]�� Huڪ	(�%����}bN)̆�!��/�-�o����C���ª��%NMSI��w���&�k���?R�QY��B"��$���	+L�a����;���1T�L����
2�3�޹��ڕ��� ��)�!�\�#+��5g�c�r����`��e��������T/'�|ik'��X�N%��	��ۏ<�j,�3�+����+��m���)<��<M��FqFg�N/-ͫ��4�$*(�NxT{&��n��G0'��}����`#-T���F|EC�*%������FJ�T|LZ+`E���� IYe��	`���Ku���W��İW� ��U�e�?�ui�}�A���
3���:?�T�@:�)0�(��N%nJ�	yL-�.�Q���'�U!$��>f�TI�G��74�&	�2����X��Ye��+!8�X7s�8K��SI8�[�9��ٴ�O~Y�E݀mP������E�QD;a�Y2-M����,��͕J.$���f�n���V@�F+��`�$�`��W������lG&�[يM������'z�Y�.�t�<9�[��6,��O_�[C�UR��8��>V����oY�"1��?\:+ �'�jy�
����r�����ƃX�m�V<��H�n���q*�p�1;��L��8�ҧIF	k8��[���������
C��\��L�D���/���@r�C�ё�X�9J�������D(�;d�Ձp�FZ�E2݁���m����d�b�,�-#Ls��t���|=��ڕGz�T�0zM�t0�vo����(��!xy�0�Na��(%� �5r�Wv��N�,��tq@�����ƛ�� ���\�P�o�h�i"���i�r,xMY������+�QYL��]F��m����F����no&d��C�0@��w
��,+w�t���'v��٤R�U��f�Txȣ�p
&c��S�}�6�[ԉ���/Pr�mBJ<�>�^�ɻY�_�~���$Q��@dK��mU�9�k�
�Tk�Bz�����r�Nr��	7���m��
�Z^�t=�Ϣ�s/����wJ#�mie��zYt��1��'z’�D����O��w�j�p����'�fF��L)t]�L��R�|w�ΐr����?������|D�E�x��}ry�13m �v��ltS��)s�+i$��sSe؊��7gk����ov�v��V�RgR�)̂4vkn!q7�>6�k�XMQ���w\Ũ�,�6P��
;(�9���*m1�l� ���O�(ćn�8l�ڻ5P�M��~´m]5Oe�E�h�V1�������U1���5+�g�Zt�Ik��2��
�䐜=r��2��;�R�F����v���j���T 5oJ�A"rBR�����D�!�I��0ڐ��9���C��ǫT���k`���K1�.c� �[���Lb޲�^�FpXn�H�TS��ubaG���c�Ak�
��5/m�(�weq�sMn����4/��w~G���G���1ߏ8��X?|TٴU�NS.��>s���|��I#��y���Iۦ����z�T6����Zh�J�U��}��G��C�O�#��
z*���j�F�dr��z����P5�2�f%K�DI���a��hu-7�@�+�P7�SG�=�Q�S�N"���pfWl,
ia�ގm"�)TEZwk�پh���;��n��+��<5!,+v�}�`>��X�LZ�\H�?�M}�>���lU�~�1ﳗ��Hn�]��y�bۀ�ߑ,��0��$�"v�f���/^��|,Ř�p2�I)������ȸsН��#E�z8�C�3Ó�Tb�%Mҝ�f��f
�Q����t�H�9���
FY�������l(�i-u����,T�ܟ���@`	h����'�P���1����]��`9׼�u�j��5��z�s�6b��ѝ����x��u�k��f��.�-���Po+��#-�v*C�Kx�����|�J�ظwKIfe0���"a[�����v�V��z21��XQ0��F�E�z4�����TZ4���6� ����17㉮�"�ѓ�S�&�l��ߩ��}*�E�%h��V�75_0-gN��e2-��!��a���^I��V�w[�
e�hƉt;���bN�w�x	~;O�0j��C~�{�^��4R6�������V7�&́-�(N?��|�<Q�{)mN�>H��d�R�	l p���2e@��ޔciF�*h�Io���~���[�:���Q�t��ɦ�;O��ʠi��!3�!>�S�^��[��I�&�f��0A+4,e�����0i?��Q���_1�1j�QN�<_�U^͊/o�%�����v�ʻh$����9�:<�D|8�����:�z3Fώ!������)�$ܫ�L�YZ�B�̮��?�b]㤬�i�ŗ�C>iQ�GV$S��7�=�n|��=o���kfC��	7�&�
+arR����
��T��Dׇ��87b�
��#q>?�d�O6�����Q�����3j�ׄ{������)��^��u.��B��@|Zv�<�Ϋ�c�H��O �"�O�'��j�<��'!rܜ%��.�syq�f;)3x�U7�NLH6�h���u����Äk��źH�\���%��_�j_49B%�(Ȅ��$�M36Z��8�Vm��0��C���iT��%���p�J	�ќf��	J�A�6��q��c�[�_�Oۜ��vPq���B���)����U��=BP{n����LG�.�y
��ha߰�j&���ƴ�9�Y��*��>[��z�y�z���E*bU���6A��`nNԸ/-�@mº�(�3����n��r�T���H�?�����ֻ*N���C���iJ�����I�xņ��*�:`h��%��b��P��F��P�����k�{WR�
n
q�R��6�G�q��mYR��
UZ~�X����!��.g+�m#ǟ��v�5��Lgb<W��s`�y9�%��n_��I�N�T���&4|0�l{�9Z#G���
U�.w��U�:g��I�u���~�mU8�B�?�m�dz��cY.�r�ڬqW�������є{��s��
�S�vv:�7�x ~��G����
E`�e��ylo����c��ځ��Ou&�	.a��Zɘ�&��m��׶�*;�M&�]䆫�X+�m1�?=�� *϶��rG̐�Q�0~��V��1_CV�O��,gm�*iX�d=������}�f@v@!j��@n=����g"�QFn��w��,�+MFJ��M�r>suo^�j�/��?_qzz;ݍ�����UY��:�4�a 6u�ƪ����4\9J�=S�!>�Yݺb v�/����ŷ��=�^��;m��̣.�U��̖�-/�@^Q��T���%M�)�b
WnKd�Aq	�C+a�0K��7�"��!d�8׼}E���g!�nc��^WS���E�lcˆÔ�-���X&��g��O�}S/��#,�+׺Tθ�Ѿ�xh��C;�x���a�sU(�~'�g�q���ƍϞ�b�3c��u���ħ�L�԰��G�#� J$��Z5�w3:@�����=f��K��2u�
!֊(R����!U��C
��9��ݤ���H|j�"���큋ڏB�����.�I��x1���4 �M:���nL�w�@Hx�\�|R�X����z*$�,����u5�����V�P��$�\8�c3�}�ʉ&�c������R"(���2�b��}
T��_0��$Ab��#���u_�&�V��$�/���,N�� r��Sv�^z�ɬNj۸r���qz��\���:f�Rh"9��z���S�?��CPQ�b�/�!nRO(F��7��笲�TBQ��
h���4E�m@�|�Ӆ6	[�vL�YE�u�
�d�W�Qb�ě*_�?c]2��6-�&}h��o�$�+�� 8��F�Y|J
�j����Jm�d�$bc�r��m3���v�P��G�β	em;C�Ɣ�N�&4<[�������AR�D�Fү��Uf��xK�=�<�)����T�'6U�d�E�����`xhA��2��0����������)x��6[����	m���-oخ`4��q�����}�z�Ǔ�:�����9�`ڱ�`���V�}r�����͏�Ht��*G�8�w’�Xj���:��s~Ӌ�{^r�ڙ��Q�T\IO]�/S��J�d�XN�W&����O8N�D�
>�ɖ�<�cƋ���%W�B]�O�clJW{q��8ǸQl��e�V����q��T����6g%��h�"��)A��E.�fD6�ǿ{2=sz:�DD�?8�T'EV���!� �A�b	̋ ׈��}&�
�ē�}2yj��Fh�Va�r�B,��{�
�����T7�\f;����22�����_��#>��h{��Y$�� Ƨ%;S3/��Ni����Ȉ����v��ϙ6���)���H��䩣��ң����s�K�W�����QӅ��պ��,��pje��qd&7�NC��|2E��iՉ�z��#�\����i9h|��t�g*�w�{s����4h��ۇT`6�!f�c��l4�Z��M:�'�ߋ���ď��i��{bI�8�q&���J��ۤ�(.��������3����̪�1G��"���e��Ks}��Ɇ�\_u��c�g��(�}�Vc��E���dj�:�D��j�[��s���i���]u��D�R%JT:�q�/v��䒹��8��Da�g[�ي�}�O��+%��U�$�'�k|b|�N������*���z�kit��e@�����E���B��]̭�1�����L�r��7�$���'�Sq.}gE�>>S�	�6��5��t`�Qw��,/O�^f�3NH�6���
梁�R�Om��K\񄶡y��v�Y>�����)������1O1���)=���8G݆��Y�d�E�z���S�:�T-�JW��b��cOEdC������u���#��~�A�zͥ׸���,Z�"T[)�h�`(��-��0�O��g�s��W���X_(�}ɥ0���q�mQ���\����A���C�g��*-�oȳ�av�˘J���PV7^�k=4���`N"T��}JP.�8|�VJ��if	�*}G��tO*�c�z����qꯛ��0��3���nˢ	��'1k�q7��>X������șre������ki�YN�?Ap�U<X`˲�7CF6�PD*��6i#|��b(a��	:$N����#U<`�o���j!��L��V�}��Eڌ���j%�]�d\����t1#��l�UVp�>��lѭ��J���l0���XGV������N�N\��c�׈1|X�����t]���wz�>mһ{��2�2��e��b}�Z��ΒRR
�3��"��-�
��*�=\6'����i)̺YUIr��,3���^Xk.��<E�<K���~�=�u�L��i1��F�G�����f��w�P����l
ҫ\�W��g����(��/�t��i�3�L�����+��oM���UB�_>��z�,{�ŋ<��
d%���3;>��i�+0@�:�����@=�e>�wtx����
F�7kF�=�H�Tօ!��-��3�u�am�7��!����M$>��!q��H\V/�)���0;hs�2�KC�Ғuw��R��uQ=�%�J�H.D1���tsk"�l��|�~d��bY_�m�1�#�8����\WӀsw:���#�t�J�����n�t�\c�
_�I�+Ҝ����KU�W?uY��aΠ��5�����8��vV�=V��^���FZ���$�Ԕ�-�:�7�(�l���Z2�0>j.N��H�����钆�<`��������<}��Հ�h"(�0�oƑ�DNjhDE��߇�w�HkE2Z��u
��ޮ�h�i?F&��,��] U
��?I����Pn�rU��4�{f�G�Eq�z�����p���bL�tת;A�0�c��gq9�@�T����t�Ψ�ah߅'׷G?�_�ս&��R�Y5@�}N:��xj�k��Cx;��Vv˯Ʉ��i�y��}�i�yu�4L<��-�@�0���o��F��(~�'��+'�ְ��u`ol��F���{�.���jN�f�w�2O U	_3�")	�"�W﷚7��W>*�}����'L�o��՛���@'�Žq���”tA�8},��e'Vê\X����g�ba��Z��_Oy)�^���d��DŸ�X�އ$��]JJ�J(e.��愦���U��|�I&�.�FٴpS�V����f6��K��츭xc������7P��T�O�=�����������(�>B�����͟����*�"!m:��+�����ur�ӡ�Je��:�A�����y�~1�����.sF��Y�F(�]}?+R���34q���h�g;�`a%3�D[��P����>$^J�O��?3�m�L�8��3���_�YJ��ȡ�GW�zTgs�Ys?��}���X�`v���b
l��u,'Nh��&���OK�stI��Ւ�{��2+��,����-�� �:���7��җ�z܆%H|}X�;�)0H����$��\��\�f�l������c:<5X�H,�nl�Lҧ�W�:ϥ�8���:�Ma�C:q�S6.�wC��ONv� S\p+fB�Y̑�D o��x��h�O[G� @UT����{��
���Nf��1�9Z�����8�P]�|��
�\zm����|q��
��Oi���s��x�a޸��8�Ⱦ�],�j"[؃0���P�}�bd�m�L�N����L5��Y�\�lB�����+�E�P���<�����:Z�'���XO�N�.�ϭ�-���_�?N���LF�ݠ%���vD�6��^�
+�!]O$��A�R�_,��A
���g�]-��`%#�4sTp�~�z4zC0������
�Q��%�Uxy�J�(��^i%I�{"�"�
!nI#���=���>�2�J��:�Z
�����E��"ܹ��q4Y�y�"3��$��o-]��2php����
�t�O9�b]Lj�_i�Lw"�0��1��cm!F�M�jJ���kW��Z	����q��mv< �4���mH)�2*,<��By!�l�$�r���#��h[�IFk'7��r���7��t�RMy.����dׂ[��p2�$֗�1���ZFO"����h)�#VWh�Cm�5�7�jF�Oz��A�N����0�-HI��_���=n��A��m@�����7�Y����}d�yh�ɴ�E�^�_L�v�O�{Ev�8�]ˢLY�A�x@%M����r�$�؛k��G��	\���~(��&3�\O�s}j�+5�\�������?3�69�he�*�C���*~K`Z���v�9�FDs�)�4V�]�^�o�{�����O��@*�T�#T-��Qy�Έ7��ކ*w�l0O���㎞~2�j��}U��S��������8xx��Qx���ɧz�
��HRy�#��xo��úY��P���W����YFxp����\Wxd�b��A<P����o
S��x�EǔͥD����d�򔺥�X�oh&_/�{����攷�:�4V
Kz��9id��?��,��:ق�jԄQ� �\�E�z��:,�WV5���]�z�����}|Lg���a�wfх�ɇ��ʽ��V����Z�1���c�i�z�V�ƿ�e�X�	�e����Z�Zk�Q:���;�!K]4 �ܡ��`է.�
'�(����=�"���(xTo>k47w���R˿�����)�B4��c)D-�=p��]5>nDjb��v$bnz�4�w�m4+$7u�M�
g1
2��"���u�WP
���<�W�×X�J���1�6��-��QgZj�q��>�6�z{�œ��_i�J}�� {k��qV?@�\GMҍ�h{
Ћ�X9$�ZRj��~P��ŷ�J��/N.qD�q�(��������X��.�>9��%�Cnm����mj�Ʊ�ݤ�7-/ ��Y��(Os�袏3��
�u9_������gd����]4-I��F
���_
�mXT9<�wZ�N�0�<J�gCe����J~�{�������ّ�3�-�����d+K8
�P	��7��|�e�Z�������L?���\Q��2Z�
8��R�+Qx�K�,p9N�xп|��9'�8z�!/�o��$���*�-o���ƅ�{<`[0�Mh��+v�ޘ�F�M�Lv��V���1��(83�qh{ٲ7��!��D;�yG�����l諭�@}|ۆG�k����D��y����COb$���Y��7�"�|�BC5�����S|�m<g��G�@1��0q�@��ڬv�h���`(&3m�����"����HsK������k�Lz,=��#	mk	����M�� �߭�dA[)�0��I��L��w�cRf�8�)xpJg�t��nk_��F� ��r]P�*���b��!B�X�lrPD.��*B58�U�1*�=�}2�Y�C(�=���w�P�n����:�S��h.�g��K`�u��~���E�5��4� �D�ݩ�����:_I�����I~�E�&nӏ~I�Uygn��@DV�eP��"i����E����;��&}���>�T3b�򖄱�@8;��'��5.����?�s�B�ܫ�')��s�F5y�@�酂����I��e;�Xv�
��N�L.���#ͱ��搷�m�B2'�?+�;��}�R[�Y�Y���s� �A�ޞ[ltm��lR[�;���"�_�b��?��p5TnI��ˑ�aeޚ�!F�GX���;��{���!�i��
�UrI"�W#L�=��mi�ģ�j��o�,��~����%��ո�hި�Ϳ5ѣi	�*���%����K=E�]8G�Y��9���
˦X1,4�����] ��D>�|D-�42��C�l��[���b#h�P�8��&�5Y��^�N-8��i5)�a!��_��|�T��HV�y�}w�-n/�k�%��a���\f�(��I��N�[ˏ�I��c���q6ʋ�9��]��j����Aeyt*$���VvN��8H���~�D�<���_��sy��,����6�|�?x�lkQ�+e�A��u��q{H�RӘ�2 ��n\$��9츛�@	p��a�B�h��S�^��x\�\�u�"%�C,��ϋ�D�+ߺ��{i*�b�%o�o��/���6�Z�nڨز�lEߪ�S����M_�{y ��`#�,�,iF�C�����`�9��r—��t#L9���2�f��l)`gp�]xtOa�fq׳��$��C�2ج��+�^��H���8�x&o3��51���7�Kƈޘ(��ۏ�`ËF��#a"����io���
&۬Dz��1C(�^��o��Q�=L:!�d�+|FG�����#Įٓ^j�vq�K�$(��2�"�kVn����If�9�5����5Ʋ-/��
��ڻ	�dǺ<�%)������S�}��s���k6B���!e��A�H�񓆍�L��2|�@tlK��o�"i1�?P�)�K����<��X�Ù�x�ďX�?S�J���P��W8��a�^$��܀I��`1�+OP�u�>��1���E`����,��Z�`�ꊋ 
�|�&�uܵ�[��{����%��q/�{4�u�1vZ�vca��#%�c`���F/4�!��~\��|�?'I_��ц���"i�O�H�p$�9(�'e��D�+iA4�)����S.�5��c�����m]&)����	9��͕!��DZ����n.��(�ZMwT�?k��~�S��,�rL(i:��k�2�FT������ܟ�rY�n�7��I�_�R�\�^�����?D@}���gz�)�4���,̕��w����B(���!��E^��^��Y�v�:{{H(ph�9rW�uH�0��~z�}mNj�[g2�s���'��B�&˜��]ƥƑ�W&4׫�_D�����ENw�"(z�F�q8n�
��s�g��5[��!q
_խ�kL
T��4,����L������\�C���EH�����d�ir�֨n���p���x�_
RbG��2?��ף(ض���@�j/���T�{f�خ����nW��-�;�	D���F��N�A�
.
��S��1�sD�ty���F�|31`��B�3�hd�Fv�R������[Z%�����r�Uv��!����=��{7���L%��_62�rT�2Œ��Y�v&(���A�b�����'�ż�0	P�C���-�E!� &�/ݻ��@�A�$�A)�a��s��0��[�^����K����]�	k_�G�W!���/z�4�2�؀#���a�jDY�plG���]���%��_C�$�
�ϝ��4K�m\I
�1Qr����^Ko��x�b�d������ﺻ�t�Xh�ƭ(�6j'�AL�~wB���y>H�ee�q��p��TG*�JA?C��p=�����^	���!�(�)���w	]"�UD�>��Q.sa�&|�m��k+W;�D���Ӊ�Ƚ�kFT���� 81�6���ˍ�K�A�)���yh�}_]���'�v'���;������Ĵo�A�=��JJX��/c���e�1����_E�(X�U�3�Cթ<���a)�(JQ�����Æ����f����m��6+�p�6�j��[}L1M�
�+�S;�c�i�����$��f�NF�/m�Sz�_�i��k���9.���]�s�����ҳsq���Sڷ��$S /c����|:�B�n!_����Ι�߅�F�8�o\Й	(�2��ҙ†���MO%3@~���G6]��H���E�Њ�b�k6��2o$���"�y{=��u�@��;X�;�>�ǎ���\�.�Tf1%����e$dx�r�5�zH�V�
ql�crR�3���æ@zm�.���[-��)e�~t��y����̷c_���_����|-�̙�x�+N���y}eR=4X7Țj�g�h�/�P~8���iu��<�n���ڔ�[i�pRo]S�/Dt:j���:�Jkl�s�^��f��W�O�2�&Q"� *N{����̖���?��	h����Q�sb"G��z��3��bE��iԝ��6N0���12Ы��U�6LZl	!�ZBf/�����p���k��[̛��"��g�霢!�N4MG���'�{�?��*xl���AŚ��#S�����貆��㕺r�K\��`*9_5I�Z���Y1s[iw^��v퓖LW���n}>4���;!�Bu
4�}}��~��&iP��?�}e�b��h�g�T,�X���+�{�Kp3+G_���
õ�
̸���A1��*��J��D�~ߏ�2�?�I���`��:M�>"�
Q�R�cڲ�],jņ�r4P�Y�VB�t]�`�y�煐z)1^�ɧ��r=w��C�����=&��e�� �~"j;�x������2�?���d򹶗&#���N�
o�W��Œ�,�El>��-�)��t�*y�05��V��m��	��%g&�d��b���~��:4�H*2�GB�Q-b.螀7D��lB׷t[�a�#^?��Y�>h����Q��VEߋ����M�$��OJ�v�v���fQO�w���YF�~<�Eo)`Mx�@�����n2��v�Ri�Y��{#��;Mƫy=�d�Z�c�P.{?(���Vev����p��內�c�.�HhnQ�Kh��үK_d��u�k�wp�3,�:����r���B�ޚ�t����>bb'����I��T�Bd������y	A-]$�k������[�9ZO����X�gvr&�Ͱ��%W���	}ݑ�9S\f�v�Lk�JÜ��Ww����rb��tU�T��{�W?~�`�#ޥ�����‡�_%����G@���<��_�!����<ݍ�2���SS�Z�I��ߞ�Zr
��z�i	��=��=P��*0<����� ,9���J�NR��4�6nb�UI�BQ�VCb���l)�@���˚�4`��k���udp�C�R��2t�z-��vLe��<SF��e ���'�DX~�>�z@�g�禲@�~�t���	�u=ް$�ܳ�Ee@L�>eʪ}1|zH/��vv�{ ϥg��r_kq��F;��ȿn�]�̒6��ѿ�<^���J-B���)�$�c�)��W%�Vm�S�����xr_�2׾��{M�U{$j�V6��-��<��� 3ɯ�ܲ��C���av�)T$P`�{`vԏ/�/7��d�I�.�U ����
���Ô��P0o=~�L����̙	+��ҁ�"Q��,�6�{���g!E��1(�6ӄ�Z��2�?�N����t��_����( �eg"}'N�Q��{���=�2�1��昬5;�p*_0G��ڹ�!#W��'���D������zD�թ���R�I�d/�A�>��� ����
ZC��-qs�K*�}un�t_�k�CN��l������b�P��ɐ1����0	���p��P֧� �l:;���и�������c�2����6,�Ml�ly�P82���n���n�pn>�'6�|qb)�$K��˛c7&-�6��v��9�S�'�5��xT�r�etc�f�=��#����~�%�%'�����1��k�,LNk-�*#g2�N�S0�(s�ѡ����LJ[0Ԝ�
.�z �*-�0�h��MT�ܯ�!%�g=�K�n^F)r�{Ң���ԝ�-�00�B�刏5�O�3�D=S_��.�si�
�0x��mC����rX�"|�� ��~��Ȅ�k���0\dʺ*��^y��t�;���i(��'�Ƌ�����b/R�AmS/=,��(‚|^:3��}�k��j��zW�[c^��/C"�6�e K��o��$�Q ����\
��&I&�V[�����?�Ry!
Ul���`3�����y���2,�q_A��^.��1��*-ma��>Wi˜vzb�2��s�*���8�%<�B�3d)��mM_�F�by�q��2&ڵ����ܬ�
����]���c�Nk�I.��b+�
����dwCky
!'�3��䷬��Fm�"���
Ƽ���c���^n�8>�
.��P�u���F��S���3�r_?~ �E�S�<�u
μ�K�8�RS����-D���-�ot`ϡ�]��yY�i���r��$��z��d�{ʮM'+i�g��!��wް#�2����9@#��(���g�5�v^ֻ��ׯ_�='ЩQK�r��
�>W�G�&0P21ǀ_௦邋��1�7jE�j�"������!x�s�4�7�~
y�:�K3l����P��v�48�n�c�_��$Af}z�Nv8S\f��m����<>�������H2';�My����6��Q�Z#�����(�
"�g'��b��q?�vt��v�!QlV��a����h����z��SI�>�
h�s��Е̄��9��0lR�{�U�Ӆ��֣Q�5|�6$[��E��H?�b6"
�@�1��l�]�>��)<�,Φ\�jv
sR�p�<z���Qv�(�;/+b@�m1{R�w�&N�.��'b
2j2f\Ph4Ơ6�)����h6a`��b����`��t羟iS�-�s�}~=����t<���݋濕j�7q����{5аkS���dO� �S���]�TV�i�����dky����n�p��f���n'��b�9Y.9�׍�>+��F�V��n�g��c�WY�‹jO���HY.�����b�;�����Y�ŋ�֛�P�4u�wf�ȵ�b+���\;[�MA4pl���z���Z�Y�Ӗ&�A�DY �a�lzN��^|�������oGy$���қDf;��_�鶆<�h R^�6��l����+��Xw�-;~IGB�F��:�"���*N�atRqt2xU�|��9Q�NQ�P���{ǜ��7���e!)��a�U��9�}�1�W��sLg|�t�Y��A�/q���
�Z��b���9��q!���n�@>�ۓ�Y1� dˆ�
;�Z�d�/q�ENJ/A違LW&��'s3V.�Ƚɓd�W��3*}+�R_��<�R{��(1k��a�l�ھy@�C`CkѤ�U����t-��ٱ͌}?�`Q��=yU�=I2�ðh@��?�9��F�q6��?H��,�.���J�2zH����冊�s���'�N��1��7���ꅡl&��l	�j�n���V	CٱJ	��Z���������z�}!xZ؊&���OV{�0���m��ot�M�ep癷���!���g֞�D4�~}��=�$��~摟$m7�3+���Z���.�7v�4 Ua>K�i�5���#K�:�A\G����ź0�s��@�j����R��O�����"ZV��1�n2�t���(2�H=�U�O3�NKXs�e0o��]��UV*ؕ1�Q,�qi֙'\`Xs%���y5�?�3?���#c+P�7G�TF�B��+u~�[���/׷�&�1IE��ϙ
;����;�lc!x9�OI�$	��0��߽6���~��/�?��6�ptB\!� /��}�N�Aš����)۫~`[�
���be$	~s�ᶦ��,O��,�9�B��1����R�mCW��Fr!�����]���+s�Ƙ�f�(�5��`ڈ�$l_�O,xp�1|�P��҅�/5M���?y�/Qo4��Bq�u#j����}�߮Ҝ�t����[?��fs�����2��3Q&a�����#�\�4FBd��M~�
+�P<-8��X�]��]r�i���ޱ�"B��I��J
�l�9�m݇o�B
k��f�X�>>os�����Ǯ�Z�!w�,
���Zi���p~&E�H+k��Uo�op�p$+z�>�g�F�
@���R��#����&b	Z���X6/g����
��,�x��9j0ޛ�d�;Z�%{K����w�<	��$(������{�)�~47)�u|/0�k�,~w�z��n�M�7櫯��4���)���Ӿ�,"7*��%s��ic��j�=Ť��g$yEk�"����͑U�u�ܺ�8��Ha^��2�V۱,"�۝Pl�#���oE�(" �g.�$r�%�<%���S���������;��x���
�7�	O�V�0kB'�t3�;��~��
<���%|4�E�qs��g�����σ,���>��H�Z�bT
9�͌�(�M�4��YלO���� ���h��V�B�8�\X�VE8?�1��K1$sj��F[q��c�i#��} ��`~��s�HS��^v���uu&�{;��M7j�r�n'�e}��>��U��d���Cr*pM���`�Pd�w�Q�Y��G�����d
��O�`��6)�,er�n��6"1"e]�]�b�6�pd�0�����	�xe -d_���3���c���_��
{�y��ƛ0�o(����iF:��'�%L(���؊^}�;H�	�2�65��f�_�\R]�v�.�q���	�k9���p,>����{ˍ���,=��D��8T"����^ˤ.$Y~+�<ʲ�j3�b5ALx�$��ݣ#�!o=SGn���KA�.b����3�9�K�I�H�n�P)=��l����[�zMoQ	�\2�7�i�z�wfTMI���_F�I@q|5QfDtd/��]2M������;�l�Ιh��S�a,ɤ
+�&���D�W�+أ�utBԼ�΂��@4�|V�1��'Z�q����g�"?�M�$$��S�P.h�/+��~�
���5�7F(�7��0ѓ�N��-�3�W���F�	�DDS,P|p.\X����X%�R�Nz�2hJ��UBAxA� �P*������Kj�1��m�Ki�
��[})��!�`�H<��]�ʊ%�y��-i�cB`��=�5Vq?�|H4���Y���"��.x�:|�����l/��`fˢa1��L��8�5B�[��m�S���çS0��Y�!� �pB��T�
x�����Mfa��u��)r%_G�f�)�؛�?ye2R#E;��yD��i�QwN�s���T����8�i�0�|� �4�!U�	a��`��LN�Dh���a����;�W�����c�m��s1mR�|փZ�`��)�p��Y[J��&_�7\U��wõ�u?�.33Ī{��!Y��e��8^���/���Wl�kU8=��P���"�I�
Ec��*xL�?؏��8t<�R��ڡ�Y�#	�%cI�������%��xԔ[�O]v����#a�X�F�N؝uDV~��n�}Y�`��>QTw� �M�IѕAƝ�IlR!0L��J�~c��f���V���2��)5K���92{���Kzؘ��q�Aͳ$I�9U�.�whˢ8+�䓾Ery��G�i��yٷ�I{�a�)p���T�:ASC�x�d ?���{G�/k�SlL%�,�U�ݽ��(1%׿\M�;*,���c3�6��ά��!�Z�וpل="d/���~-p7����Ổ��0����`������j�3���Ł�	d��;Ӝƻ7><��i�zN[��*z�2~�%��7��н�|�]�n8��{����`!��~q�”E��V���k���UF~���[���;'����Z+6/���@��Mo���Vj�<BUe�xZM���S��Z�	1B�hޏ��˜�aPW�w�0�<����
�/ϝ_�P*re���R}�*��`��-����Ƴ���YB�…9�
�w�so��w�^�"^�;5,�>�(׾��a��n���˧�k*��A題�c��U�Q�}X��@-�R�ۄ��ٛ��3NY+�N�1�#�	�U*j.g�.Ah�+�.�]Z~,�!lG�S�X���n��|S���@�k��H��&{pi�|j3}���z����(�8^	
�BX���N�_���"�Okx�Q�4��f�~�ܖ(n�J�D���2�z�Ur&�c�_]��GY��n(�mdW�xOTb�7��p����i�
�_=*�P�<�eU��O�7#�F��Źz����6��9�q��W�,d��Q�r~`z�΁�I�[�x��<E|�7>���^�8w�m�F���j�mI
���#���}�Œ���P�Y�)B�j�Qt��yN���U����5��"�Y"�W�e�Kx�8�$1�HY�)�U⌇�Z�9x-C���$r�U�%/�߰ڼ�f�_J��&��Ux�5y��C�&k�-B�~��a��Vq��M�؛�{�d��L7��a�N R�@HP���2̠��*(�ZSB����'8�:��K���4a�8�]ç=��we4���D��C�zl�-Z��!�Ͱ�T�_	�O��d�����w��*���\4�4���Yp���y^�-e&�q�j�ڛgx��h��0�vs��Wߎ�+�7v9������@A�,�^��Rci�N��a�b���L�}�Vm8��>X�a��4���>��X��F�Ϯ������#��B/�V�0se����&k�3���p�F���B��f���0>�ߊ��r��l��5��_QhH��0N��9�!_sjq��U��/�L�-V ɟ�8���C_�B{&ϫ@\oZ���"�{��+�!����d-�1��߻�������?c�7��x����3���y�Y3�}�21�
�e&*���H�U�3~�t������-�dA�]y��	�{���Gq�ݐ���٘�]�	�jp%����C��K�xWN���*�ow��N"9��
�2�+)�v6~U^��jtfs�L�>�ם��a��>-���E&䆅��I��ld�`�"���V�t�xFQ��ܥy�!�s�E��=7�y&�}ii���NR�@=4 $8��\E� �d��&8��ΐޤ�}`
e��1�sge��`�7�3,���\���ŀ�bU�D����V�0��|��9ӎ�Ǟ7�;�_�v�dݫ+�
�ƘD��������\���\r�GJꍱb��>7ߧ>������J�g �4{]9��iL��X�Q"t[W�dk��8�|"���_	����C��Vq�LL��*<���B>����*c�(�!e_*�'Z�41ݠѭ�����!U�=�ojW0."(�n!�>��C@�w/�)A`�aH<�F^���	_��F)ĔV7�S^���]$����^6"e]�.f�n�3.�|A��*y�gخ��ʹ"&��Pm��y
Z��_ ��%!n��<`�,�~xؔ�|���UN��!fo�k��
�8�O����#d�^q�;���_xه�>����!6�9���;]������,+O���֚�k/f�o'�ѳCg:�	S?��[W �����{I@��;.���A1x�({�߇�C5u����_�"�h�-M���)ϯ�n��tj�?��r�q��de���&�)߶屃���7>l�l���������Z'U��
�}����pS�����{�X'��A�������tտ�m�X<�h�H�'���ކ�q`������ �k���⨼�������^�ҟϟ�)ru��
��-(��@J.
A�����]���m9}���:=���2I���@�2���Q�T���L�ր"yim]/�����uf0������`�1Y��G>��';Er��s�ȯ��R�c](��+*��[��\�	fl|�a'�P[+�|���	�/�:g>��՟�xP��`�'6^h���#3i^ٔ�^
�z[|�/��������sb���H��wNh��4C����&�vA�5	0e���P�ҳD�>(����p
�Om�@��H�V&Ҷ��.��i(����!��>K��KW��Z�TV�J�JⓞOPV�@�I+�W��K��t�w<����R�	�iE���+�Gz	R����:Y����2l���Y�&��ȭkt��N�VL�ZWK�s%�b,�BF��f�b̵�r^v��#�*c��\ds:){��C�o�Z��S�U�ӂ?�îA�Û5�ϕ�*��`A�H|(1[��F�F�~�Lㄥ#�__vI{�
9��C�L�pū��!�A�����e�O������BH��Ҕ��D�u���9�8���<,7�)��굢6�YSA��Їi�̎bK���o�Cc����n�@���!�G�l{�i��(܈�1foI�~S,�2qi����ǟ�2����  �dqRYF�en0S��i������/M�m,��'���E�u�o<m�o����*���E�mo3P�*�UˡWx@����쫇�����˱F�^����[�,b�������d;׸���|ɬ��ҷaRs�}?�(�{+�a�9�dp�06h�݄<����A���B���u�* _Dq�l���M�Bz�,b�`�!��\�Ŵ�.��ʹ22|�H�'m�>d��+k)��7�0�]��a|���,
���;ۂ�	��J�}8P��{7�֘�"2Ѐt���D�;B�1��@#��I���'���� �����9�7*B��U�jb���>	s����te�3�^�_��(l3���
���{tpO@��_'��E�ǒ�䆌��-�"�jϏH[SO��c�9�J�"�r���5���u����\#�9Wo��f��V?��IhFKt~wH�V?T)��қ 0�����0!Q	9',��A�:9���R��_�<[ׁZ�3F��)�iN�Fy�w<��d��*	��~�&š�q˩�9#ԡf��&|㊑�������Ո@ro��:0�qK��|)
y6�|us��/)Y
�wb($T�������v�L�1��k]9�y^���و�ze��ˁ�v+�=~��t��xj���g_�|�c#i�\�j�\*`�9�"^i�����ҙjg+�}c�2�l��{6W��?�VL��������ľ�\���w>���]q��AX����~��w��#�_\�u�q�{���лdRh�OitY�h�ÓB��8	��.=a���V0GK�I��a�\v�o3e�"�k�
7�ĿŞ��)=�x/�����>h�x���J^]���C�jwI�u̙I����T&i2Hn�3�V�bX6f�sdB��x��utkch��G�'�lj�oe�S�$�}�}W��Br*�I�7�_�����B
W$�����V�.��CG�#�c���?�jͦ��<1��͛{����qe�p�s�T�K��R�'��&;�p�0��v^?�1���<����᳒=gx[�^y�E�-|h���v,d��A��y����:�>~z$˲r��r�)��r����M�a�sT��<��J����dB�Pw�`zP*�>~�`�:��]��j��H��Z��*t��^���q@p\�F���
��{q��8^J_�Gy)�ׁ���)�
����ʱt��d���*�^k���z�f~ņ^?NA������&#�'���,�9���'H����%��q�xa��b�Ǧ�ط���a^TG5S����|�o��
�MI
>�a���T:���4e�;l����Һ|�Q�Tȉ}s,�H�]�s+���d�5�MS7��<��6��Y�mօ!���O�q!e��B���o->[�k*r�K*�M�4�i�-�Zrf�e"�'��%4"�&41�*�,"���#|.|�n������x�q�Ul���u#d�mT�XZ�d�¾��g!��|�+ց����g�y�g҆F]�Q��
s�t@��Gxb�>�J�q�������bc+��@��B!��%���W݌'}F�t?�O�fD0��hOa؋LQyw������ݴ<'�W�r6���c�l�50.�_T.�U��Q�:�jh��V\
:���}&�	�~	8�/��21ed~�?ą���Ǜ%w^zB%���!���乁z�}|�K~9Xݨh���}��u{A�+S[9`����� .O��`ר���;EV�HpF~r�M��Ͳ�f �@R:���0����9�9�C����h|b��w�zvb��T)�g���!��p ���;(�?�V�nG
�B�:�zl��6}��b�t�^�۰��`O���4Y�&py@�,��oR���+G�X�-�<Kp�R�u!ʄ�A>�b�7B�Tx��iO��	�TyX����la���r��9�p�J('l�y�*�c�y�7`�K�+B�~�T ��R��z;�
��!�t��Y�:���gim��x\>�>�9{�+E�{Wu�%�!T�.�!�L�	�W(��(+�_=��3�qO����A�r��^�h��{���Y|�t��=��`I�T ��Y �X���3��"��[�HG�ͫ�tΛF����"�`ʏW�S����('Yئd65�q���Vt9�_��\6R���zX������e�R�gYB�
�漇:}�)ў,�¦<X�k�k1%~�0���߮�ܯ��jSj�4��!��P_�+�Ċ�1�P�$�p��NaxR��O�=�t|L�4e��oXf:`db��}`Į��
�t{����ץ.�_8m�@�~�ݒ�L�xL�s����	y�
G��J�λ,��q�ZJ��%���e�&�ҷ��S��t�����$ً;��[���|m'�Qz+�PM�(��AW:}G�nTcI�8a^!�}�����[�������M�HXʒ�J\�X֞�*	���(�>�~���<}YYv5��s�8-Ί��݌��&K�Y�6MF�'Dž�� #���xJ9�}��ra�H�CbvT#���O�ؒ�Bg�sw�/���b��Ml3�h��,�����N6L�Fl�~�n��ń�����0K�dQ`�������T\�LnF�I��<��^.w��}]��4��+�dʍ 0g��� �	cKZfB�d�`��/d�/4�F�(�6���0�,�e�M�����,�3�M����;�4xg�"BR�#�x�Mk���V)��<ޞH��_(��:kKg�l��N��I��0��1��礪-kg�<tG,l�dQ�ܟ&�r�K�
�C�v<U�b������k��P���H
@��ޛ(��탍�:�z�1��o���l��);�{�^�m��T����0����DH� Ch��A��y�X9$R�r̚���e�?C����]іJ��񳗏�<vq��
�/���
dӃ��պy��1��_�~�l���>���Ս�7��Z�r�٨�$�?&���h^��O~�T��Z��.i2$�+)8�F�vSӐ08"DI)��~����E�?F��7�N�V��T�2�umQ�����@�2$H�
5N���X���C.Wn�u����r)�feX���8�ca��{r䶛�/g��ި�	��4����8)��a�F?�	
�#������tA��Z�
�@�^��.I"1u���f]#�g��}�W��B�����2��
urQ�ʰ��D����s��X`(G�� FY�����D�w�0�����`�ժ0�t�v���� P��~,�n,�{�O�ִU�R"��	dή��;�`��[;�Y���2��[�?��-�d�k���`�D��bƓ��v��5�y#C�V�.�a�����L�iCѲF��eG�l�%f���Y�Ìdcag?z����`	'�f"J�k�9��_��X��1��sB6�9�Fܜ��9���!i�����e�&�ƶt�S�۞�C���@vN���bŽ@b�
9"4�?aݑ�|q�"�L���xl�շp�e֋쉺����#�6R�"ϝ
���a�Pj0�v�N�i��}v�Io�� �VT�:A�p�
A�9�9�����#��,(�u-�~������aϟ��'2��Q�zAK&�W���W[�I3lL�}��V)��Hy��@���T����EN��M�U�u~�2g��{C����eT÷ML��h�&��R^>ӍH���Ovr%Ys����{��i���K�� �Fbp��, �!^��#�ӹ6TC�)�I�;!��Ƞ˷׵ǀi���ELf����J�-Z9W�N
H3���"$g[3[���~A�BjbvEP�?mQ"nq-���
p+���D��aɗ{��,�%�{���*�%P�
#�"$k(�so^���$u�қ:�9�n�T����Z��d�y�[R�cX�Sق/{F{�絖�"����^vu�Yj�<$�����7u�z���.,����QKrK�X�N���
���rl�.+�R�@}��ɀ�)�p���۽��-�=3��y�E
"�Q�ߐ
�(gy�c��2��>�+c���$Lи���4�XmzӴ��22�,��q�
��:kc��E������3wM�'~?��>��ዎ^����y6�d�L:��F����ex�]&�2
=�ݬ9�h��f9�Rl�zS�ĉ��&����$�':�s���aM��\��D%�
C��Y
�ଛ�(����.�Q�����M2~3��m��G+p�#A(h�1�"�#Lf����%�ʀh��,�6۞u�	
r}m�D00j�(�@�7i��x���\w�"S�r<�d��S�muk%]x:��e[NC��z{���p�)|V��J$%c���G��u�	��ܣr�5"�u�҈���I�h�����2j^O{�t�u��lʨ�VU�%|A_}�
�u�(����g
%
���^��^@s�0����B#�F����O��d}�s7A��	��!�%_�D˥��X���ā���`R���G��j-�%�9�O�bi�6
\���Jsn��*�C,� KF�ߧ*���HTx���"��giA�C���Z�v��6I�����b����F����`M��9�W�زH�oz�“�����A�4��;�Y�F�����uBz���KQ����
�m�>�6��}��n� l�fLF,al���t��Eb�~;�՗�&C����ؼ�����4�qD�]e�m1WB=;s��-�~�q-c-��z8�a�E)�~�I�^m�k&��F���`0��qYKɐf��=��{��J�Ei�w3�&�P|2s�"~^��l�%��4=��z���G�k�sx�b(������K��R�Z>�zl��=t�o
����3�s3�*V��m�*q(���~��� w.��Y��M�t�{��'n�@p_/��%+�m�0K���sze52Ym�Bd&�)B֓��}��Uē�a�I�9i���~+�%�A0�.�tĆ;#�CD,_UuAc.�;�b+���
Q^�uԐ�Ep��i�eU�k6����c��sF+_hw�ATk��|d�wؒ���Af2��CMs=�%�hK'�؋�r
Ô2V~P���`2����g
��,���Y�@�����hNT���u‘CQ�s���j��3�';�,�~�G8�|��1�H1`�E����I�u,	��)5Kg��3�!��qS������Bh�m�dꅽ=U��K��TPG�k�՜�Tx���o�#��P�K�\B��N����اȉ��9|�:����<=�	�'p��֝n�Q�AJ�U�
�;'�2��UI��wښv��M�Ph�Q���'��X���.g�ֱ>�W�Nj-�Cp~���9�/
b@j2�ݥ#�.���c������T�4
�jtS��I*�s0�3X��4��������˭��z>�b�j;#A�������m'`Ë��:%�`����'KdQ��ne�"˴�J1݂JV�ǒb<~L�9ys�E���Š�c���a��J6�����F2��F��aƾ��|8pX��P�JŰ�<�G��Xt��Xk14p�^�u��awJNHy������%H���ژN���������gj�g9*ߏ�7]�>��!g%FY�`2b�(6�����]3�	���^��:]�/�����jq�q��D;�W�<1���v%�g�dO��Dž`�D���u�)E=�d�"}�$�F���T��n��莋��dk�'=e�����R��j�k��cʐ��}Xx3p~�,�"^mC(��Ǡ/�k����(�lr��ܮ�T��4��\sv�I�
�B�>v��8��Y�����.X�u�&���~H�BF���ݼ��:�}'{I����ꣅa&Q0^>��~tF�`��o��ha�1L{v������!l� J���T���Dybq��}-�Bd��z�7�UV�n��W+9�8*ݲ'�
����!W<���C�iϔxHfg[��zU`��P���f�+��FƸ��iy�a+Wn��Z�BN4zD�Q��E���.K&W�➷
�
ʱ?W��֎��}�w�C�%��B���*�a��8��"�}|i`�A�M�5�߼�l,��G�_p��$��Z���I����)d�,���;I57��J�M�$G��"P�&�� ���+X��W�j�y^���v��A\ ��k��N3i��utU�a��-���m�b�3P��#��^nV���O�T,&MM�!7�[Z�Ȉ;�j��
��&��.{>��E1�����'�(�&>��І�
����q�1�B�ٰN�����SZ`D�*0<V�ʡ.�D�k��\j�o�#H�DΛZ�S\<�<���k1fI(
&��?�F;
@}Dբ�w@�sNH���Coh����0`���/yɠ͹��?Q�wcBSd�d�}�8S��D�By�yYI��U9���:jn�0뾶-y�3�@-p]WŔ,�#�Ĥ��UDa�\��k���)kq:e�M�
�F��X��l���;`������
j�,ͯI7����O�fߠ8��2�)7r27�*�4U���&vK$�e�
������[���x��%?���o�p�C�["�Iw]�k��D��+�G�������w�Ul*ڗ�h��\6^v}]������>�}�<���୓�'��һL��-�z���#E�[��y##m��P�c|@���V����1�:M�@~Gԓ}�����.'<�(P�#��΄a!E:Vj���3Ro��&�F	H{�)A/���
.�+e���4B�YK��+�>�p�*���`�Zx y�}gu�fh"�`y֛�zt�)q#�}ӚU>s��G!�d8��kPN�T��� ����G}�:����UJ�D��43�Һ��Wc�$,�^�=sj�Kl.�H7H�bt�]{��/��8ͤ�����2l��~����g��;�r8��ep}�>�Ҕs��]�f�|QV�����G��<v�N��
iȕ����@j�^�.ֻ�����4l)5���rpֆ�`��q;c+{�����9�HMV��B�h���J�G��v~���0o��=x���_�֟9������P���y\/?o*G�Q��-ȋ[�]��J�A�:E��=m@c�\�`@��r��͡� y�#��*}���%��҆�
�E�%��$�Ԕ`�t��[�����!��}�5:q����,{%n��O�D>U�u�q���!�3Ib�����)h-��F��۠`(�䊹e���S�qު
C1� �oIǖ�tY3��
u��A�R�0+EP��7Q��M�����:K�^��*l���3.�=EZ?w�����#�\��o��/�8�
(#�n�*�=���э��C���w铁�K��\y���v������^K��&3I����=���Ȳr=������`V)��<�~��-�db���-�v����
�S
�剌�
��i�uv��`$	�Ry�4�o���
m,���7)e&�w�昲����Wϓ��N���wN2��k������΍[�?e*6ڴJӊf�I��&MG�т��wrC���{��V�
�
���N���gbWE�#ʃ�;����z�l����
FP�l�E��v;�/^���`�L�t��QD�VA��+O�p&N���k�7>j�>c�Q�NC#jb�6���Ad�G:�"�.��bB���n:ί�e������R���P�wXc��]�.�A��b����J#H��w�ƶT�����ȭZ�aO-�����V�r����n��
_��~,TE��^��[3�B=6D����0�U�h�?��j�X�T~�YX�dk>��*����i�zG���%A'��[A5T�@�}.��i@Kkw0��]Fe��h���ow��T�8�zȃ%����0�y��:J�;*��)7湈e�Fď�ż�I�<<�fH�`7P��c�W-��k��Ƌ˧T�]6����U�`�}�εEI4�=��y���l��Lύ�}�����
rV���AF֮
1n����-��z��)�뒀Yg�t'��OG��Q�a��+8�Z�'iXD�3y��{����/�@�����nI���oYA�LW.a������g�
�����c���k�vZ�`�n>�)j�`�?�ی)vMx��$�
/کN��+`o)j%�m_Pn�u�2��Ü>{�Z�h��ʶ� �O�g�E,\��O�,2��,mQ3[�]�d�\��+�D-������_�R��|�7�)��l���5��M_�>=ZxQ���:�C�h��V��,���8�n����w��f��r��w(蜠���:��Z�|,����,���|�mgh|��3"�,�a�l�L��*��%�i���l�i�.g�.]�2.�]���=��8d�aQ�Ĝ>�y�H���-_1欐~b2��"B6����i�x�(WAo�)Iq�V�<|��-I�l����_�c�x],QZCI�t{`��P�d�9�s�I�>Z�&3^��LW�¦���.���Y�t�Qr�H��)!����|�"M�����u�����|����fA� 9�Hf�k*�#�0y�1���!~t�%��y�.� ������C)'~ޗ�]>�]=A�?ԟp�컄k��]� ��]�*�+Z���kW0���]���r�do�M甄Dh��Eqm$噩b(�G����fF=}���`-Q��}*7�e�]�p���I�3n���SV@� ����^Z���Wy��r�|v��6m�~Z�W�k�,�);�?�d��B�̹jU��N���K�ǀ&��zV>y��*������7��?a���5`�#�\�d6�Z�;qC���߶*R��z���}�F/;�,ju��eFa4���ÿxs�����^\�9n��quDP�o�:�a���H͚���i��zTl���	bR�<���Igl;�8�J��@�4b���J�vܦ>'χ���Kޒ-��V=�'�g�g�}]��<�p�Dȟ�/�-��2�hd#=�Z�0
w�%����0٧}��'���@][f�A�V���=��Ν�B�X
��T����;%Zj��x�L���CݷB+��7ū֪(/E[
?:�6B]iO~��U�$�$�\hA(���?
{>��{�6\(G�w���sU���|k�+a��.MF�z�+�už�0�su01��~-��+A�~�~������9=wR���-W]$�y�-�y \�=5"��:n^�%3d-�����r�9W��~����>�n-p�/����U}������u~�R����,�:�E���{���Z�AM������w�%����+|�F��+I���n�	C��wc�Q�͑9�<6��k��� I�����5�/8I*��;#2����P*?:^��
%��W��l��H6�G��H�3I��yS��;�+�86!oD�__��i�R��xt��\k��#�h0,�m��+�:�>�������'7������#P��Wi>��V���ъ\����6��'&@�Y����զ�+��\�k�U��x?�5��K U)�th �H�)�u$Ģ�F� �/�W��ܻ��q� N@7��Q��a)KX�'U��j,x6���Cx�
�$��,�د�Q���
����`�gb�s����Z����C�ܓPJ�]���Ir�K��g��%8���Z�,�%31t����y	SȦ�wCBs���F�].�UT�����s5ƒD�c�
�ʎ�g!�c2:}��yS�k�")�ړ�@d�dH�#e:�-�ؓ���$+T�q����
�a�6�.@�F�q����~�_�3���/[���k�<	W3�.��OI�����׾��W+w�w*��#�
������#������4�_�"_q���)|�t�I�E����z^
���}=,7m��g"�]]<@g�\�Y�?6u��YX
oz��2T۝>斯�xv0H^�T�AnR����^��/2O0�=�N�^�Z_�Ի���"���&�&*�ϤP�]��x8e 5y�
�.<
��tl&�QsAo/B�ߔ#
V}����ٞ���؃��t\2v_�X+�F�T���l,P��i�,@u���Rb��h�#�rXs�m*��j�g #��M
���A�E�u�j ��=W,��F����]�"���
��л�Q����Z�]'�*��ʹ:݁P1�*�.J���GH���P��Q\�{�cm��J�i���iRf��T}cZ�ʣ4�
!p�W>�y[G
��Q+�p>x��b	��\��p󰏍E��b�
�7���v�r�⇗T%��	��)�ᠢP��VL`a��7�g�Qpd@ow�wl�G
�A�(�Ώ��64�i}�U�)\�{�Y'�v.�'���r�^"�G�o�8����̐���qꐑ����>���QI�A�l@��� ��I��YԽ4m�����EET¹6�+4�&0^_�_7����Nt��(MG(��!cg�v�U�
6�ꄖ0���~O�t~�c�m��Y0�1>'�k�����E����P��<�V���;��a��j�{Z��K��
K�Zc�0{o�?�I/��s�F9P!�T
xxϒ�6���|޾d���'5L�Ț��0hv~��f��'�eX�o#����J�d�b�Uu���{�x�Lnj=��6P1q�#�ݼd��k^�/�&�0[0'%���0��� �N��U��tJ��n��K�#�~'��Ωv#����
�`PK;��e��r��Gl2@�o���8�U����m�uf�l��ׂS�K�٥�����U���Jlr��,�ɷ?�	��6k#
]��y9�וW*��r�q��Jgʛ'Q�\!v��Bl�ՈB(�Z5��c�1*�!йߵ9�б��bL6b]7���9���#�?�;�}��i��DC��Ľ����ib�0و�va>:
I0M�LM%l��#��\�{K�6�Ubr��'��̘��ɭz���]2o�Rz����.����>�mx@�(τ*az|~͘uD�$xX���9t�PMnme���hکug[���!V�'�y��g�Nݿ�K9�>�]^O�V8D#�G��@��kp�s�ۗN��#��\��e5?:�Ť^X"K@A�r��Ģ�Oؚ�J$0�d����c�g'^����%��&X���̟�4�wUߟX�J�
��'�����
�E�v�rQ�U�L��z�{P1S���o��Q*��q�F(`�r�y�x����7u�[�y�CAB��J��^�R�UX�B.��AD�D�����d.Ul��΄_���`Ղ��WY���%��P�3|aV�W���
&RR��������>���b�z1t�Ɯ��*�<�4����
��dP��"���p[0���ߔdM�-қ�j�2>�x�4��r��:��{�Yџ�aQ�,;a)�#\pON~�����\_��-3�]qY�1�n�P'�M��0�a��po�,�j}3�T���Wpm"r�g��
���E�e��v1�)�������/��0���gN�������&%m�1
%pu-�63�+$E}�;+M�����%Ұ�̷����y�
�f{���ƞ���Yj�����x� �2A�y���f~���J�U��}�! 6��=B���v��՗�U@Bo�Y�c�	��0;߼�U�z��L^��m$�ٽ�w�o=���u1�L�"R���7��z���˺�[9��� z�f|��-�+ԗ�m'��-z(�+�{U����;��=���@.-��	�E$����2�/Ŭ�U=�-�D�?T�U`��+����U�b������*���z�y�Ӎ��-��ߏ���p����<��R��f]�4�M7�<R�H�QD���#�^����u��8j�^z�Jb��F8ܶS5�� ���\��-t�҈�X�]޼���{��ݻ��BT�F��j��w9i����L�s_�;i#�[�K	��U$}�1��S�N�mjg�1�����؅���2��o�zx����dɾ~Ę1��N�;� ��X��E	jj�݆��^%�S�l|9�A�X��w����	�К"�K[H�.�B��$ق��_��)b��jÍ���/�m��r����ͩ��g��e�[�?Q&HB�'㟯1��YS��[Gp����9��J���ْ��;IA�Zʼ�T�C��̸��^ݣ)�ka"v
㣚lP���ۅ�9
 �2d�e�eTIwG<sOEqk���#�`�!�(�|�*�?���O�_�L
 �v9[
�N��PF��n3���M��x{��=¯R�6�l݈!b)�V|�2!�>�Ju���腿��Z��wxn����A���~u*ϘL,�F�n�
^�5ִG�O�LJB��U���5��QD-52wi�|ۼ=�:"Z"��P���!��{�FV�Lβܰ��']�J�Ԍ�i�ѱ�d���$@���H �Z�'��ǶT����*>>0�aJ1���żh�X �l��Sc��*	�c��f�y���N��e�u�[!6|�mK�ʓ���߭���#�gE��!��3�v�A9��x088�yQ�~6�!���
~u"A��O��d�]%�53���[~�v'���z�L�u�|/F����a��ˋ�W"\�JAb��e��;鞤�(>�(�@+��ې�0���Bu_��r�_�H@H���!=&K𧢷����Z��ԅ�7�j+Qn�wU�@�L3��<��H{�.�>�.#$�x�OC�j;��ye�Q$B/[��0��]r��5;ؚ9�׫�e��.��]/M+N$,���YJlڵ.���+�%̦�s�m�8%�y9�����a���K��# ��O��M�Q�7��TR^b��}K�O�1Ü��'��!�'�7<p��H��U�j{Г�2�_������-�_C[��p���nql���.i�0^5�k��ѝxF0�߇p"��oT��]�`в��)�'���Qk�p|�cd�BJ�}���zǰG����s���s��F�Y�����}�2m&��%Sʪ}�zېJ��c'v(vꑼi�J�x� ;2tى�uj��g{!�g9I!n��:�9�
��՝-�+����;�9=�=�7�o�6\�$�<�U.����T�N�ί> C��N��br"����3�n�:�����>�&����<�>�rul��
!��k�v	?썩���[��w0�`H=��2f�(*�i�
ś�.~t�%>Q��6���}KdC�:�|��n�ŗ����|�	G����Kw�݂�;i�s@?�{e\�?�U�3
��)� ���mw,D�s��j�C.
~�m��^��и� p�71��;і��	��ȶ��u�R�ܖ*H�k��X-1��v�>��:��H �)@�#�\0��1��Ë�D��al����
@��OG7+�I�ޤ�*����LY����"�np��~T�y}�T"���Y��2�Y�Tr���r����b�F�ſ��:Y}��)�{VC�w��'ƌ�L��h�|�&$������{-���v�]+�ךcQb*`*/ie-8=�"@6�!įX@�$��W�&�{����0ӗGӎ'yg��K2�m)��gT59�p�#}��=�ո��Z��p(1O�a\�I� ���'���$^6�God���e�j�+�8�J����M��U�Ҽ;�H���F6��T1I4�qwfƵ�L�j����uzJF���=ʟ���/��l�c��^}F�ڤ=�&�*�h�l8>]�y�����3�������h�cY�߰M�����ਏ�4���I�S�"�9��N�d�⒨��Qm_�W�nk���En͓�e�%����x%�f�Z�"�8��jN��<�=Cg)*[RL�+���g��a��Ae�!Ԋnd���1�`���k�E��f��1�V�j}��c!,���}��x�f02�
7e����4�t�Z ���O���A�
�:>�M;Ē?�@�ĭ�H�,LK5���y��lWD*dG�G\˥K���r<�4��Q#;QcABF�˾M��>�D1	4���}�F�߈gA&�*㱄�CF�4U�|;��4�=1T��M�ޤ7V��o$*�c9�$ќ��48��\A_e�ψQ�U����Ei�g�B���>9�FwB���}*8�f�
+x��b���B�����LhRq�� j���M�0�up:]r.�d��B�>��9vLu�8�?��x)�d���ۗ����t[[$קs�ͽ{��̖�y��|��Fr�R0Qu�v��|Yh��)���e�T����1*W��ڟ����#16�B�Ma�0a変"��h��vkv�y�U�]0�l�/5lXۧd��>P�Un��8�5�!iFF�8��ޥw-�Ƅ�h_��RvK��r�d?)(�&������͖z1��H(C �)�*^��"RhXRIi�ȥ{�"�?�w�%��-�Ǧ�W�*t�s"�� G�e_��ä%�����8��-�����p�Ao`�`~�Q�bp5"�*���
�|�������s�w��Y�������ȏ��B�6�aҺ�tM�µ wZ/�/�f"!&(4�T!�0�DAm?�X>.����nJ/(�T�EZ�L	���⧹~�~�҃֯��J�-j�ēV�i��~?h�DȢ���|�&��W"{o�sԳ��6�UR �H�˯�lݡ�,Ѳ.n���o5��`̭
���#8�Rŝ�����3�#�ZK�ui0�vq2�j��7;�-�|��0��m�0� ��B��^��%BPHز�0)�"\�ƪ�;$'�e
���//'M���r��%
tQ�uuxNJo��Y(��,K&*��D��EzW)D�(���p�̲ė�g��C���px\�Ķ��T
$f�)*WYVF;8ij6��у��mnG�+(�RhP���2��U1>�h�B<���	:C����s�Y�]��PE�rD"׉�7�
�����1M4�1״�EW�ա�����y��	 9���M^"D#�HaI<
�߽]���xv���C~�H��_m@=1��O*g���3S���voj��1ۛ��P�d�N�ZߗHթ�N��8SV���kכc	��97	�kz�x�:;"i ��x��}�00W��/��[�޷���"�����kN����\�RL
�;��4��(*�勵WlV)B>����4Ko>L��`桯g�0YчIrVe���s3��i�!d5��Z�Ƈ�<e��ZIeJ<`�ص���=;��}�Yh�B�v^Ŀ�C�P���{n���̟���ч��C�q܀���k1Z�5�hR$3������[J��C��K��C��;��'��t����-g'T���K��I��X��>C��%���I�D��d�B�?hV���,;AQʮ�)kj��Z��j>��LG��0���R���F�DO��U�m�l�Y�_B'h���JlK@�UZkw�0>�V�@X-����T�X{���b	[��Jh�i�۩pio[�S�`��F{��Ca���M�>kM�2u�60�9�"
��s#��YN��(��X��IN�L
/��)���tu��x`yN��AQ���?�����D!{�d�
FL^}���jq���<2[/���w$�iHu��I��9*ԧ�.�p#δ[���w�5X2Ƈ�z�^�6���6��S��o��X�]$�
D@�ya0�0xV�?�6*�(]�P�Hs��e�(�"��,Yr������X��ԣ�u�@U�h���J����o[8^':��z�Q�Ө�\�c�/�0�;�6d�j�7�f����m���q�l��8�V�����@�T��q[���Xf��1u�a�����w�#l���R�@�-�����l��V۞��
a@��o�^����%�=4
��)�
0�2��&�v�����G�Y�<�+6M�4Scc��^�������E�N�a8���G�#�G�ȁ�ѱVJz���ՔT�t�?�+�Š@���X�%~veB�10I����4{�z��`��H����i��/�/��8�v;+�،�A�h��1}���f	�����0�89��VJ����F�2��ϙ��o�k��?H$AZ2��t���$�����+R��
H(s,ĸ���%�韭�����NNC�]m�n]����oHF@�f��g�Gз�I�L�O�DŽ�Q�<�ow|�?-�Y�Lԟ�{Qzf�@�+�\��-W�n�7��>%��a���y�wi)n.�''�lh�c���0��vc�Q��g����j��$:�烲d��#w,�m�v��W����V܊5$mAO�1�?ڍ��R�4�M:q��_�hr	��2�?�G������^
�`�%TE�/��6ͼ���x��>c�� �M�ڦ��UOl0���%� ��5�/�Do�\�O����+P���
vE8��p3�U�o������Ep�H�}�sn%���0>�/�|�T9�ϕ�`��M�
�<	%O� ؈3>F���D��n�%#b(�B'��]7)ir
T�yq;U�ڊ[~������h.�C�>7=M��N��+��K"���BԸ�N�E���C݌�P���m�H>��A���UXf��Y�n^�s%�>��f��d,w3q\�U��T�2�	n�R�������^����FO㮮�G����{i�U���t̜�`#�W��c����Jb��B���f��y��T��r2��AH"�y�h�
�3�q�VEn\)z#*NQ/
�|�y�C*�H��6_��H�_�,�و�9�Ѻ��=�֎�e~��:~�<F�t�=�E��G��J۫�0k�5�B����8o���r�F
p��
�J.�PUd,'t�W!S�0&4����⧖*�`vMOCL��#��m��1N�4���ۨ'�0�a��K~������#W_��+�2���ᜥ�����
*a���G�DG�(�ܤ����Z{_G:/���aQ|�����<��\ .司(Dя�t�YMUWL��^�~wܐ	)H �{�mm�{
j���1Y�d#�h��$�*��:a8'g]ʼ�[�ØP<�dE�V��Ξ�ۥ�(/u,����oڇ�0S�������M���-ؓw��zK��n�1eo��G��Sk
�̠Q�2��5`�K�qY�[���1�LF5a�y$�4�'	;M1�wX�L�K�A�y�Th����ȍ̌C�N�*�A�m]be��YP�����<���:�O�J�D� ���T��zSޣ}��.ē(�W�1C�O`HedI}�+R谹������2��lq�W 4R=ȊIA�)��	����<�s���@j��kP�n�\�*�)�ы����VBC��Ġ�A�^�4;��Z�>u�J�u��7{[�9%ΝH��&��vo+��Cʘ��kȿ���������8��z��RN�s�UT6b�8r�Jp!���y	��8�6,"��RX���^�7s�U]�}�
���4�y\q�Z������ �"��Y������.���(��v��JYUl=|��i�葝׎%$l>�������H#&���Tj�y�FzՐ��}��X����8���Mi�T@v���n�\�Q��l+��1���N:�o�~a�#��GM�P��h�ǽ�1%`�aO��SKt���8|�sJO�%�i������0��
󳎈cr��(4d4z�w�2��ܟ����`#�O��ÉkJ��[⳩!���y��}0�L��}|�Zދ0Vs?����,C��
���g%;qa��"iYHh{��'n�s5�X�'7�`J���/��Vƪ�8�Ĺ��VAؖ�u�.�k���P��� @�G�e,�Ȗ�'��
�7GnX&����BI�˾���Ύc		5T�����\g�˜ޔ0�O��)��9�R������A�0}nթ�|e'�1�编��/:�M�j�E̹,�Y�����;�.�*(w�����Y�Ju�仂1�����f�'ӏ��P�9}�B�5Qn�0����L��r�q]��/��������ap�F��^�lCZ%���t1h�w�b*Wp(s�-��(��1/i~5Q�z��)��#�gf{ٙLc�H�@|��5��>�T�+_�,?|,�B�Mk�Ɂ����x&��^[%LT��'��4}����� 
���lud� ��^$a�D#[
p��r%��P�,��B���6�Ґ��z�q������l�\�	��v �.��V�;�f%�|D��x���[�JL��F��
���EUhT嫇���_��r��f��^3��q�5/�rR]C�Ԙ��cw6q�u�cn���~�	�.��N�	�4BG��r�jS�M�{� 9B�&yeDyD[[c�-3�r1�[�`ᯆ	S�WRY"�.��l<��Jx�G<���٬�	��<X�4���!x�xb�����K�:������Ѵ�{����<���j-��%O�[~�f&��1	�q�k�U�1S��.H*������~s��<�]x�o��ۨ�����J�ߎ��D�]V���z��+
�PaqŬ��v����c�0u,o�$M��`�"��YՎ+�(~W��s#>_b4O�E�-c��ISx��a5W���R:'�op��cv�B�~�3�I^�)�}�p=������vi�x?B���L3��ͱr����f
+���I�O���Ch:����E�ˑ9��T/�YC�[�����7�Lk��$�pJ�S�n�<�Ë(��B}�)�N\S�殳I�^DK��$n7�C�G���JY*��}��_�"�T*T����ks� �ȅY4��|�'��\��G.@"g�;	�%#a�9���1ɠ��:�#���}2���*��`n�V:3_%��Hϱ1@I���Yv6렽�ºA�&x��ڐ�3��r��Lt����&�`+ɽ;:&!n{��"��}�:��J��O.UP��4:N8����o\~��4����i���@�h����| �uʕ�ހ�Q���5�C�'<����!��E���[ҐM�1��ֵ�)}��p�b��Tz󮓩T�2#`��}18�5
��M�~%+�ĮH�h5$��UiQ�:�A�}K�z�\rT��R�<�"V�5i?O�����0�Y�Q�R�S��9�#$�����R^@o&��B}�K%=/
��� ��������UǓp���M���s1H>���ft\���˄"Z�W�bx͗����������"}� e���I���E`��	5L���T�_�Ϭ;�&d�4u3�/$2�:��i`"������������x�O�����=Z\n
!�,J�\s���b��*�B����'��P;���W�~�q��iU��PB��2T��a����Sr1x[SK���}r��^��7��V1�ձ��R�Aa�ͽ]v�O~+�$@]�e��BY�����O�)�H>�,��5��ǝ9V�ؔkLu� ���C�W�@�:��wx4��2P [re�5���%����jhK�ui�,pR��cz�{;:E���_cA�5��U���	ʓ۸��t9�\�ޠ�ǁ6v�B4*8�-6� ��&�
N�%�e���ѯn��& ��0�d�i�?�BU��B�~�ĒO|�x9��`
�䪇�;��C�6�$�k��>,����B�\���=o�M|r��f��#��b�S.�K�yYtD2�ľ�gL,���2.�p��7�w߁IR_U�qUJ"��C�����E�K�zê*�T�l�ݯ)T6��\#��^$��!��*=o���(0�ރtяu.�<��L�Y���͎�	�HѮ���iXI$�9-��{�>����P4v��%WXKA\I(�;Zg�Zz�GU
#bs��1fG�U�.]�Ȃ��T��c�#~����,�|��)mH�<I�F^��3���S�P��B�2��u|匒�T`t� ����|%D���>�N`c@)Pz�9=eV�����U��6`����j��9�ȁ2������?���=1�F5{��	%Ӡ9�Aϩp�vQ��������(�Y���t�^�6��zg���WC�ϖ�@$������v[���S
g7�)�[�{��8��2%"�W;����?-�?W�S�_؉Ԅzo��H�	p�z���6�-r��^d`3X����*nJ<�Hu��$���Պ@
�C�ΰl\�T����D�餴,��7/ϲ�[��w)
f�I�@���Zdn?�𓗊��:��P0��X`�d�\���2�N]G6n1I#FƊ�p)�*}��!��V�{��-�R����k@Wk���
~>%˳����?M=k<��a%���Œb?�Ђ���>�pB�)ы��������Y���ᔆH�RX�d������}m����YO(2��ն���:>Pɒ�^��hɊ��s=s�V\ԯV���\*K;�{�Z�eA�8q�%��0>�%mJ��v6U�nr�_P��P'ZnS׶r�Y�5������3ɻ*��uP1G�b��0"���%��[��$m����~I�2�5�q��	�q`��q�R��B���l	=?jv�0�c;?*��
�ي�6�S
��:���^ί3���ݗ��ˆL&�������Z��ķ��_ˌ�A�89�&*_�"��4#�!8:����2	��15�x6D�o~����~_�Dzj�(��23�}����gH$��Q�!-�����Zeo�R��&�4��f��q��)�u�@eZ�°2v�m��+a��}�M�p
vr"���1�y�a�-mSB�͝8s\Nx��*�F�4�YFA`��OI��%�"��؇��nds��K�1S�Z-Y~���	*0��@J�j�v���{L��_�+�qO>yA��HM�&=|T�Eʕ̈�m�,��i"FP ��M�����d��Q�)���':�?]�K�?�	ՉSɲ�|?�Rv<s�?b-�[tXڶM����ɧ���!�iWJ�W<f0�K�l�-��W��$tr�7fP�*�������P��$��G_:���+0��٣��L�U�^{l`�LJ�#V�^:�l��)�5`ou��m��x|�t��9.��du�H����|ߘ�+cv]v�;�S~h_0��
-�(�����H:��:y��RѶ�l�nN�z��O�:j��@�z�U>t�$)��H��2�S�g^Ed���%��\z�X`HX���xң�\|� I��	�	�r�j*��%�l�Y�kh#T�z�aI�j�]�Dh���Cc�}E�
�A��b��2��8�mŅ���K�����pp�����j��l��+{�#��`�.^����O��^B[�N_�����Q��?�x?%�,òs3���I��ig3{ij%oQb_�ʹo,�����>��O�9�#�)슷g�W��~�H�/1<f�<z��F�;**όf9����3�{ns��u#'F�QvQ�C��I?�C1{�j�(v�I�p���y��#OR��r����H���U0�~=7��/�طt��k�
u}eN\3.����MH�����s�?T�U�2�3
|���_�YTq��t}Ki�u�1��QC��̌-�@�?�x�X�l�0Sc��JW�%3��$��`2��6�����[��=���$92�?}�٣������GE���Ę��mQ,>|���֣�z/�<"�Kk�Ujô�z1�*ާ�}�<'�Md�O�*��͚sm���
~T���S���PK�[���h]��r��Qz5��W�{�NvPs�~��K�u!�޾H:εi�oT�A�s��-J~���ح�b�B��+�{`�=-<�k|��R��(n��%���x�=B��d��10�gi^�qx�����C݀�0X�>�w�@?-�*YZ��G�����3?���s�q��֐�T1Χ��{r��R3�g����͞0J0p6��B�0���ub��$fHt��]����HL�����D=�����H�'�����p2��|��7m��v�z��zX]��I�>���O5M�L/���޼��-)mf���1�.4wԆ�L�P
Le��Q��]F��#�*yk'FK��ʼn��
��cy����s�f%c�:���޵�34��.�Ɨ�@f6��&��z����C�n��D��/)}m�,%��.~D�G��z;iY+Cs�����.TU(�fFo����X��Y����;�_ܠ 3z�v��X?��O"܂�8��-���pٟ
�i���*�s��z�� [�Ke�lg�&���4�~]Q��zhK���yo�M������{ڳ�L��KY�ks�q�H�U_\�)�Q��_6JF��W�߽V�8�M��K�gB�����>H,E�ꀿ������P�q�r��1�A���D�O�c�$q�����O�W#`��ʻ�}��,�Cت�C7��l��+�xZ�Y ̲Nl�4���Û1�I�Y�Fe�k�F	�n5�zX	�Dwa�e ��s�P�>]��L�5���9�|_ҕ#��v�R���~�P�c?#t�����;���b�;��ĵȧ`��8����?Kz^>�RmM�$�H�YA��D
s"��c�����a���
��(�*-�]��XC��gl���8�e���Ո4e��d:G6��b�s����a��Rgp�K��鳭���P	��QB�r4>ӓ1�V�D�����#s`���6���K$Ȥ^;��}�&�W!�֔{f��-�O���#�����������(�� )N\#@;(�HtP��,ND�F��tC�NQ��]e�X8e@4�%��/_�Sv� o`7�D�.�1�H`9zꎤ*h~,jl2L���kHT[��z�4��`#P��S���J�'8�2��%��s��W��G�ULLp�1�vI����3Z�\F4����€�'C�1�9�y���"Biu��
�R����Bsa�B=�xB�CI�R���g؞��9��CE��;�v�b���L�{�r-�$�����VB�'s� �ۚ�s{J�d̍.�I����W�NU�K���u5QZ���A�Ev���_�b�W��!���UGteU���77�*sd��ԩۯ��Zr�ow�]���.��nl���/��Ӗ���:,d/�W��zB����hܜsg=��15���?�lK��kx��5�[����'��DK{���ĨP':����F��~�e���@m�`�9�Gx��_霳R&ׁzC�"'��x��8U�v{��X�*��\#�6�[ְ�Q	t�3��k��©�$�
��VQ�g�С,<���5�o�_�j��ק*�KP9o6a��N+k�tm3n��M�ЈB���R,�gj�&�'��_9���|�T`���G��v:<��k�w��[pv�OS%7�G�L�8�I�F�穽�Ϯ��m9��Ѽ�0Vcus����1J����!���<�-F�V�B�T���=I���+F7kK���4p�n��n>��(���x�65E!�s�h�a���G+��]WO�#I$$#�"H�Z�I���/�ku��/"�r�������g1�E���+k�J����n�  2��Yr�<�qPRO�O�7ӓ�YG�)5ԻA�P_���{����Z���1��%��3@�9��Օ�KᗛQV�S���'g9i��a�1��q%$^�T�c�"��WQѢEEpҤ��Xmd���0�OW�^�"�C2'|�����w�-��վ{f��N%�0�OI�|���Aj���=�w�
�*�ͮQ2n�1��H�����-J�yR�(�%Y��=ҏ|Q
3�,�e�j���^T�Y�-H�u��E�3�
M����Q\�}o��⭔›�����k&�����!�?�;��)�nl���d
�'d��=kw&{A��Kͫ���| �jnY1N�Ha�xR��������yC�6�~�4o$^�,� 6�y@��Q�F�I�	�-�/�v[&׽T��;B�4�+�����A�ި��$������ꐸ�챉��n�9+:�-{�\S��6l��Y|�?C#�>=�lsu�=1Ev�-[j򧱐'Q����Vo�r��lt1��ͪ.��W"��5�-%�ynn?hX��|�p�d-e1C�ٛ���%
��ހ*x��
�<�A�j��1	��ժ�3b�����oŀ��
�I�$���E�d;�z��1"ǎ��Q�xx�gÝ�P3���ĉm༐�ja���v�Brk#}\y���?�H���I��HM�WB3��V�ױ��r"�nUv5��zK�,؄RAL�i�
����ii��X��:g��o��i���6X�s��"�9]
6�/���`��Zd�~���%>߾hsE
��@������~nԋ������D4ڣ�$���X���C��c:o%y\I�b�I�va
�*��r����Ml��S̭�$N���)�dY͍{��E֤��2KƟ)��+&�i܈�'�d��tw�C���<�
ꉺ�^�>�:����E�D�&�'��k64
��0iq0J�])�~-ԽLj�6E�H<��6�F�c"�ê����s�B��>��8G��p�nG0&�D�\�2>�@u��/5��
`'!��l`��WdfG�GD�N�c��=�:
�*�ať�E��!���zd�/�g8��=�~���J.2"��K� �n�>�g�{�U�
!�1��]T�%�f�!��s�Bq���gS�.�An����Tx$ޏ�����,URV�f�۳���Oc��-�%7S�����JE;<�V-�tW'K�kt�iWI�ž��ꭻ}�E�n��=�X;c9���i��Ŋ�K�����7����E�E�l�A'��U;�8�'���Y��[�/��q)ik�x��4�d��@4'�۩h�s���X.�ǃ,�ؕh�o;��(�5T�o�'6Hm�;tJ�?�şU����Q0�:w0Zz���j�&���DU]�[*"ɕo9A�#{0����XM����������C�����!�{#f�a„��o
b�����qÖ���ec}�\�%����`^$�S�R4(6�e�`f�	��w[��2Ėy+҉��Â�h<��/�%jQU�	��bbM1� 	��69��(#3�1`h-�J�7'߫���@�Dl��}�MYdu�*o��-�3O&%o����ie{9�f48����� ?
����=�zy|l����L��A�=+h��3�v_ϋ1&.��Vf�F�aK켋:-�����l~Yɔ���O�ԝ9�6��n�_��� �ҏ���/Ε�3EឰB��f4��lT�i_?�������ݓ��=_u�K�)��*tU�`��҂�i4=�dubH�͠&�K	eC?\��H������޲X)��f
r�#��3�8=��/1�!�?p���](ʌ&c�=�d���8�l�КƗ,�T�+�V��o1=oq���/�2ӷ�ƐY-�
���/���ú@�u�߇�4ډ�O����Ơo��,��)����f�Y��%���~�E��Ӎ
����ꐀ�,�h���pp���ho\�"�DS���ACUmv�2r`)1��+Q���F6SW��~��yp*�q�`B���9��F����ͱ�X�7��X��5��mGmR<F�h�uJ,����$^��Q١o��#�]��<����n������j�1_D?�{������׋��8�1����W@Q��%"](Cl%]�
"��Y*o��?]ď��os�w��i/cEfO�u�!���������;��w;W,�|��+$��I�薏(�w�(Ut��l��{����Do���w���~yzQ+w�]�&Cj/Kw9c�' 
Hu�疿ߏ�9$	mɽG����J��"�ϭ�f���&e�!K1d붔m�~��0"w�I�~A֛�#��Į� �$T�Q�Y ,:K휺�ȕ�Z�����0��R�v�^����to�=�jR�q��/^~��f��o�7�.�DF�k�t}+��m���Q7��^�a��M�S�_/���5�������.�
�h}�}�=WҶA�ڡ���]�q�IKH'&�٨�rr)���b�y�}�NtwAO�7���5BM�����G|�+r���KY�.������v�0*�4�nѻl�(�=�a�ɍ<1�F6s��I��y�"������I1q�	��I�n��W�D��9�[
ث��?p4ԫ��7E�z�a�V�Bx��=)2��U�dj�H�,CY�~7���t<:x�:��Q�?L�{�ү@���r��rJA�Cz8֜���T�4/�ӗ�{�s��h�s��֋�}�52�z�]!_
퉱@�<;b��S��F,��Fd0�_a혴<1b��,��Q���A�?ϸ�g�*��k�rz�;�t×���쀂.�!��W�����o8�'��QS��3Ӟ���,�cR��;�kœ>��L~܋��B��`�^j!�i���1�6��/a��3�&�̪���.�y��@���M*`��As���Q
����T���0�ǭg�{x��R��¸Ƃ��~L��[{<��S���сsy;��a��l��!Z�'�N���#��Qt��\��%����ZA{�Ė�
&�J�n���J��K����0�E��翛����)X.j�t1^�s�!}��q���,�����(��&�#3��@�H谁VR���V�0�,��K͞������k�L@��y1SV�YO��a��9r�HFK������~�I�u���,	Jq��/{쭥�]p�ւڦyE��v�s�I�e��&z`�
5r���W��m��h�f̽5�S��zw�h����.)΢,a�GQg���-�#�Zd���]�p���Wm��ߣ�f�}aru?��i����9�襸"�}ZC����7Z
y���D��1�D����z�@`�t�h��0}��3l��]����ؤ4�1T��|s
4�EK��.�4�雀�j��U�~1����$ �aCG����>s�t�@�E���!U^��X�e����Op��de��W��>��_��	�w
ӵ���5��8����:>.��D�C� ز����F�z�(N)r�����x�pDŽ��4w{�
*f�7:��^eX�9pz�knK5�
�=���9��g
�j�f?6�/�p\p��n?�
O������\�<Vq����L�#���8�"ǫ���C�Qw����<
��<�,��#�kg��K���,3mY&�����)�C���13&{��H�=�N��v.	�`��C��/���A�m�Ӑ��Gɷ>�L�n��f>�FKґ���8��-����=�i��|Dob�
ԯ�]5e
�g�)yr��e��2��x����X��j�,b�(�@^���nQv^>��>}��0*b����~4�Kct_��E�w����	+�ˌ�$�OX����a b���0gFg;.�����-��i=���6@�����3�1��,_���j��+�y^�hFן��^�]qeA�`�{��F$���@��(�kD�*���N�|P45
��v)'���{�Q�t;W���.]��O\xu���%^��h>�כ�O�S�~�6�D|Ӳ�a���
N����v^�}���?�Š7ࡷ�ΰْK�a�>+����T|չ��n�d�#/,v�Y�M.�S��8�Kf�"�z��"��E��x{�(����v
��i�<��aџ�k����+^�AcP�$L<S�y֪���{����Cwa�3��F;l�a��xQ2�,�+��K�q�~L�e�nS�F���(ڳ�={�5.ޓ<�UC���k~���{@�x����Rd&����okh�yZx�Yq�l�YS�G �l���/��
虜F�ɈCۡ]���}i}���{�6vg�a�#��c0��ګ�-5g(�R`\a�5�/%����Qo�QӬ_;K�1�����<�;5:?��D�	�X�v��/�	�Ģ�j�NB�h�fD�)��k3!2��y�]�5;�G�Q뾸0��T�S�7E�ȱ7�
��3x��b���n�2�C�&��Q�ϝoҭ��E'�)�,`R_U�M�d#i��2��,�/��Cա�`���[L@^V���TP!ip�X�#���V�ǧ����6wX�؃`v!#}�#9V#�B�Qf�"#��}�:��������g��0�rMN��L�P�ܢ�iJ�6ZMBi��h��0'MZ~y��5�]�>�βZd�q��f،�؞�ʃ��t;*��$l�l�.@b�'�
<�@��h�1j�"�˗��< H��c��!ў{B�7��V���&7��0���Ka���f���V�$u�����J����Ȥ�ƽ5̬�7�&G���u�M�P��:���kZ���ʳ�����L���?�&H&v��o�����\�ka�h�k�5G���>mR��� �	�I��!�x�խ�^c-
�%,����.Ա	�[��*�I��,&�yK��2���z���'`��f�	����&�EʾI�g�2��6AZ�+;�'�	�kg��@�n|�s�;�d��A}(���]���<��:dn��fk�h�Z����L�<�iXTk��kk��$�Sm��H�.� �Q��{����8@� ��;�"6���+ȇ�j,�8}h�X�Q����<�[j\}P��-��ݲs�X��":��(�:���@���-��I	�H��~N�]�$DH��XS/�;z���Kq[-�e|:Q:G-O
�	�S�{�	���K2YFs ���� �MB8����v�]��KϦ�f꿇J�skr�����}�j|&�OU��|5�Z�=��}�Ksk��|�Q��W�]��6Z���k��-1�z�BӷVuzz�|7?��������vv��h�3�u��u߁+�9]O�b#����o�a��]w��z(�+�E��c�K+/|��4�1LO?�!�3���z���:�M5C���r�Q3�7{��xE��_�.R3	��Vڸq:~qz=��g�3C�\��ު�gP��8�dQ�Q��܍8g:������Ha	Du���;��5T���(ň�}��dQ�&d�9���J3ug�/���P����:�qEL*��z7�#"EQ;�d���/,�KÆ%�\C䱟���h����ŗ�A5��$���:ˇ���H�����·��ѵ�KG
��;�ƅ�o��K�U�h�5�1���q}�cQ�z#]��3�GԼ�����@��0<I���\�c�}���A��^j:\�(�	+��x�ob}@��j+�l2?j�1z�v��I`�9݇�:��S��	#���ܻ������Ғ�OT���F�j#nU�x��^�����抪�B�G�-��4q��θ�
�A�tL/�׹m��>�0����
-%* ��$e ���Àا��{ݗ��[�bC°^�����
_|��̊λ3�8���8�[CF��Cxn�'�`#��AYI��e�hn�f�m3i{Q�
���L�0�n�FY�a�W
��t#Ll�L6�*�5嚋���``?m�	/�*��L"�=�VGz�|�N�Q]>�$��@�j��v'+��]�\�L��{V�V(�T�'�6�)�<��{����b��T�Ȯu��"��&8��jώA��i��Mq�ܹ�)�ӎ��	���1A��!����2�nz��}�4a6�u^|�"��?�vq�%P�)��g��  ���䂼�ѿ�x-0w	��V̠���t�Rݘy�+N�PⰼË�����-�b��&�v�µ�b�V���XRd(�ȟD����,Z����S/[X��ё��]�ܺ؟ԛ���ls�I\-�A�D��Du�\��D2K΢����y��|
��:O �'���}1�K�,��i��3��
�?����{m�׷wM�`'Nd����Z�d/�(�d�y��u��p���!�݂˳wj(�oC��L
�W���x�/�-L��݅4��lh��!��g�^�g�3kB�Ӊ��%�$ݶї������oJ6M;��UZHV�3H�oWv~���̖�t9oז`QԋN����4j՜DΒ����{��G#W8�ikd��~��oܥ�L�w*Ъ����^}κ\h���(g���</�P�?h�(iJ!��E�z��ݡ�Z"
��7��y�"G�ۀ�4w�=��x˜b!���jw�"�S�OJ�h�c�X���$�+�V��!�#����i��y���/���{�z�!t������O���v	���+u�?;G�O��=>���k��^\�*�{�l�P�"��Tj[�i-�]Fg�#�L�R��ξ坹_B�S�LI���1;MQ*��	��%��!%eW�\�E�~g�w/��n��6�U��l�E�%m�гB��J�&ā?C����z��^��[enL�U��f����$d�L_S}���7m򣼭���	N�Ũ�F�C��qij����[P:Ǖ��-���تJ����﷈!Ӫs+�'�LI�5QI|�Q2 ڪ'�X��3�b���,ۨ��x���#m*�iѕV�f�RzJR9D	
�d��Z�z.i�O
�:-i&|��8o�O��8|���X���d�u��h��if�[o�6i���{<o�u*r�y/�F�%'S����~�$�O@Y}��&�<H�֯�Gk������+NR�h����D��vR!��,���j�e���i�6X��9'�F��׏9>B4�r��d��) �cG����H���\j����E���
�-#[9}��/���!lo?_W�IN�m~�p'x��0hԯ�B&�[�8%���hv�C;8ل�m��+�����>�@�����`/k�k%�Q��7�p�������d3#|�V�jűT��M�΢��Ɂ�!J�f3�p������ޚ�M����hB�@UE�Z#�v�3��ߞL��n��y�R����a�r��ߊh���)S��-���D�~"�м��GJ��ʋ$&`r�(3�f�`����h[{�u`Z�/���2<����
��lp�H�4X@���r\:S�����b��j�,��lE����Rj����-c�r���-���F���e�M��k��<���p+,Q�"9�*�q��o=����n�ɵ��UJ<3��#�,l�9&ݦɔ�$=_�q��Kc��/+�>�B������Y�Ftw:b��f"�K����f��� ��@�Ɍm�n�ߍ�o!�D/�\֓��O�ʆ�	8���S�����[��\�����ͷ�@�3��B��U�-<$�t
��_��<ȼ��������m=߬���Y\Wh� �AG[�+Z~mw�
�*�1�݇එu������a�)�.�t^r��v������;%�54��m*�'7��X]r�`�-�鉳�Ŀ����P�c�B��§z�y���9�-@](�X��٭��:�^�'@j"S~8:�d�kTB%���^<�g��s�A�nj�;�I����8��+�i��9�M���턭��p(_����+�]�R-!B��K�az�8�o�{Pl�����:�8`��㩝�p��{��K�� ��zEΙ4���})#�&�*0��M*K*m�`}�ބ�9�΅���z��p��fU��~��w�{��[������\�I�(h�g8+67kX�[����z�h`���9y'�����_ ��降o��_��B�\�O�w��Lb���Nμ����?Bā�߆���t�	P���J:!4SP�
�7��z���$�o�#P0�_�����a�C[��h�Ef$�#\*\,�5����Us�u������y��0E�@���h�LR���Z�(:ʅ!�e�����/�Y~��\�*ICb`�c���.S��g����^��g�C:�������˓��&s!g�_ܕ�O:�@�rK����&�Tsm��h�)�d}Y+�*1��
�4��>�e�Gq\%E%�"r�	6��nZ���j8zue)c�pA JvJnh���s�tD�ӮBW���[�xi>sH����o�EL�,<p�O���|��W��� ���7$����e#�i��J��h��H�|���X���bb��U��zM��<
��$�4�h���[l��,
��0�"�S`ƶոw�h2��0p\�~�WYz��GR���;iJ�<��lͪ�[rTle��������8�`���z�5?�����$cBq�Q���k!��;ph?���gBC_�\�n~�|DOE��c*ǣ��H����#���*�5R��I��g9�OS��]�)|%,'8rm�=G�hʋ`��n�C�����8Ь)�?E���=�g�6k!��gknNI��E��"���(Ȍ
X-[t��.���m�2� 3����~4���f#AWM;��(��˚�O�S��5L��S�WL,h.�{�ĥo�t��̹�$3�Q�֡�-��I�#OXp�0�]1��}ms��x�xGt� �P��z#��Lfpʛٚ���m�	�o/�z���$b���{�N ��_�~	"����hF@%&�	�!�~w}��ߥύ���TiZ-U�瞽�X�S#�{Q�&�Ǖ%1j�s�,*t�ݼ�&�g�xk�{1��y��9��Q4�<�	�[�&/��\���I�ԭ��4����\]��^o�1ㅑ��ݗQ˨|pYy�{z������W/�X\�K��B!H
���@,c/����:%�~on��&q��Q��$u�S�Z��+��U��U)�=��Bǡ0�gW1s�d�q0�&T��i f���^q����`A����t(qWYY;��v(6$Je��%��'J�'o5T5��z:�q~�G��s����m����V.���0�Q�/
`�����4��Plj�1g���խ�<��Di��C��� Y��,8��t�*�xmHU�큌�������P=��#%��]"�v��.�I�'c>�I�^I�����dN{��bQ�1����Fw(�A_N1��9������~�(�6���!+v�w��%ך�:Z�ndE��?실�t��ƒ_���|��w8M�n`��W�쉍\k7t7�Y(�h=*��jX��Q<�3A�N�]=�O��Hm�5<�T6�0�aa*o�j:}�>��ؽ�o�k*c��SG��n��b��V�e�ڹ`�:��%EO�EHC�X20��[���n���#��`Þ%�fHgrt;pSe/� ���f|�߹\���7�!��o49Tu%�I\�O�A�hM�*9�s
�ռ�C5p�0=��v9���q�u,�X�\�d�l㘗.@,-����aiV����I����.x?��P������K
�\�T����]p�<�5=;{�r����m�b|-,��mUN
���y&��I%�+�i��6>�mS�s��҂�1w��.i=|O�/�{��{
"��D�
Եe���ǹ���x3S��
K;����v?S"c�	=�[Ž�8+�fZa��3��T��ij�=hࡰ� +b$<��O�H��F}�B��*��&���W�b0Bc��Ǻ�F.v�:�y‘썎���x
g�M�:����vv�+�y�֩c��q�g��@Ɯf������ٮ,}�֟��AK�����]oN)c…G��0J`�	��Z�{']3)w���U/��V�Q��^T�@�)������o��%���q'�-1|b�>"�"C/�Οbo��Vi�c��㹯����n�2'��o��`j�s�f~�0/앇Ȥ\o�a;q��,[�C6�n�ZOe��H?�M�ͳBL�UQ��ܺ%�s�K�o&�ʧL&�;�c6��iz[^F���2x��g^�|�/���
�q�M�K��5Ɖ��&KdXg~�O��P��W���0)�6�+�����ڙZ|6w�p_2����𨏨�N��6;h�^nH�u}��u%�[���ލ:�_��¿��˻���Y��b��x�����Іᄕ��u���w�͜�m�L}[���`������k]�`��$
9@3���Nsn׽�}����rx���&�
�)�a�k��D�1#�\��>0���o
H�y��5���?xA7���-�r���K�W*����c��q��`�@���i:ɖ�c?� ��j�f
�������=-�=[��/̚�b���k�T�λ�g�l�?29��z��)���m��z�f�ko��ɶ?/�/��o��o�Ի�����q�/�7�I�o�^��ү���-=������;��[����v�-ti۟˭w��.�k�j�Mݢ�;����wR�Կ�w�
�Zn/���7�q�A��{��Kߋ�1�Q]�_ߊ�o��]���/���z�/]߇�?B?���[�ok������z�ߋ��	�c��s�w�ڿ��?�����R~>�'=�wI~]#���C�|>��_O��}�~_a�{����z3���L��Ջe~E�|+���5n}�~
޼O�ַ���L����������Ծ��o=�7ū;�W�ӽ���7O������rk�ɡ?�J��?	��>��t����'��?�%��;=���n�i���:����~.�]���������?t����-���O~��;/����<�~-]|�ۭ�-#�W�}�>�~d?��߇w�v�Z_�W�>�~h?������w��+��C���އ�/@_��{�����.��W{���7��G~/H�������{�|�>��Un{�ߏ�o�q�_N��냿��O�
��S�)�)9��vs��9�g���7n��W�K�߮��I�\�N�L�6��_����+�Ⱥ2D��f���uW���[��z߾�u�]��q�o��j{�>��^�����v����?z������[�y�o��ާ~K���{J�.z��t瞐��������}�w}��{��K?�k��s�Nm.m.t��k�+��m-��@�-
}`�Ut�F�>�	4ĥ`|Yq����8&�KJ�"�����
�X��bF���L�3���b��-��iM�=I�Ԣ89l����YiY�9`wJ�	=�̧c�����O�^�;�(�r���!ڵcL�$����|h�ޥ3�!�As~�j�ަ�]:����-�s���:�]� �n�%�!���!�Ց��X�'��:��rFr�NQ���
���ͧ��q�$�e������ܾ""#��V	��H��'��mF~{�_�Ɵ>z�LWȚ���w�EѸc`h�g�ΰ�0A[�!���7�5\�ܷp�犄Y�T��G�z
���
#p�W�B�_]�vA�&�v>�l����<4�M],›��qمZ�)<V��um��-��Խ��|ϭ��{
�uR�T�u���}zf�N#c��Az��c�"�z����z��N�[��9��N����^��}7�榈�`�B[�����7�^�Ds����u�4����Օ��^�)T���j�6�z&[xF%�׭'A#}����;�'p[O�%�lJW��p��ָ��!#6���+j�������ZB�`4T-����I�c
��p�:Q%�n�<K[� �m �Ÿ�Kτa�/�8[����Zv��3�����"[C�rԔ~�g�6udIv�&>~2��R�{3�5?�������Z��JD�g}%uל��W�wn���l
C�]���1��#�Q�q�'�\��R�2�<��5�Ӵ�0K�};�
T�&���ʙmj}�9C�n��	�f`�M����L���f���^�z��#r�uȼ�J�����e�������M��	`1[{���G2��E��=��~��	�.�8��8rdI׺���_rb�����5Z��1��~2z�C�)��ܰ�G�N�R�i���hǨ���[P"݊�m7v��"��J"el5)�}�"�ɻ�9��y�\$��� ���ۏ����x���E���aU	��mb�0ؙ�˝a�9*��HK{�	��!��EJ�
�U,2!оQn[��+:��m=���;�ّı�eDힳ�7�3����Cn�	��4�.��57��H=��2����Fڎ����9=c�6��sۤ��¥��e���	�8ac�-6E2g�cHޓ�_-�����ss��᣺��Ca���p(�$y5�JPh͸,���f�Ci�u_�{��m�V[M�7��K�x�Vf��vQ�� E	�r<���9Ϳ.�A��
���梆~��]\(A�|39{�o� ��xsYm�lҽ�x%+q�o�w=���$&u�G���Q�D-O�c@�y�*���u��]�
7�O=���z���I���&ǁ�"A�R����/ũ�mB�qh Zg�5� ���f�VDR���r(�"����q4���J�0�-l�����{�Uń��qCeE��S��8��݀��x%��H��1`F������@Z���$��<8�;�>��� �[�e��SSρ7
�\krd��E� O�ܚ��0�0����:T\g����s����;�\�h;�	�}��{6_4m���^	-A�ڹG���5F���׺`B:6Eہ�23[j#W�߁j��-���n�V|�}8�_{��(H} �/8��eUʧ�Y�J�0"yzv�����AQ����z��H�!Y�9<��D�B�ԯ?��}�M]��?Q�BM��-�@�5
Dc�pLnG),p�=.&B��*�\��n�C/��d��_2>Ql!��6�'�|$`0�+WC�%�Y&���7l���l�?�W�I�?GE2M�ャ�?�N�M���	���/Huџ6Z�R�#��J;B�-
�!La5���>_ȕڅ¶Jž�Tx����2�҇�v���Ī�%�-����a1�+8��y߁HPM��Z�L��:��p����_��d��aY��:"���wK����,d��#l<b����a���F��1q��F����yԊ�V��Q4ƣX�u��d$�|�@�%�&�#�tf֥Y���*�/}���=H���wo���\� r��ڄKi����Ewb�n�7u�"B����e^�?���!m�A�麗��8D^\M�Ț\���Xjab�Y7�4mz"��+=p��mA��2�<6�4��i��]1]�୊q�@�,=�P�eڤ��DU����_��Ҝi�[y�=�=QT�dO(��W�;8�9X;�n��.�<��ը��p��&-�^�e�c����gç��/2��¶��o �J�j���n�R�IX-�b>�O��vF)J�z��C���:
�hŻO�&F��*Xw��Y�K�{����u��I%��dLD�n���z\��/�?d��)��a��ɉZ*��v��_�*6e�i,�\�Ød�D��V���'uS|��8�{q�*���6���Iy�-��U�i\�|"���[pK�B���E����qw���XIi��p�մ>����B̟8`l^Ի:���?*��X� ��ŧ�n�ߵioo�pf[g��1^r��:��Fm%t9��w�98\T��Ҁs��(�-5�����}��L�aW�cx�(8���
p�����~����6D1=�q�X��8��u1����c5�Ѕ+N60�W����^),��r����ƣ1�-H�w�%��[�S�$�'n����J�!V�fX� IC|�]�:{p��wS�Q�����l���f=k�����bU��q�%�� �*ɪ7s@�� ��ʠ���T���Gf�R2�\c%Crs�Z��%E{�p�d��O�M%e���v!�e�~(_�6�y���D^�F}�'�,���P����F�Yo��݅'=�P�L=Տ�93L�R'�+V�k: ]z��섨Y�ދ�3�
;`u<|[���<�E�U��S�� 8����wr��6����c%�zu�*u���3H�ɥ��3J"��:�m[���X�U����Q	+R��-:���H?�ǡ��_��r����B�-�̧�ք��k����o��dA�^������8Lb�5g,���@fV��}��$3�'���>�A�4_�:��C�~��
�J8ANt�}��hZrg��DS1'�gny����޲�nP���X���}@R�V��c�&=T��b1��4s̽��QW��9c0+DZ��
X���{#���\W�Z��:,C�0lW��f���(�@�r�R\о<��������8q_*M����p}�����y4p����1p�eR%��q�Ͳ�T��6��m���tޮ}~���ڕH��e=�p�ᛨ���s/
d���$�4�Ț}U�Hf���X���So�?���D��4��(o����2��1���q;2%�x�>u�	&�/vG�ugP|ϲO	]���e�9��wz�^���.�����sϢ���Q#�����nV!�pB�A��v�V�F�c�cj_�"X?ʼn��So�O[��|m��c�6nń�[�A1��n�����C���$�\T�l��L��RHh�$�$}4J~g�?��|6}Sb8��5/�4�lW�8�wVk��/�������>�4�ܽ�0�jl�lBp�AP�$҈%i�D5�|�Y,7}5s��ܱ!�As�'2<|���N����8f�]�ϥ�J�D�C�e=�ܰj��6;��r@վ~�`0fʌ?�GT��_'M���ۤ��w�	�{�M�����-�(2�'&(F�h��$��%@;��� �zp�X�	��\r�7.�q�b�"y�U+���4�;���3�M��M��`�;���	�ΫU.��Z\*����VO�X9"<�֋a"�H�L<xmJW>Zb��	�TU��K�c@Su�]	�ַ
���G�M�Xt�C��s]?Ԧ�:e#P� ��	rD!l\�a†�^��\�3*�I�h�=��s�G�0>�p���O�wS�/��Fٮɷ%��]ۆ���3�h����O���c����g*r8��li�Fñ�Q,1I�M�t2q�R8�Xw�Z�r	�ү����V�z%@_�w�D�fhw��Y�#���C<)���P;�8��?Eg�F� ���]R�=�U�$6hr�A3.3��p�v_.��	��b)�.=�/_�������vg�>;���-	���uy��`i�Xq�X�ȟ��n����w��q�EH�都
��8�Je�J����x�)nb������RZZ�Y{ᴱ�Z���gw
��b��d�MG�>H�2Y8�����c15B�$B����:%�d��ՙ����χ.9a���RY]<\V�&����<�6C�@��%~H���*�?ސ?@4��/㵀��'�W'�'��7~
$G�@�?��	�D�q7�����p�(f�K���r�ԍ�?��\IU�@������{N�3� ���B->�Ԃ��:�gf��dY0��Ѡ^��62ƃ�Q��19�'L���W6������k�b)��:�^ױ������[�f�֦�3�[��ׁs\�^��-}"��@0�B:�L��Y���������/����׭	�%��~�y+�^� �Ƅ��^a�V��9B�<��!݃�%�ֽ|�v,���Z(,���W�	Z��'ꔢ1��cӓE�}T����\��)�`*8�5�p�Dj���7 <�12cڟ���k��G�a��]KL���\k%b=�u��������"׳(�G��Ž$��	�s	u�mnRB)wR�b3s|R=?���U�i.����9t��o�d|�l��A�(�
ۃ�fQg橑
C*�L�J���ך������f��#��0I�C��JB������4�@ط���F_�	��������b+��=+���*��)��D�A
�C�Y��at
��	�b�+w�f"��,��7.����<]�|仁�R���;�?��׿�D{�?2a���j��f���+U�Q�<g�6����n����S���JӧNUp�mH�� l��blW�,�:�X��v�|�j��9�3#̹���������%�����SF�G�L�$�em�Fc��~ǖ8?�!�����D�:ĆWj�"E�U0��T��*�fs����,������^^���O�����3�BD.���4�p{<�H����
h&�Nl��('���a�ۆ�V��2{]�5�#K�&M��̙�e�OqP+�,�'�(ځWd�@�)��ٍ�1�_�-�J��M�ڴnyK,�q�= ��h]g=:�@ifWpe��疧��Y��'��H�Q�^4��]&(�V�"<�#˦z���Co6����O(ҙ;�7�ӛ��\��M��|��C�bz�Н$��<�D%���2;��2~N�J-bx��z�<���/��,$ð������`
���c-��oj$���CT��	�G�1u�.Z�|�x
3�z��RAֈ
��#��@����yT�k��)E"g"�]�u�1���z��J2�x�z�=sx��e�BA��A\fo
�-~�Y�[䞎`�V��ZB%���5�q
�9E��Y�
֋g%��R�+Sy9�~i��ٰ��MtG�HR�J5D�;���p>�.���V��[���
���NBU,$Q�<w�n�ۢ����6��6����3��,�pwM�A�����~�����&�X`͊���G�FRh�ߖC��b#i��@����Z�x���7-`�D�!Q`h�*�ACE�=�5�#2�#h�&7ˆ#JH[�@�����5Y����w����5�,•ʸD�'MDT���Q;�Ý��rJ([��b�j��K���m��Y����PH��y`o��2Z˛�xF��7�T�V�ab����e��+3�g�a�K	�! �
�z���))���[��=�1�G���QiQ��n{�y����R�K���㕵qD�]�Ԟ��%l��E�06D���b1�6�%�.�UҏG&a4ݡƅ��
��W��\՛
B��gjo�^�m�ȳ�[W<0��) �A��33CxS����c��–�X�X�-f�X�i�L+���Z�"ľ�J��%/�ؠ}㈷1H:#��|�n&1C��~k���;I��yH\��33p	$�a�dg}	|Nڶ�Q��)�8��<��2�#�a���RM�4|����u�i<�,/�x��X�-~�zu&卞:�uʄsQn#�M�c��<Q���-�XR�;+iN�7v�N��j̘ 0����Mq��=���%���V�A��_-�CjQ�0&H��㎎v�0��jɥѯE�T���F~���ɰ�8�_J1�`$R�RW��g&�$Dse!,�O3�
�?��I��Fg<Fx�6\Z$\aX'�^+�����Ub���F�2����<�J������3�N��;�7��:em���~=�b95�c��\�9�Y�g��0�)Uk�v�Kd6�Ц܅vm5�=[]���'(�wV��Y�����Xb�ٙc3nW�w>\��4�ic�s"�e��E%$�4΄���M��g�򙃇��	�b�������c�~�D�
]O�J<�N�%a@���s�mɺ��ٲg#��<ߝ(��Dê���1�.`����8��*fJ�::�݊.8�"�> �+s����2�5w��T�P�Z�h5��u��p������m��-�TP��� #�����0햲�Z9�t��j����s:^R���[o)��p�� p֟�x�K�"p���Ns6���Z���x"�ښ}��&��������y����J͗<����'��O[,���<��٢wй�ɊJ����a�˖yS-�N�]����}�ǔ��}9��{�Q�D�-YT���_�a��x("��h��`�E���:��lf�Ù�ț{�#^��YT���
o4ÇR�d<����p+�r\[d{��|���{`e���b|2�Aש�l��<��A�b
;�N�TN�n����
��=8^%��mIk׺^�P<9.y���g|��ze>Ơ�v7�U��)����:2-��~�[RR�$��g��u��ƒ���
i���^�ɶ7x�%�T���IÕB��!W��l_����8�U�8�F�_�S�� �%�t+J׹WƧ�oe�P���r~:��-�]�\������}f�Ѝ�C�|�ov6J&�\���,�eY���vt@$z��8���,h�ʾ�$��M�m<?#!��X��35;-Dˑ/�_I�U�<h糹#��1lR�/�_��`�I�^}H#2����!��Y�F+�)]I����T��/��m��L�ڱ�L_m"?V�ܑ簑"+x�}W�ֈ84��,�j]0/PA��l�l�Y].�Q5��u����ù4�����&�c	�Q[��@�������!.t�:���� ���d]�Mp��9�ا+������/�/�	�.p?���r#8}!i�k�ɰLԼ�x�5���ܞrf~]���
��.oP�+�g1N!���4������
��1^���Jlx�+m��#9g�D��~|��^`���J)���
�n��s��d�Ot�-�s�.TC���C�»Z�.�W�h0��Q8����O�&�Y��ْ-z�?���!�\�yHz!�eԘ��x��k��u�*��A�6�;�u�i��D>_�'^/�0���m�kN�7/�~�شF��
V?���5�r�|�d���ē�u�k><F| �䙱m����Hu���wkre8��h0q����+7�"�:?�I���s�� �
_��=�S�""O���׳t�x�V�'�۹R:�H�[8��E!��m���Y骪3�p���[�)�	y�Z�pc�-���=��s�x��#DFM�{|74y/HT7CY���Q�}�Z��X�q�8+��Џm�&�Ƿ�QS&�t�5z��b�L�2]�A�L�����glڢ�),J2U+���������n˹�S�`�,BP���[3�(6ʵ��F{ML�V���;���4n���
L[P`
OpT��1cH��O4�_f�Ư{v�bV�s�OC��B��<F�#3ˆ�t(@���+B�$�RGh(3v��AM1(:ь�CZi�((�v�Ȧ����"�͋`j,���N 8�5�R�~uT���&�6���i󥔘Nwf�Q�K!H�_�)|����L���9��p�ƲnJ���N��Q؝��X�J�խ���7[��o�K2�ŃM�%J�Z���n2v-θ�g�
�_�5��0ϫ1q�gv��Jc�1?��Gkc��x)��A�GJ�lُ�-���R��k��|���yP��w���~V��EUB�3���l��9��k %u���o�*�8���i��3�M)};&)Qc]3|��Re��nQ���ۑl�v(��"V'Xo�	C@�0�$�NYb$��Ϋ͖���	��JKf�����%uȯ�f挄UJ��^�CJ�:E�t;C���[ԥ�Jx`�1�!{.�>��A�Au�����Y�;��̻�f�`_�_u��Q�W��0-�0_C�(�� Z��0?�d��08�iğ�P_];�<���5�q$��Z���6�Gy���A$S���ć���Wd6�d?�?�$��GcB�
��C��C��X�������s�;�GCý����8��wT��ж�4T��C���ђ�r5,SC �7c��M`og,F��=˽s�L�ZQ��Ӂp�8H[sG6>R���\���<!3	�6�f+� �a�T�R�fR��vb%�?�ICk�v6���;� �{ax̗/R�^�ܩ)`���\L�x�w1�Œ'j7� �O�� ��/�ȡ�վ������'cW��F �����9�QT�x��^�c1�X��`��:������\Z,�) ��V�ߌ�ц������;_����!���G�ѳ��Ǣ�‹0)���ލ�SN'��z6�?�H��='��:�S>��+tH�TT��Y3�;�N�R
��ȓ��±��F9����0[�x�-���Vձ;Ux;�ǛIA���Dr�A(��dT�	D|�%�*i;����u�&���úѨE:�`�� ¡1ٸP/
�ǚO�6��=�����U����s�%�n�d��~
�!�p�,�󺀾 ��vr���u2OQM�u,ޚ�GW�t4��W��54��R���i.W�Ӗ�,��0�.�b��rG��.j��2YljѨ��[T��ߓ���w]
���#e���i��d3w;�v��b��	?��AD��"���m7��B�1�t�h�@{l%6�Y����x{ 3fx(k���PrLJ��*�,�%�2v�q�Q�h0�,gxb_�K��!�[𺫍�0��&���BP%�j��L,播\�w�db��
�d(�Z�;��
�=ޅ�z�<�9=q�cZ$�e�I*v��즕�M�)R0/cq�~E��NF-gՙ(�^�
]���$��zM��v�}V"<i�rʠ�_"ɺ]�d��Ě�@>���פ�~�X.���Q�=s�
C(�}yT��M��Lq��r\�WO�te 8��]O��,��(�L/ﺓ��qsQ�m2)�Xk홤�+|=�1���="����6L�|���/ �s�5] bڈ�C�38�b�B�r�������=^Nv��4;��]��A���0�\ k���I
`���{o�+����)62p�x5t^Ur$�]ꡟ�q���l�(��(��0[�m�N��9چ��U���Vz
���	�lhj|�0����Xt��9�hy�񳁋��s^��a�m�۝�AT�%����p`Ƶ*�fB���2���]~9�ϝ�C��C��G��ͥ�(��f�1|;y"��;�.d_��&�u�3/����S�勵��7�+ҋ��\TOmȉ�Ho�߯�"�GS�Yڧ�K���w�cN7�'��b�"�E����m/S��Q�E�<1�/�Z%K�< �,��{o6<��I�2HI����Wgy'q�cvDR2�)U�`c$���2O�H�c�"��6���@
�Ic� ��u�@��(�.s0I9�G	a�c�\��&j1��İb̶;�� A�+��G	-�"@�̢��3�%|�&
�nm
Z�e�͌.��´������}�D��L5��7�j�����D9�^;E�*@ʟ���i�9}�Mi�H��HCN�9?�tk^k�ȝ��c�J���(V�K��F�Q#�x�PI\V���ڙ9]�B�m�UX���u��2��1�Y��w�g���<�Yo��%6Vxύ�ִ=j�����/�x׳�SIo�&�ֺ�[��d������i���i�X�Q��^"����#+����;��d�j]��Z��y�����s���S>+"���?kM��~R�;�Y�5���5-���V2�QPR��t�e���c��~�O2��]v������`\̉}���Z�<FjP��<�<%�\r��ңX�Ƭ5N�.!5`@\��ꌊ�1%{,A�GI�_�;�fKI��X=�y����G��K�C��Q2�Ϧ�z,��Í��}^8�Μ��Jq�L��>rٿ}=��fz����7̊N���S=E��|�ג4(�ܞ�c�I8)�@T�`A�d(�n�ƘX��;�J�B���H����L�I��b�t+��pҊ*���M�엮���y!�2[���pv�3�:>�.#���hɜ�'>�(l�X[��4]
K.�]7��K���$�a��P�.M����qE]X�@�I�΅��jm�X@��k@ս7���I{�C<V:eW)^_�K��s�eb�J)ߎ_��,X661�B[��q�ޖ;@�+d���_jL�2�'+z*��VkA;�}�
���" ���b�_���y��H�Π���@�o�Q+p�j���j�V�ip�r�J�b���B�$����R��ǞԴX�;N+O?R����ju��vH�X r�3�%g��j�[�-8z�����'��x��p|D[0�tx�>��$���q�Lo�b2؋�O���Ҕ�����0bF�~ce렐_r���@LqB��;}y�&�,j�1�!�.�;�`����|��n  9�w
��T=�<	%@�n7btkck!HW{p�Q��2�i2{�+H�����c�`��.;-��^��>�o�-�|H���˭,g��غ�1�c�����P�L,^�j-��1}�����{��cA}`܏�Z??��<��tS#�	���M1���2*$G~R�xp�r�#j
`9��s���v�8%=�[��{��V.οaJ��0m���)���-��l�9�}_�N��:�E
M��KD)��H[�=��"U�3n��u2JD1_۱B����u7�a�Ө�����+J�H�ޒ�/(����I���,Ox��s��@��Ӓ^�������]��6
&|�a���D,�0�
�:�Ӛ&<V���A�APN�A�)���s�.*��T{Fo{��$0f.�kG�P3՚���֭j��������������y�9�b����ǭI����Nn�d�X��^��kC���i��Gh�M�'��ݢR�$�O#ޝx�}�����ݬp7��=m�g#�&�����!��s�g��0�!����q�Z�P3��+��h ˟L�?�[����y|�:�u�����-��)��"�Ǹ�r��!\�����/��r��SS����{��qp�~t��/7�������5�Uѩ�T�b��*�7�I~Z����(�^lΕ�������yLU˸U�T�in'�p{�ӀB�vS��yg�F!.����;�T_�HK������SӅ�2��[ޫh?#��ƞ���uk�9JÎ�hL�ź���[�y%]���:�a��0�Z�A�gd!�~�ֺ6
t|0�
��XI���c)�Z�#�)�8@��MՄsGTL�X����V�wm@����Orf@��[����	���,6lp� _cȕCo���W�)x����_h��6cXa�ެ������JŲ��XK-����d�up>t���[�M��zr����`�'�:��]&3'�! l9Т;���(��!�ҷ�>Ne7�6[:�`�=������p�lF�p��u)�R8��
��'�..9!g��5�
�BX�*�����^�A� ���]�$�T	�v���n���eX�7v��ї�~>��0)zۑ�|n�J���Q}�[�/r�g��1w^�/-h���]!����K���W2����itN����>�h>(����()���_Snݻ�#�B�MS��ޕ?1=�����xк�����E���8<ZAE8`�i�{�7���
����j�
T5��t���Mr�X�vg�HRk�d��x�O���WheoR������f�B��xE?��+C�<#��>�$�1�*�,��$�ұ	?:߃;ّ�e�(G���n/a�}j!��d�9�.=]͍1�X
:iL��.+���b��p��-r޷p�'j��1,�|#x{J�㘟������S��i��g:���â�Rql݊D�V�iz����Hj���7�~����[H1�Z�s
	�;d.�Z�XQ��B��
�s썬���~R�dt��N��C�8����#1#� 4L����:�6�Ӧ�.�k�VxZ��i{��O��R�dP�����=�'VaM'���c,����Ԅv�0��&�_uXX����D��A�G_L�#D�������-ne����(ژݜ�Cez^\�9��Z_=�8��`�Oλ�����\���ے+��ӄ6c!-�:	�ǐ"��>rz]�{s[*����z��%:�ĨFV
ĝ,@�/J�����vR�	�u�{�=��TÄd��"�����~Ơ�_�H��w�)�X�*|���5md�ܛ�r]<�>��	vi#�h{���k�|�|B�n
t�!�<��V����Z�o��'���!-s}��r�uN>�%N~Ay�m�s�;��k�,���_p���Pds�>9Pմ��o9P��o�Q�q[��-ܾߢ���(gdn��i�S`K$���eTƾ����C;1i'���t�+�-����9�`3����X�/ȯKX|��t�ZP$���ۂ˕��;�c)Q1��a��p/�k��b��l~Ǚ����]ٿ�6o�l�ʮ
\^[���F'ͽR��^��/K�Ư+j�7@20/N�sl�Q��B��SqR���V^\������Y�wjHS�X��XGO
4F��8��l����_�O�H�(K�x	����~��+�VY�›�!.	�q��7۳-�/u������U&�D��P.�;8�y����a�B�Bي{���<�-Gy�����M��w������E(_�*<� �kz7��Qw��րY�����KA��M�����1WNX�2�����:y�t�n��oܗ�V��:��O�рD<����ذ12)�b�I:~��3s�ƒZ�̌���,��I˒�g�t$��#��
�ɖ2L#���#;e�,�3v��M�=�5�z
�J���4����H�݉�1�0ͺ��8k�=47\vMw���?�w=n2��7ir�("׈�q�H��{��Q�>��*�"�6!�(ܳ��IC_O������l��f̛B�H�!@�Zq3�+�x�+��P���{�`ls
��tׄKϴ�4��IH�x����=����Ź��ݙ[� ����<SO��dR�M�<��|%��+�H���ί&��,�_a4���d���ln]|΢�����/)�{jp;�ܒ����L%`�5�T�a��9�^+�"T�"�X�u���=��2n����v�-}ۚ՟�Jy�~��M�)k�{;eB_H)$\Z����Dkkۣ�9��w�::��6{��ɒV�m�a�z�\X+_}o�kԕ֘=�ֺ�ܩ�a��7�K�����?�^N�?�w�EdL& ��H-Zx���]�^κ�5)3��Qw��f�'��UL�e97�Z���n����q��;s�6�O���.i�u+�͙��d�v$䔔^
g���:�8�l�;2	(A��<?��DŽ�Dؒu�?�2&u�0��6�^��0���GC�w�X��;W�abOO�v�Kzʪ�Œz>:?Y+쯾C�Y�8n�f�x
�r�������&�x���x����W���,%�P~3��cB{ gBX�,-��+�ƴ�e�!1��d,Aa�y"�]�ʁ�>�©} (P���5�9�s�5o3�ݻ�&}5������B����vs�<�s�M\�E$akjx��
؝�Ҵ4�I;;)u.]�d����-{o��1�U���F��z< 9��3-τ;�V�ğA���m��w��� DF��l@����Wo虜�5���/���/tg�}���8�{���f��F��m��V0.��N�)�����U=�����!�?=�
��ݦ?�����T�LS'�n8D��W��M�� �yN�Of��"�}|	5���j���2F=��;w�xB�J��0/�t��a�^�0E|3�L��Q1�>U��+Vӎ�T�P3Hf���k��3H��o��C��I�UM߀��9��J��$ٺi4����Wth
:3�PY��b�Rh�>��_+n��8�6@���
�	�aVJ�k��huO.������r��?e3�+]�}��uN�^�my��i�z�4-��Qp���O�-!6ƨ�^�Z�l�Qp��l㸓q��g���F(
n11�h���R�����
_6����l;����|p�$j�x�#=�i��Q�N'���d�����&i���[ I�:����s�P�'\�x"�|H,�n���sV��A�s��/�Ch�6Yt�@�����?��9���ې!z����
��V�	���maܤ�/z�[=$W�dTQ,�C*�a�>�b75�ܕ��
f�{m�2��C{�t�-d�P큺Y�CD�!�TCu�S
��řa��mJ$��{ucA�|JԔ��L�*�t��rԇ�hu:�MYkҸ�=��$k�h�?��Y��7A�g#$�Qk�S�Q%gaj��"�
]e;Ē���f4�Ѩ^���)�3�ST�ͽw���ul���T͹>'צ��}%��}�E\�y8*�NW�~v u@�S��O$�	��/[pk��4��p��L��!s�8�SP��!�B��'?�bz�6E�iַ�2�uJ�
�Od�	�W���(Ȝ!���,�`;��`�@_���4���T[�#F���q{�8�O�Ԏ�z/���U��\�c�Օ��/�*[}���BĶ�+�H0	 ||��^=�p�'�%�S`fN�S)I\�|���,�^�6<1�BّB`��ƅ�d�J����A4��"�I~&��KE�$��G�ʯ�BuM��$�TR��ğ;�<V5�[
��P�@J׊r�n[�����	��M7[0ǻ��2n[���x(t�����)9L��(�K�frC}�����~Z�gU7�G�N�Ca�_8�5��������}��T|4�ڄB?XG98�(�4tqS[3�i�b�|���S�N>ok>�cq#ʄ�݂��IK{�:kz�����R`�B�7.&�Q�nb�̳2���x�o��OF�N�G}K!@�s��$�~�*�y�L�1�߃A��=��=a$���Vy�n!fљQT�������u:����1q;�Q������U!�.���`\���e�������[��K�fB=���3[��NЈ�O�F��-�i� �b�)����0�;>�L��Ed?\FY#hz�z�0ZދS����K�Y��8I#���9g׀�>je�5�e\�q��"�B`���(zt�aARQ�M8��d)��������p�/C�u���f��A��a�Z�<*�X���4|��揿�j�'vK��c����~٣o�&�we�i)'w8ِ<��tb�3�	0��,�J����a�0-�"6N�fqAp"��"�7����I��W�k�U<��*ɦ�-B����|��϶&z�\�#ܔ��d����M�3��gQ˕bQ� �w5�/�k�e��*��3>LJ#�a�5��Nc�jC�����-�.*���/�� 	�T���� #�8c�On��ge7�{c�h�2�šԨ��/@
r`8xў�M�:�&��� �Jtg�fLf��t-E��[-#��nH��[���	#m��<|B��^>lhwG���]Wy>b�G�������9Eג��S2�w��1Z�k!��f���}8u���U��
����``�t���}�6�O�V���xk�U��Xԧ��@|�M�F9gYj�d�BG����SU6u�֗�$���))���^��+Z�S;E�~�:�9��\t,�Up���Ozd�$s?�i���Q*y�7�,-�Ȥ��)I��k��ԝ�D�w(S;�%�A�ܞ��ww�E��Q
?yL���
���ӛ]��ފ�?�d�mC���G��G�u�F+l�9�
.覗��Ǒ��#Y���@yM�
֑FDQ��қ���	+!�%ߴ���z�!�����魕��v	;�8v6��j=���{i����u����:�e}�q�;����%t>���)gvsl(3
�+�y���0�Ǜ�v��y�ɰ�v4K+nĪ���A����ޛ��݉�G�GrT����BB����Za��g�u�J����F�"}�Jh�@�+ڸ~��@�ʵ���!�t#�N�2���������"!G�.NL��s�p��qRfհ\�ڮ�}��ZL�:v�%s�����mfWD�T�{JSO9��n֕��YK.��Jf�/V�7د����$����ίߺ1i���寕0���ѿP�O r�` �� =vK�E�+�Z�q�,@d���<�*�;�;��)eA/���]��
)�:�Ou��W{�4�����kHiG7*�G��X�r�r&+F�>�>���h	�Q��S���
�Y]�Y�*a�=��дv;�U�|I�=�qj�36�Q~Y$�&���rpu���9�ih���}	E��Z�`.@���ȉi�	���JE6��B�L�2nܕ)6k9�)����|�@B��z�Xq�2@L�ӊ��
&i~8�gU��A�F$eO������&���
%���"�W$�����R���DWN���d	G�Q~�L�y�Yp���G���	`�>��KT���W�F���g�Ng���Ջ`7-�-N\�R���·��v��Y=�95�m�QSa�TA�9]�i
5:I�#�����KŔ�䥌�z�OՊ��
��x�-�l]�G����Hr=)�"�ʊ�x��)ҟ*��%����qs�‰h����C,�u��$Ӟ߅"(�ˌ�m0��U9ӝ��;��f�ϊ���M@�w�
�ٛz~�&~��zYc�[�-����B��>��k���ͣ�$�?d��.�1�$��6�;'����w$2qz�9���Bh�}��l�����/�Ug�P�қI;/��>��q�NO�`m��3D��u��k����D�,&��[��4w�F�aD]�*5'?��@%�y��Dp2,7�8�{+v��!0����yc��`��a~D�5�~��R}�W}@f���_y���Ks����*Z蠶;���Dҳ��.������Rv��a���~�F|x�D�U�q`kN2��I�i�3� �tVF(eJ��؅k�Z��`|��6��M/[�ރ��QJ���?.)UAO��e����
�P���=\F�U�jؤ���*�0��U��ǁ��
���fR*m ¶x��m�"P�Q��`���# 
RIҙ�����W�d.�O����q���)7�R���l'Y}����Ү
g��sQ��x#N
���:<Oa�m�W�I�,�z�T���3��a�g�飲St!��
ف�!�a�v�{�k1��|#�o��7���T�CZ��g~��t
�}���g�n��ؚ�Q��Hd؟̷�f�TQ�B��A`L�@�����?'>k
��j?����m�5u	�ˇy�W��é^�����s�3#��0w��*7��:��N(g�L�I�	��=�ɡ*�ߑc�
w�uz��</塪����2%'a��e����zI����Ǥ����|�=!��{V��+��YM�W�Z�^�'1t�Y�Pk0���,���9
�I'�àm�~Y������̖u�Mm��ܡ	8k��/s�#)��鶷]���qq�=�-���u���CpJ����f@qFs���Z�@���P�B��i�1�kd�8s���0���b?�l��մ߻���3$���wx�V���}�o��f��ȷ�+;
�d	Q�9F���G`�h�39����
dc�3��8���m�Ӂ�G�C�*�|�`��K�D�ÃU܆qd.�g'K�w�i&��;q„�1��S
�ќ�l�-�m���Qo�#j���0I��4�[�@f�	��S��9����NJVý7Ѻ|�p�vv\�������1��S9:;�g+��Lj������#��ف�W��]��ԟ�T��i�����ތ�H�]E����з)�f�.S�QR���
��CL3p"�צ(�z�-[��;��[m��"��������J����=���K�ۋ��2L��pu��^!q�H2���0�61�2LAN�����M=��q��]�/��
ec�j0��l���ݰ��N����G�e8ʘ%-V�]�����
���Չ��TZҼ��~���mo�ٌ��E�!���:�}��Ѡ�G���G�tx���z�!��l��(�L&шU��3��������~� ۚ�h��%�2&p�}�-e�-��-�S�(���F��|�c	�A{���*���,��>f��"�9�ڨ������ ��փ���(/̜Ƽ$)?���"P#d��֎X�����B}*���p�5llkM˻�V�m��i[�
$�&&u.�/�Hj*F�s��YM4�x���V��.���t˴נ�D�Wګht��1<���t�,%}�J�N�!M��zALl��žNs ���f{���
���`�ȓ�T,��-!��r��!�[�?t`P�ֽc˫������oK�D�p�o�'�k~ʄx�cW��Xq-H'd��T1�7��On� 4�|�H{�96,m�I������%Xmk��ñ P�����0Aej
Κg���
�љ��	0Zx=�Ώ�������Ax��|n�5H�0P���a�K:�y���Hd>8���D#U&��w�'��x�|�_���>_8]^�#/�!J��}�L���6B����#m΅�,J�GR�$gk���0�C��'�)�p^e��S��	ٙ���+3����;��u�O���9?�y��佲y#)��暤�4[ޫ�=��fք.9lr��t��{"OivL���Ҳ�H�"�bI�j�j��3Jf�W�j�n*��Mn8�����+�Wٓ�C�cg�K�6�eh�M)���JN�����1K��(|PU_��b�`�;�+5Ǚ�f���9�O�K��q�6�r�zP��6�Qw�@�[rAX�s�(j���T
 z���] =U]��^L3'$���bH��hZ0T��4I�8*�U\_y�n���x�����nn]�	�{X��sUB�S�?��'��.daD�DR�� ���GZ[j?�Z&��`G��I�>�7
[�\V���:{Lsm"�Q6��,>�s���.�x�^�N�n�Ms��#kl���H�ķ��qh� ���2�1�e�и
����ZI�d�f�DUC�0��2�<A���_"M|��y"����55î,x1Jɀc�<��4Yi!��{4�U�S��(�dQ���K�ǭӮ'���S�&�O�B��Sx��D�N��@��|r��!�@��.<'[;ZZ��P����LVy9	��{�ؽZR	�RW�`���c)W��x��J��J�&��|Q��7|�W���ȱ$�4T�\��N�7�P�e����
��k�1�ڔ��
gE��VD�_��3�k/��3Q,PR�Z�;3qt���Nh��cR�7vHfH��@p
W���vl����ŻQ�b�,�IJk��:��y�n ��=�~�k쵚8fn~PK@2[8�����f3c��{	B�,t�R����@�L�7G�E$";kDt�$L*;Ni!|(q�E�E� �o��s�\�WNá�G�7���?�֏�:A�?MOm��nٿ����s�z�/�X�P��-�!���<�Gp��RƯ͈?-=�`n��9.�0b��E�XmI�Q�Q��}��Q�I�}�>�gF�U�v�c�A���g���^Y,% 9h�k��8WLH}BZ�@���z��J�">�Z�e)O�Q�B��E�9�@1wn��."����̋/<�|�˝�^0��_�s���;hvC���Ng^Rx�%����r��b�������<ju,����IY�#e�+��
!���JP��^���-A>�vA�����
����m�Ҫ{T !7X7�;O���L��ᬇQ���q�d�!��;��[�Y�YJF{��P�����-�y�����챨��}X�O��t�%�wCiKe�9թ|�X�C�=-��o<r3�)ԛ{�7Sr�h�Éao�Q���{���7	{��M�|�'�ɛ���F�Ϳ1h���"mQDȂv�\;V�$����O%N��)�O6?F��i��-F�ۯ51�z�!7{���pv�{�	O3�ƃ)��)�j���f
����/X�.>���ԋ�t�A%�o_=�3 ��"�;���|����:K�*�����MD�����٩�J�m�Y����J�Utz�6�cK5��.��W!�?QĹ%
"��q�]3�o�WA~�jl�6��[��(V�]�LQ��.L$}4�It�XDF��:C�p�ވ������~S�1�p`)�����A�R�}���bh���$ �dw�P�
W��d�3��+^�)<�	}�o��S�C#+�.q�$��,��`f�MKx!Z�`��P��ɹ�44ǡ���8�_�E�=*#�h��U��L_H���k6OH�E/��F�L5��mv[�IFx����e�d� 8�O7��m�62}�Ȫ����c��ဴ&�Zw뚠�=��_��<%S_}�*�u�_��]da�#X.Y����?ˡ�j�_.�K3�MM�|;^)AmЯ�[��.�"	z�{=ڐ�:S�@ԫw�Og���(���^ٛ��X`��/,j3�1�J������(��^�i|��?sa`�M���X&�X�/Py��ƷZ#o�?��y_��1݀v��?̄~P�tڗ�L��.�*�[r��_�Z�.G3���kcC�%UYp����X,�5�br��j�h�X�7uYA�"�?/M�4��`y/��U]���t��m�`���>M��d0m����?�M�)w'����u�y�LS�����������oS�*IxSt��䳌�W>
��Q���wR/@)/%��ߥ+��k���-������c0�a!�я�����E��T�e�����ps@ڎ���)~]7È�MX�u��SUy��a�ͱ��E4n���/���0
��o��˄EJ��|߶�$>����{]��ء,m���_�6�ނh��-뭫�����K쥅Xa�&ZГp6�bI$��){@���:y�D����m�����w*��ie��
������\�A.-�:En4�F��X5��� ��0���B��l�O����'į�0������h�8͡�)���l��x��Ks�L(@߾���p�C���Q��]���k��
c<e�F~(5'L����/�u�~��O��Y�:��m9��ƾwy):�7O�y�Lt�B�)�h�:�3����?�2]W�BE������^�jC��:C�M'P���	s�
�9�
'�ڈ���=و伫;���q�u�n�6|�e�5��0��R�Ɯ0�@:B1O�m�C����	���
b�IؘHB�7�I/�+|"�c�sQ��)U*��e�����˝��q�T����޳2V�,����ZP3�~��EB��ؽ7�hEsp����{�Z�\F5�t�������ɕxh�0�Y�TL��X�${tZ
�ٍ��A�ſ��(U�6���Vry���Z�`��48$��,��d�kL��C���o��?�'֣j�5��H�V�x�LC�'\��*c:�F�����Ɵ����V!��S��;��m8"���བྷ� �`Oy��~
��_�B��/�<��&�d��&�◡��%�E��U��5=)��Fp�����&��+����G����UU6n�[�yl�
���@��;��S�P���0Z��h�����L�=8Tۅ|����a9Ǩ��\BӋ9����2�؟�Q�yF#�zL�u(�nʠyn�1@�\bʓ��n�tJ;41�����t�2I����[;!G�M��ޞ��+J���V��2�����B����m�a��R�d��*�J���B�*Ґ���H+J�/�Ŝahq�#(�O
�U�:p0�'P$��U�1�K�߳�z�j[t���OB9l`K8��j^�W��$v�/���Wg	'V*�lխ=u_ΤGN+8s�)c?��oqT|�޵Ӷ'������p�ֶw\Xh�X���0�K��O:�%~�3Y0�a�^����l�|D��"˂�W�jJ�-�1�}��sA5d���yP�;C�g��;�y��SH�}�M
q��Z��չ;�u��#�NS��L33���L���Y�]4_��������OY<H�)��?�{	�l5L5)�I���koC<��/�D�6���J&3�9`���
�C�o�2U� B�N;e^b��O����7?��շ	�$Y�vi%`�z~�B~2�3�.�к9����d-n�"��<λ~6*���(�d�-�4NTl�d����R-��%��dN��"3��~,�I�G?徖�!e8�Ӯ��s-h� �y��Hx�J^H]֣�_і�M��q�xg��!4��y��Ŧ�2�Ha� �Qv0VbB9�ɷ͞;O!�kq�4���p���I��Rz�$�nMbpP0��p��}���"X0���Fz�$�@�!�����6�?�F�1�6�����ڲ�c�[�Rœ�=�6H�J҆5�e��S�&/�r�F�D�*�Ng9��ӳV
�x��
f�YjUu
a�����3M�'�?�=Y�K��m����'�`���gjo�0�N��[cۋ��x�L�^�\}޺ ���V<�	�j��u�ruz/�%d��PI`�֩ܪ_t����%9z#����ɇ�`0�Lk��W`$�K0
�c[�<��:���|�4�!�!ك!�%��#�w_���G.�LqE��vT�젻쏲]�Q/��
�`���C*e��k[m�g	���-:�I�x@+t���0@p%3���� /�P���n�bR�܄�v���=�g%��h�j��h"�i�gy�!��Ll�Ъ)h�Y��Os7�ݹP�	3���.�s�Ɓk�q�0l�r����1ǥ'{')2cE����DO#�ve"E]��Fg.L��QA!ᾎ'��~�v�}sd��7�b!�'7K-푩݃��E?��a]	�TZ��K.!
����%�>�\ִ�?Qڀ�p�GN7l�GJ����b�*A
�֭����Oh0��$E p�Z�☖������D2��,1���\�f��3@r���$�S�m��3���l!b@�4l|��Ug�f�R�"S�
yţ�-�"ϕ�,2��B���WԌ���D,�E�S� MY
��>��C����;hʶ�S�O�{�� ���)n�/T�Dȹf��D��=�w���/[�yXh&˙~�d�������l�ֶ%i�1"�1�SWT��R��PįR�q��7LsV���j��C��0
Ro��h�.�ESl|h�T�n�G1�1i��̀�#,Y �? ~Ga+���)�
q��@Hf�d�w&����tP�o��+Z��I�\����L�YB\��Ir'�E�4}Ըe�.=�$�wl	��v_¥�g�	��o3a���|�*�}5��� &�/?מ*�G�)�Kt��u�on�UB1>i8Lj^μ�O��i��2���ο8uE�`5��$y9���Ϡp��bG�j:To'�y�gc=������X9�%�Vy�a?{�&��s��*#���+�H嫇�����+A�9�3U��s����w����"�a�Gc�n60)/)�y��X"�t(n�#�P]��L~,�%^G��B/��W�o˳K�{X����c�A�����u��T�T��;\i��T�������B��6u��c=�V]���r���R�h�/e�5��4�.��Y�[�
�og�cQ@ҋ��'�O:�ϭ��=�
~�ዤ^U��I�<nK��ԒȀ�–I,J*��<v���M�e�Vt͉�_ˋ�i6����͹f�+qI<|��6�>��_�D�\��n0�"�8�G3{;Z�hH���&Nb+��{h$�PŢ��=z���sWE�#�����e#�Nϓg(��E��	4Mm��U��c*�6.�Zov��f��-	��Eš�|��"fl�e>����g�Trt��t�!E�n���~3vߨ<�R���cD�����������
.��4�T��_6D
?��V�d�N���Ӗ���P�#Xr�h��tĺ
C���tcɛ�^��4�b�̅�)����T ��bB,������k�-�O���N���8�mǡ��=؞{^%8ቂSx0��Ksu�ߓ��R�G����Lt��K!�#�����J�>?�j��$,S����	���e$�g8e��M?�)b�t��>��TA���s׫���Y�/s���{��J��İ�
w8�֍�h��ݲ���L�WeҴ%�+�}$j��8z��m����ɾg�;
�Qk���+p��h%�t�b�z�ˈ�S7��$��5�F��G
Q����r�Y��Ԓ��qسu`[�`�*b�#jbE���DQ=��u-��?���	�-4����:���A:3���dn�_���A�dE�L��m�`~ˆ"�+��2�`��|�'
�=
8�N�����^GfY)��v�©�Uآ��r1�y���Zǡ0s���ͪ��k�>�m��ѿ]��,ٕ-���|'����twYNS�PU��.끔��<���w�a����&&
	��C�"6�Ec��)��f���w �!�s���&��K�����k�\) zu�IZ��y�W��eV>8����(�R�T�Jч�(2��V�VK��~n��~��c�BVj��@r�^!�%sP.��s�*~!�_��x�sͭ�q�h
=�I��N�q	d�������ܧb��h�8j�E�]A�2�XX-�7�PGg�y�c;s>Ȼ"/S'T�W7�<�c~yzu�+��(JE[lF2Y���σw�N���j���8�X��x(+njTͥQ�L �anm=�E��2���xJ��iz����a �M�	O�Wr�L�c�n����.�fъ�S�e&�]�����K<�����_�El���o�1�_!����]/a)
�Qԯ/��7�-G7�w�UsF?�t���M���޸�i���-�7��� |���p�Q�"�I�E�X��l[,<a�gg��b����*�\jk)�?�C�,�y���ow�q�OfB.���jk����+qY؍�l`��0�1�P�q]b�K92�X�0r�d1���#�����ō�ܕ��˵�>''�����`�,�����R����t|s��K�/3S�IG�@KZf�
�/N@�m{$z/u�)/�b�[�ɛ�#��kMttE���z��-]~٣�՝�}_;M���B��7;X��w��;��^��������K}6.�/�Y��U�'?�p����oU
�X���[G�ST�w��8�#1=�Z+�:�s�HU�~S��߈���m�*�����'�4|��2d]1�B�L�D���5̀�z"�ɇ��`�{D�C�<�=U�2.e���i�",��Qulv±C��n(&sh�.{DŽt0�\�3�Г)7FQ�����p�����Sr]A�)5�D4
����ӻdO���)���V����A�aV��)Θ&L$�~3�٪B�m�@�N"�����y0��L
]�r�Nvg���֣	�a]�����C�{E��~r��7�(���
<�D��*CT�dr!�	��65I��%E�J �y���T�7Ylo�j�=B�SІe�9RWh��9���l c���`U�𛺱��֌˂9P~�,��M}^M0m�w`,z�m4�F���`�gȉ�\�FQ�|�-�H�s��=U
�p�L�|�tjz�Z�W�cϜ��A�<?�K�͘7�oQ�)jA*�i
,$���F�\}���$�Ȟ���$��҂#�4��M]=鱜::$��q��˪?�f����S��3�d%S��:��Mj�Zf1�׌�#�L1��-jvOO���W�"��&rtK�>�Z~�T��raVB�	�0��k\l�f2^C�/U4����M{p���9w36�w��zwO�*�}��΅���w�W����S���ı
��-�j���\\{ꇎNkBe8<4w�Rn�	��B�)Dd�p3���nʫ�0��_1m�5�����w��%x�ن���y�5d��N-_K��Q���8t���=�)��翂P\?��D�TSK�8-0�&.���[�p=��\�+���<��&�%���]@���r^KL&���Hُ�y�=��+%c��K<R�Q�,]f�~�Rd�3#��j^gW��k���Y:����m_3In#�r.�SZ���K����u�"��6���Z~��ޓ��z�(�+��&�)���'�}7gs
��ؠLJ�?��4�jR&��9A��Oy8���>���g\!k�Xv��	1�I9��J��{F��8�������/^i�k'� ��=��E�JV5/ZZ%���S�M-p����$f�6H��Chk<n�߷"���^9h0D�:�ٝ��7:�穊��0^@
��j"���˥�
�BK6(�]ҧ��/�ro}'{�q��`8�Ai�ۜ��[���v�{�i�����\	��a����,a�,�T/�5�8��{h���R��"~.�~],{f&+�ņl�X�9��������~9���6�
�F<��I��+E���ox�hSKA�ܮ�^���]��_��^O�Ɉ ��M�����Z7qDK]\��yJ���0Z��S:O^�_���V�+�7l/QV��l�/	\�S�5��1��t�(A;u���S��7�?1�|������h{x��lo}�o�ad�7A�Wu�w2̽�)�:%��qBha���z�'���	�o�e��笕S=��A\P�3��C�)�z�<b��O@��b�C2P0��&��b�1j��P^qp��<$�n�l7��>%��:`��a
2a��6�b��Iׅ�~�Fc翋Y�G�"�i�F�Hxm.��ngq�~�@2���5�EF�ո�ז^�Ѷ��i/OW��.hJ��Y����Ug�{J�.��_F���<�y��)b'<�s&8ѐCKMZ;��LF�ɓ�N&�9�l�_�YF����bҫ���2���:r��9�ʘo0LZ8��A��tF쩤̻8���=֨k���z<uz�|������v����!rK���b-J��׵I�qg��ah�R��u0�&��WE0�V��O����p�	�����\��T6��YH��������Z�X;6���x\D��G�>��L��/l�\�*p����~������#�4����2"��Z��t�J��26�m��j=�<{ܭ���+r�H9˦	�p�*F��M�e.�	SC���c��K~s�'�����kֳO̳yi�AU݀�6&R��S$����
@^]��^���^�$n�
��X������D�3��v����N�X�A�q8��T���
?��A��yD�#�h0��8Z���p�T�n�e��G�=��C���Rr�����䩫/NyX��}D�K�"g�QG�h���BBEŘĪ�������`�=�e�;�#�^6�$��HM^_z�X'(<�"�����&�=\M����$��Y����G��'�����ƒg>mx���:�*�Nm3:H�դ�`���Ս�De)�Ͳ�b�4+�m��g�����3MlV��k��gڟ��1A��j��D�D�ž��^�~�|��uZ�Pz�� ��N-��w�^bW�l��/GL���)�l�T�5�%�=�螈,�<�׹�RD���\n�����g�LӞ����B�R�v���f� ����|�\�U�k2���'���E+Q�>r�Dݨ
 FEP}ަWQÀ�!�b������-\W�[������_c��"�*�(�S��?��>/�S�;�o�ae�	7jv�=��b�h�RT�qѵѿ#�D|RO��d�;�yxWa	4_h��q%��9 6���\�l%4��h�W�Y��i�L~�͠4��B�*RU"P'��qTh����6�)���Ԣ�U�$P�蹯]]'M�'r�ϵ�g�-��j�$9�|�� �H�#����?>؀�;�rr����]j 4��p�k���|�;�VvB��q�/�9����
H_��9��2?��ME]�x{�?�b�rɘC)3xm
���#�Z!�:m������s�z5/��8�2/Y�+�:<wrM
z�Zd�AN�c ����2w#q�l�R]6Q8�K_�Y�=�].ອ�i�貊��b���UkhyTڏDO`�{E큜�=|]C�l����"��ph&bA9xt5Bs+sQ�f��/E�x���؋S�9.��A�6~�},z&�����  "�1�eS�^m*�a�\���rӓ����-�{�5�:�_��Q�~��ѵ~ǯ�Y�@����VT� �_��~����FKh��I%��J\$���
/"N�f��8��F��>w"���k�\"?���h70�7�[���-���iފm����ԍ����2ę�K�²�EJ�=2B1f�p�$��M	m�}"��-_��-��4И"���}�k�Y�����V��j�8��$��;��e:��>h/Y��{�[�*�dx6P�^���m~�E\�ggH�ی-�{> ۼxCi�lj��M^��"��JfZ��T�Dha0�0bp�9�G���}ǽ�)9h�5u#,��Q�	��ufc�(CA�Ƨ�A��{t�S����	ъk��_ctY��}귢�BQ':�b������ԫ�K���-|��.�S���4ϓ��1v$X� �O����H�_��|��}9� KH~�/{1�h�?:Y��+5�}�0�b @'ҹ|�l�rZ�w��Qv�kܜ5�:��?�7���:���E��x$ƫ����*r^+��;���Ea�&7��<G��
~j�0�c/}W����ufU+h�F��1�ː^!2o_���{ey�=3^"�\Ӱ��<	/dr#�.�����L�{mm���{"��K{�{ۈ���R~\f۰����h���1v����^P��wL
�ol�M�n��t>,�Dl��(l]�a�=�կ��ve���m:ް��;'L�c�D�H�4&h@�O1g��_#��d��7�@΂����M'n�bq�%�?���q�$��%��@�/QûP�Jg��$��v���3���������~c�?�t�Blm��w��ᒾ�B�#��ڋ�{8R�(5�9�L�k�aA	1U-�׬�tL��:����]�x|�(U��A��*ʵTu-��zO��t�qF%V�uNM������H��1E�k�7�g3�����F�����f�~;��;�� �Zv���`�r��t%Õ-T�.>�uO�i��9r!Y6Z[��$�d�A��
�7(N���@,VV�V e�Z������eP��-�!	����n:;K���ժ$
+�>:ɭ$����
��2b&pb���e��}��.OƊrFv���G�g�j?T�bb�����Юk�?��J����O0��o�z����5`���z�Qq�wl14�/���jP�p�GH2��a�?�/�:�*i��ީ{�+^b����(���Y1vh�¿�w�6&�g-�t8�3}��������*��	�7��
5�~笪wF�E��_�3��-伕�[�|�?�Z��y���Y�.�k�����*$�$�4IfX�L��i����fd��������H��O��}x�x~#��l�q��U�E��l��Rm��d�.g�lo��}T�x)��zZ��<�{�My�=�`.�G��yA�7`��S����$ߡO��:a7�V��_�"m�Io�u%�D�&P�,�& �����yaIQ��ɽ�2Yd�g�$8�i��������Zhm,�=EG5��Ɍ��R��S:�5چ?,� ���QO���{�^�h<3��f��B��!I��x}���IA^Y	'�P��D{��U�Q�Ni5��

��l��V�nj��V�K+��v#@�\oc�<U.�rР냈��ʘ��_W��#H/Wl�~,mj�\E�/�!o��y��^��X9��2s0p�Lq=3�#�<�L�5�n_�n��ns?
��Dx��1[�w��lN��bn,�ξ��@n[YUU��I]��[��cñ؃4�M��}��3�t�dyK9��]�W}�W`:p�Sw�+�N�Q�����Ωp��9D�rh�!�yn��u'[�]s����b�,�4�f	�b%Zj6������7Q���5y5��<ίq�>�`n]m�ӌ�'@�o$�� �5���)cm{!�?�_B�5�hd_�8*��/����ro�'�?��Gs�$N����d����}�E]+� �p}�-�	��$3��`)�����0�����K��@z����$���.�	��$��v�I=�Ԝ�&���%H+� �����-L�3��&4��H2�еe.utᩖA_*��S�[']�D�W����ʈ��7Y3
�n�Knr�j�ז��{e(�Sޫ�mϦ5,��
���<�]`M�\睨C]eb�!!Rc��n�	���{T��;�
�c��,Cz��1��	�9ϼ4��I#tJJى�{"�5��3He/��sH:hk�;I�Ofʪ��^�T����$ń���*�>Q̝�ht��*��k���Jr�_�<�����k�J)�&:x�
�O;��z#�/�R��]	\���c�IF�?
B�@�F$
�<yU��.���Jv�эAZ��A�֝υ<{�,Lvn�uh�50~d�Z�ѿ����7�y��@�Ъ�q����>y�2���*'?�R��;g@&#J�m��� ��eE5~Y�5����RnR֍���Z���5�
4�>os:R�	�Jw�ݳme�6�	���#��kdU}�L׌��+Lhel*zh����Z!����G�_&��W��
q�&��utn�C)kJz֘�k�;퍜��t�5
���
9�i��CQRW]���9̬ڗʠ8w�>Yjś�mDF��;�k���j�$m�Z�����iHP+g*��՞r���$���K����#�je 5N�lTې��CQ(>+������6��Z��W.�ዻ45��g�J���W)���O�\��~���VK�(o��UZ(I���� 3)�295��

f�#�ɯ��ɥ�04q�\j�3˻,��5%�r�k��e19�k�;�׾-�#�z���|۫��oBf��yw�Zm�8�!�Je^dTuR��`6�	���Z�u[�<2���`\J�yZ��7i��\���g���5W���t$����Dj�[FB��&J�j^\)�l��>��lt҄K���&4����zh�j-��}�i�'�`����8D/��O6|�gu�7b.�k�IN����x���1���f�Y��z��������Q6���Zy��bC�A�=��h�S�����"a��Ej�1�ÝSQ�O�)[�P�cՑѽ�"��VLofp�t�!ә�q�XB{�1��-/��iJO��W��� ���L**
�
��Ku���oH�N\�g�8{���P����!����e~�J��
{I�w1P�P�cC�mrG�=s@Oa��hXL����?����]N��A�pb��{�5f�܉%T^w�=�z,��~A&�6��x�=�ĽX�6@�UYuh�'�a|E:�b]�ɼ�����b�*�c=�ߋ��;Y_�G�s~�w��z���|�5�!A(����{�O%�繳�j���U��](�
Th��Tm(ft�sX]�Q�[�s黗;o�:!]qC�V��T�F��!r��i��!�̰&)��1����o6�q����t��{O0	��SND8�Q*hD�8�gJ�C�qߋ��)�+6{���q�5ko��2�c��{�����@�N����@�K>A	!hR����>_:EK߻?�:��f����ͷhk��i�3��禠��Әok��#�,�=D��V�sR��T�;\��;�X�`Aj7�3�:2f(V�\����Nq:o������`�?�1�4Z|D
�G
�����Z	���"'��;g�>���%y!syL��W��4�M��\��r�f<�7�������=/�*S���F6Jj�R�
��teyM[����0�ӈZ��.�B��sUH�P��O=�	-;�U���sk�#����b����y�Z�u�%b���jh�$��S��k@d���/{�2����U�:��$�V�
E��x�i{���D*�F�u��q߻uL�ȜH�d@���3/�
?�f����~��T�B}�H�U{�n/�|���3T�"�91�ʉ3�Ñ�P��1���Y�:��}=��!��B��M��oq(�N�� �f�tI�'>ʰ�,����-�P8x܆��}�$�eR����R��`��������ɽ�3w���|~p�'
��`y�!�0�}n���b���E��g���͔����nM�W'1v�42��Z�w���
����u�/��[}��0�EU�#:�-Ո��9�2Y��BJ<U�o�c`	������9+X�yСC?�ܯ��Js�I�M`/��g3��5~)Q2��Η�t��m������8���]�U�6�\��}�P�L�B�orȽ�Dik�I>.�ݥ͎�y�5�r�?�"fIh�~��bw���~����ĬM�亜:X�� ��V
'…���'�JwT�21����N�:]���*��x{�B�G|g'������=��X�
��{�(��� L(k��?3.V��$x����/q6�z}�Z���g����C�&9��ZZK���,#"\qv��J�z_:n	r�vt�V�nX�j8F����[�N�7��O&��O+����\�|8D��nz�\i=x��U���-gi	5M�6��[3a��'�����i}���W��6�
�~�}	M.�w�TWBᨩ����s�<��w4����R���
I
�`��~�&u+��E���W8�1xF\CeT�V���5υ�bu�	���R��T����q����mA����#s�|G��㹧7�H����w�ڀV�n�:�1>�۟���>ܢ����;H�S2x��4ӽ�~��w��H���P��Z�9�YܓM����ؕ@�C���@�b����%���>�O�/�pY���Y����9g��A�H^���	|.1n2a�q�a��i�M�]֩J�FH���L��O&�;�j����a��Ds"�[�����F�_w���w�n*ݳw�G.���:=���j���.h�<f�o�a�X�kq�n���V�C�:��=V_wt�M�����}+*~���
�9��B=q������Rw���Y��ځ@�h��eh���BH�(͹X��1d~�YEw����R�Br��r��4�c8,���b<h�΍L��e��t�?}���/��Lb�������(ުJo��+�O��r�gn���{4nE����;�AG>��E:r��o�i�b�+�ӿ������X��q
���x
�B��;��fa?��u����y�� N:%^y��y�������	�'�dm�?�UuK�Sv��D[�1�I§�>mu~$��&��
a�Z�j���5y*Qw��QŇ:*��3�2�f��*g�tO=�y�)��� c*7�������b��G��P8�,e� ���/^�9˺P��ʁ�8�`'\`��F9_d��Ϭ�w�!H��9��	�aI9� &�G����ϧ�r'?5��|����8��r�6���Gaz��#j�{̛�\&m�ǎ3J�.�=r+k�	��_�wd"Ǘ�"<?�P���cČ�)��f�vkd���	#b�O�e��dw��n��3`�>I���l)TKP���j��r����h(K��t�׳�PD����{t(�8�V��Ֆ��QMp��4�}��Q�������!c�<^I�-_K��������pO���@������KJ'P�+U��3��{���o����KY�u2�wn�v�7i���&5Upz^�¹�`�t\�w��x.�$�0��`�ȯ��Y����'D�u�����������Av�C,C�j0"=:钾Q�%�F#Cl�氋��涰1���D2���xB
xY�/���Xb�H9@;�E
�z�,D�=�7
` ����>d�$�
��G��}'� �J��9��r�o�ELl�0�,@�\"�\a @ _��L]��&[�w���ЌTh�Z�nB���J��;�3�9�ǩ\p��<rE��1��p70�g��3F��x�7�z�������ida���`�!�	�j�����ݾ�����EF1�j��-%VA��ڶ�{���'.����\(�<y&��D��������iH�F�2�j�~���ǯJHp_����rZ���6�#�����n�E�L�/𰌪?�y�)<h�O�P�}��Zӟ��4NJh�9��n�@�zr����;�6������e.��{�/J���:�U�r�V~cl8Z��`�����MkD���4����2��fa���m��!WE{D���:�'�+T?��+r�Bq��*���h���aW�v4HI���x-ٟ�H������	%L�^	�1�Z� �漺x�p�GZ��<�Q5���3A �x�t�"���t+��X�E�L�:��G,st�D,>�=��By_~5���F](46FT���jz��%��@$����&S��'�x��|+9�ܺK2K��)P�Lr�������~Uz!�ZZ0��
;
�+�r��"4r���|_x��<��b�*�7�Gx�ɓ�RL�Р�XC�w�S�L4�Xf�}Un��n��q�q	��%�����,��1��2�^Uo���׍*�X���s	Q�aXv��a����j��2�]���<˻I����X��,.���au:�J�6m/�Uy�dԃvG�\d��A^+tű0*��ʟ.ySТSz+����L(6�>����"M��^���b�u�P�p��qyWѣr�؆�dqt�A&��)l�Io�a�)/�\qPɈ{Lf�u�Æ,��ھ�B�P�J��[`�T���_�$�S�j^���V���㕖�z����^�KL�UTh������Hr��;ϒ�c�I�wY�ϳ���j����B�v��<���Ļ��x�R���
��!�1�P�i�h3�C�8�A-yc�=	��~a��<I��p��Oq�F˳癌�����[��I�窵2�u�#}T�P�W^�ܴ$�,�T�	�~���W��\�Xlʀ�av�7�k�b�)�$"|5ʗ@3D�=�j��]�LK2q��1�5O�U��68�K530�^
Ry�<��+��
��ڹu���X�;`Jd�Z!���x1�N�����fCW��.r�^���,�p�#fcLЌ%�8�W|�X�y���7/�R7�؟��YOb����[k��K���>����kh�L'�=�ɓ70$H��z7�b�,W�O ��ݲ������3h�����A�7�738���ϲ
q����,�2|_D�i\��,Qt3��ő�U�$�b���	��KCA~����mԷ��L�ҙp���2,��C�ל�=�$v-���Q�!wa�:s�%'�[?f]�A��������d��m�쀒Cs�6�r�`T߂�X��j��/X@�!�C�E��/71��%"Go�fᩳ�4����4V�ف��-�k�&��t�wY��X�v���ϭ4M��;�I���]b��$���\����ՃVo�I6�Np^q_ �,�jA��|�ǣ��p��?.!�?1Y�t������y9�.�xy8z�7�+��L����UVx	�6?��3Z}��@�j�Z��WKKѩ�<V�0ͰJ�![/��FL1a,�v�
�'�t1�c+�1,����f�'25)#�����%���B#��H���k�ǫː�����>Y�G.i����)��AG4�YĂ;��5�up+�������Q��a�⊭�45�p���Whk��j��<C�huOYP���!����໪�.>��Z�lp�6�&￟�T�Pg"Ղ|�9Ы�T���M'բ'œ]�܈�o�O${�W�	h�yڹ�/�m�N���ҩ��mT?\3g���0�Y<Du$�X�#���cb2��XN]3��v���GR�ӈJ�]V:;��W��|���7;�)���1E@�E��i����.�%~���om��6_,PϘ�q5n��u�?л���K���G~�MYl���{K��J���@ٓxӮ��@r�F5��	��W"��G�}�fN��U��{��K�L ��,z��T�)��}�'�g϶q��d]��1J�“��++��`ԍI%�\�S�1��W�-˃�K�`!�*Ԣ���G���'r���LGX�sA�{���v�$Tl��^y3�u�u�	첾�^��l�l�o�~ І?�e�bJɭe27��K�P/Z���r���w���J���U�6QD<0���Κ	���@㻎,
����o'�I2���7+/(�3#�5���cOtW��bo='[��H��T�z���U�ɤ)�Z�A���yy\ch��F���q��:m	YFM|����9�w����r#B��ڞᷟ5�X�A���ov��n�?/�'}���z����G�A�$l[0��dx��C;��0+�`Њg��(�0qK�8�D*�p-�I�EJGڰ���0j��'���U�C�\(cc�gZ���_%��]���S��e��Ԅ��O^��T'��w�2��&����H��Ia���Ĺ�N���"����
!g���1z� �'ZɥO�Lљ�p`*c����t���K%�u������4��m$�*	��3�-��ݒ7Q��T_��5�3�y\�����K�.V�`@;�Sq[�G(WM���u���Y�"���޻rNG���a��8�t&z����Kc9w�5ʙz��
��'��P��a�]�ڴk���G��X��m�؈�@��D�����[[�e�=֯%죿�@l��݈,��
��@_��o{G�+���+�?�X,���z��po�0<nN�����.�?�f��_�##��?]��@�X-�Ϛ�js��;/�@�6�e΀/}�GOk��˨FP&�2�Cݙ�������Ϲ���Z�b�栫$H!R�+�2~h������rr'�wʪ*+k�Y�p뛙%g���nC�Q����\������N��@ё|z۔ؒ{���}�I����Χ�X��I*��B��ET0]�Ko��	��(�����\�gB��_���b�����5�(�+���ek�����x"��ǯ��+���:U�8ۑϜKH���h���I�덄���g������aFdG�q���U>陊�_���Ng{>�]��
�S%�ھ�$r@	K{1	i��xH�Tc�"�FW�]��,I���,0��M�¿�3�Z۰LA���|��D�$H��
y�	_A�N1�B�IDW�ɻ~��kL/Q"�p�j��d+����Q��j$��@����3rNs�uؓO�(�fA
ʏ�$���%�A��8DR������`r!���r.)�g�='��
�z0m�2�jv����كq��X�̵�����WâM����]�dpi�̱��rl8kO�j�h¼��U��B�5���{#�i]��j_�M�t��ބ�t��jy
���9�Jк��Y(���7��������3]��L�l>�*;��壑�}@/z�_�PD�>�;��L��	�r�.V8��A��B� �떞��4����t�}�9�\����`R�_���L!m0Y��@�If2�b--���q#LZ�HT�:�2�������|ܑ:�t�@(�%�U�ބ�
n��KÌX�fj!�X�z�eK��o�0����T,	!e1����EU��C�1��w�$����J�)Ȯ�Y�ҳW�f.Rf���l�\zW�]�:u�O����fy�o"R�nhy�\4�R،�e��A��]�p�R/�Y�|5�O�f*=`�����#���H;�ؿ�ζ�&��}1�JW�X��Δ���W/Uw�������h�T�Bˠ�r)�Bq���
E��]�upJ�]�A��c�Iꀦq���j��æ�M�i�k
[!(�a��?��ĸ�{�g	�=
q,c��%à
��w�V��KOf
�Q��vd��-6���#�wM!�
��aó�W ڻֻ'B��9�1<���)�� ������-�u��U�G-�R���!
��l�Ƥ���f�{����|�K��{�we���S���*�ئ��*��T��ˋ�?7�XO���&�v�ʇ:g2��
ʄb�z�7)�(#rQB{
�z��ح;>�w>�P���>��Wm;�n�*��\�i�/P1
a�a(���U��7&�o�{O1j��W2s�8,"}T������V�a�b�N�_6���}�����3���]�^�9���<���c�"J�#�B�Tt���(�k�W.�>�H͉Xf��R�㯍�#5q2��&�3����͙�/�!r��Ȟy�4HǗJg��i:DBW�ǖ�1�P�b�Y�i���z/m�V�n�
��7$ݦ���޹�D�*��C��"h���S���&��@8^ț<q�Q��)+0l���_Qr�`T���v�18���<�P@i�O�N0N������)
|�娂�"�o�{�X��'���uY9@���\��#������<$&�9{���?�uJm����cbKB�y�z~�IJ ��b��Zh���n�"��4)Z��lr��C��T�G9��W��%Y��IUd���
�Ѵ>km�D��>	��	����:Rοbri:��-�6ǪX�h��3%'�p���`��L�:�`+��`ff���4r;��bYņ�&���t#�2��O)W�M������g��D����R�� �/�s��,�s��$w�{��ON:�S���@�7O��4��|����������ں�oJ��t-1

�O�@)J��n|�]��6�d����1>mZo<��'6�P]�h�:M�T#���f��d����JkX�9O�&��ʇ��;p^:_�����J��_
H��}�5���پc�V=@��l���-�Ai�vQy�:��>�z�O�|��u����D'֖�dgRo������t=!aJL��/N����bw��?[����p��;<�e�Ӫ^8�W��^[LOfU�B��i+<QC�q�R�8���K��e��ׅW������ �{�Wr�ny�Df��ձ�
�~��c!��u)�u Y��b6n�:�\~;>�(Պ���v�`XK�Ⓣ�V�X2�2ڮ�,=�R��P4���@9M*Q�Sԋo�we='�{#P�E�,��2�7+����!gw#�B?�df%s Z�C
���f�TJ�\o�	T�U���G%Ab�.2ʲJJF��YD�8���m3����B���H2�eD�/x�ʓ�V��Љ�F��U������cc���]E��]����V�����S�f�Ox~�Z��"$�湀l�z0�ݎ{���-��c�ТVa|�� ����E��N-�`'7^��h�C��^G�t�M��XnE��x�sF8���E���ú�����$6�.��>8�Y���'S��
�d����_^[�3+|��i9(������P��%!�A�PXm�}zJ�5Oo8�my �Q��W�(̣i��MBT�A��U{y72��"nw����2�շ1�y�v���H��9��/�@���ɶzM��K<���ek���
�"8�E�q��e�]��+��)wl�vc���%�x |�غ�1�QM둜f��{������R�x/l�%���ܲ�r��y���˭����]g�~�y��4��2���M,ᓅ�s�x&zRXņ��
Z3_��c�-FC/�쒚�g�?���E��]j�R�P�c�I*ȵÐ�����n@~�F�oП
���.�t>�81��g:��r�I�$�{]#hvo����lWd�.P���zh�d��>9\թ��딐+ɘι��败-„l��̩ͻ�������q�:��e��,�]���6P�[����\;܅~p]�U��-�kg�PXyBG�t�*+B#-?lY/�B��b9����8W�'w��KT�X�f>��V�lB�yb]�X�O���� =�!,�!<���Dh�ɻ�j?�!+E�d���
��"l�r�9W��
��}���R�@�kG~bm�[I�@���nۍ�E�%>��=mA����?��h����0wJ�v+�tG�/reo���)m�������I����p?�x��u�
���~¬��0á*�s���` ���@�4!r_�'���1=�
�j�&U��b��Vf?�ԇ�9|V1u/lP�Y*��������&Z!ն�p�� 3���CPw#̓2(`�W����F�yC�O��7	z�:s����y�ںF�J��fa���Qe�@D�o�����
C��>H�=�<9�֮5¿z��ƀ�QJ�;����9J�h3�*v�E���<�)hZ����x�a�j�Tfi����Fj�Ƅӻ�FSG(�E%*�i!��4�Ko\X��@W͊���N�Ž��)kj����̳-�����5L���:�u����G����\�u�:4���o���}*��e�x+;�y&!�u{�S��G3�p��̃jV}���Y\���w�'~�[��
>(Q�&uO��/�e�$�wl��ߍN��Η�=����Μ��v�tc�0�o6�Ah�U��z����5���Q�K��7�{��+����V�vz��V�hꛓ���¡�u�o��*Q;�������;��$�S����nz�Q-�(h�7g�ݫ��ꚷ�~�O�W�C�k߂�pW���CjA5x�ڮ[��;��+I�f{	R����wmIIK�������֙��͚ll�'O�G�%��غ��г2��дM�S�8UIO�1����jp79�_��ܬU���z�)i�2��0�1u�'ʊT��耎ە$�FV���92���͗{L��s���!�UK��?��B�����_���=��'T�l�����b�Fy$?�r@��U�>���C� �eK�W.9Ԙ�2�6����#���
�Tz^;$�zD�=+��ms7���lu�Q8C���s���w:>Z�X����&��G��i?��S����q�Qz]�P`WXUeͫY�b���g�l�K�q�A=����F��q����I��~���N\m��
%Zv�`�%�r�u��>Ƨ�s�_]��\i�8����c=F�L>\�����7��<����9z[��T"��`�	�"�m���
��k�X2}L}�&a'tFt=�2;
��d��jh𘟘l�C}|fJK��!o�C�L�߷�*؃Q> ��2�-̱��Ȯ�Ex�p&4���O��	h�6QNc]`�ԍ�6���d(��H��$�7�4�,X��V9ǃh4V�Z��#��p`�n
���9]]�����4�O�hG���#.����U1�g~��Uqm�c�**�����Ҏb�XSk�vݖ�cm���R:cLWR�_s�M���_��$��ХD�UF/�~fh6]_�@�z^�.��ɄH�m��Sۗ�ȑ�֨�)Y�0,�‹�X�?�����A�r��{P]������G�M����~����w0@o����}�LM�ޔ(���GWii�m5�]]�R�K1�7o�}'1���;��TgR����m����F�e�p���fCv��RLv+�|�u��o�k��/o�qg���!�����0�I�O'j����{�&�z�Zs�<��o�59!��(S� �,�0�;qՌ�4h�k��c?_&�[�����Ǐ�+⾕C�^�I�w�d>��w�zE\w
E���1�m�	D��_�je�i��/F�AE1j�
�۽�=wn[���[�	����ڰJ!�&���Z�У5��"~�=�I�}�3�8w�&5�:�"]�·��.��pr�D���@������dW-�!	.zrA��Np��bH-P���w��6�S|��z]��׀�C <B�R�
{�#\?�x�b��jU�em�͟��2,&�J��n%�os�X.��?��x��ۈ��p�c���Ya��]�.R׭R=�v���c�WU/τ�<��c�A��ێ{X��.��Qۯ$�#y�=l6���<�ƻ�+�g�b!�3{��?�Ѥ�X]��r�\��Zf����e�ԕ��ϿyJ��� �Ȩ�DIH)�
�7����&��=i�s@W8�OЊ��>��'��M���qa8O�tSm�䕕/h������	{�˔��rB����WjO��~0�t���XP�n)'����>��	
q�q���*�/�×��x�_�O��Qu�z���)o�R�횄�Ba�����e�|,�j�sUc-��j!�����n��vG�b�X	{k����_nK�s���Q:��V���Ds ����6���`����#�Oj3Z]�~!D�aèy)�k�;8�c*�	��gp�4:˒��;��-*:�H5y���}5��b1���97��ܘ4�����#�_%$�Ks���AۋM��ڣuv�eM�(��
G3�
!QD@�C�Uc�m��]���y�2')��g<Lԛ\�Z�ji�0x����xTg�~�n�������Ğ��`��Z9Hѵh�' qJ�$�$�Z��9�ĚHL�,t�ǭ��jYA�P������{��"�|��f�{���Vq.�e���z{��]֞��9��Xߊw�l�_��̟C���v�
�}t�K:F�
׈�o&V�;ݘm}�6�y�l\�+&�޴m�$�Q�4�3�(c
yp�H��h<�wP�+�C���n���@g6}�NjU2KğU��!Q������w�>���w�M���y�$֊0��������Y(Hi��ҸcY�:$1,{ɻ9�gS�3)UEJ5����*8�@L��/ɻ�G�i
4��@���k���;�*�ln�{�R�"�<�
������#��s�_�Xl
�}�;��X��=D�#��Gb�yV��5�O&�$r���l-�J�G��[ڿ���9���~)ګe!��w���ŚB-I����J�N'(��T�� h�Y�!'�2F4,NkN\Ɛ��줳�iTE�J�������%9����:;k�r���?���n�w�zRW�c��bq��F� ����#&�`/Nܱ/����5�ټ�=C��z=ĩܠK\�䆮.�c۸��%J:8gr��'�^B��n{͗�Xd��O��P|���(e��J��-/}#��b��A�:�s9��<���Fn�H%\d��1c���q9�+�d5��oȏ[|`´�o�$ﴁ�OF/�
3!/��U�W&Fd�R�*�%\�}S�W�`{���"�)��/`%7e���`�F��=Y�G����ّ��d��3й��g��篧��W~F��x1&�A�^O�H�h���ʈ��S�>6��F�����G��i���<�ݻ?��\��6�w�-��J���k~�w����r�(C��R���0�LV�.�qM�rƷ��C�&Gmo\fQ����ZoN�[0�M�YHi=e�f#���k��a�&!��t	��["w����3
�ȓ0?}J�8�v��%��J�dž�’Nb1�d�1*�bi3QX���b�
�Ǻ������z%D�6b�I���;	b;S��	{V��nf
�ejHN��T�ρtgc�*�v��
�b�g=���0r���1�~��㫈��<\%c�f0���r������|�^
SM��#����w���P$�^Ƞ_V���'G4���Z�#��"�c�M:�حn��oN�р]{$�+�.w���
����Q�$L��t
��̉�����f�rG��?�)�%��tO���l?�G7���Pn�e�D7g�T�~��aG?��w�?.���t�?-�I.ZyC��e�ǽ?0ڽ�%U��^%kj��KC�xx�/{��&�@I%S�
��:M֛��HI�ڂ�%����:iHYKh!d���ȏ�2�n�D|{��)��n��O�%���xX^�s��������z-N��֠@0pn�X�=V���eXv��M�C�d�J�4����_3��јe��Ag�h1$�cj�O�B���Y>��%��
�>@���};�v�����>��m4���t,�9���*��I��\~͌*@�<��������^YB8�W�oSp�8iuу6��f9:Ku0���R���v���)K�EYz}pd�I�mX1`�9�2	|���]���,R��~�w2��� s��c��`<���d�ZQ����x�n���bm���|�����b�g��0�y���ڬ���:x��o�P[�Y��}A=��̌j���Q�J���	"*mm\����szio�[�Ȉ���b����{[f���F�΍��|Z��,�g}HŬ����_���s�gc�Uq��e�M����"�D����U�
������Q�[�L���
[<�Y/���*H�&���Wk��(�xjD��b�F��Y>�X+���$�BU���
�)n��Z����@|� %9;_LW�F����n�
��`�C��l[����'��Nռ������b����3*�0�V���+�Wnm�P_�?�	�ptb����Z,I;��� ��.N�(���p�{�����d�Jb��%��
�IU��=��,-���`[`2@�B��PY�e�^�SK�(	y�4�H�\�C&��'�@�*��M�����wl����H�����U�vw8u�Kpnh^�X��;�����]�`�-�a�+冠k~�>4�R�4���T ,Qك%v����
zx|,�h� F
LJ��'(��=5y����,��*�@�%�����U�Y͌��R��k
f�J�֛�_�V�WZ�/BS�z���v����hܷ�0<�t�&����Iz�4����b��;B^ۂmu�yJ�����O�S�Ɣ"{����q~���d�9��d'
s1�>�)~��T^߯V���/����c����Ι���-��3B���oX�	Y����!�1Ԥ����npϳ5#��d6�,N���nK~��|{����kc�GE��ArD�dz���y*.��fk�1a�L̮a�j�b���=WC/��nc��3��l�����zщ���"�R�v%�PR�w�_^2�o�~�*[z�M��������DsM7���}��r�'�ݓQ��9��0��)�_�����_.��S�5S
%�*�B}(1A}AV���+�d�%c�1�J2�	��}큗r�Y� >wʡ^ݥD��x���O:���k54�v�S��4R��67t�c�ƹ
����6uĈ��q�t^?���)n�d�i_��2���O�H��zR8��F�WV���m�j����
�����w��e�U2o���@�9�lǼz��Ƨ>���w�b5m�`]���P�_/
��m��l�h-fڜSZΕJ�JRT�i!��e�﾿Кk���fdu��y�������������B�"�V��m��<��
�u7��¨��&}��8+�$���V=��Q�Ge��CI0%����ɞQ��w�I�H&�
@}utUC晳7�ڄ��)MgN�W�	�G�0oؠ�c)�F��?�.:L��H�U�d�;Iݐ��Vߕ�<�O�s�[�YzI!�FcR�n��6g����9o+�k-O׆���Ut��scf�in"��`�fuL]�9�$�����p�ONPt0�@�:2��E��E��CO������-AS귃�1r6:DӲFo�k��U�^$F:8W.�/��ﯷ�H�s�KҞ��q8��I�I�Lw(��y���сn�+-�l��Q�=�Ջ6�Q��5�E�7p�V�
Sr�֕��2q��iى{67Li��m�OV�F�"�;Ssdmk�o���#�)ӟ�o�J�/��������ܟ+�%
W}���@S4,��:
{�/W��N�
@k���y�����I�,�q��!a�[G
�CYR�6��x<����oo����É�]Zδ�fZ�C4��oc�H��}�.�`�4GH���) ݎD %C����BșVB�e�1B8��-P�P:�!T_�\�y[�=�4ck���U������5��,ԃa1o��������1�a�h�c6�/xw/��	�Q?�,}�]�T�:�j�ʮt�w����M�Ġ��@p�_7G1���g�׃��%>�D��V+�3-���њV���_��CvC~���w+�j�C��R����9R��f�d�Y�I!���W�h��{��r�c������Y��!�g���垅�+ҽ7k�!��3�to��6�:�oa!=�:ۛ��:��tFI�2�Ԟԡ�G"�w㰮q�Z �w*�b���&�D���I]��[����w����G*��Z`���[�P�y+�S�Xf��ox��!N_��(�EE�-�H>#`
�-i���i�o��q8���֥֬,՚�q�,Ha���y[�,��0I�M�/�c�p�0�*
�� �5�f2��
��ꆇ�r�\�5
���g��
�FGA3`����%^���RAPUd� i=�h�Z��Q�r�e���5��O֤d�1�>j�Ӷ�|d:��p׻����M���iT��E(�]����r���C�V����uZ#Z�t;I��ku΃��w��p,T�bJN�j��8Ԑ5*�,�
�����R�9:U&�ׂc>�	Wn'L���v��D��Z+��2\��U]����+K˔9~�ӶlEγW2�X�y޸��:M�L�)�����g�)����rv
�Դ}�+�H�M1D�և.�A�>dy�1�yM	�e��f{���휊��g	������ލ�p8e��[�u�q���i�W�A�4�`^�V-��U�1����'G�=�,���G�oH�t9��B`=�n%�g9�V
��=�h��l���
��c��Z)�%kF]�P�D&`�А�.QDM�m�nk���ry$��zYA�1�jV���ĩ븖�s8�Q�<OT������~�@U�q	���������"�^�m�V�������snQ��uѲ�{�T�b�3Ӂ��)97TG	�V
�D�Ё+�O�ua����a0�@4��j��ŸK.{bN"�"k=�g�_h*>��H��"�'�M�4�_�Os쵓F0��VH��⫠�ԦyX�
G?�21�f�J?�T"�4#�hCS�ַ�s���|�;%&��4	:)�<-�����q-��F�ǥ�jK���� �.����/[�!��m�>�k�F9P:va���'�ٝ��6�Y�j\ "6�v�}f��6yF�C�+�}�[ż>d1ӱ�:#�7��q�x�PF��ut���dZz�n9\��5L�T����0z�z�CF�k�l�^�:Z�V��:aD�c�����W>��tȀ|�SF�q�E:�W7����]� �Fao@�^
���������c�I�B���Yҳf5C!�'���E 7^�)�'�&�`��d���k�w��e����ɏ���"W�C���Oݏ� ����l��{�(�;CI!�'M��G�@������wJn�~03�Dž��~�,�ʕem�j��޸��MVQ�.TNr�����f���z��Y�u�.!��b��~�S�ǰ3��5f���>Ho��Q���۽/�m#k8}��h��dпժei0NH��坮��6�#ƈT`�Wt&��,n�]��QT��O���pխ�Uf�ξ淫�v!�Jͷ&���-jő/��X3p!:������2s�ʛ㔩=�H˭��ĀkO�c�7NR'PK������Ȋ�Y�PhŘ� H�]����:Z�ښSIld�c�z'�-��8�Ǫ�hpI�T�u{��4�e9��)Lf�8]1i�6�a��#-S�-�!�B9�KYt�<�W�&��VN��#��!���?sR{��7��c�юae�թ���aOv��'�mR�>��Q��2u_�<˲���ޗD��!��ql��2����*�b���t<\+��$)�M�6��(�2x��I0=|9��RB,��Կ�����	�qUk�'3>�b��D�+���9y��.)I`/��޲�5��$��~w��Rp����Dŧ�����nl�[8%�H�SG����(��PE2�Ci�S4e�E�Lm6��mQ���u�<���1?����a���O�0�Ж�O�j�����87�V��)%F��P�ɃKתD�������ձ�0آڕ��4�`1�[ka��i��`�A������il� u��j�Cɰ;��f�@��k�M+�z_�ݗ��T��F�
������Z�QO���]:�]ռna�%�NW���O��/�����P����p�^g�we$GP�ݦuX�xJ���g���Z�E���[�T�۰��,�,���E�rǻ�l��.z���g�;e�{^9�識ȍ4�^Y���o����T䄏�h6a::ђHN=�JJ��V�YNb�	��ۺ��Jx��S��oG5����Lt�0?QMPSmf�3�Ȯ
����k@��ݛ��݊aU~����(��jn0Z�[
Z����G	R{����=F��0�����3R�`U���[��20�=m�}C^ A�#��S�~��~FEG�9b��2�Ѝ���
�1���M՗C�I��
�7m���8�����BV�3��q�q�Y�B�N�N�4ڋ�~E���7�ƓAjZ+��gF�d��������r'��V��h �4-��ly;�u�m�d?d�����[	�ߏ���۳���K�P{�\R&P!��D��g��"�xS}��-�rh�囸b�Ѱ�s�o�;ݧ~Ѹ&�{©�8�^���p�ٴ�s�q�<�@��R���~l8�|�s�����yZq�4F���;�t��UWf�I���Υ�fE";e�j���y���,�T��f���!�\����oi��+63`&B��Vp�h�Zs��N+�ކ��ܾ����x���=#�s��Y�z[���������&�H$Qh��:�Tgr��N.�Ba�7K�:MM��7�W��-6��,�M������?D(��Z�:���)�ªOV}eD�H��{��tƊ�A[�k�͈�;�~{�K�^��D�<�=���q�)�m_AM��p�?:�����{��c
��+�=�Q��E��gGдX�"�K�5�bzq���,[������!!�زr.a�Ǡ�:{�1���բ�!�ED�*��](̲&0�����
�W��K�NO��W��JVN�kR�6�:�%��k!qڏ��ʯ�;3�h�(Dsȯ!u9W�C�kmE��f�(O�Q|> ���RL�����uh/s���Y�:��&nX�W�Z��g��(�X{�v�[V�|��ףVF8F�8���<c�
��K~����������T�g��f�� �r���@�� f����36���3�pHv��m֜	�zL�_"i3�q��CĨ�z�;o�>^a<&����3���`fN/Ѱٙcp��^��fev��.-li
A;o�E�Ȅ��lr+`""I���Vףx@b�E�_���/��S�#*���su�Ǯ�1K�G���|�M�(!v7۷~3�/�dv�܈�Orl���b��A���Ӛ8r�xJd����\�|y|��R��Օ��C���i=��_����ߗ���
4W�g�
�\j���y��1��4v����r�q>�iL������It����\0�H7%]�A'��g�
wf�YB�l=�h+3���o��	�{�N�im��K�vj�t�꧕Ϡ�BJ�^M]w��ƴM���\\���N����aXk��{�ȟ��ـ�M�{�pU-ԝ�f�%���v���v$�է�2Wi�������U�7�{ώ��9���"�K5�g"�fS�Ѝ=k�ί?���f�9��6�c+�}|��f�53��ۧ�e�����8<�A��/���pؠ�F.�.j=Oߛ�j�H
�E�q��q� `Q�\����0Cʮ�F/ʑ��Ń���+�2H03U��9����h��v��q��P�Ԟ ���w��ǜ8i��TY����H��H��NRC��Ę .�ڪ�`�D���I�e��Wj;�9�Z�A��f'���4j�dzJ�AQ�95�RN�Y�UDq�kf�
�F8}j ���Ӥ��r��PF�t���dե�V���G�N�,>C~���YVg��ѓ<4$��괚6e�(�*��{T������}�wy��C�ivڈ��P���E�t��Z�_B�7�껞���'z�*��2j�4��!��廊5q0)�Χ�W��V;���D�y2�
����w��a�x%��Pd=>�iQ�x��Oa���÷���a
C

l��o���i���"��F����Ĝ�QP�v�d	�fJ�m��\#�0�1yn����*$Ȳ�����q3/;�4��-����cځ�5�ǥ�h�ñ��#J�B�	��/���14�w}z ���ei����S`�9��N�|�R-Dx0h+�#���2�ϋ�	�Ĝ����<�&��[nB��ڏ���b�²Hn�|I�V-ɝ�C�=I�x"�g��>�C
U>�$w��b^��/a�V=,���y�y���VI�N��^~ZϡK�i8�5rZY�[F�'�z�w~q�?�"��~��J����F&�΋��G�m���4H?�����[NϿ?e�b{�r,Y�a�����19^~E+E�`�+���z�5�nl�3�7�L?4kh��O�kT0���C�?��9Z����HA��c�U�<f�{�K��@l�%���2iow��:G{�2�,uV8?������c3���
�v%�@Է��Ha^�����Z$1DA���d��6VEݕ��ϐ�6���M���a�{u��-/w[笂c�b�pq�I8
9�z:ۚ���Y��7O���Gx�*�L�����h�K����c�!��3�&q��s��H��8K���Eρ<"�t�����<aP%�-<;��'QkM�1I@d�n���Y��K�9TP�s���r��e���A�?D�d�])����!�!�Ly#�"��\W��[J�<a�L��Qc��gnjx����{���c~Կ-�6�_iŹѭ+��c6	b66+��x]RN�>��T啃�$=X��ې�ߐ��c���Ȧ�'�9[\����K���f��Q������d�tGu��kߑn����a����r�x��d�Pk�U=G�0���>':��`�x�Ie�/����Y������e����%5�
,kR���r=�CP
'��S�r����*�l��D��Mb���:mqh�qY�]�
W�<Ÿ�xF��BX1B��a�_�J�Vc�7gN��W����U@<��V=R�=1c�N�I��Ut��sq"	�rJ ;�U�NzC;��{���q�K��3� ��Y]Z�G�;򩈑����������x�7:�u�U-"n`
�/n� �3���Y�z�qG��%h;O]��ڰC���wn�wc�(DK"L��/h!1���~��Utqw�];y
\�Ma��j��� ���j��X� '���zw~Nj'd'����B��G�xJ��Ix?�YK�����<��F�s������=B���_��ּ�%{��{�ZVC��B[�+4C9�4@\bY�p��޺�˧L�*n.S���!�����HF�������%�F���j��Z rd��N�V�֙Lu5/�@����2_Z%w�40�y5��	4�2���G����t69!��K���ɔ0X�<�^ZV�����r8T�>��5�����s͊�)��������4��]�}[��{t�hV10�J��¶nj�D��^�
Rt�
���5/v���i@
,���h�sV8>5b
r�z�� �
�B��D(�
��m�o����Tΐ���x-M���Q.�1:�Jxp�����lk�^����ܵ=pEI�9dJ��J�����*�'
��h�V��u�3�c��w�`R�Fܫ/qh�٥o��Aб��gL`��� ��uK�KԚ߾�4�:�O#����:@�>[B��3A=�ep�i/r�ԍ�S��z��.d)å=���I�и���;��7���Uy�w�z��[�Ft$>N3����c��<ƃ�d����SA���B��J~��kݘp�N;��o��`y����­��
�]��c��_xl�����D���62R�>dyꈸ_�ȓ�lK�(y�ǟ�g���H�!,�1a�0�`�U��{�����&��jdB�;6�x��䐾�o��I����`�>����N�Qx���7/��@�
<��X��R���r�m�)R���,�ut��α}ܣ�"��î5�QEsDz�"i��=%�{F
�H�0�8�?�z�^:�
 �'�O���N��)_*���J	c[N�2؈?t��Yd�nm�>;�^�u$����)G�$���(��3����'&����3m��ew|�:����u`�B�~x5�Q$x����7V;��$�<�z��}��:�B��,��.�v{z1-v����^
��K.��	��	�?�U�w��9�|�ny
�_����W���87@�!��Nape��b�&T�ًx	
D��LI#dP��Ѹ�>�>w<���0��䶤ؖ?�=4�!YM�U
�V�m��O��C`im�_{@�ټf�$�����r1��/��ZW���R���&���q�e$Wt�L�^X�.Z��H���k0��W�֫�a�a��`�����gT��{ȍ�q�'4������k�Д-b�B���!���|�C�ԹoSԝE;�(��bԧ��v9����E��AзZJhL��x�;6�Z�bˬ�*H���wᩪ-�
U,�{��93WAu3A��u
�
�%�-N #�t�@Z�B��_�Kl��~Qd~�] >E�_�|�Scz5~�##�����|.�vQ��x�Ę���A�6O��އƚ�\��/���r�z���C����0�
Yl���B�\�N�!`��]t�d6&9	|V�VN�4A��p�K��OC��X1�u���d�! NJ���rj�xB��	��`�4��
�T�Y	��9E��� ��|$�3�uD��^�p���o�"�K�[�M��$Rf�<s_�-Zf����-��>��Pi�L"%��Q�¾�L��_S#_�C�t��qlJcM���8&Gp/�-��Z�|zҍ��a�}�`�W��N��~t|}N�o�P$�{ŧ����l΀�L��b��y���a�[�҅,��
�;�3R���\�bY�K_� �"�V4d���)���7�rl�T};�P}�
�X��_(��<a/s�uj�Bp��Ȳ�H��D �g}�u�X:��J��ћǫe��kߟ=�Eɨ�S��iJ�6c��#st��J�G��Gn�756۾�'���t�I� ���bFW�"�.��*�w����%��.*!K��(xc��J���+�G�Uf`�c_9������m�V��j�E߈�8�E*�0���ؑؗ�s3m�[�̿�aP�O��r��~�]n>��v�̮8�x3� M!��z���i�O�l�b�)ˆ�"B�K���6o׌�A���\��(0��m�m�jeE���9Z��b���H�;l�*��5z���@�>�\���q��;@}�(�����{�p���_�>�_3��ߔ<���c��"�!n�@|���ͬ��C�于�q�C�z�|Y$$Xy:����a�5�0(�E>�ަ7/B��1�ؽ��~��_mB��n��&�tE3���s�1ށ�0cHK�
Άw�ݟ�lWmL[����_$��DRi�D��aI��Ҡ�R�0�N�/��<�`�B���&.��p�<�I�NDF1P��W-E�_�o'��$j50���P"<�=�i�<��QzT����A7��G�'����`y9T��q��&�����3{l�8�]j�� P�&�Y�y�x��#[N�t?����I���ǰ�-ER�[�l��ESE��Y�Xn#��a�i'�|�	Y"�
�)�m;J�d���P�=�}�%��N�R+aP#���	h	:���.�8u�����1�,F�l����ڬ�uI�`@�˟�2F{
D��ؖ0�����׍�5�XղK���r�\���D~�&�\����7��71�
V�M%ax�ٽ��i5����=����$Ӭ��k�j����b�o��H�[<���\}ul��x�(n�LFx��:?1�T/�Oj>e"�t������0��O:k�?�e9�"Ñ9�9lnr�+L�ۑ�ߎp	j��8��Z�^%���I����.�?�\�ˑ��g���Bij��1��H4/�l0Ɛ=��Lp
��>@�Va�{���g�̎ݞ�U���(t��+���-Pd1׋�:0
��P@���9��z�/*�i]��k��z��|4$}2�Ć��F��^'~�aȷ�F�ZHs�-��:C��s5`�O-�;Q���v6���i���s$Y��n���[���'ȵg��J�H�|���Vl���o��@M���5&�N��A����orl�iG,�H��(�u�����BƄ�����
Ө{�@�;+���&��^|�o��&�F9�pJ�����ҧ�~�MO����I0c�u��9ѳr<k<B�zdGB!z"'��^RT g��.�X�)�,���ꅗ
,�L8�6ZRqdb
�2��P�}�&����׎5�{\l^���Y�V!Ql\��ܨ����9
���2(�-Y���ON�o����^]�Ж����}�2i��Hpg�%fJ�Zu�m@�7�?�(�v���ȤXc��$�^�v�l?'��`�–�
��i��}�:*�Y�D�l嵫�
�A����cw�mzx�7u#����LS-%�t�cu{RRT�eG�����AN�Pe��z��1&/�Ś�q�*�b��d?�⹝`�ѳ���b����B��j'���\-��pd�%�o�H��p���*ݖ`�r�C�|�Hu���p��>|���(�֔%������Y.2��6q�}2m�؆H�&�^�M]\�D'3eF�@�0�z��U]��;��D;��sa�h<`V�]�d҆�����cc��d�{1���Z�nP0�ff��'ڠ�p3dF~�Ds~H%>\}�|X,�>�`����o�	����l�����4N���H��a��Qw%��N���P���F��
U��\�!|�M�B���*��[a��D�����æ-D����ƶѪ��H�6L���U��Zi��)�,�Mc��܄$䞙�֍�?�س��Tg�b.�; 3�0��>�[ř�tDcTp���H�_Ʉ��y��W�Jx�4�y��h�:��ǚ��3��0���m׽�J"?F�H��@���cd�:���Y`��2�hX��@��Dl��^�����@u��e��l���od���;<���Lhbsgr]N��G���H{	�I��cb���E���sO�k
M꫉�iu��-���2��G���(�C3ވ;�ㆭ�N���맆U�?(�V�8����)=c��_9!+�Tm7Eo?],�M�XN�)"U�p�!���a��bm�O�79Uґ�
���9QWψ�e�Dݔ�W��b4cY�݄�ll��M�R��X����N_kFӍ�h��,mP�ſ�sq�ᘕ'"$:bd�Qg�#��/���<�����y��/&����uM��93�� )i3XNJ��0n��s!%�����snD���h�;�(����F�/�E�Q�|�tf���K�(	�mB�{���p�=ܪ��������3���q�xB�ۓu�K5��'��C�k')�b�~��RrMX8��L7�$u-\8��3�hdc�}�)�3�N��Ib����,����\#�c�%��H�Oߣ\
ġae�4K�"T{l}?��u�A'1S���
��đ��'�NUe�N[8RyƋ.j��.h]�.�Ag�6G�{&�Iq��,6��Z��.����u�*.��fn���7��J.lX�����Q��r�09S�Va�o����A�,�~�z���O9G�A�ih꒝:ܯ�N+#��.]�c�N%���_}#`��P�gBk�n)˺64n�����'��#x
b�s�sS�ܴve���*��?P����DʥW=�\t�m�b�k[y��.^�-�4k�Ictj=��mE��u��3�Z���_-���s�l�p�O<*�w�B6�
0���]�Q6�o�V�>0���;�M������#Mߋ�Ȕ}�naWU����%T��i��
��
#��:t��J��1�����c5S?�LJ�S��)fȖ��]�
+����qs�<�;��6����2	#�����m������0�n'A�����#F|mǃ���=�X��H䱫�)�uQ��t��W<��;o��+l��rt`���s�Ȟ�l���\�xPn%a�s�Z�H���i#�/K�ٌ�Mq��z���i�ۆot�+b��"z`M�m����K0�:9-��t�
!��ߕcr�$�S�2z�6��Z?I��K�ʔ�֒�E�Y�-MBu�7ds:�YQ����Gc������w$I�@�.�H�mS���oPa�9oW3�ōx
��B���*Tx�|��
���E�[��Ȅ:��W6�)��)�����>�����	Pn�n��5�x�gR����ձUHdW��#�x�~',�ςC#�˧H��E�3_��G��+�6�/<LX;��&\G��f�I����8k��C?6U���,Olks�r�����4��̮�wT���N�=��8�����bo�����"Z̟��6Vp�Tr)�+�ܚ|��M��KQ�y�/��-&Q3�k�^�u�.�q����T%��f���;���aާNu���dk��M�gj~/��0�Qȥ��ͳ�|J��\�����
�;r�P�}lk�,κ9 ��o��6�w�,j�S��:�]��|f���U�}~B>g�m�7��QE�?٪1�����l�$X��ь�7)�1��G;�Ip���E��2l��f"���w;x�tvaYb%Hė�<��0گdk�$��r'
�A�]4�tUh8_b�,���W7	���?C�M
��U�;�s�Շ�?@~ԫ��|��?���nM���C%�:�Y���׎�e�����KCr�1�A�d�271��Qxs�z��}u�/LTw�nM��N|�q��=t��0�Sq�BZ�je
sj�p�뷩�:��9岫I���}��X_BA�O�&�Eب���Ni�E��d�S=��ɡN�.s�[�>��w�T��l�g!�JU�uڎ{����O�Z���hZ�J��R��:41w��j��n����3��5Kb�E��bdjFC�kw�KY�u��[���%�΃��T�X4k������W�},�C��@���ƶV�ăy�y��~W�ˑQE�U�6n�z8_��K.��!���}��cF5%�n݇����2����1�,Η�����>ߵ�`>�sg�V�;^�/�O34�Ê\U
A�]���J<�����#�N5�tAU�(j��BP9H@������n������z�ٯ���-\DZ��c*S|or#�94��NsVk(��۪#����fD�,��!{(l*/�3�}Ȭ����
o�O���J9�x��=HQ��$A�y���=��Y�G*���a��<�K�n��^�5y_u�u��8���b�Ǽ�	�-��&[&�'�Que3Yo#
\�.��;x�b)7 ,D�[���Н�~�Jw�����$�_y��孊�����}W�'q-%�ݩ<y'Q�^�}6+�X[�g�l���m�f,�XpM�=3��{���dF�L�seQ_An����U�	s�AmXB�<	S{A����V�[�Ǝ\�8�=�p%�R`@"��Ї8#�Z�	���JNp�Sm�Gp�e��c$�c�{�O$�T�ū�6�y���PV�!�8�x��nD
�[u,,������cr#�fK����3����^���j*��p�4:+X��a���`�w~񂝷uN���Z�o��\���h�t́z���)>���y�6۞���ɕ�wzB��n'@��p,
�v
]�!K���bȓ�Dl��'�ѱN��n4Iz���9P8?}���:�q��t�������~��0��;�I&���<7�Ҍ/�k&�n�6��K�A0?��g��ڮ�=������&�"���A�qFF�k��{���#4�Ƅ��4f6i�;�ee�8��eD<�F����{��h�5,��k���c�j��Kx`\ǣ���u�C�Bף��K
��
��f�]VQ�r�8w?Ѹ��N�����E*�4}}윾��0Ca�t[��}��Z�faH�&U��
J=rB�A��*�O�b6�j��y�"Aq4u6��`��3�k[/R�pH�<v~6�y�߼d R	U�\�m�r����M�R�=�r�4*H�a��0r�!"���t�=��/����sF-��0y
�4(~�;!�C3P��슑"�r���oV����Ԭ\��n^�;��4���IT���mTa��(<gfS�H;����ҳ�����S�4ې���k��܋cM&D��+Q��U�u�9^r�:�j���f��b�m(�<���z�t����$Ĝ(��r`
�#~�h���OrM�����f=��Xn���D��6���V�:H{��//�83��=f`��-��>�R��X��%��M:�^emD׋��0�2��
�G���ӏG�ނ!\x@�@�.��C��8���t8�^2�"H�2ADD���l��r(�)!?�T�����@�^S���Cq�/��c:����m؀g�F�{�}bfV�q�g�@�f1*/!�FUY�{�T'1���7|_���p[+ 2�! .I�U�$EqmE*4оj����cW�����
�i�e���eg7B��WT���f���y��.O�þ�C��K�V�X�FQ�86)�-�/%@BB�Vޤj���Wy&��J�3u��:E�3��Zn���=r�$�D���!x�d3��'mmo����6���Y�l7٩A*40�*����r��ه��<I�Lf���ro�6ۍ'��>�M;�
�5�?%��H�w�Ӵ[��h�����
��ǵ<1��ި�5Ruo�gM+1L��l�S�I%��|�s̽+�
�WX��!�#/7�-NB0'����W���<�z�%���@)D+g�>U)D��#r7���P���u	a$�>JQ*�y�w�҂
���
h��Ne���[7����K�]sn1�]�5G�*�"Y5���j�<�Ȇ5���~x�?�4:�	�_w�"M3��uΘ��
RT�%���G��7t���J��qj��u֘"Q�����%4��a1C��";�Y)���C��N��a��<O�
�gk��<줤�ܣ�j�*Ϡ����΃��Go����1J*���݊�VUB������4��fGa`���_&Kd���A�z9(	o#�C�&�爲%@0�Kى��;,����R7�_�QyR�>Q�H$��f���:�����0B9�ۥӶ�e�<��΅�v:��=�@5�n��Zd�a���֮U��o���>��{W �_ۘ�K��\,!��r��:$���?�	>0�yyg�BZ(�=BY�yz�.��PR>�X6j����	m,�#��]n����v��Pu��NN��v/6��jmh��AO1���^�Ɠ���N��oQ�����͛Vh@��7u1(�8��\Y�%�>E@��_b���;�.'��~��9��?�s�2\���9�S�T���TQ>�|sN��V�={
�.Y����=��(qG�%�RL;��e=[&��x�E�8�a"�t�q��A��Jݛ��(�[�i|�R�a��|�Ŭ�8��h��n&��*-+/:�S<�f@Y�G�4�A��T�)K��7{�JSj<X?�Ԇ~,��OdЂ�Xx�Ϲd�u��p�3z$�T��	��[/�j���(X`���b5SDi�c�F���0�c�S���k���9�
j��A�V'�P��紽�,3bT�k�!�r��Y&�����n�}z����?`�A�1%w�\�]\8X����
�4�Je�^jՒRo��n�Ь������|���)՜w-���k�Pu�i��5
��(p���?�c���~F��Y�4P�mÜ����+!21�b��H��m3�%]SWL:�N��RN����f������ieh��!?��ZYO�O!�rC��Ӭ�*��s'��,
�ƽ#�
��lS+�+��ڙ� ~�3%R0��tj*EB<6$����6��Ih嚇2*�/T��,dx';">S��]���T���`�z,�D���)~��AV����gq�e����4Eb��?ԑ������6ݐp��Zn�7*�Amf���:֠K��+�oM.s�;���wd�����˟J�W�����?O,�� �
|k
'�Eu7��	�c�UVU���T�J
]��6��L^P�r(�H�E�m�Q:�K�����G��^��:j:��8Ԑ�5�#P���.����<�C\�.�T[��FGU��\=�9�ݥ����!Z�j�I���d���$�Y5��<�����Q
� ������	";����d��h���7�[d�dsd���à–�6�6����H���9��5e�_�H�J��_�n�[�)$U�tl��>��;���>��Dhn%$�5k�ҥb�*�� cT�'���]y�p����-��=[`9� ��~l��r���u�g����y�:B��~�HqAn1�fh�M[V�[	��)����S�x06O5��G`��rT������;�ʟ���5��<+(4xY��M6��Mo� �my��|C��R!�D�l��A_ޱ_��M�W�3�q3V�^ì����+�;(E�d��r��I-]�l����a�;�g��g�<6h�>�_���43|�Kx=e�4ؼ��M�a�[��;��Q�Nޟ5� ���J��B���"�B���a젽7#V`.ό���Z��آ�/TUD 
+Ƿ\�EBXv����y?:�V�9E$�]�6��y��㠟�E�ˬ�6n�e���(9��cQ���'�2jQ-�Pć20(,8F�v���>A{~�h|�e�,�X9���2�����C@W�$��ܲ"|�6��|/@1��gbm�t��e!���2(W�.��ǿgΉZ�\rs�n?�+�`��iX�֠�ij�	
�. #K�d-)Jh@�P�(���1�u�.v�dv�Uw�&���F
��u�]�m���X!p�Ý�.�(;���brup����4�����If5|b�Y�)|��u���@j�k�σ�K���o�X}ȣ�A�[H�G�.��6�\ό���m��%̗d7��u�̜\\�0�ɔ�=Ft�}�-&���[Xo`as\p��)��xܕ�~���A������������.vG�DI���3�'zՕxDd��po�1�fs{�Ek�8N��oq6�	m��Mϸw��c���F\�p��(;|nF�?T�����*�L���;2e�1�[�C�p�٣�I�[t7�V#:�pz��``e��'������sbŚI���!����VH��
�%P:MT4Xu�a��h�ըw���c�[ď�Y��* ��3�G��}x�[Z����[�����!1�G0~�����hߓ
��E���1�{����{����Su��)�-υr.I�8�P�n	�0��u�uIWK1��F��)B��I�aI<[tUP(3N�-��
O!Nb$�(ÿ0���9=ߊeī��۹��~o�8�{U�}T]�]�5��M,;����i��}+p�(��L���
ZI���l�zj����U�7�aaf���c"�/��W�骖�ՙҗ��*��o�}4�\JXK׸.� �(8���c��x�?�W!+E"��*�.Q$��J�%imWH���
��2܏
�ͯ���,�]<��2[g��G�H�W��F�?
��B�
�y���1�˹h�٘��dOdxqS6�Z��ر`r$�dgT�3x�����h3�Ҁ��R��Ӊ.����Β�+#i��zӟ�^]���-����Dݮ�"\�R�~
	�&���2��<	�4���ܗ�ʷ�{X�
���[B?z֨Lkꈲ��3��Slv��Oo��5�,�ɞ�mga�s�W�"��Q)Q�
�j	�k'�AL�E���9���9�l�sДGP]�*�lvL�E��R��U��5��6���W���Rq)z��
���Ꞓ�եCI�&�����9~[#�vѱ�)�k��;��r���ј����+�Y"��&*��x�,�7�[����@�ˑ]-+�Ӡ�AҚ��H��z�x��/����p������ �04m��1�d����8J�?ǤI5L5hI��0��{J0���u�<��my��?���[2`
@R��mT\(77>�^��:�/_}؃�D�Ӎ���0���U͋Ьn����9!��C�㣗��/��2������ke1s�Jsd`k��#�F�r�����x%R��v�dM���o(:��y�=��pgy�%��N�uQ,��i���L:��(8Ԍ�>@��W���9A����+��V7:Fpp��M;�-�t]��cݚa��i@����ٷ]�ޟ�b�<pg��;^e�"�Ѹ�r�9�v�g�3ý��_{*���)G��'�U�0�H�2�1�[wE�$~�Pz��^J"l��N�J���:6M��'�-��[�I)���.�a�s�2��Z4��2~O�����"����0G�2�P�ޚL&�<�t���Zh:��/(H��x���(��;��X�E��EV	�e�f�����a"��`|c�{k��IF��J
��B��ھ)��x��Q!O*8����i=�l4���ah<�l���]i�T��~`C�7�%)� j��y��\
��ߤ�N�?��,��^��D�ٻ��}r���P)���}:�(��D�+�X�$ԑE�EϋP�Z)v,%�c5��|-���z�W5JL�(_Q;�`ø}�z��h:C��t���>�ࢶ��x���'y��h�[[ƅ8�<-ଠ�Y,Ւ�Pv��o�M4"Ҝ�
R�M�^5�{[�FG����(1�D+FL*�}殟�>��|N`�mAdQ��^��Xh��>�B��~c5^��A�>���ډ��Tj�lZާ����u�"���t�TW,p�p��t��n�O����À�I�YY髳�����'�ɠT!�ݺ�k4��7A��,��1���T���(���m�f�W���L#�%�[��Xt�߬��5

�kŷ���	���m
�r�b���|D@6C�Ҁ�[���čt}>U��,�"`�Ҕ͊��%��ԑ��?m�DG�I���u`��leh,��k�~IL�_��^@�Bݐ�����2�ѹ�36az���eQ�G�`EI3tپ�ܒ#���=I����v0.�k(�ިL��2�7-��n�=�b��z7�9h--�yE���V�ӾZ��ӾN/>w6�{�f%q�d
�b��+Q�6	��ds���П�*��ae���K�^�L�H��e�������Y��í���8:�\<q=�1��J��x[�59�o���r�V%3o����F�
^�z��}r�Ѡ>��t/���_�
�h��P4�J	������Ҫ�5�\�C���9j�4�i�r'�!���zq���+'�%%�j��U�%��}OOb\&�����16i�tW�`��˯1j[�jFgJ驯�:��O陈'�f�z�DM�2�UH�x�|1KX�3MY�2n��:I����8Vn��3,���� �+}�����nE�KՈj�yh΁��蜜�xj�:j���� �K�6��7I��5)j
y������8:����E.��JI�P'���[a67�X�߈?�a��=0zK[*V�j#w��w������bs�m�)��So�xw����ڰ�8��Ө��]���s�*`�ML�ڠ+oo*���}TK�{�.�G�B"��&�C���H�/ƨ�\^��cӉ�����`5M
����iΠ���̉�*@T)Z�8o
*=��?	�A��t�`�'�V���kP� A����)-��>�V��#<��eܕ�Vgx�P22;�}����/5%���$���V����V/��b�#_O$7�u���m��y���؇�Kc�[�_�x�.�k�}�w��Հ�T�Au����9�8׼t`q����hfR��Z���}H���M7�]��;M|����Rd7j苊��[m�,q�����e&���`�/d�6.p52��͚���0����A��e��d�6�8�,��?�Y�|���D��H�S�3�Q[�@k+J���X��Mv�
wlu��]��x�?��	҃�w�����I2���ڃ�[�Y�\<�9�"�����D"ҦS��� ��[ᚂ����g��Fb!��/&�ze��H�M�=v�F~5�v��8�X���6cWa���枦h��@ˈ3't$dC�(��;7:�|�*���,�$����u-�c�j�V(����`c"�U0���o'R��؂
=J�I�N
�Ie����b���ƄlP*m�p����XY'H��O��nJDbgF´'������;�L[�|u�-Ę��-2�6�K'�i��}�+ל>�0�$z�WiVӝT���FL��U�XPF��G4���T.�*�ڜ0���+g�2M%�4�b06�ǟ��a��z��kI�"�����k���T�Ǎ��1LB26Q��Ǎ!;��ct�G��p�r���R�Ű(�3��g^1=����7�3kz��1��!�&��9&�PDf�ry���ɝl��ѻ9۰3e#��_ט��
�y�,�
�Ft���S�N*��E��gC�]����P��qC�;Zg7bI�`k�	~9G��]�H���P@��,3�1vz�c��"�
�ڶ��;}5+���Q�A��D�����Aw����Ӗ���7A�i-��l��H)U�;w����Pj��h�#���?�Ot��W�^�~P��#�ڿ�8'�\���t;ޔ����;0:M����|�Hdrr+�b����/-�G�}���v/ð�$?�b��=u}�ov]}81��'�{�{��ڰKt ��)�����O�Q�5����h��0{�B�$��K�e�8(L�����ZR���vQJ���ެ��|�e�^������ŏd�V��e�2����(�_�"��,��"ȥ}g�D��g�\[�`YБ��͐���α�Ց�1G�&�}�"!3l��hﴰK~n��VM����Ju(9cNx(iL��~�
N1sDӂ%���D���=
Յ��j�	�̈́|�چ�j&!��&oin���&&��}��
U&_������3�Y��a�W���g��b6���xW@�j�#�at��a���骽"�@��갻M�Tf�	o���«tC����WVWdO;��U.#b���	Cz�x�}.�(c0�ėoR�l�i��L�
1�ж�	��~�;8h��'�0/��_���?�[ziV�Y?F<�3��|�H�Z8���!�wPm|���o'����C��D�����N�G�=�2��{g�Z�-:�4�u=�=��:&o�{��~/H;j7�u't�`�L�=7�4���c��<��40�&��eL

�����DhČ�և;�	f�nF�W���6���t�Fb`�vߘ^[�@���qX�e��[l��H��`��ו�T�	MNK���w&pl��"$�I�c�*�1�0�a�>(�$��TՈ��"2�o�vF�_A
��)�w��6����l���0�"^�4�e�B�
ohm����a*<g(��y@y��|>�ik@���V��w9�p��L�2���
��O��UT}L~�U_��#��?�#^�
oJ���i�*��Savl���W�w�|����k2����M�O��Xq�������O�[?	K�a��و1�b�j�aV*GY�\NE?����h�)�u��G2J�����]M���/O�N�N��:��{��:����J.}-��6Uig��M⦒�?��BG�UT��4�t�PR��7�[��%�:�����w*� ����T��m�K/16\�Ұ��p{�j��<	!��TO�F�P0ס7�.���B�m�'bL �)���B�
ݺB���5ڰ��^�kK��ˋ�F���KA=�ӖR6�!í�����ꖣ�$ϓ���L�c%��d:�Ľ�Ym�RhDN���&1�O^���,g�����z2V��֗����W|��x��0j�wݪ����a>e�R�+�	���5�z�;~xP	c��g
IJ|qG��:�-7���x+`�k�S��(��}�&�d�1��f�A�_�Y�X���F����H�3����wG�� �-H`�}�r(pZs��oL���Sѥ{@u�Qa��B�qdگt}��^�_�4�T��;�5��ݬ�ec=L4;��k-�Q'}��H[�e(�a�������t���V����ƒJ�R����n��C@wL�{�ݧ�1��7�w� �	Ǜ�QU�Gȉ�~C�(��כ�����x�I�$��,�m;gsd�b����jy$`�6��rèz��Z�����<	[!}#fJ�q��m��ۺ�a���(�[�F@���
�����"I�I���z�������H��1K�C�ē��`!��n���F�� �,��`�G>��e�<,�0��a7��Y�}�����j�i����0��Ľ�[�U���,�}&�ks�;�k�Ѩ�l�~!uVd�a)M�rB����7�_�P��݇��`I�ހ���#U�X�L�Y[��K �3�9�ĩ�����i�*梂�R{�i�Y�A.�
b�u���4�ey��ګ��D��3?��Z3y�h��nC�)���h8޴ش�i�w��-�dP+*󐲆��+��	�X
p��K��h���O���Q�i���T��|�w
�Y
%�l4ق���Tm4���s��QxL�J�\g�/��֡bm���W��N/%����6���fK��,��]w�@ek)W{T���õ�$va�Y��V��J�����Ca�[�
�{u䕅��L�]�|�OA���Sz{X��h�K����)\VL��B��	71���&�0V{|�,�/Ҽ;��G�oC�?Y�b :U�\�ɺ�6���������|�"@ S@���Il?�)�6�?��T:.�kdc*:k�!.ek����̛#1e��ʀ贲M��X��y��]�Q)�@]���r��G���_*�F'3�� ��{(PqPkbE�i���#öfOvx��q[���j��`Bբ36�Φ�(���Mh:Z��S��t���;��0��飤��k�o�[�_~�3�廉B���dH��5x��"��jkO��Y���(V�O5�tўr~�=Ҹ��͛�p��߅����c�T��(��v�Uh�ӽ	=��dH�0���k�6�}�v��o���YJV_��3r��������'h��]� �:�I����[��n5��Z5�<�-z׋e�s:�\I=8v�kE�Y�y�:1R�&�>߀���U���U�8��`1�LaZy��ALG���v�t\�q��ane�}Ӯ3�)��i���da]I�g�d^vN��ׅJ����hi�H�B(�E�9���޹���t��j�E4��w�ۤy�5˿1;�̹S/�KP# ɵa���)�(�n�Z��"a
�c������fdlf@��q~��͍�/���/�i&7�GG�;:[cc�J/��O�⎁o���Zf��q��[��+���}8bS
��r��d������T��[ ���fI���}ŠH�n
�Eq.5�8�+�Y�۴��7�\�C�&_�"3�,P@�w��ߊ�!��e_q2��74��GZ��D���,��ð�6�Rb��qCZA�	Zyy��N�@K9�e��NqA��d3��IH�B�(���r��{<�ַ�0�ك
l�"*<�s��T�q<���vt���M�d[�3Ÿ��Խ_
�_�Хq�L�A�O.��
��"���Q��/J�0��/V]zV�p��1ig\Hq?��qh�sѬ����n�Paӛ&ƨ;�� s�^W��Ҳ{C��NrC��+>�rJ,�݇�(D�S�g/���7n��;W-�N�@v.��;���庫��*sZ�e��'@o�쟘�Q_�ٲ\�7���͛�����RAX��=	�Am\ƿwDd����c�K����ߕ��9{]��g��/����~&�<xI�Wg��f���q�)��,0κw�"��!�D�N���Sq\A�j�[ޛT�rI(��)��Ϲ��=�pQ�N���,c�(`~���Wݍ�gG�3ՂiS6We�lL�U�0��[za6Dc��𷷣x�iW�}#h�_��'�����ĭmѵ5���?y�Au�$+a�ȹ�8���3���EΝ�Ċld�&1�+�{����3ol�ɨ�/{(n+�-�H;+P̆��ͳ�1:���rU��2�ג�>�p=�?������{&"(�;''�ip���S�fč���i�2��'��7O�ᔇ%��|x�|�Qu���2�C���1�p[O����g���@�h���G0#y4��b.�
��Q3�F�pi���C�@v���j���TL�3,����
endstream
endobj
45 0 obj
<</Length 10/Filter/FlateDecode>>stream
x�c`
endstream
endobj
46 0 obj
<</Type/Pages/Count 1/Kids[ 34 0 R]/Parent 32 0 R>>
endobj
47 0 obj
<</Length 3>>stream

endstream
endobj
xref
3 1
0000206897 00000 n 
17 1
0000207071 00000 n 
32 1
0000207233 00000 n 
34 14
0000207294 00000 n 
0000207456 00000 n 
0000207489 00000 n 
0000208371 00000 n 
0000208499 00000 n 
0000208645 00000 n 
0000208783 00000 n 
0000208925 00000 n 
0000209064 00000 n 
0000209201 00000 n 
0000209250 00000 n 
0000414023 00000 n 
0000414102 00000 n 
0000414170 00000 n 
trailer
<</Size 48/Info 3 0 R/Root 1 0 R/Prev 206028/ID[<8c43871e49b2cd2deb7274482fa3e1ae><769b9002759705ef45d30d0c337fb895>]>>
startxref
414222
%%EOF
%PaperPortPDFversionupload/logo_3_12.png000060400000013317152455614210010230 0ustar00�PNG


IHDR�nz.l��IDATx��]XSW��m�_�U����ڪl[D�,�=�$�Ѫ�8Q�T��Zp+UTT�B�*�e�����g����>��7瞄��;�w�
���σ$I@�$ I�$�H��$Ib�$1I��$I@�$ I�$�H��$Ib�$1I��$I@�$�)I��ݛ�y���vN�w�Hj�߾��.�e;Q�Ӕ�2~��eU8	Q�TU�x�ܵ�[ZZ�p���p�"g7R�~*Y:u'!R �:p����ԓ���7��v��3\�=x��.MF�:Q�s���Kh\ZFNYe
�z}cӥ�{G�fg�zPZQ����I���ڔ�fj�|[�'%�8�_�$��$��jyWrKq�i�7�-�.`��}�x-w�Qq���B�u���o�ut�$��;�CQIi����ݤ��lY�A���?�sW�@y`��
n��2R�i��+�W�k����N�쿛�e�\s�D�C*x��+(,��}��f9u�-<�������5
��A��]$�4Mwp80K��[E8�����{�4 :����������0�t/���s9�F<�y�&h{|��0�
��no�I����
}�����p���(g��,zT�3��uDu��1<����p*o�}پ�l6I�k�$Wnއ��
�6��:
��1�b��L֣�v��0��o�{����'�
�D �z�S�F�j0���!l�Tq���F��sh��$��$g�n��Y��hY��/�IC'Pt�Fl����<�$���K7�}��kR'�jt!LV��ٶ���>�S�H�ed��$+jO�2�SUM=އ�#�:::��@rʳ�{bC������7�}="���۠ z(�x��!��|�n�t�ѹ������=�V�A?ݿ)��'!<IO���hȄ<�g��@�O���_��=O��'�?�u�O־k���x��$��sLi+Gr���f�!!��3#�c���[�k����]��A�k�����D	IRغ=�>j�#LF��������x_�0$�U���gIS>�dxäv<��%CH�'h�n��0 ����z�&���Ama�h5��Dec�\�5���!�D�^��m��o�zx�x���k6���&mYq�Du�{�DVf�\�}��/K�w6�s�����i��-]e��=�;��+Ϟ�in�~��$%����RP7�A�Y�O��l�!�Ei%���ۧ�]�y�aW��i����Dž�(�0%	��@����i��~ei�;>��>%f9�l����o�|�Z��8��4�]��(s����阗���^uC�����F�pn4Z�Y�q�#_�L �h��G�]��u-ͣ��c~�X�7�3LG�F�e��gt=�Z�‚|P�`^Ks�r�k�O��2%���?Nü�0_*")��R]�4

<���62�M�í�hQhKCQ�`$	�F(e�ٔr$�H����I�^�7��|��������P�@}���(�H�v��|��Ζ
��7��<����X���2�+���E�w��4U�֬��330����w�4>~�sL�J+�,���F��#��TmB��S�\���}/���Kq�3���| ���g!�N�˜��t��܅��J�a~��s�V����*��뭋Y�FIͭ1_�Qj*Cl-�����iS7�A�� �!���$��e��O� I�7&/@n4R�y�<��O�[~6���S�>^��j2{>k���y�H:t�b��]���n܆��(������r3~�3y'�@
��P�������X��<��˧�9Eq����q$��ٶ��X��������

Мt��p�1~I�T��\�|ʸ|����Q*�=_�G��ݕ������̳((u�fi�82�{��֖���g���Pka���+��u����U��z�S�u������%� �)˭�3]��t��8�,�?�++u�l�nPXBSu��mpqВ�a��fZ�iG��in3
��-p�I�Z�е���&�A*g'o�}�qo��d��h�D�e��f��y���:�8��K���LL��=�t��c��-�3{���ѧݜ����Aa�!�S��ÕG��M1��=?�y���~sz���M%n-�8���	���6��ݾ	�~1��M�ӝ�H#pIړ����_*�
��:���?t�Fw����\����"�|v�Xu��ԁ.7T�����syCS±jBn��n�8����ܺ���''���Ǡ~FsF��ao��s:�Z[t�4���.	
;���HÜ�ͭ�j7� eC��tp�[ߥ�@�o����)�u��P�3��kl�7[zR]���@p�	3~,��#..ؓ�$;7�%oI�+�%%)��s��Z���Ȼ����H��m�o�Z���W�Pr|_�A'��t͎�0u���+"\���V�����	�N�K��y���}$(�_��
p����:���_�g���E���&N����"&��@[�P�8�tCň�	�������|^�1�h��Kz:��;���}╋(��7�01�ڜ��$&����e���b�Q@1��756!.�&��_�F(;��z��d�9����d���<�����bA������{Wn��O�+��
���b��)��
�U���~�h���h�u5�N��Lu�#<WY
43���]n�k?��b��0r������C�!��w�����y-	3?�s�/?+>zu������P�T\���Bӗ�Λ$�E��9������������:y���b�r��6���N��GNBlf8�`؃}F鿼�z�("	�(gE����[�2;s^�����_��������p�C��h��?x��6�'&�Ӥt
�@Z7�Ļ?��B���Ez��99]��;II����%!��9�Ig��'��7*Z�}k�78�hU�����=���Õ'�n×���L3����l�v��^9D_W�`�8J�����/|�F#��IU��@�����p��p+��g��6�~�`�0s�J0yR�=���g��h��yv/繳�;g
5�ښ������02����֥lR�I�d6~mL�l�{z)¯�<e���΍l<H*������v �}�^NG�%c�h7|�i�+7
p>@?|u�0��s�i_,
F�T?ikbsG*2E�`���s.^��� ��T�	�ݻw�U��C)*CBK-.2���T>�1@O+�#P����e��֖o	���ƋG���|Pq�X���?�|���t�q �v�P1갱c�����[Z���G��L>J�Y�2����;��c<�^ �V�!�8��-�`�qښQ��Y�:��yhx8�j�7���ܞ���@RE�&UtWc���Ǐ��B�ꪟ޻�Op>�0��6%6.��߄0C����aТ��	,ʨ�T�4�"b��n���c3�H]��W�
����.�JM���~p���~��������!�r��]�)ا���><b}��ނ������ꦦQ��by�jk<�>b�"4�ao���A8���i�{L���\Y�����h�P���q���V-F��-�[�B=1
Z!�I�zt7%+�*� O���i���ں�[����H����Iԃ)�<IzT�7R�Ԗ�u��7I���	�0�G*�6��g�[EU��E�X�ң7z�>5�瞡�'�%��e�/|\'�X�9ЎL�,s3���#�K�x���f�|ޏ+`T�0������;�6`bw�m
E�/n#���}���ȡ)1� '-`k�����ۭ�M��:p\3a#z_4G��}u�3�����HMJL��'�So�施$��M��Ur�^�;��������[M�����2W5��h��)l�Q��N	qRDVĝ.�Iq�%jچU�?��"?L]y��u�]&Z�JCY�ƃ���/��
�<�%�ﳙ?���jk�fi�;c][{�\�j�{AU������k��G8b��d����L9�jL�=}��i�K�@�p:,��#zg�85��qp!��|$h.6���n�|"�o�B�T��Y�P�����ٳ���#f�C��}��}e�M��ɀ�$ё�qڒ� ��H�̟�$l�?yrEq��w��+�5��M��DN	�|ފ��6����AU��
z�D_m�\u%:��+$��r[�ҋ{�Aֻ��}��9�
�k�.����R�BY��&�n�3Е23B~�(��O�ݕs��p_IMU�??E3�{�]���	�
n���Ä�����#r��v��@/��K��<|xw��:%	��/�j�[Co`� ��EV�!̙��PHs����O��+$9m�V��H=7M�9^x(����n�07�2�#9y⢠`�����ڏ9q�t#���_�`����Q4J��ܯ�D���M���)S3N��-��9k˱3�@w��k�wHU���� OQT�5Mi�5��
�;�jZ�#��KQ��$3ujT$R�l6{���f&�t��k�O֠�$/ocaYR\L�%z� ��F�ջ�&�)8,��7�x'�����^?r�;�;�j��K�?okii�p���!����TW��c<'32�-,V-�,z����Z��

��M�v�����gM���w^����1Kc�b]g��������W��w����������+������"���v�uÕzэ�(g�Oy5.4����%�^�LuI6r��e�qA�$�ɺ9F�E���h"W>@W8p���Ë¢�������(Ib��Mi+G(��&�`�kj�Ӏ(I:x"��^;?��A�S�	m��f~�IMͭ�NK>�a"���x���H�q𴔂��� R�:�bv�����ѐT^U�l<��n��l�Z������}ҏ#
I1;�%O$6N�m���=����t�/C$=))�aĔV�9�
e�����W�O" iI쾏�F�
���w�?u�G�������%��B{JR����F�!��<��?�{wm�T�#�r��@<l��MV���a�@�
��h�9��?��4zD����|n�cƨ����Qs�����w͢
{�8���������C��I�p��동��8�� ��i�>s�EiU�|>��$utt@"9\Q�n�����p�|nC�?;�aI����TD�,B���኎�:v�=z�'��0$����x�!��=Pk�T�G(;�E�
�kx�<	aH������$@��أ�x�!�v�/@`��Z�8G�dIBF�d�,3��{�������݇�
�m���O�>
��5;��=�J����[�2�KGB��Ѫ.��c���{8	> 0I���Eƞ�Hq��������TeAȾ���ۓ��0$�� m[b�I�!�ʈI�]�Zo��	�.��$%G�
щ���_F& �$�h崌��m��a?�2 ���5T�~������a��f,����(�����="�
��K���돿bw�GmJ��v~ٛ�y)��==�hH"ѫ I�$�H��$Ib�$1I��$I@�$ I�$�H��$Ib�$1I��$I@�$ I�$��7G�N���IEND�B`�upload/humour_visuel.png000060400005126573152455614210011470 0ustar00�PNG


IHDR����� IDATxL��|��� IDAT=�O IDAT=�O IDAT=�O IDATL��|`� IDAT=�O IDAT=�O IDAT=�O IDATL��|5�� IDAT=�O IDAT=�O IDAT=�O IDATL��|tw�2 IDAT=�O IDAT=�O IDAT=�O IDATL��|\�ި IDAT!����������!����������������"�����������������������͑ IDAT"��������������������!������������������"�����������������"�������������������������������������"���������������������������������������"��[J� IDAT��������������������������"����������������������������������������!�������������������������������������������������������"�����������������������������������������������"�������������������������"����������������������������������n� IDAT"�����������������������������������������������������������������"���������������������������������������������������"������������������������������������"���������������������������������L��|"����������������������������������������"������������������������������������������������-$�V IDAT"��������������������������������������������"�����������������������������������������������������"��������������������������������������"���������������������������������������������������"���������������������������������������������������������"������������������������������������������������������i� IDAT"�����������������������������������������������������"������������������������������������������������"��������������������������������������������������"�����������������������������������������������������������������"������������������������������������������������������������������"������������������������������������������������������h� IDAT"���������������������������������������������������"�����������������������������������������������"��������������������������������������������������������������"��������������������������������������������������������������"������������������������������������������������������������������"������������������������������������������������������������������������������� IDAT�����������������������������������������������!�������������������������������������"!������������������������������������������������������������"�����������������������������������������������������������������������L��|������������������������������������������������������������������"����������������������������������������������������������"�����ZK IDAT��������������������������������������������"�����������������������������������������������������!�����������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������"�������� IDAT"����������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������"�����������������������������������������������������������������������"������������������������������������������������������������������������>%�P IDAT"����������������������������������������������������������������������������"�������������������������������������������������������"��������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Ոs IDAT�����������������������������������������"����"���������������������������������������������������������������������"����"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|�������������������������������������������������������������������������2 IDAT����������������������������������������������������������������������������"����"�����������������������������������������������������������������������"�����������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������!�����-�^ IDAT����������������������������������������������������������������������������"����������������"��������������������������������������������������������������������������������"����������������������������������������������������������������������������������������"���"�������������!������"��������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������"�������"����������������������������������������������������������������������,�
� IDAT���������"�������������������������������������������������������������������������������"����������������������������������������"�����������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������"��������������"����"������������������������������������������������������������������������"���"�������������������������������������������������������������������������"��������������������������"����"�����������������������������������dd
� IDAT��������������������������������������"�������������������������������������������������������������������������������"���������������������"����"������������������������������������		kno-887(���������������������������������������������������"���"��������������������������	wyy8  �������������������������������������������������������������������"�������������������������������������������������������!�����������������������������������������?MLMF����gfg��������������������������������������������������������������������������������������"������������������������������������


���J7772��������trq�����������������������������������������������������������������������������������L��|"�������������������������������"\�W IDAT��������������������������������/12wwxV��������������������������������������������������!��������������������������UWX"XYYB���%''	����������������������������������������������������������������"�����������������������������������������������"����!���������������������������SSS*554..01�����������������������������������������"�������������������������������������RSS0���877.]_`������������������������������������"�����������������������������������"����"������������������������������!""egg0mih������������������������������������������"����"������������������������������������������)**"""���������_`_<�����������������������������������������"�������������������������������������������������������"�ҳ IDAT"������������������������������������������������>>=2%''�����������������������������������������"""""""""��������������������������������������������������������334

ghi,�������������������""��������������������������������������������""��������������������������������������������������


lno2�����������������������������������"!"!"""����������������������������������������������������������465������������������LLK4"#$�������������������������������������������������������������������������������""������������������������������������??>.&'(���������������������������������"""""""""����������������������������������  ���
hji.��������������������������"������������������������������������������n�[E IDAT"��������������������������������������������������������
kll0�������������������������������""!""""!"��������������������������������������������������������������������������
������������򶷸��������@AA*
����������������������������"��������������������������������������������������"����������������������� ,,,�����������������������������������������������������������������������������������������������������������������������*++QRR-�������‹�������;;;����������������������������������������������������������������������"����������������������������������������"�������������������������������������������������
`aa(������������������������������������������������������������������������������������������������
		���췶������ꦦ��������EFF&������������������������������������������������������������������#t IDAT"�����������������������������������������GGF,
������������������������������������������������������������������������������������������������������������������ "#���������������%$#+--�����������������������������"����������������������������������������������������""������������������������������������������������������cde(��������������������������������������������������������������������������������������������������GHH������������������������������������������������������������������������������������"�������������������������������������������������������������������?@?$�������������������������������������������������������������������������������������������������������������������������������;<< ������������������"L��|"�������������������������������������������.�-n IDAT�������������"����������������������������������������������������,./������������������������������������������������������������������������������������������������������������������������������������������������#"!������������������������������������������������������������������������������������������""������������������������������������������������������������999�����������������������������������������������������������������������������������������
�����������������������>@@����������������������������!��������������������������������������"�����������������������������������������577��������������������������������������������������������������������������������		
�������������������988��������������������������������"������������&9� IDAT���������������������������������������"!���������������������������������������������������������'&%
��������������������������������������������������������������������������������������������������������������		����������������(*)������������������������������������������������������������������������������������������������������"����������������������������������������������
245����������������������������������������������������������������������������������������������������������������������������
����������������������������������"�������������������������������������������������������������""""������������������������������������������������������������������443�����������������������������������������������������������������������������������������������������������������������


245������������������������������!Cp�s IDAT��������������������������������������������������������������"""��������������������������������������������������������������/00�����������������������������������������������������������������������������������������������������
		��������������,,,����������������������������"����������������������������������������������������"������������������������������������������������������¿�����
������!! ����������������������������������������������������������������������������������������������������������������������.--��������������������������"���������������������������������������������������������������"���"�������������������������������������������������554EFG���������������������������������������������������������������������������������������������������������������������������;:8
�������������������������������}v IDAT"�������������������������������������������������������"�������������������������������������������������������������������443qrq.������������������������������������������������������������������������������������������������������������������������������:97�������������������������������������������"���������������������������������������������������!������������������������������������������������������kkj���������������������������������������������������������������������������������������������
		�����������������		�������������������������������������������"������������������������������������������������������������������������"���"��������������������������������������������������������������;::022���������������������������������������������������������������������������������������������������������������������������������')*
���������L� IDAT������������������������������L��|"������������������������������������������������������������������"��������������������������������������������������������������������������988���jkl&fcb�����������������������������������������������������������������������������������������������������������������������������������������������������������������������"���!������������������������������������������������������������������������������������"�����������������������������������������������������������������������������
���++*
��������������������������������������������������������������������������������������������������������������������#
�������������������������������������"����"�����������������������������������������������������������������������������������"���"����������������������������������������������������������������������������������
���$$$������������������������������������������������������������������������������������������������������������������> IDAT��������������������
����������������$#"����������������������������������������������"����������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������;:9 
���������������������������������������������������������������������������������������������������������������������������������������
�������������������������������������"���"���������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������fcb�"#%����,+++������������������������������������������������������������������ۙ�� IDAT��������������������������������������������������������		���������������������������������"�������������������������������������������������������������������������������"���"����������������������������������������������������������������������������������������������������������***���
��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���"����������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!����������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������-s� IDAT����������������������������������������������������������������������������������		�������������������

������������������������������"���"����������������������������������������������������������"���"����������������������������������������������������������������������������������������������������������������������	����������������������������������������������������������������������������������������������������������������������������������������			��������������������������������������������������������"�������������������������������������������


	�����������������������������������������������"����"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������ruv3HHH6����xvu�����������������������������������������������"����"�������������������������������������������������������������������������������������������������������������	
@AA������������)*+689���������������uI�� IDAT������������������������������������������������������������������������������������������������������������������������������������������������������������������������!���L��|!����������������������������444(**),���daa����������������������������������������"�������������������������������������������������������������������������������������������������������������������������}��4UTTB�������ʂ�����������--.���>����ң�����������������������332�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������'&&&mno2zxw���������������������������������������������������������������������������������������������������������������������������������������������������������������
KJJ8TTS:�����������npo*tts2��������������������������
������������������������������������������������������������������������������������������������������������������������					���������������������������������������������������"����������������������������������������=>>0������������������������������������������������������������������������������������������������������������������������������������������������������Z"�< IDAT��������IKL
TTS4�����������:;;777���iii*�����������������������������������������������������������������������������������������������������������������������������������������������		����������������������������������������������������������"���"������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������""!acc*�������
hii(



NPQ�������������������������������������������������������������������������������������������������������������������������������$%&WYY 
���������������������������������			��������������������������������������������������������������������������������������	������������������������������������������������������������������������������������������������������������������������������������������������������������������432 ++,�������add 233���
������������������
��������������������������������������������������������������������������������������������������������������������TVWuvv8�����������𳲲ⶵ���������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������Օrd IDAT������������������������������������������������

]__&{xw������NPPbba,������������������������������##"���		������������def III����������������������������������������������������������������������������������������������������LOP��>

	::9011څ������������������
			����������������������������������������"������������������������������������������������
�������������������������������������������������������������������������������������������������������������������������������������������������������������������efeKKJ(��������UUV^_^*


�������������������������776��������������000gih0
./.OON.����oml������������������������������������������������������������������������$&&
|}|:

	���VVU&���򱮭�������������			�������������������������������������������������������"������������������������������665��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


aa`2KLK$���������������������������������������IIJ
##"���6a^^���������������������������������������������������������������������������������������������������|}~2���������^__"������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ IDAT����������������������������������������������������������������������hhh>�������������������������������������+,,���00/ >AA�����������������������������������������������������023���D��������������������FIJ887������%&%-/0��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������MMN,�����������������������������������


���HHH ����������������������������������������������������������������������noo2  mml<����������������������kkk,������	887����������������������������������������������������������������������"�����������������������������������			��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
./.
_``*����������DEF%%$�������134������������������!"#����������������������������������"�������������������������������������������������������������������������������������������yRs{ IDAT��������������������������������������������������������������������������������CDC�<;;"������������������������������������������������������������������������������������2444���܏��������!$#
���''&����������YZZ$������������KMNQQP"���������������)))�����������������������������������������������L��|����������������������������������������


������������������������������������������������������������������������������������������������������������������������������������~~�����������������������������CDC����������������������������������������������������������������������'()>>>&
\]\4sqp��������$$%����������������$%&
00/����xxyκ�������SSR"�������������		��������*+*�������������������������������������������"������������������������������221		&()�����������������������������������������������������������������������������������������������������������������������������������������������������������������ʈ��<
�������		
���

���������������������������������__^�
��������������������������������������������� !
!""�����������������"""	
	CCB&mop􋉈����������������������������OPP			���ں�����������FFF

�������������

���������223�������������������������������������������������������������������������������������������������)**����������������������������@& IDAT��������������������������������������������������������������������������������������������������������������������������������������|{{Ɓ��8�������ꄂ��PRRffe(�����������������$$#���������������mml,�������������������������������������������� !887;=>'&%			�������򨧨֜���������TUT*���������������������������?AA���𓑐����������<<;���������


��''&��������@ABOPOurs����������������������������������������������������������������������������������,,+��������������������������������������������������������������������������������������������������������������������������������������������svv,321����������줣�ོ�������"�
����������������$$#��������������TTT"����������������������������������������������HJKFGG"++*

���lml8
��������������
&'(�������������������������������"%& ����������������<<;�������


����BBC


��������������899EEE&;==���������������������������������������������������������������������������������$%&

�������������������������������������������������������������������������������������������������������������������������������������������������������������gdc�244889�������������������


���


	
	������������������������������ન���������������������������������������������������$%&^``$DDC(���������XXX.����������������	

����������������������������???������𵲲������


�����������

	LNN����������������			LNN�������������������������������"���!�����������������������������о� IDAT�������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������		�����������������������������������������������������������#%&
prr.987$���			`a`(����������
����������������������577�����������		������������			 ""�����%&'10/����������
433	

���������������������������������������������������������������������������������>?@������������������������������������������������������������������������������������������������������������������������������������������������������������
				���������  �������������������������������������������������prs*HHG*���������"""///�������������������������������������+**�����������������������������NON


�����������


./0��������������������������������������������������������,,+���443�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������
�����������������������������������������������Z]^ghg2�������			���			478�����������������������������������$%'
����������������������
HHI�����������
			221����������������������������KJ� IDAT������������������������������������������			���������������������������������������������������������������������������������������������������������������������������������������������������������������������������%%%�����������������������������������������������������������������������2;::$�������������������������������689hhg*
������������������������./.�����������������������"""����8:;
����������������-/0������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������PRSuvu8�������漼�澻��������������###aa`*��������������������������������+,,����������������
���PQQ�����������
		!! ��������������������������"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������&BBA����|yx�����������������������������vxx(ZZZ.���������򲱱ެ�������������������������������������������������������������������&&&�������������������������������
���998��������������	���
������������������������������	�� IDAT����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������033HHGIHG����trq��������������������������������4AA@$�������������أ������������������������������������������������������
�������������������������EGG����������


����������������������������L��|��������������������������������������������
������촲��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������999


���HHG��<���������������������6332�������������ژ������������������KKK
���������������������������������������� "#

��������!##���������������������'()����<<>�����������������������������������������������������������������������������������������"""��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������		����������������������������##%HGF���������������������������8443���慂������������������cba�lmn".//�����ರ��������������������			���������������"""
������������������010�������%%$������������� IDAT������������������������������������������������������������������������������>=  ���������������������������������������������������������������������������������������������������������������������������������������������������������	���6���������������2LLJ.�������ޔ�����������������������������������������������			�������������������	����������
!"#
������������������2332�������֎�����������������������nkj�������������&&&��������������������������&&%
��������������������BAB"##����dgh
���������������	
������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������moo(IHG0BBA,yyx�����{xw�����_aa"SSQ4CCB,<<;&���։������������������������������������
	
	���������������������������������������������suv&AA@ ��������������������������������

������������������������"#$
���������������
���jll??>���������������������
���
�������������������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������<==".-,���
KII����VWW,NML0;;:"���Ʃ����������������������������������

���������������		�������������������MOPYYX*����~~~̱������������������������		n�� IDAT"!!�������...OON������������������������������������������������������2VVV@�������􎍍Ʀ������������������������������������������������������������������������������������������������������������������������������������������������������������XYX"����678!! ��DȐ���������������������������������������������������,,���

��������������������������������������prq.


������Բ����������������������		
����������023
��������������������������������������������������������������������


??@,~~D{~,����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������&()ijl&'()����
������������023FGF���ccb6DFG���������������������������������������������������������������������������������
�������������lno$���������䝚��������������������������������������"#����������������
		�������DDC�������jmngjk���������������������������������������������������������������������������������������������������������[\[0QTU�����������())��������������������������������������������������������������������������������������������������������������������������
���FuvtB���PEGH����������������������		$$%


PQQ$������������������������������������������������������������������������������

�������������������/01IJI����������������������������������������Mn� IDAT�������������������������345�����������WWVSTS�����������������������������������������������������"������������������������
���RSS$�����������������������������������������������������������������������������������������������������������DFF""!
tuu6��������������	������+++�����������������������������������������������������������������������������������������������������XZ[����������������������������		����
�������������������������������������##$$#"���������������������������������������������������������������������������������������������������������������������������������$%$������������������������������������������������������������������������������������������������NQR����������������566���455����������������������������
�����������������������������������������������������



�������������������������������������			��������������;<:���������������������������������������������
����SUU�������
��������������������������������������������������������������������������������������������������������������		
�����������
��������������������������������������������������������������������������������������������������������������������������
	���������������������acd&���J���Psvw(��������			  )*+����������������������


�����������������������������������������������������������������������������������������������"""
���� IDAT
�������������������		


��������



��FFF�������� ""���������������������������������������������������������������������������������������


����������������������
����������������������������������������������������������������������������������������������WYZ=== ���������������������ACCeed8����������������				

���������������������!##�����������������������������������������������������������������������������������������������������

	���112=?@�����������������������������������������������EHI
����������&&&������������		������􌊊������������������������������������������L��|���������������������������776(	
����������
���������������������������������������������������������������������������������;<=���>+**IJI.���敔�л�������������ddc4������������					��������������������������BBB 

�����������������������������������������������������   ���

�������������������������������������������������

	���,ؽ������������������������������������������bbb����������  
������

���sqq����������������������������������������������������������������������jji�����������������

������������������������������������������������������������������������������,--??A��������OQRooo:
���������))(�����0Џ������������������

Z\\"�����������������������������������������������������޺���:;<���2""!������ꓑ�����������������������������������������������


����������������h IDAT�����������������������������������������


���
���0���ꞝ������������������������������������

	������������������������
���TWX**)����������������������
������������������������������������������������������������������������������������


���������������*+,����������������������������������������������������������������������������������������������������Z]^ SSS(?@@^_^��������������		aa`4�����������
�����������������������������������������������������ZXX�XZZ����������������������������������������������������

�������������������������������������������������AA@==<��������������������������������������

	��������!!������������������&'(����mmm"����������������AA@���������������������������������������������������������������������������������������������


	��������������
!!!
��������������������������������������������������������������������688|}~6**)���!  ���������YYX.��������������������������������������������������������������������			���������������������������������������������������������������%&'���������������������������������������������������������\][������%%$$$#VVU�������������������������������������������������������������
���������������������������$����������**+

����������������221��������������������������������������������������������������������������������������������������%$$������������������!"!�������������������������������������������������������������������������XZZstt8
������������bba,���򹸷��������������������������������������������
		�������������������������������6� IDAT�������������������


 ! ���������������������������������������������������������<=<""! 110��������������������������������������������



������
��������-/0
������
��ilm<<<������������011����������544001������	������������������������������������������������������������������������������������998��������������������!!"��������������������������������������������������������������������������../tuu4��������������������\^^vwv:
		������������������


qsr0������������������������������������.00�����������������������������������������������������������
������������������������������������������������)**
dfg��������چ��*
���������			%99�����������������������������:9����������������������*c`a�������  ���CDEffe"�����������		***�����������������322HJK�����������������������������������������������������������������������������������������������������������������
���������������������������������������������|~~:;<;(LLK2���H134�����<<=pqp6

������������������������$##acd ����������

��������
	

		�������������IKK���������������������������������������������������������������			��������������	�����������������

������������
AA@ABC�������sqr�����������������333jji$���4���,XZ[
��������

�����!##���������	)++
�����)*+���(���������������������������������������MMM	

�������������@BB���������������������������������������������������������������������������������������������������������������������������������������������������
++*������:
�����������
xzy2
�������������������������`__�DBB�LJJ�zxy������OPO"())����������

	������������x	. IDAT��������������>>=�������������������������������������������������������������������������������������
�����������������������
			

��������������788����b``Ԣ�����������	221���*���*133���������������

��$$$�����������������%%$ORS���,����������������(()
����������+,+456����������		CDC�������������������������������������������������������������������������������������������������������������������%&(
�������������������������vxy*���BCEF���������������������������������������>AA))(npp(�����������������\_^ &&&�������������������zyx��������������fdd������������
[\]�������������������		


��������������������������������������������������������������������������������������������������������������
��������
������������������������������� "#�����������������������������'''		�����~�\ZZ��������������������������������������������776���,FII��������������������������  
������������##$���������������677������������	���,������������������:::���������������������������cdd�������������234(((�����������������������������������������������������������������������������������������������������������������������!""�������������������������������QTTbcb:<<<(���J689����ILM���J���FVWX������������544������GGG&
����������������MNN"���������������������������ywv��������BBA
���������������������������������������������������������������������������������������������������������������������$%&
�������������������������������������������������������������VSS�caa�~֨����������������������������{||&+,-
�������%$$
���������-..����???��������������������232����������776?AA����]^^ ����������������������������������������������������������������������������������������������������������
#" 
�������������������������JKK"uvv4WTS�����������]]\,"! |}|�������������������	$&&

++,�������������577!  �������������&&&�������������������
{ IDAT���ژ��

IJJ�������������������	
���������������������������������������������������������������������������
$%&�����������������������������������������������	

������
lnnnkj����������
�!##
���������(('������')*

������			����������������&''
������������bba"opp �����������������456>>>��������������������������������������������������������������������������--,���
�����������������1�0 !
���������������������=AASST���赴������������������&&%���..-������������hii0�����������������������������������ABB������򤢣޺���������F�������������������ooo(GHH������������������������	


����������������������������������������������������������������������������
))'��������

�������������������������������"#$������������������9<<656���787*,,������3���������&&'
���ABB
���������������􍊊���MNO


�����������������SSR))(qtu�~}����������


prr&�����������������������������������������������������L��|����������������������������������������mmm*MML&���:tvw&�������������
 "#��!! &''�	

����������')*

���������010����������������_]]̞������
����������������ޖ����������������������$$$*,+������������������������������������������������������������������������������������������������������������������������������
����������������������������������$%%
�������������������������{{�WUT�tst������������=>?��������"#"
� !����������������������.//����������AA@��� "#�������������������}~��������$&&DED�����������������������������UUT dgg�����jmn 332����������������������������������������������������������������������������������������������		�������������������������]]\*gij �������
��������������������������������������������"#$������	���2���D���,
��������r��U IDAT)*+�����������������������pnm������===�����������������

	EFG������������������������������������������������������������������������������������������������������������������������������������������������������������������������������&''���������������������������
�����������������dbaֳ����(('�����������
��.//�������@AA����//0$$$344���������������������������cde�����������������������ooo&ikl		����hkjccb&��������������������������������������������������������������������"������������������������������������������������������
������ZZY($%&
		��������������������EGGAA@ YYX,���<8:;,+*�����"##			�������������IJJ������������������������898������������������������������YWVЂ�����������������������������������������������������������������������������������������������������������������������������������**)'()����������	
���������������������������������������


��321������������������������---�������KMM�����������������ܫ����������������������CEFIII������������������mnm(���,ILM()*
@AB���,mmm*�����������������������������������������������������������������������������������������������������������������������������!�������������

				
9;;������������������������������������������GII%%$���4�������������������������������
332���������������������������! !(((
��HIJ���0?AB��������������������������������������������������������������������������������������������������������������������������133�������������������������STS������������������������

	'))�-./������������=?>�DDD��������������������������)*+vww&
������������������������������>=<���4���8���6GFF�����������������������������������������������������������������������������������������������������������������������������������������������������q�� IDAT����������������������������������������������������			.-,��� Y[[������������������
������������:;=���������������������������<>>�����SUT  vww$���������������������������	
����������������������������������������������������������������������������������������������������������������������*((��������������
		����������������������������FGG


�������������




�������������������������������������787��$$#������������������������STT����ikl
���������������������������������������������#$%���(  ������������������������������������������������������������������������������������������������������������������������������ !"
�����������������������������������������
������������������������������������)+,���CDD�����
���
���������������������������
��������������������������887		-,-���%%%KLM��������������	�����������������������������������������������������������������������������������������������#$$�������������������DFF�����������������������������������������������������566567������������������-,,CDE������������GIJNNM��������������������*&()��:<<���.--,����������������������������������������������������������������������������������������������������������������������"��������������������������������������)))�����������
�������������������������������������������#"!			$##�'(*�������	
����������������������������������
����<<=
CDD���
���
����������������������������������������������������������������������������������������������������������������������������������������������YZ[������������������� !"������������������������������������)()������?@?�����������������������bcc����.01
xyx&����������������������110���4���"678
	
���
9;;���&���2&&%�����������������������������������������������������������������������������������������������������������������������������������������������������H�� IDAT����������&''������������������


���	
���������������������(*+<>>���&&%������������������������������������������#$%IKK	

���������	

������������		����������������������������������������������������������������������������������������


*--
����������������������������������������/.-+,-
�������������������������9::����������������������
?@B789�������������..-tvw������"$%���*
����������������������������������]]\"���4���8���0���2���8���4UUT 
��������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������
�������������������

���������
	��������������


���110��������!"!
����������������������������011%&'221��������������
	
����������������������������������������������������������������������������������������������������655��������
���������abb"!!�����������������  ;<;���������������������������������KLK��� "#&%%�����������������������TTSz|| 

����������*$$$����������������򽽽����443332���������������������������������❜��������������臅�������������������������������������������������������������������������������������������������������������������	�������������������������������

	��������������������������������������������������,-. !"�������������������������������"!!
`cb������������������� !�������������������������������������������������������������������������������������������,.-�����������������������EEE!#$���������������������������������dfg��������������������������777UUU��������������������Z[Z ���2rvwPRSgij���.0//�������������������������������������������������������������������������������ޚ�������������qoo������������������������������������������������������������"�������0W� IDAT��������������������������	��������������������������&))����������������������������������������������������������������			�������������������������� "#�����������������������������������������������+--
HGG��������������������������	����������������������������������������������������������������������������������������������������������������������! !��������������������������������		kll����������"!"�������������145��������������������������lopQQQ�������������������������������������������������		y{|"STT��������������������������������(''jji(���0vwv*(('�����������������������������������������������������������⡞�������������������������������������}{|������������������������ljj�������������������������������������������������������������������������"������������������������������������������
���������������"""
�������������� !�������������������������		245���
�������������
��������rvwY[\���������������������%%$
��������������
�ikl���������������������������������������������������������������������������������������������������������������������
022���������������

���������������HHH+-.
������688�������������"���4���0���4�� ����������ruvggf$��������������������BCB���:����������������������������������貲���������}}������������������������������������ZXY������������𖖗�c``�����������������������������������������������������������������������������L��|������������������������������������������$%%
����������#"!
������������������������			����������������554����������������������IHGbcc��������������;==��������445<;:�������������� �
		
������������������������������������������������������������������������������������������������888��������������������~$		;;:���������������"#$���,WVV\\[ ���*����������������VXY^^]"���������������������������������������������������������������������������������������������������|{ֽ��������������������rpp������������������������������������|{�QNN�^\]�qqr�dcd�ROO���������������������������������������������������������������������������k� IDAT"�������������������������������������������������������xvw�����������!!!����������������!#$
�����������������������������,-.���--.���!"#
���������������


  ,..������������������433��������������())PRR�������������� "#���������������������������������������������������������������������������������������������������466������������������


����������������221acd����123
&&&��������������&''&���443XZ[������TWXttt(��������������������������������������������������������������������������������������������plkе����������������gef������������������������������������������쳰������������������������������������������������������������������������������������������"���������������������������������������}~���

����������������������������





���������������������������������������������





��)*)'('��������	�������

UVV���������������������_aa�����������vww$LLL����������������������������������������������������������������������������������������������������������"!!����������

���������������������������������mml$133
��������������������������������UVV			�������678,-,(''
������567
���*���.
����Ա��������������������������������������������������������������������������������������������tpoЂ���������������zxy�ron������������������������������������������������������������������������������������������������������������������������������������


!!"�������������
���������

�����������������




	
�������

+-.
 
���������		�������<<<()*���������������������ZZY%''�������
�����������������������������OQR467
�������������������������������������������������������������������		@@A���������


������������������������������


���,"%%����688AA@���������������� 	�������������������_ab���2���8EDC����������Щ��������������������������������������������������������������������������Ԙ�������������������������������KIH��������������������������諫��hfg�WSR�������������������������������������������������������������������������������������������������������u1{= IDAT����������������������������������������������������"����������������������������������������������������


������������ ������������������������
���������������������

!"!��������������232����������������""#���
]__�������������������&����������������������������$&'�������������������<==_``������������			�����������������������������������������������������������������������������BDC����������������������������������
���.#$$������������stu$���������������
�����JLM���,���>{||.210�������omnʰ�������������������������������������������������������������������������~�����������Ȍ�����������������������������`\[�JGF�DA@�DA@�HDC�VRQ�xuuо���������������������������������������������������������������������������������������������������������������������������������������������������������������#$%
�������������,--�����������������������������������������
		���𾽾����567���������������$%%�������-.-��������������������..-���*���������������������������������� 
����!""����������������������������������������������������������������������������(((
��������������������������������������������������2EGH�����


��"110����������������������� ���8���.���*���*���<���4CCB


����������������\ZZ����������������������������������������������������������������������������kij������������ba`����������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������())�����������������$#"
�������������������		����������#%&�������������%%%�������������
���
���
�������221���07:;�		����������
������"!!�������"!!�������������������������������������������������������������������CFG�����������������������������������������������
���2���&!#$��������''(���,LLK��������������������� ==;IHGFED�����������ca`������������������������������������������������������������������������������������������������XVU���������������������vuv�_\[���������������������������������������������������������������������� IDAT���������������������������������������������������������������������������������������������������������������������������������������������������������������������������!##����������������������������������������������������������������
���
�����������������AA@���578���IH���������������QQQ

"!!���0���暙������CEE`aa221���������������<<;���������))'�����������'()
����������AA@�����������������������������������������������������������������������EEE���������������������������������������[[Z"NNMEED���������?@@::9			������������������::9�����������������������������������qoo̝��,++�������ʭ���������������⣠����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������
���355������������������   ����������?>>���������;==������������ddc"UUTOON�����������,,----�����������������������������)((�����NON(*+����������������������������������������������������������������765 ���222
���������������������������������������DDD
���			876876���������������������..-������������򚘙Ԧ�������������������������RNN�NPR������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������
			�����������332��������������	

��������������?@@����������������432ded"}}|(}}|(jjj$??>��������������'()
�����������
		022
����9:;!!!
���������������������������������������������������������������������������������������MOP�����������
	
������������������������������������򮬬��������������������hff����������HEF������������������������������������������������������救�ڞ���������pK� IDAT�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�������������������������

������������������������������������������	�����������������������+,,������������������--.������������������������135����������++*�������������������������������������������������������������(''���������������������333� "#*))������-,,�������������
����������������������������������������������������������������������������KKK����������	
	������������������������������������������������������������������������������������������^\]ȯ�����������������������������������}|~�>:;�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������#%&
��������������&&'
�������������������������
	
"#$��������������  .-,���������������''&��������������$$#�������������������EFG������������𤤥��������������������uss���������������'))
����%&%
����������������()(����������RSR022�����������



����������������������������������������������������������������...����������������������������������������������������������������~�����������������갯��������������������uqp�lkl�����������������������������⑐��IHI�PML������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|������������������������������������������������������$%%������������  
��������������������������������������������������������������


/23���
��������������"""
��������������QRR��������⻼�����������������~}����������������'''
�����
����������������������
)*+
EFG���'&%���������������������������������������������������������������������������������������������������������XYY�������������022��������������������������������pnn���������������������������������m�3� IDAT�����VRQ�<9:�feg�kkl�hgi�HGH�2//�ZWU�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������#"#�����������������������������������������������������������333�������������������''(


����������������0/.)+,����wttڹ�����������������ܻ���������������,-,���
����������HII��;>?! ����������������������������������������������������������������������������FGG			������������/..���������������������������������������������`^_��������������������������������������������������������껷�轻������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������-//��������������
��������"##
����������������������������444��������������������			577��


�����������kll������qnmڏ������������������������������������������,-.������345����������������;;;��ggg����������������������������������������������������������������������������������������������������!! ;=>�������������

())����������������������������������������������������d`_ʡ���������������荋���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������! �������������������������������������������������������������������������������������������)))
�������������777�����������������??>-./
��������SPQ�����������������������������������������! ��221����������
KMM����WZ[665�������������������'((��������������������������������������������������������������������������������������������������������[\\"�����������������������N߃ IDAT�����������������������������������������jij�����������������������zyy���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������$&'���������������			����������������
����������������������
������������������"#"
#$%����������������tww"����������������~}�LIJ̋�����������������������䱱�������������������������������789������&'(������������������VVV��������������������-./
ooo"��������������������+++������������������������������������������������������������������������665$&&�������8:;������������������������������������������������������������QON�|{|�����������������������������🟠�\YY��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������)+,
��������������������			())������������������

	������������

������������"��������������#�#���������QQP���BEE������������������k344���������������WWV���:98OQR�������������蜚�� !����������?ABHHH����������������DED���� 
���������������� ##"gih���������(�������������������������  
��������������������������������������������������������������������������������QQP0���abc ywv��������===�����������������������������������������䬨��.//��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������%%%����������������))(
����������������������������'(*���-.->?@����������������SSS����������������?A@��������������uuu$��������������������������KMM��������������������������������555>@@������������������WWW UXY�������*&%%������������������������
*++����������������������������������������� IDAT������������������������������������KKJ ���������111�����������������������������������������������������������訦�ਦ�⬪���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!!!���������������9::EHIILMacey|}ors[_`FHI!##������

	




	�������''&������������������������+*)������������������-,-������������������$������������������887�����������������������CDE��


BBB����������������{{z(suv���(--,�������������������������		,,+������������������������������������������������������������������������������������������


mno$�������578������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������577,++���+**���0�������mkl�������������������766*+*
��������������������������#""������������000���677����

�������555���A@@ruu􉆆�����������>@?����������������������������//-���XZY����./0
(('��������������������LLL



ghg$PRQ����
�������������������������KLL568�������������������������������������������������������������������������������'&&���KKJ"������������PPP����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������







+,-
"##
)))

���������
		BCC���������������  ���  
����211()*��������BCD		����������			����������LLK��������������]]\=?@������������������433���^^] ����������������		MMN��������������������MML322vxy ---��������������������DDD�������������������� IDAT�����������������%%#������������������������������������������������������������������������ab`�			|}}.a^]������$%&888���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������""!
		

#%&!!!
""!	������333	

������555����%&'�����������!  ���$##������999

���������			��������������������������������110������������������uvv(��������������GHI00/��������������������ccb$���������������������332������������������������





�����������������������������������������������������������������������������������������VVU4���665eij������	qss$

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������gji HJJ����������$%$mpq�������������"##���������������� 

,-/
���������"$#   
���������������������������
����������������
788����������������CCBtut(		��������������'()lnm$			����������������������'&%�����������������������--,�������������������������! ���������������������������������������������������������������������LLK,hgg,�������_bc???����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|�������������������������������������,--JKK121���988988������������������������UUT����������������

�������! ���������EDD>?>�����������@AB


 ""���������""!�����������
�������������������������,,+���FGG������������������222���ppo&!!!
���������������%''
���*!  ������������O"y� IDAT������������������('&�������������������V�;:9������������������������������������������ �������������������������������������������������������������������������KKJ.���
��6566�����676AA@���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
$&&

10/���������������&''
����������

���� !��������������:;;��������

CCC788��������<<<�������JJI�����������VVU232��� !"���������������������stt(���RRQ---���ܾ����������ACDtvu&$##����������������������������_`_&			������������������������%%$
����������ܡ���������������������������???$���������������������������������������������������������������������������������������@A@&������
TTS(����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

&&&���������<>?*)(

���������������������������������������������������

��������()(
����������-,+����������,--$$$���%$$�����������
�������������������������
=>?�������������������������677@@?���&&%���0���������������$%$
YZZ<<<������򶵴�������������������CBB������������������������𓒓�vwv0

�������������؎�������������������ccc�			�������������������������������������������������������������������������������������������TTS4������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������jmn.	,+*		�����������

��������������������������������������(**����012����������%$#KLL������SUU		��������������

�������������������������������������|d� IDAT�����?���III����%%%��������������������ywvء��&%$������555444���������
�������������������������������=<<���������������������mnm.���򕔕ԩ��������������������򳳴�GHG(����������������������������������������������������������������������������������������>?>$�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


���D443,
���������������������������''&
������������������������������"""111�����...��������&%$RSS�����������234BBB��������������������������������������===���000FHH""!�����������������qnnҝ��4
������������������쮬����������������JII$�����������������������ijk(++*���������䓑��������������������������~{zΩ����������������������������������������������������������������������������������������}}|H���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������qst.332,�����������������������������������������������������������6
������⏍������������(((

�����  
�������KLK%%$?AB���������vxx"��������������
������

�������������KKJ������������������
���,


��������������������trs΍��2
�������������������������������������+*+������������������������������:<;568 !��������������������������������������������������������������������������������������������������������������������������@@@�AA@,����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������666$������������
�������ު��������������������.-,��������������.//


����������������d/' IDATnoo ����������moo//.��������������998���


���������������������������������XYW��������������������geeʍ��0$##������������������������������������srr�vww, �����ڪ�������������������������꼺����������������������������������������������������������������������������������������������������������wutȣ��'&&���ꪧ�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������))(&�����������������������������������jll GGF������������������������������-,+"##��������������


:<=���9::��������������&%$���,+*lno�����fhjWWW ������������\���������������������)('����������������������LMK���������������������������b_`ʆ��*998����ԙ��������������������a^^����������������������������������������������������������������������������������������������������������������qno����J������􌊋���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������DDD:������������������������������������������������CCB

����������������F
�����������������������BBA������999��������������&%$���^^] �������VWXghf$������������������������������)('�������������������������332�������������������jhg�egg�[[[$
���������򎍍в�����������������������������������������������������������������������������������������������������������������������������������c``����>///$���������掌�ʼ�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������122�TTS@			���������������������������������������������
����������u�� IDAT������������
�������������****+,����//0������������fgf"���			uvu(122�������		CCCjkj&			������������������������������������ded(�������������������00/��������������������������������������ghi$::9����������䉈�����������������������������������������������������������������������������������������������������������������������������������������a__�^`a�JJJ*��������޴����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������LLL*�����������������������������������
 ������������������
���������������
^``����TVV
�����������������,+*			LLKBBB���
���������������������...����������������)('����������������]^]�(''�������������������������������������mkj�345�TUT345��������������쵵�๷������������������������������������������������������������������������������������������������������������������������������������������؟���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������䱰������������������������ !!
������������������)++
�������������������)))������GGF

�443��������������-��������

	
�������������������YYZ$

������������������،��:������������������y{z����������������������������������#%%
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|���������������������W�K6 IDAT���������������������������������������������
������������������
!  ��������������������ONM??=���������������jlk$
�������������������𱱱�YYX(�������ڬ���������������������������������CDD�;;:������漻���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�������������������
''&
�������������������
����������������������yzy0��������������������������������������������������������������������Ҕ��!! ����~~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������43"$%��������������������FFE
���������������������PRQ�*))����������������������������������������������������������ussƆ��6%$$��������|{z��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������6�A IDAT����������������������������������������������������������������KMM����������������  
�����������??>����������������|}Ҟ��:����yww���������������������������������������`]^�>@@������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������QQP�������������������
���������������������-,,����������������������~||̄��4
����������ywv������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������OPP���


������������������]]]�����������������������������>>>������������������������������666			��������wut��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������s�` IDAT�����������������������������������������������������������������������<==���������������������==<�������������������NON�;::������湶�����������������ټqrr*888�������斔������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������
��������������������778���������������������֘��
  �������~{{��������������lih��135�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������



�����������������
		
����������������caa�fgg -..�������ꞝ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ʴ�U IDAT���������������������������������������������������������������������������������������������""����������������1��� ##������������������|zy������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������222�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������TSR*


������������������������PQP�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������)ć� IDAT������������������������������������������L��|������������������������������������������������������998"�����������������������998 !��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������̉�����ޠ���������������������


KKK�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������MIH���������������������,-.����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������7L�K IDAT�����������������������������������������������������������������������������������������������������������������������������������������������������������������

�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������0/.����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������/.-���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������%
 IDAT��������������������������������������������������������������������������������������������"��������������������������������������������������������������������WXX&""!����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������-00���F����ROO�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������'))JJJ�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������K	h IDAT������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������x� IDAT��������������������������������������������������������������������������������������������������������������������������������������������L��|"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������{� IDAT�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!����������������������������������������������������������������������������������������������������������������������������������������������������|vQ IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������E IDAT����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������"�������������������������������������������������������k��� IDAT����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������L��|"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������"����������������aXh� IDAT������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������?�� IDAT"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������.�� IDAT"���������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������������e�� IDAT"�������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������L��|"��������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������!���������������������������������������������������������������������������������������������������������������������������������������[uH IDAT���������������������������"�����������������������������������������������������������������������������������������������������������������������!���������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������"������������������������������������������������������������� IDAT��������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������"����������������a IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������!����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������l��� IDAT"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������!������������������������������  
<=?���������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|!���������������������������������������������������������������������������"�������������������������������npp,^^^F


��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������k IDAT"������������������cef(llmN

		,-,�������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������"���"����������������������������� !���Z����������]Z[����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������!����!���������"������������"�������������������������PRR"���)))BED�������������������)++)*+���������������������������������������������������������������������������������������������������"����!�����������������������������������������������������������������������������������������������t˱ IDAT"����������������������������������������������������������
���R)))$����������iee������������������KNO���D
���������������ء��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"��������������������������������������������%((``a8��������������B
	777"�����������������������������������������������������������������������������������������������������������������������������������������������������������������!����"���������������������������������������������������������(()

/01������������������[]^"���ZZZ:���������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������"w��7 IDAT"""�����������������������������������������������������������-..9::����������DDD ���
opp6��������������������������������������������������������������������������""������������������������������������������������������"����"����������������������������������������������!! ����������#""$$$��������#$#������()(XZ["������������������������������������������������������������������������������������������"����""��������������������������������������������������������������������������������������������������������������������������������������"""����������������������������������������������������������������������������������������������������������

�������wuv��������������������������������?@A������������WWW.�����������������������������������������������������������������������������������!"��������������������������������������������.?�� IDAT���������������������������""!��������������������������������������������������������������������


��������������������,++���_``$������������������������������������������������������������������������������"""��������������������������������������������������������������������������������������������������������"""�����������������������������������������������������
������������

���������������$&&���������������IJJ(������������������������������������������������������"L��|""�����������������������������������������������������������������������������������������""���������������������������������������������������������


��������������� 
���������������������XVV��������GII�����������������������������������������������������������������""�������������������������	� IDAT������������������������������������������������������������������"����"�������������������������������������������������������������������������������� 
����������������������������������������
DDC"���JKJ"���������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������"����"�������������������������������������������������������������������������������

	�������"$$
�����������������++*('(+,,��������������������������������������������������������������������������������������������������������"����"����������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������
������������������vvu2
?A@����������������������������������������������������������������������������������������������������������������������"����+21 IDAT"�������������������������������������������������������������������������������"����"���������������������������������������������������������������������������������������
�������������������MMM�++*;;;�����������������������������������������������������������������������������������������������������������"����"���������������������������������������������������������������������������������������������"������������������������������������������������������������������������������
��������������������������������������ނ��    
����������������������������������������������������������������������������������������������������������������������"����"�����������������������������������������������������������������������������������������������������"����"�������������������������������������������������������������������������������������			�����������������������������������abb�##"���
+++��������������������������������������������������������������������������������������������������������������������������_� IDAT��������������������������������������������������������������������������������������������"����"��������������������������������������������������������������������������������������

������������������
����������������$$#577��������������������������������������������������������������������������������������������������������������"���"��������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������

������������YYX�


,,+�����������������������������������������������������������������������������������������������������"����"���������������������������������������������������������������������������������������������������������������"����"�������������������������������������������������������������������������������������������������������������������������	

����������������

��������������222���
������������������������������������������������������������������������������������������������������������"�����Ik IDAT"�����������������������������������������������������������������������������������������������"����"����������������������������������������������������������������������������������������������������������������������	
���������������������������111���
�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!�������������������������������������������������������������������������������������������������������������������������������������```�+--�������������������������������������������������������������������������������������������������������������������"����L��|"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	��������������������������$$$�����������������������������������������������������������������������������������������������������(}�d IDAT�����������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"!!�������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!"��������������������;<;����������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� 
�����������������������������������������������������������������������������������ȉwr IDAT���������������������������������������������"������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������ABC��������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

 �����������	
���<)))��������ރ������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������
į� IDAT������LLL)(([[Z2����������������������������������� "#())������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


�����������������������������**������������@BB���YYX0����������������������������������������023jll2/.-"cec�gee����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������\]]"�����������������������������rvw*bba@������PUSS������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������V� IDAT�����			���������������������������������123����������������������������wz{,ccb>������@]XX�������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


����

����������������������������
�������������(('�������������������������������PST___<���655(fjk����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������==<������������������������������������sss>ccb<����������������������������������������������������������������"����L��|"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������,oo[ IDAT�������������������������������������


���������������������������			���������\]]�	������������������������������������rtu,������tvw0nkj��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	���������������������������������::9�������������������������������JJJ*���CCB*>@A����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
			���������|zy؜��
!  ������滸�����������������������������������Y[[ 
������kll2��¾���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������f� IDAT���������������������������������������������������������������
���������������������������XUU�_ab  ���������������������������������III"�������������##"
���..-MOP��������������������������������������������������"���"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������467  ����������||{�����$&&���6,,,���fhg0�����������������������������������������������������������������������������������������������������������
	



���ꘖ������������������������������������������������������������������������������������������������������������������������������������������������������������
����������������������������������������������?@@����_]]���������fdeȚ��8-,, DEE�������������������������������������������������������������������������������������������������� !!

222



���.//^ZY����������������������������������������������������������������������������o� IDAT��������������������������������������������������������������������������������������������������������������������	
��������������������������������������������������������899�������{zz������������vtt��>
;=>���������������������������������������������������������������������������������������������*+,011***			���������432*+,-�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������#"!������������������mml0�������������������������������������������������������"�����������������������������������������������������		
			!"





������,..�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


����������������������������������������������������������566�������������������VVV$���������������������������������������������������������������������������������������������������

!"$

���


����������������������������������������������������������������������������������m IDAT��������������������������������������������������������������������������������������������������������������������������$&&
��������������������������������������023KLL�������������������������������������344������������������WWV&���������������������������������������������������������������������������������������������������



"$%

��������������������������������
������������������������������������������������������������������������������������������������������������������������������������������123$%%���������������������������������������������������������,,,���������������������������������������������0
WXW {yyҳ����������������������������&''������������������TUT&��������������������������������������"��������������������������������������





		








�����������������������������������������������������������������������������������466���������������������������������������������������������������������������������������������������������������������������689)**����������������fhi$SSR,��������֠�������������������������������������������"""��������������������������������������������������������:<<
		}*���������������������� ������������������������������������������������������������������������������L��|�������������������������������	


	������

!"


	

	���������������������������������������������������������������������u�͔ IDAT����������������������������������������������������������������������������������������������������������������������(*+���X
��������{xw�����������6::9$���ghg>>??$�������������������������������������������������������

	����������������������������.--[]\�������������������������%%&
��������������������������������������������������������������������������������������������������gij,EEE0��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������566
���IIH2���}}���������6<;:$������))(���Fwuv�������������������CEFcdc(��������������������   �������������������������������������������������������������"#$������-./���������������������������������������<<;�������������CEF��������������������������������������"�������������������������L3320�����������������������������������`_`�����������������������������������������������������������������������������������������������������������������������������������������������������JII,���������nqr(==<$������������Bqpo����������������������xyy6!! 555 
yvu�����������������������456��������������������������������		���������������������������������������������������������𥥦�DDC��������������'()
���@

999�tqq����������������������������������������������������������������������LMN110,�������,� IDAT���������������������������������RTU@@? �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������



221������>@AUUU,���������<ZXW���������������>>>JJI$�����������������������000���������������������������������������������������  ����������������ޔ�����������	
	==="())��������������������������������������������������������������������!"!��������������������������������������������������������������������**)������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���fgg,

������z|}.olk����������uww(��������������������������133������CDD�����������������������!"!
���������������������������������������������������������������������������������������������������������8::����������������������������������������������JJK4����������������������Խ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
����EGG//.FFE$567�����������KMMUUT.433tsr�������������
���������������������	NOO
��������������#$%����������������������������������������������)))�����������������������������������������F��� IDAT��������������PRR ���������������������������������������GGF"��������������������������������������������������������������������������������������������������������������������������������������������������������������������
���YZ[$���������������egg&��������433&&%���6fdd�����������������������������456UVV�������������������������������������.//���������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������023+++�������������))(*++;;:���������
���''&bdd"������������������������������sts$
�������������������
110������234
�����������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������������������������������������������������
�����IJJ�������������������PQRwxx.
UVW����������;;:�����������������������������������������

���  �����������������������!!" ��������������ABBy{{$WUU�������������������������������������������
��������������������������������ݽ� IDAT������������������������������������������������������芉�ʗ�����������������������������������������������������������������������������������������������������������������������������������������������������������������������
����998��������������聀�����@AA��������������������������������������������������������������������BDD�����������RST��������������������������������������������������������������������������������������������������������������������������������������������������������������������!##�����������������������220���
���������������������������������������������������������������������������������������������������������������������������������������������������/00������􈆅�������������344�YYX&('&����������������������������������������������������������������������������
DDD���������>??��������������������������������������������������������������		����������������������������������������������������������������������))((������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������������������������BCC���������������������BBB
<<=��������������������������������������������������������������������� ����123%&%����������

���%$#�����������������������������������������			�������������������������������.� IDATL��|�������������������������������igf�jlm�221"�����������������������������������������������������
����������������������������������������������������������������������������������������������������������������������������������������������! �777������𯭭��������eee&���443������������

���
������������������������������QSS����������������
OPP��������78:�������������������������������������

����������������������������������������������������������������zwv��������������������������������������������������
���������������������������������������������������������������������������������������������������������������./0''&"$%�����������践����������������������555������"""

�������������������������\\]"		-/0��������������������������������������������������������������������$=>=���������� !"cee�������������777���������������������554�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!!����������������������������������������������������������������������������������������������������������������&()HIH345$$#


..-GFE�]^^쌋�ȶ���������������������
����78:����������������������..-��������������
��������������������������������--,'&'
���������&221110[XX���������>@A
����������&''
����������������������


�����������

	������������������������=�	 IDAT����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������OPPIJJ$$$#������B��������������������������������������343���������������������������--,

&(*
��������������		���������			������������������������������			�����ILM00/&%%RTT�����	!!���III�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������<���NDGH����������������������������#$%���2���TwxwD00/"
tvu6�������������������������
##"����������������###
�����

	�������


�������������������������������&%%>?@��fgg���556�����""#..-�����������������������������������������BDD����������������������		������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������cfe&KKJ2//."���N79:�������������������������������#$%���4���PYXW8������������������������������!  QST�������������������������������������	����������������������������������� 
��������������������������������������������������������������������������`bb^`a+++������������@AB�������������������������������������))*
���(,..
������������[\�� IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������HIJ&
uww8����������������wyz,���NTSR2AA@������������������������	���
��������������������
���������������

���
��������������������������������������*)(


.00
mmm$�������,..
��-.,�������������""�����������HHI��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������LNO���@[^_ �	 ������,+*�����������JKL���Hced6���������������������������������������������������������������������&'(
�����������������������������������������������������
�������������������������������������			+-.
� !"���*

����������������;;:�� !*++�����������������������������������������������������������������,--��������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������� !
  
����������������������noo4##"654"+++ҁ~�������#$%������$&&������������������������|~~,HHG(����������������������������UXXoon2���	
�����������������������  ��������������������������������������

�������������������������������877CEE

tut$
������������

\]^���􂃃(
��������������8a� IDAT	���
�������������������

 !����������������"""����������������������������������������"����������������������������������������������������������������������������������������������������
�������������������������������������������������cee"PPQ(��������򾾾ޝ����������������SSR0�������������
����������256���6$$#���������ⴴ����������������eee����������������������������������������������������������������������			�����������������WWV����WVUUTT���������������110fgg �����������������������������������������������.//���������			,,+���������������������������������������������������������������������������������������������������������������������������������������!"�������������������������������������������������6443``_NNM*���̤����������

ZZZ,��������������������������������X[\uut6����������ޟ�����������������������������������������������		 ��������������������������������������������������������������������������������---
������������������������������������
�������������������������������FED��������������������������	!##������������+**������������������
�����������������������������������������������������������������������������������������������������������������������������10/����������������������������������


JLMGHH%%%
�������췶�����rrr0!! ���}}|>'''�}zy�������������577���������������������������������lop"efe0�����ؙ���������������������������������������������� �

������������������������������������������������������������ , IDAT�������221���������������諨�������������������������������������������������()*
�������������(**���������������������������������������������������L��|�������������������������������������������������������������������������������������������������������������������������X[\cdc.

	543321��������XXW.�}yx������������������		�������������������������������������������*UUT(����������ވ��������������������tuu.������◕����������������� �����������������������������������!"#��������������������������������//.���������xvv�������������������������������������������������������������"  
�������$##��������������acd ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������8}}|>YXW,ade ����������������������������������z}~(UUT(����caa�urq��������������������][\IJ�����䀀��mkj��������������������������������������������������������������	�����������sqq�������������������������������01/������
9<=����������������-./898�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������"$%
���D??>$���������������rsr4&()��������������������������������ehi YYX*�������QNM��������������������qnn�d`_ҥ����������������������������� 
�����������������' IDAT������	����			����������������������#&&
�����������������������������������������������������������	����������OPP������������@@?���UVV
��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@#""���������
		���2���������������������������������������������������BEEllk,��������son���������������������������������������������������������������		�������������������������������������������%$$����������������杚���������������������������������������UWW�����������
������::;����������#$$
BCB������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
����������������������������������		
���2%$#���������������������䦥�����������)('bef��������������������������������������������������������������yyy.���������܊�������������������������������������������������
�������������

������������������������������������������������������������������������������xuv����������������������������������������������������'&%134
����


���			����������
/23
������������������PRS
�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������RUU;;;"������������������_^_�`\[�}{z�]YX�POP���������������___&	

����������

����vxx$"""���憄��������������������������Zr� IDAT������������������������������������������������
������������������������������������������������������hgg�����������������⨦��������������������������YZZ��������������������������������YYY��������MML������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������[[[*������������������������`^^��������[]^���������������������������������������������

���������������ACCEED������������������������������������������������������������������������

������������������������������������������  ���������������|||�OKK��������������������������������������BCB�����������ABA�������GIJ�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������$'(
�����������������������������������������������8::###����������������������������������������jhh�����UVU�����������������

�����������������
��������������		ghh"			�����������������������������������������������������������
���������������������
��������������������������������������������������������������������������465�������������������������檧����������������������������������������������!"���������������������Y[[����������������������������������
������������

gii���������������������XYX"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������IHI�������򬬭܈�������������������������vtt������� >AB��������������������������������!�������������233++*���������M� IDAT�������������������������������������������������������������� ! ����������#%&����������������


	 �������������������-,,���������%&&��������������������STS������
����������RRQ "#��������������RTT$##�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������,..��������������LJJ�xut؝��䶵���������������{xw��������������TTT������������			�������������


����������������DEF����������������������������������������������/01�����������������...������������������������� !������������!""
���������������������	���������
 !!������������%('#%$������������--,�������������������������������XZ[�������������������������"##��������������������


{||"��������������<>?fff(�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������xxxʓ��������""#������􉆆������������787������������������**)���-..
������������������������������������������������� ��������������������899����������������������� ������������������FHIvyy�����&&'�����������
����������������CDD�����������������������������\\\�������������.0/���������������BBA`cd��������<=>���2������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������.01�������������Һ���221����������������������������������CEE�����p IDAT������������������������������������eff �����������������������������������������������������������������������/0/��������������������������� ���������������%&%
������������
?>>����������<==������������� ��������������NOO����������001���������������������������mop��������������;<=���������������������������ssr(HKK���������FIJ���2
���������������������������������������������������������������������������������L��|���������������������������������������������������������������������������������������������������������������������������������������
����������������������������&&%���������챰����.// ��������������������������������FGH$&&<>?�������			�����������������������--,���*9<=����������������������������������������������������������������������&()
���������������������������������
�������
�������������

��������332��������������,--������������������//./12�����@AA�������������������������TTS023
��������������211��������������������������.fii
����xz{"���4
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������<=>

�������������������321

��	

���&���.467�������������������������������������//.���0���(?BB�����������������������������KLL��������������
�������
����		,,+�������
')(
������)((�������������[\\��???������������������&����������������������IKJ�����������������������

	uuu*���.[^_%%&!##>?@~��"���6cdc(����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������(5� IDAT���������������)))����������������������;;<����������+*+mnm����������������������������������������������������������	DDC���0���0���*y|}WZ\355 !!

�����������������������������������������������������
���������������AAA����������������������
��������������������������� "#��������������������'((�����������
		CDE������������������������������������@@@-//
�������OPQ��������������������������������+**|~ ������������RRS������������������������221���.���<���:���:^^]&���������𒐏��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������			����������
����������������9;;9;<

111567�����������������@@@ccb"���,���4���2���0���,���(|� bfgACC)**
���������������������������������������������������554�����/12$$#������������		


��������455=??

�������:::
������	

�����������fgh�PQQ����������������������MMLxz{�������`cc$$#���������������򶷷�
�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!!
����������������������������������������������������������������������������344���CCC���			-/.
����������������������������������������������������������������������������������������������������������..-GHG``_ zzy(���2���4���2���0���.���"WZ[**+
���������������������������������������������������"#"&''����������������YZZ�����������������������������


������� 
�������������222��������������???������$&'
����������������###-..����������������

�������������������������@@?TVW���������������^_`&&%��������������������������������������[[Z ~�� ������������������HJKYYX ���������������������������������������������������������������ܫ����������������������������������������������������������������������������������������������������������������������������������������������������������������������gcK IDAT�������������������������������������������������������	

�����������������������������"#"-.-		
���������


�������ꝝ�������$$#888]]\ ���.���6���0��"9:;���������������������������������������������������>?@@@?������������

	�()*
����������+,,���,,,%$$��������MNO����		����������klk$345��./0
Z[Z �������������������������UUT ���,:<=���QTU}~*�����������������������������������胁��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������%%&
�TWW�������������������������������������������
����������������䈈����������������������������������������������			((']]\"���4���0NQQ		���������������������������������������������������������???������������_aa��������������������������%'(�����***������������������������$%&���������DFF���
�����������<<<���������������������������������������������������(012
���������!"#���&�������������������������211���2���(BDE	�8;;���&���,�������������������������������죣������������������������������{zz�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� !"�������������������������������������������������������
	

������"""��"#$KJK����������

��"#$������������������������_]^ҫ�����������554���0���(����������������������������������������������
���JKJ���������������%%%�

 
�����������KML����������
FFF���������
HIJ��������������������������������������&&%���.X\]�:<=���*--,�������������������������FFE���4���6���2���2���2���4NNM


����������������������������޷������������������utt�������������������������������������������������������������������������������������������������������������`� IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������

�������������cee������������������������������
��������������������������yvu�\ZZА�������������������������������GGF���,���������������������������������������������������������������gih
���������������&&%����!""��������������BBC��������334--,��������������OPO������������������������������������
��,���2���*���0���2,,+����������������������������𦦧����������������
+++.//�������������������������������������yvvԠ�����������������mkl�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
.00
III����������������������
�������������������������������ZXX�\ZZ�hffҌ��ڪ�����������������������������������������������-,,|}~&		����������������������������������������


����%''QQQ����������������������������������()(


�����������������������""!8:;���
hjj����������������%%&>?@�������������������������$$#DDC/0/��������������������������������������������������������������������������������������������sst�������������������򟟠�ged��������������������������������������������������������������������"�������������������������������������������������������������������������
	������������������������������������������������			<>>��������������
[\\

������������
�������"##��������������������������������



		!#$


���������<<;CEF浳��������������������������������������������


�������uvw ����������������������			$%$���134������������ced������������Z\\554��������������+++���]^^��������������������������322��������������������������{zyҚ��6
����������������������:;<<=="""����������蹷�����������������������������������������������������������������������������������������8g� IDAT���"�����������������������������������������������������������������������������������&'(��������������������������������������������KKK��������������������
GIJ<<=��������������������������
�������������������������789DDC$$$������QRR��������������������������������������

���
+,,������WYY>>=������������������������<>>�����/.-�����������������DDC988BDE���������=?@lll"�������������***���..-RTT������ !"
�����������������������rsr,�������������������������������Ѕ��2���������������������������������������깷����������������������������������������������������������������������������������������L��|������������������������������������������������������������������������������������������������������������������������������
�������������������������������������������������(('HJK��������������*���������������					
�����
����������������������򐍌�ZXX�~�����(((������������������������������������������������?@@�������589lml"������������������������545(*)
����������yzz&�����.01
���(�����������������dee"&'(����""!��������������������������滼������𰮮���������������������������������|{|�������꟞���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ijj"#$$����������������������������������������������������������������������������		���"()(
������������������������������khi�����������

������������������������������������������������������������332-./���� ""��&���������������������������������������������
/0/
��778


��������������������������������������  ���(���� !!���*
������������������������������
y{{"�687���������������������������������������������������������������������������������������qpp�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� IDAT����������������������������������������������������������������������������������������������������������#$%����������������������������������������������
���$������������������������������				�������		������$''��������'&&79:���������������������������������������������������������������������������pqq"
�����$%&���*(''������������������������������			MNOBCC���������������665���2\__-./
%'(BCD���*$##��������������������������������::9���&�Z\\�����������������������������������|{z�������������Գ����������������������������������������dbaƵ��������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������
���#&&����������GHG
���776���(|zy���������������������������


������!!����������&&&
�������������
	
	
������������������������$#"����������������������������������������������::9�����������,,,cdd ������������������������������@@?012�**)��������������554���~~~,�����
	
���������������������������;;;���GHG����677?>>��������������������������������pnm�{}~&EED ����������֕���������������������usr�ABC�_a`&+*+
����������ԧ�����������������������������������������������������������������������������������������������������������������!����������������������������������������������������������������������������������������������������������������������������������
#!!�����������@@?332���
���޲�������LOP����������������������������GEC++*
�����"##
���������������������������%$#����������������������������������������������???566����
	
�����������������������

	������,����������jlk���������������������������223

	���;;:554��������������������wut��UV�^__(  ����������԰����������������������������'((@BC-,*�������������������������������������������������������������������������������������������������������������������������~�H IDAT���"��������������������������������������������������������������������������������
����������������������������������������������������565������
���*QRR����������)*+555MNN*+*�������������������������������"!"����ECA()*��������EFF
�����������������������������������������������������������������������������������
		������������������������������!! ""!��������������������ccb(��������������������������??>��������������������������������丷��GIJ::9�������赳���������������������������������
��������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������!"#������������������������������������������998***����������򿾿�LLK������665000���������


���������������������---��&''��������������
���&%%��111����������������������
���������������������������������������������������������������洲������������������������""!������������������������KKK������������������./.���������������������������������⣠��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������<>>�����������������,++@@?665!!!�����������������������������
���������)+,
�����������,,-


��������������������������%''
��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������𰯯������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ IDAT������������������������������������������������������������������������������������������������������������������������������������������������������������������������   �����������������������������������998
�������������������������������������������������������������������������������������	

!! �������������������?@?����������ACC  !���������������������Z[[���������������������������������������������������������������������������������������������������������������������������������������������������������������������佽����������������������������Ҭ�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!##��������������������������������������������������������789����챰����������������ণ������������'()		
������������;<=������>>>���577����������������������IKKDDC��������������������������������������������������������������������������⬬��������������ڳ��������������������������������������������������������������{yy���������������̞��������������������������~~������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������			OPP���������޼����������������萍�����������������&&&��������������,,+�����123�������PRSYYZ  ������������������������PRR~�0���줢�������������������������������������������������������������ܯ������������������ܘ����������������������������������������������������������������������hee�������������gde§��������������������������򄂃�����������������������������������������������������������������������������������������������O�R$ IDAT�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������::9%&'
�����������vttڬ���������������~|{����������


'**�455�����������LNOXYYz}~���4���*���*���4jmn����������������KMM���2���������������������������������������������������������������������������������}zz�yyx�������������؇���������������������������������������������������������������������������������������hedʁ�������������������_[\�������������������������������������������khi�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|����"��������������������������������������������������[[[


�������������������������������������������������!! ���
]__~zy������������}zz�����mmn"&&%���������������������������������///������()(����������������RRR������������=>?676���������		���&?@?oon&��������������+-.
z{|.��������������������������������������������������������������꺷��@BCMNN#$$


���򛙘޾�������������������������������233�WWV*����������������⯬��$%'		�������������������������_]\�kmn&ABA"������г�������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������"""����������������������������������������""!GGF����������������������FHI\^^/.-�����������������01000/
����
��������FFE���))(CFF������sut"
		���������acd>>=VWW����������������=@A���.
�������ԗ����������������������������������������������������
���������츶���������������������������������������������MNM
	
���򨨨�����������������������������������|yx�


���M� IDAT�����������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������!  ��������������������������������������SSR*			
kmm$qnm����������������춴��)+,SSS-//������������CDDddc"��������������������   ���222


������������������|}|���kkl���������			~��"&%%�����������HHH��������667ced =<<����������ԅ��������������������������������������������������������������������������������������������������䱮������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!����������������������������������������������� ��� 
����������������������������������443BBAGJJ液���������������������������dee����������������


9<<���:<<��������������"! ���,,+npq����pstGGF���������  ������UWVIJK""!����������҈��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@@?!!���������������������������������������332			ppq,����������������������������������888����������������������������

DDD������		888���������������! eed"��������cfg``_"��������������   :;;�����LMOSTS221�������ʢ�����������������������������������������������%%$�����������������������������u�*Z IDAT�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������mml�������������������������������������������e�$$#""!{~(spo������������������NOP������������������������
		010(*+����:<<
������������������\\\"������xxw*455��������WYYccb$����������������������887������nnm,ddc&�����


����������yxx��������������������������������������������;;���

�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������uvtEDD prs���������������������PRR�������������������`aawt��WXX����������������)('GFEGFE���������������\\\�


����������ֆ�������������������������������������������������	����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

(*+
���������������������������������������������QRQ�%%$���]^](������������������:=>/.-���������������������"""���IIH0/.���������������������}~}������������������������776���������������쁀���������������������������������������������������M� IDAT������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�������������������������������������������������vxw0^ab������������������������z{{&����������������������������������543��������������������������������������������������������������������򍍎�LJI����������������������������������������������������������������������������������������

�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������zzz2x{|$
��������������"''&���������������������������������������������������������������������������������������������rqr���������������򔓔�DAA������������������������������������������������������������������������������������������!!�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������#%%����������������������������������������������������������������ba`*���0##$��������������$WWV"������������������������������������������������������������������������������������葏���������������������XVV���������������V IDAT�����������{{|�?<=������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������쭭��^^]6?>=*�����ک���������(**~��(321�������������������������===�����������������xwvС��<
�������������yvu���������������^ZZ�JLLRTT*))
�������������������껻����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|���"�������������������������������������������������������������������������������������������������)))665"������
qqp0\\\���������������
244BBB==<������������������������������������++*����������������������򆅆�~6��������������urr���������������沯���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������888(���
������������������������������������������~||ʙ��
POO"POO"������������򡟞���������������������܁��;m IDAT��������������������������������zzz2
����������ؓ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�LLL,���������������������������������������������������������������9::

	��������������������������������������������������678���ݘ�������������������������	�������������}{{ˬ��������������������������������������������������������������������������������������������������������������
KLM"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������			���222���������������������������������������������ust����B���������మ�����������������}|Е��"#"��������}|�����������������ljh��011���������������������������������������������������������������������������������������������
	

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


���899����������������������������������������#� IDAT������������nmn����<&&%�������������������xuu������������������edc�abc ,,,������訧������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������a__���2A@@(����������������trq������������������������������~}�����������������������������������������������������������������������������������������������������������������������,-,���		������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������!�������������������������������������������������������������
()*
�������������������������������������������������������qmm�WZ[�ddc2����������������ԋ������������������������������������������������������������������������������������������������������������������������			���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������5�� IDAT�������������

}:jhg���������������������������������������������������������������ཻ��fhh&GGF(����������씓�ҷ�������������������������������������������������������������������������������������������������������������������������������#$%
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������333&dfg⌉��������������������������������������������������������|{Ҝ���DEEBCC ""!			��������������輺����������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������777,EEE*������������������������������������������������������������������ޠ���



��������������������������������������������������������������������������������������������������������������������������������������������������������������������������
		�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������6� IDAT���������������������������������������eed���$%&���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������&&&�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|���"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������! IDAT����������������������������������������������������������6650������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������“�����쓒����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������+..�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������탂��pqqF��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������$##������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Ͼ�f IDAT������������������������������������������������������������������Ǧ		
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������%���


������������������������������������������������������������������������������������������������������������������������������������������������������������������������������o IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������		�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������(++����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������##"��������������������������������������������������������������������������������������������������������������������������������������������������������������������t IDAT���"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


�������������������������������������������������������������������������������������������������������������������������������|� IDAT������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������		�������������������������������������������������������������������������������������������������������������������������������������!������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������888(�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������svvD��������������������������������������������������������������������������������������l�? IDAT�����������������������������!�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������


	����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������#t IDAT���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������¹ IDAT����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|���������������������������������������������������������������������������������������������������������������������������������������������������������������������D�@ IDAT������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������'��� IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������^�S IDAT��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������6��z IDAT�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������������������������������!��������������������������������������������������������������������������������������!�����������������������������������������������������������������������������������������������������������������������������������������"���������������������������������������������������������������������������������������������G}P�Ɛ IDAT"������������������������������������������������������������������������������������������������������������������������������������������"�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������"��������������������������������������������������������������������������������"��������������������������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������o"�� IDAT"����������������������������������������������������������������������������������������������������������!������������������������������������������������������������������������"������������������������������������������������������������������������������!������������������������������������������������������������������������������������"��������������������������������������������������������������������������������������"�����������������������������������������������������������������������������r IDAT"�����������������������������������������������������������������������������������"���������������������������������������������������������������"�����������������������������������������������!������������������������������������������������������������������������������������������������������"���������������������������������������"���������!��������������������������������������������������������������-��� IDAT"��������������������������������������"����������������������������������������������������������������������"����������������������������������������������������������������������������������������������������������������"������������������������������������"������������������������������������������������������������������������ IDAT��"�������������������������"������������������������������������������������������������������"��������������������������������������������������������������"�����������"��������������������������������������������������������LPI IDAT"�����������������������������������������!��������������������������������������������"����������������������������������������������������#�! IDAT!�������������������������������!�������������������������������������"���������������������������������������������>��� IDAT!�����������������������������"���������������������������"������������������ IDAT���������������$L�!�������������������������������������"����������������� �n��IDAT"����������;O��r�|IEND�B`�upload/crieurs_cloche.png000060400000156414152455614210011543 0ustar00�PNG


IHDR���OtEXtSoftwareAdobe ImageReadyq�e<diTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmpMM:OriginalDocumentID="xmp.did:3AE5E4EF36BFE311A7B2DB85711B7F9E" xmpMM:DocumentID="xmp.did:BFC388B910DD11E4B86FF8A01EBEAE11" xmpMM:InstanceID="xmp.iid:BFC388B810DD11E4B86FF8A01EBEAE11" xmp:CreatorTool="Adobe Photoshop CS4 Windows"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:6F70F7A8DB0FE411807FA96D271B1FE5" stRef:documentID="xmp.did:3AE5E4EF36BFE311A7B2DB85711B7F9E"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>.T��>IDATx��}��u���ժ�zE�"��؀cc�aǎ�?qv'qoq�[�+.��\pL� �@�U���W����{��}��ޮ��Û}mʛ����u]��h��ߢE�h��-�-��%Z�%�DK�D�h����-��?Z�%Z"�GK�DK�h��h��-�-��%Z�%�DK�D�h����-��?Z�%Z"�GK�DK�h��h��-�-��%Z�%�DK�D�h����-��?Z�%Z"�GK�D��s�FW=ZN�e�޽/��ԣ�*Z��ŹD�hy�.ft	N��y�o0��-�е)|F�"��*��"��?Z��k!���s,ݭ��-��寯յ*@הB���>�* ����|$"�G>��b?a������c�
�0m�VxO$"��4�w�f|5`��S|�Tw����F5a	���=�c�*�I�_�xN�܁c�NȶSEW���HD�?n@�U�'�c��+i� Ѓ�z@8�a+��i\�
�a����QIDB ��|�Y�מ���L���׫�J�8��4���hT
���5��y��bn�Sp	�
W3����!�$���d�WznWz-�1h�㌬��ϫ��M�8�p'�,=��"¬����N����U�+	-�8�	���5��4�Q|aZBn�Sݷ*�
B�(����@�(@��k� P��*qm� ����+���u�>�����*	&m��|;�=���S	��KA�U��@3�xԪ���*��FȶQE�B����ַ�ht;z; �`�	����B�R�c��#�?pz��լ�hLA�O&*��ި"�D���~{�˪Z�9���������j� 胫خ$���@
�)X!a�d~�d����?��
ٶ&y�xM��8�����?es?L۫`�Ux���L�01ү�?�a��^%y�?'����B�nUx�
|%�	g7 �"�W�0	�c�x@���U�k0�ØD�߳�vf���S�t&�6mZcssK��xQӴd"�l�u=�vh�.��c;V�TJ&Sf>�ihj�ٳs�A���{�Ρ��#E����س�]�TW���T��?�"�ł �~\��v< T��X����g͙�j��Q;{��i���a���h��X,Q�7΀_�>M�ܭ�8�k�Lӈ%���t:[S[������n7��􎏍���t��|v�h�T�C�@XϪ`���LI�,E��W�=+ �y��V
�����O���#$�>�L�͗��+N:���������1��injnY�]�Z�i���`�L0tL�=�j`�U�}9��K���(�m�>�,�mY6{΢�5ps�e�0\�����
����ջ�����z��0��K�P�*�T+�,��WY^(�/6���!��4��
��Uk�\�����-���?X-��?�ܶ�ֶ��3�k�9��=����Ly�%�L&!�H����mC�@�m
�	����A�9�Q�}�_��u\Z��L�s9(L ��*
L`�����z򱃇��V�� �q��<Wy]��	�j������|����Wy*��
��Gz�i��k_��%K����1cv*�6��2���[}r���S�yLj����h]�|�b3�``w��̙f�C:��8=��n2m�q�k�ƞ3�@��/�W��~��3A��q�q�)��m�;B�����߂b��|ƳY(�P��F�xxh���g�޿cۖ�I���m/��۪bT������J����Wה*�<��9�M���ds���[!�3`�H���A��ˎ�m���;��>r��U���O�[y���T�"ۅ&f��kjj ��@"�4{�$��VS� g�a�d���d�ߺv��ּ�qwr_w�"�� ���9����rI`�
]���VɆB.cc�l�R������������܄�$.@P�A_y~2!VJP�Z�7��o�ia�=��S
�����.�|m�`_�jZz��ŭ���%2�/^L���}]0��\+�?7��=���k���p���3f/c~�,���̟���:����`f`7	�ܟ�q���75a�$��iqz]��x�?�����7b<�%��O@�h?�U���~���-�b�GA�+�adhFGG!��-��<��᭻��6���h�bP�b
��@Xj�R�}1�����*a>�p�%�Xb�Sox��w�u7dr���a���a�Y�r�o��wC���⳴t.X�\�juGcs��
�F"
M���d�;�t�C��zfΓ�op�^W�iw�[5)4�j��O~�ޣ�x�
�
x�p	�|S'��xL�\�eC��ma�?�J0K%
-�kj�p�KW����];�o���v+:��B��u�@@��
-�7�C~�Jـe&��^�{,�~o�khL7������.7�l�ƴ�/�䥐��p�-���߲y3>p�dz�H �jQ���\�\{�靱d�B�0��T�M�.�7g�f<?B���%����I��iz�>i~� w5�(e&�^C��C
�C
�i�	(tb��6����1(�K�U�Am}-�s�t__�e�����ؽsǖ��稸Ζ��%�� ��*+�b�R@�[0��#��/�"u5*�f@�{���_�l^��Y���ܽV.[
g�z2��f`���?�	n��f�>}:�>y
9r����i���7�#�iƒ�L���0�u�q��7��#���a��epP�—Gm�-{i�kJJC�^C��J����8�����?.���]����  ��A�`�ajӅ%�b�K��$�c����X<�xᢥ��У۞�4,�j*B���J��*¬�H���?v�J����O$��F��������/�b!�͍p��v�&�

�m۳L�e!�7���:���$��.��!ۥ�ɥ����̗F躤��ѹ&��ރ��HV�����s��B೚"r�s�>�B�.��9�;0+�<k`3)�k�-(�,(��3�֤R��ب���/Z{�9���8i�C����!`*�@���51M�V�E/��Ä�du���������yD�d��}��?�
��6�A���=���u`476AsS��x\hi��,�5]J�9̧F+�8
z���I@�a�х�v�ȕ+|uUhZ�]��
W<8�Gx��MJpa㪮��s|�x.Z��0!	x^�ytm�5�1�(��CC}}��7s��rA���7;ab�T&vOV��B������"X���J�V�a��90���c�l�f�l����3���K�Zᮻ�`Zπ��z
��d�x|�\y����~�l�G�1��`vȤv��v�J]~*:���3��{�9�jp]R��5�	�ܠ�WZ
��f)G\Q4$�"J��S
�U�]�D��3B�낖���p3�.����X��C�=��٭#��o����*��V�ȩ��$��������ţ\鵶���s/x���t�I���&3�G��(/��>Z�|��ޠk�LtaV뢺��d��/�E��?��i�X,F�A�i��}1��1
�`�l	�ҁ��u�*����)��U �C�g<A �d
�q�w�ˈ1.��Fi��HE(-*���e��ttx��[���P9�_P�|�������@�N�T߉
~�Bd_��׫i��=>�( �<O��v�7��9t�h=�cڴi���1f�S���Ғ�.q�%}+�W��t�A`ǜ�iƸ�3�|7f
!C��(v@BB����o�j��G�d����)qM�\%> j��� �T��r�@����/���}�����C(JV�҅XF�e�`thz���kv�~���>r("
@>D�
U��B�����)��y���O�h���|�u����^r��x&�Hrmˀ��P��e�c�G�]��E����i�8�Q�3AM:q�&�랅`H���`�p �x�Jd�3���r����T�ie��E\��Exj_�~yk����-t-\�k,*Y�Sn<G��|>۷s��6>t�$@}~�V�Z�L"NH�|~�Iƨ��W��W��"�K���]�t���T:��4 ���]v� dy�|���%7l0�o����"��t(���ǰD��A>7Oh�����SZQ��((ͯ��xh�JЏ�Pp]�o�WA�b������h��pD�?������c&�-�������?������*�l	�0���s����	vI�L��3���B{.��e3c��SG�v:�JQN�W�",&5��Sʸ�q%ijt�it��K%(�J��Kd���%�Z��^�}���T�'�u]1�y�.\�Yl���;xz�o�e��x�Q�\p�� ���,����CWt��&�V����ގ���)��W_��ԍ7�lTf+>�����v����(��h���9&h{f��/�kW���`�-7)��: d"�~l\���)�z�4M�e�$@M>������_ܫ���5Q�O��!ʂ�{�W��;u0����r���4�e�ё��?7W973^[ ������T6�n�[ M��Ў�S�x�����ُ��p~�j���@>٘0�D��/�W*�
�����	����Ԇ�.<��pn2�"MX*e�i5yخ�/�����3,���ߩ�Fhe
��=�����B��i^,M��c	�Yn�݀�m�����~����A���"�\(�@	(�*C���FCR��U�5
�߀B !�
>�ꊿ{�y�oox�P�������-�V�'0�@j�R.?^e�4����;.��pO�Ll�Ŵ7�5j{U�W�<�!@�Q+e)��bHm�56>�Yhp]��\��W�+c�`�!�c��}��!��9Rh�	��Ӑ�.S���4�c��}�\�^��]
�n�v�8)�1c9th�寻:y�O� s�&���2���Oh����&��I��tH��3�Z�:^502V�L��a�������؊&E�KW@F�'��\�*+奺�O�P�wJ>_��5~9q�4���5��)��<�_���bX�'��+���*
R�2�JL4��@�����e.����м�^ts�J/�K:t����/~�G*(���j�0������'�??^�e�13V,�y���x
���xsۊ�sd�[-���0�8�̷�G�m�=�0��|]������]V�Ëtt�KW���X�ʁ��t�&T}~ݐ����6
ɒb�'@����N��)���%�d]��AᢛX��M�[%h�H���K��Ŷۧw��#�^�k����GO���ȝ*�U�T
F��8��W��j�D�5~��u��e�|1��vMS�Z���H�\7�:�2�-�/��rZ�۪��z ĝQ���D�ߣ���*�y��|�ã��L\�x(�8�k�-i�bpJ �VHWCXҬ�;��^����{��,L�hS�q� �˂&��fp�2iZ�M�#�-����[���Ϟ�ķ�4���6(4���7O@�_�׏U0�U����E�y�U�R)�7%7Džf�li��k���w=s^��D
��H���f����`J�����Xǧ��}�w���	֠ ��<)��J���'�����|�]��I���e���@	5��(j�m1����`��tzڴvfZuɫ.��T���J�H��J��(��|����v�9���.-9n�
6z�KN�LsW�z�xҤ��yA���=��.�����$�s���Qwf9�4%�/Mp!,Ԏ;y����Շ^���><���Y�(�jK( ��,䓊H��:vN�"����iL���l�J�`Ť)j��TAQAR��R��ܦ
���36�;��}w�b��x��_���<���1�'*h}Zן}�L#��2_��`z�/-�xe�/k���¤/?'�Å�#����H�I�XTr�\X�O���R��:�%��y.w.\��lM4�8��������R���K�9�F���!��xNj�B�k%(��1����	�b�~b$,fI�(�'����D<��5� �=��}]{�9|p�X߅�sb��p"i��p��	��ϝr��D�浣�\
jP�����e�ݏ�� ���U���N��]Mi��2I�%�G�H8��˽�f ('��w��	(�6t�e�!��9�
��m.�t�>��Jvë`nI��n�~�/]<FW���J��["L�3!�e�%\�f&�f�gB��A"	H$�{�K@n�p!L3�M-p�h���/\����O�V::�Xq'��*h��ϣ��+h�ji�	ڿ�cfMs[�k���	�^�
��Vi֫i<_�rPF�t.�5���}|��#���ߗ6D+./�)O��W}i-�"\~�4/�������D�=GC��k���0��V���e2(����/p�1��~�pS�;t��*td:o��������$� 3)�@�γ��z�{f^��7.��O~��
�MVWyɈ����?s?l�eXt?,�G�?�H�֝q֥�vO���)-�wNYk���]P|l�O����Z�Q#�.6����\�"���2m��ދ|FY��nKٙ+�l]��{
��$؎R��;�C 'k��	�������!���*D�HSƃ��F�j?bٴ�[`#S0�0���7f��{����D>80�4�a8t� �e���m��i�nʧ��P��HQ	~���	�/d����J�<��d0�wɫ.;��ў�q��ki����*�wo�DS��k4L��F��E����f7.��G���M�H=/�%*�ݛ�C~���j����i_W��4_�@%g��dx^\���tݚ���^ӍH�����	!?� ~G҄I�T�(x�����Ծ�LAM&XX�ӊ���`ZKGF�axd���D�]���>x��b=�ݧ^��'���l���"�Q��TSQ��y���+�)�_y�'��9[jN�����ό���6azK����;��W��# ���b@G�z���	�	��/��t�}fCP�I?_����Ϸ^��B�;�W��j�D�-���#��*�2�S�fh�GN��	u�B����Dc��m���h\WS�--���Ef	��S�����Md9a�і�߫�4���a�	���}�n�����
�v�M�a�q&6n�9�(¦�0��9�!�~%��	f?F�G�^��/C6�x$��WÙJqJL���c����RQ2�&k��JLKKE�p�hs�_�cKV)\�%!W�֓�@#��W��M{	H���}7��"j/s�h���7_���<U����+�5�H�=�Rf.D
Q��PP�{*�Ɔ��̇3�C*����L��{�<
�~)f ����H�3��ô�v��߰����:��Wc���`����T�|�E���
M���M�2�%�ց����7y:�n�D,�s��﯏q�[�7�)wn�t��9q�gG3�l�s+���}'}~���H9di���+㕁4��5W!�p�Vbt��F6`�4a-�ߚ�Z[�8�*P6	��q �@i_6��"w��Y4�[X&4����3`���d�"�5s�c.�cZ<G��T^���*�儊;��n*�"�IZW[G�s;�Am]�������
տWA��?���������@%�m����������ӻ�gRٮع����(zLjz<���qM�������'��r!�Jf�k"~�7�i[��7�	8��Z��}O �o���x���6����늢"/
���w<��2���s��/�h1�BY�'��d����%(�4��
i���a����h�B��͍��;���v�E"�t2΄E��	�i��L�����h�o�b�*�,#�?��L�l�X�z����?>"�S�ۯ��9�t����u�q���N�&g OP�Y��\I��K�%����&K�`�Ũk�Hc�7�
��4]�.Ԫ=Y4C�qj=��ç���B�$!̞Ѯ�z~I�Y^���|�Z�qDs.A)�`�GāZߡ���������sf�"
��XOc�P�����5��a]2�L�'��	�<��J̧/���ЕA!��@�O
�j���gt@oϑ���1��t����/��_� �T[un��T����׽RX����3�N2�()vs�i���ʲD"�i~�4�|r~�:��JE�}��ɖ\]��'2c�[N�Q8՚~E�hJA�l��T� /��u�x�R@��w�5(�ɯ���$�:��G͏�:��ɉ���'���ftt@cS#	���G!�@\W���a"(/Q�̺p�OGB7Ud�@r�<�<$��'�e�i���6�kYc����\�j\�:L�
i��A�T�aT�Z�����:�`O�\�a�#ː]o�f�>dRj�4�R)�NI��LP��
 �ڢiG�mŖ��R[+C2�%X����7�F��SXpt��7>�U>~GZP����W���Gs�]�ʗMB �=M��Q�H�m�2��9��ݩa>=������ׅ��X��j�#^�8�@����'�$-e��}��dDz$L�RI>7�g.�#a��ݻ{ۮ��&��
}%-?e��b��[��/0������<+V��48:�5�ʺ'���CK��&UC�e�q1��7}����OOPla�O9`�i�(4�ǰ�:|/�햛�^a�k�t]���i�5�Z,�h��Q��Ĵ�2�4I'���t��W��T
Ik�AO���6.��qrs�2��v����a��w*�
^W<�p2� fb�*ģDa���0��|��nix�F����9p�m��h9�������鹖,[�a��u&͔�7V��/m
��ǠTM:��d�3M�ĺr����59yC�<͋Y,n�Խ��p�&��<����uP>XT��S�)B�+
]u�N��-?���U�҉�&l�l��:P9<$���h��Gjb��ke�'�	�|B�޹\�R
��_
���,#Q[!�	���b��~�K|q���o~��]�#7�{O%ʯ�����~�q���P�}�Kf<ҳ��|2�i�4�1�c�P���৕i~��S�&ŖR0�` �M�s�����E���	�3��5�|�
>�wW�?o"=Lj�j�9�I���q˅�ک�Y��u����+0f�O�VN$F��r�3ɪ>���ا�N���9����K/�KE��"�d(6�y���D��nv�����[*�z��m�#Õ�y��S��{�I��	��ٯ�_&c� �[�8�mJ��9�����k2��O�c�Gs?ME$ݧ�6���y�i!�k���)�R��Z��X�q
��xʢ�Z��D��	�Ay�+f�9�i/��G�s��T���L/0�s�u55���A��,��KL�?�0�^|�f(&i�,sF�� 3�!w
cx&hQ�"�h�\���  �0��G�`_i�Ooy��T&���j�Z�[�٧�5��9J�Uc����sL�����[�y%|:4_��0��Ub\�(��J'y>ߔ�|�= :�TBn!;b�������3p�e�t |�4���_�/�Չ���D]?/[PK��V^O ض�v�Iy�Sv����,���6(Y6�1-L|��e�4>�7�wQ`��u<~C���e�0I�k��AA� ��EJt1��c ۇ@Ct����Ǡ��Q����`��'}x��&������d�~���@_X~��X�Q[M����?t�ԕH8��g��
$h�"��(�L��
ݯ���j�<�p��YǾ-�(�{eD �]Ve�n�o���@b�d����+5�*y��J�1
�G�(�pb.i}[P����1-�`lok��˖��������Ʃ
8ɴ5���CP����!�i;����#��&%�@���)���ym�1]�<F|/Z�X�}v�	�v��go�����i?�;�,(��$*�"��`�n��ݲ��^��Y=}�gĊ3�t�7���k2uP��X�C�Ƨ�8��u6}૤�A����}*�r�[1�=�Q���vW�dhn�=��3x���@��cN�ټ�P����G���TA�%`�-1?��Z��5'ò���5��3�q�f*�cƪ;��3̢���B�z�s��G	;h�	�s.�
�v��d����,zL�
�k��/�\�Y7�[o���
�~�_ߪ��*��FwG��9�U��4z�k�hi�����a�FC���8j�x��wj���ɤ�ǧ"�d��KS~&�֋�t����yA��/
G���x#���o�:�)˵���]S�pp|7BX��Z��Ta���>L��B�s�۞��{����P�������ɿ���X��Xt�ڠ�n�1(0�H�k��'Ѷ,�YașyJ�j�$Z\_a��:���/�3�y[wJ�o��7�?��K!k%`O�D��~=�X�i{՚S��#`�Epi�,�������qM1��t^L0�R:��;�M���/�̓bR=h^ۇ�i���s����l�N�i�ٗ����j��tU�  ���G&*5?2����>���?Gp��n�)p�Y�C+3�ѧ�fG�9hb��͉4u��䤚������ҵ�n�W����l�M���]�� �W���\/���{����]p��!�.�o�C9��@0O��
k��}�� �٧�����W���[�v�;��j1�m��'�&��yD�4~Z�L}j�1(�,az9W=O�i2^�g΃gK���#�ma۞�2�=��X�N;ʵ�Wlk�=�b8x�@ŗ��x�=7�sT4cª�+��s΂�3g�O>40(*	u>]b�"��y�1Y�`��Q"$]
�ĄAS<�"��Z&���fxh��.5�in��	���O�ӛ69����7�߻KO����R{�
��4�s��U�S�y�&S��bZ	)�$�]LT��oOZ?śuLQE����dRNT!y�ˮ2�s�m�z&�J��)��8ȯ۶~M�����yA$C���xE?�̬�����g(CAd��mc��s�9g��������a���(��y� 8�i<*c��a#
�)>�ө�\:E�E�1�/ڜ�3	H؁q����e &�(�u��a�S�JC�G����AebN{�����!��7*���ʛ.ª�*iz<���
���$6���N0��0�k|^��x�}��p��?OWL}��N��Ӵ��.����@)yA����#��\�S���,.���O�ἂJ��ח�6W���0�/����6
�={�Z���\v|�6�͑��nj�޸1G�l�!���p)�Q���Ɉ�>t�Нr��_B��ì[�ؾI�@Xˏ��;�v��]ܷw�և�g&��F�U� /(k1�4�-������C�_��������/�>̝L�Q
�JO�	L�ehŒ]�܋��<�5����a�h��l>��Y���"3sq��[2�f�!�Dt)��r��[i%��4�%�\WFe˚|G�����`+K��P��]k׮a@����]9&�D,?�����ץCT�x.b%a�n�@Lۉ�H&h��^f�	�k�*R�)�F2�0��m�x�)����m{�m[6=9R��|�R�@P��	�MV��y��?s�������y,c�d��п�4��'xp/��3�d`MF�E����)4��UFc�Њ�&/��6�ѷ-RSJ�*�J���֔<D&bpБ�ی����OL5�(��r��a��F�Pl���ƺ5���C[[3Qc
xS�%��,����2 �B��~}<�bJ��@���'--���G9f�!4�S�cEf�g�`px����{v��3�y��;vlے�r� �=ՔG���ZP����+E~�a�/,���!Z�X�ꤙCc�zC��%�¼>��+��L1���T�q5��1/�<MM��9���\�~�È6���4�m�&'�o{��4��Ӹ�P�݆�SD�%���燚SN�AK�rK�yKtэ��x/X�<�ΝE��Cb���s��˒\/`�d(�F�=�q>��9��.�f|�FLd�U�&ItA��ntl��p���@&�}�;�FG�,�H�U��/)�/�����H1���~σ�_-�7a���a^��a���<l@��|jۍ�^���<���m�����{%�@t]܂��xS2�
%�
��B>�@��b)yvM��2����B+
��%!�dxS}4|p#�c������ZZ`��’%�0gFQu���hp�KKA�mQ4(3r������Z6x�8Ɯ��2�ܟ&F�9$<�bͫ��냿M��w����n��(������|��/��\����N��(B����ә�8�tJ�	�h9E��}&E��a���I9dt_1�]�r�u�'a��f�Rw.��'�L_	�#ر�^�؊�,�#Lc�\�"`'ـP�c�Q�R�irWPX�u�����C~;�3]�y���ƣ��������I'at���d����*������H�]q|��p"۶��c{f?2��.��c)]�<�T��zP��N��*�J�J��w���3���S{�ퟯbXU�6L�����V�U���HW���itl�Md�Q;J��dRh}J�	�8��q(��tו�Ւ�N�4P*�lW��1��L{4���l>K �o�0I
n?����j2�� 7Er��x���x��`�9t�00~����E'�|���q/��@�_(�\�����E�� wlQ;P��"i�\���"�&�*>��[6
!�y��"#�	:
��z��=���ٕ�NH&�Rn��@�Wx>LLV����F)�J�7�R}A�o̙;o���S�:�F��Ⱦ0�c����#Σ��}J�,f�2�^\��.i} -Z`�b�+j|����ܷJ��f�^p�݅�`�@___OEH)ɕ�3�IS}=�1[q��Qط��@v���`�9�����(q����n ��Ȼ_��&L �V����_/�t~<W?�)Eȁ$��Rr�		P�q����G��K�wVSyA&���];ௗB|�bH��4��	��{�j~�B�?H���j�=��6�4{B��Ƚ���|F�Rzܯ�h7�j�5ŷw<w��ݮ��M,��E�j$�(`pA?>NQ�B1�	.l���P0�X��L��@m]=���A]]-q�a�;6��&�f���x2��c�s�N�����9w5�
��C��X���,!��~�e�����9�b< ���m�U���@<��z��yr�+�+7ƅ� 7�
U��IRQh����Bn���GT���_��h�0��h�B�(��Ԋ����Dd��ƨZM�{+3�M�v��2����Ӏ	�ϻ�TE�����U�}6���|��cp���h�湹�)����G�*�q���"xd"�"���_
�ud$D��=jl<~�1��k/t��"MہT�
�l�Y���D�P�$~�o*��������l���a�uÊ�c��q��ÉDѦ7���	v%!�4���0�����큣����,�����/��h8}�g>W�9r�o��YE�k;�����K!�@�o4���,����|����^�꤆\.߄q!{���;�s�cǕ�:�#Q�}R�K_��8j�R�!����-��?6�|
�q?��4���3�J�`��|���k���7L9�ޅ�����ȑnIX��>�����q(v���4��W�a)s[[tLogV�4hnn�$�g� 8}������3߇,���t]4���ʣ8���zhH5BS�tt��d.�5g��hb������;w�n&������܎��􏏍Z��W���<hV*�u��Q��A�M�cL��u���0�oL���j����.O��#g�1��b��B�Yf�I.>���Yw�~���r_�T�Z����I�i�Ҫ��}<�ǀ.I�8jxm{]
dR	*9�
ُ�x���`'�h�#�њ��Hϝ`�#:�e����Ν
���%Ч]f����`?�F�2Cx�Ҹ���ۧ��ģ
�eD�qIc��<8E�(�`���L0h�F�3�aZ��>k)���(&�����;�=��}_Ks�{�r��c*���/[���g�	��V��Ap��'w�o��y�`���O�ұ�iӦ���8��K9qݏS{�&��x�}y6�UU����P�E�m,�q(��g��23����T͇����x��xQ�K\�:��ú�4�� �>���pP&�z��a���p��a���l6"���K=\���yvΟ+W.�y�f���OB�p�p���$
p4�i5SSd�w��z�I>�Ddq�B�O�a�J4�Q�浭�\�����^^ӵw_�;����ߏm��d)$�64�
�J���
U@�)B��S�{���&��|A	����סzyo�%�'�)Dw��
�<B
�/��]�֔�W�����Z�)Wn�>�����f9�%��)�mq��ػ�n^�&��G� H��XQx�`�������!⒫0��0�}�ika�)'C[�	�C�C��!�ps�L�id#����1!�,[�Y1���	C8s(	.Qx�%��V쾍l}`��@�_
󦯏��_U��_Ww��eo��Ƒ;�t[�]/U�W�O`�@�"8tĆbQ��:0���d�F�����B����_&�/Z\��$+�<Jn�/�9t^DÿZ~�Gz!�m��rޜ�[�rR��du�0���|7/��]v��8R��8C���b&��3ֿޞؽ��W@��J"B����/��%p��gB����7�Ȟɏ�49�/��+�Y�̜w�";D�N�KL�3К�y�.� rmL1���)$#�gp	�ʮ�F(�?�]?���Ӵ��]���drS��?���o�i�v����i\�j��$�q���<����A�jV�����QJz��[�ߜ��r)n�p�w�ie�2��<�
�j
��:���>�y�.u�a�
�=��
TǏ�tر�)�I�ޘ-j�Q�^�q�iz�t'�����3��%���2���^s٥��W\��P|�0�(��!�b�Ky����ȇ����#;��y|�j�Op�r
�����Z9����w�ϼ�,�h�!��4e�<<nyb����ZS0�U���y���F H<�VOy3��>�g0ZN�S�*u�~~�뮺j�{�~�]�m*ӻ�Pyd{�(L��v�����5����s*#�{`g��c�����l�T�����^�~x��'�P�vQ˂��Ɖ,x;+�������:*��qG���/4�E�ˊyu�,���L���1m�M��S��[]_v�Kᚫ_
N?�2�w=�|�Q��3
��`O<���qĭ����ppT�e��h�x�j�_��~vk��g��ʛ�8��8��x�J�7�pv��[v%1�p�)��]�0�~�*4�k����2�[��g�i��̬����u���_��W�ض�4�^��#���7 WW‹��~�BZ��c�_�b��x���(ҏ��Q��yw.he���_T����I��|5�5q!_"�����-��h7� �P`�� ��������������_����z�Jxϻ�Kf6B��a��;�g"�-^��L�ٱ?56
����-�k�S�Z��i�kf��D�5�K����d�T��S�e��N̟��v�ځq���}��.�o\���d���4�,]�)�D�E3k�5��%�u\�]��uM���q��Ӄ���ZV)��cu��Ī=�~@�2-h�Db&��״���^(.����t�*��@g>��E;6]�/4�d��~�dUht]���z�l�$���Bɢ�>u���k����ߦ+���Ʈ7����
O��|z,�����KT�a��������
��q��Gp�8}f����~O)_xD�?��������ic?�\�)Y�(�����|��g���9x�Yka�H�����H�}t�oٶvn�S�2�$Ʊae�IvM�yt?�Ea2ᥙ�B�bu��ҁ_A��h�:�����yg�}V�g>����X1W��Eя��|�a���b!��@jM�H	F>�1F��� ��������W�;�BlJ��-��4ף����t�~ׯs/��}�ĩ��{i�89���j�AV�!�|,@�LD�	Lz4�"�xҊ��z̮�a즏@i�<Z��}��g�msj�L�
?&D~�5����w��;�K;��Y&�l���8e\�� �(�P`�Hļ��|z��?��I����l���l��K��J���>-[H#jh*�o�υ�=|���gw4��K2p�ahM0� ��	��T3�~^���p��>O��������~��o~��ۿ���ا�,(gu�Q{
����AQI��ѕl���$5�'aA���:3�\��B���T���I9�A��(�����K��<����X�C�D�QT��|�jI�
_�d��N�UWS�����p9��v,�{����w]�M7���T�0��)6�k�]������1�g�-���`�y��Ҏ!��=`x�j�.��x�H��4)!�%�۱k硷���B3��%hKe		zx���:j�$$\'������{�oݱ�ng�hf\~~'\��jE��q3�O^���gt�-|g���}p%[j?��=32<d+��CySN�1oE%~��jՠt*e ���<��W���c���������*��#g�m��.���L6<��Rz
�}����}|$���A�|Ȥ�&+i��ĭ����i�4�rxd�#ה�C��w���p�i+a�����;y=}<=�Rɉ�xb_z`z||��pf�Qf�Ǡ>�?��1
�iS`�������z�=d��3�Ъ�CZ�
$���>N��P�|�.3��::�x�8x�(��d`��i$��m�C�]{��[;DZ�����
��I��L����0<�g
|�5E�KYP�܇���4�-�sx��k�Ιs}Ϳ��Gۼ��!f�bH���a�|*�^%�+�U4�T`��'�d����/��A�L�j��ߛ�':�P�F=��T�*�\�{9"h��X%���y�Z���	s�&�Ϝk��w�|GM�1fv̀iӧQ���X#sf͂���aN�
ÿ���;@K��F}딏�q$0ZΎc�6~����0,zU=�����ng�<x���w,it�ރl���|�l��3�+-��?�|~g`��m��5?j��M�_�&�T0�e��Q��Q�Mg��vF��o}�>���4���qx�@�����塍[��Ek�.��5�>g>��:x8�`Ų��|�_?���c���z���(Ad�)U}	����{JP��0hq����_%�`�@`���y�@�ރr�[�V!+�.�w��x��V��K�����|}����Oq���h��%����>�>[��"�1���4���a����}����mŲ%��m���F�yZ�S���^�j���'�ذ*ݏ}�p�,��L蝻���w��wA/�n��O��Aaa����[�,T���'�E+�Ϡ����;S�K�Y�x�)pJ�A�#.���G�aBᲕ�0-��/��$�ή���O��ɋ�`q�r�4w4���G���?CDz�j>��O���9����?��~�Kv�������S��
�:��q)�����ouA��S&�*d��}�if��l1&�B#AF�u�s��_�_P�(�Qe��DC8$�7pz�tX�������F�U�E@�X�{��h��#��7iW*�q]ϧ�B������y�k���gv�tc._?�|�a�����%���݋̅��N���sa��ip�r�,S��
��|'4�}\Ĥ�Ʈ�Z0f��g�C̦�F��[����gkO8R]	��л��\��	�1��lx����x�h%$*cDd(x��'
��
+?���G>|�…>������~��+_e֖���k��"�_��G��P��Xt��֠H�&�����b1�}x[�>��j-�ZQ徖ීj��_�u���sv[)�Jzlij�9�g��93I8��g)EhY>�5���NYo���O`�ޟPy���b�CN���n��<e����|�9^�x^>cn�7vw�_>��uK�9�qimi���^���`Q��@���A="��X��o7"A�V���
��{���m��޼
[���CNkm�%��;���D���s�΁8D���'f����+V�33_� _9��6�0(@W�R�,b�Dw5R�x�׷&}���f��,x�+Ҏ�T�~�����2
G7��L���pe��X������K��#�fYU�-�{Kt�I�r�k���?��͜1֜�
/Z@���4�V�9b���ի	�����w���@7���=N>xO��Q�|ן�.='�d���Cz#4��p٩3鹛�z���a��^r�Bx��]���Ը#���m5®|�K
��]J�۽g?|�����y��g��,���	���S`�����۶v�SŠ�+���g��?��,b(�e?_��}pݯM)$��Y�N
�\k̖�!�������}���[��苋�_\��5���w��{W�'�_��w�k�|.�k"�}es!abE�����/�O��T.f<7\���l=V�?9�v��r2����87����l�.����A?&W��.���:��kV��ֶfήS�|�%�Y�.]���t�����]�n�\�
Ͼ��Ix��g���[_�>w�]�
��d=�w�A�2ZCM9��1�Σ��/�5ayf2�-��W�`�o��uς�<�o�n��a�X3�g�N�J��+΄��wC� �m���4��yGዯ���g���'�
]�Ӹ(����"����?x�2���{��ix�@;�|u��UX�{G���+?Y;f�s_x����}>�A?���,k��o~뼿�/;gÙ'���7\��=� ���D\=$&��B�q�q��5M�ډa�8l12ڢ^v�����=��P
�� `{�>>V�$�yx����566¼9�`�ܙD��%Z�}�4״2A2c�xݕ�C�_@���rF�I�n��x�{{+|��pv��خ���w��dه�����f�'wv1�\�h\������쀷
M�����+������/_��y��yt+��̙�W�3���yp�t�x�z��$�x
�6�����1�d��'�i�e0mAn�5�����n�j��g^n�a���yc�yN8�0�;����-}?�Oo���7�����2����λ��yϻ�͛;�Y~5�NSsK�@_^�
�0� B:L+ĩ"�OG�Q�d��u���=js�=�~g:�
�{I�i�>�@�.��+������y0��נY,-�
�OsS����}7��bO��b�a��>`��9u��kO�z�	
����J—�6�>�W���Z<
���K��m;�֮\�pn�h�C��R��3��PY�����v8���	�&�k��68p��0n1���A�y�����`�)XԷώ�>Q���ąD|�ᎍ0�	�_nm�/��^�%����jf,n8B)DStX"��iYr
*��|x![���N�-���
��Ї�<|���0�q�P�m^���y��w��?,��5�^&��P,:���m�?��=��o���\�a�S�C��|�7 ����՛%gD�扫O���L���m褱%���jD���m��^syp֑9Pۋ��ru'
d��@���9�PWC�=v�IN���M���������P?�Fo�:?3�����8j�`{�	V��(�2S~Yb�-����;On�^v
ِ���;�:��\�I��.x˒6�ث��wn����h���32��ÅE�-Hj���R"o�`7���a~ߓpJ+wv�1�,���	hH�C�Õkς5�G`g��{������?���sVB����q��6,��ifQ��^�
�@�_�~0�
6o�6��|`����0��#�Z#��z���㫗-Y�i�}�]w݇x��g�P�أ�,
*�LN�C��[�„�N��'����&�����x��>oH��*�r�<rˣ �H��@����|y�Z~.<dӎ�8������G��t�I-�%>��RM��^qɅ0�)�?�*����)����g����gw>�~|���	K��fԬ,��h�S.����}f:��h��i�p�,�X�zl3��/�SR�+/I��LCRϲsf@�d�.L���K����n�#�@��z�6��30���
ˎB�;6���<H���o����!�
�~m���L�]�##���p�}�~������mU���vZm]�����ٯ���&�q�*�淾��W��ݥRQv�N�>��T{!��ǣ��$zUUc3g��Mk
Ô@I�7�m,���0j�a��‡�)��D���l;>��
M�\m��3�
��E���"# r�@F�O[�F�/`���┰jo�I�'�2��9|��e�Gx��^D�F0��+V��9k�n�<��v:�L��7�+���ȶSf���q4*����rJڔ�7���4$�a���h�æl�18������9i���
�{��;�x)�y�|���B���?-	�1�W}�i��7�r��x?��n��X�ty���ҵ��i�O���;���}��������6Į�ᵐ|�n1�#�Cm_i-���ۛ��\�s������3�-��wt1���(�ob0��<�|,�%4>��K�s746@۴Vhcc|>�C
?�݋
�ed����/}����Pܵ���f"�`�{{���y��J毿o�C�7
�F
8��8�ر'�<�8�̾:,�/�U�̤��2<>WY����g���v`lVr
E�M^��Ơq_
#�xS5�X�&b�u����n��]��gM�~��cB����E�x��,�i�fzff��`f�N*E���fCb����[���>����?���t�׼��i���Y�J&Iۏ��Y��w|��_=dY%'�O����`�d�"�A%�:Jio���I�W���fx�3M�T_�`���W(��K�~u���uD��9G@C}44�C#3�1�g�|��)XR�=>����H�l���˔n��q�<]h�_��#\+2�r�zhՇ)�_T3�j��3O�?�Os2���ҵ�� s�IoC��LF/@]|����kj�agY�Z�L �Z,�_4
v����y��B]:hۜ��}��k�QJOK&��ց��y�	���Bf9��-�j�6f��Ä/
~���p�k��^�k>��4����Ž~�{*�e��yſ����\�xQ�|�G6�}������]T�v1���>�*M_��?�_Ѥ��uӞ�;��[���:j&k�/G�,��*Q���ε=Z/O �5�#� ����FA��d�^���(�L;~�?Z%%�Ͼ�ukaќ����d@I���>��|�t�Xle�z�9���߾€M;Z�hw/LgV����1f�F]<y|��JPRUm2�XkC��Q2�Ry�]J�P�8������oA����t5<��ⱙ+_���ӿ���C��CLj�?ބ��N$j��Ѽ�k���B��ɏ���7��I���oy�߷��]�\�P_O���1�c����?��֡��Q'�Р�"υ���+ݷ/�Y~�q���ha�Y��V�ޞ���-łelj����U�z} @k�A��\�E��� �.p��|�D��J�����;4��||���M~!���PWgoX����LC���j�{8����%ڟ"�ƣ8̃#�K�~������>�����azl��hg�8?�^�|���ML�w��5�z�~�?8|ٕW�\t�E����κ�tkϭP�gp�}����C\��o���4��a�X�_�庭�{�d'���O}�S�/ZP+����桏~�_�m��d>�.$�Ǫ�^�㻎�
�J~>L���-O?5fz/�*���RˊQԢ�O��2�OĜ���.4���%l��8�V���齈��;�,��?��3 =�r��n�@����������Y�OOF�]���
�q�m��3;���Bb�u+GTϣF��2�S	����	S�Z�t��:f��
-����Ѵ�.�o~�k�|Mכ��m�����7کs��9/�Vd$�(�b��`�|$�~��yh�ڷ_�i*����?5����	|v�ݟ\���o��g�^��=Y�|A/�K���+�e��,�D<66��Sae�(ܡ�V�'��y���ɲ4�O鱉ۏi�!��s4Ē���M@�+�%��O����Y���u���/��¸�
	��a��z<��V��=�����n��vuӟ#¾�����y���:n���1f�cG��Z������t-�j� �f����;�fLj$���\}�G�ڵ$��|c4e�:��|���>�e��_�;��;��3����d�z(n�8�{���r�P'f�U�8��p����߷������/Z��~a�I+W4���x������z �W���Ig
��d��)�9�4�[��w��d�9vۏP)�[>��3�%u���u�����D��>�w�^�ӵۣ�⦸`��zd5�,����������폂���
���2P�:�f��Z�7=_��Cs_c�ρ����6�Ox��S�B"�f���F��}�g 6�$&rU�:�f=��B]=g`BÎ;P۝��~��ƙ_�j(��Cp��P�_�ّ���ٱ�{��Ƈ���/���G����/��qs��%�����{�-�}��&�_Q�^���6��7�r�>���~鿶_}��L��$q�jc�ݿ���"�?5�T�v�߯�+;۷m;4s��Eǎ�h�22nbc/�p�e���	���ܵc<z���)�����	�$*�J�(������q����l���s�V�h�H7� |����w'`��p�m����f��Vτ��E
�}�*���M/;N��Q߿7s�4����%H1�`�yP�s?LZ8�o�kP{$�s��]Nl�thܟ��}��$ֽ��^�ϯx�F�B�.��i���]0�_����>2�o����Y���V&�7]���|�;P
P����w��ڹ�֞�U�=�䦁o|�]w��ѿR`٩s���MA��x��! ���V�~$�e��-Xԝ��gb��G�)A&�]S�?�PRG��ZH�����Z�4w���ؔCO���Mb�?֛P
�a�!�@}p��Aq�Pڿ�x�'��]7P�� ��!������}vw퇯vMLo_��d��s�J�|�θ�I��������#߄�����.ВuP���e�S�'������r�b��$׾��`�so�g�M^<bi���M�O�u���U|�߰����׿���L�9�����[�����'�\��W�Τӆ���������ٹ��W0�'�[-��i��C:��¯�u'D��d">44��	����Sjhࣳ�И_`��&�v���D2	y������b�j�1F`�~$�a@�� "���wΛK�,��~K����0��\����M�7�E���`���@�$!!��B�%7	!��%���B5.4W��M�%Y�k��u�;���j4��d�{�$�v�uv�|���}���!����#��*�e�+��v�oq�.=c)n����1�A�օ`_|1l'ވއ���>�L|����9�g�� v�%��:'N����6�=1�X&��� �-�6,3.D��#�e8�0L(�-�+d��@[���{okqQ���7��z�'�R�⌳�\w�Wʴ�~�ޚ�����_�}J&�D|Qci��t�R�7�x��O�їJ�'����6��3����v����3�h�,�<����YY��邍��
���?84Ħи]n��1�%i��E.��?.�u�!6 ��zlך�%��U��օ�V;Q�rj��Ӌr̳����x�_,��s`Y�
<z�ݑi/�h�X�"���9�p_|��-���T�R6�1�V�,�Ø�+/��W���Fp���{��:xW�A�2��i�Da�g�,/�nl	������W��g�(���K�23Y��{���˟ڏuq�\u�+�vm���9�J��!oT�c$����8�����B�Mz/��ʾ>�`����D�^u�_|�|�v?�ȣ�y�ۍ��^j	����gE""�BA�>6J�f���	�YH�(�p�m�9�rB/�F�*��~c�9��O�"�&�N�{q�C�/+����1:K�Ip��!�}���3����|�)�S��B�~����L��`kٌ`���x$-9:,.ki`��)o.���T~*�m�ә�5��(�Ad�ەiu�;&���=�ÍM�9f�3�p^�9_�B��O�7�To�;�������U>��E�_��K�	�p��Wn=�_h�:#�nv�D)���e??�qzn���c/U���k#��(I�fI��Ya'���I�O���8>�_PP��l�\��}�t��ζ����G���#��a��C?�Vu�Db0g�ο������=���׎��G3BZi�RaG%�rL���u�w���W�w��7�f�4O�3ӳ�9�Q��r����/��Zk���"1	XN��0W6L9� ��&��!7�C��7"J�[c����J��v
�wj��ב�F5��i�/�q��OK�䯹���^sդ4��e�
xc䷵��w����JYT�U��W\uu�ԩS\�����V�͙7ϕ��(��pXa�]/d�\�8^s�Se�i�8�8t�`kIy�lY���^b�kE�Y�nt���bei��P�9򨓐�ʻ]�֏E�T����&f*��66��6U�1�(���6�A��ͧ�iѰ:P��LL����B̅��.:�ӿ���-����]�d!V�-��k���˰.��ғ`�Z
��0Y̌�cQ6H�kE���>ă{Po����$��a��䝣C�0�����w%�c���U�o��e眵�P�6Qe��w���
�wlWS�L�l�9{���K/-Z8n�����:\�߼eK_���q4�� X�nJ����I�ϐ
���~ڟ��+��j�RR�ݹ�_5svk�/X.8죜~4
wh���\[�Y��D�ۘ)`�Y	���Ğ����:�����ԃT<���j|_!Z�+,,DA~.��lS�p�//��<�A렄/E��E��b�s�/OgS��x2uI�p��e�����}3�y�����/�rLJ�O�g���4��'›k�Z���^�N�n;x�s��8�+DD8Ϙ+q�;��he~{����Ob���8p�(L)�žV�.�MU������|ss{gt"6���V޷n�a���'�O=�t�m�mo�,X��~�u_)��6�=er��燽1C��������[߳{��A�g0�Y��~O��k8!�C=>���1�LP�47�;�sK0M4�/�G[��1
�{Yb-��;�M[rY�68��$��<i��S�@���7�:��g�c��xE���B� ���٤N�I*�6��p����e�vA@��#�Ul8K!�5Őo
�"G�V"s�p)@�Ώ�a*!����q��w���mA���w�s
��~�I]vJ�>�ܒ/�Xy3�2�@Jp2}��׼U����4�֙��w�Õ�}?��O󡓄)��1��B
��!)���ܒR���}��3�_��e+�-e�������y��6�{�PCӶc4|���R�x񢌙3*�Z�pm����_h۷gw`���q<��*?��O��M�� ��/�����*赾ќ5=`��/]�Ձ~�?�L�:m�E57r0��	�Ls���iy���VSͯ(N�R����!�!^
*��;�V�H4��ʤ�R.z�m(�P��+�e�D�?4��������&��w��\N'*���Ԋ<����$`���O��3��/Ƕ��c�1��Gl.q��5%E�.����PG���\Mrb��޿{����-?ִ�'���WU��$��O.m*�;dϫ��h���o�z��D�}8����Ϳ��ϚR-���sm���%'��"��v9m�4p����|����������1�z�[�
�L��^Z���c�	���7!`:�@?V�O2"�� ���u���P�l���h���.6<��&�	�}>/�n7�.'���dNA^3�w`����B�j��}Q,3�ҕ��<.�VM<	?�*Et)v�S,��3ϣ������n���ϯ�{���sq�|�M���D�[�N�R4��;a*��ё� &�3�EOɐ��LaW��«���ȀO������0g�,�]���oEGw�͙�sÃDj��~~ȝjq/?�d��~�����'����ݷ{�(O~fV�p�
�(<���y��y�ݞ<�4A��E���okk
o��!Y�'��2�Ԝ'�k�|�(ƴ=��ά��h����u��h��7!p<��r����H�4?�}�յ͗^yme�?���IC/��6!#3S�����X���g��E�O=�f�huNR��6#��b��$��v�Us��
�{_�wA�n��d�S���N�ͬ,G�i�Q�����{o\3��&���a�/7n݃�ʕX��fqy���y��ǻ6��}�X�sY�7(zx��}��>�xz�ڗOchd���9�%�p����G;���{XϽ�哐_0\E��G�YV�S��$Y��r�Mݽ���V����z`|�ц�����f��[����g��s֙�$<��,��B�(־�Z��/�Թ{� �~�A?ʋ�IK�g��;�SO?#++;�|�	+sKK��O=���ﹻN��L:���Y��y|��3��o"����_�%������O����C��[��к�.��)��~��s;�Ğ'��aSGm�*��E$@Th�/Y�
-.**⥶C�F������yeA:��Ny��� �n��4��Zؒh]^�����Ta�.B0M]
.�
��zwx�D���v�sF�4��o���4bTQ�����%'t�d��8�a��������/�Ï<�I�ʱ᝷�_���::���:����C5�Ca묒b�_�k�F��������>P3�l)�<��C�-).rji=�ZZۂ�<�ϖ�_x����[���;�-=3K��e��$/]�$sfՌtڳ?##�J���j�$�s͚ӧ�7¸��xN��}>w�M��7�����[��k��:p�6��H#r�s�@
{�	������QZ~��M�%Z6B���L���fU\n��D�
���A%�b���|H�o3�~��'�2g�X;�;�Q^1k���uv5=N˓�%�:}*�m+��1�G��޳�<
�;w�׽#��T�4:\����Į�-��I�N{f
�C�Pg�� @�P_���K��u�aɢ� �@WW>~èE5��4̒:GE%fx�Y��.��=~��Wv�J���ڽ����>Ӷ}�fb�
��⩩
���2˒e�=eee��sf�gggYA�`q�z/1%$r��p8"~����:;~"��1��㦺�x
�q���9��;�h�n��w��%�;�h\�n��f4�7�h8�ɥ6�$��}��e���&��/0j�Һ�i�H8����{"VPT�}�!�R1�++�1�E^N6�zz�p��';�#��'.��J����]t`��#��b�e��Ц5�BF,e��֟���ܱ�+��9����ӈO&Cd�R8mxp0?2��EF	��NX\i�6m
�����GSc�!��{���l�����N5�f�Ci���cY-�-��Ʀ�XLT^|��6�y;F�f�ڈ\4qi���NN#�ݲr劬��[(��L)w�bX�N�����*==��õu�m۶�����W�m�@g{k� �7^x/U��q'>�?U�~��v��(Pw蠿��<�}�6gzF&����$j��k%�Uܴ'��n�xP\kG':�;��P��W�Aw���E�3�Z�M#4Эv�M8�h�,q̏����;7h��k^9����I~��
�?hŀWM�[���B�1�Jf�?$)��~�I$��{C���#�0S��x�b
:mD���판��� ��
9y��Ӂ���q/Vs{'v̬�_8G�Ї�Q�+#�#���D/���=ܻ���%IVB���o4���ʊ�NqΚ=˽p��t� �L(/+s�,$R�G0��YE�t���7�s׮�=���i����ء���>o��35e�n詧�Fި�wJ������cx���!��z��]pQgGgϔj�4:�t8�) ,+{<"4��j!�D(`H�x.
��{:�--��!�f����,�{������lʼn\��)������E��&�.��:���B��R}xf�˳eu���-�R�����J�
��N���-�5�����+j�`o�tJ���i"�B!��-fBɔRZ9�;o���/�{�N#��E�6,+4d�YVn�p��X�ʬy�m��%K�f̛;'#''�J�����a�z��6Z����޹�g�N_(��A��ЁPOW��B����3����?���y3�O@��	�F�U7�.���;j/���#
G=m�mlRM�U�}~
2&�Ȣ��J����`�hjj�hi���H�'F2����H��],}�f��<�9�ؐK����Z��cJ3h�a��(�2˂�)��zV!fZ���,�p����ϝ���^��x�Nlf娫0V���Ҧ�&�Q��Î��f��4��x�m����k���;9U}�,�X�����a�|H?�`�t>���4o����xV,_�i&v� ��)�'��49�B�,��\����C�|�q�@�@�b��
��!�T<�?FV(�0V�v8��r�;^4�g��+c8�$��Ћ^$�4q�����M�W�8i���L���d
&3�30�I����]��o�_�9q` ͹��\A�C+�x�l�R�-MSq�^��gV�vst�7<�[���q��
�F^�.���Oێ�����0��&��k�DN_$M~�Ah�4��0���\��?����d���tT�݄Ek���������o���f�M&^��g��X�}u�S(Z�1�cG���=����ށ‚G��1��(�΍���O��?��h�K&�	`�ߚ4�ׄ;�ZC/���ӆص&:�[��{�Rcv�qi�i���3�:s-��7ۑn7㚂 �䰣�c���Ɓ�!�5ىS�f(�]x�ֆ�t+�-�Ñ(�%�_�ȧnJc��j�������H���f���G�D�pD->�O��}򵺡a��9��g�1��a��px���SN�&~U��닶wt�o��ޱ�G.9��B?���,~�k�hP��	��t�Q>�'��9���h��3�M:/�D�X,�*�ʍ|�?wZ<n'��?:1�+�]^޴�
�8��YpI^�px��]�_Sg	�΄G`(o}����b9Ns��!��Wf���_&�K?�H��]��|[��#l�U���>d7��[�pL���C����hck;�gT�Lo#8�8���}��R۶���h����I;G�6w�����hS�H���7^�]���5��+Fp<k��ޱ���1⯼�6A���o�u6����V��SB#�P�G�����ϔ<ٴSn�ͦ	ŗ��э]41ȩ$Æ�3��}r|�̸3�CCJszv��=lI�Ա7d5�a�YD��+�N\�Ҷ��Ǚ�a3¢(��,����Q�Uv?��gkc�O������1����Q�_�h�����>�b4�M+�����C�U)��f�s�>Z'�x��\�{�i���
�<�I�T\�q�#
����;�6��R�X�� V�bR�\�V!����{�qpU.f��!k�a�P���X>';'���O�\�
c4$������1��!tt�Gh�%u
��Ն���DZ�4�~�W��ם��RO��S0��i��?gp�y�l�!�l{#�Q~�t6�.��B�s�ʹ��jQ�d�:�y$�f���Y5�㛙v����<�f���P9�����E(cs
�CʐH���P�Lj�����9�bf�=�l��M��5#���n*��5W�O䵴�O4e�Y"�6��Q�x��t�����j�==��w0�v��鯯=�y���H�h�;����y�O d���+#/���ux��.��
�zJ�Wj��@V�ʶ}�jc�hM�w ݆B����"��ׅ۬����&V�2�
���p�%����
?	��:���~��)��7�K�6d��,�A��Kl{kC�����A
j��ac1�:�hT Qe��22��q��&��:'$d�yS��7_��6ǚ%�~*�Ǜ�,y�9
�y�n��ة���ԛ&�@ѧr*�_�F�+fC-89ˎ�T*Ţ���ݘ1�G�
۽m���p�n[��2�������I�̬hJm�R��(���ܮ>=�AbJpr�(�Aܿ�~��Z�:�d'�(�f�:\{k1a�?���[����K��|>����i��ʴ�"$�Rڨ�v:]Mr��f��c���w����c��X4�3��,�&�H`3x��x���T�ʨ��H@W��
���H��q�M�LUY�1.�#�6��W4� ����D�|-vN͒�Zn+���ã~lSKۈ��X�U?њ�帬������(�s���#��s�$J�hV�����&Sy�}:k�~��1u�<��(��{�^�x�J���|��p$	'���Sz㕗��7����s�L�����/*.���Q��ɶ��g�;����Ɗ�Dz�Y����?������7��14>�-0.הh�^Ў��Cs�T!�h^�4ɏ��)Ň��h�0DLӘ���*7<m�|�	UUf���|"aH��"-��˱7�s�n01��nQ�K� $��H�����2���1 ��T��ֿ����#U˗.���72�E�o�>�{�n����Oۧ�MG�F�Sd��w?�8/#1�Lh�2i�,������g�y5��o*L�b҆	������B 
��Th��q��C����(����M����/�:;�^/4�7̙po{�R�N(�R[�`MB��;i��IKW�>�4��_�`uy��S4�'2'���p�_<xi��.��K�tIU�!�k��R롆�$�����1걧v{�v��s3��z��4vT��ؿ�����'��!��RD��;�y|V4��V�t�ۨ��ȳ��
4cd;&��5@Nq1����(�ϰ;�T2��ئq�d�[�LK�b�=xq�n�%��L��`S�I8�@2�	e哹}�w��������]0��ﵨ6>1�$���*�������{
��Ďb��4+��:Ԁ���mmh82t�)������-f��д~&,t��#Ѩ
J5z{{�"[�l8x`�P͞]�K�o��kA�>��9�Sx���1v=cH=�H�5�i�6k�/�o�q �䆆��w�1gI>�h�qk|t�� �@��)eص�0��Eۜ
L��?A��D���O�:�D���z۳��̐��C5=��� |�����++pV#��7�&R��O��]��w�Ƕ)�-�>�3o�{���i���<%EE��!�t?q�������b��/v�􆪫w
��_�=��j���'J�O����Y��j[sc8�?o�/�1}�`�4U�D?6=��E~�W�d���������1"5Ƶ54��.�1�$������?d�d9���R����k���x���*��#�)��Ji�(�ǖ�å�VN�T/�~g���J<c�6��K�M��G�K{�M�>òh�O��*Ϝٳ�
���I�DH�>�dwO�2�
\�:��F ����خ�;}��5�i�� �A?�ä������O�`�Qɟ�B�?q_������"F5@7kBB(X12�ðCKGggh��\���N�RO�Mq��������n�{r���0�͝k#�4�,�C����>��,&r�4�WI�%��|��h�C�rj9�w����s��[��u�&�^j�ط'B���{�6;_9s���r��g��,Y�1e�dgyY���KӮ=U�+=tg��K
u ����v���ݻw�ߞ=CG�c)�k��V�k�q��/�����1�:&!�����$ͯ��x�г��/m��Y���xZ�?ʹH��l&8�JxH-띰lW�x�!���C�ò�1�CA�a'���mǂ��,;�o	b%��sV��鞙t��i�~9�sL�*mܧ���DXN>6=��,,s�{�U��6^�tw��m��p��C��;=3��4y�u��i3g�tϚY�F�T�8.�O������D�565�ݻ�GL�@gGG���.���!bd#-���Zv�1HmW_�n
E�r*������)h���؉�y��T,�(�mn>:(��w�C
�1�U�f�,ㆶ�VdJ�xncu�+r��9�@0Clޏt���N>�E�?������\79܁��[���ӈR&z86��~:����oۆ�6��\�uXF�v�io�f��|���O����V?�rթ���l���3fL��.-)v�\N�-t��N�V��6��^�;v��4����"a6����D�ǬYO��b�q+y��,kb�֬T�_	�g�������/�o�@{Qe%4���������[d�:��=3��L>)��t�v�G���#᝭{�i�W����lB/���	���h�m8�ԓ3��΀ߗ*'=U-�R'�}��+qI1�$3d��'���\�d%�����u��9�G�?+#+c�lV�TP�>�u�9fA��:DCk_������˖�p/\�0����>yR�377'y���
�t_�|i6�H���i����y׽�N����OX�>R�~�V��	��ћ�F~�����~#�/��'~Ax-��4N+��y��d�w�������Pq�twtχ��K��h�?m
��9QM�A�۽-^�6fSz�@�k�Z���k��3"5Qu�9�3�p���������#���P0�]�����26?�;�D�WT�DaQ1j��FŌ*����^��{ć�&��yyX}�)��9sf���D���Sg!����v�faj�ߙ��e���3l�Iu���:'�?!�@g2�m��?��}��'YgԼ�"���OO+..�����Ν�)/+e��~�Ξ�A�K.����g����On���^��R��
@�*<]�A���ו�W��g��I>Y�k�o蜆ڛ4�N28��C��`d����m���Os�l�����)f��l�;�jX��v��r�O-ì�L���`���y��]��I���@l؂/]vi���=��D�H��m
�OI9�1�lW1��$������`μ���@le��s��M��w���3g�W��x�,9���W��{6�w��_��iiXy�I�4�i��tOr%xb�~���2�����?`�ʪ�ևyh֞=5��ﻷm��͡O�Э��My��G���E�����lD�YO<�Č�sg�%�
(hkk�`8��(E\L~e����n��X�2P�����c͉1w
#G%'@��yd�@тߤ���!����;m��E�'��G\�x7��d7^޴E�Ŋ��%�U���Y&L��P,�ɼ���G��{��?�G��ޡ�k1��{.�����~��XN�(I\���_��嶺y��<���Fx�)Bi�쐢!�۷���p��A<���8|�:;;0�rn��&���(--ô�ShM=�lݞ��5g��G��/���=ue���M���'lf��w�!#�9��l�`YUi�^����l�����8X�7�i
�€�ԁ|��n77yZ��O�455
����^��0ad槤1�8X{�"F��З�1X���9o����(�Q��H�4�4�(��7��F5��{���
*׉BQ�I�k������}��o.Y��n�3�>����}9Z�GlzE��Z��z������Ɲ�|�\su馍���7��u�N��Q�#d%?�U��ȱ���!���~?��S���:�`FUpz����瞃��lڸ�}^��2�'6�l�	k������;<�?��&M��p�����փx���W]yyQ��MD��S�r��%��r�Y���z��>��X_��?��]w���}ʞ��1�wk����Q��Q��ma��F	[\
!�Y�p뭷�?E�����Gq4	��a	�[-)T��	!�η���g��B����C;��7�8J�ݟ�0�<�tAd�<��M�qu��.1���� ��)0t�O�"���/;������}�-o
/��nqy�B���yn�8�g0FTGusC2�<(��=x/Y�Y�����/�r�����9��63fT!?/w�U�"��~�+,X�W�Ñ�w�0{�$\��x��o�#�:i�R[���c���٩�9��m,�6~����.�rVzV�@�qd��O�;�1����X=�S��S9Ze�פ��ܦ:V#_�I��g��~�X��h�e��T�xY���U�]s�,ˉ��%aC/G$��?������|Nw)91�]�9�|:"�
�悌!�ϡ�)��g^��������Ģ��䓋Y^���(G^S<��CMI��mã[�I<V���=��YFmz`�X2"�,����D3�?��x�~|{~���;ɱFd�e����X9�����1a�����ݟ�����)<��S�����gs9b"p4��_�u=�WX��<��]�nwy��õQ:+q��%�����T��7Q���TǤW0�	��|\�Yv��Si�	���q�x�wߨC�>G@����/���馲J.��
�y�q>?�p������<����a�)k�=܏�#� �)��%�eq ��M�����|��)
G���|�~0Ņ�w0FkZ�P�q>ا�E�Xp���>����^|wa�܌�v}_XbD�U��z�"Q
&���7�i*�3�P�k粨}l<�*S�a'�m������ͪ����������#���EΛٝt@2�hr1�k~b��/;�z�
_*��/f?�'{��i�z��&SRD�8�m�qz��b=�'�kx�CZ����k�(Qh�~N�����Fy��hF�z*����w�N��-�Mwjv�괷ٟ_������,��&Tږ8ˣI��<���͖��&�ನ�7�A�s���e�bϓ�ae��$dW\��I>�K~���-xӷn:X{pt�pRr�zqe����,,�����p�y����/��?O�;x�f�lfM�@���B ^�`%GS�
"/0��3�Y�G�A7R��z���)�� �'ra����M��_��R�o~�_%�w���U�����,�+j"�0{L�_����o�?���/���A*0���O��Sy��q'pb��F!�mDs���9���s)�
‹F����Y���j(c�#Z&h<�|
O��$�/,.�,=uMA�G��|�3�P�p�lfF,�:!}K�C�`��&��6"e���ꀥb9,9e�ۍl!�����	%ޏ�E���-_�޼e�/>i�ȖM޷�ep'�Y��ܩ��r3�ؾV�˻ O�G�5[�03���S�!���(�Q*0I	�T�X��%GU?�I>���l<��3�N•�^�y5�X�%6�d������ѿ]�K톔,�����N3)4�T��ԻR�V����\�ϲOq��ґ�Z�`͉�}�譱h?0v3#�/讁���x��L��������b<F6�H�
:a �g�wA�%�3��5�v5����a�s�[O$�@T�(��x�,�rf,C��d�#[Ȉ��@G?歾u]H﯃���Y~����h���U���ջ}�=r*���pT>%ג�J&�_Ĝ/�L��+�����\O�i�ȳJ�������Nn-�>"�8}11d�������؃�g�^b���y���L�q������T5:f�s��Qw�	>�l�$[JF�y���s#u}�gJʦ��\����l�^����(W?�q@�?�„4��2Ш?G�1c�?��
|N��Vm	_����S��=�5c���h�P���+�ŧ���0�%�f!\uz����@���:�6�Cn����&��|�g�{z.k�"��Ba�BQA��ز�N��:������)���D����\gaw�N=����}HĬV"�xdM.�
x����Ӑ�fF�`�5%B�#��_	 �hte�9[	���BKmq}�%^j��B���7�o����I�%.X��/��*�QR\����;0���X&��ر���+�Yξ�:we�lkww���ު��k�9���8H��K����8Q�c��������b%���j��9"ֻ�嗛V���rˬe|x�[���F�(��Ը� �ċ1�b�������~�-��'\p
66탧���93X�]��-(�B�;�����x��(8��������w����T��`-T���)g�٘�4�v��;�59&|\1/w��m�X9�f�X�`����J�У� J��S��,X��!��:���UX�^��
�?�����("5O�Z���ًC���G���9��tWK	V�ӑbV�e�p
�v&Ej
TC�=�;{���V��\����k��.���(�tk���S�/
�A`h41#ӝ<&�2�q�H�(1�"�6�� C�v��~�dl�<}]HT�W�b�I�?A/������r������I�>o ��P��,qg^bO8�\�[��5�}�}|�I�J|��D
�	j����eX|�����g�J^�Ng!]��-���q�E� ����z��"�]u�I��Oގ��P,vc'�f�F���2�"��~��/�S����'̪p�R�2�_��p����,q��dHN�r�b��9�����܆��	g4�ݍM(��#���m��b���X�m�<���}H[��k>+��@���]�a!&G���φ��@{��s�/��FA�(t
��U8j[�%��ɿ�$�A�<0���t���Kk�~�Fx}�Ŭ�j��x��	t�}\ �����Z�ɉRw�l2[d��*ZLB4�p����7@��������	�#z���1�H1��X�B��E>�A���]o��	��]|�&
�?u�[O?����+�u�
��o��;ɗ��P;�B�u�
x��0i�#�s���P����ع�%��x+��E����;p�G0Ϸ�v��Ǵ��)0�	@��E��R����JLl��̳�?���}��,���/irYnw�̔�Y=e����oYWrr|��G}f6^
��u�����,�m�P0��S�$-�9J?r���
̳J��0->��
�T?y�0�3X6�1bN��-7ގ�4ϛ]�;.� �d���GJq�]��#(q����@N?���A&�d�\z1�_a �����'MQ�Os2��N�N�S�tҒI�`�ͬ������X��3B�|v�0�@gÑ������
�%�~T!Hu3�MR>��Jt�Ih�Fh��C'�A&4�v�C�O_XY��d
{�R�X�����n��bE�S��<��J�{8fG����\�����
���1��$�����Y����׶�6��d�s>X��M�E���5φ}���:M]���/��]�ҋ��-͌�nAiޢ�=.��9k\�q�3sZe�I�I�6?b��x[�EP��AU�.�L�tp0WN�m�հ�������a�mǣ��%����rS	n��}v1��K��/�`�k�i�7����lfyg��w��S���8J�+�Q�X?�S�_��_�����9�����M����MĬaCV�Ʒ�-��tg���bf��V�0	�-�h�4_$�j��l9���}�-�=^>f��#�D��Z �#Fi�������_��ŧp�(�
|�eK�Ϸ�8�|�q5F(��p>z�!,��H�נ}Ǔ(���B!��;Kl�Ϲ��p�#^�Dh��K�\<�aZ�:�P�c��z��,}�DVY��
��p?��ףp�9�o�.�+��ܰq����?hqɱ�p<]N�i�D_?u`7�ԳZ�x, ��Z�_=��}v"���`����@�XA@�H(��5@�e�i��K?[b�}��7v����L�5��4ckw1~��.$�6��/�
�h�>�E���)����G�������Q�c��
UM>��V�����&��8P����x��g�ex�d(nwFn^���˗G�����M7�~����4Id�����S�9��$o?�B��u�<�ڐ�Y�����&�-{_g{���[�/��e��#Ր������q�p���ϸ���!,:��/��7����}��g��f�փ��D�XW6�|�c�jK��(�����]:
UVo�`�ذD�(�~D�?F����?g�2�ٗ\�T5ǖ13��s�`��(�Y?��%�����'����uHR���rs`�1��g�y�7��fX�&���D��|r�!Uۛ�Z�Ʉ�/fC�a&Dz|tԌ�u�oii	��qx��<ބ���x��)��yf�,QDDG���	A�GF�i��w[g��mÃ?��Bbd��pIM͆/2��l|�Y2��&ֻ�����Y��1��	@C�q��X-�$I2q�)k��y3�x�y�#z�f��8^~#O$]}̑����	�
:�a<-��v�C��sh��ivsVv���'�\0��u���zȢ�%߫d�s��0}�,����v��$J6��&�n���	����M�oN>U\X@'�7�]�r�P��lV�N(b]������6y,SV�_��ўv��͐�:���� 0o>���vh�2��
Sn)��R5�p�r���B�Qmzz�fۈd&u�a�Q�w�
��6<܀K�Z�S̸�������U��ۋ�����ee�˵����@�DM)�|�C\~�r�rz/9��.�U"1��^�`�E��[�%t�E�����c�pȒ
����ʀJAm���d!&��8�'ϙ���k(�Oh�O��&`���I�u0�����>�'��Ͻ�����5�TG�Ú�A}�>{P�W�g�`��N�?��O�ܡ���
n-�ߪ�V�s�׳��� r��W�
r����a�p<ٳb>Դw�^:]/܍��[�oS�v;FU��k��C��t[�d��ʉ�f�.�Bg�J�wն�QR��N_|��s
�L���׎X������ ��/�����3`���*�O�
kI��t�Q!"A<���'��u�B�?Bv�y�9�<�L��v���nFo�*�b�ݸ"���xW3����x}j�����ک���Ɏ��#e����v7ΞC��~���~�A����2�x�ѧ�k�nN^Pm}�*u� ;].8N�,q۞�=n�3��be�0!`~�w
�N���`ڟ�%0�"�^��MD(��E�Ba�SV������{uf�X��ȫ?n��8�X��3��y�_��F�<Z��O�4��z��,Y���K�\(%��d�EM6;�
��'�t1�erL;dN��������	�&8��bң-Ȱ9p�J��X��?�ɞ[WӉ/���b� ���>��O4
!_&�;��q�z�t�
j���cM���iءF5.]��?�OQKB�Fk(?}���{��w�ܰL�����S[`��D��v6�(��^^�i�|�m��SN�nrz��X��8�J��0xk.�U�¦�����&��׼|��yI23��!�ݩ0[Tгב�t$��L��%�`�>��� &��2�eJ�S��[81�+�.}����D1����A�I��6̧mQ�on8$�^���^o���t�:�o3��4�؀~���]���E�Op�->�;�J8ȜxV������,>�h�Y�Q���Y��V��5	�+�cޔdqA8ȷ�Ȏ�+������c]�|��+�%���Q0�:k,�̀lāㄑcŠ:Ș�:وf�ڝ�5�i�ǘ���!�*�D�í��ض�j�M.�/����gw�c��F�4��ݍ9�*��]�/���°��DW�0�g�$}_"���K���䱪��2��h��w;1�|�%�+ �~B�'���v:p�=̃�Di_
|����e��	;P��w��|�����?�70*��x�u��Մ[�����ڵk�,�1�{F�CR5����gT�O�B
��Ft�j@�-�/-���������ǧ��s��.V�Ii��w��.��EC}\,oJ&�+�"X@B���f����a�8�$tCq?^:υ|����mE(b���J�?�59���(�O�{���GM;��%5�D��{݅��˄�c�@&6~��=�`�t�UN�oaU|,qG�<�K�����a����=�}����C�����٧-�NꉏF�)1˴�!f.��>��z<8��v;�᭰�O-m��Lh���!<گ���1���@�K�{�U͟`*��g	C�pb|&��y�.M�b�0��l6K~a��@��}%�h\l�A�znЧ�ߵ�y�.�G�w���
4vm����?w*���i�C�F�̾V�_$�J|�F8��#��B��R�VU��utu�kaO4��{�-D�hƒ�U����q�/�W����ݏ��Um!>��U�;Ϻ�<X��.'������@n�����n���0�᥶pZ&a:������`v����Ϗ�W2Z��(�o9}6�{�i�$�~�']s��]w�������C�x���i��cA�q�G�HT����A�i���&�D+3�	@��d!�����qg^��'@���=���	���X,�L�}n�N"���&�at���4��pRE
F��M�Q�cw���q����B�b��gљ���,�˒���r�=���9�z�ߔ���m��:�3j�A�LTƟsx磏q��%�V� �d��C�u�?�LB�&x��gm���P`�v����j�l	��M7�n�y9El<~b�;�(-)���4��*H��G;�q$��
m��2�sX���z�	��������'��=�f��'��C�Ma���K�ΒV,+_�WwG��c��\4���LR۰�a*:�Y7��v/^}�u6�Dm
B@���=���v
�[�0 죣��ť��}2���."�5�}��g<��3�Q��d�<�#�~*Th��iSi�;w��۷w�F7
5��0R2�4%����ɩ������2�5�c虂�)��&��i�-(�����$t.-*J�H4j�ԑ��?���Y����A	
!�gx�s�����{ �j���
]���G�x�źq��~��$5�爒�g6ְ�."#�$cӶ���f#�d�:���P�D�KQ|���Cl!B�Cl���f���\S�GKă�?������|�	����9���0��
��X��\!}2�5`��&�-.B�0/�QF96A�5L.,��5���fp&�ʡݍ�L��`��}���:�߰��*����Czn�sO��6D%��T<2f���WӉC"���@K}�M�p�i���,��j�d�ož�!=�i|�Mf�������L���޽g��?�ٮ�
�����H�?�c~܃�G��)��0��O��cT�o2H���'���)��3�

�ݘG�|F0�G"�^0��"�'��_yN�M�t��d!�����̵
��$=�"��y�yw�;��i�^�&�+r����ɗ<9'���+xp�Ȧ�����Q��aO���B��
d}�R�@$��-���?����F�Gہ�kN@g@N?���٭��q�u#M�`޴�m�#�j:�\���E̔���p��^r&��
|��}���m�Ļ���+>�ȉ�'ú�'xc��x����i�DAh��^x���4�rCB$D�6��i|�hc=*�W��J�o��j�kya8��A��Q.Zc�
�$ם&UL.�S���﫩	���_�m���$�qH]۟���q��F? U�N/M)�|FM8�쫱b��~fv�c��%Ņ�E�D�Fb1O06��\���t�P�0��#�=F��6��t�=��3,f|��?� ��gu���Ɋ���g�ෛ�8H�s�P�oif+&�k�U�p���EX���t�����{��F��7���8]�985���#b�T;�g�#�!Bl�h4�P8�<�����T�cy��֘�i¬b^���{o��M�k�
!��Ww�2oN�;
����!�E��V/���]��}F�i�Q�M�V�`.^M��C�͸���v��y������̜J���O���sOӨ���2� u��n���k�|���7%w��q�^B$�����~a{��J�"�/ƢX����{﹧�fϮ�o���S��{<����m/��3���ݤ���"ע��&M�V1�l�L
E��D���{&�.�F4=}����F�d4l!��B���I�����!�˗�B�oCh�;�T
�<�Ď��\��m��ؼk��|�ҹ�qe��ƒ�7�5�3+���^l	f����	Y���|�c�Y&��pV�w�ڜv������"�� *<���:��B~�g�Z�����Ė��=���߀��1*��w��X�Ӌo�Y���if
>��=�h�*`��R<�Z-::�4��~��ea8:s�
7
�R~>,�n��k�£D�S૱��c�S��8;������ 
���磣���L*-��%K�{������^B���f!R5e��d�`�t�!B����9�Z[Zb�?�t�C���c7��cP�~��Y�s���4������ �pe��hx��5gM�<y�t��1���(��2Y�t������,�I���&��8�B�тAz�6��,���y�٢_��d5�z������˩��(��|3�-^�w����3��|?���u
������0�Z��(U���'�Ɔ?sԒ�1$Y0�UY���"L7u��;���?D �e{�W�[qJN7�z���@����\��)�̨��=5��Uۉ��|��ۂ�^���q�c��bF��'?��~p�V���q�G^,3�K��x�����s��k\\j<?aJP�7m4��8U?�U��0{�l���3�U��BA�7i4�F��|ұ'�|
z�

P@(�@���cݻ�y�]۷ad�o� ���C𱴢W>+��F4�4���ZƉ�&�/?qUފ�'���̪%%'��g��y66[F�j���9g&C&��jH�����Z���3�8L�O�"��X��.ؗ׮e�_��Y�� 
�*��5�&����r{q���t�.<�:�k?W�g����_�z	N�w�������Y�0�P)�a	�lF`P�
�=P����(M`���u�N	U����Z�3(����S�~����	���s&Oe�?\׈þ�X��7�t!]����'G�lA�sr�ًqݢ r�D���+V����]�;~6��A��~
qƤ�������vU��,�5��w�7�e��0�%��C�q�^�B2�O��d�T��硠 ���UW��}��g��x�$��<^O���g?���7��Ux�nG���ız͙e���X���1��B�uv��\Pb�CN:���I/:�ԒY
(�T��E�H�~�AF�!d���<r�~*��/�jT��x�7�Glϛn�iW�`�ջ!u5A���s�:��b�K�Yu�٘�������L�
��L�
Hf��l7Y�2-��=���%��:����׶��Hԉ��W���h�9US�c�A�=�_��3
z�x�<��g\���%2���`/O����=�Ux^�֏��>¢lXPY�sg�ޡ��J��VqB�|X�߄ր
w��+�?p ^������pN}�v?n�'�o(���z��YT#��kJ��������4^�Y�y
Y�5�T�'��;�n�^|gݻ�o��Fg[���'��o߭��1����p�3��/�}*Ч��5�:�…��IKK��?�]k��U>����vWڕ�zK�?q�
NHH�'q��΋@LRT��
�JA�_����*�H*$?b�w�eL)�lK��G���jW����t��s��s�}�gWģ��ݚ�y��L�|��Ne3�;T|Ɉ��6㱽'�7x"5��h���tu�ǤW�aЉ3��C�T/F��Y��%ږ��
QԔs��'ԑ�^����/�g�
�w�_��#_��c�J5�j�㑑,ܸ�3�w������,�y�]�)?p��$���Ѡ�4
�%r�b��ע}��p��m��u9	gߵ6����r�)�~~W"�y�v�j�-g�=�7C7�U�M���OS���>�i���g~_��W��yf�9�Z���.:��Cy�P_Js�p?n��導�/X���IF�}~����4��
~ww6��p��Q��%�7�>���Ï���C��=?����A����&�-<���p���%���+�Չ��>��_�fbb�n�w򓧂-�z��&2�Yve�6r�ܷ�Jj����L�k���!q�֕>�=����ZZZ&�9��H��Q������p��|����iؿ�Y���?������&Xz��M���#R�{Gg�ޑ�JZ��E�ƽlߺ	s�}�O����߳��%������>QTl��m;�f��3�F�o�]3���p�x��pd�6�����޷�?��x�	<����RC�0Y�z��D��_S����oc����
��7|��×��u���'�~�����U�Nz5�G�ݢ���~����de�>_)�\��G5z����ˣ&���]��r৞zz��>~���~rj��t�M�oݜ�gN�iZ�+��;��C��ϒ���������߼e˶;��z�VsJ�'���"S�U�FxYW"�1�[E�pJ?02L��+�g4 �##��k���k�p/Q��u�����ŋa��B��q
����>��^��_��'`�3?�'�j/�T�0�
H}��&�����BeހS��]'���_�Ͼ��x�f�c���CE��ți��9�?7q���d�hz��&���o	�m��I�Ά�1S�co�������i�a�u�����T���~t�{��C'�K��p��ѸS.n9��y�l��%�x$���L�tぜ�p�
e,��^b���F�w=>��֭�%Ő��?��Gg����s����R[΢�Y4_}�Osn_`yq��a^?��gQ�4��:������
W��QmF���{e�y��+ɛC*v'��)�qڏq5��"E�T�!�/\�H�c˖ͤ����Zm�N�p/�'��s�\^^"O540��)!H�A�I9�g9x���{~>�����Ǿ��â7��P����Of>:>Gy8�
�؉�t|�_��ڽ�7��Q_Ho=��t�B�w�R�s���ѫR�=����ƫ6�_86�kz���ඡI�ݏ����g��[h?�jJ�r☰YLe���r�'`6\��7�<B��$���X�M5�L�9�K�i-����*�
��CO��{q��7�X�2��Uazj:�^~�^���͜���h�=K��!���,�6�/���&�����d�&��j�1
@�#����o��=������@�,��W�����(������z�Iי���{#�GGG���3�rZ���^� �;��cfgf`��y��Y�&��`�A	�:1��JB
	И���}{���n�n�|V���㢭�d�zG����>�8ejq�|}���O�a�U��;`�R���hc>����CC�k�V�㬨�Awŧ��]���)�ɚK�����i�J�߾	����p�_�ǎ;���<x��l��M~$��x�n���B8z=��ÿ}�[055%��2��i��Mm�J�
�����jU�TF ���m���G8���
��g߃�3�ҡW��~���><}�g,v�##y�6�}ZO�8�۞��i�w3h����3��z�����l���;���dž���>���of�S`�d��<�@0��L,�:u�6��4�g''�>���!uǚ���?���H`bp�3�'��S柴M��B2x`N���#R�~�mp߽��[vn�F�P��CNo��+U1J�K3�j��$��z��"��F����d"=&
�O��<�\�l�+wW��q�������޶�0j��A���=���i/^�!��f��>���=�ַᵣ�%�o�6^��I�f���M{�<y��O�^B���w2¿���S�]���3?zf�ȫ�^x�С��^x~na~.4���@�E�u��|�2.M෕�$��9^�h��z}']��?�Ÿܱg������E][�Ħ�L|�F�-%0���K�c�����0|]����E�9�Yz�cf�}���`��(��I5u��"�(����M���(�}�)�����z+��=�k����g�v�Ah�:�O�E�}�J�`KGM��q��~W����������x�l&/,���. �4<���}�w�47Uџ5����d.�c�gF�P%��O�q�27�Ġ��[o���;�ٿ�x�������X����i9\)�UC2iF^K��:Б�a����{�`hh�<���0��.
��.‘׎מz���S�Oϼz�м|Z��Yj�i�}=������r]i3�(8�����m[f���1@_����/������KLSQ���K��X:��g�Q�}��ޓ�a�<7�7R����U�����sO2$�ڊh&Aj�J�&��z��9��5�/!ZF�
��w��}��og�4?	�מ���)~:J��@e�m��.Ig�J4��U�L�@z��rCa0�����^~�M��e�>|VH���=�5�oT6��Cx��'��>'O�T;iɰ>I�R^2(���.i���zQ����x�n�w�����<�]��1�����?qb���ǝw��
�&ࣜ�=�K�tR<~ٳ�W�g��7w��N�)���ѓvl��2�g���&������d����m���^G��0N�K�N�b~���w�����\�Ξ!���D2�n|OD�Q�#���א���:�� ���6Ԉ4��T�G��پ��;���k�FϾ�c�����͞V_�'��'�j��3E�@���es�����ZR����W�?�s����
����'����L�{rJ�x���U�yǑ��A�좣��a��( ���D��x`>g��iǎ��^z)<���g��&O/-.2�4��?�)	�(E�cۨcE��������{:�Ο6� ��GF᳟���w��;��nL��p�u�'��rdO��0�fFGGh�v<����}=��/���Ė-4
):6����M��}���M
 �-��0¦��'5j5��I:z}�Ǒ�8��+���bp��	8~�8���{���n�n��.���v�$���!8s©,L�Sh��mB+'���3��!����@;���3�����;��c�����pa9��_>���w��(dC6 nud�M"�Q㴽��g�P�����|�� K۱};�>(FnW�p~zN�<�O�N�a��S��Zm���K��aF2/̐�e�M������r_hQ�]�"�,P}ϻ�m놆wy�ͪ�G��#i�����^3�)s"h�r/�'��HWi�1~P8�iN_�]����HЃ���]8�?�=zl��(�AAy��QH
��H��p$���^���Kl���}�����:ؽ�^��1�mr�ϟ�i���@�0��Dh5�S����QDu�T�G�@wz�����fp�&����x��18�_/�+G�Í�q����[���]��O̸^���ab��K�u*�"�����M���0�~���)){�p���ܹs0{q�B-df�V-Eapzq~n죰#��Ewoz���j�i�����fc�!��Б�h1���՘�r厸Bd"=������z�e,9<�9Ie��(10{_s�u�磌l�u��O0,���7"��d�i,�"���XW���1�M�5�.4���w�.68*�@$5�G9�=z�(<��CD���ƈ�lݺ����[at������	�|
�����s���e�,,�L�q��Y�Q����ٳ��G�Ư���%�"�����4��2\��H�G�q>_�u(��L��S'�ȡ�a��7L�b��ʊA�l.7�+��Zm�	˖j��ێ�r1~�"詧��|�D�+���\i�<fݿ�9��@��v�lE��nm�r=	�'���NK�+�	Ny��o~^}��N;�즓shp��`�ސ�g 7l���7�
�*��{�ڕ�UU�x������_�w�|�T-�+c/�)�N�x��g�I U�4ݖ�^1��h_��&��U�@�Չ��B<�R�O�&q���]�'�?���&J�(�~���P[g�V�L_��"嘝%a���>j�f�.�Y�����@F��,ua��S�����|�e`x�����]����Z��|>GԆ�a8��8,M%e�ք~<V�i)}}�Wm���W�W
�*4��8(���DƝݮh����M���sܩ�8�Bz���ޏ�=*S��Z(3��1�'�D��Pͣ'�^P�@5�^�61a(L��>�,��K]�f����u�g�&eC��s�d���s�NF6ʙ����#
�������hMI�5��%��;����̀E�}�h\ ����	3�9�P�ټ|��
�6-R^�4=IonO�j��z�/���
=��];���#�脠�H�uA��b���=��|����/Oh=��"
˜�(��(���ሴ]\0qp#�	-/ 6��7�'8V</�ۚ7����U� ��9��!V�<�-B���M+e=#�]p[* ��C�0�5C�5)/��h����T/b�h!���l���H��2��n�o���4p"�������C���;�Î��/�>�(ͅF���0�A'm�4�7��]��2V[��Tϯ{}��m�.��Ob��l� �z��I�8� &�H�饅�
$Y,LBvI�i�Gx�H5��4m�M�����s�_��H(�@���C�J�g�]ʨP5�\A�\��c(^)t��p�i7��\{I&����s[@��ЇL+��j!��^�I�:,e"�	$cQ��ͻb^^E/Ϲ-�_��d$�c�1��F��h��?���g�Y�g�
R�Yq|�O���o�?�x�f�{`k~�&� �2mx���a��_w�,��15=�S�$=]��\����Lxq�*�q'�7�8�'�İqA�ʠ}���ޣ�x$��T�z:Z�@��
=)dAu�W1D���B�@�?�A�, ��P`n�Df^�v�d��(-�
ESʏ�)�����Kx*��1Į�n<C����`�D�'�0��	:��D2Pj���Xt���Ƣ�8�P��ai��z��̹ldܞ5�#+OQ��׉�=NF<oJyն�8�_�T��ewWwO�����w�����1�Kf�1[<3;..��"%�h���A
z��Z����_�]&�Z���:M���`��u%�T�/�,�>x��#��2�(K�bj�&��G�-�Ƥ*l�$6�S\ޔ�[W&�y9,�W/��N��\�2H�,>�86W���
�t�ֽ$�f�Ԇ����B��r��En�Ş�֌|�O|}����C�G�
�3�i�:i�go*��>x���{��;wn[?
C�C�/l�zia��^\\��%��k�D�����dk�#�m��ڻ��h�W�K�#M��*i���/2�Hxv2��l�ϏdPbԡ��j�����$%V���%#iԟ�l?���L�U�L��0	�(J!x	��2��Y�%~F����_gUϫsc�ğ���Ÿ�,X�˚��_W�����9�"H��ۼ|؆�g?+�ߔ���Wוa�ьE���޻�g϶m�7���l���^�#�2c�Ŏ���v��B�,�ز��V�6��J�Q�(���4X^W�;��x`I��%Q�Z�<�X���Ar`�D=��)H��%bJ.��L�%�A
*q�)����u/���v�U��#��k	�T��&U�@T�x�&��1
�����*~e�]z�"vEj�y%� CyZ@�̡��R�E���+��[�;��~S��m�_3���d<��m���{�n�������Mǫ�FI�=�nT����+��'Ec@4�����LN�u�._|?�b2+M�gI�t��ŅE�_\��SS09y�~`#����r�?���Ϋ�&����޸��l�&E��YQ�.��L�=I�E�D�Q=6���se"�i�NJ����
nl����k8���ڲ6@�p̦��73�qY�>�xu�-^��pζ�ܩ�~3�ɪ��}���3�׏��O&�r�[�W�m�18088����[����Z74T�qT<P���{��Y��2)o����p��t0��QW*�0AY*�a/��Ic�$�T�+I�P����?��,r�{@C���a(6���jp�K���t<��_hI*��SY�?�����u<�h8���K'=�ج@�?MmW4�/��+��Ӓs�j���i��,�5�W��7���N�^y�^�W{L�V�J�WZ��C~Oo_�I�����i7�nO��J�R�������pk箮
�a�&����Z1����
7(nm�\��u|��Z`\��o!�u��8
��Z��p�WC��-�{)�Q�~b2�'V�],�M�!$aF�d�N��H�vh�ߗP{�vt�*��4�.�A΍��8*4�D�ͱ����y���^3C��N).����k���ߩ����'�T�/������k)#к᡻0?����B.��|������Ž��ɚ�&}Q���E�++5n���

'
}���;���\�y�D�7K�qWR�d�ljg�
@$Г����CMLq^A����B�nj�R� ��W$�ٲ
�\�Y<��%B�B�Gp;.'��D0!��$oȌ]mޞ�!��R�n�Z|����>+��=\Noߩ��L�U����aN��s�؅�m��tE6Ct,,�y�==ݜ�7�o��4��{F�q=�?��U�,�l�.)&�|�2,N����0����˓\�.
�K��A�@�NZ~c��C��.���O��89�v��yyV��g%��;��������N->�{���l���o�i��rH?�ʧ�.���涝S�z�piq�/��'�v9)�+��9�|~�;T�܏�9�p�����s9�@�.)��N��x�˯;���qZ3��CT�u'6Ẩ��2��&�?�p�Æ=����~'�}�n_��.�0�Ҭ�����,'�ލVD�W$�ϊ�������i�wyB���;��gy�0#3���N�7C���iF ��;E�~���ml�ާ�v��4��37��]���T*.G(�F�u0�6�?��Ş_!.6���:�ר�1��N�{wt�%�Ӏo�i������^�@'�ym�Y����ޖ���3�0�w��\��+�H��b{'�b�"�X���)���l��1�z��ɨ�8D�f�76��4�5(`��~���lt`��7K1y4?�Ɂ%�g����F�m:���p�%���]������G|����	����?��%����h6���!��A��܁	ʰ�܃��;]��j'\qR_���g���qӤ�A�����&�)"�M+S�B��:�;�i'3��#�7��C��Z�O�������ͨ�=y�{)j��}Q�I�1ȟ�B�az9�iI���i�I�$�m�l�F��c~ǰ����3G}�w=mjU/����0�r�Y%Ћ�Y?�9�3�0K�y��d�Ik�^�mbQ��)02@����Q�ηETxi
6��7�J��q�-'IV|�?/mS|e�A n��E����g��"���#��"��Y��������D;y^?
�EZmC�oq���]QO�q��t���W1q��l+	*�7�oR�4���E_זH;��:���������\:M'�6^Tc��m��+�,�›�K`'��&���&��v�b\#(r8���,��d�S�ˢ�y?��n�<}��.̨(����73퇔��㢌�p;��y[0/;��x{7%��5 '��>��m��(#k��g%�����wo���	p[�����NZ�_ߵ�8�|�����9�z�vAn���2*nASTk`�=�a�]��,�ZIX���s��m��HC�Zd�W<�;��CFv�4i�fT� /��g^��&yg{-�H�	���8��K�*ʡ�L��&Uf��,�f��`36�_��	�NO���iL�+@���������*@���l�eoDJS�9'z��6Z�RJzi�f��I�YA�TvE��jd�W4�;9��2J�k~Q�q�xЪ�O��Eh�W���e�݂෱����i �$��N�y{��D�c�6���@�q��73�O3L����p�|Q�_�x?/�W���v�z��"V�U>~��b�6�n���7ה�/ft���gZ)�J�:�?�E�>E�{E��Ţ�,��Ƿ%ŊP�վF;��]�Û
�~��'�^
t#���*nE�oVcl�e-I�v�ߎ!�%ˊh���k��7=���@�n�a(B����<Q@���V�+r[����:�%P�y�-�_`9Ō�m��W(��/���X�7��d�ګ���f���/de��z}�b�y�:�E����������:�l:�v�^���h^��$���h��jȡ�y�:*�lL����mF������6�C��.�!X�A�g,������i�6���M��/6���Ui�-B��g�cx���?k1�_�^
�K����o���C���N;�"T�Y���rA;	�v��"��Y`.��&���AhX�<��$a;1�Z�_�@�ϊ�����%���`;ɜ�p[���Z<��`6�–/����%��E�{�&�X�`m�]E��b�o	��W�q�}��j�5寵��x	��h�?����_��X	���̀q.3H�̧\%��U��\����#(W�J�\�*�_�r��g}9���e��U��\�*W	�r��\%��U�r��/W��U��\�*W	�r��\%��U�r��/W��U��\�*W	�r��\%��U�r��/W��U��\�*W	�r��\%��U�r��/W��U��\�*W	�r��\%��U�r��/W��U��\�*W	�r��\�'����a~4�IEND�B`�upload/crieurs_du_silence.png000060400000436701152455614210012420 0ustar00�PNG


IHDR���u�>bKGD�������	pHYs��tIME�
	 %��?�iTXtCommentCreated with GIMPd.e IDATx��i�d�U&��}ν7"��7e�2SR���h[F��G<`�1P�PLE������*V-���.ݫ��)�^��(�kEa�р�`����dck@i�dYJ)��7D�{v��{�s�Y.��ZO�2"^�x��s����o.�>��ȡC�HI��H���I}L����"��y�&B$$���������w��r߉r�]�]�=��������ȡC�7l��!b&$�<��{"�t��~���.�l �@D$���Չ���>�����G����:��N�}�H��r��x3|��c�I���|�˞�s!����$���:��.$�ҧ�o�S��^������I>K	��"��U���E���a'~b�$�տ^4��:QQ�E�E���(���dY_�㗃�������X׽n)�X0����d�"�D<P�B��w@��s�}%�$!J�9i���G���_���T<����;�l��X��Ń3	Q��Ϻ�I����y��PU���$D��q�`���"��q�ĉ����=�OD�85{�٥U�%"��RG;1�ʅ���4�����δ�Jf/��,��l�s�[}6���K�%D9GN����3����I?�}O�l������P��sO��{��4����=4h�Y��j������P4[�$<��Vk�	H�$O����ڑC�<�za�u�E,ؒ#�m���q���E����J8���Y��1{]������ϊd�����dP~�
ϲ!��2r�!C?
��l�F����+O�('�dP��8�d�$B�\�%)����!5�m�ؓ���
U�s���0�/Z�ۡ����8~���F.�.���Z�pU ��gd瀬����B���S��|�r�Da�D�`�u�������t���;qB��(��u���"�k��� �(�烟{�	�8AV�"òku9 k��;^E�{&T-�����Qv8ك�Y;� ���/���kQ�Ts6[U�(�U�CH��01Rb���j��
�"z��E�}a�$¥b��nU!'II3�i�* '};B��t��!���������^sd}���3fO�� "���@Z�1�}�i�{rV�}c���LU���}�
G	�ȇQ}�D��`����R��D$�%GRUі9Z���va�P=�_&��2�*Ȭ!н�yC�S&F_���e<��B-�(�0CU��`l�P��:�/�L��C�š�ȼ����Ϥ�	`��*�q^�T���CP�|��G�c������NRhOD�r�r`�|�|��!{�mA
�����Ua���q�j���
:U��A���A4'hp�_V1U�<8�K��Kp>���P�?�v>
V�j9�(R����_U[S�V�W�iDZ����s3��x�5G;~��'���|��A:���߃T�ǥ�B�x�2l���.u։R#��9[�����z�x)5�;�W�5JU�:Q@aI&f�`Osy�_�A:�$qH����?􍆪םla��1s�|�|{"�-���o	�̹�䡁 �(�H����H��>�h��Ӕ|��u��<�~ЋHO�����@D��#�\aW�/(�+=�{�sl�C�e�eG�vN�*��A:�H$�K�D�w�Ya��k��'��D�(	L��0d�[��(��rߎ���������l��\�J��%z�b%J�q�yHoJ\&̑�
������'�+e���x\^K�A9�^��F�@��[���NZ��*y�y�f�gdЅ�PO��%��
���sJu�q�z�|�|��n^H�F�	�5�f�i��) � D
���ٍUl^ѱɠD��0��̜,���+@��a޷�/���R'��8!Oe��ÿI9��{��5G���9�����
����;�!����RI���$�V�k��|ʵ��3OzP>nF]�z ���-�LS�)i6Ĝ!kV��ٙ`���|?R�e���`ٖ��",�u(9�`'q��fY$�u��=k))B�)I���';}��f 2��AYI�>��^+j}_�2o�l��u���������*5Güm��H
�f���DE��Y��*ɤ9�V`╘�E=�D�s��#���VX(���]EȞ���A�w�n;X��p)T�J9s#"
�������E���"��
��XDz+	��	Gh�Z���*>Ӝ��ɇ�+;
k.HJdp�P�v��e����t�$Q~qg��E%.Ĭ�a�{�IA��5âO�N�g�l���B�����n��"��Z��<�<����	Q�k�����l�T�4k��Ӫ�t�v���ڻ��ad]�WZ�
i@h�����-��q&��FM�̈�0�H/D3������փ�����|F��й��4�^�u��=@$Z9�H��q'�"��	�,�;��ɶ�}��'��ر���{�R��<9�=T�f�w��	��=������e�>P�	h��٤�Ƃu�=�h�U�\�ovȣj6�IRJ�79BҀ�Y�t��fT�4͟���ׄAīg�⌁'N�҇#8�c���93vr�V�i��Y� "��̍��[v<��=A�&C�f�I̘$Cۥ�}�v�v��8�Z� ����^�t-�6�hE�a�ƪ8�RlP��u��@)�I_3C��T�bI~�d�ڲ2���)
R"QT �kQ�h��D3�N�rK@#)5 j���;�'^XI�r���ٽ��n�y�V�߻��e���()1'���������g�΢.:��@�96�Ұ~^��8a�K����a����ҡk��E��u�Q����Z6�@����C�D
�IP����.|�d�z�]-@"]8�U)XId�Ě�f��zV�e%h�I/�h?7����zf���]�k)D�i{���4��@���g�^�}���ϩ�v��iZ�sNJ�R�E�)7B�B�%�֡l�˘t?���4Ư���J(�?sV����"�C��N�\�>8|����‹2�K�Pi����qG@n!҂�ы(D
{���Q5��})���#�
DN�$�b�d�;�i)Ĝ$%&f���I
��*Ҵd�X�}�$I�
�k��|!z��r|QhxL	�����zQ
Vs^\VG�~�V�y�J9I��R�$IH�r(aS�ن�dZs.�"�{��sV�<��=�z��s�l�U�'���٘���	s�w�U�����}('	�x���p�����vnPG,���Z���o��.[�>uqv��B#'<9+d(Z{��C�\�RJ�f�P����(.aɒ�D��QL֎)��*�4i$|_I�
,�O��)|]fS����4e\��w��iD�%
�A�x���~BR�	��
�+"��_+((W�m���
��
sq���I�V�>T�����Z�4�!�
���3!%��-�����H�&�8�peT�T��ьJ��`��B?���}�{��O�+��[޳g��>u�h����)���g
DD���Ϟ/��ӏ�:w���8q�?�%���<)9C\�B������{� ;��q/�D��B��pW�ޞ�E$Qa0ha03��j�]�!wY_���!�Ч������]��l?�(�6f9����͏�8!s����0��{0�i�S�Rx������Xd������e��[dT)8P��.��A�7G�$C�?��)\	j�O�u�f!R�`a���ȥ�-ڢ#������ y!�=��y��_[�d��>��"�jb��㚓p�=��\uCiǎ������g�Ԅ��2�5�H+@K�eY���LD�7��H�v6騦~�d9�!��-f�@�\]�����Ç������'���J�v�g��,	F�a�"����HJ3	3����x�ln\:�OggϜ>s���{��}��{a6�D0��!%I"����c�ej�W�d��U��U�3(	�'�Y~̃�z��]c7�3��?[��E�� ���k��Sq_+�u[�q�q2�G�H.�i��t�th[�fT�r�*�ڌ�w��$PC�"��n���� ��_^�y@��G��tFh��	�N5ٞ��6mCd[�-M!�E�DS#z�,y�ቼ����S.aZ_�lg�i
Oֽ����%
�#;ޝ����`��
=�3ƈ?y��0��0�L���R�𖢵g�{�T�������"S͌��^�d��Jb��{2��F�r�J��؅ݍe�-���IJ�0�$��� ҊH4Z{!JR�3��.Z��l�#�T����%����:���[�V�֖���vj��0�c�(10B��1�DD����g��~H��0����0�=��$m��?/2�?��#gN=v��{�z�^$����a=���7�{�s^��ĄH��̔���@��^���NJ	�O;|��Sy#v�O�PLg򀀹\iAQW�sjٛ���93z|�I1�oOn`�J�_Kke
�κ�*+��*m�D@�ﵯ)�Q��ަ�����e���b�;�ɷ�uks�'�NS^���Z�&�m6��zK�)�lє41�"6�b~ѣr��BB��6D��ϓ����@�F��d��zŝ�F���#`$Dz4�h�G�loo���l����w�}�'~���G���!ɭDe\O�Ѷ��`D�6I��4(oC�����cR���x�ĉDO�E�6����i�������,���"�RJ�x<M&��7?cuaa���o�p��t���Az��O��Z*e�w�i(�m3O�[o��{�^q���7%�cK]7�n������k[ 0��<D��6l��VO����z?$$I�$����{��ܔ�t*�l�f���g�6.]�����G?|�ϟ��a6�gZ�2T$�A�3��]21�����/��<3#]��4�WϞ��{��)���S!���rr�3�qU�EOHsS�lV��[)CN��0"�u�Tf� ;B}��˷�0��̇�z��]�
�!æ��Z�\�y#�݌����Vi�Un
���l�����?�?���|�{_����P�i��v��m!�"`�*�M!�RJ�D4`
��p]�̽�$�A
�����>|�}lǞrd}�.$8��A%ON�m�n���H��Ȓ���J�ۚN�_��������u��~�-���g�l��g�<����h��i�*y��m�X�e�S�Bh�b��[�b�؉Ol�l���8��8-��N4�!%���FP�a4�N��d�M&��/~ŗ>��g��EW_y��i�…s�N>z�?��?���|���1!|����}��nD�V���h�]w�3���ر��
�ڴ]O�������t���db����&��N7j�k��?�d���w4�Ðd6�i�=���-lln`��5���3��z��'��9{�ԅ�.l��C�y����lAxjP��`���LI��8F39��5Ȼ ����[<zR5Q����A�&�^
c{�N
�ܬk�z�W�u=��gc���/O�z���P���@m����Ȟ��z�J��"Ñ=��K�<"`$ڮk�>���w�������
[[�[�_{�ٶ
RJ��pM�T4��"�-!�4�t����Zw
�V�C��;P����~.�E���!��X����O��
���~�{����mOh۳�DhL��Eρ��jR�7������JՖ�O<��ϻ�֟�v,���6�mѶ�D�@�%��=�e��4ek)����\���	
��f�"���[w����0&���]7M�y�m�\y��W��x麥�U�1b{{K������O�6Ο=���|�����GzAtv�'�	u�Iw͵7��p���...K�
����E,LЎZ	1P�	�)� ��*���]���T&�%I���l<���2`H��D���a�4��O{�ti�.^���-����S��s����C��p���tk�'�]��(�k
͔��L��"�m���5�:HW�� ec(�b�w�������ge����4��Ø��e��F|}J0}�T���������NI�}$��8��&]�=�p��CUPuI���'�}��lnP�F ւ��I�F���q#���� ~�ay�����%/�Փ����}׷~�7�ɞ={�����ܑ���0�Dd��N%�&�gNEd�i�1Є}��|����9��,��=�OѢ,���ˋ�y��y�F�AK�̑�RJ�Ʈ6�j���Z-{�U�ZdE`G"2"���_?th�O��ϾG��~������k��_��@5pa�s�m���R-oZ{aKR�Y-{��-B%��d(�	�����a��e�N����hA����0�Ǔ��}�9z�7nMgW]��@��Ξ��]��[n���M��cm7Yܽ8��箏l�SXYY_u�О[�������|�U?���W�'����5Z^Z��xm�P�1D
MD�������0�	1D���y��L!�����x@�_�1B���ߓbd��Ĉ���:ڵ�$�K�Դ�h4Z���CǮ��}�����>]�p�B�/����ǝ�懮�] �,��ε�w�S��s_P=㵕�"e�A8�`Zsr{����/etf謞�Kn�WU�e7+S̪����8~ℬ./ә/�c��������R61�[弻�P�b�m=eɍ�aZR䯕
"%
�#u�S�.,,�S���_��g��s�5�\���������pog]���Kfcc]ŧ����X8��S.s��跲��k��XYY!?6gϝÙ�kuy��VVhY�yee�֖�����eBUU�T�.��/]gR�h�c�#ߛ��Wwrf��u�a�a9��#'�uT�����/x����z&�C��ĩ���o.--M�Ǯ�n���!���emɍ}�(D�I�?��܎Y��a��(^>QE��ֈ-Rꈨu�:ݎ�����]{ݍ_��gݲ��;�={%�@�W���O�_��V������S!����+�_�~h�Бk�]���p\���d�u`�|C���
Kd&b��f{
q�3ḱb0q���4�93|��"#A������ SB�0�"�,�,52����,�[����]ZZ=z�ͷ|�����>���N>r�ԣ�n�]ׄ��1����6�m7i����L<��6��z¨1'�$����Z��CƼW��󘽤cA�U�}7�ԛ8�ġ���0}b(�lMT�D�{[G��/���غh���R)��ѓ��g�T�ZW�꣬d��C~�%P���"
3�_��_y��~��/���.@!|������뺎3)Q7�d�� ��̓�O�%N)�|J������(e��f����B/3�E�}�PI�$���˹��yo)�\O��OSe�I��e#�8���5ͧA���52X>7~�D�9p��/��ƥK�w|�w��5��ر����������Ɉ��Wۋc���׉h�567	��&�	��W���I�LK=X�k���[�}����[�s۫_��_qͣ��…���_�
~�?�N����g;����^L� �q1Ɔoy�_솛����v��NjK�X\\��6������)ت�`��X��H�`�8�1��A�U�Y�4+��ۗ�T�&�I���t�U��c��m�da,��8�KK�+�޷��6f�ac��l{c�9��ǝjO�R�Ȍ�T�Z�٭rБl�b�^����
�����;gϝ��s簺��Z�̛�Y�Ѽ��\��!O��*ٍ�����[\�䰺J��f��q�YY]Z�����g?x����o�����29B���+�<|b��#T�[:�@��g�֍��ɪ涪��BNI�"M��	16����w߷��o��a�C�����濶d�jC�ap�옭^Z,E�'=}�� IDAT��Z��@`����xQe�Vc���b�Y5�T�`���T�E��g9BQU����:���0����!M3�u��q)|ӷ|�g>�W�<y���>4����x2{�����Ɵ���O2ȗq���.9�2$(���mt���9{�'�<�&�x�j����`�9���[͑��\y�cW>��I��|T�9�N7^
z�!L�Μ9�;>|'���Ɠ��6�v��5����4�x��:�Gc�!h7HcR(
DP
��� 1C.O�0����f�����q"����+ն�,޹a��d����ϊ{��zK)�XR����z�0P7����@���?YX��U���ᄏ�޻��s�]��Hhڶ�����~�݇��u��.H-��Pt{"�i�<����{2nu�yd}��X"�銰Y�Qe�Xm߲�}�萔^�:���Ո3Շj�*�0QqN��2��	DH%
"bU1����`��`�{2Ň8/Ƹ1d>�o�IG0�#�L��;*V|���_��_��o���hyyi�e/{��?~���
Y�)"\%a>��$Hc<�d����H����up*�Gs�_&�#o3�U\/���,#e��RTO�r�{�o.��H������KYr�H�Vp��!��T����M\uՁ���<����1s�_~����m�,/���E/:��#'߿o߾h�v#ú<�{��LC�P���g�T;^OH�lH�B�W�Bv��%�1���(쳾���+\}é�g�?��i׮�t����K���q�!�"�i;\�pQ"n��h4^M&ci�FD���$$H43�֮'P���ɗQ�>�uE�-Y&@�_����Tb6"�����w��.�,Ae����:qd	5M#]7��d��4�+���ڽ犵��ոq����S�R�4y�7�)\�s���S��sك�����k������9x��D�ޔ��bb.���,��
i��bF����ܣ���-ė�$�����̹s8r����_�����o�B�q��R�r(L�=?�y�+3c�Q��b�`�+4)����.n~�k^s�/�}��w��W���LR�3�x@��S�l��H��<?�|*\IMH�$Q�)%Ԍg���*@�s2g�g	�(K����G/��c_�e�E�>�i��bHF\�?���_1��z��2���S�}�/oٻw�����?��w����hϜ9}�U�z�ᵵ��7�ȏܾkq1�ɭ:�/�*p��<�O�\E[�!���P�=1�r��(�{=�9���fE��y�q7�|�ayy7VW������K�6q��a�]��o?Ο;�����ƣ�0bf�f=q���	4��2���y���6�<� !YŬS%�c
)�MBl�рxﱚL���"	y���f��5p�3"A ��@��)K0�D!���i"�d�phiyu�޽������G>|��}߇c������j@*ғTAǤ"�2�z��
L�GLD��L��e��3�}&wf&�Hf���":�G��"S��kvu��
eu�iSJ~�5�)e(�)�6K���#�\(>��5h[��*l��o�����@X$8�g�ؼy��^���l�P���s?����}g�zED��]8D���^g>�bHD���3��CV�t0,�^�*����}bS%�!n��K�\�����gAg�[J��|ִ�G6����(�����R_6���N�+�$E(,s�=,Π �;K2����9}���=��Y��}�0�N��m��^��~���c�z=��/�������~���{�u2��ya�'��
�����YWF�փ'򙛠2G� jC��ß�D:t��9���$2��9}Z667hiyEЁ������m��hJ�U��0�}�C`�0 Ĩ�9f����!7�H8� ���Md��,�Ӛ��1�f�I@b�B�]�˺`R�l��e��@�"��1J׶4�&�ht�®�=�>��w��?��c��ܜL�:ܶ�S�X� 2��@,�O�IV��@[�oY�	u���SY�.m�^碐$�^�9���^!	��R��:7�����n�7��z�ζ|�U0�6�Ov��T�J��lC`	e�T�u� .V��B���e8��J���X�����&��-X��E	�6vx��������7��DD�v����#�Ju�}�r�j�7���yX�k��[1*��<[�
�5F%�$���b{��A�Ք<�l��������׿�5ʔ��F�Z.�1�Z��|�V��Қ�Z���(�ɸ��g�f�	����:}z��K��k����ͷ<cLV�{5_���9��;b���>�§G���<������|��S�G���<�3�xss�9��#���6&K��zl���G0�0�����0YX@�}�#��0 
��0������2
�!!�i葒�f��8��.?~�X�ك�P��$��f�x����d���Z�ZȟC,����4�M��Hsз�W
�3111ж�4m��/�Ɠ+�����0�.�>ujVAO�\��އ�v��-Nʬ��Ay�E���5!O${��Ir�.b���":i$QL6��6���=*R�qR�Ũl?��Z���aBR���$%E����Ϸ'c+�˴��Lk�˼��B�++����U�3�[�{�>��>���LH5�B'54�Rg��]�:�L��u�F�j��gE���
'O��~��^w��B��N�>��w��lӶTAh�b\����$r�C�|���h�+��;م��������n+���5�
��$2nA�̗�T4��(��	ў�*W9H̭i�[��AW�
�ZI�����~ �gΝ�~�o���k;~��-C�=^���=zd��������f�=�J�A��U`�aN"UM���%��R�+�#��L)�9�䎺�'�F�aMz�|�sRDfٝz��O���_�sũ��%/�F{$	������ܴY��c�n3���fv�p��hڈ8�V�4�h	j>�"�� ���F�bFJ���4���̪�꼴x��L��Ο`�,�J)p*��淔
���XA�@D�f"�1bԵ�inx���;�����xJC`!OW�,��S�ܥ������I]n~������HOd�\S(���U�7	�n����#���h�U�gz��Jl�hj�T̞�����\""��<Q�6�H"���\'n�ZWo$���F���L�"�RM] �,d�y�V��%�[W��fK"J R�6C�<:#�vy���ntITne�afHJ�'f��l�F
|�7}�
����t���*�d�$&So�N64}���v��aSSH5g�*�
����V')�5�Qy�K��vG��}-z����sM1O(������xR��
�v�r��	:���}�51�׽�~h��ED�]��\�cA9��W8��_��Ë��m�u1�4��뜧��g;x��u�}����s�s@V�X�p�:�=�d=nR�׍���R��KK|�Mϸ����C	R�'V䭺�KY�B4C��&$��i�lhD�4HCB�G�M4�;�#v�[��ac�L����e�3#k����
��~��8礔L�P�Q�*�F'��ʴL *�48�o�QZ;�!���i�}�����v���{��f3��t�v��1gMar���>��a=��t��!���}T��a��W��:���yޭ��X��Y1`���:�F�l��^��=9ɌY�|���=���>>'{�:1�`T�!Œ�j�_�0q^X�O
�f��2����q猤���X�T��s+M���ܥ翃�7vX�z4�n��X{:�����۟|!�p�{_��W��s��m�L�9��4X�D�G��/	r��'OXj��S������*�� \�x��H�C՞���.k��]fYzӅkQ&��ָ�yfU%I���R�VE�sf���JbUK᰹��|��!���y��'m�4a{{��P�)=�R�k�Mz)&3��ޛ�%6���[V
yΤ�A�a�T �ֽ`�Y%���)?�[�׏^wk�����(H2�$%�VQ��I"n��+�3mMF��Ĉ�l��i0k4M�#B�1�n��"{_����ΐfs�"7�l��L��;�z\�0m�X�&y��=\�" �	��J�d���&�� !4��������[�7���ڢc��w0R=+�I^�J�&rQr
d�H�ɦ��>2�e&ų���W���n�'��6����3�:Y���z��y?>o��#>��N�IEʰ
���Y_�B`�L<�}4��7��f~�ͪ����x��P��2yȯMT�wQ���o�������X*���]��ɉ�����ڈ�z��4(s�kX�*��"���w��y�c���{�m���K(^۾����0�
�9��%�l�-�T0HJ"D���dQ8�]�SNt=@���N^UQ��:����5%�"S�lA6��)�r³��{���˹0����.m'��l�r�Kۢ)��P_CD�t�>|i麮i�.loo�]
W�:�^�a��E��"p	"����Ks�.����e�y����D�M6ʌ�O���/}ف��`:��md�0ȴ�.��X�eM��&��%��k�X��D�!��n�ڲ�-B�CǘMA�q�F6Y?Y0&�A�CQ��h�8����5]��
IŅMt.6j	���̅g��"Yr�01��Ą��&6
@_��?v��W��~�O��KQֱMqd�G��n��Hx����d:��5|}Ć
�5'��B��
ϫ�����-Ýgn�E�)���Y�A@��l,�W�9H�$�Z��4�& 1�����.�/��=;[Su�������Y��=�z�*���׏BN�o����f��)�d0��D��ccQj�Fk���(�$�o򙈥�l╗J��c���ذ6\�ު��b� �vX�*�$����-������ȑ#�RJ!��d��$Ks�f�P��؍jĝ��ˮ���">�7O����@)�b��㥴's�1—kq������Yھq�>���j`�ι�퉵3������:��9ZM�E�(��ޓ9V�Ξ�D�83rǝwl�af�+���Ν=��\�SR�GEY��@��]k��Y����@,[��-�u���UFE���{f�k����Ӳ��!�������W������s�g�B���]��*Q�x0�CI�$5��坼T۞�SF ��9x���:Efs�
Z�f��;A�]��BVρ��56��v�.��C�ݹ�/��j�mC���fҞ9��^s�b�31]W��HFW�C⦯��o�o{���~��)���l��D�>ٗxv��m���X[���ge��p��A����UY,%3-^֥gX���xUB��3�k�3t��̳Y��͙�.��罿D��҇�L����'��Qz�ʼ�?�� o�z�G��!�eh9����~I
$�@-3�F-\d��t�ey���+�:p�Xߛ̉��	s1��
T�u��bϘg𚇵�VJ����Tq�M���f$>��M''r�̙�4���O��O_��7�����,H���>�)����d���(#Y�_{`�"=���6igOb*������d�9Ѱj�Q61׻z���I*�;w^}�� W�?�Z׍����*Y����T&~U����3��[[��dҬ,/�"B���,���[�
�(��+Y?w_�	2�s�m���cr=Z�Dbn������5v�<hRJa߁�g��gR�ݶ��5��F�!��UT�$�l�/�f��r�j5j��\��'vPx�|�D����Be@�o�s�AMĘ~`�w�d��8��b�4ʱ���6xX
Ib����D�&2(�ʻ�̫� A��I2�UW^�7��k�~�[��W����b�ٽ'�L+.4�	��!�~��6S�!$��?Sb�����6�,��S�s�|@�sċJo��DT+>�/���@�TI:���u���dh� E3:�4�y,diD���|���᪪D��X�Tf�-�����˹��Q���M��yW�<q(�N���&5Rh}�悸�
Ր�5zR���PA�6ѩID����Nu�x�v��+8�r���֐{~�۷�{�;�q�ox=�v��,`x���d�.�D�jH�F--2|&Go���.�;��Z�b��{���]���xii5��b�J�J+B�)�蕳+d����,I��ڂ
�yMU�����P�Ƕ��eY"�������B�k׮.�D�0�=�H����Źү3/X��|�*�+�Y�*��_�E^"���w�
G��-�\?�|ӳ����N�1�4���ֈ]��^A!H��ɞHI��"�JY�T
-�¥*����WY>�4�P�J�a��D�*:2Bhm�E4�|ʕ�TmXoOJ�Z��h�7GF�@�A1Z�fS�H�
u	pž}x���W}�7�����ލK6�h���<W[���o5�(��B:���P���#ç��,n@P�8"�T�`:P���j�mCE��D�v��IJ�t]�>������Z��"��Y��x����obU�.d=%Ѷ��P5|���
���f�������<��ºͦ8�o)���@@\H4�P����%�g\׏�…�#��Q�D�Lm]�|�+Ӈ"�+�����HK�Yzc��
Dڤ�ۖ]�czw��6�JFe��Ҥ
�c���}Ӕ��ٳg���ޕ��YQ��TL_�y�^����jb*rW��+(����(���ON3��@T$�L�;��f�k%Cạ�l�l���蘊�"�d	���=���x<vw1AJ�!"o��m˨����v�嘄��$��^��TM&��IP���YP^�҂a�M%蒏03
�ظFI�I���n��n~� �2EQ�$ϊ�d�/��7YE��4�@�Xl�q��&u�c���T��J�_5�X�5��U�ග6�e�X�����~4�� �G׮w�%W�h�g���:Z2���D���}c��2��Lm�a""W��O'��W��g��{��ӧ�v����ڲm1�9�6A�g3��� ]2�Q�|��3���t�4
��S���cX<s��֕�1���s;�~�/|���+���/^�t��_�ʟ~衇6X/�!�C����G<HY�Q�`r���u'�޵�$D|��A�q�i乙�5����k|.WM�F/s�r��"l��Ye.N��󯤆�+���[2s�s_���|���K�`�|�k�e�qJ���rfm���
G�%J�N�7��̭�Ԛ-�",)�_�җ��oz�k~�g~�ݿ����d2�!}��w���G^�����?��w����ڣ���uRVF��ƪ�p�…���=�޽{�=�:9�	p����a'�2�����ԙ�7ι���>��bNe��bx?�N�~�/�͈���ѷ=�Y���D�|�Q=;�B¸C��–��Cvm5�Yђ�T��	1�:�|�~�% ז�v;ǽeg;Qr�tg�� ���U�Y+hЂO��.Hz�gV+D�T�v�LT?�=��ƛ�9vӋ6�g����#SL���U�]���i�YG6ڰ�%���R����o�����V�M��<W�X� �`UH���I���q��U/��� m�$��I;����Bl����� �-���i�6���C6A�64�dm�J����U_ѿ�{ǥ(�蛪��m&}S.P��J����`�ͨT,����T�y�sn�D�
�P�^�<|��B���gHv��r�,�b?��u�]������k�'�����o�������DD���4��-%�D6�Z�Dh"�B�Y�ޕ'�d:o:��.;n��ֱT�J����vH���8U���QMCѐi���bC�C<�֏�D�=c)%r�R×eC�ľ�V�½R.c:�.vMP�P��U������u���֧|䑇����~����Uo����w����>�{����
ox�-{��]�ٟ���>p���?t�U��Ր�BX�>�\�p!c�� IDAT�f�amm�Ȳ|N�|� �zJU�R5&��"OD�
��~��ٍuM�:�<i�bZ_�5��=@����k�l�"O��]?7�%{×�P�8���8g�c{{������g�H�4!������V��N�G\FC��x<�u�W!�0�mM��{!)�6�s��3���ו/���O���ʴ�% w6jd��~�k�]�r些�����f� r�$�ٷ�����~��ap�%͹t���x%
��0 �RE��^�ʊ1�h}٠	'w�㒩��d�,�gN�9kZF��}d=k'���=W�\I�گ�����]h�M�u]αi�a4mK�d���0�o|��^���w��G766B@U��>u�I��e��U�>آ��5llQ��)�^�����0���]O\9w�{�Ʀ�&�h�մ����@Z�{����u��zA�,��F]�?���ճ�:�a�!-��]#7��=�ԟ���щ�Q�$�Q]��
�fg{0��x�ׁ<���"W+��'A�9ׯ�yW�7TUt�Gj @�Q��A&Q�&�Z��)��΃)_��;C@�9�����[��i���?���~�����6�?o~�W\q�.o߼╯�w�w|�� E;�뢜2
i��t�MK]�A�6�~K�RJ�u]���!�p���I*��m�z�)o�}�L�bL���r�
J����}�
�类��Y�@Ɔ��7�י,X�mT�����*��h�/�]��;���dܝ=wn�_����O�ף����l�����$`�6�f"2ua�=�E(s�k)
�;gw+2V�	ha0Cic�N�������$����Y���BC��G$2��Ykv�l�^s��#�nx��K�7�J��1��u�T��R��+��e���SU'I�j��(!ʃ�2�c�g�d��\C˦a�k,'��P
f��Gb�"���Ґ��%@5�sEJΟKao5�$b��z8(��SL��v��
�MGh���C۵���d��,,,P��;�4��[�{�/��O�Bk��dnA �a��9���C�ڇU�u�
	�����Ff�Z��RJ�ov�A�v82��=K�ٶd�Zr� ������!�y<�Bm�}N��œ��}��$2��lv�zA�hz��jM�r������w+j�r�]eh���*��}�J��T���9�d��ʡ��Tqj��<ƯH�\��U7W��5	��N�B5Qo�b>Q�=yMؼ��,i7��Qk�<�"ͮ�8?~��Ç�y��_~ݷ������=�9���}�5_��_y��S�s3SdFqf��ۥ�o����7ݸ��/}����N#=8�k�.~�;��.l����{��o��Ņ��G.�U�gG(ס��3��	cP�˙�ޖ����/f"e�K���S6���=�裳�myye%V��y#�B*��8�������_���<\�w����{�so{�o������E�p����+�_Xܵ+��q�����m���KR�a�{��(ʎ`RK�G�e(1��e��q�ϰR����Y��gh�\d6�@�
t�ް#����F]9zݍ/ݜ�nba��m��9x�ɞ�4��t�+�X��j�"YP�\Qr�f���-(R�x��V-gq#hO��$�ЇJ)�3!��&HJ8S(>��Dd�$���l�2U�FU�3�ĘE�t���6���v��h���ܶb&n�Vd6[Y�j�������G?|�ɮ�:x�L�qh��{u<���� �,��j2UL�T��V.C�(��э�����Z�(�v�2&�O��–�.@�S��!��ݹaA�kk�mӴCߓ�������Q�iՁ�'n��'v�_�-
��	_�C��(*`���S����UE��*g��
�J��2��K�V���k�Q��q3�՚T '�q��[�RŴv�L�)U<��+ۜ�ǃ3���u��"(yF�'l{��m~��/�+�	]��yӛ^&��C��v���ň~�3<_4�����~ѳW�譿����-z�w}ס�������ɛ~�G_��o�/?��u�ʚ�*�����YQ���ݯ
c][C6�%�H�f�$t%y2
6J�q�W�����_��=��c�ۛ~�#!F�1�$��C[�nID���G��_�����K^��7?�{��[��]�xqKKˍm�>�8��	3c9w�\�.�*1Б9���\������筀J'�Y��\5���'#�4R�V�Hd摈t)���F�g<�e[���}2�$��v�+)Ոsst�oݶRg�Iϭ׬}����Ȝa_6�rt�T�leF!H�HXm��}��4+���)Y`V{ڤ�"�
b��֊�� "�ބ��0�]1�>��4P��x@��0C?�����G�+�߶-���i4���5pW��ܴ�yi�o��da���[N֏R�]
:I���L���3X�*EY�X}����
>l�08˲�h~덻49����e(}cD�F���7.]�K�6�����G���ٺ���G���� ����/��yؘ혉
��O$�>cIs����E�'yͻb������SU��PdE���X�X��⒈�y��Q��,Ud�b�h�&�]p�{�LrS�
�ޣ����<�6"��D9��Q�0�-�����>|h/U0��f��u��y��9R3�0��S�{xֳ�h%�XP؞+)%^[�=�sBϽ�y{~�w�!*���U�K�̐��bnCv�/����פ�����02K��}쩞3�ٽgO���?�յm�[$b��W��~�W�2�ڷ��o<r�G>|1p�Z��b�<mɈW���o��[��~̧���4M�'��կ��޻�z��qw�Qx��ǎ]�����&X	Q?�[nYdf�~8s�̐9TFʴ�Ipٓa*���ǃi�$s#�g��$�5�y>��sIփ�Pi�^�F�"����/y�+_�9ퟓ1�`��uprx:�u�A�#�JiQ��ĦE%C�4$���!����h�C�t�..��<�@�u��AL�<�C��B�o���	���8,���������f&HR��'��nI��m��0����(�""��ϝ=�9�0�9{��k���B?�}��4�I)U�5��n���ތ5z�Q��s�
�ӣ{��c!�lܢa�>Ʈad
����
��~���(��'��p�BJ�.�?�������t��W/�|��Yfi���8R )e����%�h�6���%S5�]j�z��ze��^63��9��T�w2�]g\UU��Kg�:�ׂ)*�o���s�R�
��+��~�v�r�,j#
'�"O��Ot��W�\����f�D'��j����9��+��x��}������Q����W��Z�|u��9RKQl\����k�.y�Ր&n�6��mo{�;��;�7�udfZSI\z�l�cn�:�p�5]�{��dž�iԎx�0�Ϝ^ye5f��ÇO~����~�-����~��?�����No�������¤%_��:���~�d2	T A��~�dz�T^�U_}eT49~��������|ɗ��?�㷉�=ztq&�!"꺖z��MX^Y	)�{�")�so{�2ÐΜ>�E�0lnma<G?��\��s�>Vf5��O�>���d�˷�]�&�=9%ʌHD{�J��.]�^��W>c*���1�03��������2���iж
��Cۍ0�1O0�,`a���d��������mס	
blT.pT��Q��|��3�`s��*p�;��xsf<��f�=(9��lJ2�'.�^�Ovn���8U���Ǡ#)�&N&R����c:�b6�a��1b4a<�`qi�_�W�ٍQ�a��ږ��C=����6�~�_�p�
ϸ��c��N��k�/뿪!�%c(�p�9��	Yn^�ӗ���Omb��oE!��P��j}�J/�C�s���o�QJ������¹s�<���M�q
d�D#5v�"�Z��=I���.�AI�%>.P��76DԤ��^y���I*?fU^�WC�3����wc;�-i��N���j
%pj�J�TF�$��(�SQ3`,�H���hl��XD�T=O"�D4&`,"�~L"cMD��g 2-&>V�&L 2`b�Ń��:bIi��|�H;�7n������u�{���r�\D677����N/;����BQ�0��Ǫ����ܻ��$��8�A�!��/�w�ĉ��������%W�I��Uh�@�s��ۑ�:f�p����--�s��~޾��{z��`��(CS�-*��Pc�$?=јh���|bN,$�XO�n�F��� HG����u��>���ڠp��r�={vY�]��}]���̈")e$���vs�֭�_����O���u�795���ٹw����WUe��c�����K�(
_w��v\x���˪���G�e <?4��1)��@�w�}i!�9"�=��)��p�g�l�ر�S�_�C�DD###I��5']J��w����h����</���(g�u�t:ݲ(K�Y�D�A�����m���Dgc���f�t�
��V�u���،����ћ��ۋ\g&/.,���uD�tҼE��)*���ڙ́H��m�S��օӵ0I�䨪,P��<��M�5��-����'SD��uO�L����3Y���BL��Tb�$�2��`=b'H �6�DC٭ʹ���>e#:3Yj��V����`�	=]Pvآdx��$I0�?�e�F�1Ҵ��|�2����(R��T��-_��c��_=�0�x�ν �_�drl�� �F�ID%K��P2�8���Fw��줶=�A�
��M�
Qc#u��I?�o��!&���puQ�Y�R��k���	�>6u�i���3�<s�7����
���~���O��T��"�w7���&&*�H�ҧj��4OܡV�VՌ��v�z�d�tt�#�r�Z�P�)c5=�<�u��0;p�kR`ӹ�R�\��]��]������
����GB+��Ǵ]����%L�2����J�h<2jc@h�+���m���Ϸl�x�෾��_��W'Z�V����-��{�##�;���=s��Ѡf�=;3W�����(
EUٛ%�^Y�Օ�_�߯��
+��[�>46v��]�DǑГ+�%�ݦAź�\��nW�ى�����.����9'��yMǡS'X�e�ɿ}��^�����'��7���ARW�������6�JC3LӮabr�B��i�Z�oo�R҅/z����p������F#	���o�a�}���EYp��!C:|�P6llEa�I�˗��6m����٢�s8׫�e%��_��Ew�u�W�~꩒�_�A1��(��3��E7��Z��X���9�[!Q�O����eo?��A?i^���]&t����`I�(D�s�#�=xB0� ԝ�b���/��k��P]a�e��Ա�Θ׳6#_�E�ͨ&r�Q\�C�Z�Zʘ����$	�~'R3y��RX�g�M��F�r=+W,3J��V�s	�h&Mb�ڵذq=F�� �09=��c��vRTe	�Q�b /J���
k֬�����*�l���#G��^��!3`���N���p�E
$~>#l��(K�U�ó�:���-�B�Ck�'rQG����~|��\�:��U��z�u�ݳq�����Kj�Te����Uz�.-�L�a])�1���KHj��r3ډ�{Z�-��}-�r ,Kܤn�!;*#\f��ST��
�������0�>V؏�"j���^Q�P`߷�j
�ެ�3�G�}��7�]K�Bo��)�Ƨk����t��·�,�v�$Ip�������"9�B+b�3 C��\�������v���)eEB���y�'>q��h��rLbŽE��鵊	�1{�k�~. ����K��j�?�g�r�)��ۣwc�}o}�u'�x�
I���+Y㝇G��?<)pY���
�NN����`�׼浫͗��o|}��<�D}��E�đW��K�dhfv��
7��,ch��/xa_�>��<�0��\�q,���>���'w�Bx�\#ڛ�n���7�_o��(�V����۵�)�~�,J�f�q�u�uV�B��0�$;�ȳ�0�B?@��PA0|���ݬ�Ue�,�TƱVhK�PU���ݮnxJ�l��&С�`�9�z�!��"ȹ_�1��w�i&�G�$�'��@�K�����:ެ�[V�{++%�3B/�P?6�[��7o��7axxRJt�TR"�s���(
�Q�$
�5cdi�0��l�@� �Z�+V�D���v�</`���(�t����w=�5�y���P���j�s�����t��JLv��5�s M���.V�lov�j���N���'͗2���8������bno�婢!�.�>)���A���x=+*�f�}k뙚��'P����"��%�v�:�P*u*�cMl2cOOf��B*��)�V�E�U�t�d�B�J��c���:���0
_���Sp�:۱D	�G�҃SO��.�l?�Q>/�k�>���Vo{�{�y�5$GO7��I03�OL�N���k6�������L=W6Nkd^�2/
�y����n�X��B�AD�$	T�gGt�K����V�Sg{/RE��|��Ny���vN�ۑ�(J��t��~��=w�=��Ʒ������6�|�H��"��@]mG3:<ܔRz�iV��	OM?İ�
T��?��TUU�z��ؽ{��={
	���UY�S;׫Z��X	I��p�SSS���C���?��O}y�k���v�y����s��Ĉ���e�����h'�WQ޸v�M2J<}�[P��\Q�Ќ�"f Z\X�^��Wn��vO��=��M�������8T{�8����W�ҨH_Q�T�F�$��@Yz(�3&T���9�.�1	�@!�ѵ	�X���0&�T3Y��M�*u���-�2�M	O���H>Da�7���%KTE��*�9�4�(<4p���|�flܸ���dTRB��D>�F���6dU!+dE�&��!�UT%~HQ�
h͚5��]�MOL�W��)\�����P����d`n2�X�.=��%�W�c����m<]�}!�
	Ю3Z��Oi�o���mAA�����</�0�`~v��00���Z�[�U&t���e}h�:Ia�`�}���5�Q�?\�fϐQ23��\3"6ݹ�	zx�Ъ��_�+XBm;��O�-�.�׹I�R�د�
�Sw�\"��&��k��+'W�/��������5��\H܂�U��!/lг�=M%QH���ݱ��e����dc-�љ����,+�B�}����M��T��O^�g>����}לd�X#_�5h"����9Lm���k֭K����_�jժAS��z���y�?����y	��TVw��W\�ҍ��eQ�����"�saF�ã#�>8�v�i4'b�RX���:�vs��e�k׮m�#�<<7;;[���|��7ӐN�#}�3%�N����rs���+~��/����W4Ls�����p__[������^p��k��h�3�����!��I�p�g��[��,g���}D�9�ժ� kaG ʳ��y��˥^P�y���iΞNR��Q!�-Ԋ�1�@w��FϾVg+G�U��U�Dn�u�Ք.�D+��t#�:ݫVO;�]h"��4g���U��������>�(F���X߁�ڹ�(�i�������n��^��}H���n
?!!P�DH��1�E�n������Y�$�T��Va�eAIa��u�<�>|x���*��+����W
�p 6��$�8 IDAT���<F�֯'ck�#+Ԡ:	D ;��h;�Z8���5;g'��&�0S�����Ԗ�[Fo�����xhhȌ7}=�6q�R�{��]���*��D�D1K��a�[��s�q����C���&��
X��s �$>K��}ȉ�3�<�Qs
��Cl���q���D9��`�nLw��מسg��Qm�S�؝�iW!��J�")�G^�07_
���S]$mZ����py���&��O��G1y���O_�j5}�V�3;j��㺠�"�M���]�s�����˯�|��g����;n�ϑ:��"�S=j�'�0��t�/�x�_��eq�oル�}����7�1�RR�$~f�O���{�ʗ���/}qw��̔"�2Q��A�y�Oaz�0�����~�w	*����7�:͘q��`���]3a�4ʲ��7m�`vn������DYU�=O���v��{�]ozӛW���W=4U����jxx(�5k�w�]־s��q�9���mA�򹋲�HvO���=a<��>a|�!"i�bHD��2��8�>'/�5RJֻS�Q�[��!� @�h�%H�q��G����*��ǘYB�Qr��E���fm;^M�"e�:�Q�A��ʎ�a�MT��Y�$fN��F)+vx�����I��<�0D���I�(�E��y���,��t�	FF�a����	TU���y4��}M��B��xB 
|0Bq�F���":�)<������,%SQ2P���_�{��'��x�g;8�W�]�_u�!r�,��l��_�N������۳��6p\�Qj���rY��p�Ւ�P!l0��y �v��G}tf�)[���?�5ȟI�!�k���� �N���u��T�ӊ��}�� ����L��kT!�<ii̙C�9�5���}n
�@]ۖ��d_	�#�R�:��H|�{�/k��ޝ���s-T�!�	rc�}����r$����h6�ޅ/~��C>0{���BJ�,%.��ʑk�x����y��={����W�ڀ��PO)��H�)���K�;^9�T��<�����F�v_��oi��F��x�]���#���Xa���w�NGn?cG���$�Bc��V�
��x�q��Be��8�̳�7�t�UR?)��r�k�~��}}�AE�#�N.��̧���W����]�6~�:I������<�e��	�+�19^|�jͺ�|�+V�Ld%�$j�����i��UaG3��;����k�nW�w��016�F�Bf�{���Cׯ[׺ꪫ����>y��}��v�����Ȉ��ZT�<:�{�:5���p�l:}WTi����yu���*
��*���B8lkV
�,��]���ؒ��	Q�\4h#A�$I����F��r#�5qJ����IXErU)�OB)�����M0s�M�1`�K��&YrW�(�{-�v�ZZN̽�B(?5�$�Q�x����a�8V�{F��Q�È%�,CY�h4���G�$(�
����=4���h��8��N0�#�!q!�C�,t �
A�#Nb2*%�EAQcff���R
�eO���k������8IN"��Hx�j�7��{X�����6��7�E���� `��(fo�ڵ�f��xb�yU���#!<�ld(�-�Q����u����g?{��j	
��Hݬ}�X���q.��p4�.���l��Z<�}�|j�5�K���i�f`U�NWLu$c��(E��!�Q�)�J��'������	��w�5j�.�^tj�M�q-�{�z/���eɟ�����/�\�eu�]w��K�l4�?|�_GQp����_=���o��օ����|b���ಾn
)� f=��m:m�3��X�}�S�Q��*�c՜�	JӔ�4e��lxlHJ�o��ȲL�Y��a.�V__@@�y�����Y��I��g���o/6��/��/��O}�@__l>-�
c��PLZZ\�ǣ�>��I�1t�]E!����W���323V�Zi���ёH�~�݁��G�/�(EQ��o����3w�y��-�#G���;Ly)%K)����[�n]��O�����o~��
���[��6�ǟ�y�RM0��-���z冲<xHϮ�kn�v�$T�Hw�a���O�zJ��4��fŀ'�A’[�� P��8N�n��4�c�HE�$F)�W�5�LAd	T��+v�.����>8#@{��<؟��ZN��>쫲�n�HIr���%Slm!�mI#@!�]ʉ;5v+�G�A+?v�#R�4EYU�0�fgg191�8��Jx�6TAUgB��JHG��M��t���|��8���f���{w?�%I�.5��ttuֵ��hZ;��]�M�9:e6<^��[zA�8>��6;�%���ś����w�����4Ͳ���7�w�V�N�@��;��I�O�v;h��F�0���d�Z ��z�`�n�R�;! =��-!��.���n�u�Au�^]��ʪFk�������ܿ���z2�Tر�����j*�ޛ��!��v���_�����铻vu�$٩�����*yꩧ��`�s�9�v�8��/�`8�����O߶�?��.<��o��5�@n�_��Z4�n�� :���\YU��<O����؄����/)AD��,%Q��/�$�yF�O����S�nm?�� +�#�"�ܶ�{(��o����Z6:��_��מ��O~�P___(�[֚��rU���<Z�4�g�iZ���(|��R�\�5kV�B�|ٲ��|'r��{v[Ͷ�y����M}�NJ�A�ӧ�x`��搔���7�~�ӟ9z߽�ξ�/]%����Pl^7�|���Y����i�5k�5�E��>�~��ח���I�e��Nj�%w���!�2~�]��DR�(�"��@��U2�������G�h4h5Zh6�h���[N4$@��|��ux�K�%@�D.$��##��2��n
��LT�>ҝlO$�#� PO��07E����èU���L��:���@~���>t�+ʲD7S��@�FTe�4MQ���d4Y�t��ʲT���a�� 8aDH�):i��0 ?�<�|!ݵ��}�=��\�4<
Sd͈N3|Y��.Ϫ:�X����I�}�v��m�cK/�iO�E�$K�"���,U�xO�<G___��<�h$�|�3/����#��M�a��{��I`���Ëݔaэ�R)�-�ڌ�tȊ�u���������>��sF�.ً�@x�
eDLu�w}s��g�����Յ���E��Ī�k[�ٝ�z�%rq}T��zӣl(K�F�z/� �Z�~]�o_�ҫ}��N�zʗK�lӅK�{�3����U�ڴ��X�j�P_�@833�9����+�`Oj��� ����Y3ʋ�Ȳ�l4��/8������i�=g����Ң\hor�R�[�,� c��y�;�o��K�D�}�B�}> 9�h�~�zʩ�y睻��y��)��<������sDR=Yк30�g��,mK=|�HwŊ
�I���U�]�>1��,e
o���,
$�q( MS��i�5�}�2�w�u�B/�Q�>��?���f��E)�v˩aQ�b_v�V��T�Z��a���{�dǭ_/z<��tȝ�8z���_g;��w*V�gRw��>u�w���)���‹[:�nCh������0��4�o���n���C��B����Q�k"
T�|

�5	��-�c���&�e[
�QS;L�K�a[?�(K�*ңk����Q�6IJ�� �ݥ�E�n����"��h&
�Z-x��<���v�e�[\�%�ЏE�#/r�i����b7E��+�
� ;f7���J���������ann���ӻ�{�/���Hiũ�Ơ�#&�
����x� �L:�tC��ya�{0�X�|c3.�"�b-ϱ#m���y^��122܎���:��.4��{��0�V�Z��U�����ڝPӮ4zV���*sBD
	MM�2t*�P4���W
�M"j0sD���0�,M��&di�m@���Z�)Z���ަCeHQ�M~�	��,w���q�h�ٿ���&=!Dls������EE˖/o���^{Җ-�Y���D=�����SO�}�x�u�m�Ԫ�a��L�HQn(If��M'�.
���\rɲ,˰iu��s�vwP���V��s�gY��y�N?�-�����uv�z�B��锽n��@�}�%�i4���N,��:i�k����W��U���,
Y�$���zq�3dg��'d�]�TU�O?�Ԣ�Zx.����vhp(l����'p�$I�(_<66V^~��˙���?�0==U��.�c�$�w�����Z�t:���v�>�Я��	���v�ڵk[�-CPk"l��4�G���=����h0}�{��9>O�l��aUUa�ݎ��O��\'e��j�����ڭ>4���l��l6�l6�LıwEa�
q�!j���4lC��gr�9I��k�s�t�f�������El뱳}������LTd���k�b�ѓ���u�e�4�*J�Z-�^�k֮���<��M��,
E+��\�R�y�!M3t�]���cf~��vS�E�R*Q�z��L	�|�y�bzj�cc8|�ܻ�Ƀw�Ӄ�s��yk^5��'6��4��R��W���L/�f?Ga���\�=�GZ�G��@�֣n2RzI��ONN̹L�S����Sh"h�7s��U^��u�Y���fr�}=�V�Y��4y�Mi��u�c)c����.}����E�AD�D	���FJ]h�����t]����)��QX���$��.*GEd�,�0��pv~ޟ����N����>=M���G�]����o���l&�Y���#0G%i�e���._�n����|�5�o�4`X��2�?�ly�9{������l�{���G�.�w����$CAD8|������n��'�0�7]��3�Z�:���z��+��™�DQU��-���̡���QN�RC���,M�S����;v,7����w���TƴQ1�i��ǀ���_��e����|��NL�UUQUU��,;�H�F���O���L��
ڔ
*2�šᡨ�ly��n>N���R�ʲ䗿╃6nh�r�-ci�+��5kC����T5;3S;v�k:�c�ƺ�_|�~�IV�sv��Z�juƏ�͆Q$@N�����T8����Q�~ڸ3OC�U����n��´���m���͋���{&�!�ͧ�l���Ÿ�@�� iD��Q <D��@ۄ|��4*d"m�B-�2F��ɬc�k�g�(��X���1����Itf3KB%��V�0	�a�%*Y�GU�],	��R�h0c��eض�T�ر
6�G#I�	��e�X�ڟ�gȲi�E�gH��n�ss������4fg簰��4U��*U���dթ>��v191�ǎ:t��w����0Y_XL��\I�G]�+V�p6��X/��T���Q�R���\�;�6�F�]�ZQ���Qψ�8��:<��`�����:,�B�s6b"r��Z�<��C`떭mh1�V֭о�@�z��3QL�~��0%���Dw�	��l3Q,�6�'��
�9�dP���džul���`�Η�����=��QǍ�����=�}�-?��+���o_�����/
��W�Z߻�KO��{�]�reKJi3��ɬf)C0�kV��3�W���몲�H��u���B=}���b!D`�Hq�-�TI��c�ι�ɪU+��;~�k_{��
�s�m����>w���L����c��-5\A��0�� *��[߹��K��{�N�I'�8TU�y�0�Z��3�BPg�S=K|'�URt��A�ݿ_F��HM7$�r��$��j�����u13���o;����u�x��SN;��|����}Q��"�c˜{P�d�r~���M�DZp�`J4i��{�����~S�ljV�ۭ�+��k�,%'I"���>z�&���~��'�8�AgÆ���u�q,��y���?}jw��Z�k���@�v=1�$�ɿ4B<W�i�7��K��U��%�r��h��5�N��������h�l��J)ט�u��!⤁v��V�V
-�Jb	C	|ŷ6�I�[���0��W8�>B=�xMg|ih���H[�lH�d	��Up�g��Ywڪ@��0�`=6��w)a7
�(�Qญ���N��U+G2�񆁇<
�D�Y涬*e��ԇq-xcdYD(�\��c$���W�n�<R��d�eO�F��8���w��{��<��ad.���on@��@��S(�\2P��뛓�n�~����@lړe���,R���M��?7��F1���>|�n5�f��ht��.�/,�C�ӌ��۷�aÆ�ӷo��
_:Bn>���ӝ9���� ����$5eHr���#z�<ef�8*���5{�ٵ��&l�;V.�i�qݺ��C�³�7���9����������xꩧ�uw���6�"����e��<����٬���w^j#Q___R���y�G�œfg���&f-�#�c�:�����;g^���ۧ�6���'��'�Z
_��W��{^7n�fN��鄥}���Tk�ZDѣJa�D����&w�<gC'^��"���5�td'-|=��z���8]���tiA)�Y��"���[�����O���v����_�ş�*��n�[�iZ-,,������x6v�X���/�z˭3>pg�ʕa�Ȓ&"<���<�+������޽{3��n��=�.mظ1���)ѳ��yph��v:R�Ml?}{�+7�0����ĵk�6��gfg�|p���T�s��N��<��Wn:z�UW�ff~�9��˧>u��l
~�πwl�a���zh2�c�d�5%f�ʺ���t7kh��3c�6�[gM��&�Qf��/x��ـ��,
���#Cã��i惄� A��}$q�v��V��f���q� I"�a�8P֧0P�N*q�&w	!Q�Ѧ��)�wt-ٌ���X��J�ĶI6��FX��+������DQ�(�\�`��DY�(�J�JT�Jq*e�n��,J�_��^|.��b���d�[�R�H��0�#���)&F)K����&?�1v���]��&''06>�����/���"��Q��*�XrG,��J����=�����04�iIft'De
�R(Xe��
"*La�*�H���B�����k�}-�b][�*�4Z��E��
�� ~�����n���ZD��,�o���Z��Q��t�ab��(R�?�ĻD�P�j jǚ�eUEeQD�:�z;X��K�3iL:��aG�:f�;s�eY��/~�E����]�ju����=�Z�iFˤъ�+�_���/l�njɍ�p��ձc��"���?���؉����Y��횚ͨ��mX�Z��L��Qߐ�XM@l�gB#��[o�Ѭ{-����L�;z�h�R�V��%I"�f`"�f'l�2zd
}��c����:�����_�~�1�u����A3���z�t��|��8��’���P���X�"6ٽ�2X�#�zS�p㍧%���%����;l��EDh6����P�~��֎;�/��Uoz�7��G?z�=��{��C���w�{EǐU�������t;݊�048軇���a��WȽaÆ�����_EQ�o�λV.,v�J/�O?�����|�[ߺ�*�����E��|��,�ʗ�|�[?n��ǻiZ���U^@���&'���}�
���3�y�Y��ׇ>�q�ɑ�dк6�Q�w���fv`��to�zoF:��41�p���v�?4�&��
,՘������)�#k�!�I�(5R2�Lke{2cj�mN� ymhlI��k���nD��a�[�y�3��o%+�e�D"��\��E��(P�u1,�
��(�E�e���(U��U��b��E,]����#�G IDAT��{�oa����n%��EQ:�'~�!�u����ԁ��P���ף�<ϱ���F�S�������)�T��"GU���;��\f����'�8��Q��QH}sQ]�這[�U�w g�\�
��qIR ���;f���ƪLK1G�b{��5��^c
�pp�F�u��?�to�׭Kz�K�yL�,<ϣ'�z�˖/��<j��x�=���f�U���U��������J�4У�hi�B1)�ZDy������h����,s�`�4
.��-�f3��w��Uccc$�P*��Y��Ǫ��o�;Wx^�D�]0�Ziaq�8qӦ�m=�^s��?��bf���ם�ek�Tјf�l����ĄѶ�}QU�
ݩ�+RJoXc
��'�u�Ѿ��0O��=��� �2�9��ۗ���4-�ߟ;cF85�?�BJ���%+�W���
"��k%Qj���+�+�t����~OQ�`�S�E��0=�����RM6���Asvc|�d���eU�5���v��Nڴ�g��7�OOO�na~6q���_�rE�O��ONz�G/<m���T��0L�o��"²e�aU�S����@w����D
�ׯO�|��_�ss�i��ֿ~�Dۭ�m�����G�U%�ַ<���V�Y.I;�B��ݪ�+������e>��◶Tei�`"��/�|��ޟܵkA(k�>럯d�ֳ!3����g0�`�딭@�����87�VU�X�j`dŪ�s��H��+!��q�fI����D��:�(R�j?��ϳkAX~�pl�\�}ي$5���c-�UU���k�tG\U��Uei�c�-�U��*u7\"/
ݥ�?���~y	Y��e.+di���9�Z-\z�K�׽g�؎$� �EQX4g��64#��g��er��]�tG�$P�%1;;���ILOMc~ai��]t�"�c9rL<�47ul�m?��cGm�gRŴ"��4����Q�:�;s�D�Lua�I뒉J#cWy��<W|h����9+��'�0,ɒW���m�|b�/���1����c�u������q���m����ʚ�eS�����Wy��&"Rg�F:Y-�k�����g_vÍ_~ݥ�]�FJ�*��3�Pv:n���v���m�
o�fG��:��p�����
"�ё����?8	�}�gA�UY�'o=e`ٲe-'��,/�|�I���[n=ؙ_�������n[x�5��.�d�ş}�#[dUy��i���Bށ��Ntph(*����2�;�������$1q�.Ԭ��đ#G�pW`�(>�Q��5�d#ѫ���VX�����
��Ձ�"�b�9>6�NMM-N۶���D�9D[��40�)'*�hq~�"c3�f�
OO�T�[�n]c�I�+
�,
jLNL�\p���͊�{׻v]���;/��;��w>�?��#��Ǟ��ƛ��r˭G���}���/=�)W�M_�ʎ����}}'I"����!"Z�beh�ay�˓N:�O?���-?��>m۶�n�˿n�ű8����	q�ө�����B5DQ_�?^�O�\�2t��LD��]����|�0����?�L�>�sGW�Z�K�6#����qǟ�x≃���N'߳{ς�6���8O*�&*�V�c�R5Ͼכ|�J�"s���1�j䙮�d�Bʀjed ��(n�ĺ�R����Kn4��:Ih4b���c?R�.�D)��X�,c� 8;羬�&�+’U�E����,Y��+ݽ�",m!6ISR�R�q
�(
��MW��]rV��(�e���^�\{��8��s10�B��H���@)�zT��PU�P��}Jq����!���&
$Q?𕷱ȱ0?���L�Lcvf�Y�a�O~ywy�ȁݷ����O���
����.MwLT0Q.�@U�sr=��Im�I�P7+%��'J������x�ȵ�8��\{����k��-�6ȁ�Z��Ï57�
�7��zG�#@D���{�SU'I�_�acl
�钵o�����}����뮾暵Y�	���3��W�h���^{��'J)C��㞇*�aY���۷�j�ч�x���0�308�(�X*Ԏ�@��ꫯ��v8ÃC
�pmEK���ϋ���9��Y�p�
�ۭ�n=����'���Ë����z���/�EQ��;�X��/��sv���� 4y�v����1���ȗUeQ)�

Ֆ�I667��R������{�..�Gv���СC�+�2�I��]�U��?�ꀍʺ�#j#�2⯊Ԅ��rl�X:59�;�=wdqQ��u�f�5\�r�9�t�ݴ+kK'�	�SS�e�e/[�,v�j��+��5�QU��G�C����h6E�ۑ��x��_7�<�?���O|�c�����7����^r�g�v�/� ���_q��}�xUUv��l6�?��G�K'+=I�w�Y���+݅���V;w�"":r�H���`���m۶�<˥�n�����
�~��SSS��q��}���O�}��3�c�Ɗ�{�:x��f}�'V�l�����1FD�$�����T� �,���'���mAxDD�v=9>19��k�h*}P��
�Y�I2���� �Y���Am��I����R�
XG���������O8~��B� ����a��h��2�X�����'-�2�j�#o=�5�KG4�8hl�Ϻ���yfF̪�5�Zrek)%�J��(��W��*Tea;碨��\�"ly�<²R���<�,Ŗ�6�-o�W^q9��#K5n.��%��DU�G�>Y�C��,�Uep%z7&~��+�&Z�&b�'����CJ�n���,f�g033���y�x�n����]�<������ɉ���}��f��ւ$����93��XuǙ��@*��UAέL���8����칔�f���IV�ŵ�GXc"�|�L�j�/��m�>jN��#Ñ�B wb���SS���b�ظac�5�C8�Ia#+o�;�����]����b���`��]֬�G)��T{��ֻj��&:aӦ���Y��~�C[��׼㝿s���	���78��V��o__���#GЩӴ�0��SO=e�zn��O}�xj`` �ۏ��f�q^��W��٧&� �_�W>P����;m۶���<f���,.r���_�ò�L��Q��`�b
��6�X������!>���w�����w}m��w���H���Q�>lj�DaG�ze�JOa^G�T̢<x��,�3v�t:ie��N�&9*lfF�¨���zo{�G�?����TP�p(UaRSf93SG^XV���&��)
�H4
j��^_��z����M���u���������.[��\�� �������'�܎�H�\�S���رc���rc{�޷ZJ	�EqW��J��q���=MOO�^|�=.���eUU�?��[��<���?�8Y��'z�,K�E������ܶ}{�㏏����}ꩧ����o~s�
;�q�(�u���A�j`P�
5ܥ�q
!��=)�M�1Z�ׇZ��WRzI�h5�y�ky�d��)
c4�&�&�8�Y�Qhq��#������#j�6���f�$��r��ܢ(�i��;�.�n�hY�����Yۛ�p���ji�\6ø*Q�su:t:�^��y�+�[��
+W��8�n��<ˑg��g��?�(�E�)?q��~^���|��'b���8�U��4�� DE������`�������/,v��{�{ッx�{v���?=�Y\��
�ܜ���� �BerR:'U�32�o��w�^U���FH2rϾ}�=�ևFvil�6��hF�f`��BXt#+Ҕ]�y�'�=��X���ɘ��ybnn��}_�]�6��ʅ��	5�cU����q�o���ʲ�u����N�cof�J�2���8���C-���DEq8?7'^r�K�y�G��v�k^���D�m�RJtt���GFG�]a�W��b`` ���;�N���a�B�
׾a���d�N�M�&�s�����}�~�~���G�T��i�_��˧�䢋������D�FË�Xh��46�v�m����`�ׅ���7`���/���~\���Byr��>�y&;�J��Mgc�~0]����U��W�f�D�u������v��5��X˛6�u���w��L�"
�=t�@�IX�V"
�����Ң������+�\�0�K�{惚������Ue���N�\������_�����Za���{�v`˖-A03��v�l5���ɩ��ȑ#Y�)f�x�;�IE$R]%K)y���m�������8�V~�����fg-��,�,�\�۰1��|�$�_ϝw�1�y���9I��x�c�-�q���u�y��o�����~�;v,7]���|��O|��(��DDd���i@�ό��ue��ޢ�g�>6����4������@
Lq��+V
v��U��&R�9$�Dٞt��!��G |xd�z���l�Z\c�m��^Q�����E�,ϐ�)���4�"�2�V�p���.tf���k]�p+8#��ѿ����i����[m\����k^��[ND�g���S��,CQ�ȲY�"��+K����Pd*9�r�E�,��ی�K	0�!�$B�� ����
�h�:qUUH;���ᩩi�w�x��G��<p���u�D��h���,��B��\ QA@ΪCΙ9e�D)+�}ʪ(���>�g�Z4SwB6��]ׯ4s�&|@��l��V{��M&�XJ��bvf�p�	�f�^������\	[VZH��{$'pŽg���(����\��OD��Ԥѥi
RB(�/}hV� �?p@y�<�؟���N8aȌ�~�կY���@:�#�d��EnG3���g��BB���j��v�/ ":z�hw��=	!�8V��n�[u���߿ �|�?��'��g�5242�FFG��;w�|����q�ر|||"ef�|����F�23ZͦU쎎�F6��Q+S���0!�A(���ʢ,KK�J�Z]�PŗI�j$)-���)]��+3b�w&~S0�Bi1t�L�a��zhR_gɉ�77\�2����1E�J6��P=k��x��'��n���W�y�өP'��F����h�y�0+,+@ӂLV�cP�`W��,���m?��K�S~���lG���/�gf�򪗍��� [XX�8��W�j��cG��v�}��7��#�]O<1��O~b�b�SH)%3�矷����U+V���(���Q�׾n����8�="���?��c�B����C�h�������_��
TT���~��&��7�K��(��w���ٕ
����Rw׽���֭3�Y�c�L�GR�Y���ᘛ�����@�n�q�;i�	�&�(�#k{
u�l�}A���*F�ڝ4ڐ!���4�R2ʊu�Z���4C�M��Ň��k�[V�d�M� D~�W��Q 
"�A�(����lE1� R�z����) �3O?o��58��@����,�ݮ&m��2E��]t�]E�2oOS��i�Yj)�<S�i�k�}�*E6�>^��:L��i�ann�鉱��~��]��u�l��u�R�Ȝ��b�܀��Z��S�q5s�zt�Cu���f�GT�V��d���1�v�*��$+,Pq�����ݺj|�z�͎�{rr’��fFѯ��$s�ۻ_�E�y֠�y���0c�Цۘ����.�į�J��a�q�o+�}O_����z��o��.aŪ���nW�{���tP[�n����yMWeE�V+tw�˖-O��V���N�<�	���:1
��T��bh�`�w�Y�P��\z�3�׽m�Bx��(�ġCS�����:�m��+�T��/��,�a�f0WR�\�xsj*�N���6=�i�8�d�n��2{e3��7eR��ʱOU�NX��<��y��<�~6|m'���^�Q�(�T�~6��y~���ʃt�'�p|��.�u�饿��=��E��@l��:��ć��&���ou?�_}�/v!����R��p���r��آ|�`WJ)����0�Ηo�i���k����brr��Ʒ�}��5�����O|r���+���>�^����g��v���K��/_�O|�������y���=��*ˢxٕW�j.T&&����w�!�(�L�d�Q��ǶV�@�z�����6�3L
^S���8��MA���(��I����X�)�Hb%슢a)ϭ�#$�s�Ig#�:��z�Ri��l�7��ʲ�P���v��)�ni�"/
;�6(K��t&���	Z�&�M��l�q��n��j"i4�
4�I҂�H�)�<��6���z%.��"�q���)t��)�i��.ĝnݮ���4�N��,"]�"�."�*,f��mj�t�"�r��3֔/��.+5v�Ui�}U\E
X�"���Ο�~�G;p����t-`.������gZ���(%�K@�@��u�z�u1��Tc`"�ϓ{MK$_���"��#��Y�2d�}��̮@A��SC�	�@lذ!q(E�@~q�������m_�@��"�;R3�3�Ck6�AUU&�Z����D����b��=}8����D�����]��+�Y$3�۷��'�eYҶ�;�z�93s__;���sm3ZQ�-..��|�����<����(�EEB_t�&��}{�e��'6fg����v�f�,e��xr׮E�
����n�Z�on��V;��u{R{%BYJ�iZ��oc2M2���W�5�G�������eF�z�h`#οaf���]��ӟ�s��݇V|C�E=aB�$"N*�D���p1נID��_�b��7���+M\b��y037[-188�SO��<�cd�ۭ��q��\U��ևO5�U� �,+����d�گ}�k{�Jى芌���w�8�s���V_?�m;mH����G�����o|�kGR�n���O���n��O���;ή�\��Z��6gzK��B*	%�tQA�PT�qElW��O�^��,W;�(*"`� ��������dz��v[���{F���τIf2s�>�]�>�Y�g����/_^�������k�l�m��сݻ��8|����1�5�������Y�%[����
�{v����+�>>1QI����ƊW\vٟ3�t ���g��d�\i�u����EC2ɂ��(�b඾�,qRB��)j�"�sn��U�R����`�H�)��)d�8�#=Ȇ	�0`�a��#O�O&��eQ��z����R�P.�Q*�P,IH��V>D(�p*6�+t�,�)�Y䫫�[
����������d��f�ɤ`�6�����(�)�y.����Ҍ��aLNP,�P.UP.��TA�X���{,���K%�J�p��(�J(�J��Q)ˎ:�h�.}�|/1���`�1�g��|.p��z�`_�o۶����I[��7R�0�u��@䂱h\M��sc��Y�}uÊDc�0�z��Q:��I���u\���O���z�͙.։�^�٣s`oO�����d�fm���P��T!O�	�~��Qh�=;k�@����.�)?c���� |rR)C�=�x1�Ȩ����M#/��q��?y�=�=�ڱ�����즤M�ql��3Ϩ
Ð���V�:�V3'>��On�*��jB�ug����:㮟�tA_o�_.Iԣ�y��}lٲe�*;���$I�Jłؿ��$����_���ٵ��c�mٲm$���]�v�Xι\�Oς��NYI�LǶٿ�f4i���ѣ���*~J�t�R(bЍ��htf�����钲F��Ӕ�Y����!E�	�PD��Ĵ�����t�ٶe
"�Z��'a10���<�p�.XW^qE[ǜ9Œ�x#4{�l���.519�\��9�w��?�<x~WOυ\xQ���lF@�8��X�}�w\5��,�߹��mK;�R�3�,��7�9��͝��	
 IDATv�5��[���_��w9 �:;+�7m��w*�˖-�omm�&G�O?�LwMM
!��\}�+�����j}Bc������w]v�˙LF��'!��\��L��o�6:�u��|�o�ڵ��/��uuu�twwMp�|.����Ff�I+����ZB���
�;平g3M@bqNjrl�#f��c�� ö-�}���B��a�1
Ӏ��H9i8�۶��̹҇n 
A�3'��E�t�"N5!�!���p�@��+Q+
������q���9L�D*�F6�EuM
���QS[�ښ��֠��5�ը��BUuUU9��i#cØ,N�sp�%o��Eǣ09���a���b��r�";�R%U���*���EK%�%��8KE	QŻ\*�\*�\,�\*���@c_����zjg�SH��I�(�NW�c#�;�x}`txX���[Da
�E��]k���Zz�]0�1�\=�N쐵*�����^��Q������0��hZ��43y
��3-����I1��r��;v�s�YGGGZĖ�x��b���[���h����b�}*��M`=��X�)�L&c�BL�Kn�[��&�����1�}�0�Ι���6+;��t�Yg���=�ǒ�˪�T*�����y��d�fmm�Q���q��λ�������*����s�Y.�3������s�x�?�\*�D�O�o�N*�_��q9�~k�G?��9�����WU{��.�aH�e�|�ڜZ�
����>�*;�2�'�:(��e��{n0��b۟�h���V�hM�E\�
[�8t
�05e���B1����?��OvHZU{�!�[��1�0�RR�,�P~��_� �ɝ�R9�}���ݻw���/��)�B!�Gv�MN�����hhp�b�&<�
�|���?�������ܾ8���;�`���ؘ7{v��ؓO��`��!�(��;.�腡���֥h�.�i����_���t��]����A>������OǶ&?�رc_��/�T6��s���o�ڭ[��N�3���������jR�4_M�<�T�߫�!�Ɔz�ϛ?��;.��ћ>��綷s��Ęψ\%l�ش�'%	/{$&Lpxb&Ħe��CC�5� �W�c&	2òkjjg(q.��'�T:۶aْ�%�Sꐧ��b��R���O���hd]Q֣R��r�([���W��yR����L����8�N�*�CMu
�j�P[[���Z��ס��5�U�g3�ʤ��f`�&�������2����8q�rAB�XR�� �k�b����'111���!P7}�9,ہ�J�V;kӲeX��Tʘ�,`dL[�
(�eV���E٭��=��["D�ǎ�ۻ{�x�\�a�ўS
�����ւA�5�Kѻ�����I�]E�{M��\D�dE�!�����)c`	PD�&�����CB)8MۍF�k���\�W8���z��SO�O2�1%Y���fM}�1c��9κ�i���|����pE�P�^EU��f�*_e)�>8����zz|}�:���Tq��B!(�>�Z��A��07^N�r0>6�����1���j�r�9'"��fL"�O}��g���zJ�di�aؽkg����LDt�M7.8���Y]�$(۶ٶm�

�X���,"���Q��M��a���� �r��>�N�hͨ�ko�p��鿂 �-_�j���;�s<�Ԛ�H���d������("��dR5Ҏx���,(a	Ap]�eq�=�z����k��2ꫤ�/}���+�J�
$4r*��FK�K����Xb3!=��KϹ "���j|��w��t}}}��:�uݐ�Q��0‹���ŋ�`��4�J�r����S��u��)�0��	��?������xa���/Z���1�J����uǺ�
�i�Qp�T��>80Pڻ73���˷ܲ=��	�r���W��3�yq:9N��������g�$���
�780P���w<{�{�y�{��;���������N>�������B6
~�"����GBTԺ�e���a��sO��������H1�r�@9Q��9�Q�[6���E):�\{.M"28c1f2"C�Lv�
C��|U�r�X*���Jɂlp0�Tk����*�f��(A�Nv
B��p]�bnI����w�("j]��48)�\��5��W��Z�9�RKf�Ј �19:��G:1:6���:�Ϛ�L&���Q��C-h1�:�7,۶���`����L6�����X�:�4eb	����*���B	Cã���8J�\�C����o�	Tʥpbt�p����N�qR�a"�d��_7VfR"nN����ƅ|x ���X���Q^��I���s���� Gt�X%��e<�S�z�ÈeE��އd��\�کk��_xa�S��N<���)�6�Dm#�Ͱ͛7�-\��z��YN��)cT�u�����P_��L��2����\�eWS]mE\��E�S(�������ŋ�*[�m~}�p:�1O[ujCMu������0DuM�
���D������ܜ��omx��&RIˍ���re�;&V�X^�����O��h����SO��� "�����W]���-oU(��R.��hq��M�F��r�9�cc�A����h'��K����2˲�Eo{ݫ�l,$���!�z�5�v�<t�@����s]/p�4M� 9{��@�F�B�PE����Q���$�0�>)�,��`ll����Xu݇>����zH]'B�
u �D8~�œV6A&�
:����__*[�l)�f�h��r��
���o��ݵ߾��d�&;a��/u��B�9��}�a������>v��:e�s�u��K��-U�{���۷m�r��6!�0�#WD�(�QM����7�����n��͛7���,9���H����������7�����T*���_�\��]綷�x<Η��	C�^ٸa�\���)Ǒ[Qƈ� �5jģV�L
��'>�r�E����^����D`��y���^��u�?��
������u���Fssk6��8H��/g[p��Y�*Y\�E���ؔo���B�((� \/�[�P)�Q�{�r	ϕJlq��)��m�L��<j�ը��AuU�l�iHu��d�,�����]�T*��T#W�C�X��V`�<.�a(%�i!WU���jT�Ԣ��U)3@�{H1�`%�����~��8�i���0�4��C3ܠE��x�a��0^���`_�ixxrKEox�wbdh�P���t�L�DI6L6ĝ��ٮ���E� |�O�D�<��)�@b�/O�]����O���.�%����%�WS�iy��,Td�*�F$fTN��mϮ[7
���T:ͤ'�E�d�%,�߿w_�1��/X��\W��ћ)�+�+�:;K+V��5�555��BQD��*_m�'���֖g��}h��(��ԙs�̋
WOOO��?��c�58�m455����j��tm��m��V�XQw�9���0�J�ÿ1wΜܣ�[?QSSS*W�74�n��7���⊙�L�t���/^�c�α��7���[^�xQ���.o^���#�{�'�z�JEqs��5kv����\xa����ǎ���ϟ����f���:b�6��1R�_�xQMsSsQ�P{z��̙S]U���  {��	?��!�C�R�ݱ�qN	;�5�)�5��&�`	��b߾������T*e�pa�Xwwѽ��W�/Յ�ϨNY��O�aL�!��^
R18���}��y��u�Ӓ%�k���g���GFFݚ�jkv[[�iLA���}y��c�e2�m۶u���4M��S4tAV�Q>:6V��g���k�Z3�
CO��%W?Z(��:mX�~���o��
]�}����}�;���M���4��?���o��1�0�B��Os��
���q��L�q}[�(*�q���8�8N"
�Qk������ut!y��,�H��4�A��V�3&;平g�iqwZ���M+[C��-�eZ3�ګ��1Na2�4aYlˑLkӌ0����E<L=vLQ3��#)�d �y*�r�r����znEv�	A���sƠS�r��<��y�r�eӰ-�K��������8v�� �I!LNN"L�HٶTB�)'���:44�����YY��,M���
�'�AV�!���H�G��}B%c�[`V
��E�S��lx�L����kĘ߆��zFK�o��g�rס}�>r�������A�eƙ����*���3�)QQbc���VlW�@BQ���X���H��;��X��J_�F$Bd���^a���|�}�D�]�B�#������Kr;wl�$"��73tuwU`�+k'&'7ʢ�O�ڃ��v,��2���HF񵴶:��Τ
�4�y�{Q.��P(�uuuX�tI��M���SO<9^q� �8悅3���A6'�DCCC.��/��?8�����v6=1S��׿�Ҹ��K�.Ioݲ��c�&&&�wn�}�׾��%�3m�+�׭X���M���e��u��?��Xcc��n���7������͝�M�_�9��	�u_xᅡ����[[[��
��{o���3�l6k�w�g�'��D_o_���#�P_��T�b�\RѬCT��4)!�ҸW]�u�O�_�S�F�!	>����<��8���\3�+_��\6�-{��D!/YZ�}�H��#��{#/0S�=�v��?���k���4M���W���W%����{��~�YU��J�s�����47WM?����?����讻�"�i1�	h���F�kHd"���8X��3}k�|��q���(�6�B���Z��i�����"v%���
x�XO亓�8�}�wg1���B�FQ����՚B”T���У�h�GB��s��;F$sK�s�\��#��R��Cy��+?�T*c��74O�8�2�Ia�`[��eʔ��e�N��(������H[�ea�^��=��X�%=�e�*(B;p��`*P�q��dQ���ёU2��TD1�01Y(���B_?|߇m[�\.
}�����f�������95lN����a�=pˣ@P(��G��p��a&�,^Y�8��U*�!�����7�����[�X=�u��:�����~�e�[�nX��+�;�y��$�m�z�-"�ޡE|X��RY������/8�8�Fy����1�	��P#a1G�%�IJ��7m��SVy��`�8&QgM�S�=�n��nh+R�0��t�������E�ewn�V��'S��d,Z�8?Y*����L�d�/�����6��z��訾^ZR��竫����J��X,�r��^?��~]}��qÆ�s�9���k���̚��R�#�I�#>�7�/�oɒ%���W����m�� ���o||ܯ��s>��OϾ���G�����{o�嗯n9����>�M��h8���[��C����d��i�lݺu#W\�z��%���s���ٳ2R�c|�ߟ��m�k/�l}C
��c���H�?w�9/Y�w=��`�Ǻ���|>og��*�k�$��t&���k-�̲�ht���.H����K�_|a�X,U2���K.i�ꭷ�(w�,s�e���9
��R�G�:O^�TN��T��T
���G�-^�$�b����G��L<��]*:�����[�p�c��{�.[VO$��#G&��ރ��>3����pƈ&�ܥ�{�V��"���ϓi0
#����Æ�ZjTM�����I�.Ή�#X����uG�r��gr�2%�	��7��,�z:9,J�S�WWc&��r���n�L����Vu�2b�I�z�(�<�JY�t��%}Jc�a��_�!�H��u2�"쒅XuˉJ�:I�p}_6Je9�.����sHѵ��QfpX�
G��3�2�4ӈ�QBzz������<��������$��}�"�|�J�|8{t��� F�X�\0	����p�x:J��D��hF�‡`&10�@S�8?���l7���^3ϙ�~�}��w���6�m�n���ZxJ#��aU��`��+��q�LTXbO�G{�d'��N����(Xw�F�ʘ$�ʓ3��dz�'=�Q����vv(������:a���ی
��x��,j]���]� ��^{u�w^���1'#�"��u�}}� �\&c��ns���4M�k��JKbM��֞ݻ�I�h"��l^S[k��A�:;�ʋ-�IȺ;;+�T�oۺu��s�m^u���\UU�;��󔘌6m�<r�I'կ<���}��LJ�E.�5��TP����&N;���.8��������h�dY����۾y۷�\s�{;�dj=�#����o{��j��/+2M���~����!eY|�lˊ�۶n+lۺ����C-�yfo}}�	m��"0��o[�~<��L�đC��`9�����xn�����ĔBG���>{�3��k�4CC�"
B�C^v��5y`���������^{�Լ�aC��(�DMm��4xc��\ޯŔ����#B�0����+V��Ʒn[���g%����y�;.z��\�X�:cDaH�|��z�w��a(�DG{;�T�I�9q�Ub H���Ș�3�LZ�"�W�OӜz5&�y�S��~�	�┦x̮��1]Ҧ 3j|-���j�W�>7AC�[�c�`�_��$0�O�t�����s�	$���QE��*05�3I��a��g�0����e1�Z��c��
~(��=?������*��Z��S&N�-�t�T
�T
�aJ��Ǯ=�����صk'z{{Q*��GQY�̟�|�x�Ԧ2<��(��+�^�?�
�W��f:`F
�}iE��E�F���&�,
N����Q�*HqJ�D\T䝍����7	���c�v�@���N�^~�~�)չ��ņ���k?t]�q�K��:�F��Ljː@��^o��,v&S�bJ�A3qy�ud�Ă����ik�s����Y*�c�Z�p���,\r�Mh�
�		�1Hk�c6��9��9���Ѳ��_�0_(B��7��V*44(a���,cV�����Sq]7�ۼ�T�[Z�X�l�����*�fcp�]�vN&OA�;w�cX�~�����\sMSDN�>VV#Rھu�\|��̓��
���3�D��/��P?��}n��訯�:��M���K.�x㺵�*�J ��c��C�
�&9<4��C��j>�r�,|?�|��f�,C�>o��N�
ؼy���D�w��	�{�;/�9g�|[�cT*��[����i�S��<Z�,�e�������.]�Qw�0A�
{�h?���r���:`�u��;�J�i`��{�fc����?��c�s��O}�8!4�R�y��;:!��'��78�g�m��.L|}�)5�.B�ӟ�����'�9t��P�F�B��?0y�g>��09Qᆑ�H�@�3�=��i��s�0߶,��Q�K�=��eW92��!\ƘK*U�)ճ~S���^	+E�.c���zҒ)�W���ˆ*�\2�$�HB�*`�����ˤ�KLp�ɏ��	(����ce�(P�z#�2ʊ�PI��͹�YE�	�{��%��xb$�b�?W	���Z�����κ7ˣ�T8�Ldfp�z"�� �Bd5�j�6�2dB���@�e��T\�]��*�}i�_�(!�I�t�Aʑ�,��)�̱�lٹ۶oÁ�0:6_��+��R�q����o�g>�A��@���{�Nw>o�(���2`����,Q�-J�*v�L<����k�
W�X�Y�O�ۅ��0���.��{��ܽ�Omőb=@!�(�(a9�5,03Ø�bD��C����og
�?7�[d�z��~���̼���T��vԡ:z�DB0��gJ�t���1�4ֻ[S��La9CenC[舭�A IDATl]�Ud�+�j�̣"�&4s�f��2->�ߗ��ђ�
�й�
������{*p��1����aHK�-�H�ܦ��J��d��N;�&
�BV��/�u͌q���I_ڊj�X{����M�;��u�����קo�q�\�߼i�$�=ʮ�غ��9Ǟݻ˚�|�嗷���ғm۶}R�tO����t�������c[6o*�߿���u\p�[�`(�\��ٵ�t�{޽cVk볋�_�|c]�7~��;5�T.Z����#H���˦i�w�����~�#�a�n���:+��ol�<�R��;��D$� �J�|�h]}���7�y��Q�q���]�?���kt�mb�I,d���S#ݐi�(�u��`J�|!�,�t�e����/]J�-N9uek�;ƹ�>}�s�Ͻc�I�I��A���B���J���UUU�ߟ|�焥K��p����K�x��?�6s�O�YsL�C]L�J�OEP����3�{�)�n���B���T@T!�+��K�2TDe�X�U�*�DT&�w��U�e�`�I��ceJ���BZ����w���L��"���#*H�!�o�1Vd��;��ȯŘ����T��Y�+
��j[Tt��a2���朶66M�ˢ"��&�b"T��U�b������9�q0S�MS�!��a6!�U����@I���(.�a�%�C��eA!�I$�<�(H�0`[L%Ha��Rv�}��������dB�w=456�}�^����
��^~�P��W��I��9B��S5� B`q�$jm&�i0�{�B��V|�B���&��x�����vXV���c�>z�#��,&cȤL���ן[�E�c��B<"0p��a��wx%x�끁WY����W�V|��w^vYՏ~p��[6{�$�("����T1���Z
I���VB\�UE1�e@]/B�
HٔD��?S(�>����.|_���
�z��Ĩ[Gܱ�ӽ�S�"�O�1�X�/�M����:#z��yMNN�ARJ�+޵z��SO[U�J9f�ر��{��rG&����<11�������Q	.q���zB?11���U�y�_��~9hY�?�1���B��wu'�#C�.��U6<4��ڵ{|��j�͛[����h�i��[�(!�vl��@�|pH��&G�+*��H���<p�˷޺��;��u��I��ds9���\ji�a}��Aϱce.�(,B���ɶm�fΘ����[��G?����`||��3�{����{�5DD�sN˳Ͽ���C�\�di��K.��N<��jW=z��~h۶yꩧ5���?�CIے�)+�Hu�SǗB��#H��Q
L��LJ�@���'"s�޽�7l<���U���>���g�Z�|}}���c�<���W�����I�O�8�JDp�F�}�}i�,&"477S�{�];�W@�g�b
�iI�F#J��7�kW���E�88�׬�>�;{�F��Ȏ�lmb���x��N���w�։�yY$Fб�C�9�c�eGJ���42��ju�W�4kt����)bd؅Qʹ�.��L
-�>7%v�ʐ2���E�
�i�Š�p�Y�JХX�I���r�#{���L�ci�aK��@ �i��*�fTPq]a�T�"���\l*>�	�	����T,bhxCCC(�K*'Y��<8���v��՘e�����-^�0�8KFJj��AJ���X��M{���?�N�Coi�GNK�eT�Xv14�f�1�\N�]O>� 8���m�\q�z����/�Ag�l��*�o�2T|��7�����Tʇ�����v"�|���+���ه�s�=?�Iw�0�È�YR �,�j"��_h
���J0� !�d����;6��*�M��q6�_]FL^)�+T�ABP�/�"R,R����>ŵ� A���
�Tf�h�-_�<�y䨗�ey댙������Hwt�I/_��z�ܹy]����#_���m���������Xwy���򭭭OX�<댼��ڵk�V�~����;��R��R�JJ��1���R�bŊ�J����
��166>�ٖ�@$<����ʨ�G����H��@��B!�������~�t:��F����p�?�����������Y�fez�e����K�.Jt0���g��a�[�Lӌ��Z�#��>R8�S-�46�����i"������Ȉ��6{��F'&&<�h��Q��/|a����_�پu�DKK�@=�Y.Wʁm�F[{[�f�3 $�?Y�Mc����[�UKկ��:�P٨b�{�m5�XP[Sc���_ܺ}�\�[�ti�{����G�6"�ٛon7%��'y��"%A�+B�[:�1���o��s2�s�Uɚ`���/G���Y[��\;U�#�\��U�1$l�r=������'�n��i�����pW�>�.%��`!x�{�]�Ud#1
mI,X��$�-��!$԰eu
�s���� �'J�t�x��K�atQS'=�ǔqWa@w��2DZ~�s�0�㦴?�X"H$^���BX2�C��������8ɲ?��Z$`J0,��Dڋ|O���������<ߕ�0D�h�5������Q|�W(�^�e0;f�@\Iш"��=n�y�dz�K��"a �jq�2<?T����i[~��`8qF��>R�#�m8<j��`��[���o�8��œ�,ۀ��2\J!$��Y��)��A�!�cO����v�s�ǯ�x�[Ϊ����}}��#�w�\�b-���.`+嵜�"���`!�F���MI�E��XV�O-iL�UbU�]��)�Z���6���f��Y8N&$D��� 	8��ө�T'��W��g��f���GD���|���\}��*���Ɩ�s�;���cNVۉ��N;mU
����^^?�z��f��\�xIzp�?��UF��ҙ,�9sV�����N����Wnoo�Ma�0�2���裏
~�����X����@}�lhh����+WWW�+V,��d2�0LV__�ȠO����-��lp���W���;��r"��+W6<��']��՛&''�i��tS�M��Ժu��rYKߔ���zT��Z���q.�x챞���j:��z
p��q���S���W��gE�Ӟ��'>��Mͭ�\w�g�k��~��/8�v�,�S�	�����K����8��Ai�v���˛�d!'\�R���@��� "��;�z�Xx!��[���E�m۶A�0E�"}(Я�D��...6�0��3����ڀd�- �?i���c|R��X(�_�S#����Z�X����1R��.�Z�'bm$��~΄Z>�x1����, ��E^T��
N�h篧&��'���yڕހI��д7ƘL��a��h\�H�J�^W�ڄ��1�G76b��b*��38���ښ񘙩��@�A.A�$�KWO�
?x�G���<ׅxC��Ղ�ȑ�W�`Q���
��aZ��I+���h�����>��P_:��?|��a��+%-�
*�� ���aa�+[bȥRX�������s�����d09���`=D���)/A_49CS����Nm$؋=��������B�G�E��xfS?DHX�Q���X9sթ2��#�v�g	a��_��p҂�k~��.�������?���`R��^M�Q7�h��`ʈTͲ�֩9!�7!�q�a'GyA�[�9��G�JUd#gī#R"i�����u]�{���0$�34��������=�Y3g�ȥR)����I�Ӧ�uΞ5+7�O��b�)��W��	���L�x=��s����`���y�0��=�;on�ݻg�e�\v٥���sO���D&'���q�|��͝�s������ڲΠs����m[��r9�f��,|pp�ͦSd�&~}߯��v�m'���9�f϶z{{��F9�v]74
C�L&�|�w��%Kת��W7�~��~��ß��}�i� ��3Ϫ��׿:���%�Ek�<�ǃ�]]��Z#����0�>�nx``���ԔM޷_z�~�qT*���]7�����q��3�?7�1�7����Ą�����w���m^x��7@�T⛪�xLD��R����i��|����X���O�0��N������w���+dR��o{aB�-��/<��e��Ԃ@2�c���>U'��86Y�4��Td x�q�D�z�&W?~��&lG�h	�Ny��Y��c�ɛh��Op)����!���(�Uo�sH��ќI�v����x�?��c�*�)�:�J����Դ$��NL3�5L$�/�!\w,�?��8r��x�Vd�Q�c��̢�DG
"�@�$�/ Y�I"I)�|χ�2��.�@�#�"�)���W(���1 ��IgP.��
M+<�GmM
�}�q�%g���7��8 B����*K�D�݅����"r���z'�3�ֵKpR�l�A.3�LNp��׃/r	`H[r�P�Cu�1Z����9����=�]U�̪�S���g�x�ї�q�cˎ{&�������Hې'N��
��`�U���F�����s�Zz���o�k���	�-f�$��l���sx�K��BuAGD�R�j�W��2"
��s>�(B�	W[�Eꃥ,�\�ns=�~�㟜�:��aٲ�e��T�����iŔ���	3Z��y�?,�Ja(�hin��b��UBx�/~qt�̙V��캵*�llj��z���ɰ��#��ۻo��X�Wq��m��K/m��[��jlj2�^���V���/��o�a`�޽���~z#��������ƼL&�ltt�Ϧg�pR)��;�����/5M����.��׾�/��&K%�0
R#KX������W_۴�---�"�t:m�p�
n��G�U孆��L�q�����[���Ձ��?U=��ݥR*���k�7��U�s'&&+����#��D0
W���z䏫N[u�L۶M�������u��O�d2(4� !B�4�-�7��Y�f�+^�(J}�R�Iv�D�}�c!���.�B5/ad1��CQ�Eċ,y�Z�o��뮻n��g�� J��+2���O<���\���N$�#c1��C�٣��;U����=��v�%�:�hoo�:�P﯑�zQѨ�ܔ(b��4c�$.4�hB�gTloGK�#l]��ۄ����쒓= �p��w���U����"�oդ ZwD4��^'��:�$ &�ɤ�71�D��5V��]�Td�������D�snDc	A�Ǔ~2A�8���@og��+�CO����⺨�e��V9�:�B�f�H	�d��GU.���fd29L&�>&t̟?���pRG�~�6�Ld���Fp�8��~�f'�����y�p�@}>n���T���~�q��]Ja��pa�0R�����
ᇲ�g�<98����g��I���jᡧ��s]��4"�Ϣ���s�
,hta�Nj�Z���a�5�,����(�^ټ{�4��w��=�U��Z=�`dTA�=w�9y�_v����h�Q��_��۶lBX�BC�Ϣݭ&����T^<M����	�S$�3�D����,S� !21�g���fY�暃1|��_X�����$�i�?�tS�iR٫ذa��?10<<��pdx��ޞ��<ھk��,��r�-���~˶�a,��q�0X�C�{�P(��lƜ7o^���Ǜ3o�][+��������/�w޹�+�/�;��[��Q���J�B_��[�jj�����8���k���DD�l����!�^mذqફ����� ��^ B]]=۸ac��g��r��=��iB✳��Q�0�$^�l�».�t�3�=7��Z�)Aǜ9�o�[�n���&��+�a 1��������r����<z�UW���lYK�R��u�ek�JzXd2\}�/-?���ҥK󃃃���@]]���f��3�������{ֲ�P!}��&,L�8��
B��b�EL����@Mn���8�S:�3f�p���ݶc�<�4��[n��y˲��R	���2L`=��"�X��d���G�K�w�	A�A�^�2�^�ȕ
]�xDc�x%�WBkF^p=Җ�e� �d4���%�\QhH���z�S������1�"7����D�+��Ӈ0����fF$&"vŝ8��O��;�@I�
7��5�P�>���Lܴ��T����K{�@(�P0�I�"�E�qm�"���`�0Pݲ��d[�P٨d@��Xr�-��4Z���:��ebrrA��N9�\���h����߅����H�2	�L�%�I��9��V�U��,�}�(նᔚ!,�р'�:���K�6B���c灣������0��j8\?@ b(#�c�������>�<,�19���1<H0��8�BM*��߷��)��b�;���d���^�84�B���H���(}����<��G!J�8i�'���Uw�y����O�n�,�TJ�扩t%�r&� Gԁ"ڄ:�{�Fǣ�Q���(�ӻ��g��$���`�a�*VL�ر�B�ӝ����?0���#�6m����"
��Ͽ�y��[��}{�쮨��g���&K����ʂ��[����1�8�7L�J�3|߾}�'�tbݻ�X��G��/�w�~6z�z]�9�[�v���m�����r�/��/�0�W���9�����ر}�0��
Ƶ�˶,�(��ү}�+{����9DD==�#��P�?�������Z5�X����d2����0���<餿��N:��3g%��Q���k���ÆiF'��J8�X$�L�b�/�tmSS�5>1x�r�G
5��W"�Ͳ��w��ٹs�Q]]#�!�����N2Q��v��G9��z�HD}�F+�ȏ,��0a�34O�#���oЇYm;T+8V.�Ĺg�}�kּ�:���Ϭ]�c͓Osd�B(���:Lw�1�9����\PrW�(RӔ�zd�Ƿ��E4Ά��z,��d�	��^ZV3�H蘦�����z���+v廙Y��dw��\ѵwֺ[�;p����O�GX��ɰ�H��>u�MBG����GO	4(S�y�&f�j=��둵V����
����j����D�+H�ɐ�@]
���	9�>$B�������}���z���C�@z�u�H �
�&_���6�47�H`|bRƝ�� �,��q�w��H|�/�<U��	��>8ɱ��a�(G�%pQ;Dzg6L�̅-x������F,9�ƩM��iJ��k�� ۶���:�n� e1\�-�r>q�䂩�N߄|�{���I��*�H��8Βq�i��g����:&a2��0�}G�@`pl��=�[#x��	�|-^<8C��zH%x�OD+��5ΘY1�M�;��:����K_��Զ�Y;��o�
H��p��'���D3� e�I�m���MFʄg7J
� /��K�%I(qڽ��{�w��/-[�l���p�����];���=;v�X�;UUUv6��-�4�������ʵ55Nmm�a)�$MKv"�9v��9y�g4�X��@�؊B��}:�f{��8���W]uU�-���.���f���T
�<��Зn�%�m�hmm�<���S����]555����7����nE������O>��I����D7cp��Σ�#G�::�ky��C��
PA�Z���֭:|��h�T%G�^|��4�R�[��Go;��>}��}��돟5kfu:�����e���w��oݶ���?����lE��DaNt2�(�pà��!�Phj���+@q�;UJ�ԗy���b(�7Ѕ9�g�_籧X��*� IDAT���n�CO�ѵb�뻦�9���L�z�I��ַ�}��8��=v�����nnm�T���w�C"�o"�9��k쭎mJ��ǔ�ld�R�xAZ���b[Q��R�#�V]��+$��)�ĄLkAD�y�>��~(+a�}Svךs��;j�+���ϧ���5�]�珄j���DvR��F����$�3a)�]�!�6���@_�Ĕ5$�9&�������	�I]<!��cj�K�P�9��P��Tsb`a(�~!d'������\x�,о/^a�@E�o������ކ��Z����B!*���49�9�\��3!6?��������#o�p�ac�����ʮn�����E���6���	\��/��Ko��+�O�[ꆰ��6��eҎ�L&��f��X6�g�ۘW=�!�`r�Ba/�є1�Oq�๭}r�o����L�@�Qb����w��y�3��B����11Y�/ֹ��j���TU��'`�Ѐ',p�Z��#9�Q9��{�WhZuG�#7ܰbll4��g?9����)�j�H'���D�R	�0l��iQз,���Fb��1t�A�FTT��(����w�Q$�򨺺�}���-�J/ږ��l�1M�&"sn[����L�\#B6���@���!���d��Ds���("b�_�4�n��e'T'����,��@�ea��]�������g�\�R�t=Z�SwWW���Xq�<i����^���o^2]t�i��W7l�1s������OGO:�Ħ�k�M��B�d��P]SM?��w|�c[���u0��jU|$���wn�}ˏ��s��P(V~{���---��V�x7H Bsk+z�����̝��=��"����RWgg%�Ͳ��f��V��$���Ml�>19R�r‰�u9ƒ���XVu>�b0�}ߔ.9���z9�f���ar]չ���>�����Vk�d�,Y�<b3؉m�!�2�����<���@�1f���<ʶ,��<����:���{�w�_�/��|z=��K�U���k�����u(��	�.���tq��:��m�,��� �>͵�i���w���$�CCC�V�6Y��j����:��
�g�Zp��{}�v��3tfe�掠�z?�"���9?�Hk#��i����ڝe���e��k"���t��Tu�4sϵ%�8R�[{�^��C�n$�/�s<h�$����κE�����9ڹ|e��(/&�)��d��F�9[w�J�3}��t��XZ�{_�B3�RP�R3\4H��IJC�,Gk�i�,5�je:om��:S�W�X:<�%K�T�1;�D��D�)h��$	��x����E�@v�0��.P\����7���?����8FG�^�a�ʳ016�'v�ç�%̿���j����[q�����/��އ3T*���
��s�i(�0��Aad�O�N�Kw�b��!��>���]�P���a�;��ǎ��VF�����!i͂�B��"�
1�I�,[����115��;��[?܆����+��k/�`�����uB��0��յ\\�(��-�ܶu�l
Vy-l1���<��$�Z�Vz�UW�.\�����[N:x�!�(c�5�ZP��S):lSt@$an$2��xu�#�7��~|fN�f����(ҽ���ǹ&��gۢ�
M�X��D�=��u���t<at��Ʋ^�k��h5�NŪp��-��{�s��j�ZpE�ȑ�3Y�e�_ϯz���l�֟�p��}�}�օ�	6�X|��_��㧟|�ə��^X��y�H�k_��/鋣qlV��M�	��󭛏^{�u;_���W7���/x�w�͛�#8���D\��p���ǏOۂ�j��ܵ�9���1F��v��.r�B�?���J��n�]��'+e�M����,\C�J�\+L� �,�g�Z���-�u�$Ӟ	��iun$���/?�rZ��u���^�n
�C*re��6q7\��HAG�:�K��U���'r��֋�B�u�g
j	��	�;ΥI�îT/P����~"Y��j�1�8��sgG�A�|
���oy��>���������;dg�x���^qq!��N��k$!�F���&�0.��rO���3��2�LkC�JMNq��H��쎵Q]�Y
"��yXq�r,Z0"`jz
I�x���KA��y��5�Av�?���N�B����V��H��{'��Nc���nZ���=�{�-���c�u���U�
�d?�yw_r	.�7�J�""�,aS�8�%=xp�;N��qd׬���aۑ��w>4�w�Q��q��q��C�8��.��뫸u[�?|Sg�/`�p�(D����7P�<�@�<5������1��+��UU�"����2~�`�`Y[����i�&���}��_~��v�|z�t�@�
](�ۖf���,˲j�ί}����x�@�?���w��o����3�gbA�{A��z�g�����Fm�k�C�m��І��D.p���Y��=�~�ǔ �(��јI�-�����??r�\'�n�ڽkG�=�g������5�� @��7�ݻg}�S�6m�ܛ��"A��S��O|��[�뿾��0�R�?�ݿ��G'
�b�#"���	����Æޕ�6����R�D�~���~Û޼����8���:��{|7`67?7n�$D���L��=��9z�K'@�ݜ}���r��q��������Q��΄y4��?��0�T���O��iPd�H9�X�B�@kr�>|���=��#��ҹ����"����a6��^�A�9J�p�J~����v��\��Xۑ�r���r��KV
�O:U��8��`
tH�_�W�4.�y��5$ad���Q@�B0	�_�}�كL8���;j��{��8��� �y!^><L ¾�y��(����)̮#" �i;1��d�`��%b.�������ۙB��R��q!FLj��b�FQ���pj�M�2�v;A��F��B��B��B��D�eHSp��,Z�s֮�y�P:��libw�Ib��]|	^x�j�{��'�0�j��F�~p,���ʑ�x���u.�FV�#GS?~+�/�A’B��!<��Ok\���I/v�;��&�p��[�n�ǧp���`��^��1���1���Yd�Ɯ�A����W0�0���}��ן߃˗Lcł
�u
N�p�i,Z�f�7YE\(��bq��M+�X<Xƾ3%�9s�8�%�0�2
�1����*&a��l���M(��}���J����_�Ł#�F�Z� m�P�l�,��RkMg�\U��?��s_���]�l����z����_�ʗ�DQ����s���A9Үsw�-˺��¯YB�f'����Oy�u���5���4,���^qŜ�k��)
�Z�e��u׸�I����J�5�}����mO�=�䓍 �R��W�yd��7��7.sUQ)�W]yŝ�jU8�M$%�y��g�SW\q�b��8yj溟����}睧�BA��\%��t	N�d���f���Y׀�V���S�szU�B(f6{Y/*R�*��YjG��+6�!#�ͬ?e��cUD�?;��SEQ�Vџ�����5!*/R&J/s��'�s�D� J@�j��l��ẃ*>H�6CM^��a�s/	A�u��9�����8�0��&}HY����Ĝh�DѶ��Ա�]�������#�|n�a��\����\�9!3)�X���1������]0��u<od>_�(Ü�e?7�zY��hs�f�Jzm�E'����>^���E����8��ޏ(�k������4h%������$��z|r�'Ʌ�P���9K:\~��ϳ�0�<C��6(���v�h!�)߭	a���-T�~��l*T�Y�Wf��i�5�:FF��ld�bdlR�62�;N����l�x>��h=葯���=��as�!Y#�	2YD!����������W���L��=�'O!�#$
�)/YA�m�<��ON��kgp�c%l�sO����n��l��o�_�/X]F�ڸz���e<�n�Z����K,�&h��l�,���	Y	K�	~��"Z�/޶�T㡓s�[��D���y�baA�����[v,Ʈ}�1�W�P-�f����9+���8��磴�7i�]o����7�pbfzJ���ȑo�g�id�e�d���u�[�ַ����˖
��ܷ���_���V*�{��]Xն���D11'`�l���Gʮ�0\[OH��X�ȍ��Iz�W��F�<�!�$f����	���֭띙�nW���m��I�@D�bA�ܱsj�ҥ����f�S�����I�1x.n����{�ΙO~����w����n�����k�� �k>>,����|z�7o���5k�4���C>8Q(��2���3��ދ���)“|>�
�Za6^��g7r�]—���<�6���͏�8\G䯑�?}��\�s�/�,u�?���<��Η�4Q*�٦�b�v��t�.�*)��?w84�&�E���f�#��r$�<b{p���?�s�lS��[ur��+Yqp�_KM��!H9� ����.�����G��2��'��6Bv[�=j��Q.�\���=���rvy��3�(�"��ڠ��-jB�:�P�}]y�v�g��z
Rs����QQ�Z����v�!�QN�r�-�m���t��E2
D`���6�?e�Pi��1v�!S
���A��s�|�-�)	�f��4�F��j�0<<�+/9={~��?0]���L�:E�bͪ�3���k,�PB���O��ɇ����C�i
A�d����8J�B��K.\���|?�vza����q���`f,�a�`�uC�s
�3a����p�`E�A�F��W34RD d ,���ˋX1��/O��D�G�>��V�m�uI��4�-ly�)���us0�<���U�,g��`�1t��P\�v:4&g?�7��o|�t���B� ��J؋Z؎J��MU�#���^u�u׎,�?��O���p�
۾��o~j���j�V�o0��8�MإE٤(�(�00esM�ycj[ݩ[�����5�2��A�Fd��9������Olso�R�$�L���v�MVaDq\�;vL\s�Ջ�^��>>=����S�Z��MB���O���ᶙƌZ�xq,��`օB��&'Ӈ|`�~=.@[�֐�3w<`�k��o'�27�|| �T��7]���;m��(9��(F��
��͎�Rf[�
�s�23y�sh��B�,k3��Sׁ�����
���"��W����:��om(&�(�t|��l[l����TAG��ɍ�J�f����ut�Ww�Lf�h��J�imp�םŒ��9r�krg0���Е�޳�p�K��.}Rx-tf�;鼫�P����?�?c��aܬ��b��Q��A�s)6�O�ll�&�
k�Z�B!�m'q{��f��UJA+	�)H��,�
P k2/��2+d*�JMv��,�G�͝�e˗���@��l�2v�Ď���&��yW\��c�bf�M�RQ��Yq3(�#��؞��f�2��m�5�}�hV�7�n�'� 2����]8}rV.����q�R�;V���w�����֝��g�CP/hT
��A��r+�H4�D�X�&�
�&�LGV���؊#,�e�ō�Hc��8�^s.�z�I��{'NJ<�gI�0�h��Kp��L9q�A��Ӣ�6�j ^�:׾���<:�gף�<��Jq�P�{LX��Rh4��|�o��o��jժ�r����[����>�g��ۧ���V���U^�k�٬e��1lA���.79�7����ْ��
�mK�����o���a!`��
� "y�m��m6ەr���O����e��lF���^���lFD�`�P��+��s`��&	m�Ŏ#�:f�z��`�@����N�S'������y�}�y�:�o��x����}W�:)���wm�}�M��dmw�~gl�Ln��̇]2ye�f��}���~�k6;�P��C.<"�w8P.v�]��ANu�f&����܊�+����a���Cֈh���l/>�TX�H~�g�^�$��Q��uN�<Hɍq�j��݈Չ�����'<q��5��4,���\��^�|�aPa'J���u����e}>��`m�g���3(�A��T�	��Eκ��l^��L�u�e�ôߊ����2Xޝ�lEٽ��r>��~O����I�p�6991�;0�œ�q.�r�mخ�R&:��`���dRe
Y��������Je�bd�b�jUdYm�ev~f7�n��(�K���+���`�o@7�A�
4�5I|�I�[;��FG����ИJǧ3p�@�
VxL�4����;�b,�n�<�h�"Y܋�H�G��!�P�a�e��+C(��@��I�̈XI�T
V�ѭe�(DC�����f�ܑn�}1�����=��/�ۯ‚�2�@`hM�a�T�Y���z��_Ol�q�}�=Oo�)���[X��&��4�Q� ���;����Ȣ��066��
7���p���b�EQDv_����&��SnTgmw�lO�x�]
��\NY7���A��Wo�Rd��ks1��f��bQ�����;/~�K�~�O��)�\m�۶�q����L���X���w��k����#�~�p��9\@X��wA���p\���a�i(E9L�b����/��;�ne�݃c�Ѓ��7!Fъ|�1�<m)R�tG��.�̃�
�P@��&�{A?j՚Y����7)+�c����!D��g���=ʁk�^!	w~�r߫Ce�b�HQ�n���ɕZ�Ѵ^9�&� k���ǥ$�T%�Ţ�9G��d��~�ڍ��:�0/����J��T�>{ʊ��A���\Y�R:����J��t�9(+�v�k���v���7��~��ݿ��N���	����@�n&�Y��9Ә�`QK3��P�<���DF�$�Da�<��%rN5��f�,5EV+ef(������C(�$I�������0k��~�l������;
*��R �_9֏�<�
�V�׬�[W1�b��D����H�p�_��w��%K�R�4��K�Q�e$(�m����`{�jF�@V`L/h�9� �5��z�����g�CM`�>J:�2�aCqD�X��!`I�$�]݇�'.C;�_�Ɗ�S�P.bc�jQ�sށh�Z|����}�O߳�ȡCIG�����ZS�$|ަ������Ο[)��V���r���O���=�gۭ�.�J�<)��/��9%��>g6�=�n��E���?x
����s�:&/pd.�%f?�m�Θ9&@FR�����w�y�R��6R��E�B	!�g�)w�3wN��Rɂ�VMA$�+�Ʀ)���ݣS�r0~��G��A��{Z��%b8�4u����.�;A�y�s�G������z��?$y�b'�9߃��P;��;�$���wOa|�{�L��1���C�lw����3vOue�j; �	������0�����ڐ��LُxC��G~ܧT���v�z{݇����gt�AS��B-��h0wY���)�N��r`ˋ���{���=����H�7:���?\k?��.!<K�QxB���GDB��P�?�x���|�S���4k}���V�&`Эޅ]���.�T@&�\c�% 5�0�2$�)��5�R	�Zs� I�fmv�I�,M��Vf�����å���ͧJe5!�P-Pu|�O`rjC���+�`yyZ��$�)�^U�CG����!�$^|��`�z�
E��#4���9�iHYF�]ᦀZG��Qs�(BR�_9�v��.+f*M�Ha��ȸ�ʗ��`$����ƶ3��	q�1��"/+*����� ��`H�qd���̅5���ո���� IDAT+7����ɉ�,.�D�N��U�R��?���o��,��c"���7>��n���Nfi�0D��:�xlw�2WC�bB��I@�8��6�z9���b�`��m��U���B�'��v��R�"0K)�,W*R������a[�5�x��'ǦgfZ��z����SZ�D�̋��u��4��Sv�}7�u��Ӕ:o�ۧ�w�Z?S����w���xa��a��l,&����u���\9ȿ/�&P����b`�"쐂�G���s���ʍx���sG��^7g��8q���I���DĶ �D�y�.Ӽ�Pi~��1|�hvt/e�"�`�>�A�q�˾��!qwF��0w�H���$f䷻�Z��&Á�����#nW�B�H�I��u�.�.�U��.&�֤�T��+D
��g�`��ݜ]`��h'�ıc�C�F�G��j�BH(V$92;ea��Yf�4��L7M*g7�,3�j�k�(�K�V{��OY!X���+M��U���\���1�?�=@Z�k��
����43�q�YXWG���r�	i�8��K����%����-�p՜S�b�6/�Ai��P��<�R�*j���A�� ulB�IOU��E<u�/�-�����^ԚY���
�_��ı�8=r��ӴɈ��h���"���dy>���)fk�����S�8>1>��8�p�G��
k�Y_������]y�P�\�fgg���ͣ����=�oo��R�|x�����&0��Ѧ"�z�v���іp�)�7�O��uT:��
�zaP}L���t�
�*ؘ	��0B7'$sYӆ]l��ccc�_}��n���_W|�x$��ԁ�9(@pB��y]q�w����;L_��~�
���ʅ��~W7��²n?i�*ֽ���ba�a�k3��~U��#�����)����9��6�z.q�͍{��;��^� @k�3��.�
P��LN0咦|A�]j`
av�S����t�G�GfΌs��\s���b��̉ׄ�0���V���N�mw��3
@B5BEu�p�\�am�y7a�}���v���l��a���/���<���5O��iU���HMZk�R}����+�d�,+bd"K�6�������d�B2|.�RJDq��J��f�'rۓY'i
�2�^�Ϛ��oܘ��T��M�=4R�9�S�����햋Y׮�`���΃���1��	%	(]�"F���O:10�����@�@��a���oC@�,"�C����M��d�g��9K��5����\�����2���A@�!�Iݜؙ��M������0�l�o?��K7|�t�j�8�;�K.�z�y�k_��yo��_9�^��Zk>r���'?��=_�ʗO'I���$���v�3���6?��=e> ���|B�Ħ���p�.g��:ѻN3�7> ��D�����j;#�̑0�v��w"4[�Ik��P����P�C>pb���˖.-��pw�m�t;ż��l�u�^R��t�>�݇h���Crјc[4w"�:v����<|�E���Ѝ�Pu2��� ByA[�
T
1�G���etvyϴN��@�D�hQ}N��슳�^���e�p����oD��f�UH�]��b��B�c�gh{K�����=�C��Y���X�+�����k9P<�V9��Am���v�i��^���]�?����K���l���i�w=���Uk��)�o�`6�E���i��g��RF+69�J��$��Y*�Z����V�S6�/��L�S��筅�y7�=�C�*�@��IX:��)Ř�m᛻\xA��VȄ�ߝ�
��+��`���Z�W�*�S�R#j�:E^�L��9ؑh +h�j)�s�d�����C�
�fZP��!�D�%ťݽe��c>8���U�^��_���W�|��K./��#�oa�LT {�$�e�Z׿��y��|�O�|��o�a��8xi� e�
�m����g�El�E���f���O���_���6�3KIBH
���-vZk���j���adk��^Z��Xt��fl:�1V0r���,'abUE�r[�Ʌ�G۶slv��"� �4vJp�#��PJ���;w��ʢ9D>�ï��e7�d�7t�\e�y�e�I�A`�+�n��۫,~�3���B1M�n�ء�u���؜BkW�5*�yu ��S���r+LG��1�,܍
���k���4v���T�$$I�whs����!�(�s�����Eb�<3Y@g�<����Hݎ���(HK�!�2rпR�����#�pb�'e�9�+`��4-��S����n�ѭr��`�������J��3�2c}�D$��B�,���$f�T*�k֝���l��q�B�R@X�	�J�
k��
Zh@+(�h5�;
�qo���ZL��.[�f�&H�	4+lܸ/��>NZ��`�Y�-2F��6&�C�ql
;��Tu��i�Bk0$+<5]�G7���;��*~��.l$�A N�:C4g�yd-����rL8'`���-�Cp�[K�L%��P�PX�
d[��}�w �q��c34�sF�V
���&սw�1y�w�х�^��e��%�b�<5s�H�
n@a���c�䟽�{~p�-R
!l�PJ��n�ᑥ����s>���vͪ�{�v��=�������ܻ{g��D6, 0�w�w��Γ��e��aKMJ�R��}HN���A�0
�#,s�apw�>Ŀ�hD���oĚ���jWw#uA��}�.?6)E"G�!)�S�R&J,�*u$)�m�-I�|$$�~��QQ�l�Om
���d��|�K=J�מv�<�:CY�/��:�[���ܕ�ܐ�����:Hc�WG�	dA�SH}
�=��f�k	R�r]�{<K�2�}\���нw�c���F��> pp�g��2r�w����v����?��Z�L3	��CE����V�P�~��;�}sq�q7Ơ`g��ׇ��I�۟�}}f�������F%‰q@���dF|b3�9�1�X�B��8�����?Uz��b���XS��#����֌��I�ۿ�V�Z
�bq�16	�6�k�����f�\���⫟l�	��!+u�<���dQ;B@h�scK�o��c��C% &
A��M��k�-��_��s��9M�)�
+����.xv�� d��=fE�� X �UHk�Q�HE�=PD�D���!����_�O�a*FT�R�̙��@#i6���8�ؙ��g|��ѩ%k/+�[�B�D�ɽ:��ID��:��?��=w���r�,���Q�e\��Ź�n���7���{zz���l��Ï���w��Λ���cq�8��-p�+%�못:�����Mңm!�7��+�A/���n�evH�ՏMU�E>��qx�:K7b�,�ʅ\������*��S�Q���$¢�D�69�#s��Sa���8�<ق��5
��"&A�����'R1�"/��[�(IS�|q
r�âJ�1��l�E1���B�3��/��Z���v���-��)��%5��H>�5�UՅ�T!�2 {��}ك���}j�v�s�I�1�A1����G 
�w�;<t|�f*��!*�b\w�\��6�N}���5��'ra���I0���>^�.�c�b�<���,����^���T^�&���=U�\��\!�6�p��-I�tϮ�V�^wN3͢(6s���	�)�� Hd���h4����MZB���B�GF�2�&������7n��8��{@����M
vw� V�2FM7��//�����w=�G�.�sV��
a�Xw=1�b!�7-���.�*2$$��	Q(s�_D��bJό�x�K8�{q:k��v$�_@R������T-JDf"ԎG(�L!F�C���h~��;��zʤ:R�e��4�"�	J��@J�j�.���Om��x��.~ŋ߰���¸�>z�ć��w<��Y�ׅ�;�R�ggg�9�7T~�u�����,Y���̼kϞ��~���n��/�<u�h6g�ܨC���9]ɓ�aI0R#g�	Ɵ���E����a�� :��:�8K\N�D����nʑ���3c�ت�#w��C4���,s/i��t�6@��t�\�1rt��U�:Ʈkg��j�=�����<�Q�����P	�0F��V?�H�|��v9�X��=��O�h�kyX����j�w��]s8nӆ�D7�¨?!���%W9��黠��D!7!
3�]��}~���X;E6{O��ݭ��CؙR���1<��i+��{ \3��*�7^��ܹ�ur�F(����b��>�"�u���~[�y/qp"�23��?�����E�BC�@�աu�J;���&�RY���>gæ3�V2&͚��>��/��0M�q��Q4�� )�l6�N��Z#�
�� =L�<�V��D&$s��Ņ睋��_���U��
b�%�H86T*��s�qn���K��Jx��8n����_P�Vq�+�e,,'hs̜̒(Ut�ʷ
����W�؃E��U.yw���Z�2t�2q����D�S=H{8"D�@<�B$)h��(]�N��B��_�%��
�l��R*�1�(6	!�T*ә�dz��h5�/����~��'��_|���#G�Z�nE�$��Y��7G>����������K�f��8��O}���?�H�-.�˂=��8.K��IF���W�7�-؅td
w���o$5h�k-(ȅ
<���j��M^%aCl��9rj��l&Fr�Q�m�sh���;���`�
嶚<��uh��zcF�v
c^�N��>eIw�-EI#����U�74P1S��t���rF��
�@%fr�/���P��0=21H�

lǺ��),NEj�y�/�]�b�x��A����=��#W�lg�Z��>c�0������)y^8B��Q@�D�v����Sr��Yn�]n�Xٹ|)�| �m9�[��hd���&�Ig�m�éfvv�n���F���a8�=5V
�+X��D����De�fҬI@��shB'$1X3���r	�����e��΢5;�F��v�
�2�P�H�`
�]��<�3����\C����7N#d	Z#ū5�j�"����T
pޢ���,�i����b�{��+�X�&5���t�":���9�z/�[�h=�5��i������G�L�	�`p\�\�"��^�l�v4�����P�c�� �Kg��%Q�E��N^>�Q�Zk���߿gw�?��C�iOOU���jM�uo|�Ћ��~��ŋz���zz��M�������ڿ/)��"�"�ꈌ])N�m=8�@� L��)w�i@&½�8����
b(b.�¡6�ǐ6q`�0v<C�b����f���5�v�JI��b���‰��+��"b�M��.6u�XuPt �T����j�{�`G���W�C8��Yib��w�A�[�ز<*3�lRp
А�(r�s���(�ß�n���;$��`u่�^�Ztt�HE����v(�Ca ��zBֲk���?�?�*c�7��?�x��0!����N>Ȫ�Eذ��|o����!up�o
�W�����[8����4�)#�$�Σ")Td��	r����p�G�dc]tM>�3����A̼lx�����E١��'6�<��ڎ��<�0e�es���]�rͪv�E"�,D��#��h�ۨ������j����ќ5]���4����S� �$�Bd��*⒨J�"6�=3<=��
�D���B�{�+(�0�U���P��5C�li�b`Q�Q�������覆�#�Շ���ͫ�m)�W-ǂf�q;!*c�W~��k�~�HG�nN�{��`!�KC��|�~D��A�����[�
u�W�Tmĕ���m��U[��z΂r�dJ���,�Z!�Mo��/�(
d2Z������]qeߛ��E�_~ټr�$'����|��G��寞x����b�*==9�<�k�I��3�5���E?���]7�V�F���ݻgw+
�jt��G]��o�.L��$yȾW��GQܩl���!l��١k+Z�l�'Ҫ����f ��c�U�`Yؖ��>���\0�����ܜ���c��,�+��:f�;u#�܂H���v����Y`�*
^��3�щ��_�:���gP���`0���b���wt#2�0/Ȭ
��@����@���=K�P�t➻�G(Py�A:�������������Hs����٧�)x�W�8f_rT�n��;P��iTw"�����I[p�}OQ����^�n����*��%@�rhs��AԌ�^^a�~�����G�˖,��C�~f:�(�A��H�����J�W"*GB�&�Dk�u��TG�N�Z��T��^Pd��d�IA
i�f4[-T*,^���n�R�A�RAcf�f�3ӘC�XD,	�JD�,KIe+�H)��+WpA��S��q�[p�;p��½��29�&�F���&D���2H)f���\�
16x��ȟ���o~3�x�<7j�ҀE1��7A?���_��忊��	�#[�N�j�gm)V ��!�A4�"�B�܆잏b����L�]-��.�bM��8r'gM��HUT걐ӌL�B{c ��"�H^�̺�Nxd�Y�����_���^RB��={����/��׾vjb������5��-������T�=wC��K.�ݸqc��E{����wj��=-�ܡ|�w�xN��!l�̕��ɮ:W��>��ƌ�Awh�C���
�w^N;~֖�%�IJ3�s��PK{#���nU��Q�s"�����.ٿ�����6�M77eG��K��gA�@m���<���V�q-u���߈�J�	��HŎ��Co��(G9v�bl�I��h��+�ݱ|!�1L�qv��F|o^�0�������ۿ_>2B!-�3�� ��L��]��;���X����5	+2�"�@�H�E�f�Z��$'�5��Nm�{*���!��CR�����AY�ʭ[AҜ]�PG��r�.�Y꘣�Eދ��5�/;.�؅�� n!��Rr�9�:3v�X\�-�Y&4�ZH�uD��臐J)��E��eԪ5�LO��n�9;���q�ED��f�q,��f��f�s�R�����/�Ah�B�@�L���ہ��
��YhH�$��M@`�i��k�z�u�3���u˷oN	�^�*S�1T4��ٻ�A�w*�^�҅ 9���M_�n�AY
��@�؃�6�ȑ����I�6:��ԃV;�Ho�%!���P ,�J�21
p��)��͙�4�p�s�����߾乗_:X*�����{������S�my����R�,����e)k
Z�0�t�ի�~��y6��*�k�Иi�{��>v�h۾!)�J(M��YؾQd�NI�z��C�r��-�����󀝲�|W��$� ސ��}�Ѵ�q+�4�h�l��"���E�7z��Mnʃ�v�\"@�g����4y���vi�,l���M���[�oD�ُ��~���Z����L��}<WE0�W��"(R���=n�c���ֹj����`��|�N_��h
#��]��xW����D���R�����aw(!�A���5��TP��99 
if�!�o�#a���pM��0Lǟw�;�,s��'�=�R�}™[���V�p�_o?r���Ǧ������}ùB@B����d�FzH3+!����L��s���/���mW��60�!%��F�ل�
��3�E�JEH)Q*�S������l�����)�Q�BHҬP)��I+�,M100@g��ͯ�C`�"Ĥ1�#���ŐH��޶ߧ�@�2�bh;RV��M�d����t:K�"�\�ܴ���_��$�R��v�i��*�Ԁ�b�(@������މh���9�}���k���I��ič1ܪeV)� IDAT��z�&���z���6LN��G'��5����
�Oa0m��+���8$lw̝� ���V}�s䯿�]�^��.�?~IJ)�ޱk�c����u���䤒RBJ���fff��̗\��ʫ^��k�Y[;k��jooo1�s��C��7?p��ؖ��G����{a�a���)n�	�֎��n�Lm�"Q�Rv#P�2��`�F.��iҽK�׸#}��R�L0K�S��d"Lj`:��f((r�5�9���Tx�e�	�z�;O7.� �X�;�a��,h�uj�Ž�ɐ��ܥ�r���J�@Q��ܤ�͎�lw4v�R�r<�>~����a��R������s�X'�r����>��W�z��s'��M����;$�i�p�����GX|,�}w�9�8<S�0�+G���R`;� �����WهV�u�ߵ�|amj�|xX��?EyߡC�|d�E�*��
��Y?�"�q�����S�3�S�!��5kҬٍZ�,���$ZI2�P( ��E������5�6g���h%mLNMBJ3qL�5*D��i����a���&�Ɔ$Y��nڟ�3�w�������X[U�4�
�����)�\��-�(�&��`�d�{�)m=��>���'�i[�x��c���=��ž*���\v�Y��3�g�b�B�Y1�gg��N`ݕ/���o��^G���o�hتj������@O��3o���ds�٘e��7i� �/}�~�
���������fK���=����Gz�A"ü6	]�T	�;~�lڸ����}�J�RQ��D=���3=���{�ܹcGkff:M�6�QLB~G&��?N���+�M!f��,�k+���p�Ue߸����K�%vE̍�S��.9�.;���	/a�d3FW�h]ؿ��8[��Z�:��@b<�s���#v7/7��؝/un1�/��Xs��:Up`��.���9(��#`
������j��g�@�˝��QlC��K��]�\���g�J݈{߳s�M�dI>�r���"�|Hͣ@�.�\�ɎY�d&D�Mq6�	��7p���*�*� �$�9up���M1U��1s�
{�p��� h��};��.��}
�??��W0�Ӽ-���<�@ik�'@I)���Z��;���M��V,��2���&�,E����j�:*�

�ʢ��H���gf��qj'-LL�3�Te�Vʐ´�K�S��ͤg&�b	`�X�4wM066�م��Jp\��c[&p��}�*E�\ƪ�p�ʹx~��BA���y��ͥ�Sc�y����l���wIJ�̜���_�ftC
r�̶�@L� w>�eNpC��{h�����}��H�]t��O����	�9�s�eY�`���P�'�S
F*�����{�5�_{�7���j=�=4�~t�w�������H>v���&	�u��›��E�{�e����z*)� �5��O$��v�ѻ~���{�11>��4qV,Q,�#�|sg�O銝-ʱ�!dD3P����c!Dj;�doGΙ�V�-�bt��^6<�5ػ����`3�XZ��������&{֌֍ Kƒ$��}/�@Ir���=a��
�󱞽iy\����ۛ\����'�S�&	I�M�)�� SuН��3�͠�v�_�,8�M�Jg;J��TwZ�:��˨����9?[a�N/2���v��FF̰ܵOm�y
�]I;�ɋ0�SDBDl�d���lH�����#����0�\♥�Y|�.p�{��`ӠE]Gn��< �_{*�3 �s�1/�}��ƝqcN���8Ȁ
<rϏ�]����8�j6�*�K��E��8�g��1")1;���8�*��1dT���#R��<95Ai���I03�$�BA����z��!J���b��������GN!�b,*��;��G;�crb
pz���cӸ�	����Ż�1"V`�6U�P9��pׁ3��{�NA�XZ�I�SQ�5Y:� $:oÐ�\"�p�>߸{?�������8ƖǶb��sqх`��5ػw��pp���SȊº�	�d��#��GX�֚#᥯|��o��+����l��~�G>�w=�oo��YHIZ)�
z��4����d�ҥ#=}��q�P� I}`ᄅn���]�Z�>��l�)�Z�F�-��9�l����b�LeT(�d�v��.�(X���Bǣ6�G3NVlN�2�Ê���:,���7o� ��pk+{�'x�;�w��@:յ�ѱN��,A��V#�_taSwܘ:�v� ��n^�+R�*�[�i�C�P�z���#�<�#s���c�ǡJ��Vu�O�}�����P�e/���X��!Cfd����dh�1ۢ�@$]��	g�
���C�C����J&�4���]C'�t5��a�';���u[56�lxX8��vAvB=�<�OU�������\�/�]��
��ܓN@�����U$c޳{�T��w�5�*���,8�����̡�P@�N055���IT{�(�(�1SO��UHJ�c���$��&�&'��	
�X�[�Qs����1���Ϝ���\lX܋���I��=�099�j�o�r
z+1�p�.?5��مkVn��SP�h���
t��D��O'�ЅBAwAĻ��d�5�@�lN�����x�ɮL��1x�:��=��y�8v�8>��O�}�{/zzz0wp.��ٍ�M�m
š��uK���T�H_�x`:k��r�)�13=���m}����}��}�[�w��R�$�Y����p��k���h�J�X�B���f���[n���-��۷�f����
6ޓ���F�ѧ�o�(����? �$����+��%�e˖�\x�G�����[�r�T*��9�g��^`�_��u���	T�T�v��;=;�k :c
ԥ��>�ɥ?�����%��3oE>�
2�؅l�s�g>���tr5q`I��竝�W��^'�
��䀃:c8}�|g�۩�������>�X���{�������N8�P��t���(�f#���E6�T�p��b7�p"{�S�pEPv���fN��ءO�W�����0�a�NHɣ>���y�L>�q�E�f,����QO�6��Y�PmG"L�r,����kׂ�-�HA$Ϝ9uz~c�XO�w���!�8yB��uQI����E$#h�199�j��b1B�\�b!�\�!����ZC����L'�6f�EK`��łN�8�.�p21���b�d��U�e��/}�J�~h�2��V��>�R�ݲʘ�V^����ޕJ)aII�)U�����l`t:fe�404O�4���۾�m�ml=��E/z�z����Ԫu|��J���[��T,���6���ji/�g&�R�&�z�%�͟��Љ��v3�iZk���>�˧No9�oor��hDZȲ�K����\��W�|�X(PJi��:�җ�r�_�����1m��o�.;ھa���"-z��K_��_t��+W֕ʸ���T�鉄=8-^���~��#?p�X�T2��3�R0�""S���R���jT�̽��������xαy���.�HN�e�IP�$��Q�8�fz;b
9w��ٻ!�5$���l�o��.�~m�u�?��v��0�[w8�����~t��}�?n9�[��֑0S&�%�\sA�N9��td�Q��!���#&�G8߽Mo�I�R9��OXS�>K����_���2{�+���yt^�u����{���Ip@�")J�(Q�mɃے�zL�$�����}��ྦ�u�M���Y����e�I��<�v�4�'y�dQ��y8� f|��;���8g�s>P�$[��K���`� ����7��z�0́�+��&��FR J��%�q.�m/��92=9I29�y���&��u����W���84�'*�8�ًړS�f�(�v���zQ�T�hw�l��l�ԧ<���*�*�V�D1)E�T@�����p��E�f�ҔH�ٽ{'0��Ë�P�Ĩk@k���5|��0��=��K��+�;jP�U��*.-���0UK��y�x�$Vk{̟|���gN���!9�)�����@��|=�����踈�k�:L��;�`ЮĘkx�#����n>c
�?��k��ӽt�g�'z�
@O���q�7���,T~�7Z�+_��6X���n���W
�s�=#�$Qk�t~�Z���'W>���}��_j��V���"(tS�Z�I�֭�"�5��>r睍��遃4w���qL[��"�֚�R��i�XY]�if�Rx��'�>�ē���&��$ b+����	:r,Q�7���H›0<����{��۔��s �-��\�����WW��o:B[i��*A�`3�+D������K�H�񪌆�I<`=��X f�N�ƳMB�:�?�_ޏpEd�e�C�X���\A�}�fN�F�&L��OʂX����C��p~}��
�Nte����}���"^���V��W����^[	�Q�C��ɉ�ƅHt�\�w
8
�<=9	f.'忈�u_Q>?;�S��"5����9��}��F7JZL�ʎ]|���x�����΅��t�1�l¤9�4EE�U�ȋ�
Z�-��1�5ad�R���9�RN{=γ��i��}��l��C��p(W��b�ٹW���G��>B�!+��%�}��1�7���S���&�[�#EҌx�Kpn��~��yR���M�:�-t�����v�u+|
D=���Py��J���N�8���ƿ�sg��7��(��n�R��-|}�k��(�bE|m6�ex�yZk�	�8���ײ�~�K����/}���������B^�T��
�FS
4���`T�թR�������%��[RJ���`����E��v�jm�&�rsqff��'��|��\\]Y�����S��&K��v�y�u���D�Mv��E�A�޼�e nt}֗izr�G������7vY���U�ɺ<$�yP��q'�r�)ae�}�]zS#4���/;
�0ý0����&���4�Ϗ�D;i���U�Sm
B\�����d�X�^̜H`?ǰˈ�c2&r�e
�'�9qN�/�A�J��%е�ze��E�%�fB�pr �2%{P���ڕKM56��7)	6��yS����v;d%l�s�2�9����U�D?��9�
H�#{�<X��j
E�˳��#G�ֶ6�+s�zee�ku��u�h6���+\�@�崱Ѷi����2��͛���b����^����Խt�B~�6�HaV���"�m,О��aƻ��>������=>�"�m_۪�(pl=��:��#;����HCך�c��gN�N�,�(�)'ޅ��=��J[Mm;�6 c@�*�hW*o�#r��|��}�(���>���,�!N���ȱ�����'6�8<���:X+"���뻇�K�i�Ƕ��	6Ʀ�i���SOv��O��L��P�$j�m�k�z]gyf�|��n����C�n��jz�1o�:Z�4Uq��-��w�<cR
33����O[}�رV�����Bv�̩n��\�T�1�*��Z�X�O����l1n���X�6S4�}F|�L��@�	�]�
4�]�h��I���w��"٧�����!mm��rPx�Tm��]fD{#r�Q�U�����Cgfz�ݚ��M��55>�m%&��?a�|v�m�;_	�-�$����S+D����
c"J`�	3�"D0FQ�֘��!��3օ� �B�N9w^�*��mR���D�U�zQ��6�ȻHTo2B�Q��a%�@O��l��S�
`2�̴)UM���8	�[\�^l�@�lo.�IA:"��X�Kց�ee�ǚI+�,��ueE��AI]����o��x|tu}�:�.z��^�nU��1Y����z�lue9][[�N�Z_�.�]���V0QQ�jr�T��˔�V���j�RH�x�/{�Nl(,�s�ĸ��F��ٖ��60�ewoIat€�hx��>���f���h6)�%}~lf�/�Ճ[��U7&��V��j�]�&gh�������#_��~��(�q�|�=R%R8������$�a&`��շ�����V�羠���,�L�Ĵ}lW�{��ʖ��
c��Չ��������}�ё�
�$��Z��{��f��|{ee%u~����l���o;�����u�)_�<�.-.�Z)�Z��Lq�R���j��
؛��I%�nY⒥\�,;[
<�i�K���W��C+�r
��4�#���(S{d:���1��P,G!
�X:���
����E�a.607>(�y
�6�*(�R�Qpc����A�b�Q�K[Z7u:_�ȭ[�`g���Y�g%J뤵�N����W�ի?�S�Z�R���g��vֱ��� ���]fdK��-�a���]pc�<�]��S`	V���}2�2����6��{���z�J�\nJ-�ޙ6���k��M��K�5i�9/[����d�N�� S@"��jU?�������x�5���4��YTI*Ԩ׉Ma6Zky{c�X[[n������R�����ʊQ����R�Rz��v�Tk��׶���9��dPa���(�1b�Ц*
h(h�zk
u�Nܺg��u*"��D���
�s�Θ8Id�A�����g���~^M��A����6���J9"�H�*�]8�?{��X^�������__�׶���#Ul�[�"�`C��	�ꐙ���n�����=������ꁃwl�Vc���7t�Nv��Ս�k�(L��6�Ϝ�8~����z�U��^�8w�L�mo�V��Қ��"���ӈɾ�wr��t�*��ȧ�)����T ���H��C�����33���{'&,�_��ܑ��ܴ��E K�g	H�+��%J�1��wh�Qʭ(,��lRi�AωBs_#�S,z�p��_,#��r��,��g��{�ңZ��RS\輾?*w�W�♸Udrif���������;�-��2��k_��8��(
��|R����f�����PJE�(r֟Yg�>��'�9e�3/�D,H�bu�+���� �����R�,2gM{�_+%�?��yf�bߕ�I�;��_�I�קŘ2��&��:�٘��2�{��1�"�T�n��������ʶ�c#D���nD�ƪ.�H�^�n�����ݵ�e�v;J+�(��8V$���ZkѶ�[5Z��,���ɀ�,d
�ۄ����Wr��-�PB�[��-N��t�:�UV�Rb��H���vƳ3�Ei��}V�<��T�FC�V�yA��B��h��U���=�V�[H��L�6&> "�xfC� �]ĆS�hĊ�py�S�efd������}���
�a(�ss�굍˗/u�,c�5�\��=��ɍ��~�u���n�f����/^�/H)�q\j!+I��Q���w��=0F�7$Ɉ1�NAq�cJR�\�=��(��Բ��KP6�δB���u��1%{[�	���ʨJg�(����!�qF/6ɺ��ץh��a
'�@�9�: ���c�ɹ��4F�!ng���J�2|���,Sҳ5(�I@�U��8��oW���*!T	8��Q����M� �dL�֖V,kc�1;�Cb�I�����ѣw��С��nX[]a
��;.�p��5>�shhH�9uj����k�n7#��d��i��;�Q�-����I�K�^(y�"L�o�K8
��aa&o�[�"�K$���e���˥�g��D.V���əc��`Θ(��R��Z8�.�ZG���~��Ja���VQ�*�"�Jk�5�j�F!�%<����
l�2�x풽~�V�`l����GO^�k���3�VS��~�%L�6�o��P=�Sy���%�៿j�� ((��
��K�f�B)�4��y�5{l������FS��F������NT,�3l IDAT���8�n��Q�8��^H�ϑR�xm	��؊[�U�.
����>0�}4^�|=�+Oʳ�g.\윻pq�����z��t��ӧڧO�n�=s��e)��ks���JE��"��+��h65=��7������&��
	�)��0�������w˰����!=��x�%��}����{g[�DF�k�@|]�"������ܧw�ř`�nb?qS�%s��ر��W�w�%iG��CMg�R����Z�À�2�������M��F�f�qv܀�n����H��&
k�ƞ�.X�wц9R� �1I)?�����C���������>�u�"D���af.L���������&0������ێ��8�´�L1i•'���>ܟ�\�OΠ�I�{�M�DWN��*l��u�@�T}�CIZ+�fb��aw&kb�#G7�~j(ݎܮ�Zi*6&#"�J�.6u����;M�$�(�QS$�Wآ(' !��ӓ���34�l6�ZĆAnJ&��Ɨ/o��88��a���
Μ����6\;8�C5��T�⥫Xm��䝓8PY��H#K��v�j�Z_7�j���ߛ��2�ְ���X��4���F`�#��hT2�87�c�cL�A�sA\���|����it9e��,S��G��-vMn�rEX[]��wW��O>�|��Lwuu%/�����(���"ϙ$qL�C%LaMB�š�h�|��ۭQw}m�� �p���hT�$ť �Ot�ne��Q����)A��-�Eh3	_b=�,U���!G�"�pR��A~mLҴZFHl�6Ƌ��d�)9ye��[����;7-���wQ��Yb�-��{I���K@!ZS��eB��UZ8c�{��.^�N��r�%�œ uy��t����&��:����T��R��l�p^r�𮱱
S�{*xT��k�k�꯾>�۶n��O}�-oz���� Kܒ�V
��ʓOy8��,ufEV�*[N�R��y��^��I@��F�m���؄�:Ա��g�Ӧgţm/�}GHť�$�%E��9��j�s8�)	���iļ0���?2�=ZQ�N\P@�6%�*!�dT9�DB7�QIT��M�(�PK4"w�q���Y JPD5^^^��w:S��!(�b7����Ի����a��BkT�9Tx��o�`EQ���_��jأ5�
@/0CDXL��?13_��˯^����Rp佁���sc^v�}�#w�1��YYY�WV��Vk���2EDE^�K�f�N�S\`cm��Y�(��IL :E�5)"Dq\�N����t�}�w��}f�lN�H-��xj�R���}��x8<��Ӧ>&�����'�S�ɗ�����ԑ
�`�^��!����
����@�k&c�1uM���k��U8�١	�W�0�
e�S��*,B�K�4�ړŐ�.*e�*9�nGV��)e�rWZ��,4]PHl�Xm��f���	E:�����3���Z��?y��|��F�2>1ٸx�|�m��E���Tݽ{����ێL�O�m^���PJQ��,�G��U��(G^S.�<cc4��qg�cw�P��C��v�r��0ɲQ��ş�]̤�G�}]����������L��ﰼ�{�Zm�3{`��!&uzSyxD�R�;�\�K�&�)9om"Æ)�$��	���`?��TY��䶪����F���`��"��n�^���պlX�Y|!�m0F``�A�!J�F-�9����Ň"Fku
_�G�Jd4�;D��׆*�*u`3
��ţ����v�k|��?�������j��,�M��&����^�E�<�ynn��f)��z]����/./e�������y��jee%_^^I[�V����k��E��a.oy�˿;�*��t�;�l�u��]�{��7�<ꜞ�{�'���NZx<�yqq�U�T
�Kf���i�e��x�2h����`
��P�I^�d��v�]N�Q�^�|�Ỳ	B�=�lL�
_l��_��P�=�u�>�ʯ��9�1�->fAJ�b��
�x��0*D��O�D��"�g	�pڑ�"�u��Y�׺,��1����Z�Z�V�"�/��>�_x�;�q��Zo߾�~�9@�T"��x�K^2,�nqqq#I*��`�
���������@]�z
�3��޻�#�w�c�^��o7�
�0Ŭ$��͌����%��)\���S�j��t��M�q�<`�>չ�͋�.|ۢL����R.k9w����S�s+]����U�)8X��KZ���R����9I (�Yk��!����]�h��(����B�Z���@�md�5���;Ј�Ii04gYf\��G
�x=��+6����Nkkl�B�E�����[�z��r����"��6x�z��5F����R�޹���Ź���Ц��rm�hD�Jbv��EV2/t߾���(
cҴg�E�yQEDY��<ˍaË���O��'�zG��g��
�~X�R�D>U��e6G>�P�Z)˔�ݤD!T�ؕƙBZ�,?	;
���2o"�Q�agbB��p�}�pbr�-{F�+�Ao�s�rB�0�y�F
���5F�k 2�n��W�0O(@�nQ���5e.�L��Ƥ�1�ԷG�M��l�H�|���K�R��v�QԲ7�cW��8R�+��˟U�j\�V��>p�o>��󬈢Xo۶���m���0����MS��?����L���~�oV����o�y��wm}��W�����6����E���^9��-I�>��y�(�����èI9g����(W͂"�� �S�+��1���P�H.��w"�v�{0��-��H'!"�{(Ri"���4��(س���-�#gZ�sKs��@7%[�x�S>���
#f���*L�����
B�^��3K����e���	�p� �<������H+�c
DZ3�4��Ӛ?Ȍ#�g�ΗVV{קG;{W��S^Rh{�`����r�F���y|}b�ӌ�K�4�_�c����\�OƲr��A)T*�ʗ���?���_z�͢0\���m[����ضJ��3�fS���T�J%Q⑑�J��H��0�z�
l�h4b���)(͍�4}2��ݰ$ʰu��ptÒ�;sf�Q��\}��������MF�9��q�CVy�|*�*���J`G��
��H8`�����_��$E�������K�ͳ�7�5�k_��:�1�~Z�r���� �����t.�G�������r�i
�J���s���YR�^�
i���D���3]&��'�I��	gBAQv7f戬w|�H^�)��h:�
@�q�q1����V��mt:��ٌ���`Eܽ�������bj߾&���b���Ǻ�|��t��|�!x��رVE�%��S�Β����cR%A�j��z69���2f3G�l�K�מa�~�`Y�$lp���
!_�X�B�&&�4��Z���}��=�+�]+�I�N���Q|r�3���({!
�7{G�!��\4�R9d�ɭ�򏉅�P�^�=��G����G�]�͌�A�`����5����g f��U���ʺE�M.r(.�Z����,Y����BLr>�.�д��b�ޚ2�u�0�\Y��7��.1l9����o�
����Z�$`>dH�yn���F{�oJ�\�M�������3O�;{���V�tD"���XcXkMQC+�tѶ�c���γ�T*�cǎ�0#N����♋�O�VW��fS��@����DfZ[�R8Q�����fR	�A�P,3e�5���J��05*�w"xQ:.�i�D qg
`��k�τRk2��2}���8�E�5��d�'.k��>��I!)`���8������gB�KߔW�� 33D�Ɩ'���*#;C�i'�T�X�@������|!2��Ô/)�n�a뺥]���G1ZV5Q,.]�ɡ��XØ�Wް����خ�j�F���ׯ���FR��cv�2x�Qi���̞ݻ���y���v�M�z=���yω��=����{�ٙe�i��)IY~͢���-��r�;����}vC��g��w���5����9��Q�뗹u]N� ����d0��T0���^`>x�<�+%�mA-#ۚ�ۃ4s�vZ�fC'4b6�wy!�
�7}k���-�N+��5M��Q���8c"���h�]o>�o�;9��A�E�քD)lmD8��6s��O��]4��l
xr���ٷ�5=&s6��1o�c����)�SX����"�GO���˶bG����x��bEQ�ѻ�n��_���{v�XXX쭬��Μ9��7����'Z�ΜN{�.E��隐���9hp��4d[�̲3,A\6E�/�w+����3�~X(9���PXh�vo!��yc!\�!i!V��>J�C�d�R�$u�^U��<�)�ӷ��� �9�LA�
����\�S�{�NU!����h�	�Y)���+#���J��"Ha�a��(�&�>Q_�S(!� W6��H��qY e�I����jŞ9]"}Z�P�Ux���[��=g��b�+V�d˼.	^}���������z=u�]/�KKK�$I�8�xme�Z+�'��7�A���-#�U"���ٞcI����x����=���w��v:�Z���y.iPTK�{��b̀Vv����ee]%Mx�ʳ�"��T�� A�|��qHO�4"�͝��^
<��t�
nb�g:�`&�����W>z>_�i%�9��C_yP���gUZ��^�,�.�̉�=����GT�fR���z��PRC��8D��D
w�Z���[M��9��\�P
�:�>�ƻ_�/�/�����mڹs����")�tW6T��\Ȏ4�
sbq��>��B���)��g\�����(�Q���^�o`$ΰ��6p`���gg�ʎ��;&�sn4�@��'��ߺ�oyӞn�W���n|��V�;��������
�y���&���]ߡ��b�\}Jw%D&��)Y�q�R���1�TN�a֯7�QJHR/r����]]�'��Y�
�`)���Ϻv�.�l)�~)�L�
���S`��� ����C�
�+$Z8�҈O�����h��e����3N	a��չ��|��WA���HV�˟O��?8�^�ȃ�S(	J��.�Yx3BHr�<'A��ϒ@�aq��,�%{]C>@?L�.!wA�����6�cd'�xkY�n-(�0�9cԎ�;�Vڴ�FQ�H煍��T�*X��$4ًgYN�CC	3���\/�"
"���}�#?��?m�8�w��e[Μ<������=I���ZC₽l�l�K�?�3�PU6c��(�W����Y��Kk�)	�:��5�S$�HUh4�e�!�c����" �������1�s�vo���b	�7��n�'�Q+�K��ZϩZw6�����*J����	�9���O}��]_Ň�5�vW��M� �^���nW��v`~�J���Vk�f\�mH���,73�K��S[7�-
:��[�S�����kO�[V�/�_��y��CE�f�Yt�5�ٙ�{�Wϼ�=z�ᡡ��^����@T�V�-��<|�M�o��ؓv{���s�ׯ_�>��c��<��Ʃ��ݮ�;E��e�k�6�J�v�L�EO^W���7�z�\ѦM��	E^�0�M
��:�|��S�9��G
�����N�B�p�P����w�l����P@}�9��a�>:4O�j[(\�w0�!�nj܂P*�L8�V��>N/�`‡�@
����d�𼙞�T�6��%�4/f*�b��r�~���X�
RA�nӣ'�)}�-Š%@��+)H�uX�@���I��� ^P
��[%︌8�X�r*�CO���"wGlY��ʋ��o�>�+�����B~�J�*�W��w�0sn7�1\���iߛ��Χ�N'o4�C=4���?yF�����fB�w)�T(r�dg�\2��=~�s^F����8 �Ył(' s�1��l�̐C+P�`�ZHȪ�q��j�̌��y΢���&�1�Ũ;���}�lh�_8�Kk˙9:~�:��=D	�3�`��
��R��}�n�[����V�G��>���ljTyD�DQ���[��`fq�O]ĥ#7� ���6X[��#Ѯ=���˳=m'n�&�#�_�j�
�`����B׎��DV�ks����t���P%d�uXiM��O>����?���Fs�����OT��Ço��M�m��I�ZՍf#���;F�
�`w��3W箵���KO=��}l���L��=NӔ{��y&� �3y*��2�(W�l���@��N;�*�Q��
��x�٩�sNk���NKa�MN3/O�d�Z�$w :h��6�e��;��fY���b� �Z	a{"M	I����I)�~��RJVxX�j��e��~�bט�.i���i 0O)� �-\��J�MF��:Tt��JnP�M�w����z���[���5�S�FX�G!�H��6��J��IҬ��{�h$���^��yʰ1r����<C�J��Q+%L넘1	QLD�qm���C�(
5991W�^m�kLJp�n��p�"��J+f���\)��V��G�������4ƜB��JH�����C�G�Lr�\�`u� ֔H&y*���,n���G�Y�f��#`�B&��"|��Wm���3}7���yw�A��h��;<S��D@�q�ș�3�P��r�KQ.;<۹�N.hI�!"�u�XZXJq`�ń<�������
�Di9Ap��"ő�[��G����^�84Z�����y��kjz����_�B�R� �(�àoV���9ZF�E��0�G���r?�0" ф/\��Fc���f�@�K(
EQ�(��(r\�4S\���~��k��+c�v�#����[��><899QO*5<<7��ɉ���=oy�8�s>}��k��+����~�ƹ3gzW�^MW�V����v�F�c������1YJ:$?���<[�A{��!�K-�T&�9<��
W��I��G�i9� `����BF�P�~U�9���R�W\\�)�'D�,ZXI��'0Y5����%�����c�s /�D��F��v��j4�ͬ��@�7(�B�O�:�rK�a�rE�:�;�)��իå�Z��O�a
IB2S9�"���V�K�N������h9�Q��)�sJ&��>� e,�	O���G��	�+��e�w��]A`�.���[�������{qǪ���H���Eԁ���H���Z��6���T�����?�{��f��R%A�Zt��b�B166�IBe=��_�ꁰ̍{f
Ind�M!ٕM<�$�/!��ɾ۩4�ASV�y%1uS�[16!a�l˔�|��*ʁ��L�̞-�Yo�uB��pH��lȵ
�fN\�}� #�j���{��VZ����m�c/SRgkN�`�_
��C�.��`����Pav�@�*
�|������m��Q�2q�
�kJH��eVN��O.����D��9"��6m�b[M^0LWl6r��H��Y���A~��,vw7�&wUϜ��)
w��27�$q����%���~z�O>��:���gr��h4�M��׏9�<p`}bb�>48

%�o�e�������޹��7N�:�~���g��\��ϖ���v{�l�6
S�☢("E$Y�R��ň�sN*6��ٮ	e�K`����_�k�J�=ɂ����S����<�l�>)�vB�	<JY](�vZN���m���=�T�
9����:'/�R��d�
T�d+��e1ܯ�.`�.9$�(sK&!�I,�������w�r�!H�,�� �0�4�v���H(Хo.�r0��2j���B
�fT%QB<��}�p�`精9����.�$���}@�C]\1.�����>��$چ���g��ClbG�J�*Ц@ق�Shr|	6��	,.-�L��<7�ҴW�`_��� IDAT&�yG���]Y^�U���9}��k�Z�ܳ/��V�x���}�O|�s�;���{��(�1Y�A�3€�(�(�n��e��Z(�sn�ZE���0�����\�X��
Tr���'�6����z���C^���	�����*���
��!j���n`�X��%G�!��Rvb'f��l�ha�r���,@E�fg[�5j`H���PJ�}z��t�V�T������g���
���h��R����d��������7G��U*���g�$
�h�4����z��c�S��kjf8�*	rW!��D/v)ѡi�1۶mC�T��py�A)���
7M�6�h�>��ӟ��h�BJ�!�c �s�fcL����~�wgi�9HS�*w=�<t�j�ۑ4���P�m�Hu�֑�K�s�\�_�={v}��ō�����'�333�������R���<MI)����a����2H�J\��aI����,A^��0� ��151!$����w�B
���g	`�2/
DJ"9���0r��j����SE"�(0K�.��
x��%�#�jQƊB���
�#�r暛LVJ�ɆF�=����
�漙X��ļ�p�M�D�I"��M_E�Ǔק��������hc)`fK.19Ÿ�|4�B(�Z�!A:Hr�BN.<B�����?c<��g �~M�`�"���x���
��B�e@�6�``�Q�^/e0#c���*t;�b���k��Y�"ɜ���ͥyR�h"��D����C��6f�z�ǎ=������j�2��Ѱ���_��Sf����:�/2�~�v�ȏ���v����7��o|pf���6�=���$8������1Z!	v�߂#���:$E��/ڤ�IW��{}K��ۢ�Ñ�=<�[�'�l�½x!��	PZ)�p�\+�um��r��H�0�v��Q�5Ra��0�Q�\���O��Kq˾q�j4CA�])�O���V���3O=��$�""6�d`x�$��:*.�j��iFE�11�B�0P��`'�"���FS"Nb(��R���,�؎����S޲�_Ås�@�g��d��m����^�$m.]q��5�Ux��(�(�TPw��gO�gN>��g����h�k�x<1>^=x�`}jj��wz��k����Жd���۷V�{�K�1��v���_�^8�u�������g�n�:yr���S�lLLQT����1IH
$���t�!�\@)q�+�c�4u�[R��$!跩��0���z,ϰ�
����Ӊ@�����Γ��p��'a�]4)�D��^N�$����q�c��N�lY�e.r�'���P�?G��a�H669�q�����A��lc6yh��ZeD�潜����֐"��]�N�%����=�ah�+m�#N��8r_fk��Z.�S�o�� 7#p}rB�aOJ)�����ׄm2T,�d���f�M�++���)����8�zL�� m�(ZnN����ƽ���Ky��+�k�Ji��y	]�O��e�����ݿ��^vM�r{_�x���Р���,�|��o���;��v���u��GߟgY&a�F�*�n��%��d왅+�}�`�&{>��T�]�OML�M�Tv�(�s&�˔��\��~��up�����$aE��ە�RgN�\������Г�/����

+��k]��g;����ܚ�Sg/������I���vboe��]�6Q6#�Br�k_���_�ll�5���A���6njJ�QN�Y�`��YG�r$�:���`q�:v�؁J��s�OC���1i�����U�ߏw>�$Q���?�̅(�7O��]�05��d���f�Z�E�+9���7����t�d\�q�F���Jk;M�j:K{8{�D~����~��kq���SS���v�Hnڷ�zۑ#�������v��M�hL�h8�4��W�\i���>�w?�_g�]���q"0k�X���8��<)C���G��ݎ}V�,1xj|�`�!D
�dː����}P��ّ�K�$Œ[+_K֠A��6%+V|v���7+q���@��v������E���^K/��!R:@J)T��MN6���3��/k5(ib��}67��&^k�M� E���t�A�RhgJ��D9l����[9���{����rJ���Յ�F8������,:Б��O��\-!6�'�'f�[�Y�,�KH��T�=�<M13U���T�0���v'2��۝p�M�)�t����k�&MS�'����N<��J+̹�g{}^kEq�=Io*���	��l�µ��=#+
<�c��DX����`sཿ�o^�����@} �����gΦ��n`�A�$�EYY�s��i�����0���v/��2��n��_6}
JY{NI��6p1��V�}% Xh�R#Z���W/Ͷ/\��>�sz�u����Ya��4�箦8>���pi��+�W��t�ud�w�а��m���62�l��t�Y7|�q���[�^����+�Z��]�77��#ƴ{�9�Z�H����r�#��TY.�^#C�x�8�9��ǎc��Ń���?�G<���h4�xٽ�������aey�v�w߃/}�[X�kv�ز���cc���
zhgR�޹�r�L���c���؏m�2�-��'>�t�ط�6�2�pGW���k$q�$��a.�?��=ub-�sT�u�?p�2::�n�������GFF�����f�c���α�(Nԧ���K3�(�eaU��
#�(Ch�瞿��f��-��AF���	L�~��T�nB>HE��OFL�M!�]�b�;,a,�w��ԥQ�\(eS�^y��M:�r�{?��e�b*�Y�AH	�����If�ߡ��Mj�Ӌj	���O��)������3@a�-���d)f�� �`�U���uz���;���u���^�}iE��g�-Zy�KE^n�wߙY9�T�1� m��I���F_��.
�lD��� 
*&cb(U��������]�){��iW������m_k}�=s�HeYf�<g"������8��bf��|��O��'n���z��Qq�;X��̈́�r,��=���Z�#Essٿ��_|�&ĥ,���������J��W}Nkι�/�u�#"�qH$�ί9,��2�{5������ӈ@��'�]�l)�`���}LԘ;��8GIۢ\wO?��(C�<���߸S�w��
@�A/�\�z�NCCC�޳oܻ�u����]u�A�C�n���e�BuN~;��[{��c�k_����b�$Iء3���"��R��+����v�X�$(1LF�Y�A�s�=x�}/G��Ŀ�����۠��Ծ����{p��i���o���������+صs��^��?�F����W@M�����~��~}h�4��Ų�^���v�[�U���7�ݲol�_����W�������gNf�zMEQ��hK4��T�RgY�TPI�RFp�����9���������������Ç�fS}�#�2;{�H*��	��xIfj��'�)�'����x t�b�6e�`A��T����K+��=j�=Z	Yh0�Sx�PvI��_&����HG�T�/M����9���$���ϼ�]<�ʋgw0ղ������]p��vlX�BntǢ��V�$�@(s�$7�C���0��T_p��T~�R�j��"O�*#�k�Є�p�e�[�E�S�%S�r��/!'����t�šM�0���ڣ��;�0��"�P�dE���0���TU��Ņ�,�t��N���/��z�3"B�N���� �"`�Z���_8733�n6��7���f3)눗U��F�2��*~
�~�Wn����.]��|���W�����������/�Ķ�[�\�y)�~e��?�&ɟMe�v�Y�fU	����E-�q���\�`���=tE>a;!cb��_^ٓ)�u^/ؗdQ�'���B�o�#�;&���DQ,o1"
h�r�>�*"�ihl�i'��6 �#�A
V��*eYن�����q����G�>�<������1J9LY�	o��%�׊�Ɩ�vc}8�ޚ�Ja��0��1Z��K����ѻp��y�9};w������ގx�[�k�u\���ё-x�u��02��[��><�7T�b*oaq����F��sG���^�X ��1�7���mƛM��R������?�W�;���b���K�׮�J��|�`�Sy���%(ʲ�#����_�3s�/���W*�c�.DZ�v�jטBk�c;S�RVJh�I$K5D)�??���c��?L�$���N��A�J�d�i���]a����Ž��{$S��Y�L�\�CMpɀv�C�M�$��i�2����;5]ݱsGutd$޶m,�7�q��еZM�����/_Z�n_�S_���$��Me,.K�s�@�����O˛���j�N)�th��)����|."�eU*�KS&"E�*�c�+o0��=���m�g�����b�]-l��}��K�[LfB��{m�q@�E�W�P
����F�e-2=��j�Ksy�Q�ěS�S�u����+y�w�ȼ���E��E(Q��]uH��3sQ�������p�$��5.$�o���j�����45�z��'��~�;��?�ߨ�j����/��?���6|����}�G��e�u�}e�4�|ddQ*@����~yAH84�y���w7)�����yzr�����n9�%�J��wp�a`M��H-�����R7-gq�~��K�s�}��$��cJ���e[�$
�	
�^��A|G�{��^=��%ȕHQ��/���ɏ��;v<����'�:ޭZ�/��T
����3޸E�6$�:�7vne\�T��w�(f/]�ܵy���ɧ�cd�VLO�Ż~�ǑYrFGGf\_X¿���	���zn!�g�!�wV0�k7����F�>�8�)�����7��n�-~^�/}�F����Gv�7|ӻ�4��7�y���_�������2W�J9('�9a�\� $�O8��GZGqd*��~m�`f�����c��iG l;����+n�˘(W���T3k�ⲯ�6e��	<I��tP��C#���*�����7'�ʔ�����lRj��.�.��piY��n>tK�e/ٶ;�8��ȑ#��m�>��H�k��{g������o
��;�U\N�~Z�ݤ��˫��1���9L�
��h�kX�kN�S�t�������F@?�w��/��G������:v��H�
`m��wl�3�T1�q�<4ѐ|ba䋙��3;�;�3��������:�^ٝQ���쳡�ʏ &7~��N͊<s<d���=����@�����׊R�,0�8����f>��cP�T�3�ە�T�&g����tY����r�")��Ц(�hrrr������?�?O�ڽ�n��/~����㎭�}�k���o}�ޯ}�+�QQx��ݵe|Kp����KDĢ�H[�_Q�$1+WU)�b�������T���<59i��֤��i)�ƒBf(�K��d�R"�2���0�yh����x�_��Q�ŏq���lM���,@g�0�)PX33
cpl�vd�Q�y����*L{���~T��4����O���?���k�+&�"
v=�=j����S�J��X�P��:Y�z'�
�|��,>��q�]w��ѣH�Go�q����[����̹����W��U|����4z���:�G98#��k(H���Z�]������s�^�����w�g�xm��~�a�H'l:���0U��o���~�]oy����y��'?��5悒��G� o
a;��~�n���&2Q�

���`fq�q��x;�"h°�H����ܳR��h\�
��w��օr`Y>�h���Ӳ�g+�s�(�p��v��1
��,�����v�t���w�u��K�y��w�1:88T���S{G�8�u�$Q��N�$��X�q}[��gY


(��˜,�89 �%ny�%��4Fq��$���Bӏ�	9���7�ܰ��>�x@�,}N^̌������Rf�z�~�/��/?�S�~�J}�H���Pr)��
i���s
��FY�M��yX�<��GG0\\\�V[���ю�;�pRV-]��3J��+������>�B��(�yx�p�̘���$�
�����Y,'��-�,��e�4��uɵ��j�V@�>��p�D�����W��_�Ջ�z]�uҒ����S,���d����oo:���YXX�z���cc�W����WO�q��\��-*���-����1l͉�(I~
�"Bbhd��8�@}׺?���Xe�NL��^R��,��2$tr�#�ˬ�T����2�ʌlLd %�8�c�|����-���T�|����aw�,� ;�C�����/�)
!�sd��������Z~�F�MRS镓&~�#����3�[���\�z=(���A�aUd��Z�9q��Z��o�F���E�Ȏ�ʧq���G�D�dT�T��(��R�6Zh�[�v��:T��^�a�v��qz�j�o�3cT��T'O�k{v�I���c��C��3��k�x�Y�%�\l̡8�{TY���{σC���
���ok���|h�K��\ۮP��g�R#	)���X1�0a
��[�c��f�����d�SN�0"����gȸfN�Y����X,7�﵂�I��S$/S�R	3'Ƙ����Z�1s���b��q�n�^ݾ}[mtt��m��`3�2��2�wj˞=��v�ܽe`�Vy!�1�dYVt{�����u:�t��J�[�^{��.--v�][��z�u�����{��uUg����ۧWI�^,ْ�*W�۸б!�Jꛐ�8	�Mx���ظ�{��-\$K��U���4��r�){����9������KI3W��{�^k=��=6g������)�����y��M�����Z 2^�٩a$�:��5)F�`.uW�Ӣ�����"yr�L�B&�H������aL��9���H�ҝ��תL.Ɗ&v&�����`V���H����������_{��WF-˒)��`f�}'���t���)�w���_n�٭��R&Ӏ�o9%�C��It���(�˜q]KD�[L�ѥT�Bj� ʱ��""Bϴi<:6�
�����, ��Œ]j(Z���r����HD��?�!��ܒ�z�WV�:���3�߾ڣ?4 ��9�L�&P��Z�fϙS�,K�A����o���"�9��ݻ��ZZZ�G��Μ&0s�^mDZ�*�N�����1�9��� 0���?�LjR�Y==�}~�����Ȍ��==��� B��0Ք�����~�3Q�;cCy�s�Y���)e��s�������Ok�my#�IqQ�[;q)1�V����X�X�W�o�"�-{/�=�K�1�XYT^�(�m֧��3<�?���cF��h@��R�ϯ_�{���\|��ࢹ-��>���2.�Ź��@-g�\�Q�T��Y�I�IBp	�"�Y�(J~B��>F2l��(K�`�˅�Rx�����/�y��/]��]�G6(r
"2@� $@
��o��l{���7����^xe�ؿ��kW�^w]�Xy&B4�=b�[�F�/tq3�k[�A��rtp�,!
J)=�T����X���b�����:�̱@(z�f|mRψ�-��},29w��Ư}�k�vvu�+�ȶ�]jh̕J�����K7{���,R�~��ý�{G���]޻��-[&�~{��];��lVض
۲�vl�,�t,��]j���V��d����>���d �cZ��V���b�j���2Jَb��'ѕ�98
ٛ���
o� IDAT��;9�q����\��L�������T�b<"Mxԉ'<�N��K�T�R�Re��5�75(���o}�B�˯�s�e�hbt�c�����#�DD��Ν�}��/�����%�uE<&<H+�c`F�%V� &*��ƿ?��8�y��۲b'�9XPJ�/��#�^cC�miiv���f��ƚ!KJ���"-�O�hnj�T����M�V&����F}!Dtm3wttZ�Yf��/������oe�R[�85����u�V*O9N�<��3���*��)>��u��k����g���qEX�����}����;848d�aV�)�
[Y�'� �RBh]��ps�XM��)!�YQN'a�IN��
m����b��n���i0���w�A�(�~�p|l�{����}�e
��C��!���L�dԕ��E�<�1t���_�E}� ��b�?��W�.���Wb�[wc��s`9�~�+�܍�������9A�z���*�d�8	�G}���k���J���h��LГ5ƹ=�pY8��ced���-~
�d��k��$J��fˁҥ�����ļ�S�S v	�h~�s��v�5�[��&+'@`�����`�T	���p�֓�%K��x�m?-<�⹱����۶��0K��8�[��iǀ�$&/QtJ1�Ok��&!�cmEi	�!(i�/	a!� �4�&���^�@U�{6�����xR��c�X���&4IX� �[Z2?��
�⿧��_]��GF˛6nx�v��YY�xI�G��#�@�����#�>3G�I�bAD=ӧ�bhGb�1�8��ȜU��1���R�N)=z��Fd��*�F5�d���09Q����"��${uNM������<<9�0c�vc��d��vS���L+9N��:_��E�q��恮�VJXJF=�.�k�0f�-5���ӟ\6g���m����{�̲,�4�5x��gͻ��{��>���$~NIx�LJ����Ӧ�)���	�=�yO�}�K?tݵ'��lٓ���a��M�<g�R�R��P(���6�T*9�Ѓ�d���o����e�ry"���'Tj�w������r3cߞ=��Rijm���>}z�Dd�*�l}�HT�G��#�0R�O|,:�Fصk���8"%�4�S��_��;n���w�n�,˒D�A�_���Zv�^?|��司�k��XH)���g�vU!+e��Bg�SZ`�G��
��ϼ&�$ͤ�;����(���	(Rm��l�c�<����X�?��\���5��$p�C���
���Z
��Q�}�~,��`���8��L?�b�ݿ-����H�v��^�7sǥ_�~��=KJ���O���GR�����/WiGA�+mnX����V�5=mx��(���㌹=�Ø_)��#�6��l�%qƙ���� U$�����J��r���
IR�N�Յs��6����<�l�@BBp@�Ƹ/ђ�s-�cXw�L��#��G��L�K�i>����y왱�gbﮝ��וЇ�89�y���@$��N֣o�4�cjJ;��1�I2q¤6#eB��l�P��E[y|
�t�BT�U/J���s ��u��?F��ߜ
K�,i)�����9"�5k��Z��o�;;��|s����^�B�����uy�/n����JŌ��zzzr[���Ǹqn�Qh?�p5A�kb�O�7��&ms3�oAjqS�D� +c)���V9$�Wr�Bǖ������D�%8�X���!`ڴiV.�k�$�s.�S!J'vpKb�uW%5�.�����;hs(D�1z��F!��������_~yNKKs�]#���sΜ�s�l~g�����N*�׼�=ߺ馳���G�}��WG��xR�Ւ�K� �ϻ���-�y�qJ@"u�����|(5�����"ȏ��^1Z,��3�A&������%�ScC�m��Mݝ3wnV��C��8�| �}σ�B�����J�
�z+��6
п�����S����G�=g����WWo�^]�S$�{ƌ�3ۆ��UwW�P�0���I$Vǘ�&I��Ѻ�2�ӉX��뿼(��ӧ+J����F��LѨ#6��@�u̎PQ�y��+��<p��Ϋ�}�U@H�l=�b�������ȖP۱���g~��'_���o����8���Gn�q{s�Y!��Tyc�ޤ:.�B�[���������w�M��3E@ }B�@��L��z6l�Ȩ���|��fa'~�_:2��O���2c8�2���E�S��>�"���<�ojï6��S�*x�I4�p�㟁}�����;T��"�$�$���w�ŏVVn�M�
#�K�����38 ��
G^W��/����״\|��_���'}�28�ϊ
4���;e]�\>��B$Q�~\tu`fV�%�-
0�C�/���N/R�3{x)�}f�!��3f=��#O�xK��uAN[,����w���%�!�v�S��wu���J)��o�֛o��b���l
�!`�v�W~�C�\z�fF�Z���fx��(�	�D��bd"���@��Q�@��#{�G���%���k�T�C-tT��4O�F�Q�R�)�֚�&�)����|6�m4ϻ�ɔ@��t��N{:J$�J)_?/e���Į&����FnJ��'�b9���;�J���A|�}qibA&ڲe�]��.��ҙ�q�}�}�ϛ3��&+Fq�!�몫ff��_���'��H�Ze��`�L�|>�%x�:�5=Rj��>��%%�����}ߴ����RJ>�Ws]W�=�oK�8�x���N��b�p��c�P�����<>o��6�/��7}��"�	�u���T�>J��a�0�U���`ݛo�S*�Ȥ�����`sP4�F.�uK
��3a^���LEF�Q��N$a���1��)�{�I��z������5�Qy�n!���z���]x�?�t�eU_}�/jq�B%��f@�t)��\����и�"����X��}X��Oc��pw�@�0
�c�!+�{��[�Vm�@'��Wi���p���?�ə�����طg��yY�E���Y�a���
�0`�-H�	�N�s���/�ē�c���!̜=g�c8�RFw�Q
 ���#5`SPċ�"^�3����׍��CpN?
��)����B���!�l��w��wW���k;���p+�PE-�d���;c	a7�9 o���^➞K�|�͗\|a��O>�6������w�, R���!%K!L`y��̡�*��{a�k�r����z��z���z�S�!-+�	f�Kѿ��n:gme���#YEIڙQcG��4�X�����C����v��O~��77l�0�BRJ
l�tB��7�^z٥BPggGf��]u�D��QA��>?h&RF 't�9̔�ۓD*��F���a#@�<o&�&�i�x$����Ӿ��a#ɾ5�_�u�V���)�T*�D$�c""?�VdSݰ��K6v9�eY���TF)�A������_HS��狙E�R��+�@www�@o����=�y_�eY1��~��Ͼ�-̌ή�w�~��sܖ����K����U�Ħ�R)R��k������W3P38�5�V��fV"�Ejob&!���`��۲,K��;w�۶-�²�vwG8p�JD��ٕ�m;����y��m�̵j-T�Y�x�ʃCC��w�b�I',z�<�LƵ��d�-[F�=��n�ɵ^���H5.�^��	�Oq��DD��zZ�[o��oY�	�MR�1�aD���D*N5�H�G'��g�<��є�Da��bN1�"g��-�G�*��_}�ѕ��^r�3j_#��!����F�e�Ɣ�������E���e�(����K�ɇ�s�L�N������'Q�߂BF���#�N�9�P~���]��.�W��g??����
	")i��!���b��MP�Hm��HN-J�sr�;��̌8��8�>)�
h�����=�l}.���I��8.3���Q��_����7 ��i"��=��`��P������c�zh�1�j6ƫڊ�MG�`A6�4������,>�'�z�8�׊߬=�<�$6l�h䱆p�[j����eñmX�
�q�:,��l�U�eyAT<����z�\.O��W�ժ ")����&��!u�6��D�hG�i��;
I*���I�_逇Ʌ9�^B`��m�z�f۶]��������G��W���_�n�g��v����B6��9;���4�a�ܰ,�6nX?�!K)Ŝ�����ɨ����]��Ǜ��Q�)�z)}�LV*B�h5r�I�D��Wl�����c�	gѐN��1�\����4$��5 �p܅Q��̌�t�E�J��J��h���R,�XZ�gYV�X�RJ��	��
ڠ'�ޓ���I
1
\��rY��������^���j��˻�?y����nm���@xӷo�|��߸��p�駷�xg{�eY��D�D�=ejOn��]��Gئ�Tt�l���w���W���e��;vTӇJ�箻��R�󅂘e$�� �A�J)�;t����Ό�8f�0�SN;�dY
ԣw��Q;��n�:���s��+)���j!Dj��Š9a�#E‹�&�M��ߊAS���2��ð������)��kVR����\�$�$I~30C�3Xף&@�#�����YZ��J�H{ϐ�{�qgl��q�`�z��������wS2',�++b�m+�9@�8rp�gf�	̣	�����5kN:�B�{�V��]x<�Z�<{/�u�b�[�/2�Pԙ@�઀XJD��랂߷��q]��>?��s�}��6���;r�/���w�5��F7̎ե�33(�4Ȫ`# `ΑC�JQbϩ�xr`���+�SД��`v����Ј���Q�t;@'��w�����r/�-�@��6EM3<<���W�^���s��.��1Zsp۫6�#\{f���N�4�!SE ��������n�3�
�{�_bpx[�n�R!,�@�BD�DQ�e�Ҳa�,ˆ�%[�b�v�eYDR
��f
�R��<u�4ؖT�}dxx����}���<r�
�e�v���"��o̞��[�꺻t�67X3"%X��xR�����v@��yzE߅�/�y֬Y�[�l��޵��d2�eY�YvvuZAG�c@Ӥ��uA3�bXR���+J)�Rb��yNX�	��t�%���&��M/$D$#�R)4)��#E�8L��Ii��Ǫt��$���QPCy1]Wd�2�H�W"���̓�+����+�qԔ�S��Z�V��
�e)!�� bA��L�NĤ�@!*

N�����t?i��	u�
��[���aoJw7(�gs��d�…�6+����;��l�M������Pmkk˞�ti�O�喾b� 
|p�H`�����lBJ"���H�I�o�؄B��gt��6n(�3�z=x�'G�СC�+��:y��م���?۴⩧��"C�;~�SO+nٴ�l:m۶�<����+7�6����?�0b�575I8��%
���~&����k���XD�`N�Od����뱑�Xe����D�IP�8�D��h�P.�e����^]�4��*�X��C'RI��F�����o+�f��xg�pq�RKJc�cW�H�1�
~u��O=��=8벹�mo� +��J�~�>�]�1��`p�}�Bh)‘޽h�y��x�;�-�A�Z�Q��!`e`#DE	�����ߖŒN�ڬ�l��=}�&d�JWwqӲ�]|m���/�X��ʕ��{�<��
��b2gO‚�*SƇ�����\G�1���	%�{�Ig�>�4��vW��G���,H�`(��m �G�F�a,9~&>saǵM��2���~��f��'�͜�f�&�+(����O V��W9�$��E��;x��G�!�P1����-��Q<	)��IK��mX�C�c�vm8�C��uض��H)3BPW[kk���
ÉJ�2466ڿo���׭�]���Q�ue6�UZ�%��`Zzd�s�����G١��.���%�=�8�#]۲�}{'���UR:�b�2,\���i�M*���LEJL�����r9��j�m۲{ʔ��R���*�a� DM|H�Q���#�w����6'��Nҷ�k�y���#�2�tJ����B/�9$�������>�y��%`͘g�0�@���ޔ��T*�-����R�Ŭ� RW[�����QMQ���0���0͍ل�'�SQ�q'�(���}�&�=�6�:uZ.����vgʔ)S�����������y�ʕG��暞�3g��c�,8��*ut�g� ���"pSS�y�%e2ٸ�KM!	Ăp�\Vi���+V�U��0��ɮ�)�I'��'�tR�'�bm�=��s��o~�[����w���[~Ai޼�
����H)(�ZRKK�����8>>�wttdG��	�uĩ���I#�(��L�m�m�֣j�9l�,�tAff�f+�Q0Ib&�IܫH�c�k��st�
M��/�3�O�I���(4��`D�JPr��7�`��j��M��jE�sם��<�;�]缯0�ЏT�X4�67�~�Fޚ��q�px�ۨ�Y���٘�9
vmE�<�pu��8P҅������k��c�0Ĵ�Sp��>�0���:N�BT7=�ޞ�(-8ݺr�9
���K.��ݵ#�n^/���0�U
*�:��� �؄���`�\���~h�1�f�g�P@pd���"�����%�*P���ÁBC�GF|�t�0��"����[Q����܆3�J��PG��XDt&(8
�d�
�aw-�װw���²,�A�QwEk7),˂e[�m�mCZٶ�eK��,[BJɖ%ɶ���e+)���T,KS�N��p᱕�KOݽe㆝�V�޻u�1�u-
�����RDd""H� 
a���[��CJPy��[��E%Yq*g�X��Aq��4�øb�
$@�V�J��E���3#�de�ᄢ���W!B�pl,`�������+��
29�ɨ[PRdy��-�g|�Fp��J)�%'��2g2!�X�����Ə~��S�=��,[v���H��ZiUw�aTߪ���y��lx��y�
��
��b �!V��p�f�
�놶���V�0���o{��D=Q�����3�ܺe�e�]�ҝ���|��״�ǵa���͛6պ:;��
���ܳ�]s�5=��m�b�h+s!Ž;*�k����AR,Ԃ���f#�"�un�t�<�%�tA��y�mGy�w���2���5�W]}M���p�^˲���,sI̞37g��'�Txg���u���������k���(mx������
������f�:j4�E�A�kȭ���ŗ^��[n94Q.��|�^�hQ~��/���
.��3�mKL��t^HZI�N0;
�%��FQ��}�f5,a��ڀo{d�fD�S@訌Y�h�b릍��z|���1��բ��u�Kb��aۆg�,@�ס~�4L霃��#(��~,���C`��P!���app�B$,��}}}�~�|F'�n�"6(��ʘX�$W��
�s6��sb�[6|�	��*�Ȑz���;Wǀ�Pr$dօ(� ��auL�����u�R�+�>���z��CQg�4b�ʇe�Jxz�(B��pV���c��[��6�9��ݘ��@�X�^6לP����oƳkp��-X:���	�A���S��~n�i���k�BHmwV���@JA��	�S�
�e�qlؖǶa�NT�-�m��V�%�b���1r[)�vww/�5s��/��-��赕/<$��ن�w�F�Q�$�z�=�#RP	? IDAT�	SHGI}t]�*�&�ԩ�q�#^Kwז,H��&��(DYJ)��W�j��R�x���9!$8���m�bB��Y��C��K&v.�s�0�.ңd}���܅��z�ح^��R
�m�R"�_��b�f����`����m����S�q��V����O�S*�_��O��OjM�Xq�O��A1��|G{{k����{�y������Rk[[CG[[���9#����%;11���uŊ}Ҳ�� (E�,eG�
�"%���'6a�e&[�l)'mW��<���MQ��~��{Z[[���G��E{��G��V'_(X�cc����͛��϶wtf� H3�	����$cG\��K�)���׹\��MM����}��G�������X����vuu��:��SOYZ���>6��sW��?��ٗ_qy��?����'�P2�����u�I�|"BsS��mmٵk֎@WwwƬ�'E���},�x�?<����P_��ʜٳ�?qQ#���燑�-���v�����)P��"A�1uJTFI0F
X5	;)A�(�����@]�&�U��n����Zj�h"�Hn��D����wx��9��{v@����xzu����(f���w��7��>�9��d�(0"�� IaG�ƣ;�p��]����6Lot��1lܹomۇo��zpf�HJ
-�R^�=o�޻Q�|��m��s�vv";���$>0��jK�{{����pt�}��F��'��A��j0R�Qa�E�����u�0|E�Ի
��V���k�!�l����� ,X>9�CAV���߼{/v���4㔞�S
 AP�6��~[��x��g��e!d�<H)a�X	˒�҂�RU;z�plGwЖ�������B2�"b!D�P�J�T��r��s��+_�T+�6�{sXhzҙ���tW���"g�Fj�@�Ќg�R��|-��4��_˰����D�ErR:��� �N̜9��T*��%U��J{��9S�#�G��hͿ�T{�;�h��@
�,��ϖe	�qDCS������3f4������}7}�[�����,�3�!�(Wȋ����K������w�C��Ob�0����А�Y�g���o�c�:�Q�T�\.',X�_�pa�]W^9s�̙��1�y˗/:o��E�ֽ�{�~��3�xt||��@r�Q&�Z�T�	�$j]���M	!���{ja*!��6����1��703{��֭]Sւ�tWf���H��p]��f2b|l,��U	ü�D��$�
�(��v��vTBZ��']_�A�yW������Y���1���R�z��g�\s�5S��{��3�O/�l~�!�Y�f�s��8���Z�X��ŋ��?�ԓO�|������j�7���V�����#��&�YM�˾��Y��R����sf�j�6-�A�������r��1{��l&�����sB����T�� ���I��I����__�g��%S<cG�_ŧ%�t#5��e�3?���K�.�
�� uܝ�w��֟�vh΍_/v����ȓ�r��g2�2�	����m!�g5:�7� ��S��^����
UaI�=�xϼ,�}�il�O
.Vn؉���[��L�$��H�, ��Nr8v�x�Z��"W$�5�2H7X3���>U��^�F��s�3�Τ
0Xwq�+{� :�R���Ϝ��g�X4��_5
�L`�ðdt�\z�\|ti�V�F:�_�a�;��ҀY]X����K�Pu�=�˜}<x�^���X(B@P*+��e�p\��B	)�3��lˆcY�V���Fܖ���b��D�b����B��?0�c,���?��>�я��f�B� �юHG���lV�ɮw�v�PEp��T'sJN@���80 �8��ĨtC}�4v#���S� Ғ�֛oY���i�%E�T�#G�Ic�𚱳J'��т�A	�8(��kU�U��`A��k�=mƌ�
���ʫ^_5p�M7����Z4�oщ��_}�����ya��]Ua��3�2DdI)���f���o���}�
+�d4�/�ضn�2�8�k�2������h��O���/�S,3�B��hi��
,P,ݑ�f�w����958J�Gk�q��];�ccc^SSS����mim�\��,���Ą21�GOe˕J\x5�J�u���h86>E������%::��[š���d�[�ma Ap�)���zZ���!��664ʻﺻ���~�4f�ӧ�6?������|y�9��ẎX�dI\�w��1�f͚��8�p���q[G�c��[���\�T&�@���Al�|�%��o���+����e�;�-b�f�|'⊈��s���۶-�l޸a�{��dM�R�u��7Ϊ��֙T�'���Y�g����X{V$�2otc KlI,Z�)Ի,��M,�M�ˑR���"�a[Y0<�h�mL�Ia�կ�����}�>�S��/&�X�����9�1����S�.��B1#��8PJaߑ1l/`F6ĉ
_^�A[��xvc��q�A���Ն.·��C ѾQEA
N�周;�
#��:b׾�Z�!����џa,�D(�0~���/mE����c��s[q��
s�%�jh��|��"�ڼ>�ưa��ԁ�>ڇ�[�#�qp����Ơ؎��B���z
~~ϣx���JE��c��:p$$<�C�R��C��R	��A2|�G!��m;�,ˌ��.Y3�!���� B���p0�j�B<{�̎l.�adx�z\����`5�9�!��u���#����Fi��-�B�!)*�L�|��B�'Lh���x�ȓk�JI)-����#���g!��R�(�>���T�ΠU�硾A�)AS��3)<P�Z��T*�O�?���� �h������$���33O�6�����3�|r��t��N�!��LkҴ0��:)��y��8��D(�p�)<̬�O<���]]]�t�m��g������Ĕ)S%z1ҷ�t,k���iK�������А��Ԕ)vKk�mY� "Z�����4��n"a�ߢT,���`dd$�KŢS,mm7��}�eQ&����N��Tt��xn�k����9s�,^��2V*��ް�\�V7��t�7�s��܆���U��:v�'n��m��S랧:;;�Վ�;��UW_���~5�I�L��s����qFiۖ�hjjr����Ã��0���5���W���������'
Ţ������јS��zҡb��a��'S	f�ߝ%�������5}:͚>=��9�������F1w6��(f����]�L�P�69ؤ�6�LԎE�c-�1�miI�y=��}�+^}k8s�ə:W�Z92�;y[�NzD�f�ʇ<(�Wӈ��68t�{��Σ΄�z�g�7�v?~z#��=�a�be�;�E��H��+Di��a9 i���?l�p@V� ,=Ѥ����Ǧ��(7C�DZe��_��A��%��4�U��}p���<mj
���8{,�E�>��][�n�+o�����c����X��
*���.�C�f����*H)�f\8�
Ƕ �H(V��Q�V>2��L&��C��e���|>V
�R�[�mH��R�K���
=wDƿ$DdQ�t悈@RZ��f9��:]�y��!�9��kOOdl��LRh|��m8�M\[����uj�Pc�j`���J�U��1�AT'���A�	�:y�����];B��Ï�E�ZKK
Rw��t7���F(�a�=T<d�^�X�������{�=���=�ds�տL�9#�3s{{{��ZV�V-
k��١�l��P,��6�O�ƊG��-��Ȯ���]W^����VHd$	)�h���C������۶566
m�R)_���ie��8�Y��1�lVl߶}�J
vss��3���3��i��'���u���M-�VzwZ�(���C�!i�:=��KINԑr��nq���s��w�xgr�����j��Z��?��w�9� ?��c����l�C�C����Qٿ��o^|q�0����qGG���oo�x����{|�7E�����c�/Z��aǎwj割OD��>�]�TB��^'6ݭ �+����T*�DD���#��!�r�nB��G��Hϡ��S�s�HT��A+���)���Iz���L�����LXJ�i&eG�
��a�F��lڌ�p	p̍Tsdm�*�W$π`�H!:�n���C�~�ч�5t*������?�������4�� |`��N�����O������
%?xu���X~��:��G+6�c:��7�
�h�c52��4�	��<�NĐ�q�B�&��"�q�6�l#���*&�ed\ˎm��-GPC�"=��LR6�5�����N��ی޾�x|�9��/.Rh���{�2�SBv����>w���m;��XJ+�z�A?�]���� ��eI8�y���B�\V��tgl�Iw,�$m��A�1A_�q66��s[k+���U�Κ=��=�NL248���n��e��Dj�h+�  @
��e��P����QcÒ��--��ԡ�Z��'m�/���ܤ����r�����|>/�Yi�E$^�@:l|���%_3�z�5j����B���?������u�0���;�>p��:���~��9�#OY�t�^��oV�ƙ���0E���D!�s8э %:cˎ�w���)���Ȉ�ħ>5?M��7x�Z�z�b1ci��x��g��0^.c##A�ZU�	�(�e�Z`���{td$x�ᇏ�r9M�e9��]�S�s#���������7����K�es���ۑ2�?����:�0M3d�-���ԟ�x�ɲ-:p�`��Nhr]W�9�~)-)�Iu���&c��)jLD�aÆ	�fs����>x�o��B��o>��?�Hϴi��A�իV|����������h8<4䕊E����y���^���d�o���zM����0��V.O�ի�8唥�Sr݌P*��@�|^X�%Z[Z������P=_��W\qy��ַ�3+6�T$&�C�?����3��_޽]
u�zB�s����I�0�f�00�M��0�������
D��������rbvfB1��tUt�5�?�%G]��st]dHg��غ��Sa�#�E !J
���֖��p�/�p��ן��W|J��`�r\�J��"��7�հs�!�����iE�q�l��4<�f⾭]8��B�]Ã��X��
H�:��ÛF1V�!$�~W*A�uX��id�pE� �҅֍�b�!����Q�d|0�<����܍g�8SJZ�ƄJ=�I���
Zr�O-��ӏÃ���W�la#>x�sEN�5�Ev�'���	߽�;ذq#�YH26'	�r��E���\A`����S���V!liCJ�\.�|>NJ�l),+�[R�����[3t��V�����	���޲u�خ�;�BJ;eO
�Ywo2N}1e>�!����	�R)3�u�C���ZE����]�~�⨿
���Z��b>nR�X?>�<x`t�ܹm3g�μ��sʎv~PZ��mZ�oX3��=M�C2r�����_*f��'?yb���-'�z�~��_��>�_�ցO=9��sϝ��|���q�s��===N
�"T��0d˲@B��f�0�
��R2	n����*��\k"���[�hQ�SO=��7߼}hp�<:66��3�\�=eJ��}o|��_]kٶ�Y�R�%������m�ܤ��2Z��`$�P��@Ƒ�3e�Y�v��1�N>eiCB���W��T�Lg{�����m۴o�ުFm�B!/'&&�����L&�)wt�g�T��[��[�5w��lo�~O$��ʕ+�����}��[~~�m�;��R���
G�O�^ "����{g���5c�:� P*5Ȧ����_������w�yG���n���}��mjll�S�-��Z����d��+K

6��u떱��i��S���>��ҋ/�0:�ާŜJ)��]�~�񑧼R�yw���


J����5�'(��R�o�̣��)�tT�%6��آ<sڴ��T���O��c,��K�IV��'KYl�HD^&��!"��]"r�h�`v��(}�D� �H�X,e[::��l�.y��a U��{��m�ފO�<���i��^d�`�k���>��
�<�C�����h�q��ӌU{��42�z�@�a�݂�_ف Px��%Ȩ^Z��My,�ՄL0��Ȥ�Q�j����%<�3���*��
HlK��s�xZ����
���x^
a���3��r�Q
Н�`ތ.����9��s�c��}X���'��(+PdO�{��[;���Fq\�B��<ױ�t�C胤����qP.�=�߆Ç�0eJ7�D�D�r
��`p`��8s��hhh!�qQ�`җe��r2�6v(2�� �
J�;:�0o�ld\o��n��o~��#�z!#���;V��0`�� �M=�
��3�G��ҟ�I=����P!(�w���džyc���8H3V� ��ѡC}�s��m?v�M�z}��Q��x%cCc�]�V�x�������1�M��l�5������o\�����B!�a����_z�<AB���7m���[>����`���K.��e�ƍUgj�5a��y*��XD۱mUUZ���u8��|�R�f�/�o����/�8��w*###ACC�hDH�r9��_�n�P(XQ�	�a�4��P�L?H�ϥO��`��5���t�,,�y��F_|IG3����+s� �ej��Zr�Ʌ��G]�w��i�����"]��vJ9��ݝu\�?��3�FSS�\����Ȩ��֚9e���S�?>�M���sGG�S�Nuk�*�w�D��{n�w]1f̘�SJ��Z2c�L�LD���SQJ��MoW��'�B!o�����y���:���	����|�0բ��<Q�]�Ž���w�Eu33�/�r�C�~pUcs�Ԭ���կ}�XS�y���H�0�eD?��L�+?�p!;.tW��� �\��uf��Ю���NyfO�	9J�.�F\�d����mDE5À�@D.���S˃9��G��`���3s��r`�Ȩ0tT�BH�u�L6���]pl˲�.�u�>���:}�r
���q�l���r2�ϋ|�@6l����6�r

�²�a0Il0�b��ĉ
�noÑ�a���vܼ��Qu�GF���pfOMY�[7�wd]-%|tn�7�	�!3K�<PL s}���vxM��_m��O��Kk�b�=X�i^]����?~b#�?҄U{�FDi�+V��C��Y1��"�q���m��.[څ0dl�7�Ƿ���%�w� ���u0�@�� �Jضe.���@����p���;���#Җp�|-��hkkEwg�vu����\��Z���b#C�@.�E!�E!��m[zD-uA֊k�?��R9�dI)u0'X����=Sq�1�:�Z�~��Ս[�~����%Eřt��֘]a�����0��tB����>��N�^�N@
@��*�r�"�g
D5�G@���y�=���S�c�"�Xh"J3�������k������M���Q]	'[ON�}b@���|�릛�V�V�eg���w�����HX(D�C�=��{~�I{��2�����N�FͲ%Y��m���&�@$���R�M���ewaa!�����B �%!��t;�i���-ɖlɶ�F�v�9�?�9w�M��?���y43�>�y����(cL+�Y"�0~|����J�>����� (C
<��5rl'��`aҲ+�U��T��Lf�H$���XMM���W�"Y*��Q��А�����l- IDAT��6i��m���6�K(��"��#!x�W�8�4ҡ�h���>�\!�…rB���y:�P����B���Dx��5*�Ie�POPv��q�T2��8�h�c��V�e5�Z��%OLL�?��eM���+��2��~z-ł0�.`��U��\C����?�iPB�����S8�s�5k�d�1���˲���p��}0OD�8��뮟)Ch�nU䄊��r��m��C�f��{�=1<2R�ŋ���K|�9�� $��}�gvtt�
!D��C>xضmY���:TڒPȮ8$I�y/�8�8g^�����D+����^��g�ɨ����eb�!�=z,�	�,�I�T#�$��( 
 	�y
B$!D*���5,+��d2ͭm�g_pQ����5�|��8��.nni[i9�L2�D�u�Τ�N%��-2
C��	�[�n��t��1�o��
�X+-:��N�K���m(�o�.|��3o ?9��X���9�קS�㫻��`�(��H��.nG�U@H��Sj�,Fx���H�#`~�L\x�B��b>N_ډ�Z���uf�ey�4�q`��#;&���@r,�eµ	�J	�G�gn����4~��^�x�"(�ˊW0\~�F-���{q�Cc8>%�����L�E��x�\�}Ͻظ�Y0ÐP��#C�<T�V��&W����d3�c��(���d�Jy���S3�
�aȂlJ�Ct2�zj�mm�Xѵ���*��c���_zc׎meV�P�5E�]��uq��,dZ$U� }�<y	!|u�� E[�[D�H�P&I��*�Bf�A
eÊR��!�x___�tv6�J�PA�d�������(�"�����X٢�-[�|�v�''9�+�|O���_xa<[�5��B�����||�:��F��cA@��Y��Ϸ{�2Trc�8��@Q��`���n5���|_;4tZ��*&����
!�#@�4�`\Z0U��Ԡ��d�bΜ9�>�����t�:7��5���G��m�P����xAP�P�����)�4w�<gi��"��'N�󓓧e�ۻ�����f����y��^��|���s�?��Ϯ ��s!�.Y\���f?��dž�3�hH&���
g����֚lhh0c�F��~��*��Wn�j���F{W����f}�ؾc{޶m�!~���ׯ�u�_7wي��^��O���i���lmmI���x[k���_ܭ��%�^Һ��44�`�B����a֮�{޶lYW�~^}���7^�1�đa�����`m�B���&���W���?u�QQ�R0����7�A�si��I�"��-���i.����'!?d1"%���1QZ)?��r9!�3��k/�j��w,�����k���U��Ywy6�[��Qgؖ�Τ��&�T*I�eɛ�V�L&�p���O>Iߺ�n>5�,���+���1���9
X�x�-)��u���s+8�~�u���5����1l�ף�8�	o�̀�/�U1�0�Y�)�\�Q__�/��߽8�w.5p�e.�}_�}E-�'F`B�1��	��t�Z؂Ç�w�=/�X�+���c;�xȘS��M�f�8r|_y�0�[���
}|�>n��&�a���+wv��B%�����q4y>��a�X�-��`M*I���c�!�@.�Ü�9p]#�q�h���XĂi��,%�b�@�
��R�ד�	��	�N��ys��k)��,vw�y����nܹ��E�=��8S����h�jDF�GO��e�)LNU����ʂ[Q8�2	Q�BT�eU����𹌒��Ryk�3�44�w<8�`I�4��Kۜ��T
�Ĉ�%;p��x��pݤ���'|ز,&Z�`~V�z�{J'��� �T*e|���e0A�[[��t�pÍ7t~�C�n�6�޻/����8Z\%�a(:;�qqό�f'�pU�K,V�
"��?	����3B���D�3��i��(�}?8���kg̜i���u�>���չ�Z&�-1\��#�]��4�6�t<�M����C�%�y����|g.�N[�y�*�?H���zArhl�a�	i��\X�0��s��7�9�\p�YFD5��Ǝ�;���w��~���X��IeI
��ҙ������8^S[�~|���؊���VY�O�ߤ�v�[�� ��J%�>������o}����DE��<��3[���r��)FT�GFF*_\�~�~Ο|��QM����3c���-қ7on�歛/:12r��?��N‰q��+/��d2) D��Ծ�bPBj|@d
RE9����1�Ή��l�S��9{��D� hFUų��$�L6��yB� r��'A�QB��,�i��(#�H���� Y���,��ַ�s�__{�����=������՜�F۶�L6��l
%.Y�I10�A&��2l"f�R�15����J�"��G*���-[p�?�@�9H_~#�\��+O�|ZBfay��[ϪLJ�[������wᖳj�(Y���-�'�&�fE"��i�a�����V�2D�)�Q�&&�ҷ[��"�1Z�*��>��\�@k
�ρ�������3�5�Ͽ1��)4y,���`�q`y4����]p]=����G���3?ڇ
��mV,jŧ.�E[-G�D聥��,z���o߁��iE]1�@~r9"-��i�H�SȤSH��X�z.��R,X�@�*җ�!3e�2�ZAB��P"(y}*��m��j�rj�5SL
ᣏ�q����~��Gy�1EdU�,O�Bǀ��'����,T�y:V�e!��,R��j�<!�'��(��O���AT�T��e����kj��	��ص{��	}m�>��,��E��.c�H(�)c�*��0�8v$�����h|[Ucrr�Ǽ�:�JMyC��J&�f��ٶM3��l6k���XK��R/o�4�;e۶t#%�;/�5ϘaG6��<��u��=}3���h���JΓ�R�ǘg� ����
�}�:��.m�.8D,��������ѿ+�!#���m�������2k֬Ԣ�])�Db�0"�k���M��-�m�t����i0��#�s:\uc˖u��޽{�wl�1�����Z@�r����K����+�g���d~�W���-AD	iD$z{{��p��U�P��s����<c��ٌu�t���'���}���k�7::�������z�-��H�u]�g7�;�‹�A�0E�a��w�{�y��۶o��J��
}����u[|���f�*Ȝ���O~꩚�Z���G:�]��u_�b-ρB�F�/��/��{� ����.�O�^'�@�'CM��A�Lw�1�SO�z�Mګ�~VY���X��Y�糄�ڝ����lii\�t������]�m�npC��p�9�
���rl�%�h�T�`jj�SA�I�%��Ab׮]��Wo�u�_��W}�g
��.����3���6^§�
r0y���R�߼�%/�
�.ǚ�$�y��cY8c�l4�	ȍf�K��,�����o����Z	X`1�:¥s�e�R�4F�G&|�;���rx���N�=��������q����&�7˧�Ѕ�?���
�F��tX�9�.o��$ё�BH��!%cpZς����[��
zzz�H��!`U�8�2�U՗F�1MS��M��8q��؎z-��IX��&6
#�si�'f�N�Č��hj�D"�ѱq��]S��������'���	}3�A��
J��d'F���H������� ��Ɣ�
�:o�P�WΌ��N�'E�u�1�Eo��zİ&"��~X�i�^�*���rd��t�?O"�:F��Y�j"&��O
�ba��v�`�Pt��Cq�n��a���ӝ�s2����g�z���[o�m�(�J��x��sύ���AD�m��G�a������rKk�=22���&!9z��7ܶٳ��Bc�	s�"����>?�Ja�ܹM�[�jUr||<�I���ө��+I�D<� ��ѳO?5~��w��m����}�nAՓ�.�,YR��ү���eYU޷�8��$��Ҧ�˗�-Z�(�
�1o��*���`����p��547�t�S2ED~j*����f��ի3���8x�Wo��윓Ig��\*F1��G�T"Ԍ��&�<9�#������>�N��������w�Ǯ�f�����/���� ��pt���
~������KŦ�Ƥ����~��3GFFJ/���	ι��g�r9G��7���fa�s0�۳{���]��\Q�U}�D�>�w�~���,+Pk)O�=��?:<����
l�; �z�숨&�E�f�OEY�9�g�<QR
R&�D�&S�b5���f��K�WL�PbUJ%�\.����y�4�n�5w��uu���iՆ\�'��	.�X�!z���J�k"�0L�b�?��d�L�mB��<T*ex�s�	�=���w��������� ��aLmy�Rs��3S
��!3a��q�q��V���� L��b�4����SĨk��b�Crx�]yUp`a{Ν�K��X4�
��88\���|���}d
�o�Ssb~���Ȅ�C�71��c���j���La��aVC
g�M��q
&�PB�ϼ"X����d�<<���w�}�����H(�'���$��$C�/M�4`Z&Kv��0`XRY͘�<�*�)�u1�hȝ2�$�jjjxC}=556�m�8~���s�ɧ�|j��9��l�&)��P'e�w>��U��=�QI(� �{#��GDz(2mu���7��jKM��cT�re�2�!�#W(��馺�}����/�R��:1���Ҹp������	��R���D�x��{9uce���ˮbz�����{�<�/���[�l��7:��x��W'����\�v]�9��5�\�!���W,�q�n+N�-�f&���3��;�V�_��"*T{{{Maz��d2,��@5DDK��2�e��i��.u^޴�$�3�0�$�(:Quˑ�G!6��R�4I
u�</�m;�w�ru�Yse�+���7�Տkjj�۱}[!��
��"�M$��
G?�O�U
gb��E��QQ>�3=x�/w���M��n�y�ᚚ#>l��G?��6�-%��p۶��v��/�$	�'?�Y�;.y�l6k�O$cdʼu�Uk�b(v���Ԏ;FW�Z� ��|�;�z�����B�����
^���޺�:36�c�ꪗ�|���-�b\��Ԕ��̉[�MMMU~��_ڶ-ԾWq�-_�?x��ԧ?���X�v����o��~�Ѓ�	��)��"���U��EZ��KO�8Ui\�".����?�DuʘE��P)�P�&�L_�[�#k�E�9��%�Q6�C��9w|�3���+�ZZ[�;�-�hkm��N�g���`\pA<Y�A\��,#��><ߗ�/���l�Rn)ו�� D�TD�P���"hX&���0 ���$����b߅��/E{�L��0���!9�\���N��Ղ3�Bd-�,dX���,F�&��A�ӆ��)pNɀ ��;� �!��$1�m&���!���8���$C�,[�ǁc�.'qvKg̭�����F���"�:��+���Y�8��A@Y8T��#��A@DX��q��W��2���x����!,ۂ���v$�T�Q�&r�Ӵ`:�IL��
%�	P�N�<�d���)^�����:���1�+{���?���#�=�qd���dYٶM�Q�VAr��&y��K��!��� !���g���1T�䈑���Ucpž暥�9�HO��
��3��Q�b;Q_tҩR����!U��nmii��ٙ�}_�Q��J�,bb��~F,�1eW�?3�� ��?oܸa\�/��������f�ƭ[�N@W�Һ��g�L�dD__�t~r2t]�
����ֶ���[�eI��D"a��s:;�ĠSQ�qz�������D"ap΅�uj]R�1&�.]�Ұ�4+��
'C��L%����s��%�-$Xh���̅�>99YillL�Ǹ`�������S7�8���5
y��׿�ߐ_�S�bP7lˢ������{Q�}^�T�Y�]������~>����J�����|�ڎ��`\8�L&鶯}u�~\�oߖw	�ON���=S]]Ksg�qz�Yg��~��DD��3�j��!b$9=U�i���O=���ϻ���t]+~(z����k��՜e0":��g�g?�����GN}�o�������8�������Ń<p���7o~"�I��B�߷wϤeY�M$�hZ�#<�Qu�)��I�?�rK(@P$�B�7�"��������MuΞM�@� &GT�Dd*��TZW�S\��ݲC�S�T��t�֝sv�g�]2��eamM��r��ꘄi���sN<�	1�L��y�<A |D�l���9�B6�D�9*�2��
�"ʕ
�`��d%a��(�ʘ��B�PD�\��x藿��#Gp��Waٕ�G��	L�x��%��iA�L�IxX��C�d�����㱍[�wl������SX<#��G�y��+�R�����U	^�B��ͮeHR�kaQ��2qx"����e�Q\�z6���#�?�`��hʎ[���IW�+i��PbY@PK0�-H.���3�ؖC���oǁ�U��䄓�v0��Ʉ|Ȯ�T��)��%Ӟ,K%?E�ڄ�vǖm������1F)ץ�ڬhhh���K���k��M�ݳ{r�ώ�ڽ;?<t�D�R)&�$b�RG�P�(�N�����N������'�����w���XЃ�HPl\Gj�.T�3T��}�*b+*���#Z@�/p=F��r�/
e%�ʔJ�0��"�����T�HN/�`�(��WE%=:�?�L��.��a�1>\ٷ����s�w�V>�_Y��N*�=e�*���G:�=�����r��8��[h��O477;~�Ӳ����W�x;�;��JE��l/(,Z�8>x�F���
���t:m�͞mMNNz�s�1�S�"^*��5k�j0/
%"�a�?P5��1�z�b(EY�dU�'(���|����Տ5�N[ٚV*�\t-[�Z�͋5l||���{�9�p]B��}��!��r�J%���}E�?�щ�.����hr2_)^�X��{�MMMn2�����oλ��?��)��m���d2�Pyʛ7o��m[�a�G��`W�ҜB|������6'��Y�&z�q�ELw �����'>��{w~�S�*)���n�mc,��A��/����}}�����<��Mp���[����?�K�RF̑	�Cf��nO��-��5��P�1�"L�!�K/���GJl�Y��TNDl��x_����N�}}�-ʺ�G�%�2��]jTͪ�Z����� ��8ADC{tt�-^R{�-�;oE}C�<�0�a��La)�E�=br������#CE|2�:@��B	�!�C�TBP.A�2���4@�J��|~��y��%A�0����e�(���ᮻ���瞇�\������.=��F�0�1�#$M��M��kÁ��x�^�l@GC��-�}ag4!���"DC.���'�u�w��!CI$�0̯#��l@�H	G�C�O�8�����ц�6x�����0,��]1�����6�{�a�3p;.�9�b�I���s����,ۖ�i�̡�)��
�aha�a(�G��~��ˬ:f۶`�2pB�Mäd��l��EMM
��j)��=������W_{m�M/��O���x�m3�0���Λ� IDAT_��7}�JH9��[uT��"\Vc_)�}(��ri2E��j��o0�3v彆��&U�="#�dN0��7��TE#RP&b�0A���r�X,��L�(LH�ANZ�j%,���}ܵk��{�s%,�4jr9C+���?��޾����jMӤ���5��7m������RLLL�d��n�?��OO0����+�y�
�s;�^��+�ȵ����!�0s��K~�(��ڙg����烟��ޡ�G���L&c-X�0�ګ�VT#kr�ƘW�TеlY��S�{��GTCj݀:t��bՁj��c9U��9�����`�6�������M�w���淖k�8��?�j�,b��Z�R)��R)p]��׾�t|l�ko��p!���@q|l�O$왧�z�[��B�K.��e�/�v��5y��չ����~L��Ç˶�0Ƙ����n�q^&���/_^��GY�w����+�hU�Y��(/=tli$<B؎#~���O���l���>�ڎ�Wy�~���7>th:�H��F��4�q��/8z�/��iٲ��f�q,�^�����SɤNg�
r�Ea-T]i��E\B�Buʈ[��h$��S���YN٪<�j�@5�B����9��t��O�<8�]�d�E��ȹE�9�A��	�b� ����'�'�FSss�#��������K�n�4Ma���(I\4��i�)'Q��1��a&�ӘG�q0sfJ�2&'��,�Bҕ�R��|>���1LMN��=����\3Tg�W]8���1��_a�޽���q��7 wb'��<�`��8`%�
��sVYX�.��i�c-Y�:^ġ#��4p/'�H9sq��$���!`1�e�xeg/��P�q`�I0a�+r����蜑Ƌ��a�`k[H\f-�yx�/D��8c���͞B�옘�
ˀ��n;�·�X�	Oox�m܈��n#8����L����j"��cg��T����m۰l;V�e!�`79�K&�T+1���X6�#?1ķmۖ�9�=���
�G
'�/U*ea[�ɤFqp.��C��y��"Ъ��W,��2(Bz�=��.QE(�<p�#�����p-�GCIL�B3�U|����E*qH �db���5S�3"���(������U7c��X"	�!U�)�dPM���z�-�x����r`ٲ���;�(A�L&�_=�ˡ/��E/���uuu�#�>��?�a�׿��G���L�=����T"��a���H�Ng���/˼�y�r�,j����r�eY�>߲u�躵k[[Z���}�)��R.���2�R9��Gw�۷oj�ʕ9x׻�հe��q�w���<����,h�;���׶nZ�`A�z�\]�5��=��	B1s����d�,@�
��N=D�\���G�pV�y�ьy�_�Z����q��x��<;1T���%������Z,�z��J%p]��w���/~q�F].\��fѢ����f}�3����p�e�/�z��߾�3�b�ڵ3x�": <C=��J{�a4\�ׄm��w�y辟����ܻf�����_��b����hU�Č�w�p	lۺe���/6W[k���;��`���FGF|�4E,������C5�|#pUPCE��EQ�('��X��kV
l��P�8(6���Z�1~=��s���g��>1����]�Z4T<��U�!���i]a8d}�ڏt�\�z�e'�I7��6���.��r�^�$��ぇ��"?��cdlI7��\��i
�#�H �J�\)cddC'�P(a&����ؒ��>|߇�U��<��3La`�-ؿo?�[��\x.�x�zP�vLm~��Ayss\��XeypxK#ǒZC�4��`׸T)��.`��ĊX�����?p��OôMٍ2��ūڱ�<)�jH4X��t�#JA	bhp}��
͗;�C�	�I*��_�"`�a�>�+0�f<��V<������F�\��d��q"U�!q�+��e0TA�m���l�6Lˊ�ņa �J�\]55֋\.G�ln"������;�{z{'vl�:~`�����xezj�g�o�.)�%"-cB�wC�{!UEUҲ��ꢪ��$]K&;	QD��Z���C�("
�����r�tl_��pH�`�����F�Lab���c\�B�#}�a%�yk۶�|����А��#�e-:ң��Gi��ż��^�����R�컉��v����7v��$���<�/���=w���U����O||޵�^ӑ�O��e�\.眺�T*�w����i	� "�`NGG�$	Pf�b�����/��[����.g/^���?|��fD*Ӳh���jc�,�繍���-��_xa�����ۃJ�\u��3��#�۷m�W_S� �lBa)�W�����G�
}��0#T+��0q�ȑB�w�O��+_��ɉI߲m�**�:�ơ?�瞞o|��D�4�n_zq�P2��#��7����o}sͩ{XM�޽{���O�q�U�^!�+��C��o*666$OMښ/���W�X������5�R	W_y�� �ip	bըK�8!M+��TO(,�Ӆ��g��"�AThu��L���&��!��B���3P�c_��<5A�EZ�
�ݳҦhf�&E�P��X5�\_�8|���*��u����$�ڄ�Q�v�B�I|fB��e���1����ֶ�uA�L�d�i
&��1�D�3��E�9�労:	`��	Yd	�-��</��$0U(`rbccc�����yp���p]ɞ�<_���X^�,�9�ҋ�����1lz�E��V�����w��yb
o<
o`?Di
0Mӆ ��z��)�0���E@ D�&�����.2��K�}���x�J����K��.���D�x������̑2�0 8�E!fg�s�!\�`�&ح��<Ԍ�_݇6����F>?<w>BY��SES�C�}��Ӳ��Z[�pd3���E]]���3)��6����۶m/���Lطo��ű���d���0a�v����M�SW�ݣVG+%��jЇ)��A�c���z�	(��24Y��
d��9�
�n�SZ�J �{}y�Sf�f-�bV��Ɗ1G��O�1�c�K1��P(Ȣlٖ�tiWf��G�`\��b���xK6�Nޕh����e<���o߶��u�:�z�{;���/����%�4�=w��[�z�ѷ��푥%�p�D�Ɍ��W��''��4"�C�������js&�W���e]i�}�?��c�ߺ�[ܲ,��Ϯ�šCCx������
!�`l�
�P�A---����NOww�0.���� 0>y�
+u�z��'w546�
�!Tgdiu���D^"��V����
��������t�R�Ν�;� ?��c}����E@Դ�7J)�Ճ~��\���ܸ
}��Y��!�p	<p�/�|�{��[��U�TKK{�����r2���5R�3����7^�H$���b�ƍ}##����Z#&F�Xr�~�,�B�q��8"n��6������z|/��I�c�HdFU�V5g\S�:3����^9%b�ϪE_�s�Z)"�6�@M�u˅�
�i���k�R\�ԘL�
_gc��8M��B����"!\��3g�d�y��鶴�]W*�f±1�6')PLѠb{�S���T,�U<d2i����d�0C���y��r(�J���@�X�e�Ȧ3��� �t��@�\D�PW��)]1\w��^�'�T�`Y8��s����^��qѹg����#UDe�F��_�8�>Bˁ�l�������)��Ds"���.��3(���|�eL
�<|�`Ǣ��k=��3(
@X��M;{�J�s��<
�lx����8�r���qleo�kEٙ��0d��T�c*RQ��M	�`��2��nu�Z��r�oh�LI�E�M`xhXlݶ�p�`�خ7ޘ<~l�����08	�2E�"�R��S��,�!�Rs4O��yƤ}!�KVݰ�S+nuj�-$��#!*B|N���vAB]3�tg g2�<v�T�T��ȡ:��y��#5��e�b�*N����Ŏ=2�9�1�p���g�zr�4MR~jP���>�s�j>�Pc�rV��t7��˯_�n]ǂ���/�
۶n-�Q`]]�����O��,Y\{�6^d�����rϏ�'�Љ�FFG|m:s��{�A���%K2DD##����ߗ�k��>0�_�bX�rIu�B��/����l����].
~MM�#��|�5s��olj2�1p���G�����۷3���$+���k&H�_�:p�Ѥ>t)��.������j��.~ቧ�>g���Z�Z�3�<{�S��݉DB���V�Z��k9�%�W�w��n�a�~�z�鞃䳒������+^���|wŕ�r�dz���go���?�,��K���É��O}�S���i{�P�ܼ�����B�qNW��CRT/U��Ř�:��Y�@������c�D���
�ԾVM�G��>(�=3�B�Lh!1����BZ$�J��]gY���G�X�Ę�,p�
���̉���d�:gώ��j\��8B�QB��(��"Y.������}��7]e���R�̤��U�?q�ݩ����ݕ	Ār��b��0Q*��=e2���6�6-�[�##�(��p�.�������1��e
ET*T<�J�R�R�JY�z��0�B?�����Jʡ��� �����X{��8{�i�U>�����>y\�*LdZ*��"����y�3��2EX��)b�*���o\�<�``�:�u��ZW��u��L�xc��U�ܹc�����Z�#Q��c{�~O�@�`f$��Z�Xt`ɤӲ�ɏd2)\�#���0z{z�o�>��#�ǎ
MMN��$�k)��>k�l{YE�H�l�c(�z�B"|��ԤF�$)[eQR��2ia�bP���
�i(�)��7�2
ډe[$}�:͆��%Ԟ�EC+�$��ל�jllJnz�叙�i��׿���6˲(�~�j�*��"�XW"�d3ԡ�E)V��h��G}�
�0ث��6�w�b�3��<ϧ���}�������H�<��)���=w��#G*�eKLˢM/�����!qۿ���}�qF��^ۼ����ݸ��_p���c�ϛ�<#Y�x���_(W*B�	����j��i�٦i�|}ڟ���.�,��;�<M?����6?p����m�J�R�����ק����_�x�7R����VzZh)QN��蔧jX��
xJ�����>�a�e�eC'�
�֜�t�P]˖��9����ғ��qܶ�(�HhA��8I�̫9΂�x��w�>s͙-/mz���O~b��,J��(���i�U�Po�8q�2>:��$)�|$F�����E�R�-�m�G?��9�i���݃�cc�:`i����q��IZ]�h�s�hVž
h6��)ǩv�ZX�w�q����1]�
�л_-�
Is���Kw�QH�£�a_9;Q�-�q6�Ԟ9�����/�%��)�gF�h�7��)3H�)N�A�B��a��?�O�/���=/���$�2��#�P/����
r4��3eI)v]�ebb|�mñd�i��ͯa���P(P�TP(��؈�Y��Ba�?�T��@Yh�qu�V����@Jq�ЅQ
����߇ޞ���G1o�|��r9Vu�3��Q�c�#��@X�D��*Ό�c%U�Q')f)���,���4ì�5�C��Ĵoa�!l���ؽw/�U*�@NL�aC�0I�t�eJ�%!ԃ�߃(�JB�I���j��ڊ��F�	�GLM�qp�A���1<<z���d~����DA[p5ȉ1��E�NבhK^�!�Y{v#|ll-/y��7�'eR̊*�q%�N�I~����E��N��s�i\
�����ɉ���2\�E�y$����b9�ͦ;;�6(6E^�S�^1خ��wy����RG�8"�����3fdO;m�̅�%���]fF�
�cӯzp�~1t��,Z�$���]ڿo��=���1AD466�ĥhr@��!?��{


�����~����`A�������O�d�����7�_�86���{�\v�%�ks9B���F�O<�ƲL@;w�+A.���?|�˷�V���w�M��/���:q�x����o�UA���}�~'�`6A^(�XLY<�����\T���0z�}jӳ��J�,�2���i��H&�t����wϞ#�i��
�		5%�R��~5F��D"!>��n
C�4PWWg�XhF|��.����Ba�$���qQ�8��wَ�ёa�����"��$G�Bh���f����Z�����)z�U]�ZЦ�_1���0ĺd�����Pס�E�jb�u'�z}���@�/�Y���h�@y݃�����'�5�P��KlPR���"��!!O�����%ӆDf:�5���[�rus��e��8���o�-C��S���C���2L@�j��9l�B]]-|?P��6�0D�}�868��u]䧦�:�:d� ���@N2H���)�X@�X�1�@�B!@<�����[����Il��6��*�f��aI��\�sO���Pq|�����q��q�r�+@d�ޙ�&Ȱ��i�TF�H7�ն��mE!4��P?�l݃�{~�����˃)�Cx�L�R�_�����Ģ��<+|��t��b��R��r�!8�55��)��41�療�G��Qeϓ�<,�?R�O�	��-���=�d�
[�Uo����ε0+P�Xw�ڋ��MS5�ɇ
�c>8��1����S�?�8�N���FYF�C�v�U��s��tէ�=��SSS�l6����h0
��0�*�1�uDG�7�.����#A�B�z�-/�஻�n�&=��ok��p�0�C��Ҟ6����k���眣���njj�v��*�L�P��k+����Nwvvf�-[^�.>yÍ-���ݻ'_��ѿ�����ߴ��[���\��}l�����?_^[[k���ݶ�M$�i�^&�1������څ���qx�O!AQ__���C�1�}Ga5u	������A��4ՈT"Cib��������Љ�t��I���a��=/�LRb*e���k�
W�_u��T�	�9���x�ۖ+��Y��\�56��K��V�D&����j=���ꃊ��#�0*Қ���ZY�\���\d��@5�<1��Q휹���)��IIN�O*�C�QI���XT+�5�^��ߧ*�WN��㤔����/�a��\uūFo�����M�$�J�m�c�X�}�<x�9
Uɻ���9^���@d.P�]!f�H�r_�h��駝��#Gq���9�47�C8�$pyA���"�Ú��
�P�l�����LV��
��	-��O8#NR�v�� ��#���LM3f`��f�����3��85mYdRI86S�x(�
Dd��	�LLO055���	�8<�c�_���A;���1�^Qc�-��i��_���Isxe�,�(���JD?㜃1��8H��H�IL�'iǶ�b*�G�X"����K^�2�U�#����.������2�{T���8���B��CȋF_<2�X���J]
�TDbY�So�E02�O�1��N�/�	���$�ȯ(b�N�P��}�UGc��W�;w�:���ҘJ%�d*iLOM!��Ze�ĺ���M����R`!�@`ٶ��]�F��Z��ǟ8���{1��:1b��)"�R�~��;�"�׶�#�*�x���bó����Ϛ1��ҭ��~�����kOwOD<�N�W_}uh�5M�k�z���D��6�7����Ҷͯ�a�4˜�����w_u��Dq$� IDAT�T�>u׭?��g?��eY,�}/�<+8'&#8���G^x=�P�P�K֩��"�S)�|������
���F�QM*�!��RPm��e6s�v����Hu�	
�&>u���Ĕ$�W��8@K����h�c�kЍf��Xlc4��ONj�ɂ/�i�Wu�����UA�HW��d��W�>ԽE�W��53@���xZAD��D�jE���u�׫��K�\_W�theļ�`}�O��/űFU��L�3�I����+ڽ�u8 ���q�,~"J1?���17.��
��C�hik��yH8	p��}�~ ;C�
b�
�So�EJW侘�|���`%#�Փ>B�!T�a� �-�R��<z��>�?*�c#�H���¶,0S2�y���eTJ%�eT�e�JE�\�`������H\2�Y�j'�y!�0�{�R���=�a� �ߋ�,K>F۶�a��C�H;��l?*���*�����8�Z�}k��V�E��jԤ�b��1�l�V�8��1
�]r�1�s�+����*~F����i*�{�q�fT=�U?c=o�[n�qϏ~���K.Y�cM�M�T>_�6u��JQ
��,[p�xĪj�P�"2�������?��R!�X�rŌ�6l8�W���0�3��N ^��]����K�����}u*�&UdN��t�I<p�}�_��ۖ��͇�ŧ�{�잂�0q���Y�vm�unj��/�8�y�o�&'�
9�|>��[ny�;�8'���_��o��K/�<�N�� �sCi`l��Ձ�Ъb-���
�h|ʘN�"�=4e2i��/���+�H�g�Q(�1�N<�Q��B�Nwy�'�2*�"5)�q���r!V�b���Z�ؾW��BĊ1b��蹐z�0F$���9T�%W�HY��0���Xg
�ha"� 	B�q��/Pꤵ����}�Q)p:�QTtķz���ې�
}��@q��(N���rl,1�"����R�z�E`��/˶M�����c(��Q�&��tF��՜����j�͔�BE��|�58A::;�]��`�6� ��æiE�Y�0MY�߀�J�d��M�V���>|Ӈ�a�Z!���޷�Zv_����>�ܹ��36�����ر�# ІR�F�
M*�%��)U?�BSԒ�(U�V�*Ԉ6ЂJ��DjpBL�&4@��؞�M�׼��=g�Z�����uvBb�W���׹��_k���1�fuS_hMI�laVx�Y���
Pt�����������g(m�5A3��f�P#�v#Ef��
��a#�]��r��2�&$0�K��>�17"Wod/}�mq��5��9��W�8�au�=��=�ƒ�X�1�f�
�!#�wEtonV�|�u��k
�cuBF�ś��S��9��x��v3ؖ@4�e�F7}@0�_�(���0�hoJ��o��JJ�� ?,�H~���|�.���^t㍳|�-Ԃ-'� ����_�@�L�&�}�����_?��7��O�|�7|�|ˍ��~�
������=���w��{���_y�����_9u�ԥ��NS��o��G�|��Kw�����'?���wvz���w=����~�w��B�=�=��ޏ���>~�ȑDFYu]7�fs��w����|�+���o������/��'�67aX�v�y��<!(��m%��h6���\�s��X���������ͯx����s.�i{��{��8�I��S�O���m�(�����C�5���&��*�R�ބ�r��K��׵�'�JJЧY+�XV8�^�Wm�w>�1q��l-(�#"e�UO��
����W~��pU��n���5ݧϝ�/�R��'�|�0����2����� t���6�z���鳸���}O	�f㑚TU�b���Z��X��ǵըE�h��Fm]�,�hT?�`�z���F����n4���[U	��Xi�%�њslp�9H�z���9�i=�x��Vx٘��0�n]�Zٿ�cՋ�"{�Xl@׫WG�kGӆq��j)��^�ȍ��ļ�Ւ���bk�e6���zl�I��+I�b��˞��%On}�$�0�;��Cw�Ry��ym����<0G�?0�3~;�F�T\�$�H�($�_��4,b��om�����~�m�nx�
KNk�0f+�������x�V���l�������[�'?���~��������{^����/��v�mG^������{��޳W�\b��śԮ#�w��m���׾K������[[b%\w�u���я��]���|�+��Y|�x��-��ݍ�p�u��|1��[��������G�~�С������_<���E��j�̇���Hэ�t�F�_�F����w�zो���0��|���[�E���vvAÜ�F��]a�[�8�%v�N8Z�{8�-�e��� R�W D����+��9�WL8�?7�p��;�S���PLD�f����p%.�IAM��$�L��7Xk�;�V��W�gX�S-�.e_^VQ ��W���)�R�r�I���!��������_ڻ��^����M����<q�-�K�6F��!�<l��=
*�
��e��M��c�ޙ(�Į�U
K�� @�Lz�Arr���"	
B�FZqn��X�������l;��pF�
���t�f�nV��qLܭ5��`���B6�X
�(�md�B�-�x>׸D���K&��  �e+�To���QZ[rk{|	D.
�كTו�a+�#���l�4�!�P���MF�����ͦ]=(���U'��fY���t�<�d�}����v��l���g]���X����L'�&i6�@��:�搟����.}�S�����^���{7��;�y��뮛U"��r%���J�~�@~l�Õ�z��S��_�m������?|dwwӯ�[_v��[_v�Q�ZO����>���o���<u���~ba�a��(���}���?��W��V5���3��ヒ�S����&�����7����?��[�aſ��w����������g�������M���������j����뷶��e�Z��t�ĝti�kxDDf��ԖM�#�M=/Gwnc$�v��a�6��o��o>*���SΧ@��F0��@ί}B�����j�����p���ɦ\��m�m�1��%k#נ 1��޺�}�0�Y9��l���;
a|L�̰v"�H��C�P�q���{B��A���,ya�=q�u��"���pJ�A�@/�Sg�(E�+""4���� ���w~⡇�\}�k^s��Ǐ��ㅋ���'����:/{{�q94i�Q��X����F)&D�S�'Y��S��Zd	HL��� 4h��8/��'h�)�M07hD0XqG-�]�Me��-ifB�r(Ћr|=7�ZL=�j���a4�ϕ�p�^Mm�y @��3�:��
�B��>���Sx���]'(20ˊ�x�C��=��k+r�,w�\`�V&�Ѧ��ո���`+��m�9�����Qԏz����0�'�C�ΞtW/�R���!��$K���,�1z�n�d�v�Y��u��:k�<c�E�#���_|�k_��/��Ӂ({������t���H���J:��h"�W��|�����o�馣k�	��\.������.�@�k�$Uv#�����'�����埝���bA�.3�8��!w�u׹�������bJhX�Y��3/
)����;;��23,�K�
;���9�x�j���)#m�l�������˗��j5nnn.N�8�+��<���ʧ�щ�(2�N������`4�c�g,D(*u.	׼�e;�%����3�Y��	Vx�0(���kS��S3���4�!y��AX�J:� ��%W�DY5�D����MX�%f�����9i&���g[O%QE�XT
����0�L<5Y?t��>����O|�ԧ.���w����ݥ�7�c/}	^�t�/�]�˗/��=ؿ��� �8�pK{�b���eC��Pl-^�.�#���n�����\�u��a4h�����7�x4Vغ���b�E�%Z�_���vX-a5h�]Y��!����O�VL�-���v�֥��Bѵ#3���C�,��B��;W�ְ1COĄ4�>p[��G�e�LL""A�V��S�ڋ��u�H���W�B)��o��4D,�\��dQ����9�k�aj��i.Rn�;������t5Aۊ}az�:c���V���P����9ܱ��\z�����c����d����P�&��Y=K�KX�agཽ��o۷���}�?~��Ƒ�ݭ���~��?�Οo]��AZ����d��b!��{?G��X,RXۢ[�5�Oe�v�ql C�8fh��
g���8L鍌����+��g&Y|#YRw]�>y�w~ǝ�=����o��õ���E!FFP��r*�Dƃځ�H&����>�q�c��e�C=a��k�h�+I�L��˰I:�b5��%P��vx����B`�BV���x FvH��IT�Ȃ�\+����t����h4E��SX�)��d-ʈ��U��a�}���'c$�C�ak
�u�o��̧?}嵯��۾�[_qӋo�i�믛�ޡ�G5�d��:j�py��]���
V�JV�ml8�Jn��Q��H>Ԁ)��tfq�5o�!�@a�#�}�1�V\�n�a5��du�\���.���H�
XyPXyi�}�G�N��� �Tr��-�3	�M�s��b	�3�C���ȱ)UZgC��`�n�"+`�
j`�JD���¤��Vn�V5��A���Å���(�Uܜ�e�^�Xˁ�:�5��Dd@f=��UGw�MW�M�d�h��L�i#e������e�T���Ou8�٩}�]�~=vZ����R�x��C���߿�U����oG��„e�2�]g�0e�j���@o��;��e=3!�H$o�ٟ�����>���/}�^r���OO�z���>��c�b>ǾW�Z�&��ԅ8C<�a6K
jid�F�VI��'f��0ghg���T���%N�2�Eo.�5�x������E>Y�@C@�$�J�td>����;�g��؀�F���vͲ[ƚܯr!ܓ},򝶶�I�!D�U%�V��Zd���<�H�"������/�U Ii!)�d7	/���
����Bw/ilR(���'z!�FK��*%�����
^w�~����йs�i���a�D8�j�dT��.��E@�xcc��S����g��c'n~�^�}��߰s���/�����<zd�;rt���(��7�_56-|�ؠ�
�q��0�j��jP&47KuRYX'F]��C�1}
p����КC�#�/����Kp��yػt	����\�`�\�rX�j5�0�`4hY��M%QƼN��Y��_,Zh}�m�c��l̊mSS�du�2Rbգ�� �%�C��e/��+Q7tD+B���@ ��>�N1��^�S��Ә: %n]EV�x��xG�&b���t�P����(���{S���e��'j�E[yx:7�h�]�k2e��Yk�M�a
�3F��,X�A����Ip��8��>�����s�ȑ��N��/<�Ԋ4=�ٴ4��<B�瓴��5j����7C�<e�-�N��y�����=��
�&�a�����b:Mq�PC��4өX����b��N&������� �!*Ɲ�zJqA4X�P�(n"�v����|���w�g�30�ϺC�6poo��������칾�1��ュ�jM	}
̰szZ|�c��kf6"Ɣ��R�
�HB�Я={la2%��<���N�ј�:�M��j���]�od��76���k#����x��/�b@O��ǏI
���2�!#��(ޢ��4r�}��9#��}�/\>�G�$Qw�c��������ͭ�M7����[nݾ�vvv�mnmͶ����[����a�=|vo���ށ����
����fm�Y��#�:�I٘�^h,���Gyy�Qx�'���5�b��Bǒ֛��k�"<�! ��-ҭ,w4-�of�п�a,��7h[�:o#�23��:�1�0�t���C�pD�Da$�"� 0�7����X��P�W��&+�vm�z�،>�8����a�)�'e�� jx�=����5ۙ�����TJ�{|b�reIF���l�-��UC#/��m3�ڴ&�{M=��3'F@�'�x��j�Z�f��r�\��#�\���$3I`�"��>�)0l%!�J�Te���:;�G�B6�`"�M�a�,�<H����#�; ծ�0�����\'7������ηUֿBȽ�X\��ZL&�{x�B9�R�̸�j�F�{W�V�0��٬�����˱�"mb3�q����#I�~�DA���+�!�Z���f���=�/@
K[)�$����I�@�v�1�;����	���%�;�ڊ<Y��b��JĚV=�3qU�ͅ}ɘ\�u\Эj���ij�!?�NY�U�a{�6�`��b��y�L
��;�~Y���퍗/]�c�<t�������yG]G���Gf�����onn.������b>�-��~c����3��X�a1�C�w0�/;�C��h>���Ic�����V��aa�Z������O�8���	�hnVmB�B��)��t��gnr����kͨ_��Q
�Қ�&Y�G�…'@�y��I�eD�	[4K����
+�M�C�
�����0"4A&�! ��`��aZ�C�d����VW��M;\cl1inm瓳Ny:Y$�۔`��*�J���=��g=�m�B��cǰ��*���x�0�ؿ�2�^�$�������~�_�����wݻ��)��5/6>Q٤\�.��Qh$��ަ��&�������<
�;�tМ�o����2!门��M�WW*�' J�䣜��v�B� [̧�y��s��q����Ȍ�\��;����/��ۈ
ew�<0��K�V�/����?�w�뻯����mh ��I�]���
W���S�P�'�0�A����GI�:�I0�s"�U`xb��zmPlu	�E�H��*B��N�\���M�tg�6-�1=dm�/���b2�OR]at� �
G���]S �^��
�@����㈈�"=��8e(n�&�l"� n��l�%ڀg*3k��yd�v�3��;�������ʘ3Y�!"�76��ͭ�l6�����@�a$�:^.�0_�y>�/qk���vݖ �;͙�\�e�ա�c&�P���	ؕ����B��^,�%-��u!vs(�"߄u��;b�1H� k2m_O4���̭ay�(��H�恓àT7�u����:�?aӀ�C֔��oc�\���Za��'--��+Tv�*�f�i�v堂�{MDN�b�lk�,���9�2)�%˵J�|	�ܵT)�i�CO���7"��8G��4�\��Ȇ}<�9j��	13�^����u��^rtɘ4dnv06��ꛤL˨&��w�"�(#��Fj�Bș�T�A�`��k�IJPa�W�������Ĥ �ٵ\��B��Y�m�}G+���i�|��tȃ�=��3��0�
���,�,���re?�я�Э���߹��ox�o���^|����9���/�%�w喰�on�l�uC�������,�ۓ�9���T�b��p�@�~��A��%���VW��k�Sj�d��2�DJ�`N�I��S�_A$�d�I��tƷ#H��N�@~L�Ǐ�|	P����!DG@P;�$D4,P$�ij�����.������I�[� �d�#����ٸ.��p��E4l#q)l]�̥�D�!b7�������l6�"�q���@!v}��(4hʬ�ܬ#���\,�xB�PYIDATĐ���%7Q��w�����@�1̙���`�hF�F��-!�w�\sdЉ9�"I-�BĔ.$|'�NJ`[	���RO��`S�O���FLכ�\�����W��,�T�!m��w�ub�dX�0��Wqvw�3T�-/5��5���T?<���L�9�
�&�,��B�*����4�w]�Q4�i�ńb,��	_غegG���ţ���. ��v�N�Ŏ��x��SJ �ErW�+�s%�h5���Y�NԉU�T�^+��-�C��[����""Bf��e��$�lRv6�-icӔ����ŋW���w�do�dYN,��i�D#�+ l�\���@OZ�\_��R�dc!��\h��Z��M'��We����K�R�%Xz��h��=��A2{�y��P���@gRUN���BCn|�[ψ�W�2�l�e��A/Rtg��`F'�XQ^YL��`�,��x�A��ɠ�)9�U��/��t����8)�T�eO��}-A��6W����	�� �g�uQ�	@G�3����qf��0���C@�J$dn�-�fZ���ẕXB1��  , c�IG4���8���.��]��#�"<K����JvwDy(�r�s^R{����y�b�6�0r(�:��n�����T��Ў�eN+�>����
>չ4D'���
�\k�`&N�F���kj7�u��.����yʇ{Vaю ҕ�C��8�ԣ�:a&DD���Iw̩�&
�:����Z�{�^g�ww��ƸN�d@��K1���n��I1��	�T��r)A\�^�k~��x��˻�l�R>3���G�U�wH����� !q���P���m���yD�����'��pxww�ıc3'й�2����1�qZ	�
�k�n%`AS��y�:)�lb"���P�,�^k�͓:��p
��h�r&�$1IT9�ם���Ʉ�g\iŴ��jdCG81����+�|`ђ�;�n\k�Eu�:�e,��I�N��vv��	z�b�-�w8+<@��o$ߨ�������(�ߏ.Nv
��>!
�1��+�!}����h�f^�P�ؙQa��[��ND��w]G]G(D����3���]?D�6��y�((��!dh_CX3�n�`)݆̕(�_	�He�Z'Z\�ܗ����s+0u1.H��'�w���Q�L�	z
�^��׽�W~���G��n-r.F�ĿM��A��CX
!�+U�����&U�`!6��#*���"J�8T$@�"FP�Ǎt-T"fj^�uhΦ�v�vp�A���b����zY�J�0�����d<e��
<�#v���� {(RM�k�&Ot
�gB��׊�ݡ�"��蔑�9U"&!�&X=��.u��K��w����������wܱ��%�4^+~DWC��p��`��cr>2�Q̮/z���?�g���TDЃ82�-)@}��z�)�����܅"��X@�����k�3W���ċ��u��ٳ_֩���ؘ{�f�4N*�-��w��Ç��W�Y����3s�9ӧT`o:?�lm�jxqƸ� {��POqe-!K8�l�I��[ɲ�t�;)�X͏k�';9�z�K}�Fq�Q��i��Ȼbl�lH��d��bs�0�r�lF�zN��j����e�;x��n2�[��47.?P�t�z�{�w�#��I�W�S�(���k���U�v�:̈́��|s(�L�9b'
c�7�����@�Ǩ�2'/�F<�n��95"4�OQ,啌6��8�8ܪ�8d��$�^,F��z�Hb��a-��=��g;24aԻ%"Ty�DT;H �&H)�~��F�^*�𿙌���Fo:��@����ԧ���?~���g��)���v�e~�z�d;�^��NN�:I�^ߑ��FX�Ȗ8w�5�4�r�YX���`�zr�0U�8�������a���L|�D��D\�x�,H#UnBc�Ş
_�3��іRv�;hmeS�v���a9�Џw�"#!*�E�m��s��H�nt��k6)b��u�Yhk���\ՍL|a��)hVy`�<j�	$�ǷF�@�BɃ�)�h�f�ƥ� ����)D�sٯ�N�(���@y�q���j:ѫ�,�;*+�Us&SV�(�+s�
F����8��F�߅�5�������-�[=A'��&��J
�A(v��5Fn�iM��FO�`4�՟`��$�*��XHq5�}*�";"X���"��N�\�9���I%Kc�CU4'vم���P���
M���B�1S3������/���!fV�~~/Ǵ%a򋢬s���|X B�U-���l������?�z�?{�ٯ��>�ȣ@�h��3�Q	�5��P��lXqBZp�R��B�és�5��4�k)M��q�Ke!ʯ�8 �g����
�L�X�&V��	�&�A�_!~�3��x������~�d7�&A�nW�"s��1qCD����FAY�P6�Lt�<�=K�_k78:��	�M,im��9I�aN�.%�w�D����
��� ��E
w�1&ߜ�Q��Q�ӌ�m
< �\�UX!��ǫHq�	)[��)k���m:���1HAF�Œ9K̀�m�U`�1d�y��Gv3��r�do&�����˚�b|��~��<~��	
��}7)��؋�̈�s�E]�=4Ge�u�[��Z������ߍW|�ɕ+
r��o�LF�B+�(3�E�|�N�':�<���Ê�L	hIԙ��`R���h�zt�Z�f��λJ�&��Ut�v2���� �Pd!�TA�� n�Ȇ ΁yn�g��3���>��]�<RJn*�kꬷ���q	"˚z&�iH��@���5��:\
E�F>0{y��V.*�����n8�eG��Q�g�����	|���|��Y6��D/6~��V�]3��8�!O���L&0��z��^�U&P��D�ŗ�qpRI@�����ɗ����� 5�1E��vH9��z/�V��^�Xvw>-O�b�<�vdm7'J%..I,�~(�dkF/Rқ�����t�m�2��5��?N�u����6���9nI5o(q�k)M\��[<S�>_�7ؙs�����b�X�J����58���I�gE+)��H�[Y�U���޾��@��(Z�k�Ȥ:z�ڴ�"�y/Ltą
0������]�{�0�rUZ�1w�j�R\���P�4k��Z��t����u�eE%&�C�d
�`�|������h��U/�b
q3��;܍k�k��9��F������S��n��rjD���kRTkHH�%Թ"VHue[����ʦ<�s��B�\+��e'X�Al�F+;]��µ_���	�E87(S;J��;p�T!���&O��٧^o�ਰyN�9�ּ�Rx#�Jo���k������DĊ�U�˄x�8qpMVce4��0�p��\$$\��pi�uLfm�t��,V��D��M�a����	N�`�ӗ��u:�kzx�;R�4�)R%�*�^t�A�8�z��Q�	��{��Я�!�"+bk����ia��F���sh�1�E��C��f(#F@`�lME�V��9�5X��s���^��.��ڐ�
�Z��b]�0S���Bg~����NV�$uy�^�(�P'&`F�)�D��Ά2,��v�
���#DRz�v��k�&�I!wgk�����Ȓ�ƅ���P��}����k`�h��@6-�Qto��3��=��߿$E��ٳr�Bm�����Lt������]��=ؤl�~iA������l��\j�$0m��<g1ԉ�w�aOX`�Z��cK�I�ڙ��������x
�1mU���R���}��{d\3�/�`+paiG����Ns������,���d2�R`=eg� k�&���d�U�[���;PN�i��so�8�y�C���;Uf�yx��l�N���)�ā\ɴ���RI?��06Q�a�����
*��5LQ@�Q��y�FӋ�O`%
�jLc>-�BX�r�K�sL��$.	NUΡ��8"�Ul6�d�@����e"��Sά�]�K�"�FV��X�ɪ�J�2��Q���,�r����I�]n�#|�)��[V�/�޹T��k=�Z�?s7��f�Yd��3��u����T��í�HGQLYA���Cw2���B���5����ܥ?����Zz�œ�tRw����Q���j�����Dd?��4�b+U����%m�Z����
Y�x��HE�s�dB6[	3�T=�D#��#��3�Mg�E�ٯ���f��B��=�q��N�=+'O�pi����G9ѱ8Yj���^n���r���z1i���]�Ü`	8k�p�GL'M�xC[��r��Z��횙���]r)̓|�7�5�o�
3��"%��\w�o��D��*�Κ[qc$N��h
�%��ypӞ�t��ɴ&�I1�	� s�U�F�<YI���\7�u���� #�S���)�'K����ku���*K�
�;r�C�-�f(2�^��23��ά6��҃v�=�U��[�5Vv�63[*̉{��Ӏ���C�e]Hf�d+�װt����쇒z��K18�p�� �䔪�����xJ�Bj�]�S������H�8�i��X��h�����I���K�.R�09����L{�t_�������-���q9�1��{��<����1�!��<+�:�Zf~EG�ܕ�+(���
B"3զ���qE�i@��E�q$�-V�[��A��$�(ޘ�B���<��}�h���S�s�2��S&3
"��	E��֜���Ľ̀�G��(9oi�:3_o�k>�ILS���]ï�;:1�D��U�L
��ncD&CW|�z�Z�|��9X��$�Nлc�$�[�@ه=�ۣ2;+Խ�H=�5�i�
L\�����@�E�
���
�dQ�=�9��s��'��c��ڄ���ݞʠ�4Ê3����!��g�(�؟��'��9'�̒�c��u����a�ʬ9���m�6�������vO�� ��Y9����L�L�_�V!�QA\�\��}ν�]:��m0-;B�o��u�k0i�8�R eM���GIBN�	JQ�J���fRx���rI����N�u"��i.��r�j�(�S;��B��Dp`t���h�!��X�6	Y'�T�J�+�y/��M^!�{a��� CJF�I�UI�s�K�\���W`�|
����uǞ���+�hg��u��R(�|B����Q�3Ř�^$��i��&N;�q�
{�3�����N,�
orߜ?w�!ŐN?T4}R` �;,�K�-]��o�K�u�~���yYX]�4z�8+kZ
��������򙒛빾s�>YW�i�Q�0�:���ǓX�|���eR.��`���k-@��$k2}rp%|�W��kA.��X#
���)Lj��֒X�	�!s^�֔J6�R���{�0��:
�K���޼|��S�'e�	S�J�
8|��Ejd�K��h(�"w7���S�+�е{�Wv�QOT�Y#˦��4��5�Ʀ�*��=}%��<���0��L4���Ng2�ޥMD�I��}1�l������r��uOـ��H�ae�b��-�*�i�px�����s:V�ڝƒaH���U�fd��&A�P�j�2S����Hd�B^,��Mn���ӽ;N�}�LE�Ωf4�W��7L?橶9;��^eۃG(D0ZM�٪�"s����}J��ˤ��N�d芫����(�5w�믚���>�d])��a�Z��==����.yʸ�jm��-�ֽ�]ޔk�h'K�c��+O��E�탧IS�Õ�ϮS�YP@�:��E� �4�7x/��eZsT����Jգ��� 
����*2#���Q��,$u����*��}���P�cv�D%;žu
rC��I�;�wd1piJ�08�@��͖�h9 I�ryTJ��hS�qݍ� 5�$S�w;��t$e�mD/��A�Ȳ�޸2���;��1�5��z�{!�3���ǵ0�Т��lB���|�#��^t�T���6{�s�������=�2\���������Dkv��ˡ<ȕYRW�)��.������g/f�pB�[��(,��&g���?��5���Э���*�[9�ĒVj+0�,�+ε�$�	�n�L��N�8�k�Pv���k�1��2�A�z��@���:�_#��8���PR�F ������/�������
��
��8\���E7m;����u�YDIr�Ű�,D.ɖ>
5LYѹ���%b�!$�œ����
�cֽ1��՝r�q�ؕM<h�0Bq���-}�M+.�&��c_Xv�\�9�f!.&�gb�/�u�?���=Մ��.�"��_8 J�kM���5��/+�PLP�)�+�@��bn�/ꬻݵ��WⅤL�8a��ϭ=���&Zf�N�^����i�%�����iZpK#x�cX��_h�j���s��פKao.��:Q�U&�S���*�i��=�	��y'aJ
��a�i�k�(ۡB��h%~P
��M�H5�]wa�Y+�E^8!}�sr0⅑$"Mi��U�'w`��k�7�a�]5�"�׎�����w{�sBrPM&�bli��k����/�!�OX�I�r�j~P�7��!��IX{Z�U�Zi�cf�O�{z��m%Q�C<s�,O��C�v?9OB��T��R=ot'(֤��wF
y�ݸv�jQ_�E�೫�	�W�ӓ�ӞeL���&������|�R\3BPI`�s.�/��{����c�$�‚��+9A�2��:5PCs/�3��]��D��f���P��[)�\�k!��Z��ޞ�Ey}�wK�v�r�� XhЄ3��<)��X&�I
�>KxT���hG7W@�S���:������>�i.}ʯ��ŠU����ԃAfֱ`u�)5�<�~M�(�%� �ء���E`œ�9�����p]��|��~��2��v�m���5�Ʒ$�M����
([Jl$���Ě�JJj��X9�DQS	8`�l*<����We�F�����N�Wf[�N��j�N'����k�Λ�	�X�|o��$�U�
<YY�ș�������}1m���<IEND�B`�upload/11_20151012-fly_grand_restaurant.pdf000060400001452046152455614210014147 0ustar00%PDF-1.5
%����
1 0 obj
<</Type/Catalog/Pages 32 0 R/Metadata 8 0 R>>
endobj
3 0 obj
<</Author()/CreationDate(D:20151013105625+02'00')/Creator(PaperPort 12)/Keywords()/ModDate(D:20151013105644+02'00')/Producer(PaperPort 12)/Subject()/Title()>>
endobj
8 0 obj
<</Length 1007/Type/Metadata/Subtype/XML>>stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
<pdf:Producer>PaperPort 12</pdf:Producer>
<pdf:Keywords></pdf:Keywords>
</rdf:Description>
<rdf:Description rdf:about="" xmlns:xap="http://ns.adobe.com/xap/1.0/">
<xap:CreatorTool>PaperPort 12</xap:CreatorTool>
<xap:CreateDate>2015-10-13T10:56:25+02:00</xap:CreateDate>
<xap:ModifyDate>2015-10-13T10:56:44+02:00</xap:ModifyDate>
</rdf:Description>
<rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>
<rdf:Alt>
<rdf:li xml:lang="x-default"></rdf:li>
</rdf:Alt>
</dc:title>
<dc:creator>
<rdf:Seq>
<rdf:li></rdf:li>
</rdf:Seq>
</dc:creator>
<dc:description>
<rdf:Alt>
<rdf:li xml:lang="x-default"></rdf:li>
</rdf:Alt>
</dc:description>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
<?xpacket end="w"?>
endstream
endobj
17 0 obj
<</Contents 18 0 R/CropBox[0 0 432 606]/MediaBox[0 0 432 606]/Resources 23 0 R/Rotate 0/Type/Page/Parent 32 0 R/PaperPortPageTitleStream 33 0 R>>
endobj
18 0 obj
[ 19 0 R 21 0 R]
endobj
19 0 obj
<</Length 870/Filter/FlateDecode>>stream
x�}V�N�@�G�?̪M%�Ν�=^M+WР$ Ubc���$��*��/�~?�{=ǙqB$bĜs��|8�>��4�2@�,ɸȘLRn
�����e8Pl�>N�ϋ���`�s?�N6���ڑ�F�t&��IdZ��AJ����r�X�I��Y2n|<��K����/"藝0S!88]%��Nn�	h��i?z�3���-'o{�^��
	0g	���Z_�0�F�mB���4�ƹ�#}w�F��!ؒ���g�� ��\��.PW���a/�2
��<"�%G,Y߈C�StʁO"�1'����q�+�a_���6��ӓ�F�_θ҈�5�fѕ%��a���`19�4�����*�:��E3=d�D���3�'��@•�#j�����6�n��@
�es�0��1�p�tNJ����y����i��I_g{�yx)	<a��_u8I��*gx��ƶH}2��i��Ih e����}т��e��R=�,��);{ܲ�vY�������GUT�f^���i��xG��*�P5��$��w�]��0T7i�I��)ŌG��[ή��x��ZW��܇3Mլ�V��Cj��J}㎅
+
n{�f}�is���UΊ�`�-[��T'�oo��JM3�Mx۬|���
����N#��x�.���f:c�n�,��GJ�}�iiv
����I��M½(!���?.�$��6_N�@��:G|�A���+�,�6��:�(M�:�����5X���W��p~(P���#��8R�&���gTB�9{d���m
𭬹X&�J|���M�L��i��
GP��{���Fe�+�IAр�Z;�[WZG
endstream
endobj
21 0 obj
<</Length 59/Filter/FlateDecode>>stream
x�3P0¢t^.0+ȝ�����́�ɹ�\&�F`���\L?371=U�%��+�����
�
endstream
endobj
23 0 obj
<</Font<</OPBaseFont0 24 0 R/OPBaseFont1 25 0 R/OPBaseFont2 26 0 R/OPBaseFont3 27 0 R/OPBaseFont4 28 0 R>>/ProcSet 29 0 R/XObject<</image 30 0 R>>>>
endobj
24 0 obj
<</BaseFont/Helvetica/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont0/Subtype/Type1/Type/Font>>
endobj
25 0 obj
<</BaseFont/Times-Roman/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont1/Subtype/Type1/Type/Font>>
endobj
26 0 obj
<</BaseFont/Times-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont2/Subtype/Type1/Type/Font>>
endobj
27 0 obj
<</BaseFont/Helvetica-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont3/Subtype/Type1/Type/Font>>
endobj
28 0 obj
<</BaseFont/Helvetica-BoldOblique/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont4/Subtype/Type1/Type/Font>>
endobj
29 0 obj
[/PDF/Text/ImageB/ImageC/ImageI]
endobj
30 0 obj
<</Length 202206/BitsPerComponent 8/ColorSpace/DeviceRGB/Filter/JPXDecode/Height 1684/Name/image/Subtype/Image/Type/XObject/Width 1200>>stream
jP  
�
ftypjp2 jp2 Yjp2hihdr��colr,res resddʀdʀrescdʀdʀjp2c�O�Q/�����R�\#"wwwv�oon�gLgLgdPPPEW�W�Wa�dKakadu-v4.3.2�dYKdu-Layer-Info: log_2{Delta-D(MSE)/[2^16*Delta-L(bytes)]}, L(bytes)
 -55.4, 2.0e+005
��
���ߧ�p��-@����I��~u0�:�ȶ�Tٵ�[���Hy�~5�
qp=�F�'ژ[���^�[5�7�W��}zS�ٚhf���Chc����	#/y�%q�V�0#�E�n��A�9ӝxy�p�[F����©(�>	��0eL���I�m/Ԭ�6�e����e��D�J#l�P
X`C�8f�Z��;��ۄL��宑>�*��iS��-f���=� ������N)��)>=�~��, ٙ@I�(N�+��l�MJ�����%�����T\����v�6eT1���{U.�0s��#��"$$C���6v���e�G�3�;�l`�^QKH�I���?���(�b��]��[W��8�Z&���X��ٗ&}(��R�k��?�(�S%�`�����[QӁ	�����>���n~�B̏�	�zrN�`����][��>�ep��jvĊXx"9�z�pr	4.�h��d1�E)�����Kϸ��]�D�q����{k|��X&��R)�����Uݡ��N8�,B
so���no'�u�\k+R.dE&o�c'�����U:��B�T!�(+<�#	6����5�ȃ#L��羛]�x�yb�NĪw�f�*Nd5Ó�5u߶B����W�S_�>4���=�%y[�g佂zȚ=��O����.���}TÙ�EQt��a=��u;���D�y�������X�(Ћ�G۝k�D�Pl_AEG�%�4����A�Ϳ�g�s�~Ԛ`�%����o�řQn�A��=�Wqi������*�$?7ˏ<�X�KD�+"�6��)�Q{�V� ��D����DYHu��=���N5�70�Pb'�>
5�����d1Ut@���,�W��<��	��6��7�3��ͷ9P�a8QW�b��~z�k<$d�>�Ո,r���������\J�@�F-,�"
K��%H��������(�����S`���$��|�r�+bYh_��(j�V3��F䮌�#B
�2�Rv��l�UU\�(:�Z�E��r�+8}�&�C@���ެ����A�[s�4��aQ1O�������O�C��{�"��a(�w�[�A�N��̭X���٩m�9 B�6�Ӊ>i%aGP�
�6�۫$c������A�„��t�'jО|$�뮝s&�Bk�0����K'��ԵmDF&�Ģ���ZJ(^�$)�T�)"��Wa�h9������wܸ)G��OO�����|����ȏ�Ӌ7�/�y��
ﱣ��s)+�<�Mi�?�H���γ�͇n;�+_�;Ա��Y�:x
�EЩ�K�+�Bmp���!���%1��>���D�?7��HfS��S��A'���I�y/Ͱ���O�[Hcmc仧�Ҭ
��%u/��Mً27N�LN˖��'�[Sw�򝓏NE�K�f���>�\Y�-o��:j$��#���3���?��7�]X��w����PRꌳm�o	���%Kw�mj��*5Xh@[�+c|a�i�ҝ$��t�f'V�,�x_%={� �kH��adV�fp	�%�J�e,�D)R�F��\�H_�x_U��ҵd�|��?S�"F��e�;��^�%�(eoBQ�<�z��0��*�
��щ
��
v�����ey�������C��Rs8��.	�Q��U��Һ���v����=���q�F뀱�I"%,�Z�˃��jC{,s����N�s�b��[7wn+빆���'�*ⶵ��f��)Dt�^pl�g%����r�3�x+�궵	T�)���??M/c_yG(�|�Wam8v�GVu!A�@�{�*�R�	��ͮB<&O���	X���q�l����х;+��q���$�K.�����U�C�7D�ő�s�@���'�67��r�$�!`�MB3D�Fng�^�1�b��s��+RJ�9���l�>�f1_��Dx���Ty����Δ.bG�	�\����v��>��{�x��=���Po��h�밺Z&r<�AEX5�fhX��
�q E`�w��R2�!��x�&9�n��-O�\8�*�),1�=�W`����!9���b�J�MP��&����*���E`���s9Tn�bw��%�p(��/_�.��kJ+� Uak��*� =}��S9y�M�a�R��F��xUU�]�Š��F�rs���.� 'zb�YF"���9�C�R��?a0��6|5l�|\-��6Ru$�"�"0��Z���ωI�����^>Q/ՙ�~����k�BXX(�,WΖ��b8#��â�ͼ��(�_/)b��vEI|uQ�������r{�-!���F?�ܨY�v�{��:K�i���n�TK "K�-Q�����d�}:z�Hm*Fs+�qd;}V9��(���4��Y��?ڌc��b�2��@�>	�2�]���;X��3i)�6y�o14�f�����Yr�����^����p۲��\
r��6��=�>-��x�J�<g@7gל2<��2����,Vw�e���m_��� �T��p��!�%�F��B�0@�}i�ʎV�y
����a���w���.Ǹ%��Wѩ$*u&���:�{\t�]���4t�|��"^p��@6�� |�~o����Nʌ�/��_���\Ƹ�g�wǯLL�Gw�������NJ��+�.7C��BG#c�ٻ�=&�v��E��3tk�뤞ҋa���Sz�{�p���j�x�͛���V��Q�)���	����iC���kh7N�#s���Ѷ�{��(KL���R�j��2��@����|)ԥ�������ъ�6�ş��V]bN@<�"*.d�mT`���4��<%j�&��;�������,��!\T��J�pw�˪m�TY�2��[I�;�*�/�u�qeuHhd{%��[��z�����#B���2��)�.fl�_�NM�ʙ~��z�/�3��F���M>�|ˎ�¹�m��v>���ፘ5����F�v��e
�V���1q-ͤ��
�������� �Mx�;�����L*��
��6�/���V���~�:Q�_\��.���ɛ��@�w����B뵿��}����AE�.��NO8����3��w�nD�y�Rj�	�1�3y�?F5��b-8��9��
g�"�&�^�aH�a�� Nר$x�Nr�S
t_�v�~�7��Qs�(y� ���[~X����_EfI6(����e�h^r7� U��K��k%9t�P�@�Oտ�x�jߓٴ(X�H8���9C?D�!)�G	q9۵�M�F�R�sT?�3W��'�$
�ވ�t['ոv���yhf?s�yn�>5סs�N.�oԝ��Z�4���i�ֈ1�!��|F��C�;�������N@��GwS�cS�ԙ���9����tx�"�ݚ|trO�"��}ܾ�)B�j���a^�Ȼ����z�9�緹�w��Z�%v�cĬ�:�_z@/�w���5
�v 2jF<=
j�Ç��M�z�ąX�>ܯ�3�V��MN��'�
������f��{�|�*���������0~Sܒ���(�����G�+��R\��,�>�"��V�d=�=���6IRp
�sc��pݫ1AG�+��< '9x0����q�Q�	�6��?��r��\�4�esʅ~��.�����$��4V�і�aĬ
��3��B`:�Iu���:�o�z?yd|�tK���i���Ho#D���`ߠ7��.
�Q�$��};�_2d<�	�FSc�Aλ�� �H�f=:ٱ�^�lt����m Yfm�l�=�"��<��l@�9�c�yJ������ЖF��8A�0�隂̧rv�r�G�$�cjߍ,��Vq,a�L)����,��]͊�P�âH�مQ`J\�T�ǝAʖ�8��z辿���V�}��ΠBk���P�}��$������t�@s���`�)7�$�$��Q�	��7���3�V��b�|�v�{3x��S;U�-	[Ha�;!���"7�qQ�ō6K&�@�'��H�~n��w�S�w���̷|�rڧAsZ{S>k�V�Mw��-��p@&�8��i� r�ΦA;F����C�ޗ�c�3e��Z��K�oH֛M���H_D�>�K|ߧ�\�}k#���y��ז�ѫg�=�E����vNR�
e�m�4�{��<�i�t�Ѱ�ȓ�Y���	s�y�m�h��6��7S�Xo��X�
K�M��!}��t]lay/�)y	�4b۱�+��^��	fo;��?�VG���P�u��Tfv>�_W�[�Cv%�Q�8�	\RDf�6��*�@4<僥��W)�s\������Ⱦ���$3jM�)�W�l���}Ƶ�Ͱ���ߋPMvBK����4w>�P�`j�8�A�JH�S�F��OD��׀���p�f���-���sT�$�6S��5��ڱC��ކ^^*��[)��j+E�%�%EI#8�m��Šxh1/�k��<`r��¦�g�d UE��lPJ����!���>���V�d�v)[�%}�)_�q���?������L`e�&5Ft��1|℧
�9��<Y�f'� 7FBL��	R�V�<�}���;j*\,�gP{�k�u����KZ28�9����|�
N�&Wt;>����Nv�Y�S�R��T�v�а��������}�X���t^�h��������(4H�B�/S8���k;�u^?>k#��"��}6=���t�!�Ro8�2�*�hQ��ek��0R��X2~�N��s�B���N�ć�;U��'7�E��H���\�Z&���m�za�O?�ؾ�vʦډ�>�ȟ���Lkؘ0&�5�}~�O*?�4�Ac[��IO���3���? c���#j{x�`rl�eV�Rp�<:xL	�z����J�]^f.u|�&xY�G򜑉+$v4\5}�Z�XzbX������e��zZ:�$M��$q#u2G�R�[���hA��/����Y��'6��9yex�N�����C�ܟ;��9���Ud�pԠ�b���d�]�>���*&bz��\۬S`V���,�K���u����8���εR^ø�%)����o��^ȩ�D���F�80��~���B�J�4�=1k1v(�݉��4�5m<!H:�h1�y:f�b���-�QLN��b���dz0�ț��*�����_S�V�Ʋ�߸Egkn�
�4"2�SIf���
�4أϷZgh�Du�1�c�ߙq&�߮�j5L�c���UUS3�И��&Y��%����D�����Z�Mսi��ۭ����K"����q2�݆4�	�gӐPhx_?��:5�����W���X#���ĺܣG�|��i_�)�����&o�h�~ұ��9v	��Xcǿ̾���@��+#�cIH����4S��vn�3^��<3tk:�	`�
��*)/L�u�Ӹrҽ�j�1�&������`��+yF�yKs�~V�3�7�j��?4�q�6w�}v�>��=��;<~��_��T���K��c���9�t��]\��b:�� fh�m�g��Z�{7J�go�3AQԆ��M-s;ZT"�:LrA�!Z�.M��B�Qݲk"l\fجYI�fO��U���De-�,_�5{��P���cӒ)C��!�x-ّ�SN���9��[w0{9���'��yT��F-�Z_�����	c�(��$�{L{g�s�ڊ�J$ñ=�L �M�D�`�}�M���z?H�ts5lQ�2c��>K����U�c&|�LEx=z��G��Ұϥ���(�Y*�A7!c�I��
���Y<�A���;���t^�K�L�h���,��
P���xV���	{iƶM�VaяD��F5���x�M�a,����;-�{t?��/��+�g�p�S��� 0�!�|X%8.�:[�J�?
�!mtY���/C
�RZ��ٻ�~j��RMR>&׾�4[r�x��;0;pør=JR@��JNsĭ:�E{Jqw���i��a��	|�‘���C�k|,�8#9�}�M�sIp\ŏP���b���]Ģ]�������d�ñ���'+,��-{	�-��ZCh��!�]�*���8�Dn�bi0��c'�~�\�c�5��O��
����k9T@��
z�]����ڧ�.�/�Y�Vƕ�<*�
�����T�O�XU�E��PC�-��N8OJhY��̓M)$���G��c���/����?00���Qm�L��Ź���17k�+m�4=�>��P�cTS��UE�J�ɹ����A�Nq��@�<W
�^�
�e/
�\B�׍hJ1�#���G4D��E�x��͑X�Y����s�.�^��_}�X���-K�1j�xiC�����~e�ϓe��/���=��}G��T�	�,?�oU̜J��3�ؖdr�UDz̪|�����%�>H�r��1�·C�"E[g������s��~��X6�a,́�5~��a���ǁ��E��1H���W���rH��(?�8sU�䆕�vwKIpڳb^`Iw����@�v�P��1�r�4T��1_��G�ƥ�d���ЅK��Ig�0(I��zQ+�ܵ�Kn�MÆ���	����e�֕sUl�.I~o�sNT��)��>Q�/��A�2Q��?���J}tlj��S�K�J����nD,�\R�\�\7�l��0�-�%���U�,�r��� BN,���d�҈��d�LMGKdX{4B�-6�P�Cn}�$
����΃:r�4�)�ڎ+��9�~G+�q�4���\
�x@�x�z�ǨҞ�<�FC��2˥�W��E�p�`u�ڛ�2uv��
Q��A�g��B�C�8��ID�D�Ĕ�G=q�y�ռ���$��]0�����aE�����i�����Z)���Y.�&-O�v�jt5qu[E�Iv~��9�XA�Vz+�����D�?������΁���R$�W֜�	���ռ��#��ΰt�l�8�ܑ|X7ė�Ze��8i@�������B���3]��KpPpiP��5���^��02{y������|�}I�d���K�Q��q"D$�2W?�F�Gq:�,�G
�)��7�X,�FGwm�*�+�1�,j�oJD"!կ�Ɵ�jY��7�@
���s��k�Y*�E��>x��A��^s�P������v���̋�)[�g�b�RuĦ@�w3�qp^4���#(֌2{��#s>[���~���O��Ju�2�h�x��c�*oM�c��C���!�����7ֵd���`�}�G��R"rO"�o�3��h�O��2���<�,ۏ�P3��#ca����⨡@‰��"@�'��(�&�ˍ��\��v��$'鮽�"6I�����I��_�Qw����[I셋z{j<p��0<����ƽ��-�&ccX�'
&݆���K�V��m�Uy�Ȝ%a�@Xu�#_�
S.#����t�K@��3���$����&�7�3~�R������)���$��%ޤ��(P`W��v������q���ܩWC ���[����X�@B9R|D�Sj�"��t�j��;1��Sq\1�g���N����hu��s�u��ml���@[/��+�ߗ��B�1ϩg9�����/p�W_ˬ(�DoU����h���[�8F)tF�Q���C�yN�F\Aa@El�����$��p�	� a�a3�h�9��;@�ե��̥Rii�/����԰�0~'�a_4��2���P�����ce�w��s���1����Zw� �K1��R�(_�Ic��l�ə��#IqZ�M›G�#{Z����-�|XB#
Q6wyD�+*���F4�|�C� �O�v�����R�k%K��R���>U�w?u�'8�w���Il��C(Z��2�)V\y���h�����K�r��5#��m���S��or�L���4~��EZ/-E���ӝ�vvHX'�3�&�E3�n�G0�]����Q6��y��rغ�.�պz���ϻ��|��g�"e��K�|�
�G%�3\Z�:{�la,AaA�l(Iǩ��S~�n.z�"���<5)�?��_������N����RP�E�M�
#n�M����5q��\j��V�����4ɟ�	u�aQ��g��K�_�%��8��06���GE_D"�?�*Y�Q	4�`C�G��O�oa�����O�wk2��ehG�!Br�
VF�ֵ5S�$o��o��}]�]����$��Z0�TNh���N�7�8ʣc�� �
)�HX#2��S�`������yVP4s�~�‚Z�񞕒Z�s}t����v%���>��ڐ�kq�/��~�fG���C��j�;�K�f�h��"&�(�nϊ���{��kX���L`�h�B��|iD.c�Z�!fhv��w뼢=�KV�&�o�Z2�\{���]h�D�c��W1t�
���h�lLiF0L|)Y�8A�t=�b�㕪�k�C��Xs��>�Q�;H>�uk�J��N��G)��xa<�΃���k�kM
�O�=q9R�/��nCK�L8[�;�F8�A�d��lC�&�}h���2��=�r�NO��{?�CI{�\1(V;Z�麹r"ˌm�ݵ�����p3׸é�>���k�X mV���Z|�E�H��3\�Qj��yw��d�Bm
5�L�kߓ�|cQ7��d�J��h9����ۈ�`ճ�
C+[;z�lw$68�Lj�0K ��|X�x�GB�BT�m~2S¡D�� G���3�����>V`�$�:�ή[>����&�j	ڧb��5�:!̦/ϚI�����e?.�5C��"�x�k�/
dg'x�������8����R�Z��`<�n�Ef� �p��F�B⇲f�E5�/%2M<{lj�W;��Eʅ/o3�h<y1&��D�k񋴣���{��-�5LDg���Y�����#��+�V(�Q���o�����D�'���Q���
�߆~������Y�Ԃ���\��T"���t+�{S81l��=�
��yW�t3�(*
�b֬a��U`#�V6��m�=��6#]�!F'�VV�-��ۃw���|4��)��}�D"���x��46.K��Nŕ��+�5�*��Λ�g��p\D+���'�#c��6�d'#e�?a�8�W�&j{�zk�"u=
+���Ʉ%����'j+x~��<%#	��m�3�!����6ժޙ�R����̍PB��P%�+��jض)2?7u/�K��M)E�b�B�r+u�O��L�r��!hǂ|Z�m�)WUb�Y�7/W������,���K*8�"�g�oLz�7W�M7C��������G$9���G�������
S���M
��X�9:9�
i(*�(��b�d/2<g�Ew��[������h���G�,@�D��\���*�dv�[o��ꭵ(f�1=��ځm-P6����ǒW`������z�[F�q�"���G��!Ioո�f�����)(’�M�ϲ��|���okg�-�,B'�֮�}R5%�;�黺�[s���G���z/�@h85��4+��a��J��1��[�)�Ed��ٜ����Ȕ�[���c0j�T9uFg7���*��,\[�kwǚГ���"�_�#�(˜�
�mV8�����W�X�DQК���UJ��t���5�bv��wT�� }��"G���>Ԅۡ���j[��gqF� �U�R�(@��ǫ���[�I)!
�bt�|>�"?yz���W�]=�d^S[v�ɬ���H�hDWq�����!La
:}��Nf�f���-p���j�i��Y&&���bza��#o��1��U��±�v2�%"���߸��\�&*�[��NJ�=�
L�c��O��
��"�Ė��]���$o�X�߭�Lj�j�'*BG��,˝����ﴛ�fys�U�>^���O��P���]�sg����>n0�bw�L�;V
��I$(Ɇ���]��3��ވ}F
�/܂�ff��k�:�!�eUҭ�k
�4|�X�_�N!���KsY+_̨p��@Hr�o��`���n�{3$&1��"'���֢cQv�����������X.M���[�\���]�Ɉ�����Z���{�&��?�y��#��^ts�U��=eD�.5���N��#
g�m2��o�fK��Y
���0�(����.:��_Ёx�m�m��?�x��o�,�n��49������� SYEkh�Z�V��T�-$^�Yn��~=ϕ09Y���1_ƇJ���\I���^J-B
��I��D�z���q��ܷ]=������>~V
k+�*�IS<��,�*��k��S3v���s�n3uI��~��|�2}ж"?���� S�d���F�n�ȓ>��C�$j2.��փ\��0�g��n�DV�N��"��������4Srl�ɠ3�]I��V�XZQ�r��t*O�O#�h�_�W#�圝ꋹ�2Խ�Kш��@B�6�7�Y����|�8q���_cp>_F�z�2G��V�6J�t�e��=�֚�ƑE:Q2��#h��F����K�_⨞�MM�]a�j���"1�:�.Y�j��_���:L4�Mê�C/��_.XBe��o�7m3��4�2�ƳOy8w�z��~�(�@	.��W��S�z�}�����o��(L��OsR{��,��l[�$�	�^ʞɻ�_��}/�ۮUB�[ʮ�
������*S��o �b��]�D#�`�)�T��.,qv�^�WlT���Sb�TS�ǫ�8�h6>�S5Ɉ���l,y����ӻ��:28����ws�,�ڄ�*Oc6ЕU���)v�]*�g����N�ӕ�f�4잙��:ok�|��!��x/'Q7��Z048���$�>�N|Z�ݗ��Ȏ^+'oJַ:�<�g���d
Yy%���w�- ۓY#�hb˓m;B�W;Co���=q0�8�����>����$�zG
	���݁�]��_ܜ�e�[�(�1�Ot��S�f\1bN���X\
Sn��a�PMyhr��{0�2(�"ɓ�L����gV/�anX�n���(l�D��T��O�	`��^x��nB%f�[n����f��V#��hz\Ds���Yz�J�n\�	[�?�kg��O`�U������p���o˧+,�R,ݕ,����T!��׻��J}��
i���%�H6B�m�,���fz����O-ʅ[X=����?��+L�#�Y�yܯ����Un�ǃe?#�v��y��Ȥ�~�ͽTk�j��т�ù�=/*�3;/�M£����>0��\G�~��%�
מ�K�-�+�Q��l��2N:�f@*w�/��U�ԛ��G%�zZM8v�uq����T���!_{'W�n�{���E)�z,fH<Y��O=&�����2�����ZWb���Xs֠�ھ"t�2	�uI7��Ģ��;-"/����4�9$�����%�>��P@��a��߿�Ƹ�S	�~⣡g�eu�V����!ҋ���
j|jf���p�$�b��ypy�!�$�>������-��d����fH�_�Oy�
M6�n,E\�ÃN�J��m��z���M���*�+Qy��wb	�ᤩY�p����8����$�>��1�V�@7ޤ�M:+]nW�jA!|m������~�~v>�wf��S4�!��R�B�q\)�Z4��)�nw�Pt<���$��,�Ʉ㐈�r�Fœ���qM����4	��	E��}�F�Fm�n�T�p0)v��1���>���ڌ{��?v�tj�D��c�|]��l�S�-x��m��\���^��'�W*�be� �D��bo��Y|R�����5S �	���-�c"��+vY�*�&k���b[�%|���]`�r���N{T�vKJ��7��`#�	B��E�Lb�S=��_#�@/A���&�O��4C��*��i�A��f�Ca��:���n�8H
�-X�y��R�h�4����(Q�ڨK�n�Od�1�3��7����g��$�.�C�X-s�Z)���XZ�����v�%�g��_�\Ԓ�$ʙ��6~�4���ɬn�a��"
L���O��_�̒;�Fܱ#�%���⚾�m�$:+W�4#�*����g#�%�R�:�=������ƪw���N�]�Аԍ�Q��5hKr'��	��-�F�ݽ�.�<�
`.���+��t��#����}�0ط
��
!���1��z�:�@i�7+Q89#����{Z��P?g��Ez���bR�_�Ę\��4U�fR*�*B8D�_3r����?�전�!�)P�h��XP���
�]
=�q$�ߓѹ�A`L��aOQp����K1�ٕ��	�t�a��SU�Q/]�H�9�*�r�q�M��WXb�A���xN�3�=mu��v�ۻ���H�ZSZ��fr�Fx�\V���X�:Z4�B���B_��o=3������)��9� cW�ҁ0s>Z��jؾ���=�m�P�[��&�����T_6/戢' Hc�I����*�	�^#��N����z��Ɲn�F(��W�ğT�艫�س��//��h��c�pv�'����Ү��������?����O�L�����n?_���t��K����*�VV�\zr�Q��:4C�A��f*ˆ�*i�Y��Iy��G������>"��e؊;X���S�s��*m�ƚD�}CS�$F�y3���d�_��s�|���P����7a�ތ���EHz����<�qj1��HF���,,0����bq���I�2�G�kڼ�{�a���V7�Q+Cb�K?^2�~�]9�i~}m��:�Ŕ M�3qRw����\^:�R�����ט�D�BF=�.�ݢ�5"FI����y淚��A������>Zk_?�۔����ʩy��4#�k��ǧ�S�Ӫ�H?ĝ��{�q 	�X��/֭��Ƶ��{��J���QE�xG�^�+�2��Cfq��?����2�;�P��4����kH��A�
��ʺ��I�>��k���0Ecq!aC6��%Y/�K�x
�BV��&��sPЎ�7��B7z����^;,�Ŕ�ݡJ^��$���/f�M���AV���ё[�N�M��@��B]��J���w�/q�硇��/]:�"��?D�FI
��3�k���0S8�]p�c�\��l�q �?
	3���{Vf�bzO8�3b��!G���ʟ�,�7�1DH��<0VZ/����|x�uM?멟���T�gAժ��KSx\	@�ǽm�_��dΌV��� ���Vت��*̶��%c�
ܔdFu��$G��š	�*�6�¶t��l��[��'��Au����-4��w�M^�~
�	ŜV�x5�d�&Bk����1����f�Ȳ��l_�Kp}01XTj!}55��"=�}��cC�7��Q�.�Ym{����ؤ���*����Z8Q۹m�<Y�I�bg
���ƒ�>o���<�`�<����(�.UƷkD-]�Ѳ��:�UR��Y�R~�b�jݐNK���X*_S�.�h�~�&$���n�$b@ǎ�E�45%E(#;�"����n��wk��)a�Ȍ�8m	��ދ0�zw{b�jg�t�CS�-�����������}���~����h^2ydx���4u���`�y����g�G�.v�e�y�ĄkkBp[7��=}[Y�q�Czr��̥6�[�}�������F����&�3��>�!J+��t��n��K�����re�4��e���-���u��T��q�>dh�Cۡ(��'R�fn�V����}�<z�Y�%�r��	��
�`M�,�i����sҎՒs+"9�K��bGs3�?��w�^�:�5�{�Ӡ�� ]	������R�Q�*�����B�[@�n�����ڐ���%�л�0�FX�s��'�C6�;x�.��
�o7wX�68>�{��
d�$i)��,�瓋�Bv �ϳ�s\��+��H���Z�7�U0n4:��u�_�T� 셨w�;C�Q��U+)l��2�^C��X"w��4���ֿ$r(j��/:�f$���lHg�FK�q�V���E3!d���Gi~z]u2ɑ��%�ҍDū1����cb���_d�0� 0���	�$���h���S�uo3̻%>'mCh����M�YY�{,@�5��ɶ��n�cw�����
3�`�
5"-����/;D�8��,�4��ذ�5���Y)�P����������cX���s�ro��H�$�)���� Mܯ���襲�w�<P��˪LlJ�=y�Ym}�*n��B�ڠߤ�2>��9�`�Y͆��d;�RXϨG��n������N$v���ә�rCS����8�`�~=��cy�	
��B�Q�狭6&ݫ�������edI�0!N*�U�2��������T.z<	�����d��͜ugr�wZ^F�@j�j����Z`��5�5ǶbeFE$b�$�=�lY٭�S�2N��]�MB���s��Z;���������{�󐵹aҐs��P��Ŵd�llҀx�)0tZ]��۴��c�'�b�|wS��E��Q�D�`�q1x��D7b3��t��=�.|�W��ZQj;-�-�f<neRd�R:�.�qWϷ�Є4.�P���k��XT���A��r:��k+GM�̗�AJ\nѕ;'����G��GB~��bWzfB׳�kޱ}'�B�+9!�r�O��šdRu��6�S��z���P�SB����U���꥘՗Ƈ�A�H��~{:8��.�u�`���v�ѡ�
�
/X�ie2�2ׯ�-��
�Q�)g������<�\�S7�q�=�����'y
��&���q3֮�C�"��3p =	w�Th�'�-�&8'�x�{S��E��>,<�
hU� ��Zӯ�ƶr�^v���7߹yuH�
��E1��&��=j
��R�>$���b���. r:�y�T���V	Ǧ����753ԅ,,�CV�az���
�H�zT~A ���6�,������p����c���~O��l�f�o�j�z��b��Ǎ��f0����e7�ߧx��9��椻깤�
p�"}�u�a��{j�MS�s����V~F?�"�S�7M��;���~���Irլ�jh�VȽ�*2��3��C����;9ʦJ³��D�3�
��C��%��1�i��a �KH��@���V�f>.�fU�&�wY��{���И��(����3V��"�:ß xJ^���[�2[�Cr��:�8�Bg���E���D�_<Q�/T埅���tT���-�E�ѩ��3<�G�kZ��y&�R(�8��
c��W����0�Ҝ7��Mo�h�g��ɑ�c�J����J�[L�1����)�U(�x�,�x,�� ���X/��:��h�?*��I�N����Y�l=�*hAQ�6NV5Y�Pj�a�^�֒����P���b�1$�9w�F*��+@�s�)DC:̻�����$�|،�v"�
��j+hJ��*�J�ѾM�k'y�V�|
�?u0ҳ�KS����?��[GXze��of�;>#FSdtɒ�;�H`����+��1�A�z�C) ;p����@uސ�(�^DW�<ºf����_���gV�|#�)�P�א��ax��:T���i����iЙ\r�>���������(�j�d�j�F�1��Qj5�-�����%�\A=Hiޓ\��9�{��u��y��w�$2�d��-��v&��&��_� ���Г�K����
T]3Ӝ��\���P��,���>��I%	ED�'�ã
Z�N�щ
ƚ���������1�*�:a��e����H�֔�m�ɐ��mM͓�mg��'��2��1�5�8��uaz���Y[l�q�EL3)9��x�䞟?
�ī�1dJ��.Sv���AK�c8�N.��z�iZ.x�l�g����y��P�5^w&�(;r��xr
�:O]��+�X���/��Q/U�]�,q6�-��(�V"c�C���t���yf�����̊��y������k+l�|I7&�k�%�B��8AӲ����{�g.~d���0b��JQb�PL#�yj��Oe�0AJ?��U��0U������`��E��D�D�9�7���G����[� ž�����Z���(
�Ȃ�fG�Ҝ���0Z�ER|Kc�I�����A��M�p�$�_��43�೑nz��K��X��B�Z�4�j��>$�q���)i�2���(j�MD~J���:a����֫<.0���aX;Z��oc����3��5������z�&�x��pC�=*��O�#HI=Z�rB��NVj��l�:��De��$4潘EHu�'��e�6'pqk�C�[��ڼ�a�Ӟ�JDvnG���һ��~�ጎ��඙�'��o�3����cc���(BZ�g|WA�F��5[�q3=�d��h"	����Ι�1�u%^>�O<!���a��&��hx�״�"7Q7���t�`�b5
��g�+�8��լL���s�W������N���\$eK�ˢ��{**#�U�XSq�l�4$U)1�Zv5���,bA,��j���;/��.ec�_lV"ĢL���
V�gTi�(�ɓ|{6�
�4��(���q7O�]'���{��z��EHU0�R�Bl8l�Fx|�2�ڣ��������q��K[�'�:x�je��3����}�t�_�x.hT:��{��j���|lM�cj`	��߹sD����6@x�M&�¥{��i��P��M�{']]��D��b�p��$�P�m?K��*�Ns�����W i��5�k��!����B���6�"4��=�X�K˸'��n��\�r�rŞ3#��{�G6}��R-�L+��Q��b�~�tӘ�A���~� AW����k�U���i������I[��&�p�|�_^�����!r�D5f��ZLC���g�-�r�
��"[�����u�'��:U_�Q�e#�k���D���]yN��W�׭�m~l�uT8�0p.T�By2�C�����b��_S �4�Y��IW��ࣽ/c����tҡ�[);Pc���Gp�h5�O�)p�uv��`��21�v����n,nkE0��R���؆ϊSZG�q*�vg;X��X؇���R�G����:�@:�7�f���OࣶR�	�\��O�y\|�����F�"4��u�=2��m����
����n����N+���/�[;�r*�m���
����c�>}��b�吤��m��̱��w\±�_���
O)��#T��k;��.���}}n�o�C˭Ч�5S7�ùy2��h���ֱ��*gJ
�����@Bl*��Y�o��B�՞~�8��?�nUR�
pvm҉	�W��Dx�g�V�C�uMC��>툪6]U���@�$w�}��Y����W���:26i�A�4���	s�0aH�.���h?K�$��Mn�x�,̍�.�ڱA���k�^\�ec*��7�%���j?��(���n�Gp���+E?��y��t��K���j��6������ަ�(�hpÃF
K�OP�t��J��'�;�~���1@�n$<R�+��j2����+8�O$�س𼇭^i�i4�Q]����m,�?���c�w�c��"}�S�:z�}���F%\��t�J�!Y��G:�c�Sq܇�5
�”UO#r��j����Yw�R^z+a��h&J��>��L�ӭN<c�`'3U��,�p�]i��!sO:�%d�2�h�/����I���P���`�%!��%{]$5��dS��ݡ�!T��B�<�[Rn��A��[0��X��'���yQ���L�`P�\��tz�
�@�j[�G�
��#��<q86ᇗz!�rӬ�X��L����1��k�:��*���/I�i?CH�r�ԂS�l��E�
A͔EO��Ү	�K��p8�׆�N�����`1�@u��ո���+�8�ɝ��E���Y�B^$T�u|D2H[JfYP�n�b�~>*w�\,l��H��[� 3��#�{�ԑ��_����d�F�Z��
O'�YSΩ�~��R�c��)�ކ��H16q�E�V7(��'t(o^t���ڊ�sR|�e�S�*v��&���^we�Wk�X��'	���2��,����a�Ȑ<e��%���9i��d7�[�H"���&�y@�ȣ��g�p���yyA�J��mwa�8����E�%c���K`�w&-�
�ڊR�K��g G���y>��_V$m�J�1S��]���k���VA���&M>e%r6=7��ϭ�*_/U���D>��G�
Y�
�]5`����R�l�D���ɠe7"�N���-q�B�g��)J�1U������?^T�kP�j̮#Q��y��{Xѳš�}0�0�_��ڠ����~����ܛ��7s�`�,h���C}��܏B���`U���bץe\�˼]((@=u=Ha,���T�q��_Z��*��L�n�"��`t��886�U�m&�m�J����%VZ�L�gþ֣���%䚜RRs�Qs�C������ݱ�Q��*4_�3Q���6'3;�	c��>|���jE��eSW��
���_���:2H���70�$��
�X�Y*��D�?-��V2�>af_��@P(��?��~O�7�C>�]�{�`�X���z�*.JU=?�d�B��2x?C�9�[��{ٹ���-�1�t$M�f#s׍h���6�N�]de�V�
jH1�2̙E ��d��
�Ƚs���]�-iKA���`�B�B�3Y��s��^��n�+���a'��Zuu�y0H��؜و��
������ڐ��k<���*J6}Ha��3ʊ��e��>OQ�?
%�+�M��|��v,ƥ��P�O��O���ˡs`}�{�����|K�Z'�s'r����;~�R�D=w�i2c���y��1h�
昘MN0������m���O6r��̞ܧ&��:�ʼn�J��8��
x��)�L#D3(����/��c4�H��0�0�X/�����;�ic�sh��h�%Z)�3�x�*��<�n'�� N�]U�9$�Z}��\�x:�PJ&���t�*�.�
�;*�?��h~�O����Ⱦ��5|�����s�.�Z���
�?�V��"�`�2C٬��Kd�qbp{�}��$���B�D�P�;'���
C��j��\;��
4�<0�f����pMqճs��:���n��

Vƒ؎�K1�9�
�`=y�f#W$`)��ĵTp4��	t<��7�T�s�1<�%,y���Iں4~��yo/���[�h��.c�}�Wڭ���7�w��$��J�!�I�4��ԕ�6$��w���}�w�^ŧ]�U��z��V��a��f����T��D��}]�F�4�NAϖʙWxh2����L�'���F���n~����4P���J�:�iyW�~�^�ǾI��'�hJة$&��dJ)׿������g8/t��Ky}E,>�2�)>� H:+8���!�Æ�1ȔM�1��!�j�b�z��]�JW�W��w��� G�b�K#)\�c��cy+�h?��&΁���ݎAl�&s�D�n�٣ǝ�a�]ΎK!_�D�2m�L��
�N�Ϙ���9|�R�4?�^�tI'���*!�ҋ.ʃ�L�Z[x`���*���I��mk��;���o�6����i�|r����w9b��(�9%�sL<�[9��]3X�S��X3������%��8=��!˃%r�;o��<ĵ���G��q��h�H��1���e��
<Is��4�K!O'�
��u"�<���b�B+�@��"�P�ݲ-�[K��.�Z��C��@�A莋��v�?��D�-�X�@�d�{e�L��oW$6��>��^?,DVC�Y4��nQ�jy��X�P���J�a��J��V�r�b�����"� �2!�N0�1v���cL�4��D��j�MY�������l-{�uYRQ����Q��Ƿ�$s�j�v:s9솷RŌ2&�mN�d�o�T�[�
C���w@A�����+�Syh�h[�'PǾl��*b���J@���ͮ�Db)N�6"s
2�"6׸۝n1�$R�q�r�]��b�-W����S���W*v�.-Z[anrD����aqF���L�I�s�f�P�c��y̜�@W�|�mHl�l�CC�M��9gF�s�{_����q����r�ʛ�ɸ�|S5�zk"�3<�9���"�Ԏr@��|�LTݕYh�I�苀��(@����;��[kE�V
y��_��e��Ĕ��
�l�Q��yk�h��m�
v���W��>h�!�?�`L�kT�c�Xu7m��÷�v��EA���4+7�~>r�_�_I;ڿu2Z��?c��
?��I�,*�ʰLɅ�+GUz���kƌV��¯�eI}=6��/�|q)���m�ஐ*bAh����e��5�+݉��
�;�e���\��ŽI¨0��>�].��vU%8�e�gԬ=�Blp�:Y=�k�FLYu�g��K�J��oO]`L�)l@��	���5�>��
u�:2ω���j�=0 8��8���	�� �L�Xe��7�n3�^��O�
�~c/��	�$#.�׈f(q�y�R�9�.�v�-C�U�?�� �/�6_X(x�����~/���_�~9Fb��mUYv�?��ŒC�e(����[5b���3���Z��>e9Q��S>$'��i��S.��_Am��i��J���S�CQ���5)�6����-$I���f�g�v�+�*g]��C2ᥦ�d�aa�xԤơ�}��d;�F�홬&�`�V��
�?.�}Y����K�UK�kh�q1�*E��%캾]leW{^XC�R��|��4�R�b�\�o����W�9���L«��6��D�[5�A�5D�n����	��
|�3G�LZf�ZY�d�J��,��U(�
���(�Iyu+s�Hz��<��nj���r���?!�1և^+�����U3횂��#o�#�K~�(�jd�9#X�u`�7(gSP�	dFY��|̷���Sƣ�y�|�$���&+Q���z���M����ƝXQ�\����<���͆�M���ӁJ�'c�<|�#�E�8���tOE؅/��t�둔�T*(>4DY����&y�R`Iz��"+��g~�hL�8]*.�>�X�������L�j�P����N��:��n��	�?�vӵ�3!�Ƃ�;�g�A�Q�i{W.�o�^S��d�%��Ë��U�?�������Ѷ��P!�1�ڦ�H>G�˞�Q72��)=���i-,|Jv���J�B�餵)N�9G~��%�{c�JQ��eЦJ�v�
|����A?�uD��c+���q�A�Y��YZl9�feq�4}������-����f��x�[,T�Khߍ�ܕ阫qMbU���6��˗�p���\F�a�Q�^X���O�9}#I-��P>v��m���j���貌���bט]�M�ݑ�� ��O֏��ѝ�m�}ae�חНR�:6���z[V㪀'"!R�N?�
]��ԕ�/y��C�qfc�]9߻��i؈�^��E!�c��7Lj��$;�*<��VɿO�(��o�$z�}��֌��D��A��	�]�Vܩ�?m�M��l3���v��+�#5�܉M�f`��P��������,�l\w�.H"�)���ۿۢӂ����넪�,����qe��[�b�0����!�,��	0W�Ð�p�K��4]�3��2D��t_4M�;
����6e�g�.h	`����d	`z���5-���
�$�k�X�R�\�2�1bp�b终TdS@���4��C������L�\s�.�	3�M�_�Ґ$zX�/ҹP�"�`�$t�
"nw��y�̨NŲ��0o{�j�7�~�*�)��`!��I�-��P���}�t�����ְ	�D�[E�wc �w8�Y�2�U6���Œ+��A<4��}��f�&n��J����x>3�񖆻ʹ�n6�y����5
+D��pP��M�)
[��E�
�v�fL�Q�ޱ�gB�c�E�T6u�Q|^N�����ER�$w��y��_�
�Y���F��w$�;!�}��3�_�tR}9^y���@�:�0x���j��8�}��W�H�,ꦸ��`��0<��T��Y�����Ҡ8�4�pfc�R���,:��H���B�П<o{|9ò>��2��ɪ!/����]�d/���U����Z�_J5�:�"bkeۢ��|(�g�C��������PO�u^����L�؞�8,"��s�;'����=���I�5�m���Pˡs�
�p2�TH�1T�Fӝ�z!���/�
\���U"Fn
�D@����J5��.{�^ic
Nt��_���\���-��2�����e�k��K?5�욕j x���7����q`ʰ�.Fl�rX� {���-�f#�� o�-/�M���,#�,����8^�`�-&���L����ʔ��� >pePH��n���V~1�]R�fT�ɬ708z�/���9{DH��',��,#�-%��g�a�UG��A�{�s�2Q@�K�3F��o�4���O���T2��1K����7�r^p��t�WH�U��hFE-G����i�c%Dw�=��/!�?�TJc<��5<�xy?����`��P-/{̘K0Xs`'��U�/F�r�$���靹���.��`��n;����u~�O�q6U���zp^)��`t�#�ƨ	��\%��z�CUy���q�(7�0��������Km�P,6
����:K*>�G�暧����CCZ`AYN��Ж��)]�(#�̀����sQxM'LBg�@y9�=�?�c�c
3bs�"��,Ez�:ޠ`��х%b�hϮ�bѴ���Օk?\Vu	;ɂ/e�*T��%�Nܪ�,_�}�z\��t���е����q�˅`A�6?�VUv5�+��첧?�As��e�U<o`Y�)�;��95b�e��os���!�xX�mpg���p���l͔x�<+������7)r���<��'RI���m�Q�\��^E���"5-�Dw.=@_miZ��&������3���!�d���R�a"�2^��^J���D�絘�Ax����D~I?���z�M��y_&����I>���*| ����sn)6dqr^��w�p=�)�O�it�I!�ဝ��^�fP&AU�uҼo�
�sTX
"��T��,�3���"g_�Zd&@��,�C��l
e�C���vl'6���'l�ڊXLT�3����
������*�C%���	{�J�:2ǙY��P�&���gT���%���S�����}�A����.P��kDZγ�8��6#x��3T�c?yC��>�Re���_��[hm߶#S��y^�W��΀�y��xG�b��SA�Z![߻r�#Fe��L���M��󩙕�R���@��HMR�ZҢ,ҩr���؆���P��*/��|8�����&��:��vuh��[!_�ֆ�'u���'��h�������-{��[#�ElW%M.{�.�"�jG�_��i����L�*D�v�h�U��O���]w�LW�:|�"o���O�c��t�1f���<2���w�ߛŷ�#<hLd]�7}�T�A۔.
F�G]^Z`J�(8<T��x5ӝ
9�{M��dJ��\��D�1�6
��g�j��nJL[�;�2+�l*�m&�B�-3��&�ِ�H�����a���P�-tL�+T�H����b*=0H��iͩ0�y_}��h��=�4�RPw��X��k�@�R���E��s7v(*�x(�9��S�rԯl��yJYw6���p$�|s�){�ҙ�ey	�ߜ��q�,��m�
���ro�<�j1��1��̜X\'�l��V�.���4�6���m?)'�dF��łh�6sGK��e�S���jq�'Q�� f��y$�;�ö�gaG��:�n�z+?콻d�Q��d(4,���<;d�q�X4GU��������G�dAv���G�䛄?A�1�'錗��Zg�-@����˛�̒�ʉ��6LՁ tF`8��_c0�I�d�eA�(pcy3���ϊj%T��?Te'�6+�M{��A;N.t"q�`N�ؿ���l���������P�~�<��8�M��o�6�s��8n>�6�$�Ă��^"����oɧ<F̱I�4�v�A/���Y62�2(VlP��
HO�r��}�Y�ҏ��zB��):ڇ�	KG�vAnI��?sI^�sqU[���^u[I�]�������Q>��(Um8���C���+C���\[�<����߰Sj��2��O�{Z��� h�j*��P�qI�˦7>LCv�T����;�rB�$�U�:Mk���[�9�@��Z�6I}J�(�ZO1K��Ë�x>3���|l�J�j�)03�G֯�Ÿ�~L4*��n��x1�)�G�ަp":��aWS\kA "cOu�~���[��{�'�$a��֮I�q���&����>���6�K	FQ�N��\�D�-L�VϞ��z�e��}^.��Z����J.Ԓ�iD�R5A�t��zA���FjX#q�*�	�e�s�pJ�xNZ}+)�kpd�aF���ޙ�����IMb�?�:�x����s���I:.?�O��C	[ �¥X3�!�n��gr=��c�q>��Q�T��k̋��mL�
���S�dl	��`�v��ȕ�c�t�䰊�)��jѥ�b`<c�`��f�9yG��ĠO���U&'��-:�B>f��w�WU|V�io���PW����bkH��)��6M�*U��f�zQw�!,;�\4�J������Y���-���6�TYV]��'oB�VM�="��
\;�3Z�w�:��]U-�v�1R�F�I�tT$i��]�|d�,UG�5U����!}�!ƒ�a����h�<�P1�5���er]�`L����z�+/�	�;���?\SR�FR�Х���M0mG�!$���:��\�lWMNZm�p\v��xn�HCs^�ݞ�j�'��翐BåU]��WOk7b�V�@$��@0�
O�
���7=?��w-��/�8U�w���l�ɒ%!�X����I@���ѕ���l�;��_�f�_“Q�ȶ�����W,����{�,�n�rp?t�S�=��Wܶ�s^��VjN�:jlm�ݠ�B��	����↢-<ܺU�["�8�VxS4���x�eGtx)��E�5FS�0���7S�E#|������V9�4�ΜÒ�w�ֳ�>
�|؆Uhm'�*�2]�^X!<�r
B%"ʰ���	���tw�=I���o7���X�?P��pv�nG���Ľ�݈U�������fˎXX�+@�q��������-WA��z*O|�x��@ꀢݯ���C���Z*C����m܌�7Z��n��3߳�d�DҨL
1��^�(D�{Y4������>���1v{��V��
��9���@M	G]7�-q�L��8w��o߹��n	=n4ե�U��T�X�r�z�{�W��K�׃Wm�j��'���Vy)HC/������4]X��1]&W
���l� b�@�#��c�5>s ��G��XT���S��ض�n���w�H�W�*��ƒ媳�Gc|�9�M��e]6SO���kt@x��!��|�c�-�yE����98���v��J��pL|0x�3�>,�`�ejor���h]�&�����XڊԷ���Zn�*���vX�eO1���A41�&*7�C����Qk���<�~?��N��e���:�I��g��]�3�ze,ǿuLs�9.
F
���������X*��^{����&|��"��͛�}@�
���P�u���]~	C�� �$�V!���Z����Y�^�%�lw�VR7ȅ�΋yR&0'�����V���P�u2䄌�=�,�I�O�,�-#�6*�ZiM�Q�ג(�����XЙѠ���	X�}X��	�
N�p�J'�{�U]I�$�Gq�u�t�,�QP�r�-�Hciخ�~��±��%�8�	҃�j��1%Z��/:�L��g��q�y�I�ú�<�˳1:������Z�CM�U�}�?�{�
v��q��*XIמ�Qqu�R	F!��
����_ s
�Rܝ*%�7��W�n]�������(�"Χ�L�d sD,��Ǜ��R�y~���;�2s)�3��Պ�#���fJP�[)�Љ:�?y	k\꤀�;��e��4����*�eI'�i�ϔ��Us�n���/��U`͹�cJPz� ;`�v�9�,���E��(Tk��J�ڟzq/��|�7g^�.���q �ێ��}^����D�^���T������Ȅ:�޽ zXGz��^���]�+e��q%,�}�K��Hr��ޜ��h	N��l�gTB:�f�~C�3�i�.i��\�Ѡ�(�����sy�$	�3e-y��f��|�Ǿ�5��i�^PY�C�ޢ^1����(�
�b7�k��G(n/[��v�0�~HS�'g<r�F�3��r�>�0�X�u��
f�K{"�AEu�?�}�:!(:����_����9�pQyX�&74�mZ$��k�v�	�u�Q�hX�*p��ب���qi�ca��'S�p�y��2��Pe�D�~�qLm���e����Gx�3#1���}@�w`ˋg�HoF%oU�iSbC��#�W��*լ�ǹ�$T@َ�L�E��<4�<d�΁�,��#�rN�A�3�M�K�s� <�1��),�m
�T�
f�E��;+�t-������6��ʃ�-�؇�
{
0�~5 �:�;��=D��EΞ0���2�紃M���4ߏ-
I��S#����]�p�B�]Wzu:N�62�Rb�?f���1{J
=�ܯ���d��:t��T����C�Nr��rJ`z�o��}��ݴ�Tj�Eb�|���I��n�Wa|���{��?�5��ߗå�N�*��S4?V\�tzi����8��#
�o��P��
�|��e����;�Z�,]�;�?x"��LG�ҕ�!8(�g�U��f��3�9#�
46��?_\�,@|#�`IV�Q��h��(��VV%�i�:��(�!����u�īHL�c��ġQ������{��b`áue�_E��̘���/l�^-_�g�l�^��F*=���/$c��6���tp�)#�F�j��D�ߚ(��x�T{��a��Ӹ�fԖ�IJMw-�'���ػ3�axP�[���N����
ĂX��h�b":W�����$���T�D���OHk����_]���b�VFY���9�"��e��Z}
���|�j��!P9,ۡ���,���C�ς_��>%>�P޸hy�QG�k��}��G-�0�}��Yg>Ы,|�P���_4���vt"P��k��j^$����#��`�,��=�`;3��s���҄���N��̥@�5�ܿE-㍬��@bO�;�Yu��W>d����n�(>\���
��g5׫��x�	��^�UF���$A-��LV>�@[	�eyV�:�v� ���[�^Ƀ��a�n7�`J�}bR6�|���6R�P�YTϺb�%�
so���6�_���P�}ah��S
ܔ�1����"�B$�m�8H尔l?0\F3�D��8/�>��F,���0�"1aK�2�;�w6�}0'Hv�k��[�J�-.�L�r!�/��1wS��L:�L]�2�@.��V�Y�K�W�"���'=\./��lf'��xqI�RsT��-����]Xϩʁ��A�X~�y(�o��-��[ށeU���1�'�V��&x䋴?~��1�F�
W��`'g��d�O��(�JU�!Rj����m���'0@�:�N�w�	���fc~[G���|�]�y1p�\��]JP�Gy��
af�=2�\��W�lYv3T-��"�O���ç�|lr
Y�!XU�
/ѫ���Hs7h� >"*'��q299�$�;��b�`�<��O����`/ܑ�k6,x���}����Z��qW��!��O��.��8f�>`�sH
Vev?.lҵ f��1n�<���/�b�)� ӟ�E�5���鐥2�o햓�M#��rMc`��d�wM::��[ɘ�F`D�dZ�KL`N��iS��3y�\a� r
-���<�߽q$R��۠-���ʋߧ�˪�_��2�`Z6*�fQ�k@�\�6�W�Bq�md�+�w٩JVu�u��u��0pW�'�~���6�Q���N��k�i-t���|��Z!G�sGo��;e�)�
��P�ذ�)w՗��R��ׯ�r�D�/c�e��jC�)�-�Gc��l�Ƨ�挱M�P���"������g�G�'����
�ڂ�͓L%ռl��i�D�I�@_A�Ag�׎b�x���b(3B��Pn_�Xl�{r;n�wV<$=!Jr���-�s��w�����vF|6���?��c��� !yy��;-!B�fg�����=��ܡ�w�=������Z9��yR�蒍L�K�n�;A��P��E�~?2a7���Zgw�9���C�z$jA�J�W�%l��Ryy����L��I*[�x�2zZA�iA+Dڤ?�۴s��w�RJNc�0u��*��3�N�aY�X]�y=|���y���Q�%O�`o���'g=H�VgD�޻���.ۚo]�~5abK����j��JP�b�-�d�a²�+ՕVI�ڹ�Y���UY���^h���	g�q�m&^ �vl]���^�Ӂ!��244��y(����;�L�G�;���fv�]eq���|��
򮽭�X�TY�e��Pn^j��1��NJ�[���Q7V�f�JtF���v爝_t��`��{�?/J!Q�����.���a75S_�v��?�KPW�`TUqX���osry.g���a��y�����`�+Z$�4
���So�v���3e�rȚ�W������>�HE���:6q�Kٙe�)�*r��7C��N�a�e���1�7N����m�qU�[4�;b��/�J�y/f	x��Q�1z�#2������?�)��=�~f���eWƖ���IA�M2�����v�yh��W�<�T%}4�C�"8�z���^C�մO?Uf����ͥ��(�=���U�:���]�JǼ�����!(���K�wy��	u���Ią�A�:$7�oiڭ�F���n������ ��D�?[�ޚ+aT��Oqb���.�{f�{��ސ
��y�:N��όV�#c��Ѭ������o�҂�1�Ȋ�W��;Vf֠��u���[������E�d6A���?�Ô�N�>���ۂ2�/z�{FmZ�o�a�G���j[��Gy��*ܨ:���e"E
��`9����V��?߻"�W�^~:�G�����I��-�B�I-�o̚��d|3��q�^]�c���.�\�~�>�����{�4�=9;����_�� ��~�颱2Q�&�?��p���8/#O�ɏ�_z$3}�˧>��Y	y�z�zΟ���r�'B_.(�s`&�
��nL���Y�9�ԼL2�j�R:��p��PB�'%���5�B'��1����(L�Zq��}��s���<��<Aٸ���ʕ��]���Vk?��6�m�=&��w�L0�\7W�����
i��[���G��~�;{V ��Ɔ6��;�|�����>ۅ�p_

���HS�Z%OT���`��7�9�xՒ�s�I.��w2��uM���c��hao"1'H����i���|�=�iBe�U�'��i��%�1��eA��Ss�m�t�>��!\��u��`�%S��ù�N�!�����7�ՙА����R����`L���U�c&�M�)I*�4�[f��ekcS䦟�}�1i�B�<�#�
+��xp����W�x��E�%���y����N�	ob����z�,��^u�n�@�wR�M�ໞi���tP�T��?�8��b����:%��\F���AA�겖�\Y42�K�eݕ{;0aY�+����6��Ł�C��qE���R�-U@��4�H,���<kYt
���r����o"M1N��NA=�R.�,��L�<+�-ݴNT�Ō���;m{���K0�^�r���u}]L�s����.��W���n����B{�R��������vn�=��F�-�v�r;Xpz-IE4~V��c���8��J[䉩�H���w��(��PN�ӷ#_r����=h����jn�
�"��~��З�}Tx�)%�bw�y�7h>$Ag�\"� ��s9��wu!�ҳA�W�E�)��U��A ��y�N�����[!�D�K�
%���+�ŏ��#�gr��li�B��ᘐ�����A��jJa�$��Y�3��v�,�Ft��h�����:R/�uB�v�\'�{8��*�Ӱ8�� ~Hv���k���1]�I�,���,GM01�W?�$���j>{��~-�˶`d�#�S))|�A/|%���������팬O`Ϟ���J	I��i�F,w�������Тv���!X�3�v��Ќ�Ys���USz�S��R*�)�LK�@/�����:/�Q����?���
�y}n%?��[�k������[?��Z7�8�E}�(4'l���
�HxYF�~z/�7)�f!��j�O��~q��	&�[4�P2�jͨN��7�Zee���/#Ѐ!�n�n7���a�l�r�P����j+��rV�$H˚��:yȅT�z�;w���A�	�M�b��q
�!a�B����N����A�jjyD�����j:_T��N��+����Ȑ4�Bja^�t��(�i�g+�r�b�)�]��yn*�^0��=��Q�ZQ�#�ۭ�}ґ�a"��8�N��L%pF��7��hv�����`*��F�;Bdf�o�+�r3t���:}��owd��[�2��0g�G;!�)��Y6-=J���92U�9���n�f�O���L�����ãD���m�q
fح���Y�B�(�����U��Q�0�rί�l���H��[�Y���a0�'{J�(iS�*��I��n���cա��HI$�|�Z�� �
2��[�?w{��s���$,-6~�"�#|��鵽�b���e.�D�9�.��̏���UJN��b�I*�G���7�JŽ���R5F6+����!����"�8��.�
Y�׽��o��?��B�=�_Wy��{���=���w���O�p�w�}>���������[�`���e������;��;�~�f����������h�~���?�}Fװ���K����¨R�E ��c4���j8���n!?��,s�8G_*@p��l@�K��XLS~�5ri
e� �X��3в���O�t�0�'6�cH�q�)緶���7ԍ����sl �a�:�^$����K
a�����]]\�Z_X"���(d9*%tv���ؗ f�R��%^�[vzp����xH��H�lc�b�%�l�t�jʊ��uYO\Y����� T���,��IA��3�P����� �J�k��!�U���GёF���
g*`��=񐢐҆��R"g��Igc�f������'��EB���ȕXG��z��]<;����19JE�1͍�>D�)V3o��]��*>;:�e�l��ݎ�w⮴��x�N2?���q��UK��D�q3d͵� ����Xq5�	��
W}�B��^=0�l�eTBeFc��$�#ŗ�\�մ�Poc�<�)��݈C޾t?G��{Q�?�Q=�ax�=�g��*�h=�`MnA8��3�
�$6��k����z�]��A�/�j�7�ҘM��D��gϩ��X��;f{r/"�Y�B�m�]0[�71t;j��!ҏ��x=<�����o�c���'���eVk[�+r��0mh��G�\$�~~����i��(��|��A�Av�2$)�C�1W�v��ޑ(�<��	���d��vs�zAt6��d�]י(ܑ �C����:�JIJ?�*#��dj,�m�1��t�Ѥ���#���9T����o����w��f"?�9/%�n�4��C�?\�ߟ&�9֠w��^�@P�T)֠���t�)��j���LH���b���9��r��w���Jq��[�Ҳ��3[6���4�����3a��z$$]#�%�E��좶��S�*�n��☿!�gh]�b�8kH���m ��sI�(�+g��Y疦Wv�8@�~SI�����Ҏg���\��^df���!u��ѵD�������+�f�!�k�p�!v�~6��h?���Œm&�
ӝe�kQ��fP8a�t!j�	���szEŻ"$����k��12j�%����8��Ќ����;kJ��h��� 8�T�x�$b���T���ZE��v4�#��i���9��.��<���,:�� cZ��pN�����3p0eF��ɣ8���(:L��Ђ{����_��D�V�/V��3�{�-(���l��3��ԩ�5��NU�`�@6���oxY�$s��p�_DsG��Œ)�ȷ�*�'yX��L�o#È
�Iu�]=t�r
h`;`�+�QT��@�!����~ܿ�a�P��}.�P�*'E��i�ʚ���H���J�i��l����ֈ�;t��N�V:۫K���d���,T��鰹�6zML�X�����0��{'�j�Ct�L_����‘���~�fbS�q)XR^���<���6�uolY��B'�K=�q3��ꙷ��V@�(�K���)[p�XМ�0N���y��A�܎C�w=1E�;|@V�r��'�1�.��Zo�Qǀ�3)�L�(�I�D6����#ׯa˟�p�-/jDǪGW\f^���f�2ċ�q���e���*�Ø��:04Q
�q���MΥ�[��lcL\�v#M����l�2��0��$abnjh�����*Z~���>v������F�^�.���zXX�A(Cs)���a=4:��4uf���Xng7+�"��e7ǿ��?�B�t Ƽ!dG�JS��1�ƨc��^RsF�[KV�	T/����x�ң.E,�q�7,���w;V'H;5��XGڋEɀ�S;R���q�f���W�
q�	�V�*
����5�/B��.�^"�.��X<N�4i%U���V��$�7��yQR4Q��O6�h#�^��f�
�B�3O���l�>ē_�9���$E�1��/�Z�+/4'�����[M��lK<��>�Ŭ\[S���C-qs���$#�p1����� ��K"g�D8K4�����\	���W�B4���d'!�Z�}���3"u�~o�Xw����P�81U�W2��`�ɤ�ޓ�7l�]�W�5����8���`���=�"ڐ�?ɭ7G��&'a͗����{��ܝ�)�D��R��z53�����W�a�f��ZY1�$��,Ӡ���ꀿw	u�o&C�s
,�doњ��#�F.D)g����w������*a�]���h�j�y�K�U��c�`�ѨK�\ߋ�ƛ���^�@�mcQ�_��m�&[Lt#\�'����-�	|W�m;f��V�ޜN��j��}��A.�� �{�|3��d���L�%��\;ڱ�B�P�=��}U�X[�G7z䇭�%�ot�c����=�a��i<J������:}p�wׄGX֑�f���$�AuU��*]J��+�Kjk:9����,��Ϳ���}�b���z��A�7��/�SqڶrU�M�m�ʄ���w�Q�PB�%>��y(A�4&LX�
����j�,]$�`�5
��r���ԙ���G(�}o"��pC9w��#�]5�U��8*j�����@�{�w"�i��+�e���~��J2�G,(Ͳ�,Wu�v�]�W�1�KY��_g�ׅ+�<M�
X���5Wz���ا��>���E�e}���YI�z���y��Q�E�o�����}�n�1�mb��6�tK$6�Hm���n���vh���w�\_��w�]|��.7�L�g]�%+��W����"��j���������k������*m"��N�P#�=ȹ�_ä�BP�&����Pf$��Üp���o�{���!��вUf�F��QW���e�:�Π�����6ߒ�Lx w]0&��8�ECj����q�'�'o���b4��c�n�o�+H�v^�dve��}�7wV̜PVRˮ) )~�����AD)��2c����}޵D�^�Њ����rf��������/t�i�2<�����5c��\��szr������N�����o\�+��Yj��i�iY�[����i̪��/ 6t���]���>qa��dO�-�Ln8��	�Aכ�~åO���F���&�'��7��]����3^�r��=�p��Ǹ�	�K2�T����X��@�7��еq�ePaTRL�j���Xg׼�|��׌��^Ft���8,&�h3���)\����E�c��ڄu���v�:k�4��J�.i�H��<+�'.���Ղ� A���v���Q-a��˱H�T���m�Q���I�B���GV$fF�N�O,�D�;hw�H�m��:��Ά�?��Ž��h�i��a��c��Á�-|ͅ��0�[�ٵ����0�=�N�N����/#t��[f@�/U���j�u�ϭ��m�WO
�&	�\��(���l�y!k����?�[WJ2�m9j��Nv�?�E�wHK�d	5.T��!���8aH�#�Q
 ���I���5��H����*&�{����p���a�����S�ַ\�~X��T��Fa~s4c.#�`�?�&O?�Xݿ��o�J%EiwC������:�@�Gl�;6q�ޗ��QQ4��?{����i
���"��`!���!��O��x�g����C��
�/:d9�^v����}s$$a
�g��پ'p��j�1K�#4�>��u}��������$��\��k]OX�4��Z��X�)�׻��Iz�I#��da�i�);eM�B�7�椁”��h'��x�WU��M�� � d՜��]��j��1frh��
4�Cr~D�6?��]dXtl`8��[�RZ�Q�h	�g�UY�I����}�\ma<�Oa�O���<,�bյ�u��7�L'��F��8:j��js]6�1��ջ-�����.��
���]uiJX1���l	\X%]�]]��ם�$�؈7�O�<:ID���G���݊�>S��[,v,�L�c�G3����
�3���k
X�+
Q�%N���R�Z�
21Uȟ'�.P��;b��d��+�9a;˲��/�%rxK�� YY�|6�K��2��P�%�\M�a�m�xA�cũ���e��cn��"^w�RnXE����j��󑳵q�zE��	GF��1_Ov5B�Pr�
a�۴���9���@-�ٔ�w�;�r�!0HI����)���d�,���7W&>�9�<f��F1.ع��*��T�3�A�O~p�y��hf��]+\�vQl��]%-�-"�rq�h�4@�:�*���IPCQ���_��Q����{OL_1D���֫�T����6 �@����#�-
5��8E�4\�u�|�������$uq�1}�e+ߓW��gR�.�)�Z� 
g��o��1U�j�@%���B`�bi�ɱ���[#���僾�]DfsJ��rE�c|�����JFOh��`E�;����	�t�z�s�����[l����S=s~Q/;�_�mq2R��e��!'��͛�f�$"��1Rh�o�ق�)�[��V%�X$�c�*�o�q��\;ܿ�M���~��Վk�2'��� Ֆ��%���Cw|וpר7���#���̛]��,��v�]�'�F:ez���3�����1
��U �<����yH#�. ^-��z�DJ3�m^8c�s���7���=�`ب���h��^�(��kSj���r�m�%B#��O���������!��5�z��/Ԗ B�M�EI�B���S�mt�{���M8�&��i��x".�,�XU��"���<�f�kH.�P��E�_��n���q��dM�I�
�E?�`�q��k� q1(�=�]�<@ēvm�g�McȗP
����φ��<4W�5� 7����[v(�:��ݬNb���Մ�da|��Deq���~�����3p2&s�)ˇM�v[��Y��w�9$���ť5�hC�ר�%��*��+է3i8{��N��2LR9���4�I�٦!�s�o�;$pF��[��xy]s�lb|�`ݡ�$X{K�;��JZl/st��)}8�`���,�cU���I�����Q�V�1@�Z͹�a^\�(1��5_E���.U���8�n��t	������h�*���)�]O�!ٍ��mj�]xZ]:!�����/��*<+c����G��ՃQ��R�M@�5�Qj��fY
%Ym�
��}:�턐�|�0�}��XA�Zf�i7�$��0�<��1�F?�:yS8���j� ~ڿ�h��f����C���y��7hB@R�m����r)ݘF�:��(�֤U5"�:�d!6jR[	�����8�Eםg�آ��*��Çv�G����s[�P[B���V���r7���|�ã~��*��o�ՀŽg�y��tt�yf(��>�����뚾��u�5�)}V��Ұ�8��]%q��3ąGIvEg���#,!�U���(���u#2���f��}j���Ft��k�w��_�Ӗ_p!eQ�XHh�N�$f�t�,�`�B�4y�ѩ*�P`"1[/�W��GZ1�ۧ���5�A��@�S���$�5D��X���v9;��L�5UrHA�-l�^��}u�%��N��P��tMC _�/] t҄��A��1�a�ɟe,Ez�Eז���gm4��dq�t&�`y|(�NDcShcײ$w|�L�lA���"I��s��p�w���@W"&m���=�z��?5�F~�X��!7ڲ�O����X����U_����C(x� P���[�Gpˠ��d^��*NO2ƲO�ͻ�@_�&�[򸨽�G"��؟E��M����MG�HR����2u��(�s᪱3��(-V�!�f���;k��z�Z<����\����y��IX<��9��@��aR���^\���W�q��\�\Su�Т��2�Ȩc<;��a�N!l�ƿbQ��Ӎ�F������mЪ�b�X[�i�*!�XO��|s1�����Py�;��iK�#[U���Z�oQq�-�]D��^��l�� ��W7��n���VH�
/h{\�w��uC
|�0���
Ǟ��!�s�WS�-�I�^�^��۝���U�ǃW�`��c}�d��Ʊ������
�I�����ȆS8�&���F�w�XK��~�4����W�qā��ie{.(�-��p{�ҿt��C{�QefB�_5b(Fc��h`�vN�r�\I+��]>wZs��.�:/�Q�rV��F/���m_�.Z�`x���ʽ�^H:[	
�~�t�
@>��
֋�O/|��ƣpE�E12%�}�m�qjz�IB�ѤG%��7D�zv�F��a�4
}sF"|j��S��[�\���
@�_.��:K'm��Q�|LnȲ����\�i4��"-���=:��)SA�R_.�-�Re�yx!!��"����_gA�G������4�0�=��I���"�]���3����,�y�$�;TY����<wf�\���+(�;�b��„q�ӪKo�gS�x��$uUکN��d )>�qS|�0Y��靦n��p�Rq�9e]<�:r0xݮl�s�3VI�R�q���p�H�]w^'
֔�Pek2ѕSO�vq�@�5}�7T!"��㕯�
�Q�����F�]1�O]w�:�=�,�J�s"��b������*`Ox�Ѓ߂a��1��L�ʈ�r�
s���\�X�x���f~Ԏd	3��v,2�}s���yXDi�b31�*\�YQc�UA��u8�m����f	��\9BC�eM�Du�p$�V����r/-�ωsa�ړ�B3R����Bz��3يQ�y�Y�?
:_V�$��[K���	O���բ��'���~\���
n�!�*p"<����׆��{�,A�8�k��V�{���8 �1�Lq%�����ۊo��o�1X���0u�_Ì;f��{�g�h���\N��wʂ�L��I���49C2�~a&��%+Q�(A9k�A勏'w}z~��t�!wO.��P�]?�Ib�J;��'f2��H �:�;.�\Lb��L�[3�ja�	����u�z\�j!|�r*���LE]�^�^(u�ݦk�8<��w����A1�E���A�bOx��N&b�sB_Ԣ�E}�^绿���P)/z6$Jpcs�V4���_H�L��y��hW����9�hq�C���#�6n��j�R}!�����߹1Y�j�D*k��1D�xZb@g�p'�i�B��!q���L�2t�d���{��^aVM5���8 Mv���iL�)��Y�a�A�2�d�$��Q�\��^�L�#G���)G�`�]�.�g�aP�"_(��c�_���$>��~r�B1����0��_�rk��^X�m�յ���1���������W�Xs�?O�o���dOT�C60��C��v=��\�
��E6�ܕ��i�Y0�E8�ڦ�([#����54�%����J>3�q�b4 u���셏O�Z�������gq[RB�
pt��(I����G)-/�rP�r��&�])�ZBqgvX��+J���Q��6ΜWUgθ�&%�$y��(uw<���䖕tO�M.�5�۟��/�ʌh>X�#N.P,�k�
���"Ig�6c�WAn8a�"�	�/lz��1����1K\MP@�z;�L��zWM�LHep�l[8���QZ5�x��n1E�}���d�ʝ���A^�d�4��?�8^f"�d��7��%�.c�u�X��b���u���<]<���W�z�*a �NOU8/�xϚ_����z_�\D�S��cа%"mr~�T�1)Ik/�gFVH<jK5���j��1��4)��)�B�*H�km�`7�4����1����b" �ٻUY[����Xn�@�ʘ��>*b������:�*�����{Nx��G��XNm蛒���
�#&�.�&,Yx%������O�@=�fŁ�0ϽJ�W�����1�$�c�~��}/6^��;�¢��D!.��%Eh���a9W�
�T�pkb^En�ӯ���3��_&�ؓ7�M�5�I� �����s�siMuB��'0�h�Q�W�"��6���o��w�� 3"��6��=i�Wd�c��|�����w��G?�m����M�V�
�}�Z��>��Q�sV�P�R��E�#������x���Z]UK��~�<H.{E #�ylQ-O�*+�o{R-EID2�m6���],p����6�z��'�ȈFZ�\�����C�<�bJKd#~o����9X�n !8�)N�Hj��$��M?eG~J*B�װ�iZ�̅P��WՀ
9�Iw��ù�C��x,��Ɯ;v����j8���6�d�Y���t�ٟ<�����@��9Z��
����j��D��|����~j����R�m9�O���]�1�8�6����4�:�Y(RftaK��6�E&u�l\��E��9���p#W��=W-8~u�U�\߷�WƤfYY�X�%�U��b�P	�R/���6�1��b^�oH؍��y>��x��k�w}6��+��?P	�,��:
�BAB1d3��ƃ����M�bڒ]cLCf�\����̨=�R�K<i����/�	y��1���r�]��Dq��bd4���N!b�+���ޛr�늘�8)��O��:���ęyRh�K���]�O#04�&�	�ΰe
H�%8TX�E_��x��V��_��;5A'���h!�5��Wj[���zVV�U=��;��	���9$B�qDt�҅�"�u�;jJ�_��.^����n��Cb��'�w�:�"}�1/k��n�MP&��P��S�{P�����*9|�����������2��0�*�:.O�m�T��o5�V*���y�K���z{m�,=��a�A$���R�c���̌�~L��f����Ʊ�ҥ�l����E��`JZ7��������LH?��(x΅T8ӡ~>5�=/����s�Hv�7E/��5p�uO㫭"�ဢ�A_y��Y��v;!�GD�#���:A�z+��ҫ�V.�i�.n!$����{��S�HZdu,�f1��.2O��g_��ٲ�%��1���T�I��6�~�[h�\n�V�hf�;��Yg��R�/NY9���!��S[��=�J}�ᐙ�$@ҥ��W��3@�2C2��6 �u|�Ķ9o���iky@.��H�)
{
%�L�)��Pw�l z��A�s	W���޹�t��-��ģ<);4	��ci��nj��+��ʖ�ٟ��4ζS��Pj,Pj�=UĮEnN-y��8]4�YlY^~���Q�����)`�I�!�J]ؠ3L������<䱃���t��BQ��� @]�leu�,���w��T�7!�&�����$�Uo��Ã���B�\P���1�*FF�śgE��M��gky������y���Z���m��_Q�?�q2��^ǜ,uk}��q;�Oqd�Q�2ˈ���ܔ~�F���i�ק�m�M҂���K��D0�H�3��I
��B-���"�k�Yu���]��i�$�qcE*Ϳ�!��ժ��w��cKN�Sf���픦ȭ�E��AsW��-[%�n�l,�����W�
(;����J�v\]��aQc�T2�U����\�7�`��DՆH@��ˏ�g�-�i��4��;1��^�=��x�ve�	�<���Ů�3�˓U0�T�X�<�R�zg3D�ź��c
Ҳ��X�Tl�
����>0Ѩ2e�G��&��>��G���.�����8qcP7��O҆i��f��U;۠�k���'���}y�u�"_c��|�wX�m�8Hrr�C�z��@W骻(;jW�l.��L��M��r���b��R�;���j�PK�~p�c�Wt�ŀ jݕ��~���CjppԔ��֕p8�=��*����$K��@���ma~���R-�Z_R�$.�#ճn�Aa�������Uu���U(���R�>˒�ʻ������'�w�6%�%�8�=Q�6�����z��L*ܺD#n��N�yE?a�fp�ǁ9������RP|ۃ~~��q0�������W��|Cq��A��H�d�����ȿ�T}r>}@�r�5���ς>:�UT~<��@a��ܗ3*���c����jh�0KH�&�f����߅R�frр?�z�Txڅq��2���N�M�A(���hޠ5������>}%��ڬ�u���"�L��W���IT��
�V�a�L��'�FWS��L*%ZD�,n�y0����Ւ�.������/H"t��$V}3U���$X"}YnΥ����G�<m��,Õ8�(��S�s>V���jC^���ҹE���Ȕ���(����0ş�觶I�j�\��t�'��	#	��M�@�ٜf��L�w; T#��u�!ws@��"{ꕯ��f8g,mj�I_�"�u��Q]K�X��6��6��B܇� ��u
�%[�z"�z����Qh��:ǏC"WNݧ+[�}�<�M�:���8PG���e�`�A�{����7�R���*v��7,�qy*����F��A7PĬ��N¼���uT��P㓦��ܗY��n�t�s��1�P���WpU㹆^��P�����[oU���)�J��*n�wp�Ŧ�zi9\ؽ�lp�Z*8�����!���=��c��brYS-�:�\��v.C&���P43�.>�[^
e�|�Пv�P}5R��(��Z���P�0��T��v�1 렻qMw~֗�_a��\�:g>��C{��#�Yҳ�D�X���<�	E�(��*>_y)�'Cf,�L�?�RŴW8��W�4�CPzjɇ�kb�0:
a�̨�N�f�a��+_���̤�����GI�^�խ�z�-.�!�
&gTb�N4_x{�g&D�#$q+�~6�ސ1�ch��|�����$���i�Q�8���n���T>��/w�O,�uf��!�`h2S�u�6A�eј\J�r�IOv
��k#��88�:�1�jO�l�I&��Gx=i�� z���I#�]�8ۂ*���MDz(��Z��1w�"�L�;��v\�%A��3U������pc�Sf���v�^��h���G�X��T�s|�8�nNh���NQM�f��C��9'�2Z�A�G��]aQh�L���!���ꩇc���R�S1DS|��)�)G�x�'��ăX��|�աr>�=��è���Q�Y
�6𦄃KYQ���e���'P�F�\�_��dRDI9Nse/?qTL�J!xo�����:��s���%�/'slmc��IS�����|e�]���)@�+Id��`�rֲ��-�7�܅ڟx]�����"�fu��Ț�m���%
2��+���s��+�=bߋ���|���R�e=�I��}��H[�2_ն*ߖN	�
�7Cs��Ή����i��]��@J�|�w	���N���Zp�E�MaNs��e���=o��b��c\�x�{���&�<�U��v!f���n7�I��e}OR�s)X,�ǻ�L��+~||��M*\�@�NOvg���J���Q��t����]ꑲ�]�F�h��)�A=H�BL��q��0�1h2E�r>�|��a�\��_�%�<�#=�~�TaG�P���#���â�e(R
��@�D����
g���f[&P9���RmJ��L�t� 
F�ePoJ���(����Ș��_e� s��_}��
P翆�R���pB��"�r_&��eL�_ޡҽ�e��Ñ.���0
,�m��e��XM�h��Ty�n̄�l���~�	7�(�[B#�������#m; ���(�&�F����[�
�&�����T`��K��E���c�6�1eЗ�g13��^��#�"���%* ��u��̬Ү�����ar%S���,�m+�SJ6���R�{�����go5��д��	3�,����C���y���C1����p�N<���w���f�aPRzΧC�,ʝ�9�CŻ��<{c+cCl�(F�5�✊a����O@c3�Q]�Pl�[�������
�,�4��)��v��-���?Z�y�y��T�c�</�,�0�
��&�g����ο#����\[U˫/�p4�.�U�܈T�>R]�Z�_�4>�����4$�/��05�vq�H��#L���Z�W}|>����y��\`ȗ��m��'si��ɆL���k��E��_�G:z �'��h���U�*�h+ʓ����ߣ��Z�=�L\>���;�����I��gMl��6�byɄӠ��G�$Ugmbme��_5��ɫ�iY�� �	���4���#ߣX��L�k�t�
.[������5N�ܾf�c\���vLL߆�	]MT)�G%ݺx��:�"e�(z�?G�GF{�˗����Yѡ�=��<��2��
5F7�x"�y���F��~� ���i�9fSa,.*'J�w���
�x�������J�5���D;q��ơXPO7�e�����o�mS��Z�d��z����gBS�����w�vJoۦ�"wZ"�G�QJeq��_�z���pS��I?�$ا8��M4G�Wx���9�r$�5�c��N�u�l+&iȠ^���u�&`�u3V4'\b���
x<a�"�]Dˆl������UQ�ԃc i��#�	Af`F��B�BS��>�[�����n-^�s�H��7�d@��4r�:K3���+I�9���mH�ˉ)ٔ�A��ŊƧ̓�l�Y�k^]�PkЁ�A[��I"�U�|�si@��p�"_�z�s&�5"x��q�ĝt@m��Vb���J߉�{�*)��v�)D��y^}�"��Q
��v8��C��Z��dUXB��5�y�ײ�sr�v�n��'v"1�o�E�6�Ѵ��Oq��cC����l��4V��'98�e6��i5���g�����0�$�8�m�����P���r�X����2�Ẫ�D����X��F��{��>�U�>�(|��*uU�Ä�z�o��q�	8�]Xt&8u��cT&�������?��t��-fd�H��.3�M�S.�x��2.�����1��hb�2@Ӂ�-B�0yU��d�n�<��`��e1�3��n(h��\�0L]F�*w��즑zH=�����p��l*�2����v�ف��|�*�+=l������4�2�CpQ�]�2�yR��t����`�nj!h�����\�庽��[��Z�jw��8�A>_�$��Tlz���LIG���9��*ٞۜ� ˭�V���`�C%�~�0������KzE��T�o9�E׶�V�f4��r<*<B"r����$I�������bm�YQ��@�'�9����0��3�4�`g��k��.�V������v��9X�fjH�XwwO��׬��Ȭ��1ِ-�n`;�Ff���x^���/Ǥ�`�m^����PL ^�\�.���%��@�	�r���x�n�8��um��aP��\�G���8W�h��S�Cj70RO6-�3�+�[��
����gfrG=��x��s��ЪfD�/��Aӷ��B:���K����L~�˕ݎ�p�V����%����)�42�\�w/�<\��\X�A]wY��D^y��عA�&5�뀌�YV�7���ф6?��bο��%=K�X�
�\<�7?�T<3����~y����1�:��C]�.��`t��V>�7��ج��5��IA�]�����%�e�ϓA�6{yb��������Lv˲ǿC!�6}���y�S��zӀ�>�gv*�}ѷ�?Y��d�/&��ݓ���mi�U�y�>/��A�2�O1{���~�Ҕ"�aRu`�@��"����v������.i8����۪�E���xV�Ȅ\�"������"����	��q���_$���g��!������q_/�D���svQ��޻�V��ⷶ��nU���/��3�ˏ �q�����v1�r[RvNΑ8l��-��Ad���l9�&t���|jh�4R����	D�"�
����.���	�ՙ�Xq<��6�#�F��OX�Qޱ�#
O?��#q�����T_�
�aa�}_�Ȋ�e�f��ڟW�5I송CIQ]�L��sų
�v�w�-�6Ϸ����MD�v3���1��Qo�%<㍕Y*�;�^*Ё�_D�f!����2r�[���td�*6�^-�ӓ����MF��HdcTc*QS��`Q^����٪R�T�ۭ`���>C�f���@��Q�hZ Nj�W<$}ԝ��F95	$�&������DK#c/���r;v�U���l*6��ّ9�T�6�Es�3woȠ�h��<�I�p���=�uFf���~�� ����(v�'��:�?���,'"P�kw_�g�輇P��2��O�2/^����Wlrd��PRF&�>�������P!d�E�J����K������v��eR`U��̿M�X97�h��HB�[B���e��B����1}�H�٣2�.ؘꅴ�+�w�� e�ϕ�BXm��`^/.grBi8(^<ʀ�-r,[�'Xk<�
�N��<_�2��"��I�s�U��?=��W���ģY�ܓa٨ʀ�⧆ȹ/
|�"�%�U��T1�D:O��x����m8'f.�&���QJw��Ju^J)�K,�(�e�А�C��:!��[]���|"�{Ñ���0︟#�_5��-}|�Z�JP���i��	]tFm>u�&�J	��yĔ�9uH���L�Z���N�|�%��C�Ёj"�O�`d� �3G�Y��G�8���'���\�Va=2�p�"�t0�7ܗ�B'�6l�{�S��*�JTr�o%(�y��}�4 ��n�狺�GĦ(	PE쥣�-E��Y�⮯�H%����Q�@�?��7s���̺��I3�U�lv�O�i�U�dS�qF��;  [��"B>���S/�=+F$#Ӕ��4�kl0����&�FO���zF�u�0��Z����T�U��=�J����=�>N�n2�O��ӕ���3Í�Ӣۭ��=�ԙ^�QT0a�Q\9*h51�s���m~�M=Z�H�
.�W���!�Bf
�R{C�AU�L���|6UȩQB;���ݓB�!��I�(�Š�2������`+y;[��kWo<�)�|�!�!���Ba'Z�x��MM'5���:E,>[웸�"y،�gRx�
l�i���L���T�>�/�%�w ʰF�P��2�ӹe�?��cY��jP�2��k}s��Ӥ�L!-��a��80�N����ś
�8�tt�ȟ6�hV����,˭�p�sϊ�^lN"�מ�i/�^)|G.|Te5�M]1k����!�`O@�5�ڨ���;�$N78\�`�,�~��%ռ�Qt#�(
S�F�3��YZY�^�
�i�n�݀{�>��#��e������o
[�$�/�x��`�o���W�	&��R4k��2�ۭ�h��`�Ȱw��?E 9�c�V݂��b��X�{���<@�(��?���a�sڻ�KJ���z�A�*i����I
5I��Ԣ8΀4J���jI��3��B�4|�,˭6���^9��IY�ڕj��">��4�l�F۝Q�?
L�uwW^.��jC�
��~r}#�֫I�f�	��[������`�j)O-�v���!��L:��.C#{�}��
��s��vB>�ɬ׋��J�Zy�yV��0��@��ykx�x��w� ����5h/���@�׏F/��u���p��;�vv��:1�#�6��WUr�x�K��Ƨt,�Tר�{�����~�̱Ph?6(_������4}�T*Y�5�kZ�wcx���Nmі7O�N���ZN�Uc�6�no0�ϜB�w�������=���@����P�Ր�}���=.s`��53ZA+
�8�)J�g�6^̀]K����Mj��&	�o�ypsK��J��ƀC�!,��.�P��?H5��d6�e����wo�4ipЩ7лG�ȾԻ�ѶG�)�/�`K����5�x�`�@�*��z�.2�RKM�,4,�o���qb���~b�攁�Lu̾�8[�	��[!�CM"5S�K5�4
2�o_��+�$NAe&*O}������#����^W��!��P�Q���ޮ3"8�ij)S���#n�`�|�i�L��3��%%������[��hڗx�]��y>	=��J9�nX��C���𪂼H���l�0W'�͓k�
��:SrN�$����-�G��䚞b
�C�P?��<�i�{��/4�	pN���P@��.V6د�Ԙ��%1=�+�h�@���^S5S��~�%��};D�L%R��6i�1��ts�� ��b��)��o���'q/��x�l��M�'� 44�f�]"���8𾫰~��Y�(<xR8i�TM��I7�]���.�O����S���	�Q$o?j�<�]*��+`L�ˈu�V2	/R�6��d2��ƶ׈��=w�h����z+��s�$r�����`�
�Sw����K�?Q�2y�@�9֎^{����LzQ�=��3�@�@~�9b*��`O���gW�S�S%eh4
�QT�h�yA�A�m���a����
hF��$e`�Bsz{��
�
�ER���j��c�2uۯ;�Z.
'H�Y�3� ��kK�e�-���{���l+N��K�eN������l!�t[�<��M����Gـ�����Z5�\��[��W//��'1����
2&�G��o�����34fv�4�=$��� ����uIw�x�����&�]ڋ?g�I:�k�P.v(�Z?�"e��u�l�7C�=	�w'e���	�}#�ΤV��v��h�]��C��mP��JA.!I��u��`�#����Q!�1����Z[�$C�1|��-�R�˓�oP�P�Ww�������I����4"��M$S�7z�ܡ��E�"d~)<�Y�֩�,(c����s��
����X�KU�и
f;��}�A �)���*��ʒ���!�'�[����D��:b(���z�e�u��8	��p��:'z�b�1��c����% �P5Yc�2�hIh�[*�e֙v�����2L=�r<�����?UX
�h�ߗ�E�FV��ɼ�d����W��������iuP�w��^d�{��~{EJX��&j�OV�	�~�X�-?}�K�W|3��ޥ�r$�qE Y����%���%][4�
i��}����s�$o�I$�Ԡ+s�T@:��~z|==�Oa�����*j�˾�ƔD��V���c�X�i��8���j�S=��
���FQ.!.6־KK�4f�(`�2K@"���Tl�SZV���#4G��"�)����6�`���?��BT�alUY���q��
��w��Tۿ��V9!Lkœm�,|I�.�ܝ�oXG�_���i�b1RoB-�Q"lC+B`����$��NNz���Hl�o�IOvK~nfͶ�U�ּ4�����.@��/L�+yە�J@�蚦s>U+2�F�F��-��3�Q �5hCYHZ��@L��=QW��y�"rн����z���"
n\�S���пLe�j��̚7;o1�X��ʿ]���!�-��o!�R!'�V�}j��c�f���M-M�%+�A�h*�	]S�3K��X+�y��i6:Tç��;5
��r,Lf>Fg���\T�4�qx�Ȯ����G��s���y]�-�i�5�M�!)�
�$�8������oGi�&��]?Rj�������CN]F)v\Ȱ�����3�Z"�'�D��Hϰ�y38�!�~��i�����cKq���212��r~ԭ���GqaZ(@�i�e�Q����a긭&+Y
���^�)P��yvX�iw���A����?��,���^�V����K���%��=D��Z/Y��!�H`,���FV�:3�ZD1�J��b�t+�H�?�o[.E|��^Ќ��@�I~@N�`0f����.Z����:��׵���V�涿I��9U���yN3���$e�� �q�C�R��#��h�y��ZeV#O���֌"	m�_�����
T�G�V5MP��=�P��ys�Y^��QQ34�����V����	S��w�rؓ�����q��u,��6z������dGw��]�`|���QW7���
9����;)k�׵��V.�y����|�V��|
��p��r���9++S�n���*y��6��&�9��؋�y�#��h�بa�]��Ӽ-N8���ut���"Pu!'5q�mi
)%zK%f^I�|�h�S�mv��g���fR�R�N�f�;,�S��W6�v�y����#�?���ԕTB
5�o/�^&��)|}k�{�����I
��<�vo�<�hH��b�Prp�
ȷ��W��9,�
`�ˇX��j��q8�Y~��Maӭ��v,����:x�74h7z5m0ڗc9B�cQ���F��q�崑�v�q�R�t"�&N+�ؼ[-Pg�u��@��Bކx��%;�#�W�.�MI.�!i!�hbD��XXː�r�q���*<��$��n�{��=K/[�����~K[��	n��tab�}��i��6�d��S+�""��g��@�&��Z�
�5��zs��7���2���0d<��6�����YҘE9�qւ!= f7T��J��Cޟͷ�Ɉ���S��U%WvDt4�"�N�`����G�#z�A;l��e:��A �wB��$�A<ʯ.�@'}���(+�|Bt�s/�.��Ε�2^l����A��(T�3��Ѵ�\�@����z׫o���}dr7���(2T�U�핃� �4nt@�cy��l�z6�W4��2+q�� �e�0�\��R*����.^�"`wKV��ֺ[	��|K6��͠��\��=��	=F�*�Vpm�5���1�DG>f�l��)����$P�Bh���~�U�hy�H��z�:�����+t+x��!HŠ
5���\I8iw�,���r�(Γ��M�0im�k|)7_ҹ��!�%z�Z�q��!ّq��;������\o^��Ez�	�u�&t~�#������ᵴ�[S"��~�]��/�nԙj��Բ���yC^�<���˞��zdٸ|F�����Vx�h�ӏ<���䬒�}֠uaCg��L��٢��n��U��f�t�s�?��v���gJ�g�GƠ����
��m�^w �Z�'��F�ZMQ�����Ӆ�{j
��.	�{[Ȥ�.�wsd�*�c���1�>��X,��@3�<��	MU�����rq!��C���l0�n"��ۄ��|g�d1���<}j���ؗ#�/�Imq�9A��߈(�XXc��@=EG��IE���$Ex�.)�m"�|C"`#�J�)��B��*��&�b>.��W�iTe�l��D�]|u\�v�wl��N�!�X]7{�=�[�\"�rD6��:WC쳠���z_�#���O�;~���,���!�]�
�y������6/!�7j.�cg;��8��>W��� [x/s����puw=z"F|�CO9�G1s;��������9�ގ�x]��9ƀ��!�re1���%�?��;���I�C��5@��sn�?S4b
s��|���k�ڟ���Wᑋ�oW�w�����Y1�I�i@01��f	)S�p�z�IJ;�in��`�@�&_���P�Ʀ��5׾fN����Ba�::�����}N{��r�''����B�*P��D<s�uۧ�����!z�8�+����^Y�Ɉ��N%5P�^�h��}\��~�5Lp�k��w�@�-s�%u�ٍ��$��+T�$��<fN�_;YB�dZP��~p�x�Z�+�*f�w��
�F����OV��83D�L�Z�lL�T�����R_��6�	�	m���8� 1�����b�%.l��,)������H��y���I�]9L�9J��eN�`�=�*萞�^TX�N��Q����n����g�+��r����o[�&E�c������_�e1��ٹ��ƛP�B-��$Z%q�J��,
��4�󭨥��8��_��_�RU�M���\������q�ߡ�.�H��~��*������ś�
?�RX�t_^\�>ڻ0^��Մ�=������(������.�BH��O��׼�J��O`�K�����.�C�NT�݁e�U�6ƴ�3�R!�^0�}+�<_�Ὶp�W�	�4[R3�N��s�҄�,=៏[�|��6���#
�0�p¨*A7���3���u����,oS�ο�ܼ%t����o����>�^����f�~⎷D��`2d	�G�9�3��KXR��Y@�k@\�Ɉ��
��q&ȓY��L
�ug��R
�-��U9�FC�߻;Tx�mZ��a�@��B��P��-��ras��ڡ��Z�9r�I��i紆�
/0�pɝ�u�z<�<VX�2|�-(�>��0 �k��M��
���?Z��`�A�G5�4]E���q��ɓЮ2�J��<���:��h��~Ug!�U��F�H����ö-&N�G�gm�I�:w��[���4�/\��ɢ3�9”���vy��5ԑ812
ѷ���Qs��
߱�gEs��\6���-�!�����a9��#e�_/B=d�&�V�S��^�l�B�!o����48�y
�m�[�"A�8�
������G�6��9��v*K����晍����,>k�u��߮yD�28b�q���~�y9b�XO-�:�놏{=��<8E1I�g�Xd(ؚ��ϻ�\"�1YB�#$��.�����ڤm^�Ü��%2�Vhr�T�'٫bja�����]�	TK�͗���9v*�93����w)Efa�{Z�r�~U:E�ص�V8��-�\��v(Cr^o,^+���W��SXV�s��K�0�9��%��J��>���o��^/9[�`���P��x��U5j&�fFS7��sc��K8g>��!a��fRc`V��^���$��
rB��bO��8��qr#�k��E���	�7�1PQo8-����c}���O���6��T%�z��D��>]'���5�	5�S��&�`�,)B���d�V�l'����}�<sh��n<��%h�Xu�_&��Ɲo�7�Ye%�wű�›3ju!;F��4tp�
,��u>�i��싉���:��':��4����Z�!DL	���?��2*N���EG8��;x�C�Ľ�X��暓ݽ4j��m�s+-�=��X^,�El����
=�rҍ�����LU�p@���${�!sF�Or�1*��!������uS2�+�i8ΔI�fVA��Iy��;�+��L����M�<p��ۗ�~���F�
�t����$���	Á�<�����cU�V�h; z(G��v��g�� ��0��1.Y7���8����Ke��~䵐��:�˄Q�aC-����5g]@v���.A&[����Z94l�T�`���8�幭eO��_�06~�i��e/�eĘ�Z$�vD��Ia�4V�O\9�#&�·�
�-{�Ţl��p�����v�S�ɨο]TF��3Ԣ� ����&%`��6#��Dq�Ĺm���4_��N�����%���Qhv9&(2_K���!4jTi
�P����۽�~�7pBj(bq;�Z�SI�3�;l�S$������w@�2"_��?d�vtO��]�6���7�,?Q��w��g7�dG��7�n��I�U��`��<P�q��W>��q�Ѧ�`َ޲.�I�F�D%�����&[zّ���!�3X�ޗ,f�pQ:����<7K5/������Y�,�(Hvz��c�O.�$�rY�L4|���
�d_O�,��(i<�	/��F��oqݘ�&p�2��d���)���eؚ6��������%?Ԅ�DEˤ>�8�����g?.P=�J�5�S���z��N8{R��r6�|B>pl�=�C$��]�8M4����g��I��a r���$���F�K)���!µ�2�g<�#&���2REɲ�:���Aq�;Z�?�e{F�ќr@�|U���D��5l��8C���v���i�eğ-"� ɶtPU��Y�+`�E}&z�Q�pUe E���&R����S�рT���m�
�fk��� ��b2���`��v>�)]@X�{M#��� �ʪ{����⅙�c]��5�]k��p�
�m�*����K1�W��LD���ٮ��Q�|`�D޾���r��A���}���q�5���r�+�)�Z��B��/��3$L��j�씨N7�G��/��Az�ۢ�Z�a�}�:ƍ1�&_��Ie?����E(`O��ޘ2f8�XZE8�"o��j�†6]��H���T)�I���ȡ�;���VA'�m��c�G�a�!�=6"/|Q���'h9�d�ϛF�N�l���u>],��=���f� h�ld9�=�8'�z�������zwh4_�Ḯ���A��x��mz^�7���{e�n����f�D�{��A�lo��N?��	g��P-�!��0	�d��x��m���}�.@P4z]��x{)ގ�I�	W��c��{;XE�zsz�6��qtw7��pq�4�d�H��+��_Kk].=�zl]	��QTT�n��`
X �@�5�9q8�"�`n`D��\4��$��uHi���c����/�x�2L'�r!a|3<��!"���֚�riü$ent��3%P��wf<�c&�����5��ң�6��?^�	��]�
�M��5�R?;�"&�4>E�rnc�˃����P���q���Q4����f�1��Y-��Jz]�x_�"��pȃ'5F��c��Q>/�O=�t3�p�?�R�aƤwE�5
��)S��v�>q��{)�T��G��Q��6��_�]�Mc.�[��)�އ�����(���D�W��?��u�8ܿ�<�U�:��n[�G-���]Tv�~'���IF?!�ߠ��A�p���]Ԧg��C�aK`j�a�A|��������胢[�C���d�N�}!��f�������1����綍��K���f��
����(�D�`"�8"�YI�5�7���KT	�hģ�m�Cq3`Y�6K?�o����~q[{]��i0h��|B	�6N��*`�?�O ���#�X
�Y��4Y�w����pWe��uSL׻!����a�/�V��0���!C�o8��nX� �E�Q�/���hvl�
�_Q��
���r�����q�G���ˮ��Q���[���Il�SF��L���2���?��]WOc��#7I���+�+�h�'��N�L���A��S�7
f�%�D�QY�	�rqO�3I/�����k'��
��V�����bҐ�XqNy_�l�䋺g�M���ҁ�0���%�8�F&-3�]x�u�=�5��Vq\��9�cc�a���\��ܽ��<�^�;>5�J$a��+ǀ�W�f?����fK"�O��V�w�U~E��$�q��>@�]�@�M@=@;57
}�S����5a����o���X=r�U~�06mJ
�~��)�ioW@�e��$�L��6w�!��;�P�E����EՂ�tD�yh>|%��v�����{c7	�ީ����ո��5�G�9K���}M���$�T#0�A���-�3�5�x4QH_�<�.[L��Ն�"�b;f�g�VF<k~~$�&�����xi5-�xĝ�3�'>���k�.vf3�0����nYiS����>�j"�"u����:ZQ��,
ժ��Xx����vRG�	dF��\���z�q��h��#g�q,�J�7��Nik�sv�T����Z�@4� N8`�C�&ʠ��L	
��M��ae�>DH1!т��;wE���	��W
����^g�K2Z�b.1Jꡭ`{ѥ��Z�hEIr?���_l��x�왔�f�OϤ��Q���w����ZSB�;�9//�"��s\���P��*Ƃ���j�`�R��%�Q���"��jr�RTl�`�}��0�p�51}��̊F�B��
�����/H�V�9_��a�4��{�i��'��qJ/�aͦ��.�
�kA$�"h��{<]{hnv(b�Wb`IW���F4!�]l%!d��AH�����7R�8].�%�|�%�U�p��n{^��h�V�6�C�� Km��C�3���.Hd;��M����cۤ�f�
�����T�H��>�G�w�i�D�>��IJ�Dū�0�ɽSW��;9��xb)I�ua�a*�[�>�����3�����/tkx�����$2��Q�c�6W�ۓD��aq��`Ԏ�Q��L��w2t�t�/7(�*��\���e"r����!��]��k�0~�2~1u!ج[��9��(��r��Q)
�j&��=C��!�>Z��U5CZW�x|@�CV�y f J�E@����e�k�����go�s�S���:�d#�#��./�o���v3ߎ���Û=#�lv�Ѻ��#Jy�����߇�����͆wv���UZ[��Ng��etY�Hޥ� ��޾C��8?%]#��ŖAwlO�̢�N6�>i�’�p �`������,x6�0��B6+Ez��A &;��=6�+�W^ž�����Ń�qz�}_k�c�v�nN��*D���<
�>VP���͔������Tb�K��AI��G��_�+���2pӟ�W;戓b��,p1 0)�[�5i\3x�81�lb
`���R{��g
d�u�yhh�Ѯ%=��i�����83y�Z��l��u�l�DWbl�EC$��J���!�׳�Ǡ
M�L5�}�[�H9����_9�\Z�:%pb~�Ʒ�B�q<QЗA)9�7�F��͠�'�?�(�Q���EH�׃�
�[!��y�?�r����
�3Gb�R��hoE�Y	��cC�hC�kv�d����$���)��u=1P�ECjv�J�x�u٥b�3����T!:ݔm8���&["��
��� ���>En�n�Jks��¿�fT�&6�jp�=|s�o��p��4'��߳鍧���_�O��8�J�wkŕ����xM�yD��t�2�N�8v}֩�R����Bc9d%���Q\A��n8�>a?w�{��6Әd5�\ׄ$=nR��SVʌ�`,�(�5vE�}(h��E�Ƴ�������kk���C�X�KU��[��96���%'E���eϧ�:�_�,W ����r��S�[�6�JQ}aOs�Y-�6]��Pź���
�IĨ�D���Uς�Pg�fmfwպ��<9��2�C𯇰/��:�����o�Ҽ�}l����i��@_�/ɣg
��c�w����>wg��.~���#��v���_���4\���+�.�bb�c��Ӽ
ڛ�gؕ^���ҡ5�22���k,0��D�LU�>tSt��'������tԐf+�$X<��W��Z+Ȕ�1��K���͜w�݅Jn�I�*���c�X�,/�(_��BS%�#��lrx�JŐ}�-�I4��#��ou���ԎN|Y�)%.�����&^�A�\j}��kí~g�zl���AK���v��^��M�qz��l�uDҮi��q��Y����ˡE�ڇdc,�Z����ߨ��O6_Si��p|�'2��8P��-�
TNK赘Bx���+�<dD�5~�Un%'Q.�a�^��#.m]��Ϻl�H�;���M����{o4-�ٱ���#߰N�u@��_�:� ��]�9�m-�o%T�8�%v��Ş�:S�dЋ��>�]^ԓ0�$���E�Y�g=ń��t�	
����X�x'��0�
���,\}�x��Yw��"��:N�p�it�>P�.-h/�R����6 H��l�Z^�-�tD�W�+�'�[�I�]|9d��
_u��`>�{>��`S���zv����+4�kS�G@���Wy���x���[r��N����%��%�2 i�yIжݘ`���Ɓwɑ��4�* (�Z��L�VӐ�pnA��ZA*�2�ࠦ� (��Y0UF��L;��|�_�ẓ"'��S�R�Ou}�����aw��n�-R��������`d��8���M�봼�y�,�
�w��m�TE��
���,8��Ɏܝ��P�O�&��Z ^�*ɦ�6��(��$I�`&j�i��m�&��!ǣK"|,BpB�ݡ��0]�A�!��煞��׽0:�Ƃ��`Ypz=함 �ވn\	F�NS�\��qQ�-T�ʾ�:��T���6TO7�\�h�K�Q���U���"d�ԍ!��R�D�.NR��(Z�xY3j�w��D���`����m�+xx�F/W+�g�/�z��Z��IB�������G�ԙ��GB�W�K:�`d�1�!R�o�ӣƍ��L2�ф���+r�hT�}B&�w�8�
�JU��D�'��D���0
�=h̕K�K:��t	�:9'>vɞ�n�N.|�y�C�#Z��d���[jH���e�z|Zm�8��3���ZV,�e���>�ߙX�$I&�]�eX�l�
��QQ�J�TD^� ��qI���1�(����F\���ZP���(��^?B��f���n���X�^��}3�E x�WUϺ�.57�#�&�"'"�b��p����&#�l���H��
qU��H��&�ƺ�v�S��s�(�
�D�m|�Sn�@8��(c�'Ϸ�Ⅿ�a�����p��>9�IW�<��zL�J۬q���e��(�z�;Y@j��*l�י 0�@B��D�].����X�t4�m�mG�v�j��N��mhtm�[���5��k�̻�Jy�H7{�Y�3ΓB׿X6�i5n�Z+S�]g�v����&邖��!.N�b5���w:�#�.�K�͔��t�x���3!�@���֒W�Q��`B2�p�i�3�R�*8|�˨lX�#q�&��#�G{Y?���0�hM��T=��K1���}���¥{_���v5d�dՎ-���-�a�,Xu�f���!��s�X2�
E�!\�
9>|�;g8�OJ6td[T�>��tY����Vhe�f�����%�ÒϾe
�ި��l!�t���T^^b��u_%�hE�.L@(O7��؅��w_��Fp�J��3C�`J�D� �J6U���Nj�m�+�͑Ld�8u�5��]���۾�l4�J�Ô��$�YQ�T|���="�JO~�v�O:fe-wq���@��H�0e	X"�FQ��<��n�1�b+��S�Xh��ZG��\zĵw�yYv�ʺ�J�%�b�
z���ĢR�<��餻4P�ٴ�+�O�!u"(�TB�н��t
���I�^�tuݣk�ƛ�P����g�y����J@`e��9@�LZ�`t�M�|�A�x\1��{U�<�rU;��\R�w�-2�9�����(�<�����8���b�x�­��,�o����H���YA�[	�����H=�n^�Hȓ0-<���+ ���}^:&f^+Y��l�P���w����!}�l\l�ۜR�r���������4�ʁ�\�F�]���F�Z�u��^�<�tzST�˳��uz���zJɪ��5��*��C�{�������zӓ�|�x���>`��N,c�ܸ��OW(c�J�ڜx���1�!�O��j�)���e'dO��?�b6C�L�#_�RFC��o��'��s��SW=MѠ���n�@���O�A�]�[Q�5����y��7n��3�OX>�t?r��O8J
�-��f��S7���W`m��-(��5C�� )'�<f$�i�Z�Dޱ9�:f�]�Q�=����6#ik;����za
JW�a�.�������^[?��J�?=�Z�x�]m8�yH���o��Q��Q3��eLA)Nm�n�2qS�lӗ[:
�g�#�N�7;^�囜
���7�Z�!a���T�=ƹ�s#�K����T� ���*�t��
�zbG�\!���*Ƙ����]��0d�Y���[�㝶�\5��_[\�8��rJ��U�����s^*��.���B��CFB�b�>u�ͦ�v�^����j,a��#�n*A��g���!M�C�W��R+U��$�<_��nPS_���
��Tj+jSk�Z��<�Q�g_z�}��A��K��5֡�{��t���=^l/���n#0��.��s;�X���R���t{��-Ll*j�����q�I�ޅ.h�e�'�S�ٱ�n{ž�Cͮ�?;�(����Ƙ������4Y�����~�ڲ�����
��H���'�>&�cx�a]Fh�~W�Ds������F	�����H��e\�Y7Ⱥ
�W���4�V9��k�`�"y�O�.ƌ� 01Q�d/۽��`O7B���$���^�P�� ġ��
�Z܋\ؿ�����Ј�ֱĶ�Hu��B̐��,}vnFEZdR`WOxmw֒sx�˶�/
��_�dq��c��gP��_���*����k$6ctEv%ZM��{nI�~퍧�| 8P�7���g�s�^g�����@��K�)�ҖB�~9F/})4֣���?QF����v�O�;�ϙ�>�_)�,=�g
c
�����c�[��ƒv���4���+� y�B>�V(j���"y��J)41�qmҚ��æ�ઁ��\����R��W�'�/ܸ䑅�N�,>��6�߾��Ga��bV��Y�Y�ς��lh��_k�
+���	Y�A$Z%�E�f�f�ZO�q�U 2�x�?ǰ�gW�Ȃ��k�}gWY���
\z��%��Cu�����
H�bYd�۹)ޞ�ev�_�w25�wa�+,yy��xo�(�<pV	��68w!�q����f�c��p+�/�yp�PRlɘS2AxVB��VQB�vK��C�Fn0~�׶7��Gz^΀⬢��BU��h<��m�Y����6��d�pwv�ڠz���b�%N�m$ץ<r���'�X�LA?�;��N4v
�8�F���4�I��*҈������Z*�n�E��e��A�]P�l�:���V`�B*[�gn��طj���Xb�
�~�K
����j�um}
�[:������BC.حa���7���U6��It�#�u�;|��.�gYt�dp��)����9�J�(/�Y�\&N��c��\v��]�墑ވi�Oh�%��D�KmޫS'�o%]ަ��K,YC���7�4l��b5�PzU����rե�,�������,�-~�P��1��;sQZ��L����e�yĴY��J��ݤ��� 3,��$x>7��j�Q�D���j�M�xA�REێ��Ԣ�������/%N�#�x��*�p�2OD@k��._
9�=$�<#]sx<�b�L�AWPi���ag:f�ގ2&��ƚ������M��~W/��=�^V�~�'5����\��n�dxC�16E�))�o��=�,a]ʅ{TY�=���e|QF����Шך�|��`�?�z-,Am��3}j�5G!�Yy��A���֬/�Ӏ�F`m��Q@�XkGY�=��W�e$��k���
���,�.��]�����HX+�����(�g��h��bF�T5͎=��� 9??���U]doȵ���_��r����ϊ����Y'��hȮ�/�ĞL~�������̒���M�?��*ₗ��A���7&��b�(܂�S�|�Ն��V�/����C����?ŧ�S_�������}>��#�U;e���oŧ/�Q��G�s�~��&�v������h��s�.]'��߉P�[�أ�{hS��#�*��q�հ�r������R����b�4�2~LwF��|k K��Aߘ쬆^)B�]�x�`*�ZSہϟ~�V����
|�#�
z��f+ ��-~k��:�%�Y�G�6�*�'\��RC.�r-��>�s�0u�`|���5KĀ:�'��XT��.���?G�T-�d��#���7�4G.�1�NH�#ְ�L��g��J������
��ё��M~���A�i3�ъ����&\�|M�Ԓ��X��&��G���c���T��-�.�~���c>�o���W��M���
/KH԰��͊]�G�U�(&Y�	��	u�	��u�`��d>��	-�-�Ӳ����W:E�_��7	^�5!�4�h�h(�.��=m�
���Nƒ�un�^#���\
���V��lQ!�'k�jѨ�w������X��c�m>	ͳ�2͇�y�)<wa���0Ny��s;�vI�@�
�b����FIm�!�ь9$=��—�;)t$;�Lʂm���V|88+~� ��4u���q�CQ����|����G�~�v�џ���;���0�g�����X|�C������}�ߧ	<g�\
�3�t�L_ZCd?WGU{�X`cf��-������N�����l�!���A��D�h�Л�FT�H%x�LN@tI)Qv/5�|���vk��L�{R�ĺ� [��xQ�Z�����!1�PG��� c�b�	Kf��)��g���#1y!���7&��WL4����V�ߺ��|N�m�X8�C�lV�v��##��4��*����%�(7Jr�N�n�f|ȑ[ߖ���@2���~ķ�C�Bsr�4�(d[��������Ie�g�K4�u|�'"�|u����f��zw��GJT�_�#	:2\�+�	���%m�}2�i��7_�V-<�.��s%��֨�<䥴7��զ�[\Ԩ�U����$��RB]<c9�|��w�%%����#¬W�X.���{/v��+�՚��M?<LA�dGXgBe[�P�f��34�0c�S������U ��|���%��7�͉�9PJ�,�f��,��J��,�^=�������YB:����Ȣ*$�'Uct���W�̇/�"��a.N�t/�$�Ri�q�d�����+���b+
Ϸ��4�E;d���'�ܗqD��l�wi\�9w�kJh>V�4����P�у|���p��!��σF�U3i�;מ�����n�9I�@�h����V��~w�k�Uy9�P'����n��>>�{�2���<�~�\:u-�ɋ�_\cWX쬝xX�'_y,@�u�Y��W�;=�w�
w���(hp�� �-�ZUn��M��"D��%�(턩姦�P�,���`��HϽ�<U�A'*N�'2�J��ux�F��RO���jӶ�L7�K�YtwB�j-�P��A~H��īR<	���G׃ ��<�2dk��x�����%�2j�p�f��O^C8%�㠐ޥ���W�:��x3O�(&U�H!���Y��8)�O�!��:����rpZ�Z8�sAc��ް�*'���
��Pl2��������V&��{.i�;��s�)#K�W�a�QR�8ʪx��:�����
�:WH��GZ�(��s�m8���ָ�˳���Hp��)�׹�t�(>��<Au
�Bo��uk��)�-��ns��MܘS�n�g�4��a?%��dV'M��E�D��a�	m��}X�*�$!Q��x���""]
g�f���c<v<�����4��d��[r4�7tMB��[���o��9�1�P�?�y�ؓ��k���6��	��
Р��2=� .��:�2 ��D���?�֖�Mڊ8d�f?����2�<F���vn�Bc�b2]�mW1�9�,]J��\���ґ�l�2%��!\��o�j��EgaS�G��=_��Р����������1�Y�X�����W=�;�TAۃ�2�LN�N��:�^x3���dD���R$ؒ�C�}WfŊ�V�����R�s�E"�(ImܨeS:�-�
�^�u���O�M�t\O�%z�%���M�<��hZ��r:��t�!@K��ZB������T�0$%�f��3%㼵���҃`у�`'�Q�0�=��Il׾�Qn{���`�>�v�C"i��1�Eӑ�F�(�N2�ߍk�	k5���8���:d�৐͛�U����`%�2���
(������Mƨ6�p�0|wa[JtQ�;�E-K�G}��U~sc�}�$AIf���*�f�Q:�Y��%�a�R3�ZpVl^�;���6�r_�Y?Qj��)Zd��C�f�K'��S���fSR.xt����1e?��@�]��i����Y��%������d�byc��]�����d��[��Q�T�M�ɪ�d>0���
��q�t<T�`����X�1]'�m[8��u!;RI�,Nht<<�y?>����|�C�
�U�
ʔIv-�~������I%��S�
P���p_!���U�$Pv��o�0,�x�Ci�p��x��2nJ�Ral[$��z�B��,e�����#?�O�}��l}��/qnA��.h%�}�2��F��w�u��²	V:�|��,G�g`#���l�b�k��*q�:ZWݹkHU�8nٓGFh��Fȁ�{��?�������g��Z ���l�4=��p�;)�h��C�:w���\��#n�h�\�0쑇�˖Kv��~�H����H\��̰�v�@u5	UˤM�i�ǎ��f���/;���w���n���	�x����i�߼1�騅&�l�"��T�O�t/dw�y��Bq���R�yƧ�KLl�,=:M���]۳5������[khĊ�ܡ��}��Kv���yb8��bW:q��@�+-?�G6*�}�4'�%z�Hz`'
�Z�����;J�M����x`��
��^A�5�7��O}�I�;�ܩp���I�J�g��2��\5�S[����ڠ~���n��)����r^kh����u�)�J9y+J2]ͩX�KL%�<�J�0=��j��ι;�9��h�,�4��s���/���D��s�{c�R���D��̈��g(vz�ޣ�����*���u��,Ih~j�9�0���yΥ��x%ہL��2���
������KD�K�Ga�@r%�=�,K4|\U1R�Ŋ~x2ts���?3nҏ�F(��D�<��$�o(��p��HL�F0��}���W	k��x}�V��T+{t� 76�Q����{^5+���\~�y�e]�/��i��c�kq4�w-���pD�d�͈�kn�~1�xˏZ�~��Ou�y
+�6��-��-�j�%H_��m�mGq�L�m�2���t��v��s95���P|������YZ��MweZ �t%z�������,��J��'����I�����Q��`��3	��w��Y=��T,Y�pK�\�j�_!�I��Qu�i�z඲���Gwr�Ҙ��I�S��]���6B5��R������ �!�\��h�=m�8	W]�v�����T	�t�^���PT2¼0g�j��}%�����"D^ip�y�h-Zs�o$�R���#us�;#&�����NS�.��R������	;V�qw�9���A4��ʊK��=��}�OD���r��$���&�Z�&ˬwHе{~��{7Q�$����y63����A��Jz2��<&�^���}#�~�
f�ꕦ�M�޺F�i�eK�Z��0��FG5�N���RבZR@�]B[0K_�Y�����C#J�W�?�wf��:�l8��ҧ�����4pQ����Ĵ}@ta�<��C�i�>�����#�p�V`��N����)�
>�h^L��	�j9�T��x����G�/a]�֧2�����B*�N�YW�1K����E=�9â�k��� ,�J��=�U9R�ǽx�"<�^5���m�X;Y��f�J!!�"�j���`ʕi���j�h���%\eoȻ�~meĀ�1þ���[&���q�w��6q� +-���	C�ߣ�I~c���6`^�	bIi���u�����$s��N&��<��(F'������J{vb�ܟhU�?�˸� uy��x��#7z
�/�"ϭ����#9+��o�Ȑ�V�̥q�~JԹ��w#W���b]R�>l
�I���_i�`η�fW~v8��$>�Nwua����M�a��`����1h4�9��
�\��Jo	�ٺ�
k���K��4�]�i!F�X���Ю�Vl/<���E���$3��Д�]Jy�N�<�r!��D'�������C���ヂ��_���zש��*L�G���H�H��n&��Rr��,�(�[̕΍���Q�=Ie�&�gp[F0�ڞ3l��>�s�ߢ�ϣ��
��K��f4�D�F9cW�M;|���A�~��hp�{�W��@�d��CkWК�T���r<�|J"ZnM��ő��li"D��h׵��RNa��m�`p\�
P">����P)h
�.��"�� �U�jt��ňW��C���P���A�n��i�9��̩�j=�5P)��
(�j��>�$�]�#��^<vğ�mC�S�x@G�c�LJtY�ַJ���(�������2�p�l���3�.ˠd.��l�jhI?q͙G>�'���KrM��l[�y6>�B�����o��l�J=�MHYN��&�����Q���\������(Rʛ��+:^~�����X��˂��K�b�ڌ^��&�j����ˣ:>�]
=��h:�̪��8�`�rw�>	��AV��BSP��BC�C`��� ��GW"�B�q�x�˭,UثR'oH"�,� +G�E���I���Q��B�#����3e�1e���A5�3Z �͵qU�2?'�h�cK�_��ƔD2f���+&Ŧ��I��o���a����.c�M�.}��+l$��Y�!K��̝u聡�_�G�&TMtG�΢팫Wy���zd��bӀ^)�,ߣm	���Nɪ�"�;Zw���`��%Ly�ׄ�&O�W�q��ܖ��P��W5�AH������/�8U6S0��}��?��F�4r�P���&*�K٢F�YH6nGfm>G��'�C�2V�IYP�o���˵)D�XE�g0���W���r���Zd�B�VP��/ȍ_��D�ϼ5�Oj�t�f�Q�شb��!߶����$/���U�aD:�
��C��A~o�t��7T���9�(�b�ZG�.���V�:.M67v�cO�y���9���j:t2�ڌF���M��9�
Sf�f��
ȵ_2V�R�/�	�k�g�(q��X��r�	����.0���]6�ǥ�\��M�R��|���z�ײG�(̅T��b
-��pֹ#�e ��U(
�m}�CW�<)!0��^Β���@�4���F-z% :��y��X@���s��P�k�5�I�T���?�F�� t���a�0�+_��|ZE0�4��+x���~���p���!��lEz��oM�7�����1���mS��+Q"-�K�!��.�Jo�W�k~��`n�۾�����&��g�K-�K����@1:O�D#�A�"���1�]K�%��w��{3I$P���d.(��@q���:���q��>nM<�|.�@**}�ܗ��2�Y9�]{5�����a2��D���$T�*���Y%��e���	�M����)c>�9R!�?i&}ǥy��~��p�f���'z�I7�^R�aN�
&����<�K����j)�i�ƄT���85v��o�K��P��RY�Uţ���Z�	�sGh����{���@�4EMc��!F�!��^��>�P��j�q��(���
"�J�� �e�6�K�*�o�6r�[���"$vrT��Gu���)�2c�:#�t�3,„Ý!�ȼ�����	��F�G��\��~�Z��I�7�9��������-���^���i��WOM�`���m�=�~.�~~�5�R�&{����A�����H�є�G�����l:���B�#�C��9O��*������ڨ���7��U	I̝ű��ϋ#pm�a,$1�t��-m/�u���� �N�tr��iO�6Q�ho������^{^W�T@�%;���s�EϿ�do����C"�_�ٽ�"t��-�V~�b{;/���=x^d|��Η����r�02/k�b�E8է�F��܀�c���a�C="��B�+�'dÊ�5�po�6C-l'�K �Q0�yb���rX�7�(������[]�0'Į�~�h¯����ó����o��kt�.�.���j;�X:ο>O�E�K��:&��K]�Il���N>��JRk:��D�/���|RC��2���{�+��� ��k�[.ޢs��k�_fߧ��ޒ?/u���K|�J�n�~}��wo���ME��Gk�F_��;�v/�|{��>��l��z�n=�oy_�}���b���^�_��G�w���/����h������������nw�T?/S?.��կ�a������n�w�S��ߏ�WǾ/������q�ϾoA����n���+�����@�W����y�f����tÿ?r?Tw��w�������wN��M�+�G?�ǩ��~=ݯ]�=��=�{G�Y/n?�k�*��'S/����v�;���ۯ���b���ҟ��?�z/��_������
���g۰�����
%�M��U6W��
05�D��p����yx}��E7M���Sßf^��k(T�6cs������lI9��34C�������H�,W����Ih���A����sp�茓��3�rֆ&���ų����(��r,L�r�*f���ښ��+[鈦�}q���y@����O6a����6P���7P̵�k�ߞ���M>yh�y���(�z(}�x����
�4y`����-"(�"�5N^S�r��+]9��̔�ې��"�f3��0��%>R�ږ{D��H[�p�Q�NQ�!x�v�b�{�ޮ��/Ji6K�r�Fb����n�g��m�����-�J�M�*^�,lO��v�d����k��h
4q*���G�\�gYr�@�@~?�����h>C�1AƲ�A�;lV�nR�qT�'���g'��te,�~2�g,�A�������/\�v2@J�?9�2�� 
�]{��9�j�ɸ9�l ���� ׫bT�Y�[pȔ�0����������tMP���)X{�3�k1T=g�jR0�2�3�"$��A�K�o��gR.�a�U���c؆Z�C�Ds?��|����,�o�f�=�7��9�U��o1W�ÃJ����\��.�����C���ޮ$soݡJZ��c�͔^����G�	*7,T���N�l�(fLL�hx>J�aݜ��P�~:��–v�:A@��u��.V��Ju���rwa>�M
��w�ۚ���M�p�f5&e�i+~D���7;-0�
��>iM�����4�F-�4�BR�=G�i����#��������ILPR�7��B�NRL��{�~V�d��ۃٵQ/czC��Sӧ��R��޺XԔ��bNza9H
��K�}�%�x��x�o$nMU��P��#/�|���Ƈ���>^@܌SǴ�N��.\1^�(��Yg�eɋ������$#&�O�a���옢���Đ�U��Z#���n�A�o�KF�Fpp�#Ɔ�h���6�5��B�|�GE���AMDf���Z��3�fM��#��ie����׋�.���)]���2�̨��thl��Կ�91�@�4��J=�_����J���v���ҡ��'G3�6�5�WX�鿉=Pd����kL��H^��ӮpQ��9-�4(P謩��w\�%N��i�jC*~-�u!.��Z��H/D+�
ׯڎ9�1s�����dzqi75.��+�X���G�}i��s����;`�4T�M���&ЩMA�BB��Y�5�x!�-1��g-ֹM
�@���Lb�ɩbc�9r�F�����N;cˮ�@v��L=�TW���$��Èy5+�n�䁛3^OI�Ҳ4��r�0�f���
�Vȣ��,Ƀe�\c��Gɩ֊��(0&k��=����c�*n>iy�(��Rn(���&�=E�R�5'�Qû�%�*���S]�&]���R��l�$�5I�l�\953MB
�:�6��A�O⡪�����KŻ�v��K��5��n�@Ȭ�p�7�͚U��Oo���[�>��W�؝����p�B:�毹�$NĈ�!Z��7׃�JW�`���7x��E�{4�aU���L�����A�F�Xt������a�����}���#-�|�Bwb��d���YT��"G�����6�aB-�3�T�-�$O�p�����@dc��P��ja8��z���Ӻp3�P���d�;�����J��K�LInç
@eۙ�[mX�0����۟�T
�[Cك� �d�}�t"e��ӤN���T�%H3V��!�nۢ�9�C{k�\����'�����O�	r�㰱�X��_C-
��S�t�uӵU,��.�Vc��w�.�H[�w;���/c|���w�7�i�����������c��eG��3lCR$_y�ߖ��J�8#�|��!�� E�T���o�`�{hp&�̶>�)��č���<�̤���D�?��p��X�Ғ2<�3S8e��ڄry�Iք
��'IBu��v]�
H�V�u��<kk�"�u��.�syoΐN=;�Հh��Sz�-(��d�$y�M`]J�������H5���Dh��jN�}��q��Y�e��550!��}�\�[�b04`��b�8����\MU�)gۜ�f)�P�	j{O�޴��a�;R�X�S�Ьx�oS�T�4�%�9G7�ҙ�������FEkͅ#x�N�W?.6(�Uq���q���A��^i*4�	���˼���K�!J�a�Hz�� RgJO�h��y��6��aj�``�WX��*�r�#	��zFL�p3�!�^s���ql�u�>Q։'c�
�B��x��Ϭ�md(X)jm�f�t��ѽ(�|IKV#�SC%4���~GDB��$������)�tdya��HF6���%}4��%S1�"�R==��P��ᵟo}��W�&�@�r�0�,�A�<��a��^��>���s�|��Nc�
;1�`�Za��aʮ�d�>��߷nq_�&��l��|�Y�D�<���ef}���R�aBdͱq����e����1Uo�F����8�����q@-7���%OBVV���0�L}��E�8�6���%`r��-'�p�x���y���)M�Ǥ�u�e�5c�q��*��M��;��B�v�}<�B��=j���&f 
̨Z��������W�L�`�ֻ�Wc��E��*�]���%
���\��dҩrA��U�ȍo�[�͑G
�]�f<c�$�߲����DKn�z7�s�Xӥ�$����@���2�yI��A�剼/m�:�y�xfM�����
�-�r��3��'��8ۿ��a\6mg�Kdoa�I�,�GǗ`����&jS�釚�W��F��c�:���4��;û��#H�_�p��
L�#Y"�P�L	�e�L5/��?��V�@=����I�l���Q�%\��"��Vȴw��7`V�?%���-�}T8��g��ԣ�$��N�~�HI��=�\h���C���'�n�#M��a��(�`���(*�a
���$4��;R�$.(�ce���Q���t�)nB
��""�N�Bw*}ۊ�N��J�𴛕�s���e=2�q�
p����q��5�S��JH�0��K���g5���B����{ߔW�.�ӂSRޟ�䔩��6���h��_$b�BUr���#'��S�����obnj z��]�꺇�b3���}��ԧ9m��
�,m�Rlz����`��t���̦Q�}f˼�,��ڽ���/�c��J��¿�p�d�E$�TN<�X�mz�{�r`�t�wQL4}
nL[ʸsʞ�)����8;����k)@�N���6T�y�Q�Cf+0.�y�u��;�g��؊
\t�6�
6*��aS�R��ON\2�k'�h���rH+*�[���K��s�4S�G�/�¨�uz�\`�ϝ�!�܇T�+��͕B�I�F�����Y?^2�->E��A��=|����Œ����x:O�f�9)�?�3�мo{=ϖG�I�a*�FiJ���J�H�Q}-I�h�V���_N�������M��wZ�������O�~0�[�A	x��3�E+z5 2N���/�!q�}֫���tj>�i�\�z�,�"��锊FtpWx��:�
K�:9�U�u��-/�jځ�P�������`DQ�;߅-yȣt���2b
Ѣm���A�F?%��F�UB�~9=���+;�6v��G��P��" 
ˈrk�CZT�h`H�[�x����X���W�`l��1�5y��TP��8PYI.=�>�4vhD��V�!5�r_�_�\�'��� �I�(B�ۖg�J�&%�^�12�bͥz�zn!H�6}.p���%Mݡ̅
�*�sli��o~�W�e�$*���v�y���d�y=��K�[�f?�'Zb����]�L'�I���u��T��Z7�Q��I�����>�x�}.��
$�B���,]3�?��h%��)����ϊ�Z�Nb�H%��@p�>l'�5�Z�ER
��NHa��,��j/1�7E�xk�w���- b��Yj�х�R�tCJq�����Q�ț(�@K��W�E�q�4��5*$HQ޺R�ҵJ55H�S�bk���1e)z����[@<��L%����W;�T�Ec{��
Iz���kK���R��<1a�i"kΐxt|@<va׌��w�D�U�}�H��Xo�)Ex4��
�Wh�v�;�.;�6R���6�Z8F��Z#ۅz��V2�G�/�e�<�O�b�6�yۓ�l�b��sN��9�M.a�HF6�p��������q�iD
Hhv��� >�h�U܈}(At�'?�}�I8ND������8�?�=?���桱W҈�0Ҟ%�	|���b�e�މ�e`��&����@�IÊ���(��\"[�rz��.ZY)�$�ccZ$kGR�f?�E{bbx"ؘ� c�4�QCbH��a��[��E�˂���ߐ���M&�,�g��
ב�J����1����=��5��\�� 1�3ދ!,�g�݋౰��5z�p�X����W�BN]L�SP��X^�TAn�>�m	b
ٵ8�c�9m
kr�+�����ؙ�D-�}P��0z��,�Y>���ڵ��?�?��d\��ӨKnf��3��v2�������r݆��t.��ޑ����"�P�;���0>�ISţ����a��=����8X�\!�)9�
�H@w��n=7��-:��iكR�{9�E1YЯ��X��:j��v�4nhs<N���=d��2��$p��$ౄhn]�����������Z4�?#RO�$������Q��f���<�-��BL8���s1#��/�Cک�t_��q�y-@���K�&�ħ�zo|%�r�U�U�
���>^/���µU� �In�w����HR��{�n���s(���|C�k2��/���5����f��a�1�7��D�s���+?`��F3AEd{��C�e��T��=��G@�=���l��S�"u~^%���ىu�E�wk3�Àģ�3�����z�N�����I�1�T/��ͬg�R����ǿ�������QA��h��'�3��;��E�c�%�Q�l���p;�0nAD�ó�P�:�Mj_[;��!�'E��z���2�`Z�;�XN�a�F#g�}C�#r�D�+���Ýi�$� �l���j�7
�#6T�.�!�f�5�v�m��jp���㌙U�x8O�D��0%�:�#�Y��#�5�Uw��&W�LY������S��V��z��2@��-�
�"q��h�x�[VL���K�)=�l�B`�<f��Y-�zv���gnT��j�h,&֛��crd{��5Zb3��w�zĸO����Q)�3�����񽆖�c��r{ڐȃ��8�%I�#�µE�U�-{��c01���ɡ��]o�X��:p
�`4x^n��<G���^����~�I��q}O��	6q�G3���7N��q2k(w�L^���VOL��1ˋ@$�P����
���3��󈥧����w�I&��cId-�i�o�(��m��U���
,k1w��Zͅ;Y�KM�=I���Z���n>~Q?�Z�jx��G�B��b�?M�<A�ۍ�XZ�|������1���9�����>�N׬$j�;CS)�I)4Y0��;���S�{yzL���%�ט-��O/5e'Թ6�s���g
���'%Y*-bBn�_��(�n�4tM��$P�B�z!�8k�/��-g�Nxxv�5vU�œaC��IQ>-&%�>b'�n`P����^4�ķc2'��y��٤�(gZ�y�.��Sc����Y�V���둌܇����栗��0��7�Xv2���Uca�M#��#5�,�~��V�h�'ʹ%m�I��o�k	y�i@\��۪y�2ܙ��3b�3�~J���Z~��ỉPe-���&�5#(�{�}�0���#����$y���P�u�>��t�1��x4BD�'To�6�w�99�;<���5���|���ɍ#�.�L��x�4�/f�=�-���֮�G�/i����H%�M,1�{�涒a�tH�Ms1���̀���4]�� ='������-6���H�C��!m<B�5�f��+�*�o���ιhXO�Ü'�`��8�yƯ���+ 9�L�-k���W�~�7l!/� [�;
�`���\’>[@@I�ls��e�$�b`����i�& t�tˊ�KF�Y=�a��2(���d�I�>�2�TNM���k��(]ŃZ��؀�$!�����ϛ*M!׶���%k��gn_;�hJ�Y�n�%=#G��',�"�^G*�D�<��1O� r���xJd��-2���5��ڳ���Z�劑�[���O��SV&�_�Sd�)�?�\��ޤ�#Bnj��ЧiV1�*~/)2�m��
c�)���+���5^
⺫/3fo�CJ�8i��]t�S��1BB��2��iU��]�K�����s�l�1�E�(�FPp�^�ytG���	���E��•ކ)8\��\q�;RũZs�\�/z��~�&�y�3��.�خO�n#�>����V�z�sT,;&��p�_l�&�����=Q0�Le�HȄ�/����x�=��p��J�N���\b�,�4p4�몄g7�5\f(��Aĭ�8H�$�	L�*|SU���c�tvg�;U}ЛFfؘ-��P�nwLvZYUX�mq�^o��?t���$���
���%��@[αX��N'A���D��n��U�|5!�u4�(���=V(�N���ɢ0e�E;�˜�x�r�Ĭ�ΏTVY0�Z�	䖪�x;������`�t��ڱ,�Ch��8��6
n����>�$<2կ�-{>����	l�����$_�.�'���6$R�҉��L_zGM��^0�~���I+>��%�H-�tz�<��?�rt�E��-���r;\�SH��<�&���G@̃Ǽ�W����}�-�־&ᣕ����z}���$_C��ԝ�:o��T���Ƈ�%����FjH+��fQ���u�5��S�#?높r��5/5�d��~(U���.��Y��x�����2���!p��<G���*8�s���e٨�
��?*x��7��^��|��[���e�VT��o18�p���w��@"���-ғ�U��f^��f��3���46K��<Z��\(k'����{�7q��.Tw'�ظf�,P��E�6G��VE�S3l�5���s��Ԯs�eq��GVZ��
���B�>�j�f�)�����ٙ:Kr-a��B��^K�z�(�	���U��N��lW��?��Ehc`���,P�V�hK�cz�W�5�h��B�6��j�5�D�~�KuEْ�����+$�<�-8�v��t{����&�ܢD	E�� &=�ɕS|�=�E4�������	tWI���-2�2�P�m�����06u2�D׾����;\]��[6�~��q�������iP���%
cān�w��9��5�ih	A���J|��������K[�P��<����8V�+,����f���ϒ�q�B�.9���xAL�f�3*��'%��G�t<��=�
K/5*ϟ�U�$Ҿ����9<�"_�w��q��p�&��x/^4t�(��mg��20�Âs��t���}�?c,/��i��F�`P($�Gk�v�����M���i��&��4���C���PJi���
U]�a���;�4C�2�q}m]>��A�{��!����ӃU��ڛ?~gC��$�hN}�n���/�M��tX�a(��
�M+��8�;;S����_��2k��'B����Į#����3�9�H*�Q�(H4�6ӣ58�Ѝ�.����1u6��Q:X͙�J�4�X{�o�-Gw
'}_�Qf-sU7��b�~�]�ʐM���.#�Ǽ��bz�dEw�ݽ���)��-i.�`��eq�,��/��=02���T/|g(��^m��dzx����9q�8'A������T�ZC52������y�k�ӏ��:�Q�q�w�Xw֌��I纊���(_6-��c�*x��m����aO��8	�̋;����z��Cf�
��e�=�>��u�ʼ����Rjʹ��5��%�(�/z�f%$��A���z(k��x7��t`��BdN>B�}fߘn���QGTr��
)���2�G�P2w6Bk��U�B�)}����:��H�Y�Fذ��t:.�m4��_|V3�	����q��p����gp����&����^��3dY��Zx���r2�6t��(�=X�!����n�(���s�a��W��ia{�|�6s�ғ��]Zpt��qNj�B�z��f�J�:�2���LSP�MxD�=u����+=v6W�2B�M�0Ro������d.z_�6�J}ȩ�u^�1G��^=���x(�rbn����O�.P�[�!{�#ow�I��/����7��|�r(���o�������S��}=Se�;�����8-C��C�мa1#�w����Sh���\��э�,�=6����i�*�K���m�g�vm��a����O��]�]����39��ԇ�[��zъ>�8V�"� %�p
��l����1h�*��i%J0����忔,@ή�8�r\(c�QR�H^Uo��W��P.~�޲�s9���M���vȓ�d_��<M�!ku@��>r�����+��"�VU���q<ο�%��wt�$�� 9G����{�q���c���a+��#A-�)�u(mTa����6>�va#Ռ8�Sz�j�GP
����ڋ���Eo�5m[Y�b����B��J3�
u��3����R�H^?c��� ��
l�V�̃�~:i/4���\.xtWO��@����ߣ
�A�=�>PW�ll��G���ԑ4(B(F5b�9�I̐U�:�V?�Y�O�K�9�@)�Ê�)������N/m�+���I�>gl'VMt�R_�d�I~��x �6����h��;�87���׉	�$I���R�������T�čF�N����B�`��
���
C�Mf�IR��SLZL3]
�,|�M	|����q9���/䲓�j�(͢���w�2��ăq<�f,2���اTn9q�޵ih�M�i' �iDO�)o��U���Q�7>d�|�Y�lt>��	�ӛ����~� �3B��(��r+�kO����Cb�
��,Nd?
���
ԨS���t(���kwr�n"�n�z��e�*��~f;4�/��,?���Y3���@�Owf�k0�^�t�XH�ꘓ�L\s}�)��_��e/��F
�'�Y�k�*O/�nHvO���3D����5�*L��舣YR+A�B����$���*Q��˻9�M�1g�3[��JS�Jg�����
����8�������e��2�[�2G�m�F������K�C]�~Y�'M�N�H��M���#��T	_��|����O�'��E�&P�!s�uIQ̐�}R79��:�
sn�Y�
�w �P�A��=\�.�a|c��@I�]��ዼ����y���f�m�/>;D�魹X�MW՗JH���{����վz�Ӏ+H�򴠬Uj��$)*cJ���*�]���Џ��<Ǐ+k\lQ!1���.v��b�L��>�_�3p�=<�g�B�R%py�2U%9,����"(���B� �u3�4_���AE��/�3S�gDK���W�a+�����hj��>�S���m<`v\C����#����[1��&�������֑+���h���N>�ꝝ��#o^�0ޞOQ#C��b����v*�J��sB�m�x.{@Mfr����Q��}V��u���f�o�h��,�~}����!(M ~�5�}O��%��Ē+�����Qs�!��Aƫm�3��B��42@%�����STu
̷8�U[p�-��04{� �XG��*�w��� i;+zZ�t<�L�
�ĹY�)�'��5��L}�G%�����+�5!$��’�;�/9/��F�����e��?\��e0�w�SPR 
\��(�gaS���\"��(�A7�~�G�����c<j�_xpXG}�N��{���ƪo�Ш�U�=��M�:�9��1>����ܽT$j���4���{��?�ٶ�k�Mb����*��Y[�/���=��67�]
��ar�����=Y����\O�X�S�m�����E��	��8S�9�gC�"%�s�T�@�S��R�9~6�U���I��D�e�*���!>6WƋ��yT�'��50M���ᯰ"���!��e�[-�	���O��_i� �XH�;��-���>�_|���]eu��RY��6�(�7�B[�ϵ�k���'

e�C3� ��{���Qb��	�H!n��(��׀v�~��>���[��~�(����
2g��QN�ct��&hm@b��eҌ��9����?n�����LU��å��%�>�wg���7�H���z����萇�/�6�ڰ��,]��'R�����֌�@�z�u�������cKM:֙H��C���5}�ց�;�mG�A��bW,��R�,����Kw	Z���G��F�.�9'}yJ����f0�
Iٟ�N��W���+Q�4RD+�.$��ܷ��*��S�~��OOt8���8�w�u������I6��N&-��^�u7 �j�
A�9�ݎ�nJN�g��+�P�|RB�k��m�d�¦�4�.�pn����@˦�p)�=Vph/#|�����j�H(��4B� ���	c�ɣ8f��ҪT�S�d��bd�&y��G�F���3��zʲ�>SA�B�G���������#q�?�J8v����N�Y
�3��a�PA����h��eD�l�A�f�Ԑ�U���
P���~HNv(;@vɍ+}�
Y�i�
�����0��J��ǁ�	�g�����יg'U�a�&`%�ͺu�0�є������AC�JA�t��Q�k��JjL�]i�� �.ꈶ,����[
��o�����;������-f�D��`��y�e��G�j��B�:��ؠ�D҈�<�:i��Ο��>m��o�'�|v��#���RB�(,��ߓ4A}�Ld>�T�/�t�
{��)w^���Cxvl����b$;���e����v����}5��d�t�䛆�?�A��b������[�3��SRJ:��^�̿I��i�2�ީ2K!b�5+R��5ĈW�(2.N�
s���q��n�&�M��LNȇ�:.�����K�q'�G4�b�DD���83��wȔ!>{��7TFՉ��^l���m��P֋��PO"����3R;2�42�gU�s��;G�_�gz��T����;!K��ٺ����I+����/��$ȸAQ�K�Dg�ċ�/hTg�1��Q���M�G��utf��d8(hc��XML���%����7�D�i�i�
K[BԚ�_�E��!:���h���C ���L�t� Is�N�3�5?�x��i��(*t*��U��_���Aɪ"�|��U҅����tr��r���-���Lmj�?ɧV��"��Ѡ�z(���%�
���Id0[�?G��đ�5�h����FY�X�I�Kp�;���վ�oB��l
Lz���[��߮K}K3|��G$�Yv죝̶x�n�e�
�7��Z�"�^���Μ wk�"	'W2z��.���ȵ�^�"T1^���gk�74�#��:(U�t�
��^��&̎�?�Qp���v��R}��ʂ{$� �2��8��Ǭ��3�]�ٮW��|+P�^J܀k�����'巑��4�_
�@�ގ<ϴ�R�[?��JBs�J�W��[Y���Ek�d���H��r}rZ�$)MV��_՝y�:�V�����=��ʟa~mj����	<�,͎ɘ��2O�YW�]��m�����wf���*�^K)5?1�qr��=���9޽x`�(�'����l:�/CDi"�d�B
NPv�W1��;�LM�"���tg�H��we��]}�&tn���W`��?��=/=�s.��ς�d*`��:=\,�i�o;�^��	lQ���.@����o�՞h4�������N��`S
��I��Η��`�y�jW��+�m��wf���<(�csگ�)Ǹ,�[�8Of�=���S%�\�`K�r����D�f�	S��
��>V\��G���ms�SP��^,3�u4�m0�[�Ѕ�𧃥��(�>t?�"���ĖgړJ?�R��)O#�K+]:WS��D�r�$>R����?��T�(���'T�p�+XR<t8�����^^ et���]WA�'눘^�F)������8Ƨk�6k��
��T;SR}iv�3qO@�<�ע�:H�g�K�'�$e��d����e��62K��f�߆���
�\$�).�
�>����,���\{L>�mo��
s;��8X>Jce!�V씁t��p��R����y:0��s��!$�D�%V�*7�[X,�"e�;��l)�VAE����f��tT�+�5��[�P��Z�g�:l�}%�}P	<Za�N���G&�(�2e��2�+n��
��`�p��2f?�U�A�
k5ZfܻT�#�i����n��)
0͓u�sP�¯��=�~�0�J�`q��������A�e3f'0����#����
��ch�{�S�����,�<P�i]-�5�!55�%�s��Q����g�u5$Ѻ����D�������Rb�^�P�,��p��Kp�4嗟��K�2�=�K��6&��0��}�0������s�W��H�Ü@�}0<�`9B�ċ<4�B����?Q��>��0l�̲�i'�b��}2=	�uy��:���R�ndJ&Ui�B�*�~�܈q�z���UE��*|"@��L�͗'��U ��i){&��0���'�g���\&�6������9Ƶu�˪dzl��
�V�˯���F�)!�x$=��u��ŧ2�����|AM�aF\��d�;Q�0eo����ݚ��n�Z���g�^R�Oc��]�!zR�y_�
x�?T�FH��R���@|ģ���.S����kSX��!�ӷKq�7V#D_�'T���gS�ŷx'K����B	���BV��@�� 	�u����+Fn���P� �M�3?�7�rKt)<x�K�n	��OϤ�^��
�����AI�����{��=�u���ˡ]��P���*:��9���|Y���1��*-�`xS2QG
�0,Uy��ċ-3�Ђ�Z� [C�h��G7�k��Bp�i��9��=�õ����0K��1-J_�`Y�,h���GB���Q�r�L"��?�iA��(��(i���2�������L~
�G8�������$�N���EJ��|�)j��f#���ֻP�辱N�yI6:j�����P�"_�;��s��g�
�>VD5y�c�����]ȯ���^����tTџ���R��g���‚8���d�D�f�S�nd�X��G���N�~�K���
t�Yo����W�D���2ug( I������A���>��$�꼡�=V��6PC�%)�Ů�B�P�".����F��+3'�V@LFȮh�ĺ%�ØN�+��D��Z�@�c�]���~��|��m@����aA�)@$�8�l7����1�m'�$��&��"����K����b�oKY���-�Bd�G�2I�)8�ǫ����001�?�Z�>��1�yY��?�&����`���o�"�f��.la�q>�l���k���g�9�y~����8���܏�~�����ҧ(�����p�לV,2���i����B��'`�u#Pu=/e����.h���?�%/U����&�(�ER�O�Ր̸�
��8@"�ӭ�j�ۯ���ډ��$�4�׃<AYP/U����~��~
4f��p7֘$�
KA���B
�����iT��b�/R�^%yz��5�ǃ9��B�ǩR䅽o�	�[#�|�C6�U�s�<%�Ӝ�s�Y�&;L�r	:X��t����\�ۍ�sэ�C��y_ǫ�\�}���5��
��"����e��I�bI��L1+l��׼�̗�ɋھ���/E���y����R�S��� 1��&�nV%��Xs���_��N�\%������p�h?>e][g�(X���i<؀�sv�
6r������G��ns�%w.��;I!m�\i���(pdEfS����r(��Z�p ����<F2E�t������P������0�w��0�qܑ���|��֌��DT�֟a3F�xH���Xg�}##L�(q.�摗Z����>ډI�7xT�>�3o��ބ�E��~#�4�8�x�zy�'_��J���Ҝ%�E���� *G�L�?/d�����L���g[�$N�q��ʽYP•�S���:�U�k�ld��!,G�-���:|��MЁ��ѬB�Z(�Q�j�Y*I����N�U�ӏ\HE~�+�������ة̥uO�c���G�o���6�xO7�h�F��2�1m�,����-^d�(��*�� �Ԭ����ZJފ`��u�A~r6AjmX��7�`����H/\%�f��y�8��jUZZ���;�q��x&�6�x����܀+6xغ�ϖsȌ�c�Rǃ\¯[�t�%,G�D��>s�(y�v%�`��|6��򩨀���]�,�G&A���N��Ede�/@z:��s�@�����V�|D\��˼$^X=vN�
���=�f[ǹ�r�ٸЎh�n7�w�A�k�O�u�)�w��-��FA4�v9q��Wk+�M��Z`vdh�6�8^�U;V�7��ܨ�Trg�e�t%°�,l�7)�C�/��Uqi=5��1�/�7�L!�5C�iŔk�y�Z�<)^�T�Z�*��մbm	[fJ{�ߓ[^/�C�^ݿ-�׏���vt�4�1��Ue���PZNb�Be��j6\bfjf�ǃt�["H�~�pw��B����z6�MO�v�0-$Ԅ��VmWLB`)2�W]�:�.aS֥T�$�@ڡȃ�Xˬ����^�V��$S������C�ss��lI������i�����I�*&
2�~_j֬4nO�>��fz�;r/���1U3����ẂS���UB���{����9��P(u3
�oG_�^CG���Xj8�q����F:]u'��|z2c>VZ��a1g'�*���_A.;
߈�Y��_�`Q�M���i�Ė|'�]ߵ�5X��ѓ��|����O.���!�"�#���ɼ��Ds̗�W8���n�Xi�����IF�ޛ��
��x�ɗAb7Պ#�G��)��G������L֕�o
���}ڵ6��])f����>�3�'8P7A*��Hma;��{��IJ�!f.(.����a�Jf�o��y0F�Ŋ�{|R�-��u3��T�D˩S�8��~;U�Iİ��ͽ���dr��D���6�֨�dj\�4��Ne1����MD#�zB�7��tm4��+��p��oq�dx�߿�<ypZ�sfI�FI�zo��>]����mF�㼯�A���y�֫5�#���Al�x�{H?��qi�L��˼"'wE$(�i�5��℁������0��us_��Z��X���O��E�"oHM�ܞ��1��`���R �����s���zl ��dA�CйX���=R{��fQ��Tt>���;m�Y�Th��`�?} ȰS�q�q�¨�T�#�}���<�T�ۢw�QH�dm^�Z&_Yf}�4�"|����a�*fTBV��Qϱ �s��>��;�$C�?~	%�7�sO`��|�eh:��|e��c ���d��)~�2�҆�6�^��)�,"�4n쮊y��X�h�1���,�gl!"�
r�1�t�����5��N�}��J[g�]p:��s������>5���}�|��¤3�~k�4�`�� �����Kt��_�E>�@/��ӊ`�����7M��FM�w�f�5��d��RiЫ5{��sM�t.w��b���uh���2�We��3�s͵�Er�$0Sk"�jD`�����MݼH�4SDL�ۚ��1BR��g���b'IO�J��V��b	�}�#��J��1�C��7�/��L�ϹV�pr7��N���у�����_&`� O1g��l�P�kǿ�2�)�7�$��4���|�cX>�H������f��7$�D����R"��;7�/6��EE��9l�������6����i�:=%ͅ���Rvt��D"��I���b���"U	tCb|p�d
�6����ϳ�����ŜM9��)�Mj/
Q�O�@W�d�lj)��C�k�#�ㅾj��
�&��#c�������w�u���-h ���#���D(ƣ�쏢lt+�V��.ҿOr�z��3��Ύg�3�<V%����j�. ��0��D�Ҋ����pK$X/�>M�f��.�;��.�hQ5�]�{�v�(�r�dX7�w)�S�q糙�=�u��}
m���jo�C����ݫi j�x�
�o�=�3r)}��0�m����$X�F�]������ڹ�υG�zT��\D7��(�Ė^���q��+3���
��|i+�}ژ� (��T-�_\`D_���6���w������O���;R�io��V5{��!��k�HnL@�X�5����^��V@����+���1�C�8���E[�Uu����6B‘lG�z�����u�\���˦�S�42�SMڧ�1^`�S�u���fB��\δ����`���pbek3�|]�kjn�zJ�`��,�"��-;.��1��6g�q~'
\�
����S�[�����F�5ef��
K^���=A�^�l�o��t��P���Qq��0g��Y:x?�Z&3e��iv5�ޡ�0�?gZ>X�{:D�ó��*wo�aW6�ZC�0=�FL�V���B3�i�o6ъH�4C��FF�6�4�Ӆ+h�(C9���U�Q�M8L�Q�*�z�@���!4�bD�P�Q���j/	�L��I�u�^i&��t�f>fQXV�s��隂�n��(=�۾�nU��[7��謤�bc&
�t�Qw�/Ǫ�z>?3����D
�z�
�c��Ի.���u]�]�C4r�"�l�+���*�Y�1��S�W��H�S�}w�2*p#��AՃ���M��o�x�aO�,����<'�����lN�Ţ9V�<�[���9�',
E�6�Qk��
�o�\�N[�D���?��k`�8�Q����hR��O��&����v~��9C�W6`�����(����*���������(��!������_bX�'嬩�|�
�(5r��7i��R�P�ΝJ
N]���L{�Y�M
�" 1�Z�kG�|�m���e���2\R�r}}��}FRD�C>�Ռ�+<���bh�F&Z�av#��b�;���ܲ�Vk�rH98��_�_�23��D��
�GV�)J>�L�x����=Pw��
���R�4��l��!R;]p`�)(�����ͪ���h��
(�Y�y�>�g����ֱ����,J\MZ��	qok���̻(���e�l�<�QAt} Y9�!v���~�bL�(����7f{-fZ;����=16���Y����~ˢ��XQx�I����s�����*1x�ҡ�|O�[�PZL��s�d���GN
S|��e�Ē�Q�a��s@ë��-��ԧbۉ,SOTlu���h;�_0�ˊ�܋;�K.�ի*�ysf�b�Q�Gۇ��}��ݫ,GZ�����g�h��óC
YܥC�^2����]Gt_%�����q�+k� LY>��������>@4 9Z0>��1�X-4����ט�=��X[�|�3MNIj2Ke�=��S��E����ߥ�4Y�iH�4�.�H�:P����'����E�jU�qɥp����<zI]<���_[C�!#�5<�����%9����%a���:�ؖ�P���W��/|����\�ʽ�nFdZ���DyA�6EK�[�g�]�Kf;`SAD-jxYXE�qw	��X��T=,�K~�S2�?�T�ӿ��X*�w	qyq�F^0�RV'�/��܈n�i�В�^�btS�ԩ���J#m�Óv#�N/�~�G_5�;����uM�P;e0/F�k4�[�6��~d��k�)��-�K��Y#?*>��<߫�ZS�[;{�Y�c�C�)Y�O�W�,�h/Ҹ��H�q�nU#��?����z�����#DH0�y�^y|`<�I�Q{[�]����;D0S/�nsk�":����E�����Db]��C�@��Kx3P2q-H�����+s�\4΄����w������5N��&�s�r��Ҁ=�D���B0�
���M	��v�����b$~�'�k']Jk��������d��q�tgǍ�IA>c��ՠ���(�+�a�
Hs�a)�Y�t�}�����i��T*r��w�� r����H�VL%��V��!�]�:<#�G���K4��^��S�⟍︧�9�&"v��� ��|�m�Y]"ˠv����^�ӭW�5��q�_�y��i�ԅ�8n�f9n���{���=d��T��N�Xf��O�c^�?X���ص���`i�j�O�J�gYB-����½���m��/J��`�&}�Dն��}$�:�Nx�����8g���H��j��?%q6���'�Cs��":w�)#��e#;��4��s�
��R��0�0����,%�n�[Hjߢ��9�
t�+�|TI��8�F�\"� ��E�92�|a�c�*
j,���V<	_`ҽtQt))�
��!�J#9X�#@�U�Au)����Æ�x�0�?��wЁ�`���Yj�������S
�N[�t{�����Y���#�Y���"P��%8�m��V�j�tn�WRu��OL[O��~����o��s_��Q��}`Ȼk��<N5��z���Q���.��n�N����`�����YX��0��� V�Kc����tk_j�*Q��֘��W��ڿ��R��bA�"�v����=��G�*�l��z��@��剄q��S�6�G�K��;���N$ˍ�`$]8��W�Z1�Q�e�!�+#��D�����x^r:a���I�|�I�mJ����͖:k�͠s6�'�9ȥ"�Ƚ�0'��(b�y�seܮJV‡$�0��fX�%!/��ٹ�.XQO��S�嬹����}��
Q�� i����/�W'����bI�h�U�E�$�����ҔQ)�c
a�%`�y��Q���v�
h욄#c�X~�;+�}g9�l��/�@ɔ���MU��_6��Q����)Y��{���$�F�<��yaoDY��߇औ@Y�x����x��^��q�6�{�Ԯ�+����0�`:�ؐ���C�o׼P�?dA|+G��%�H�����)�X
�b���s������&j�lgO��'�NJ)�S�S4��w�W�H���e�4 GV�Ro�v�+�y�,����~�߃�j���R�
c͠��$��>/}��LM��X�r�kF\�R�C���L�5�63��$�^nф�H����z�V��4�Ϯ���zY���;m��M���gm��� ͤh�H��6��'Q����(`�iV�{�ғC�cU�25�ؾ�`��1��X��G��L	��3�!��V�b�c~��0�/���pF'�A�O	4��y}�ثu�H��zs,�'��ڮ�I�ې��b�� �#r萔w�Ӡ�,w��o9utR�Yz�O�-�� �R���Wh�t0B�ɾ�":,NdY�}NQ�\N
��O��ݯS#5�����ۀA�`l
�D!y.�M~�c-����7&h���Rn.@7fm�-�Ŋ=Ѹ�!wH
�te�!]e��Q}2�e���o�옎�	���M��80�x�u����D�-�̉tה��3�O�{  7�A�~���P&�D���:#�Ȅ�i�"�Y<�"{`_T�߭���)�*�'��3jZ���x��lo������:��m�1���\��[��콏��=$A0t>�Ҭç8��2�J�m�a*�=��?�ی�+*�źD 7
�8?�
@�s*P��$2��(l:�<������Yrl&t�qJ�s���<�?I%q0��i�&�O?�ٷ�^ضI������f>�	��q����'F��My6֙��7�#W2�D�wEp�fS�+�
�b%>�Z>ۜvg*\��Jc۶��Z��#�
1�i��6��DfC����a���/p^����z��.ٺ�y��:����b��(i#���Q�J�ht?�
?�''-ӘY��[�8�a�qE�b��&�A�X� ������ƚ�m��OE���UE���w,弓Z)8���@�(�RP��7L�"�@��
�
��i<bf6��4����ĸZ�1��|G���MÎ�˰ڡ[פ��hf�}��%S�:�-K Z9�����R01�4�V�>�"�4�������c�T>�/՜$��M�Ɔ���!��	x$m�G�r>�~�D|��"h�\�%f]_Za��4<���:(�U����*�Ae����z�L�#װ�jӍps٭�t$�L܎��0�p����tk^y�?��N����{�Q'C�$:j�j�A�l���ʣ��������ꔁ~(���z�2B�L
+X���������3Ď�D�W�Wn���]�>�� ��0�A9K@����U���3U!���Fg��}؊�ύV��B2��Z�L4��}�0�f���������$��KgC)�D����B�卛�ܜ�mV���&�I6�f��]W�V%�Smס�
��d�I��������[`�@�����&P�SOn�^�̍l���4����L��i)��ã=���*���V�>���X�tP3G6�VF��3�2��/���>��'jܞܔ,�k@�h�Dwka�f�Ͳd<(V��'vm������U2�N	�U1�=[%����?{P�������[�5�i}&y<ҝz��9D�H��ԏp8�a� �|]�)S�M�����+��ѭ��Ff��s.PN�	��9V�)V��u���ʟN{NrF�����⌗[�sI��	/]mh�}�C&:LߡUq⩮K�Wv!�R_E&�p�r��ld�`����p3�zM�<��NQR����P�%s��0E1�L`뙉��]ůT�"Z|�$]#L�����>T._��zJ�Xސ��^ke�8Zd�*gH����ل�ݬ6 ��O?�Q��RU�p�g@��Y�9k�(@8�bV�E�:�6��1�X�?�O_�w���,j��k�9���s�E�(wD}S�Ţ�L]�鋆�����!\�����c���֡�em�9?��m��������h�Ab�`O��6'��9�.�����>��2����D����a%��6	��
�4:�V��P��E��řb����K��S�G�
��F�N{��Y+��\��0a���.�=r�b
	%��+�&9�Y2��o�ˊj�;�<�9��ox����z>;�2��������1AF�-�,��S�E����k��@������g��4��1�#�K	�2�醄�XR��*jaD�J��]��fXM�]xv����ڻPI�D=w<#�GM�h�S�)iR�3;)]+G�����ʁ�K�c�ݶ�_249jU�#z���'�����Re$��1�\;)��dR�q"�m�v�w�Y���i�jK^�L�l6�5{�����HH8>��ϱF#�N_�;�''o�'��F�/��ext��"ֶR(n(8p���~���N�BE\U�*<MK�� R�ަI�B	D«���}���������Ը�2�܋V�<]�;$�����y;�z2��!~�I8?�3��Hs-u�T��G��������b��0�PK%������m�&G$]�7hHX�8�qH-lTy/�X�P
�s���o�-o�2�j�-׫�:]�ː{�?�8c���:K-P�l����g��G��nRa�/C�:�g�3+�<��JrU�e�J�B#pC�����H�r�LV�n5�s�t-�.�'�}�8P����T5V�HJ��y4��C���X
���Z�MY������&��_H&����������ԕ������o��qW"V�f�4�s�V}h�p��i�ag��\,��j�'�9C����+`Z�i�Wl�
�X�xS5	g��_�!-c��?�-*��u=6HX��=w��#��45��f*?�~�QGYp&��´�j�v���Ԕ��?H�>.�ɩ��|p�s?߹ntx��.��?�M	}�T�
dk����	�����N�����=��-�ej�`ŋq���?�zOA��|��wC��/m�|:�,�U_��}�����#�H�U:Q��3-*���[�ŋ�ۍ
�T��Sٯn]�3�xA^(VK�q�Ջ��/���g����-4�(�C�G�.'Y�>"�v��S3�^x�ع���/��K�܃�gG��O�Y��F�3wJ�:|m�
�bŜf�%�Xu�)�@��}a�8\U��s��m�˗�11�����2�hG����5�ϑ��ο7���Ȱ?V`Kdu�0y�&_h-q��rk=���yBs���kqz)��A`׷�3�;%
�W��suV�pg4�����P"�Nd�s�)�1�9
��evGj�z�3'"<K�
�C#�\Sae�(4mQ.����g�t�3VOÌf��FC!�&��}�l{&+�sQ8N%�<qj��M�D�}o=0����U3����_CVk�C'�t��?{'���ҳ�2��ڒE������&2���������}`��$$34^4��;e�ȼ�+;y�N9��|�/�c5��yP-��;���M����Y5_�]��w��EJ�
�j���BTF�JgF��K~2Z�=s��,��=�'�~a���.R��)�D���n,��1k��] ��Q8s�#��&&�U�%=xD�0���r�G�l͛�QVa�/	n�&o���?)2EY�z^Ta@��JM���ˀ���x��Y���N5��t<A;���'��I�#���jЙ�
�~4qQN+� �C�3%q	[��y�6��;��_��ȡ��#����g�%)8R��	��;���S�+����n��?u��\Ii�.��$���x�e�r���RV�LZJ0�R*�Qs�Q�J�@�{s橘a$Y��1"O|*!�:\�	3I*FV���UR瞘�vPwX=�G���6�sl��h�BOGVg��4�r����K���\M~��>��J����dx6��DN�|}�;�-j�r]	����X��p�L��\<���&��!"�
�u`{,��N�j��ل#��Xyw�j�b���[d�c'|���y�G%;MbY��e��*W~D�f��}��A��ğ:��Z�q4�VA›sz鍴ƨ��m�@}l.�����+V��(z�	���#�����EG�܆�M79]���qaT�`v$�㶯�[]{�⅁� ��`?�s�ښBS���Tٱq�_o�B�xt�x�v
F�_������e>dX���v����!�T��B%r����Rr��^�IY��Y�E��f~߽�q�;!0�Fg'�X�Z���.�,�e$�_@�5>�Qc�T�ˌ�*/�i��g��b��}>���%�+�B.
h��%S�|�Jt�ܾ�%�oG,��
��0�H�]%qk�2��e�0U�Q��t#�2]�=�:�I�>U�5�Q�o$t)Į��
o��m�?����!=�:zƭ���0��Z�Bb�9J;h�T��䧠�BF�/�D�`�۸�d����eؾE�8r)��0ʒ��䵩��9�k�/�N�4��wm(7�||�ܴA��v+a�-�X�v�����+��.�����Qݝ�D���h�m��9�P�.�8|V���=}76����Gi�g��u���כ�h�6*aUŲ
t7v���@�X�YI�(�i�Î0r�׆��B
�g�%� X���}bNV���c�7�C�'wAp�������#�6U���?�5${O�M��o;��cs1JZ�?�e|���(Ǡ^���c�}�Z�s>��S[�05��gB�ѡ�����G�k�;�b;[;��x叁f~��8�r�C�E�w�Z��5��˶4VE�ϝS7��8sh
q1*&�ra��5�i��3�K���PmLt�8z�E<Oz��j���o3pdo��4����}�~��k;�Ìcj�vB�l�蔒�mcC%K9�25��4�.a\��(��+�����zsu�o��N���t�Ax�����8U���P��
S{I=�"h!$̖L�r��b:�AK��m���)���e"��*(�<�F�J���	j��7���K��������x���$c�ms��o����IV[w�'!�Y3�$�,D��3\l��Vm��kq(5$��w�[��K�\����k��5t�D�6��V7ZQ���H�9�Pe�=���Z5��KwoU\�-&�
��жT)M�
.�=����eqF[��]���~e{,x���D��h0	ޒ7�F~���%�#�3���a��|�Ӛw*8��]-��Z�2�sW	�)��#*��]ݬ��ڊ�
q%�FI� �CY+�`��e��UUC�A<~>�ʬ��S
Z&E@�mz����E�7=6��뽄��7��\̊�
|��^�4�Wx�ur��@��m�.Q���U�����Rp+v�Dt�,�@��q!'�	�p���H��������դZ�Q�G����?��lm
N�����%���*=Z~�����+�!���!�d;�|�o�����ـ:t��S�"��������$~Í�U����5zwjE��w3��`=,ȴ�,7�9L^�ҟ6��!&��Ɗ������]�q{J��%������J��b��ɛK���}u��>
�Ak�r�$Vx�8�L7�{A�7F��؉$�*��fo=D4

��8J�q�
�����B����[�m$C�* /F3�\b�%'�+U��Z�#�����4��mq�%�&%�sdH�/�/��.~�`Ua�i
�x�ȚD2@��iZ��WX�U��ܺ����t��X̫���	�9%��M8�rM�%'3��K.�RO̎�� ��!�7��6�ۮ|.۲���0\1���i��h᫓��������T���烓��/��o�T��J�E�.
J�g�p�Ǵߓ5��F���h�<��zq}ɰ{t���I��R̤���/V�X%���
~�l��:��"y�����oiD��)NSF��`�H��\��eI�|輴n,ؖ���=�Ag���:=H� "��&���SkE�Ԛ�D��5醢e��A��ɵJ�n�~��хO���7�����|��L���
�p1sJ�����1u��Yk�����Q�BY����G�g��s;��q��p���J4�����k�N��:L��d��^}@�!#���<R~�"��n�߼)�0���Qhk��D��0"+^v��v�}p$�O������%~��`3�����l����kW��H���ٰVV�8
�OP�u��U#�z���9I�	�ƚ�:*7�"�A��!/"���E
r���5:b�3�T@�9L~�=�E�/`�����/��� ^Q
1w���#+��1��^�'�
6�:	����qF�����p��0]�![�ax�F��Q[�kp��(6] �6LfT.卲����
��/�R����wk͹ϭPq���h��}C�oUq����_�~�р�u� �m�~g����(!Gjbs�)mNkY}��!=W*u�d��Q���G�2���_�d�l�Kj�ɾ��g�1��x�G�Ht/u��dC$d���P՝ 2�d���-�A^h���P��{,p���rl=�mNuٷ�^cى%{G��{��V�A���
n��k�Ktd3ZQ�C7�rO��-�7�av]ԟ>^|�bH<_�.!��Г���d�1��3��[��&�44��&z��]��WD	�J���q>�f##Tt��Fɿ�0��Vl4�H�u�T�%�J�P'��.W��
�9U�g��>-P<{�����7C��=����}�k��L��S�	���o"y������3_e�F������� z��Rj�$N
Nh�6U��U�P�[��Y���|$1ٸ�Nӆ�ԫq�1��6ɇ'��$A�>8I#�$I\��SJv$b�Ѥǃ���#���e_�-��V�Md^�D���H�͋�e�p�p�y�㬁`�'CٛY��T��PDC����Bul�{�Sc�W3����6�<�j%�a�0Z�)=�~-����9*��	��ѝ�l�Uz�d�WQ�*�sS�uC\�!y�_+Y�iE<<��=��=8�B���=�W#����_��n�����SL���[s�|��+��{[��Ɉ�=.���cX/D��j�$YD�����K��q$�VIp��k{9�|�Eɔ5���z��8Iu���T��๣@�}(�shc�<Xa�dB?{g�~Ok=YC��fD��o��1o���j���_�$h�0d���F���r�B�e��P���64��T��"v�X�yIÚ�?=�)�J�"��ɧ����/Q�bh΢gr�&��GXN_��A�f����Wb�,џ���Iِ���&$;� �h[����jkخ7�~�i�W���J1��"�:B��X�i��'`�`�k��[ɴ[GB�L@��P4A��L��x��k�r`昛{��m@��B���>\+�9Q.����9ES_�ڼ�h5hrs��Wl� �o0��.�;Y@�_;Dd�<��"�|#n !.�� �0=��H����L��|-�֮�Yq�a�#�V2��r��
�N��)�e٪�K� �Q�g��Xyk%�0�&�:#���A��P���Χg�,�m��m�Q!i�8u:_��)��_\P	���oݯ����~�z�U���<����VkaDOҚ�YRzQ2 ��>�(</;b6���&��N5�|�n|���am��H"8������"-���>Fm:I�--"�_T_n%�Y���BU��~d��/��y���T��^$�HW�K���B�üM�?Vy�\d�%����r�:EEFP��	�0+��/��S`O�9Yz�Ȩ��I�/�&���`G�ޟ�Z:��'�^�.��_�3�s�z9v�/ak=�ՠ3$�~`oU�p0X�)��8`�QJ�Řh��Δh�w4�|��oAdm�e�H[&��N1�.�9���c<��_f�5��9
��Q��u����	nm@�y���y�j�%�s���?Z���͟�6��X֤�%@��3�_?x���'��/��}�3M�f��7�ԅ0�oy
��q��͂?��
j}ۣr��,��^�T�d��t�����SA>����qF�3�w!G>�7���C?�W�3�C�$��ڣ�u1�ɔɊ�{��]�Rn$���wš/��c'xO�]7LEnaB5�G�)�U��q8G�&;��1�k�e��BT���E�U��^.�.A<�`��V�
��lWnN;��R*Ǯ�A��^uv�=�᛹�Z�e��ibt�~IάNe�(t�m7��Eٻ���L��QGt���?zY�w����D��nn���6s�k�d[��,u�`d\aV�!� ��@�q̜^vz�W{{ ,?�P�t$Ć�-��`��@�&�S^�F��^�cRa�\5X���KW�E��8���pȿ���j.SW�.��Y�o�h��&I�VgQ��QXkvɶ���ڜ�i��mqG��Ũϐ�����>��T�c��A��BZ���@��-�^T�%w����#��%=[�.@ݎ�:)�t�Qd��$๻k�H�f�f���,��'�d��}�Y/�-[�oJ�}�-�-:�b`xI�5b�X����㉴�}�?.ֆ�{�<W�6��`C�#;�	s�%n�������#��X��!,EDdՈ����F�����w��g!	P�/©�lB�ʝf�������J8�s��!�,��EB@1�����S%�S���W��&�j����r�:�<b�>+�w��)e{�
�$RR�Ya�m�u��;z��#�e_'!S�J��
sd���E�x���$FLÒ�EI��#��|�a�/��Y&Ď�˾Z
�}�z9Z>;8K��	����\7,⏾;��*
Dj
�NI��v�N&��!�{�6pKe��O5\���r]��t��w�%͞����y^��3�I+�=1"�+:�SlEw09�;��5kh�?|���%,�����PD���i��DZgk1?>o`KuO��@;@N z��[�wH�N�'���E$�1WEk�4����V�
��7�D��$��UC���Buw Kf�R�Fp�ݖ#:l���0Ϧ{
7 �'����C���V,C��^q��u@�F5�� ����TR�N�,��w�y���~O���J�\�t��}��ë��tӝڋ��+�p�NRe{u=��+�Ti��lj�%��ʌ�|K*�.-
���;L���}�1l/�c=j��F��~��N��o�����q.C��+x�6q�
G|��o�C^u7�s	�E�˒�f�\�*HE_���-Z!�8�F��]�+;�>�a~l6+��Q�]x���n��Mx���TZk�"���@|74���
�|���ֺ_��(��h8lq���RW
5�4���C=�p$L�?7ɾ�_��@��vՅa��w����<��|��r��?pŁ�)q��Z�D�	E��i��b%����
9Yrޠ�����N^(�w�0 &(�N�ni�و=f|��?߻ݺ�ǰe���ꓶSI_�]:1�Xс���|�u�--٨\%O�8�z�����kM�M�6.��#�=�#Ts]�}����z�mvvA0�����H�Tղ����	eE�J���g�H3��KM5�'��6GQN��uErF�f����w#�N�=�dV�mUP}��.��X���~�����y<)��r����"���/�O�9X�c5�5}΄��1Gi!7]*����H����|~1���ޭ��oI	���cÒ��v��*w������Q;Y��u�B�F��\.\)�eJs
7E��}"�"�8���W x|�;���h/����]���:�7����H�}��}:�
��`&�KqPO$�s�(�W�:�1�kF��ik�����6@ �W��!A�-���B�7�T���s��%�'�r�y�s��@֛�C����~��9��WU�ӏ��Pڳ�
s���)����)݂ho���aHs��l{��v�g/��l�=Mz���D%9�-*@䢍#���~j���LNg���'�-�9<�9u!Ά͇�J9ĞW*P�#T�,���Yb?N�!�]d~?[K���ij�l�԰��z6ݲ ����z��K�q 1&����B��Γn=���T�J1��Y~����6cB�'��
���JI��_4d��ϓa���{�j�ڮ��8��������
�r���eB��@XC�9�q�e%��B~�n�
�^,r�|�T-B;�e�o�G���\V���䗂J��1[3�UX�]W�ou�Y\qj2��lz����Lc���(�%P�<�V�ѹ��Խm>+�.�3V�*�PS˹�v0���-d�?��('��WYuB&����:�,��!����L��$K���*0v
�yc�g�af��]���5>q��"�w�t�i�)<�n��A.�3�{�QcX�xV�;��+0-\'��S�r��RX�x[F��JQ�O�ePa̾�WO��yA��s��%��,�ZM{a����1{ �!+̘,��l���
Χ]�9�I�
,�puT&���X*4L��붌 I,Ki+J�q~�́���9F�l�Y��d٥Z�:9�!�<3\�`��pt����M�~��4 q�-#���S�^xQk������<���H���5�a�:Nn�Da�L.QW6p0���R�Eh��@�h�Ȕr���������3l7T��
��p�a=��<��m:��=���:bw
�:��ɽ<����4Q̩�;qOtsϵ2�|�at�V�����h/<0fC�H�`ɱ�!���T3�]_mG��UR�5��Vɞ�'�4��9n�t�]x��*2Rm,�K���3eP��$�/K�|]�&bߝ�aݼ�7�!J�y���'Y緈%���9}�
�%r�p�J�Z���7+L����C�ʀ�ўq�������˻���j��L;��0�?�!f�4�u����[�����Gk��9
�8S�c�x�^��I8G�NGˋw�T�_[����O�.�5�������H�L�7��E?�j0�m��hюro��I�T�4���2_�qŠw<'�v*@&��e��`��>E�h��>@����ʜ��=�Wh�MHy��1�m�&@�<�?�R~_a�#/��߷�g�f��.b���`e	���JX��VY�]祠��G��䴖́2&$�3��*�a*�*?�j��lE�I�2;wj��,���)vbw�0�q^�2˱�w7���ܩD�d�}M��s}H|ce()�n��*S4@�K�G��D�-/�q���VA��7���NٗS�)O�{��?���)�XC�66$�z�ڇ,"Dc�[��c���׋g��B�zܐT!w��T��}��j\ӭ=���"/b���^�q�!:�A?�;3�yVb���?a`؝7�?uR6w�{��07M#PY��m-���'��6x���e���Λ�B��ӫ��x�.xTӽ{�8!j�7*���+�䦨���y��P����Fj%��Vc���F���;C#�l����q	�T)�B�����
�@}u*ws�a��\�S.=1
�]�ܕO���'�?PI��U���T�Z�4���p����gо�t-%uy�t�� �0�ma-��S��Va]���M>V��x �E��u�r}�&�S�٘�O,�}�X5��˻lL�*7�xeͰuBS�vo��5Z�\�1��ȹ�⢬~����A,:�b�%f8ä���V���z��YT�?�Pz�lݿ�QsѦT(������8��:IO�!���}JTm���9�"�Vrז��_?�t�#�"�Z����&�_k>�B�K����M��|�Q���m� s ��%��$C�,�<{��ow�bܷ�96l�Ŭ.�@E�Y{"b��4��bk|��&�[������T��
��I�\�0����������^ߛA�����`�0��Ci�a�z�fJtl��c\ч�.�nK�ڨ-��߿�ť2�f1��	@�׼�J|��-�����W��6k���xMڊ-DIL����6=����~㦏����oS�� �K�����%Z�r{dV���s����SMI3�%��2�����,�՗Fm�����w���9�,^�I4Ԯ��7�������-�(�_��.�i����
p̓`8Kv��
���ڛ_e%�)+�F$�}Cʴmq�.h5�"Y�rA�WP���R7�/L(M�d����F��Bd�l����H��M�
1.y\eV}���!n�+3a��܂�M^H�Q7���Z��<%�w>�{����i�Zߙ�|4�W�D�-�hõѧ։���]�o$g��M�Y��Ÿ�!�Q*��"���cCz;ѷ��d�i>�b���F.�IJoX��*��Q�M8c�E�SL
�$��Rj�|d���t� f�p�w�����ۺ
8��Ӿ%<�5q[9X��^=�A�˟����N�^&�ǎU�Bk-����-�^��+�%�fk�Y\"%�^?�q�C׭P��0Q���ڲ�b�$p��C�CI�	Qe����g��L-n�ќ��|"�.v��qZ�l0
iM]i�է��D���7�js`�B�
��lрIQ<�g@jg�߄�c��?�;y}��֞td*}��Q��9��ns�pc�MTbiz���ȹ��#�T_aрn�\ͬ���9FGv�Q�/)���ZON��}�Ȥ�x	?)^�J�-v���U�1�,`"38Z� �o��K�$�)���Fg�P����݀x~��������
ν�Z9)�����D�N1�p2�7����˟n�ć�A':�ԇ�/x���ʼn{!�;_��ܡ�uy�C�M��y�6S'��x��I�$�`k�;�3�{�v��z�Ê^�[��,�ə#?�7��qy����?��Žx"| [%ָ�1u���_}��j��?��@�d��̴j��0A�L���V�5��5��;)W#P�^����'�V�؟hI��L-�0�6�Dm��}����l"�*�p|��Ԡ<�m	埭��d��1C��L�ʞ�L���m��Z3a�e��
�Ƀ�ۮBɳ����;����G��0�)��:���x�叠Z�š��(͋'ѕϜ���d�q�s�9���D�����chccg�����.��
=\?=Q3�cXᴲ��� �O���zOX��Ĕ^�C��q7\�
���oV��ƒ��!K����gh�Ӻk���j$#Qԩ��8�\v�T��m^�ⶶY��)�؅���˃t�)$�,`zן��j�cw?���!
,tL�eZ��=O_�w�Zɮ&�������K���@;�LZ-Fꆧ��x^oTH%"_}`����c��s=������3-�i�3%���ȼ�.+�m&`����E�s��6v������
Tr�xc��op��]��\��6'|iMb\s�y�ĺ����e����7|�7�y��7U�O�Ԍ����7�l9���vu�Y$U�ԇ���%�!t4V��%����;�(&e�gϨ�өZ���G+Co��eU�$.�*�a2�95<�=C?�B�^��^G>
=~4�>�8��
ڄ�-mv��MdHu{��Hױ�&���f_��uFf�m�L��Q;�de�ՠ��A��	eWq�r�R��t�Z~��Vg\���� M���އn���)��wAW��Kƹ�-w_�.�b
:�>���x��qo�pUX�󐝩��Fx|LsM؆�vXPۄ�;tnр}Z9��(M�z-b�ꐲ�����Ua�UA�<c �\?�Q5u�(J`w]�����eS�Y�*�;�e�'`рa
�R��uf����lD]u�g��^�X���9!J����7t׼�Ԩ�j�b����Z+%��P�%,�̹���鐸�@��6�ތ�X�Z5λ�Ѱ{grL�?^~;q+&f̞UC�M�1��y�����l'���-2��b�]"XXDW20�[�}�Oع�"�.Q��R(�`��`�/�q�������<�6����vs�=I�Jm��	��M$�����9�cYK���̡���ABmw�uckH�-v>�qb���פ��[v���Η� �$�S���5�Y�5�5�2+��%}�:ŷ�ĺ��
i@l�n�|	�����y������||����ض�d?F	V��]���c)��8 ���%hyA����O�][bp�D�@���o\��g�\)�7}m�{��t&��Yɏ5�4&��_���a!���6;$�G���)�	^�Ҫ�`�]����0k�S����$�J��Q
���O�W�]���C>Zˎ�ҏ���a���2I��D��8�J!�h�t���]��W��a,9����Ihw�Lj�#��둂H�Q|�>�rU�ʦ}��QY�^��B���Y��wc���BFFh}�ف�=�҂�DM=v�;9!P.{�%w6D&y��sT�ޙ!{3g��m)t����ޗX9�����2*k0BV��xc�}8N����|�2u�����C�G�
++�����5!��e�à����J��l�O$��Qe_�=%�vG�N�f�ʘ(�*/c��X}V�1���`�ٗ05F�M$]ҥ�
lk�,Ƨ^��*٭�#t�J P��/ں�*��22���Mۑs&�M��Եj��HXl��9б�D3��T�	�Nݛ	�v�Fԅ��S�?1�lW��z�m�����g��w��#VI����=�Ҭ�H��ܹwRI�0|���<�8V��7.<�)�g����/mg��f}J!�:���:�$�aM�`�+c�*�&c�,�Y��d2Ñ�|ˣ�Cw/��M���[����' �=d^G��P'��м���I�P:������5#s�7���i��3�
F�qwT����!�p�y�g���u0�E;XHx&�̈M���钷
�w�Uct�2�_�?��\��wI)��hB1�>����3��tP��`���4��S�Ulf�W2�B�?�XFB���w���
Ox����5����΅6PQ��o�"sCf��^�ȟ�V�ʛG��6�%+ �i�uC4��_�j��mJ���~@]��4ri!��;��d�n��'��Ѡ&��D���b��[���6d� �Hq��_��F%�(<����~*q�n}
(4��+�Pa���s8�����f5(��7�%��M|v���Iz&H�@�*���j�"h_�d���4����COQ�v���0�ԥN+Uۢ��R�3�Z`I��{��L��{�-{*���{]�W�����d�Y�b��Q�p):��vH���)�R^\�*�]��B��S$6SuZ`�����9���Ud�_�cDƃ<���ٻ���鬚*��Փ���E�A֝قj<+h�+她b����yNׅR�%dؙ:MC�7Q�K��^"�������
�Ah�N&M)�T���:��p���\��U���H#wt$Y��<�Lj^����Q	
�W�%o�Kn���Q��~�np&�nF,:�b ��q�Wqgl�1O�����GdM�_��4�VG��F���iWd�d0�/.�A���<
N��d��m ��/5�nIO�w��T�B�j��J��ޮj/�T���s�n�T���/"R�s<x��-���Xqņ3���/H��6�#�Z=�\L?߈?$%����}?�]�_<o?��S��Җ�rss�U�Z;�2_�N�EԮre8&?���a��Kb���݌��B�ҽ�P��\��U8��)7 � �����:#O�B���J{S2��0��u���=r���o���?���n�/9�G%��	'���e/�GT�qX�VMș]HJ�W�ӔT+�^���j'����2\rX��0Hg����ʶ{�n�"a�u��	��@H���O7�5��(�5v���I��ʸp[������J�#���
=��z������+A���Zz6��#��=�BP-���g���+֌A���8�L}��Ѽ"�R�&�8_�W���Z�"�Z4m�!��7m���kj��o��@�̲�ӽtL�m�=����M�O�;��a���&�U�]"17�s^���a����ƫ2��K�Gډi�Y�>���Ɂ��(_�a(�vy�"���ي��4�<tP7��Ez�N�:��vv}��X��3�ܽS[�[hftݺ�C��@L۝��5ŭ�U1��>3��'��`_�/����i�:�c=u[�(���6җ� B��ê�؄���,Y9��5;��W�'��U��lݖ��I$��9J���m��Im
{�+q^A>w���D�_d�!����K��ѐ�	��A�ص^�j� ��C�Wϴ��|�/�F)�Qs��{���I�D-��T�y�g���z���1��H�q��]R-�І�2�a�
�%J�F�r6������ݧ������"=�y��Ci��u� XE�����O�1/�(�	�
8�-s�֏�nb�;�Hۆ�r�&��v�~z�ͼ�r�s%l�λ(5ƺ���)
�Z�����|��f�����,��D1ݜ��-�˃
v>�٠,Qι-�j�����t��g|�_��[G"{p�E�؆�����n������Мz5GkB�`����5u��ӱ`�JBc�7��c��̿> f�v�+�:�FA�B`<�ʈV�{؎`�AMV��a�:��50�;�a� �k{��e�C�ˎ�e1Ύ���ǂ�����X`��
�!��I�8*	��ΩG�{t��[6�y���?\pٚG��K{E����*'fu7Ƨ���w��.��G��Y�`��/��|��:���W;Ͷ�ڢ>O���|(l���2n/�� .��|�<{�(LG<!����๐�)粜_|��
�9�/�i�7��baFDq�
S��T��*��Z=����4�w�L�Y��]f{���Q���P8�	D��3<�뙂Ҩ�p�Z�v['�اr�Wm�uQ��!�$h�2��E��	:['Z҄F��k�̣#*�xԐ+)})��m�s�pWK@�HQ��
����t�JV,���VE<pl"�~F.��%r�|��U�\�����l�XF�W!�|�����w�K}g!�:�,C�x�F:p��`G�#��&4��ꑏ�	:�������!�Nl`O�`%L⿡�R�g�l=k�C�7��FAD�f򭪲�7㙙��Mp�d_�F�,�

=���TٶE���HH\�-��z�_Ii7�F����U�@��O4�%��t��z�4.�X�Xf�xk��i<6Q�cX�jrL�ylq�b�Ur�����Ȁ�ݠ�������Xq%;���Fԑ�V��m%�j=��`d�f�DZsV���6B�jo��y���Q�%��8���ӫb�@������IY)*U�ɂ�;��z�3�(���r�����e()�7��$�>�����˄�%O"�i�f>��ݨ}��5����5��Ը\�zq%�$������,YP�ƽ�qm/�]���?�?�~�V%/����f����W[���8����4�<)P!3~|[��_��h^��iY]��0�n?g�����дG��>WH����I�yP��Dx��u��*��Z��rjm�lx��K�wƧ��!
%w�����n�-��RN�4��;˺2��+χ�[�K���<>����X����\;��Iʉ�����-SZe���lL�B�PvC��-h��Ek-�sgD�(���sJ1l~�o^�/�)c5�����I�3��jp�5�Ip�7n�ulƩ�_c�t"�]`����d��	$����_�^9x��@Ūt%6�����|
@��Ot��R�	
]�34�I��ۺ;�m����w��u����S:��H�\��	e��|6��_�V�&u���W�
68�0�/BHyլy�9�n�����ưA�Ū
�*Th�#IG"�y�<ү�V,�D��K��~��ݬ`h�[_�-”��+�}�����`��5ɗ�LB&؈@���`�L~��A�����J7]��!Ч�˝���L��ؐ�%`�e05�1l^g�r~e�#�HҲ���6�,�]&�3eX�|��8�Cl2��Y]�S��!����dl�1B�[�̞��*�P�yG&<�X�I�t�Y�9̅���>˼�76�	���|�ڦ+��rG��
��=�׸n�Bc+�Ζ�s�$��!2�[�n���
��3B9�%�n֚"b��m�؅n�(��-[��ݶ7D�,��ڠij����!�&��*Jz��h��2����	�S�603A�e�U�
��.U��Pڃ�[�׮�CK���`��A��XU���b\�!lQ3`V�����V�I���6���l�wq����i�J�y�A��ڃ�x7��0����?��N��
���ȃ�y�7�:�� �s��0|@���']p�?��-^0�LN1\�[�O�j�>�rU�J��IU)�R���>�,1J�YU���߬�3��92pD�:Ǖo}p�9�W��٩��(j���p|m~Z ��&�cNp��H��\]!�=�y�C��==�u�}��P�5�j1n'���#����z4�:ジ@4��:��j�(e�[?�ݝ]g�װU=B0�mcT�9ʈ��r�%�9?F��;�D��R�3��kQ�a�xˤ�����+�Z��pR�B�kf]J𿨺���Aќ�ʁ�m�}�����f�����Y�/�b�{�Q2���Ki�T����De2�mW@��`	����p���K���r
5T�h�UҌ;ă$�s�� �)�O��'y�bB��^�wu|_��3E1�]�[�;y�-��̖�\�-pJ;��|fEf�ԭ:��
�!��-ϱO�
,�{�&�j�x���V<��/�V/�z�b0��%�/&Д�V/��Tg�D���������+\��C�F,��E�_�P�k繗�;�x�E(��yz��µ�4ъ�r�TRhH�9J�lN�Ke�nN<��i�f���ͅ���ۃ�`�^S:�.����@5�k�~�(�hjH{NĠ�G
-���!��C��]H�J�6��x�N�>x�[9Խ��o[-u���ڙ�x��)U�Ž}K�	=p�V�K>��\�M#�Bf5���+
^��=�~���tQ�`xj1m�y&}Ѧ�?^b��Y�['�(1���X�q���KH��c�iq��@9C�L �UvF�-�*��RV�St_.���hB�*�׸⽀B�{C�'�;�z���:킱v����,�4�����vB[:Ó���J�/F�������z����,t�dl�Yl:?�Gn��+=�נ��ձ���yy$�$�Q�a��Nr\n��թ�|��J�H������Ĝ�-�-���Ċ���ԧ���s��ۅ|�ʡ��n�K%��!U�zm/T���2S���]��*�nŭ[���&�
�`��7oT�U˵�ٍ#�LY[G� =�3����™���!p�bq�7�zS��i1�)�+��p~፜�6����wm�6}�Q��)�*��kڳ�'8�=U��T,�o�s ?���%���g�k�Ax��k�3��k�ܕaPQf��bp?i珦�q�G����P/#����Sz�������bz���CR�2f�V�6t��W��o�m�;/��!����M�Oa�h�虻m�ٮ������z���4�=DѴmlUC0����g'�v�!�Z(�xzk@|vk�ߏt���
G#�n%�e�A3nÌz�hG��;�0r�vxp�!�O���;R�V�<?��-!�K����M���4�Iֻ^9[��@��P���UԹ*��w�,�1Hf����Z���4�fv`2����:�o�"�V!5����%���_�������LyQ"
�N�Jݑ�R���O��S�3A�`�4�����œc�'��s=��IIV�֎y�V5F�̚v*�<�a��Վ�q�l�B���z���l�:÷��((�9+�cxI�&I6i�����nZ���o�S�]v��C�0��K�$�R�
4|}�J��l��x���5@�ҭ|����s�]�����F��dn���X�98�� ����v��Ÿ|�V� ���������R��P�����@hΥ�
����_r�\�������F(�R�Y��4��Gc��	V�\'l4���r�)79!i^G�i~'��^O�q� ��օ�`�a���y���O-	sW�8?$�Vai�\~�Ot�MҰ��)�1��%l�zhZ�{Y�U�u��������@J>�Al�O��MC=��h�u�X0N���E�Е�u��d���x�(��g@nK�7v�4Y�D��o�n�l�KH�!�C��g��c�P��� .T�X_��s����*х�Ao���N��Y�]��~4�V����l}��L
)Mb.l�����#L��M��a�9�a�M����cR6��.ΰӼ���e�� `��� ���e�q���~�����~��#��a��o���U�I/^3,y�4g��1l��\!+&�f,�6��/�*�(�PW�X٭7�_�(��O.	t-��a�4~�a[~2��'}&I��1��A�`.��.r׸��$h�Av�®�ݢ���k�c{l�6����%�t�=(Rr��ŝ��~S����O'����IGȶ����~-U(C#�=ꯡ���s4�"��k'���=}��d֠nL�1��~L
��Dx��ݼ)ԗyEV�������fTa�Ѳ�WO��L��j�a�Q�3c��'�J:���}	�ˮ��d��7�� ���r��uf�c�p�f(;���d����|������"8s\�^j���q�
yyx~���߇�q/��jq98zZ��cՙ�JbH`�a�p�i�q�1�\�\�b5h����b��~A[E�#���b�cQ���e��A�[�e�7�O�5s7�����7�vW���y�:����УA��u��IqhV,�<Mb-�ڵ�W�8�uIOZ���m
+�(`*�s7�IBA�
Pn�[�#��@6�)��"1E]hܐ;rꊁ����9�8K��X�Z�sx��@��'����cd��f��ӕ�4�n��.ͣ��	�3�!���N�O(�(L���t,-��;Ջ�Z�X�ͣ�\7}q��H��\�T�n�Z����hU�����6���$o䝱�1#�v���2�wߐ�lq�㳌W��8�O��֏Ce��:��"|���
S�0�pi,�PNT�b��)�f����R�B���|���ߛ�����)���{�R�i�)�Y
,�3���p�Ӟc,h ��w;�$��ҩߥ�a����&W��1� +�-��q��"O��=��f��̢	B��&m6^�~�2V�I@��FR�(���K���'-]8�����J2j�!%�MD���/q�i��y��7���{���yc�S�~�Eg��E��B5/<kN[-�}�YŒ(֜b�O���;�/r��RQ�ٛh��A��D�O���+�Md�B�.'����iRD$����ą�S�j�2�#F�8*��4���F�y����@��"���>�<#�9���Q5
��j9-��˷L�m�:��Π���
�<���R��z�9�(�'4= ����d٫r4�6 �)���'�l��.UeQ0</��<�&�~ܾ����1����R�{��'*_jJ�h	[ ��VE����,P��}a�|�ךY^8����ez�`��O�n�ih�������|�����l��
C��k����O�Fi{���S�S�+ž2$yV�Q�_Nɒ�S;���ە��P�
e؊��'��`|�2,Q٨��a��&6�_�K�
N�=�n��"���1��fO�dh�"��Y����Q�ӯ��t��b�N		��?�s�	h�!�D����8��oOģ��+�|�� E��+[�-��/ܸ*Wz�Ч�EWj	�t���y�"��CP��7k�
�
~g��ďJ����RD�m����r�M(���tE1c�E*�Z�F�T)|„�yD�3�|�S�]�AHJ��p�����q�EW+"qW�zi�aP��hVkW�_G�H�Kp��t6f��G�w��y���V������p5ۤ��'Ya��y$ʼnv`\�c����m:"Ԑ�R�� r�۸��T
���$�O�?|6��T�e������}�	t���ơ�3���jѨ�}��N��RV���r�[�$��Y��H�nrw�OR��Zj[?��o����mp�_0�.���w��v��}�a)��M��4i��[����7�调`:�U�<ɒTG���H�Z����d�Ȫn���w�5��Mۏ����@3�\�2<,�76�z��c���t:Iz7�G�H����`��j����
�ܼ-�u.2|���ӓF��Sx�}�D}�D���s���F��ů�����_�3)	5\Y���̜�Q�X�V�O��"Q�G�S+7X�33���p�–~�14SH���i���zR{0,L�A5/���SȚ��O�����23�ԡ�unz7���#��O��)F�U>HX*���R�e.�5����y�zb��ǯ>ёMӞ6�Ϸec��0w���E9D|��(l�S7�	|rV�x^a�Ը���jGT�G���͈	��I<�,�	�
b|�^�:�|#�\�[S�Ԥ�`��{�dT͓MR�O��0N��_�?m�c����&�p���/�^��"~�?�YyI�9PӃ�a� m\����
GʲӲ��G�s_�7@��>kJ�z�v|�*�cV�,��AVޫ��i��3������P¼I��{���?D�.}K��|�����zm�膦%�@f�8%ܛK��蚔}�
�~O�TS��E1����N��k�����A�4II:b�L��wx��|���+AY+�*�[�
KW"s����Ccb��O�H�\�0�_�8;���e��y������4�&�z��`�b����Y����8^�����v(��j�+�V=�I/���P��ޓ�i��u�iiI>���{���_�X�w����x9�Ϧ]���̂��������+��B��+�H�ڞ�YCW�.{8uFM��ml$���"hu��g��r�D%_�܅t����F`�ݧNK���EᘽL�������/�=��C��c,��D�6p���#���,�c�ȡ�<	n�!�s��f�g��x8�y�Nblְ�u_ђ���qS[Ϊ��9���f0��2 Hc�@֓vA{��!�d���P��煢]I4��������x�b�M�2O��"Qwj^z�%F`\�r
K�ҧ�k�U�p�$�0�Z�Bs�.cw�<hsd;eB�TtS�[��a�_!/V215������^��� ǝˈO�|Te��o$�ωm@���b8�p������ʿw,I$�ь�8�l�N	O�-v���6����F�jh��/_��S1|v�ȋ@v�����֩]�xH��Jl���[��HO��u!C0-J<��w���p�f��ҞB�ʼ�:0������aK�o��g8����зW ��Q�\�5� n`�~�Dp�.` %m���ƛ�?T�v����2�'G��*O�'Y�z��A��k�3E����-w0;�~�e��m�Om���P>O$�q�E|B�D	�mJ=�ǃ����}��(�k���իn?Y�'���58�<�}+l�E��w 4&�$y��&Y���3�Q��&���� X�|�� 7��` ����
r�ah_)��m����Me72�['���z��<�����E�
���pua�Hz�~$Z��I��
���(�0�������L!��Ql����˙_��,��?I��u�M�d�Gm�Q���aE{�?'�ÿ�u0�ٗdF4y�E�/_u'N�2���e2ggA%����H��b���RS�G4��;N��&a^vkT��Wؙ�ޥ�����aT�0@��ւ�̲mh8��3�
�L�w�#���*R5�\#|�)y��j�%w��6�qJ�&�r�h
� �Dc�>��5���u�������/�81��Y�+�5���������k�%�/D�5R��l�x=��(��2�q���}M
����h��A�[+��@d�U���N��1���Z�\��K�.�b$>�͍��,���0
�I��h ���XкP�D����]�o@��\3�(�L�bh��{�:��L)�kt�&l�\�)�|�We�]9����̫��}ա׏��p�?t�${�����u9~V-�3���n ����6JC��h�^�疁�Ngh��5לs��JJX��N̴�k��AĤ�ɱ�]�K�';c�
�1�)$�R��Z�BN�@|�b��,k_�|GU3H�o�`y��{�wP<Ɏ։@�����5b�؉܍������঩�l9�b��"�N�d?�(����\L4�S�:�`��B��'g�۞�H�w���S19^ �ƗL{�1��D�;�&�(@�3����KF��Vjm���*�Vn�8�cH��F;��D8�,�PW^޼�Ϡ�n97��R���)��.yz5�����Ս#�7��P����C�#�"�K��k��ڨ]	
HY�5���JY �	�#��1�Z�i�cšUSI���`-*�e٣ʿcŶ�Ц@��I͕~���R�U��d	?��N
ǎRG�I�{�����x��lu*'J��e>�m1���bm�F6��n�UG|'�oo�`$���G4�ø1O]J|���\Vy`A�Cfd4~�W���M��Lj�����0���L�qsq���H:�x����xئ���fG
0$}�_}�/Inb9���g�<uwZ�]�l�J	��]���c���-�NXx�w��ޑ�ier`^	�0�<.��I���n�I�A����v4#5��9���OV�ڔׂ�*M�C��Z)�t�;pU�#�ں�Ua���.Dٌ��?��l@,�:�m�����m���@%��郑�$U�����BJ�e��5��I�A�^�Mr3!q��}��S8���A+�x���<�l����M�mS��1-���MP��x�P�#���q�(ZC,�+\P|\3aHԦU{;ύ�O�!}������iv	���r[�,@�i:޹׬A����K���hV-��i�;�+1�rA��A��b�G��Ym�@��B��&&G�S$YA��(�s����,C?��0:�Q�ͧ?���ؔ���Q�P^���G�L�mwd�!9+�G�X�Ő ��"Z�v*_�Z�N맨be��ɫa�:�%�-l��B��^�g�T���k4�eg�֢�[�/S�+
d��=��9)�oaW�j3\�'Rq$�7�t.�E�g&�@�A�r��9U�����ݵ����Sj�o�ҙ1	��*�c{���o���AAc�]�'/�^�����'O�\�8+�%Q��Y��tU��+ix�pG�GF׮��qY8.t�d����*��c�az�50 �I���@
p���
`J�
��6�nl���3n�����g%�>l��:Gjc�W��J����[���*Z��4�o��b���q��+�����"�9��(�CH|܇�#�)��у�D!u�z@�	�����b��(W�����HD�X�(|̠�/�M�Ri��i�YsU�q;��֐P�s�������dW�B��~U��&f>�D�D�$���\�5�a���[4��	ՆyB��V])	��Qr��fnWm��?J�[voᔔ�2m}��*�}�������T}ɍ
Z��(�A�T�)+aU�³|�?j���tH�j}���>�4	M�*��H^�:��1���<��D�7^1��f��T���iu�G%p�¾6p�DL4)]��Cd4�vQ�#���,Q/�(N���c,󎵂�B�T��2�̨ztK,A�r��PP|;�[�k�����gm�m����gT��;O�� _k�.�@�Y�OQ�Ip�THV���-!ԋ�,J�c �v,�{SuZ*k�߄�B>{{۩աJ�`f���<�ۗ)`u:��'W�pl̑]\b���F�Q=b�"y�X1���tD�L�(�VW�(4��iY����������z����¤��-Ҭ9o����$�wqW9;����uk��W윗[G���Hj��;a�����L���Ƚ�YX����PS��=������45����&�[F�����jur�%��״�C��� �a��"./wD�7垑5OO�Y_�'L���K����e�����9	]������*4��ǤBi{���&6����ĪW9��z.�q�C�K�]�F�P����>W��iz���æ���+붩"��%�ƽ���=yW�G�Oc�u�%p��k�����W�l~#�lQ�pr�0�~��q���{m�Wc%��^��6S�}��!����w�7J(���U{���:�Q��?K��)nZ��T�z�ۙg�,�+G�����\pQ0vK�#����l.��&0���j��a$��oٿ�H�I|�<O�*}œg��YCd�b�kS�@|}]�`��K�o,x��\����CpE�=��GSZL�"�t���/���(����v���#hj<��.
Y���	��\{����w'��*B�b��D7h�}srmAW�끚����'�
\9�Z۫�gP\/�Q�1�ܩ)8M��z
��ڛ���0�M�����BoG�����[K����+��âT�x��Ϻ��ʝ�6�620����U�������4�k���@���'�ߕ�m�OR�d�Ò�S�1R��NSoE�5J�@;��g�U~����\�L����7���+z��Nx:H��t=��Ɗ�'�7��t_�IL�>e��C�(KfcwF�v#e�$�B�>�4$(�!L�6���~�W�1:Z�P���0�v����,��D�Zq+�M,d+��k���t�6�F�v�"�u��TR�;��\
�vd�k��D@�X��O���,�Ow6Hǔ�n��C�FrI�hġ�(�C+&M�z�h��e����ky�4(?�IY�[����_G�W����9K���oC\,o�&�cU�=�-�0��E΃U�x�[��ݎ!�xa�$�k���Ve���Wzdc(��$h����!4]A��};v�_p'�Y�n�d?�ǡ^���i����A���ܒ�r��!t06���֡�����S:�1I�P�|���;g��X,I.�i���$5����U����
��1��޲�9���dJ\?�X���?��LH�&l�k��+
�
/�P�%�������Qs�A��(�[2�z�$���'��ԋ�5��E�0�A�a(�]G���tds�mut�4�BO!�s��.������I���-H<[�a׵-�m{3߁���b�]6^���?�Hix�Q1�٦��'
��K��F<2�^��ٯ��\��k�Y�FQ�	[�|��
/M1 +�E�<|�[��d��l���1�9{��f�4&�TN��:��e���Tך� 
����n�<d�v��3��'����4���
C���Q2�l!�U�xK��OS��)6���dµ���b�FΤ�xi5z�A)|Q�O�����/�k�s�i��AC�
;�im�aC���qrW�����l���*E�k�d���3�!�lj���5^à�W�����ú�)-K<��w�n9�k�B�t�:>l��C�g�w�z����r��v��Q�?��â\��<�s�_�w?u~}�=�4~��}�+8��w�#�
\�}f��K�HǴW�u�}�Z&ET
��|[n���@�i	�.�@��#
�n�ݹ���A����ځ�&���.����$�9�����i��F�JU�gW2,'��;`tD��[��	�"A�Җy�ːQh!'��B6����Be�#:JM"��E�ahG>�����g��uT)����V�m�&1�ܲ����41��37o���(��i�l��&T��Y�r�y8�>B���~Y��z���&BDzjW�@�쐓�7'P��@��,��'ԛ�f�`D�`�S��7��D�l�����;�)�4�M�ĸ��Ζ�u�-u���ݴ�s��xX�o�"�x�y����G�ue�­E�
~H��L��{�B����wX~"����'��=4����r|#F	���"�_i�;MQG�9Gɺ�4R�m�����^IXB�S����m��E�4I��G+��3C����'�.���C�LЬ#�=�Z�jN��V��jU�6���������;v)��=�j��DBz�˄�����L��
��V�(>�x��p�>2v���յ߰ݕ�9���o��Ld���S�!m�]�&�#�E��/#��X5��kA�����}�y�ۃ�_,�0?��W.��D'��"-�K8�I���c�O%��`#�C�����3r��`k�E��^���,�L}�E���;����TdPI�����*B|2zZ졶J�f&5���B2c@'+�w o�@�9i��ON�t�d�~�{H/;�{L�	 dG�e@(d�|��D&F3��C�B�/R�"�R?GA��L�M���!e��
��z�� ���z�%�_J�N.�q��%H��n���>:w�7�FZW:���6�˶jS��M�
��B�*�(
b"�b�t�"5��)
�7֐�,[�J��2�ՊY���MƯ�{�aI��Il;X�T�5��x��Т/�b3zm�v��)k���tj��Y�@d��x*V`!���^�#�;�7'/k�?�z=:n�9ۻg�ᑧ�$�b�q��o�9x_�rf(K�L<�W���^�d��F�	�����VDG��#�bk�����Ew8N�P��w��<�aˎ�Ď ,�h�b�_�T齑�Ft����qF��Qh�ۨ'?��K��@����])[����R��S~�:�'�2pسY�����s�wM�r_��'�X���am��yw׭ڎ�
�����9�}�er���{E�i2T��'����[9a��"�;�x�<��2b�\�L8����Ғ���[��S���*��7�|����Ax��m{���?�v@��)G�l�`�M3��|Wb��nڊx� VN�.����KS��N��{d{;IOsV]��x�a�;��Co$u�2������B펜���,�P-�n�~�K ܭ����
�j_�)*G�>�=�cU=ƞ3IVMG�/7+��T
7� SY~���Jl:Dg��y���l��xO��T���a(0�_
G�@�\v]�o���
)s"���vU&�ސ��{�6������/L��-�G��=��E��K^X�P�/����m��Wo��:jDr�Dc��<���[��o�}L��tY�Lf�;�>ǭ1�m=BW�֩m�S���6"��*ҥ`t�Y���c_��,u�%>�Ս����� ��~p��CA�`.����'A(�ih�f����o���6��no,M�!ZM��3�����]�z
	Q}
*J/�`'��n�߇�7�����V���'2�9Cb�5a���݇B�ŶX�T,�sPݗ0wvu�=���o5�Py��Hz�bџ��/X�"�`��T
��/�JI���[�	��>�jl\;o�1�w~8�l͖��o
�R�}�TĖy�T�Т��tF��G��,$$�1b���Q�Q{���)�XeT��i�3��$�~����6L�����'Zn��d����9�L����,������:��O�#&
f��0Q���y�����u�^��e��w���qa_S��gE0�T���P��C���l�dR���n�����f_}�e@w�•N�s�y8�}�A"j�p#i-u::���&4Hn?�+)��5��%���g����Q^0�?Kiy��f�,�;AY��qO$�n�7'V	�)�sOw�-kG��p��p;|���5�Vn1��F�bMJ.~��{ײv����t�]��+��85�44N�o.��F7Yز���'-�V��K��w��
_�o��X�z�OR�(潶
��p	9�Ŕ_��k=��P�!@g��:u��7�م�3�i�U��iv������@IR�����/�:����|o
�G@&�n�U]�&a��ݺNi[G��f�L
�Fӹw�%�Ĕ-������Z�^U������j��J�̒��E,���dݭ��قuK�:�|�[�kH4؄��Q�k��$�P�lT����4�r�Ȣ��4;)�m6?[����*�r]�qm���=����}u��=WS��٫�T�qn4���;V��?�R�p��1�Dw6�ve��ӳ�K��!���m�8��&U����Y:�1�(�{�J`P�F���	/CZ�����G���vU�sHT�:�YR��i�k"[��W����V	��YS~?j_����=�}�[��>��ru?���g�:���\�����_j��]s��\3�woݻ��v�ޫ�^>�]M�T��2)��br�~
��Q�h���ij�c���󞁒�B�OD��΂���D��{��k�}��
��:��s��,+����0�<�� �3��� �����T��8?_~\̤�h3s��N��Y����#r�ٙ�k\�����O&��L�Jz׾t�1e�Dȏe�>���Ř3n -q�K�a��C�7��,�p�A:�=�V"}>c�Ѭ�2�A��V#���Wk�s���G��n��ϱP
p�GQNσ$� 4��.��ퟭ{�DK�!�N��{����7���:��c��
�m�v/��b�K�wd�x*�T�`M��LS��0�p��#B�S��y������$dr��҄��s��j)�N$�aT��ͪ�5�כ�3
K;�a�i�|W�����q�Z��Wp���r�N8�j�&�;f�&��P���j2^5�G�#9ErB����\�r�Jk���7
�_5�wª�m�b1�Ʉ��l��?�J�Z?�N_����O�
�V	�ƓҧU
eN�o� ͹u5�Ґ���o$Y�V0b��<�JS��g�
�G�!��y���+�Q��	a��uI�Z�86�
t�E
3��>�!$oD.�V�^ZJ�O�f�qN�;�+��	%�	Ho�mi��s�%�3�-�{q�]h�j���
G���􄬰�S	i��t�=��:[�f_��v�m.8z����X��(?�p�y��<Bq��?JOЋ��?��t�*�k�4\R'���ܿ_d�h��F�Ԗ��_���FޛҖ�e?_��Q
���
��	�;^E���X\Au���`�Wm�6�T�*ɯ����?ޘ�*�1:�z��lo!
��oR��~����$��
�:�[2��_]��q��ͱ��z?��	��M)w�	B��L]#90�Iњ�:�	��z�+!���B(#?z�����0Ϊ$�o~2`{��)AYy<�L�.�&�į��A���O��9t�A����֮Y�\���(�B��s��C�t����|��xЖ�'x��[�iI�:/�Qۄ�p2%���u;���o��|��4���mZʹ7I���&���;���m��v�3�9��h��3#*-#A-��vՀ-���"=�|6��QP�#L~���4���|�FU3�ɞ8+e,��ecJNhh4_A�2�>1�/�Wl7��q1D7�z֛_Ou����j$Ȑ��v}�LBU����\��l7C�m��@��i�g��Ӗ�z��e-�Z��'�I\�=�䗎ln��q�ps���q��hʧ:�#ш k��EΙa�R�CS!��Tm=�y�VJ�ВTjb]Z�
�y�M_�eNHp�+g|�9�Z|(��\��7}Zy��WU�]`8������[F��.tX���l{c78I��2��6'Mm�;��׷��ᝌ�����g&YZ0�Yw�UO~�����u[3�=��K�"פV�O�:��f��@��A��Z.���לnm[s �s�MF;GnzG1���vH�7t=23ЁAu�5]���A�����l��x�/���p�����FQ�W�{�����T.���%��P��-#c�p>ŕ��d��)N�Z�B��H��b�^#J7����LB����}��se����7ǫN��J0���XW����L�AF��{P"�.[�6�Cm'ɑs�@�#���9Z'�(o�Y�7mmO��	}���EɆ���X��cɬ�c�������e�$ƾ'�K*)���R���񺘅A�M���2j(J�X��o�K/� �O4>�yD�Em�i~��\>��8���\نp���<�H���|��R�%ۂwH�'�'�9?�炴-����s��<a2h�Wx�E泐�l��B�0W����Gp���,���9��-��~��琌���:7Z!�{_�C�l�\�fup<�2���;��{e:K�\D�d�i\W>�UPH[��w8pϼ[�+J�G���=d��S�P�+ho����ȇ����B����}� �I��3�U�x¦2�}
�R,�	[���	\ao�f�����:'1o�T�7�����I�Ò,��F��Bשp2|SB��\��o4��f���F��-��1z����q
�\�g#1)b$�G���6LiZcl{����H�3�����D�Ew$�Q�8�}�O�Ore��$_o�xnL
�;C�J*۫~O�^h�4��t��A Z�wq(>�-m�����c"��W�O����'����"�'�D�{����3o�ux�:W�a�'����ʑ~�̵��w��js/�{�7Q�8���t>]�����M����T�����g�rKq��]wƑ=�Ww��d"ȇ/�~\�YO
P��-�£7�đ$e��!dCpsd��c[�ʠ�k�ǬD@�~�k�LZjPLq��;�:F7���ϝ�c�Jɋv�)3�+&��(
���ҳ%$fM�H�(}Ɛ�G%�f�G����HՆ�9Z�ע�r��-Ԃj�S�����\��8{�5T'hc\�%[c\=I:U5��PJ����Q�h��ˡt���`#qE�3�ũ�7��^6r]�r�+��X|֐U���h4�lL��D-��')��gV־��l+52]���`�u9����:�~��Vhxcé�.��9�������NAJӳ�� ?RV�Jfq��R��T.��?���Ja���B/�IW�����8��QI}�ҫrlݴ_��m�y��t���D����h�Р�+�I�_�^%��J��Ր��G�Zu�ԌDp���/߈��x�1�`��Tv%@�)A^/�>���QTf~B-Re�M�-o��I�ܵ�)oY2E5�l��-�%�����7z���Ij��=�S0
O+�{��5Z�9AE�+���&V̄���G=������G��o�)�l&q*���5��Gё�m�z@��vؖ��9����I!�eM��#O��iH/G��Yc,6�N绗�
�#L�\f��H-��w�)���Q���<Z����\��y
��fV>hD�Pf���8|/��˰f��G;i+�sh(wr����vL������H��*��E�}���(Y��n5K����ф�y��@��Mn�y:1��4�dzj�?M�u;�0Z��a[��8���I�)|c5C��F����}���%�1-ҟ�ِ���u���0�`|5Ps�����B�QS�q۫�$��5i�=�D�F���|�Z��99+j=Ltk���;̆S�(�6�W�z+y�f_A�ϝҍD	NX��S-���sH������}�)�T��~������;8���W�k.�EN��zPё^*�3�pQ��zS�z�����`�2Re!� ءy���軝��v��DH���v�z�z��o�t�S,���@�~\���&�%��g�c�8j��%���ߜ���C!W�s`)s�Z�򠧝��Ke��`$�}��$@$jk� �72;K�
jZEQP�`�~n�r�<A��j0(�ct2`e�G�忨��wx�o,K�\.��l;׵��p�ai��j@��괨/@�ƙ��m���s���0�_Ϙ�|�F���˱f�1�۫�D&��ҟ\�(_��������:|�Gm0�z���8g�<
vy��`�=�y���8wY�77����Ud��vW�p4��F�>��~$^���� q�Tv�[�X�� ��l\�h��e�"��X��ٶ�Bx������b$��%$=C&��Z���9��&V��K%�~���ių�N�cW�/Ɗ%o�s$�I����� $�#�@=e�7���{��(����9J۽���sx�jax<dX�W�XŃ�df�u���&J�ET��z��T�7A�s5:����91����rT1q�/Q}�Jب�8���RV���`�zn�T�
A�V��߯Y�.�V�m���?����Z(��FSuk�@�e�J�s2
�t7�V:ڬ�KX�>�����k�m
�{I�x����իũ��(	�\�F7�`K�
�)�aL��"�xx�VH�{`1�a� q�[��4���O&n#�(�t�d���5���v�k�N�n#��)�s�n�eY�#WB�td�<��Q�X�=Cx���Q�[�e��fŌ��#�+_��U0>C����%z���}��҈�xr��*�}:��*5E=ԩ*�k�l�+C`a%��i#-ԡS���?�Lp���y�k"���At�UA�Ql�Ѣ�G�3߳���8	�u89�ә�Dh�Ԉ���z���5K�nQ6O1�z��E�Zs�-֩7N�D$"��OL�)�A�.o<#���o��`��������"Q�Ke�,����q3�锩j}��U?(������[�~֫ �[d�ϟD��P/�B�v/��RӲϪE��J����f�!�n�+׈����m&�w(DMg�Ԋ�1�e�"�d8k��
C�O�U;_	�����x�fM)����o��tJ@�pA}�W���yGk4�n��Ũ�='��a��}�.�Gv^��s���z�
C������Y;'��4���:l=��!<t[U�8����h�p��˄`�Xޢ��Rn��X2�E�M;ڑZۇa���8u��rv�:�.
��@v�N���A�?��o��U����ʹT�\ɼ��p�#�R���N��'"^�'�H;˨�F-���S�j�����(�2ꚓ7jI�E�m�~��o����W��#���0���i�WQ��K�gI�]�*������!鑒��� j
�����Sz���2���S�u9��
n �Ey&Ⱥ�lK�OX�T����%��'?�'�+E���h	t����ī_jN�A�W8V��ǴG�d�~`l�1W���~�Õ?�Ndk�2����K��K��O!Ԩ��T�L+.�,�/�tj0K$��[tZI�L�G�s��;ڣ�(t�e�Pn�ˁ*����6�R��=�+�4��M�v��nY
a�^�u��ד�f��v��c�g���-��	�f	��T��M̾g�iB���F��-�Us��$��R
�28�X�-�b�I�A�3�E\Faц�.��|G��J�L0����V�O8ʒVl3��fm��w|�W��Z�<����L_aı���D���N�0Ow�O�m�÷l�(�X�ւ`�UR���H�9a�ʇ�^��2���:!ĸm'ޯ9@_�#+�?�։�c%��H�2?0֖T"(��}b4^��(5�'q�3��!�A%=��}�ąs6m7��~H���|�IT
ww�(g��#���cц��5~E����t�w��&F����X���!Rg�L�D�ŕ�L"$����nE�'�����˿j�/��q���v��޲�J_V�k�q�qv���0���hɌ�\5����C2�]�:�l3�R�=c�E��HRRm�����Z$���1���<� iA�8�F	���P�4�a�Gk6�����d�G>H@~(,�{�T�w7��֍�i$�(1���鱭3G3�����W��e�	,�X�.o���-�Sm@-zc8�$���g2��*��<ɦ����+�G�(�vĂ��I���2�*u��E�G䗭��-�8���`�Z��k��Y5O+~*1��Յu��B*�D�h"�_uE�9=�x��E�:�$�v���dr[bR�O�W��3�Y1%l��6�ϙ�y+��ω�M+ԥ�!.u!��*�������u���>$+�䶓���U�j���)]����=�"e��T���|�q�1:;����i�x����b���do�Վ)���PD��B��"
T!'�!��{�3YT�S�T���ׂ��Y<69�5�a{l ;�*��55p��DakF���)�����5r�&���i���o�t��w�ˮ?�^&��G�=/��h���~�?���/ť��vG������'�������J��|U?�h�˧�e�~U��>���g
���
��6�#��g�˿j�j���/v�*�֟�ҋ����;�}e�
��[�
�h?�G�wW9��Γ�4��v]���ƫ���N;H������z>T/�`�?M����=Z_'����?�z����??�����|��??���?L_�e��yw�������q��������b~@�����
�n���[w�v��{���Ͽ���G��c��*g�ـ?ߗ5K����z��ji�����O����ї���T~{�/�?�H;�_�t#}��?�^^��������{�������fo�
K��.��m�˛k���ܶV��'�{.�h�A��I��_��-��{ywd�_򥋍�Lg��{`�ԟ������L_��=�Q�����o��=~N�~?A����N���?'v{��=���;�����l?'�O�z1�L'�o��g���?7�K��W��/��g��e��{����y�)|}^����ֿ�п�C�F>-�h���<}�^�o������C���=݉���[�X�P�09>�%ۍwS��_�-���}������_���W�t���u�w�{�K�u����zk�}�Z�}9�}/���=|>�N�~N�N�>��N�_l��_����������ǯ�x��D��P?��J{��%�{Z&���;rHx�4]�O�n�Z3۩��7�2�_�HHS+ŚZ��C�'�C�p��
:<�8��B��ѵL��kCnPB�@�{�F���T���f��~��i��=�R�����C^��c�]R>��\l��+�Ǽt־q$�"kH�h�4k\3�
���Ea\�4�R�Lv�A�\�Z�o���Ѱ"�B�x��55�R��vS̥LO���0e!R����9�[ԁA����dԮv$w8w�"[�P^A|� �z��ӧ�O_�3!V�>��
�w t�C�q°�g}�	�}��"�H8S߮����*+&σ�3�����[���� �tU��bn��Шm#lF4o_JZ]��W��݁��cN�]�y
2�?����e�#HLZi��ٱj�C?��s����ޓ�D��o�50Z���&�ص�UGm�v�c�zY���X�<!(`�jǣZTc0�Ŕ�k����zM��s54��򪄹�—�霕T��C��G�M�F�C��1���������8�B1_!�hg��KH���̪�??c�é��Y���b�-9ܑ΂^�&;��v�#�Ć}��'�p��ح���8��j���ɆU����q%�xv;��!�.Em\�h@�l�Gs.{��*�*� �!��}��N�%���E|�Sh]`�D�9�a��z���k��Rt�Laʋ�;���{Jf��6��)'퓻���W���5���6�)��x��U?	�������c�ߡjf(�~��i馉�R�e�y�1Ӽ��8M�N@a׏KKJ�٪F�mw\z��8�4L����Ў�q�)Q+؆//]P�ed�J]7@��5z5f"�&���f�ه���R흺_!�C�e0��w���>S9g	h4��6�z-����(e�8P�e݌�HCz��Ȟ��^��^��^�ոq7C���u��Gt	ǒ�͡^}N�=p���N.��5ʛ4k��(�	?\S�N�7ų9ï������í�_r؄�p�'KV+��oA�,�XT���Z���E���.�����bx�:�/l�VC��G'�FN�4[ޓB1%��t��4���]O���q�$�M���7�{B�X7�^��R��Pu���f/ }���Hf�y`�w�t��|.–m��3���S�Ō�O�Xދ>Y�*ס�l/+�^��L՚}?z�=��
��-�ԾvG���T�t�3�nq�b��r�<�
����}�N��2�J.����>��r�B4a�<�nZ�]hKұ�W��+��l!l6~l�=��U�X���
K\?��և
��@5\�Mʒ�BKy�z֨V�y�����Z�?�#%���teo`�`k�T�^�����N��c���	�l����+ٹ�˓8�qg�c�>M-wg7�H�q
��R�yĹ�쫛Ǵe��Bǰ'KC��Y9`��9og/Vs	m�ku�ъ�i��hv���\�P\˱z��ҜYspwOcq�^�U�~��Rai��R�ԭϹN�+�9�-Fi@��M~@Աg'+�Dl�w��*s�5�4�݋O�'��2�
L�7d����%�"�j��~ �k Wj���v��k�]�=����5V�־}�e��y#\_�[��l�*���I�74���xo�g#׵e���3�\B��̓}��*,�#[�������Y9AR�@�3���
7R��3cw��5���2���V�'3��R�g#.��{����d���s�?
ef��r)C2��Ág��7y �e;��S�1d<v3�^��IfOm3�B0
V̯O[u��>��?���f���'�Ck=���8��_J��v����9,֬�B$���p9��x��
A�HSw��N�w��2��S�{��r��*8e���k�{+[Y���bq����;@�Ow��)����҄B�����˂aH�cZ�ҫ��֐��B��+�n����?�n�����?��"��`��nz/�©Qy]�+
�@S���7�w.h>h/���	�:�('�KRCl���^K��?d�
�4��}�#am�m���F�{�Vۿ͂�q���1�t!����R&�t':�I;K0��z�"��C���}L��HH�lGq`AN�}��KT��<#_�f_Ԙ�5P��l���v
'��6���8�+��S|;"��V)L��rT\�&!��Ֆ���L˃P�Љ_��Y�tfM!�I�����JM���q��DW�M=c`�;��彂u�1@���]mk��3�5mN��40;����Qʬ��WDli����_WQ)gH+;������kF�`H�b�B��/3M�6��<�����`:�z�}�=(t�Q��d���[���
�["W��3�8������%3�S�'��	�Ho�3D_���R����#��M�5�(�RJ
�u�
E�(i*eg����x7ZBo�k��/��c'�r��� �v�d��N��`P�`Z鸺E����c��lB�ܗ��S{d@��#v4*e�l��Xe�bg+�os��R�VϟYR����N��gy-�5:B���넬.��i��)ʾ����F$�*4;	!a�Tm���U��M�!9�tM��[�4�9�m�@ �1�>ñ���>@�<h��_^^��6���y߸�=2��k"qo�w���&�`7�
��4��H���'��PD�6������r��D�m��@e�kl@Ч�evȨ.u�֢K�*n���g�Du��ĉ�
ܺ�0e�Q��aymІgZ�X��,�<w�&��%�b����۹2ּ1�y�2.o�D��1=���U��<<.�o��C���4��@5���C
�?y�z���T>^�Z��xb�1!+v�0G!���1������e���W�-i�
Q���EϠ3z�~���^~*S��H�����*
v��W0.��q�}��h���F��umK�� �'xE\�)G[OG��"��|�
��!�B��NJ���Qd��J�xb�z��B�aQ�B�6���+�h�й��4X��'1ԴD���H�!��H�y�W��%>�(册	��%2���/|��s^QY?Jx׮P��~f����߄2Wh��5��FK��
�H��t�d�ˇ�K�	��@ ��'�B�����
7u?�����m_�Q{��tF#ӛ��d�j���&��e�e���fk�N�*󠭸�?���̡�{��R��t]&��P����?Q�1�g: -�O��#y )��kd(����#��/!�"z5�>�K&'�/��0ֵ���#�%����2-��������봜X̊��4�p��t��[z���hl�G�����Ɛ����*��f�T	)tS����V>3Я��Ի�{KY�H����N����\�� �ulFH@�5ZR�V�&��
���{<_��X�+v���Ɂ����3��C���Hd�6JV:�cC9'�T}g8cM~�6�,���U	��'��ګλ��ݍ��k�-;`YfS4I����v�v#Ra�z��lJUGH	�M“�zM�a�P�����‹U/%gMeV�=
���8=�V�ĸ*��Cz�tà?�_T�Xj�+��Kl�_��T�hIa`�a������J� /yd�Hx�f^���C�~��JX
1�P����!���r5:���
m�W�WYM\0�g	�K՝�C�I�I0AQ"�[��k(�"�@P[+i����/���Sr�L.�Z�p��#��i,�4�ʣ�Ə�}Xƍ���:��>��w6]t�7�+`��� #���en&O;��k/�XX�	P�,�Y����@���������x��.��Ȩ<�4MC�WA;��%�&��r*�g��u�Z�$�k�B[k�~S�Uwu�Q��:�M��m�7�d��%,��^`�<�o�*=�M�=/��"-n��o�D�k�����I3��t6��ºՋ��ڕ7�r�/�7c��[4(P9kA��EM�
q�a)�u|�)^�\�s��?�+�~3&6�?���$��c�m:��	`4�rX��ձ�����uln#�cq[����G]6����_��NW�ձ�����ulm���=}�45&��H���ɘ���e���з��X� Pv��1�N���6E!�8l���j �[���Н
b���ۅ����@o�Q�H��֨w{�\I��!�e���F;��l
��4b{�щ�F �P������9��fa��M�Z�w�SX���ǀ�u�?W#e�s7�=�Y�ng��碍P���/
wƚ:��#�
���B0ֆ&�,yni��$����@�j��{#�O�l\����fK�S��=�R-ݬ\dx�*�Y��U��GW,5�p"(	gn32�.��ޚkc͝M�{b�����JY�@M�O8�5���K$#m�����6��.�R��!�(��'9Z�D!�ԉ�ӎ�`�Oo��5����+|3�p>��w��\���i9�j6kRh��.&]-N��7�8ݾA,���]��J5Cb@�����i6"�|���ۛ�:��q!����!��n��)����b�bp�^B@q�λ�xޙW��O�u��2�3�\o6���-���j�aȿ�%�v�p&��Q73Ƙ���Z큥_?~�٢�J� ��-xX
Iƒo�
����Hk�
a�`��+@��1Y��h��d����$Jp���8��]<���N��})�a�=|�z|�(y�����c	�<�?�k���,�H÷��|F�I����,b2�P5�jZ��t1wD͵8\Z#�|�-���d�L����\L�5lt����ŜrP����zif*�;��TX�ޫ�>a�%=Y�mL~l�?�V�P�L�|�	ُag����Ǭ�-����nS4���[>�ź��r_��9�����+#�V�)��ʪ1�q�16���9��iE¥6��aq_ZB�Ջ\Ah0Q�!��F�H%i�/{���S'o�i>�W�!��
�!?^2���tU�a�F��;�E��Q_��<�xj���CH��\�C��bx0޴���jd����1"tώhH��L<�3�K�į!��2��H��2�!
?>pd���b�n�\D���jw4mO0wc��J>/z��j�P�̂�M�C�?=�n���r�Ƶܪ�
��~�`�=�qS��]�-�Y1h]�#%Tq3��h��qV
�Jԏ[֊��������JՁ8�%����AEx��
#�<�����6m��V��+��r���Uk��gF3��S�c4ڊn�*{+�!�£8rۍ���$˅�J�Lj5{˾�l���ϜO](�����oI�ǂ4�O��|6��+E(V'�v�_R��:xGD�Z��e�"���B�ş9]��;O�^͑
R$����u���|>D��W��KVG��Ն�TAd�w��*n�=|�-k�z
���^�y�>��D�c��i�q���ϑ���+��CG�v���뜖)Ɉ�h5�'��bjb��d-��n���v�t�++�[�+)Elz�n°�Z;"xI�p�����H�E�����EA��W'�(�Q�{X��U���<N�ʂ3!������Mq�Ce:���_r�(��dP�A-�X�B/	%Qz!?��'����2��u{�@}	D��C�Ճ؁�u0��W�e�3��C�'�������#Ρ�'El�C^���#!��G�9[�����s���(�=��ͯ�-��пm�]�Y6�:!d�J|��0�v��3'$�#�uԈZ/x�cQ�at�)ߴ)�3�R��B!b��l�z�	���1K�����2Ճ�aa�$�9/���D�Zh�ޓw;N`b.#ЏUҼcL�X;o��&	<��0D�T�U�Ά�+�~3&6�?���%��Ш�l:�[����GV��<f���($�&���,�Jh�C�N ��D8@�%َld����.��P�@̢�1DG{u�/�M}I�[��'k#��l��sV�#;O�cL(Zm��K�N���7"��풝�1�8-Kl���� ���D��A��x�:%E���{
�nŐ]��~�g
���;���Du�J�@G#�ma�	���&�nq�ܬ5	<Q�x�}�+�� F�4]{A�/W�a�0���"Cqk����.ɣ��3��qy#�i	n�5�@���<ʪo�8�f=��c�U�!�|���q���a.4�������|9�u�G�	�D�ï!ӊ����P���c��Ϝ�%�x���6���Y��D���G�����&ڑ�k�m.(�6D獷��j�\�|
4w��ט����M�v��i=eo�*W��l���>m=֡/~l�%�7�Uj��j@-b!��84��f����Ф�R$Y�������_�(�q?)W���Z��j�9�
'O�/�q��owJ1k����{.?/�o}�6w���G�Q��ҳ�)���G2���A>p����*�-_�S<<��{�3�,�lA�ⲁМ߀Ǡ�}T�0�՞��߸����
Ph��;6�?~l�?�i�.9�bF����e�O�j�?�4j!�A�y��	V2�0�!����%% H��LHDa����l{�$$*���f4��ww�a�j�*D7|��V�L�	(~�Z�̗����:N�Rb��G���qz&�ۡr�ť��>S0,}>��V����Vy��A9<N�����r��â��1a��v�K$h4kA�k�vK5�I>������u�m�&z��9_;��.�XΝ>u�y��b*
��{/D����[�-�G[�lAw�R-�̠��?w(5��n�C��v��kyE�5��#C
�>�:�U+���3e����wj��
��2��'t���$��[QY�)_h�k,@�q�~l�?�i�.9�bF������f���lsV����TU�@*K<�1��&��Y��'	�@>�[L��6ϰ�+�Zu:܆��ҖZ��X���ZG�]���'�.�;�a�5�Cb�S�4=�qqp�g�
\�SKd�ly�� ��ȱ���9s'�
_�!�W���X�Q~��_[^y��S�\������)Rg�\h_�X�ctX��b\�
0�NZ�O��2ea�\P�4��^?��cNX��ji�4a��uRM:�<걘�T�wZ�c������(��!�_�
��g��|�e׵��d^�U�lY#�f�gu�ע��^]��4WW�
��!o�uPbco��u���g�
�Z��ka\�oo�<C4N[��X��;�0䉸� �o�=Ƥ`�'E�� ��h��?� ��j��⸖�I�k�(�F��ͼ���떶q�8���m|���j~#]ʗv���p����,�ͬ�WI��[�
?�8�މ�H��q@��V&�&2ؼeŠ ��S���	�Y0%�qL ��4QZ"��]��M�TI���}�
n��`�����xjoz�#��ow��K���ɜ������+Z��vQ�<�@u�����Gbp�@t�d|y�?2�:d��z�]1�`#���%��zd�|
�^�)yrm��<0Y���6P�VXK�Q�oN<��~�F3�O�Ki�u<S
^���i�I�4�d0���!��):�7��Wq�rIn+�^�{��Is�Ue���LؕS{����O�z��ky�u-Ƀ`�I� ���'ث[��OX�.��?ẻ��婩�_q���.�����b�=K�[��W#��b�%��h�c�׏n��7�����[?��i��@�s_
�#w+Ubw�
L9(��+�9+[��P�m��6�2���f�3�b���pB��\e}��n��	����'����U�Q��r��H�w���c$5<?{�V�=`�YBy���0d���j���/3/�'/"�=k-M�mq����"o�	�2:��28�3�"="�AaUӡPx�^��%���k�m.��,D^�QW��;[=�u�!��f���cрuU��HJ'����d�M̮ǥ��ϊ�PBW���H�����[&�
>��2==��M�d�G�S�![��Ԫ2l����{(��{<��h�
�n�ʊ3�I��yb���K�9�~l�?�l�����5�\4���̔��8�3z���+�L�E�7)K!t�L쳈Z�)���n1F��Uy��iU�j��)�K{0hD�F���m8TW���s���=�����^Q��9�[a��YL<Al�b�^C�d��.��X����*<����H�����1���{�7R0�S����0MdMwm}M�"��ǥH�T�3,*n+Z�iܩ�Uhx���r�m�$B��}p����1�,��J�(�Dh^Hh��8�9���b�k�	��u�+���丵yͰ���91��
��,|b�5�^_;�pH�i�:�%]ZX+	ME��F�3-
���Z�5�
���b����56�e�pWu�S���낙;��o�d��;
N*����`<���Uir�ɾ�^�AVN��,&�PPE���_b.:��oA�>H�#�z����4;����*H��cU9�{��J9<[88<���-uzM�5	�Ł����r�x�w�S=J+,�Տ?��l�^��d�Y����eO;�P2�x�k��Jw�N�ݤ]G[�ג%��w�#��֤(&�:.��n�mM��\�W8�t��
���
�bZN�jv��K�������zj�\V^�3��癃,O�G`�"�k�W$�5'%zS�x�tH<Z����L�)��;@����px5�;S�����h���g4ʒ���1���%K}��A�l�W�
���:��t�6�忋��.�g͙�K���9B�cwL;f�
d�c2�i����'���vq�&�$��
f���Y�!��/�Li:xr�<}q`���֣Ǵ��*R����D���Ƒ],� "�(��6��%��<#�
���&�/�����&o��Ε�R�ȅ�o�%B�lf�ԀU�*U%N��,޼����W̷h�:�n��>���1�
>BU>=ęA�5���B��PX4��� ,+��T����2.��8��븥xզ���{��NN��w#��U� �+�ĺ.��:���L����<C�a�Ӓf~`�v���fs��em�z�HS4�?�}�N.��k�{9h�
/���^
��^Fن9����V���փ��;���\���cTw؉�N�p�����<��Yb�f�C�V=A����ܱ�� ��egHH�2�8{V:pc=O�]�ǖˡ�`�aB��4�JE�*�y{Wb�r�}�ZNt��m����I�<u�FĶF����4{__��
�#!��r�:m�$���By|�A2�ﻫ���m
��j����`0菝�A��;�v�^Ý
���#dsY]mK�����LQ�TLG��k!t�	�$	/XW�s��,���(�!9PP?b��\�M����5]'�N97�1�Z�(�h^,b��N�l^U��+�_�'�ø��X_���	^�����o��4�yE�p]�4��0o��C-��6��w[�g�O��G�vX�KbVe�Z�Fs`����E��f[�{�W����zu��\��_"���b���D[����鱔h��#
�w��}吤Bգ�?�G�N�h�N�۴�G/I��b��]s�����-�*�P���w�?�Ц����Q��G$j5�a;@[4�J�+K�[3����Z=��������ع�6
p�X���J�q~l�>�i^�(�)YS�*��!�ê1��RVX���6z�A�����Vv�xFΉ�4�'V�k����'�ӗ�D��@�SY%��]��X�(+�]�>�9*���	}8�
�']�6��;>�	���+�_m\6&�L�׫8��iJ|���iG�K0ݺ��<�ޗ��L���2vy��UL/����P�j�80�`����K�vsQ3���_9���"�~�zb�k�]��f=f鑍�q%_����V�ۖz<����D99a�+��k��o2�A�(�+r�y��4��ٲP�
4p�8��f����,3�^��S!#��P�g��U�� m���c$��)|�lˣ�e�.߹����BI?�"�˜Bjy5��}��4�Y���V�i���
�w2�`<�+�ދ+~��X��~���w�,Q���J�s
O�5ú�Ɍ‚��3�&�?���̆
Z���/���F�Jө��%�cxJ{���5�&��l�k�h��;�2�
z�fMR
2NF	��Gf*W��
;�i^S
�Rr���2���2@�=<��7W�1�ήM3Wr�5
Bކ����4$[}9Og���SBެ�����8ߓMy�W�
,j�ԓ,�K�ܧ?��ct�n��g�%���(ف�:�P��st�q�����d�Wš���o�6��!G/:	�q�/C�H�ž_zYy #B�v&��E~V�a9��v�F�`[>��;�N�"7mq?;P(��,�c��B�~7#�kT��KK�
���kD��3\)$ѡ�5|����:���P�Y�cCPz{��U7��z�G�7����)�:�!�+J�I���!��f\����u����o��K�n���Yc;���l1eq���(��+�	��>T���^V��s�u*�G�]i����'�"��zz��r�D������~l�?i��C�@Q`;�ުn�6Q�4�6���lO,���?:��#9���D�8Y`����q�"p<
�'�xO��CH����d��U¸��<��!�L<n)hL4%
)�lG4�0��K�yM�Y(mP���M�	���P9�������B���>L�]8�;_������~wA t�Cy���J���_�,�g�O�v��%�Y��a�;�Q��{��W�8��V!�5HY�k1*�T=���
�� ���jE�n���2�~���;�w�j$Hid��`�]���sZ��sF��~<D#�^��6���@�{I����X�5�(�F~:<}�]��X����'aۇ@g��g����!\��<"vq��4,��k��`>�Ysu��û�=7rZ��oL[p!����&�Bl���k�X�%��^*MW�A�s�eNÆ$�d���P54$^�̉�?2����l�������k�;Mz�;ɀe�^��cN�������ӧכW6�J��<��m���c��q&G�Y�B_1�yXy���0
�E�ˋ)��'Jһeج$�Y�߰���1�p�@��wA�ʣ�X����=a3Ph�K�F�ܧ
iW�����(́O�n�+�������gx���&���j7��:m�7[�A}�6��e�	9s ��
�l�yGl!Y�F��X#M�l4���M�p�-ZJBRrAd:��=��X�*Ĵ�	���u�n�#���P��k�p�m�n?�Ԭ&U�F�./��B��s��-��n���������n�J��	��CGD��p��^3��a������)
V����<���V
=4���'Y���
�D��w��V��m�������@���#�&��Ha�^�l�l�	@h���.�M�ε�2:+���[��eu�	H8�OL(�)�iC{��!bN������Ʉ��6:I�yi�
oeN/]�?�cd�<�L��%�g����s�w�+�22�8e��VO�j�L��W�-�;u��t� �W��0������[S:�5��~|�7���.�~MI�+	�<L�$��[��6�k���hޔQd)��:hA�N�GREZ�K�Rr���J�d�E�M�u�N�ad58�u]�@���"Z:���x@S�S�(–r��iT���*5��N�p]���r3g���b������!8E
�,�wa�	^� �b{0�q��s�
;���+�H�����
��u�!r��z�9n�A�xPs=z�b,�v(�h=�?n>���q��\�5���*�:E�z*i�0�;�*3x(�����[�0FO*���G(ƨ~��#�h��p� �-X>ڧэS(jV�%�H�1]��X��6�6k�x�Zhc7֌��߄,0�o�N�����U�⛿����iM���V{�ZJѺo�����r��q�zoY�"ٷ��̿�gl�"��ŦG��rA�>��,Y͛�$;[�O#�����6�yZ�{��D�]I`Z�3��Q8���wm�ߐ(Q.$f��%F��9o/�ڔ��?l��DMC�nfj�4���p�b2�E�m]O6ʂR�P�ֹZ���(|�Ky,금��f��N*���j碔��Dž�(�QNŰ�Z"�Qv�WvS;"��^i�c���y�B{K�.��r�AP3�w�$0on{��JfD�BZ��?d���T�/�(�){_ e��`S��K�{o��U+r�ӗ$�j�-���Y(3GIs���E�+�sP 	���-6Ap�_=b{�b���Z��X��:�!��k�Bğ����<U�^��3J���C-(���y
�7x�����5��ϝ�/�E�z7q(;j�����;�(�{ȘH�O;�07�3R?�	b����U�	!��WkGP��ylAmU�sU���z�F�y���1:yh�B�F��@_��u��A�����z�!$����%���wla�O*(�e���%Y�qiDZ���J:R֢Ia�}��X���(_O�� ���ش+H��n~���oZ����%������A,`Y�,/�V��8�6Ǯj�l�y;-�/���P*�,xW}0{��eX��:^��ڃ$�\� d���Is�X2�tU����Z�8^���C>�q���&ٱ�o����;�m8����FHa�^M$t;!�]9p'���M�~x�c��O�,n�;�r���6vV[Ya}#��Ҭ>��ͽn�>�D��V+��T,yV���$�?
�>_��ut� '���h���4ldA���{L"wW��4s�ո�ӓtW���ٰ�h�Ц|�y�����smd�W�:9vd@�~�=��{��FG2y�=��r����}?.1�W���y���
-a��9
'�JY�"K��XI CJ#��	�B�HM]��E�Y�+�����j���x����l垳�M��!W�S��濞cq�
��}��й�o��K��R�tޏQߖ�_�Ԙ'_w��E� pExt��h���By��T���}K��o�=�R���l%[C!?N�T���Rؐ��t�3XC��3tBi���a���i: ��q�_F�&M�~�t�ދ�5J��G���Y���'/��ȇ
#lv�Z�)�����.N �J�Ee/�S�1b�o���ؙ���S�Z
is+|{
����Z x����];~���>x�)|���&�@ח�9�_�je˗���<z��
f0")0��/�W��—��*�`SO�_���8�Z!C[��K
�b�yk�ێ���
�� �=����Y���3IB�W�7����O��gW��Tff�w5M���p�<+��b�5�y� 6C=�"�xx�q_��Ev�^�7	��Dbk7[�+�=׫1�K����O�r��n���#;U���*�:�E7��ш�+�"�a�ɯ乓�'vgUpY6�B��zp���Ò��N�j[��@���b�^��=����k�!x=ɖ��)��Y�E���%����Q����x�)�8e�L���x������ԶK8J���\	���S�"W���,�p`���`c�R
�FF�i[\ʛ��*�x]�_�`��L��\4�r E/�$�!.ˏۘ��+nv�^
�.@��^̦~�HDܼ��X̀��������+�/d�`�rȰe2�HX�Z��"����+�]�`��t������c�Ց]�}~چVS썂	�Cby!-�G��^����:�X�І�3�0���e�۝��,�7΁3����i>3|)N�#J4<Jk�����T`5Nǯ4�_�n�6����e�>�<�6���f��|��Zk�Y�ȇ˰X��.��	{�I�m��';iO�/�
��2j(L��$PtѢ��)�Y�p�/t�vjM���H�۷�m?
�hx���1b0�V�YH�	��|�uQ�)XV��f�� ��3W���?]mT�,gpV���:�tx�VA���]W��y}עb(O�ߜ�x\�C9!�>�e\��L��U�.oJ�SUG��P�Lg�-�
t���D<0ruu5�V�tʞ�N��
o�O�^�1{4Zp�1�8��2�UX��A|�1��
�&@v�������C�:�en�h���Ӵ��M�UA��&���<�6��
Kπ$w��Ց�-�y�ѹp�=���4�e;!�b��Uɳ:1�����VM�0x��YĺL��'',�9�5fKM�F0ZW�V�Z��
�[&�f_�����u3��T�Rh
p	�cmn��w�ݜ�"Ҹ~��c���am����r)�S����*�u,J�I�֏EiGw"��%�#�p9��lٸ�a#O���D�,f�#�t!l>��v^*Mx++R�:[�J����U��@�[���q�H��V4��Y���iAm}��?�0P#�(��_xA���)�¥i
W���%�P-�\��- �Aj?�JK �Ę6`r�#	��Ь�|#�>��]�[��;�ʱ�v�Ŝ���>�]��'�oP>$��
�'A
6)u��v۷��e5�J���ƺ�S��n�g�?�.�9��
&�tȅ�r��b��p��<�݀�s1M���j����acA|D�c��K���#�Y�ߗ����: �(�>u��Bl�'�+|�dv���s�UI"�^�zcY�,|��]���@��+���{��*� Fwlij��0��85��	]H��Dg��G^����pĩﷹл��
�R�n'��q��m�a�A�4Y�>���I��ަi��:_��ނ=�"�8�ay��K?D�#6M��Κ�/��@~ã0�8��g���IR���cO�oץޥ܅D��o�{�|@�>S�!�̦�TZ���'J�r�r��7�4kc�3�#��Zwl5�i�@�?ӕ\V���$���
e��C�w8v�-Y�OB���)B%X�˦�:�{��|������T���-��f�̐[ �E�ڸ���v	�C�g�.@ʢeWbT��j5|��b��y����D�P�<#�:��<�i0I�?_��#����.ë	����}	�_��H�D:ʆ��$�mA�F���C���[p�4e���R�I�����0l$��"O���=�	?�IA��6uݦ'��E����;'"�.�{��!!5�y�23�rַ���I��vycw���E>�<����.ۺ��6����O$�0J	���9X�q"��R.Q�^Y��&�o�mR�^���I���`h�E5AL��f&�@��Nk�O7��>ׇa̠c��q���1W����d���^�e���&>.G���PT��=�S�aFu�@��2���9m*�K��4���L���D���]��	�E��g�7�)a�&iXi���܀��]���v`VE�d�$tؿ;���@%7-�f�&U�i�נ��L��t���~����q�UCR��3�����,:�m>����*@*��`�޹5:�_
���w��TQ1brF��ּ-����KD����@�v���F(�\��;JV5�ʐr��+?�h�"Tl
gz����R>u��$=�f�̽�J�D�fӛ�'X�\qxR�$ɀ��'.U��,��w�G���������x{��X<P��	'��.�S����}��zM_E_]�fo����Rn1ZS��@�Z�7�nQ���U׿ۤ3V?	��M�����8�[$�ܼi�w_!P��?Xč���&����7��K����Ȋםl�o�_���7���`����aRut�[+3�HJ(��Y^9{ngMrY"�++�Po��ɽ�zi`��tƙ�)01��\�+��yI6�}SD�Nם �na��>ƽI�㕲�������nHT���"��i�+�a�o~�`��i���ڡ���;����k
3��f�4w^ʲͥ���Ú�뜊�C!��κ��{5a�^Ȑ�q/Ӧ��$��M،Άe�;h�:1���ص�.��L��G;�r�h�a2�@���M8#����`/�(~p҂$�Y:�gۈ�6+]��(�%JW��?�m����(SѣSCG~AV9&���MZ��Qt�B��1���ϸkJr�s6r���9i+���L�%�1rI#�
o�p���-�Ơ�A�
��|@�qo�ul�]߱���Ej]eu���2d�BT-we�	��r����Ld�K�S4�m�F�b/!&*P�@'��)��P��{�#J,���4=��8�T,�:ɓ�
��|�{X�K|X��Ic'�YZ�]�LB�Kq�V;J���pQ��b_~�����5��zlSR�	\N$9z�x�}�CC̕?2�]m��;x*ɚ2ͻ7�;�@����nJmPIB!���sΚ��;���oB� ��k��$�%"�1������\�a���_�0��Ӱ���A����Y<���"��{���s��{�U��^��(WK(�t��3��9�R��=�������	�CNVSL�}}�Ǜ2?{=^�p9)�%��a5u�n9�	����ҿ~F�=X�C��ξJ���IG�o�-JϽ<���9��8���4
?qZ
4��
�45�%ݽ��H�j�$̱�<�=v$m&���e�rMN!H�ϊj�"�	u�`SM/[����|!�k���1�a"�?�\�@}�އw���𲰉���k[1>j��h���~�ʼn~e2A5ރaqr����qT����$�Ɋ7�\��R?XL��9��K�#dq9��	*�˵��-@w�.�����P��*�TW�:<8�#�"C�?	$T�Hǃ�dj��ZM0�|BP��(��F��
v�.�v�0	ꣵ���F6pQ��j�c4F�yN7��^���%5ԝѢu��Bn(ʼn��jw��dW�4��)��~��6��ό�6�qMH��s2#K�~��Q����2U�DKl�u�7����h
�
YUN�
I^R��^�����K��w"��/6AIx�4}Mc�� �\Vr�V;�D�eL�KR����龨�x٦�" xO4X(u3�R�c<U!�ϸ/
��v�����Z�����K��{/e����5�h9Ho+!��>��Z�ְ�;�P�X����~S�n��ɢ-Cȁ��O%�qu�,d�r�KJvH>`҂�Boa�ȒNm �Y-U4s}�ŧ4���y��]i:*v���g�n��Bp�9;+�t���A>"-�J�qy���q��w��t���u��5��R�����:�Mg�!7f^���<y�P��a�M���f�x~�BhB=�QW�Gk3wa�}�idEy�]��`Y��p�"�ܳ�]̄��qLZ,�Egl��sq���C�������O���௿�}��iP/=�!b�~[}�q}Pս�\���G]��Mr�k4;f=��B@��/��$�~��j�ܵdP�>���=<4���!�DzK5���:����jr�%K�*��Gy�TM��OԤ��|�ϡN�o�{e�fDDz���F;@�y$�oW����?c�i��c�Og!ڠ��Օ�)Eƺ�Q�r2�@�D������=u"Qc�)H�.i��֮�n��=*�u�kE�#l��bj
���V'5;�;(D�&P���	�T?	���-��(��u8�F��-�@q����d�*L��?mt�!�J'H�1ˏg�JD.o?�a�p�>4�%�ᐰ���
5<�d	�\���8�&�y\҆�T�o��f��/u���\�{�r��W(K�9�i
��d�=���A~-�RTtܟ䂐#�z�T"!��)��0�$u�Ш��,�D0����
}��me�m��es_��I^ܱ���hc����/'��i�-s�_���Wt�d����ϟ1�q�IV��L���N�
���
�=��Q8TNr�?w\{�㣈��1��{<�#*Z,E�eNn�	1�8��i��
~�Y8��=*�ꩂʉ�k��1TX�W�`��
��۳h�n�n�ϥ��kMe�C��da��8�jƹ���!��y�*/��ER�T-[e8�&4a�ܖ��\��
��%i������R����cV�����]�~]Z)2}��It{�	�R%k/�S�:�iQ��=�����[�d����W�u�pB���­�@��+T� �],���:�^V���[Ʌ@f��>�F/��^��|��J��:_L������v�fw�r<�<P>�M{�;�m'�N� �9�{�w!d�`�IY�@Fz��ՙ!��TU�L`I��u`����j)�Qn!0g ��7�_�9$�C�)�xX�;9BK�/U~aq'��kӽE�s�a7�Q�,?H�6c�����ƌ��M�g�G[�}9 ��|��ٺ�6)�h𧇏��nv������Þ8�97�M�`�2ǩ!�n��9qi╚��|����У��RS;�
.$b5Z�d�7�K7����4\�ɐC�B.�]m<� �t�5K9_�A�D�1��7���o���;�f֍.;��ߏ(�
�����?�x�3Y�a�^�G`�(��2,!��{u6�B��N�;�8�Ìǘ���jGEFn#W��	 {i�tZu��F�j�5��+#��Ӌl��_'�9Pur��WF[���n�e=�4��Y�\Xf~���s�%JE����v�w��Gr�D������l��,�L %�e�f2ٴ��ee�8Cc�D^9��)<z�Ѣ����5�L��q�C��,�R�p$8��+ݨ��i�|�k�Yr�H�FO�YDH�E��b$|�v}*��w�_�3���
~Ą	1���LR��D�Pw����$dcC��n����y�N�Ә��QWX��T���<_e������Q�!�\e��I�j{8���CU�rO���S6���'��=5��/��>�"��)����%(`����+����-�{��K�{ENSd =��Z����/��<���l
S�Q����D�]�NܵJ+�'it����l{e�bҎ�oP:�f\��A�M�6���i���4a���<�8��3����up���{���C�
J�����K�:+�8��wn�#S���V��#&���*�E��w<��
��d�_,��e�8�#�[W(Z��;v!�X,�GdȒ(3W�/Y`fl�&c���m�9��2@1�~RŅ�
��CDe(��X�G�D*���A\f��$Ϊ��R9�y~g�X��cm�8r@�|���v�mmb~1����at��.�㉑���%��SRf��R���>�~�	t���LV?�d���S�;B�=��Dzk�*����_�t�r�IK�r���v��MDlN���*�b�@��_�"�A�+�@�7�0O]"�TU��D�G�9��m�)5�f�m�C ���҉�Y�:o��k�x�h�d<�{�P�[�jA<w^��'��|�P�����[	B&x�=,�Teʘ�1,�C�RH:��?(�.�A|`]UN���0<;��H��h�̃#�"�w�_��A+�)���
G�W���1�7�b-�&�3p���g�.La�����7vC���څ���*'(9���M�GX�
�R�j�a��j��]�땹ɮ-�~*�J���o�RN�i�� ����喲�������J��;BIS�����{�<���k�S�x�x��;���-s#d���C���z=�e�f��#���r��*s�s�f��-�E�f"���.?4R��d[�$�-�/6)5t�ɓ�v���INx��ȞTH��]Cq����R**��#(�pװ����6�鰂-u���P��pBY��س:t�����xhl|��=H��z�p1�ν�)�מ[��i%������!wܤ��p������o��jXU�8n��M�+�%n��6Ų�&PVn������s�����_���&W��(�('��\_蘽�`ɑ�$$wh@[�M� L�/oG˯ʩ�@H�x���ut~Ȟ�;�c��
�/m_�Y�)��!L?�([��U/�pY��鲴�����W�)�ӏ6�ǵ�S	��U��R���Lk$�2`�ߙ��zCp[:u/����^�+�dt'������B�Gt��.��?�;�e�NW���[2t;�.v�NGCY�	�������{麡���u#�m]wˁ��&~�C���6�]�+��(��҂vk<}/��[�P��j��5�W��d���u�}�"!��/6��,����}�l}@=�u�|�ҵ/��q�G�@q�i��[I�h�W�������]����1��+��;L�4{m���S��'�9�-�M湪�@o�j"CJ�kZ�ܴD%۲K��ʐ%,��)�t�3�B�&zE�o���rj�	^��.�����겱��,}�֞����f*���	��lD���+_v/
��
W��S��xv%����D&9G�H�y�8?)��=%Q�R|p�[��	�zzt�)v���R[w�L}����cqG� ��d��p��W�u�sbvQt�����G=��`��#�:�4����K'1���DT/x(�@zQo���<�\z.
�]���	����s�9��'�(��2HC�>ߗ�@��Y8T\�[��YJ`T�y�%�o!\茢;�����:Vo�3|����ۮr:™���:�4�!�|���&u�J���c�srSr�O��X��VV��`5#��������L�Uƞ�Eb�pqߟփR��F<)=�N_�o�t���U�)�Z^�-��8�\��
���e�����X����Z�d_O�	}�+�"q�|f��7�����V�͒�,=ң5?i��c�ʾ:Y�U�պ���U��b��տJ눗(��C��V�ތ�+@�_7�Q�{��ݠ.�	�K�f��ww�<v��qIZ���2+1�78�k"��\1~>�IE�s0��^�n��6�Dh�:�v�D�p"9P��(S��Ք�R3�Wܚ�Z6(La,hH�9������A���M��|��\:��\T_)�i�,�
�<�x�G�	�]�?˕o_�a�y!n���8J#g�XNg����KK�D=&Tl,p_�+<0��Q��ΪH�hnN�Gp�P�-�MAl�"����# ��>{�챎kUZ��g1}{�T�yh#|����]�]���^��r�փ��-�C��tn��L���7�#�դ��O��z�'�Sg@}�ݱ�C��=8-�9�X�O�M9=�w��/X�K4G�j�HUA�c���k��A�#R
3�גS�-�$!�cBc�]]�*ڡDtI�&��N����
-z�����6��?����x���m��³O ��4
��?쾉����M�7��=B�
]+��%+�S��7>8Su]��z����5C�H-��/�-J�~��o/l�>4q,պ���la�}`:�2U|���N_��0���ETMSWU�r�ێ��
��M�M=���,�0?�~ԗ�l�r�p���R�Vi.�-��8�
�B�ޙj�Q.]��H��ש�!d5��]1
��g[�P�J�	���۾�����{,��8}�?���<c�x�ٝ�
[�����q�50��8����4]�}�M�k���P	�
s�Z���ת��ύ���p��}k�7�r,�ʾo~F���U�nz��e��(��i���'���J��h��M�=�T�8�l�����o���o�eB�%'DV��iX�DR�l��ruK`_�/ɔ�}�s9Mqd��+��}T�0�A���~�%��E���u��e�	��I����@�j�3�c��֎Fu���l�gg�D�Y�Χ�C��V��{	Y²|U@�1;}qT2ϰ)��Xa��%�O0� R�wRJ�x3B885U"�i	��.�<�>W��V홤��]Kfk���7]�@�`�<��x%	J�O��_�(�8��.��1�*�EKe��I�ف������j@�)�
>�d�j���Af����~�a�	���n7"��G�࿏���0,-<�q��]���"�L��M�p>9���u�l��'�.|7<�AVt�=Jف����i��/�W��D��좰�C�#j�)\�����1d_)WgZ	8�J���'[/U�Y[g��A��ů��J}�6�A�5f���
7��4��,�V�h+H:�5?�&i�^,:������2��˞s��HaE0�Vơ�"�	�u�Z��ƌj���O�BPv?g2!�HxLZ���9��-�q} ;�*Zy^�;}���ū:�3E���\�E�F(!�sۏl���ۯa��_�.��h�o�Wb�E�:������;���	E5m~\�3�<���;���%覜q�h�Ii�ֆ)��%G��32��'9[a�����C�vT^�YM�VT�E����pa��8��w6э@�����{�I8��&n(T!���� #MH����g�[|�~�zCBY�3��O�-U5yJO��1���%4L�R��%��m������WA:y��[o�@�I5@6䈴)��O�J�Ї���	�^��T�Na�H�db�y�$��rj�%A��Q|
��B(N�}��`��*���շ�*� 
_M��oj��	���rRF<N	7�Q��tF��e�#�,R~��|�/з2��/t�6-�Xbl�q$Hu*C[K��fY�hȵ��/�j����ީ����sw��}��o<�����^��]�����%�u���q

�N���Q�Y;�5Ch�M�0���H��X:�!}�,9f�SW��p?�O���|(2�G(�|:1��S�EkWT�F�k�a�
���Js�ǘ|q�"���HK2�P��+n��f����#3�$RS��Qc�jʗ'�Rb뾏}��7�W<��7ˉb�/����O�(��rc��ho~������G,��*6*`��)J
��{XCP���e��bJ�lP����u.�C⃫(���9=��ue5�h�-�Fk�d�A�u%CT#��=tqݝ�S��w”P���oE/����~)�n��/󈿚��b.�sH�p%K�����ϗ+E�x�Hoi�n��`XZ�s�1�]��nBDŽVϴm;9�	B���R�~)��?��c��%9�[C�S�0���K�u��/�/�L���,����L�l��,K�V�:h�})�.o��g��H���;���qo1\�n�I��W�n��h�Z�Ɨw�r��g��Ѽ7�j�:�䰺^��d��i�o�K��eUy��_եb�=�K����q�bVZ��߷׀��j���5j'�I ���Pq�=7rjc�/����%J`���b�_���5�TfT�0�1>��&�����?t���r�2=�S{~|�g$�p:Q.����lق&b,��Tp�x��C���똮�^���F�Sߣ�p��e3�3�P��M�w./#����/"��R�����г����a�(N�����2�3����!ؕ:j�p��d�ʆ{���Zޢ�YZ�&��~��V䜵5+�ox�lV#몟���g)���'b
<U�q�uayux3�?�W��f7�4��S�]�p`j[;�TG���$�dKMg������r�����,�\�zI�A.ڒ�= �	�z������;u����0ˮF���1�w�5eW���薕�	���ƞI��]�A^���Ff(��q�u�{7NCM'��Z3킕���2d{F�0�h�K�qA����r$�pƋ}m�L��ƭ�5(2�P
<���tݰ�*/�MqSh�o��x�s%���ɭ�L<��A���w���v����~WSG �E��ʲx��hખ�5���q����}����O�w����~7C��y�Lky\�����Pq�]%�^Y����c�웨���Ȗ��v�9
�,��ۮ�ڡz�d.O�>���$G
0	�G↗�Bf�LM4;(���J��O[w��.`_re5�^�� ���`)v��.B&���R��ׁ�f��0������΄������}�]�����O>?2�7f"	�K5�z`�V?�ɑ��$�-�>�>[w�yC�����9��G2��4n��j?
�,x�U=Nʬ~�J*�[3w��N���M.v얎,��o9�Z�šZ�-\�2�7�bR!T�gl�b����j;�06�M�7�����~�)�U*�]B���
��e��@�JRT��kΑs���9m㯛ry6��S=�)�!��Y�I…t�+�,�-�ްF�wI|�PI��▌0�f���i�؁	2���n�'�_`'w/�>��q����Hi��KR4f�Ƙ�D*��r�\.Z+�y
?�ֆ��~�0H���.步̳�ۏ,5��lj%x�*�qZc���&���a�]k��s�(F6��b�9l�L���!�ry���4�����*_�׮�:�J�޸�ܷ�i������~nvUpH��K�/�,�7�Op�ч��7���k�0��=Y��.���
�aJ�L��c��
/{�:ds伨����}���U������Œ�{�$������Ū�q��2U�7�N��^����8���v�^��ZgPP�K�l�VE����L6/�n���h���,nxN����?��P3H0*�ߖ�"�\a�#��t�<a|pH�e�>C�?u,�K��g�4{�-U"���P�`�ƒ�������HgyM�1�C�Y)t��Td�q�7M�eC��&G�F��	�S��H�w�����%���Z��	m�[��J�߈m5/�J�`dh;h{D�8�h#:�yEw�g�r�l�GEiz-	���}��إ4�u���2�f�<�>�y�D�hM@���]�]X�8������~q
%��)7z5����ės�ÕR�S�uu���S;�ʹe+������p v���_��?năA�t6�;��O�q����{�3��f�$�sQ��FA���9�.��!�����
�;\@&BH
�;�zm�+n���Z_&��b���̓��g[dW˕��7�q���'��sLl�
ų���6�(>�j�c)S�iry�k������臚�$ʫe�;�/b�ut�D7���Zb���Jp�^OO��Hfl�󣒉�q��_�����\8��d�S�f���ֻ/�_}q,t�M��(��[D�]��o����J��Eb�W\7�e��a�'	+��ڦP�֕��B��j(�a�z8����΢@�2Y��DDZ�'qa���`Ub�p_�7�{����|���Z�BDt$0��� E�����)�;�ܻ�r
���V�=@�\}ߩմ�N
�:��T �g�?y�Y�Q�=>L�#H��j*�:����y?�G}d�ق�L���"�=����T�m���	�^d��|~��}ۨ��>Rr4!ן6;:��b�\3h�'�[3����ʛ�m3�/�'$����dKǰ����A�I��?�׻�8��
H��������E�w���'�uO���8 �k�e*}a�":���7!�r�9��q?O�q�Y�sV/�y&��4o�n�%.YjL��(+�b��jj��
�g������Bl�JS��`�v΋�eߴ�0SK_�Db�!+�iL�,�Ng��V��vX/|ZE�ZD T�a��P���m��6$|qʑ���6�g�H����
�/]�"�����զb:JW�Ǎ�\n3�v97�'��}t��P8�}�'��%����	����9'��}�傐f��W+�Dm�^)s���I/�Sh�MX�����n��� �U��0и�}-Ub����,k�؟/r�=��e���졉%�7hBi}%�X��Q�AB��K|� �'㉷�u>ɤ�B�U��S#$�:���EZF��0�J�Є>��B����T�~�#1 %����o�w#� ~�R=�;�ФP��>
��7~�E�8���yE��,��*hRb`�@�g�6l?]���NI�T���G��0ՙj3F���w�LJ;��w��q1H|��S���[�V������1z����o���W�&bDJ濜�W4��;A��	�|;�I���Y^S���ilk?�Z��JZw�pdAVߺ�|55S�c���6���e�"�G]�:F��xC���o)�u��Cͱ�����]/��k$�̉?r��z5��8��|5������#���H*��A�;m/���$��h���[<4Dvgz}��4�M��*|v�71Q��Z�l�TC��o�=���<R�������a���P 
�O��_���h,bؿy�7�Vd1d�蚮}#�Y��Z�Y�������
䫙���h>��9��@�I(�#�B�>�G��>f��0M�j8c�R���XMt�2O���µ��<��u{�(���y$!=	|E7w��(lˠ&�ڢ�|P��7L<��oW]L�-^rn���[�+�\�=x@��X~91�fF���.��䁍�n�c֬;覟y��ظ1F^Z3�����s��
NK���3���7xp�o�N�lV�]E�<���I��v\Eha}�&��@�������`����Ahy�[2�j�i��$)�kŕ��_8� ��fl�I+��4ޛ�i/�}C�Ք�p*mY�)Y��A+�d���?��?��)j�[Z���"򞬫��>�9ĩ6�,T.R���4{T�R��=�p֨m���c~�jp��؅obړD�Q��Q�ڊ���#��"��b�]���ɋ��2;���›�!��Z7#�w���.�頃^c?iYH��TO!Y��	����K��/җ%���n�am�֙����݉/�pn��H���sr�-G�xR��w��4���bRz="��e��Ĵ��a&;>�.3��񍘋ե�q�yÏ�sY�}N�����yMO�B��}�	�]BXj"��hR�;�%U%��J�w�~H۴�O;�u�
�O�-8S��Gm(�J*�y3�	6��*t(%���2J�C9>i7�k�yj~�c�,�e����:���8Ur�<��<�NkQu0�V
"c��-�0q\���5Y�F�#����/����Wsޓ#С��ܘ���i�~��X�zRp���GĨ�Sa�Fz��%�Oљy�w�_���c&g�h��S?�2>��dÎ��V��I )�*�>P��(��9�ɠڝ�%8of�*���K�<�[�h`gt��2^���:�l/��ZY��>&^��I!�A���dg��	�q��k��e~��=	�}��{�g�l5̵Pc�<�\)':.�s��m
����Fe
�/�%#=���a�q�/����V��7��/I���HM��3��,f~ff$!��KV��=۬s��ې�O%!�.´����?1�>��*7��-I�k�D(�e��*
g�#�T���}I�G#�u�,�V�vI�	�
j�q�e��{�-�U���˪�41w�'#�&�S6�{����OݪS��/�_2R��J':�����M,��u�z�s���6Y�g����r�߬ꩄlɛMg�4g�H��T4�x�ҊEE�z�u�L&\2���
�ͬc�I9��]f��nkw�M�h��g⎦.ɵ���?�`|�c���tF�mp2��;�_q����)`�ч�®a�C���c�E��8ɿQ�Ag�����_A�͘�J���)�d��4 ���x���o`"�h��[Z�^��n��^%�0�� ����6�WUgE�[Al)��~i��N�	�&�~�E��S�XM�!��!9�Wd&�}�
_ƹ�D���T� <�b=U�0�䲨�#���f8��]'�i�Y6��8T^���Ej�q��QV�Զ�h�~�a�4{�����}d�^��g��º�3��)уu����oY(�G��T�T���fS��o�[�JH�����M\� $l=��e�oַf��tWh�㺨�<ĆƜ�Z�qY�a\3<fOTʼnʼ�����/�p��(˞5�čq�A�Ϻ>d⦅u頳\r8@8�{l����bf�' xw�ʀ� GY��;�5hA��#}�ʔ��"C|6����#<��/�	�ֱ����BD��{�Б;�F�������`	򈲐t�n�	�7h��6��B�@.��ڙ�As�u+�%��ݲP]��&An�0�8�,=��3x`:�e��5Fp�I*q�����L�- 	s��đ�3��Ɏ��_�p�:��C��q����A=�|����ۚ&�}YGGJ*����� ��N�)х��	�.lz���;e�+De��G�������.��
��.EY`lA����fҚ'�d�2�wƢ�5�V��VH����]��4,�\�+'���sُ��'ژ~��-�M��	���mQ�T)[�0���{7݄��e	x�&<� `ma�<�d���@^��w���v:XWU��Ϣ�A��a��x$8N�tI���DkX��b��!w��oC>��z��-6O��a�c�Р�A����W�_�a�:Q�>*��H��59�&�.��V��YV��@�l���Ƚ�]q��JG �_6`���V���g�X���x�Q�g�v���@dGrq�gf���+�0���;G$��C��1D�"�.��sz���k���*�_j�g��צ'v�l�K���Nu٧AC��\���b��z��)	�?�E�C& :Y�Y6�.}2�6ÿ�PV�8�ݯ��:]@8*�(��ɥSqq�ZL��K	�N棤�l�Qy�� ��NO�̃qO�z�%NU�G�&�0w�(w�{����Hp��Sy
?��zoí�05R�^�������{����\�� ;!5�w��t���C�Y?����Y�(i�ﳛ��pIv�B�Г��恗��A���F0���d:|N�j�,)���4��4׎8�& 8�a�rY�.�5#����M�Y�����$��Y�zȷj٭w�y��wO�u�P�"�uU�x�<���H��;3qpAG-C�Y�n��Ez��'�B�5�/��sO�')
���@w�2���q�80,��U�^)�P}���$@5h3����%��hVr2B��h�����;�B�px����;����/3��-m�tA'Ï�iȷz<��l����~\αg̣�O�w�	� 3�=�Di��2"|�٧�a��W�0�I;x�c��l����r��5�_9B0�г�
�o��NQ� 
 ��9��C�f��ݹ��c��y9DT���X~��BwZ�1���b����<�א�i/X�{�۷c��ʠ���\+P&�'1�Z�k6�+_B)���oIU���1S?�1�Ѫ-�s"z�fR�).��6�6�g>͠��iO���M����l�ށ�AW����h��r���7>�-0����P|B���
��+�S��j&:%��m��+R��r�IfJ�c)!-gM6Y��0���d�O����(%)t��҈J��'}��NC1�%?�K_��V�֮~.� �+�Dc�m̿��?k4���d�n�4�iY����M��}��5�d����^�*A=�}�f��dL.G2�?P8�����TZ��3�7
3���
���1�^q1JU�ܗ���4B��)^�C[<?��ik���?������|�mr6Q�!S�f�
����B�����Ե��lQx�ڥ\k�ds���*���zǽ�5P.�U��(2/�� �4L�]#��bF-9~�W(c����i�C�?�*�L��_�~*�xj��'��U`)՛*sŌ�Rc��"�r��c��w���Q����NϜo�UZ.eO��:���l���*WK4.���Q�6q�@`
[�9.>�>�s�/��i��H��;�	C�+�Y�V>���kL88"�j��b��sI�[r����.�͘d��3�9�Оed
�&����ś����.��:f���.���1:r��'�1��v2t���9%��e����J�Gn�H����Ch�b�Q��9�{�矾�)�pykt���ǂ���sC�ڰ|�Ӏ��I?�L[�D�eԄ.-�S:l����i�s^`��Z�<L�`�;>#E=
����L]Iiѭ&"I�*{A3����2�G����N^2��,��}���YK0�x��e�Gp8��[�q�������2U���p"�}k�W�mM�O/�����bW^��(���A�F�����J�Y��Wl妪_u>N�r��M�B�c�Ra���VbK-�y��fDE�Nv ��lr;�X�[�eY��t/
���E@o�������SZ�EB���&�Xa	>�@`1�����|�3�k�q�z�
�<&�d�'<Q�-�����ݷg?���C�m|��m�K����99�N��0�2oT�k:�r�����ټGi7	q ����
�y���C�o�F���_�ގW�w�
~l�?�d��Y��g���B����x�u�̄=z��?)�Ub��͝�8��Y����Ys����e���(�-�K������mJ}�!��/FL-O�l{�^Ď�H�&1ԟC�Cc�}�r��x듓���D+R�M�u��4$Y�ԫ�io�C$n��*�ɂ}�m}Tf��<�2�\G���m=�[�E��e/��A�
"�b�_fj֣��R��B���c��47u��>U`5�reޕ���o��@ʤ��E
�.�'�ґ-?��jE�V1D�g/����ӠN͂�B�Ta�r+,h7o�I����sbH�(��kD�vo�	BM��:6��m�'��G�n-d��>���Ҵ��|��FI�<�CF����K��8�o���_`�tGt}���EJK��KrU�kk��K��.���qoU��i�u)�8	2?�Y��9�W8t����b����[�h�8qe[�!�*&$�t=|���	Q�-�%zn
�_��x�[�1�&'�a2�q�df�ɗ�ѫ�{��c˒��ƚ�L��O���킈��d���x���n��
z��n $�N=�Z?jF����h�(!1��}��������pE`<I����%t
�[��$~
%^�&w�֙��P��a��X���n;�,7�J��=u/ŒX)��Ni>C�e�֒���
1,�xBU�դ7aH��⛽�s_�R�n2L3܊��[��.FX�!���1;\�C��0�[��|~��F���G�<	vgg�8/"|cTC�Fu���#
���T�T��Z�}����,��k���[XEC���@��a� }z�S���۱�����u'K5*B�o���!�F\�p_K��(�F	4���h�6آ�Ϧ6�M�Q�9�#J�h3����A�����}�[r�?�\Ϛ8e�<���N2�JI���į�����I��k��fq�xcF�Im?�y����E@����X~]H"��H��y�[1�瑤燊��W�Y��#�[06T���gH~�L,٨�6F9��Sd;WC>�Vƥ�	�<�$ O'��-}2
ʃ*�]�2#�r�=�*����ܬ`p+ٳ_��5�ہ���D\�����Ȫ�m_Ǧ{I�G3�,��1�I���URk;G���D�������$�!�{�m��.`�obv*U�E�4>NO��f3okn6;q��?���g�+<�A���Hv�c��OG���L�8�[R����O�%LD��5˓VrYn��=�B�K�%�	�vB�S��ȁ�힜��5]aA4��_��450�V�V���2ޚ��7��״��
e��*���WY�3n�%s���@O���qj��_	�I����o%��M��;0_�A��	�m�A��)��Fyᬅx���
��F�X�f��@��<�B�&Ȼ��(<HO���C%9����g&��yЂ��1a>o�����Tz������x��u����w2�!e�$@i�˵$����Yv�r��3!��
��u�m�r&'�`@-Pj"�nCH��{ʛ
�賩T��Ͻ��b�"k�3�z��ڒ�Ī����ZP��4.�_c����Q�N��Syy�8b�l�K:ܜ4��Ï���p���i�sd?��ibqa����S�,B�
�܋�VnN@�o���o�m�g�f��M�"o�ZP��V�^G<��}�������Ҏ�ީ~y���]�E�[Ɖ&���E��*�0Q��R���0�t+h9�R�|h"��g3
T����@�J�aܜ�r}]�k��A��p;�
�5.p����p���m ������@~2wKA�S!��*+O=$��=���r)�=�ư�aF�C���Lf
.�+ [���c��B
n�us�G�������́��ɺ+{\��>�U���Q�����(-��T1#!L�{��e8�������1j0]M)4l~l�?�O���P���R�Y���?L���[%
0��L�p3]�v�e�K�ۄ�~lū�&Cb��i�S�I:�6���` �:H�����סM�I���x���8��w�qR����;��c�����A5n���V\�?�1�j��A~�7d!،����[�⺁v���
4�E�D�u�Ɏh[�\ف,];Rj`�^I�紮8@�a�&r��@���?RpÉj(���vR�t�_l�� �ۂs��Ѵ2�����h��(���;
��,���jDn��1[���ϹD7"rq�v��P��|Ǭ=s�lST�Z�[`n_�[g�V�U��!@�ſ�j�G�Z��x��3;�,{z���
��~pNv`!EY��/N��]�"=x��-�F		�y����Y���Y�ȁ��܆��,��^��+緂�|w���,���Tq
r����$�ʐ$�2`͎���C�u�ti� ˻�3�=]}>#�7�WG,�߰)��g�!�༺?�EQr�o,I.�:��f�M�+/
Q����v_�v�ǣֿ)����_!���>ٕ_]��MS	���0&´m�1������)��.��B�
�#��s1~U�f��N�THB�_X�C"S����bng�,���g�6�����$M��Q�
Y4Ф�m��9&h�<�2�P��u����P��)A�>b��5*��!����e�r���w�x*MH}�-����A�n%�*�rᯙw�u8��J�3Xl�2]��7���Q�Vd̷���Nt?�&�������}V���4u�)"�V���r��!NI�=�uJq�b�;�Y�y�B��
�_)�a�����{�B�f����f��2�M˛�
���h̬EF�0���8܇�ɝ�D��I��\(sX���[`�7��c��Yv��bػߟ}�

���Ƽ�QBd�)}"�|��
��Uwŷ��r��n����a���c�9X��;9�$fA4�}�P�^j<%�a�.]�质D��p���<�rBC���H�e�I���ش�%�wG�t�+\f���es-�C4�	�x?�x���
1>ƣ����� ���
���	�=�';'H���!N=B�;�*]�ﵲH5D�?��*�)�}��-ӱ�J�5f;cH�uYL;v�?Cz�.t��-m7�,Xl�
��B��q�I�L�7�	#g�{K����_scK]��(����If�/�����e��aX>ᓜ�'��s�r�x�]��_t����3R�;��\��Z�\��JXe����g����<������d��{�F��W"�Bߒp�%'�V�
@f��\ߴ^HZ��6��9k��@�n.-ɔ��6�A�Q �W�O~�ڳƝ(P��9��?�,Ḓ��G�{�sa�f������?�i6�^�S�|�f�B�����aj2�L%L"�=��/�q޽�PՂX��~�8�0�����|A��4��i�^a�L6e#=u6�rB��u�Bp��S/+���qNE��h v
JR6����5E�7?i�pSU��`7Z����+р��}VV(���Q��(Z ]�\��8W���u�k	�b�d�;Ta8,�{5BZ
����}���d3�	h�~XI�L�a�e�|��
O�Ȁ=!'Eu�\��,�������:�1��{�D!,c�ו�G��f�~���2���F&�sQ���E������=���

E�;��
o:c�k;�у���F�3�ɹ����J��!�j�K:�?��V5��z�P��r�hgߡ��[�����#���L���mrd�!b��{(��[��#��	c�����.�P��!�l��u��ycg�fٻl��ɵ�_�D"��
�E�䰼�D|
�	�ݏk:$��A�f�����&g2@e�d�͢)�F7�5u�64�@����&�{v�;n嫂�����o���d�Kp�/���r;V&Q�����A%�.32�勛�!��:����݄'�i6����(O��C�L�k�Ǻ`�S��8G|f�|J�@ݽ+_MO�@Č��ZT�RHR�r8s�� 8��Î�80�;SBC.3R�ň:x�'ӯ�׸�I�-�qˏ.㽑w�	����}�q���'cv>�o b�L?��"�K��Cg<6��J���D�&���FLk�f�~���?�Ӄ�0�{Q>-�A0Q�Ic���gX�����R]����/�P{�؉"zQn&60�[�B�OH1E�F��#T��ֹ���#��ӟ5~/!],]gM���\��Á��̼�.Dq�5��Sđ���L1�'�i�g���ҕ���c~ao]Cw�� �{�L���ӯ}�6g��{�C���"es��H���!��3���@�u����J��}p�����tm�(�؋ܒ���)Ȉp��R+�W�e"ېtJ�{���N��-��bc+��$�
5:���N�YQ��|g�\��?uL�<>�ټ�o��.�^F�ˀ4�I�H��M�1��;n�7#�7�ߥ�O�w%0��쓈��;����?�W��pdIx}`��
�i1�9B-�Z-�y+�N��EZ�3~N�Ơe�28$���>�
,�N�e
wk7@����<�ƥ�P���|�[oOgE�Lz�s9�c92l�r	Ę�Ž�r���~��DP1�2�6�xDŽ.�7�}9��WfR���t=�8
j�"�DK�2"�j�j✞B&�~/x�Z�];d%���:^�G�Z
A��L��N"��!�|�mW"��ס�@,VR���Nh̫N^�r>5���
F\����h�3���z�S����]Հ��E��rJ�O�bN��3li��$,;��J
�[S�����&���ʏMk��z!Fm�8�K��t�M;v��]nh��+mC���̻8PD>��|C6�*ѫ��s=�.`��V����d���C1-�S��n�s�'�-�]R�5j�s�"<%�]e����B�΢&��-��W��<4kg�
;�:��qS[G�Ju?5,ʑgT��A���E�Տ��ո��²_�5�Xo�_��TΖ=uj���-5��{�G�W�b�o-�k���"S(�a=�M
i	��c��Y;,1����g�R?��ܞI]�]C���1����>X�J&]���T�;�4�߲���t��CF�c$֑�ë:�E��G�߽�����xН��U%�K>
�|�][�E��5�59���5`�{8_j��GXU�o�9)|1��A��6g�#�Me���)�a���2i�C6+��Gč��I�:�@8�A[J�NS���<��ُT���r��N��O�}(j�R�����L��
k������CY`���!f�ˮ���Nc=B&S�B2 )�ȗj����f������vF���q��
�'n�%U�|#H��{	-�#�*�ۗ�Qܗ짬)>��E[D��1)�-EAQ�t�88�r��L��x���Z��"T;�W�dc|R9�K��˞?c�հ�Q��E]�y�G�g�"�4XP��m��k-Q�W�,����M�z�XW�p0�uQ?=�,]��v#jB��#�T���ôe9��l�_b�dn(�/I9B��h��v���`�F3�W)��H��1�߈CM��xY��R�ɐ��ҡ��9o��(e�w��e(7#m��Ĕ��>�����l�a~��p�a<�Cr��8�Hi�srb�f��&���
m��E�@{�5�%�-g�nJ��>�v���c�I�V�D��<k�%�3A�|�{8+o1<W;
��8�.0��]kS=��V�|K�p�q��`��Ԋ7%���mN*��>��{��</�,I�/=C�ףeR��s	�?�{�"���7���[C������
x�1�P3��w����0��?��|�#_1�7�s�<��A��d�GYH9`râ�-�_`��wʧ~΍��熛Hg%{�5fa��~{ �z�/�
�f!M���]���V,?�+j� '���lVhT����!]2�B�FR�GB��\�u��!��懔�M����o|�!N�=�0��
��Pd^��5�K�^�"O�m���%2���.b�gQ|��h�4
낱V�$כth��-_z�YT���G�8��s�<����O�O:_
�Q�a듸T�ɤ�0�N(e"$�c8͌�@�э͇��Phn��A��q��ča�ne���UҌ^��<-��%Z��V���Z�;�
)���~S;)�1���*�q2�1YpP�������/�;'J�,�?[8��e��!�L���u#2�!�_���8ފI�k�|$�m-+ R�P�C�*in�R����h���H"�o��^�R80�5�]�M�>���-���kوT��>�5-��ۂf�c�1���p��4[��i����h1yܧ�k�I��t�]�`�(V*��%0.���J�Yc����-.���g?qw_宓d%��n�e������ 6׉��}�qQLQ!��<m��^��eX�[��߷���]Zٱ仉��:�,�D���ԉ�w��j�'F��@҉|�0��KS���s��T ��I۝�+�ݚ�	�oڭlfW��2��+��Ќ�(F�uY��R��k���]�Z~	��C�&�<�qi,�*(�b�ڹF|(��r�h)��z�	��-�����2�ޜ�Ϙ�|2����L�,]�b�6�^J^I�m��̾V�9�~.�O�m.��J�ЀQ�_����=�M�<��ri�%�8ՂK���7h�/�l�5�E�#��8�$�����2Pz��"��47l��P�ހՃ왌��`�,��۞� �>A�kJx8�ua�
�w�����q/x�x����7-������A�&��5Y��P��b�?����~q󉮻@��.3�J1�I\�n�#������/`�U���莃��J@�OVP�	�
"Xu7����^14#�&LO^�h$%t�*��W��Gygr����d��6���`Ι��?낁�L��;P���4O�����:��a���Ľ��1)W�bɌx��{u7�
�Y���Jy
a�~!)$��6�`�o#Y�'*孯*�p)� o)�|,b�"����0�m�ebz���n��K 1��4���:�ԝ#Ԛ��b������UW6�EƪWY#g�,�f�f
��xkVp<��r2�|����%���v�5��q�+z���^��;��׻�gNv�l�Zr�:ײ��ho	�/?m?7��;����Z�I�a�$a�~�r��Si�\�)k	v�ф�c�c2Ko�<�|R�s�h��	2'cN�,7��HW�/הx�"n��6$��R=��lv��i��B�W��nv!���ar�"���
W�R>	��͖���
��k��Ox[|�S�v��1r#�z��--Ż<w�$Û��@59���
Ȫ��EC͇����B#SbMH��*	�%�K��^�3ʃ0�#�4t��G��V��F�,4���Zܚ']���Qh�T�gɓ��W,>.�wP�.S3�����D�B��
V���I���{��D��t�u��c�rM.��C�q@����b�a\��>K�c�/2"��/�C������,)
=�o���A�`ƭ��D,@�S���x�e*�O���%��7⽹�¹~`gh�C�=줐�AQs<�r�'ؐ�Z�ֈ��g�JJ�x�l�r���$%o�kی@�~�52�D���
��+�(h�Dx�<�������i1΂�J�"�4W;غ�ۦ�V�V�T5�?k���W3���%\���d�XF���K���a=��(�PO\,�ͼ��tE��n¢�4��X�lG8t�o�8�9C �Kcp�H��9�n���B���{��#qA8frd�m[���A��#��1A�1�a�йkp�B##����4<�8|�ei�B�^���Hf��]�›��#7�,�\�$D
(_
b݃�4d<O���63�(ǡ�*a��$�6��/�u@7�d��z�8Z�:��,�A���G����*d_?�WH�!�#��Ш���ØJ`iT�{���b�'}�|�E8n��MoF�&EJ/Z{��+waM��
�J�%anD��[��h���x��{�l(��y�gD{�[��u�L�2�[V�6�5S���)�"[Rނ3�D�(z��ȡ�q�����xX�4�s�d��Zo�)�@��>�e�o�C���/��1^��?�$x�N����`�����E�Dг�s#��]4�6�(R�/D��fc��c�S&QE����V��U���xT�f������S�ʛ,��?�����F��R+�n�&�+S����2|�-x���p1o�Lj��X_	1)���A�][8�ښ�E�+�@��8Hs���D]�5�Jc�Dy��b�6�`�K\b42��ak�i���G~�uWn�{
�{�l劾�t��Vĝ��,ʹ?����+�T���;�ڻ����~�#��^O
R����]U�(+��"���[�)yJzqX�
����S����2��[D��;�O)U�)�g��~���P���X˫m]�`��.ƾ��(�Ǯ����� �q��ٟA�b��,B�nQ���T�����Y����g���e
pB�:��B#��Kڼ�p`�tBٿO������9���@89b��#���@��2()�����,��5t�k��wR��L�-Vr2������O)�a�[Io׋*T����4�]��OS��0<ذ��\|�E$��Ҥ�ٕs<��6� ?r9���Š�-�ʬ��%�Dft�s��b�}����,N#�ǂ�}"���CF9Rk���X�V�(,(*��?�����4"g}�h�(��ό��֘ʮ�޹�8�A�B���ˋSv�2�|?hr�RP\�/
#�A֦�
��O+Sb3�El���zEN�]
��\oa����`]��
~�L
vB��+
U$`#i���LȆ5�
B���
���}ע=֩�
:ɂ�/��Z7#��<?�4Ju�� ;�!t�m��㑛�g#Y8�(%�K�2 �-���&2�jҩ����a!d���չYV��!�{a�{9c
|;}��ݏ�N��\�7+R,��iVr�h��z<�|~���ܽj�ZwC�%���M�]2J�jO�!�f��E�W$W�y��vT����I�j�	r��A[�Мy%�3���%kM�b��Q� �4_J��7T�E���`��t�w����V>@P-� 0��5���"��,�4�i��:rK~O���ԏOS%"X.�<`&���Q�p�U���j̖�؂�)�#'DZS���T�;��V��'6h
v�Oa|c����^���b�U���@\��'���5T��\�:���P<
\+��6d��ő-��Z����&�P���q�C�+��x�2�B�(+(r��W��V���Oד�����=E�a�^�-��/��HQ��6�.یt�1��]a�	��
/�v�QG6�O�@�˄�0���eZ�Pŏ���c�|�__ފ֑��O�c`���:�5-�WzA�׆5w��i'~�e�P��-7����=P���s-U��k9�o$jb)�����k�J.s�ky�,�L^:#.�|F�z���M�j�'`)��Ca��y��s�2##���GJH�?��a���,�d�k���W�i��Z���!�X"c�|��x�NI��p���gu���Ƿr�	i��T��kF�PɧMF]H
��v��J��l�7�cA��4�֠.�y�ρ5�:�~?(�<��IiJ��ff�GϣwP��6f��ڶشb
q�7
3���E$1��
`������%��7��X�'�u>M�8_[�����O���7�R&�M���f��K+��ͫ(0z��}+YX�w�jc��d*��U�Py�+��,
�:�ՙM���Ć�"K��6%�u5]��G��&	7P�Ǿ���=��]t�Tf8���ųhBi��4�q�
�&�LZ!���i�R�;��:[���:��E ��6�`�����f���X��g���pL	=Xe�A�&@qD�[*�@*��[��愧}t��픖Y�#D��=�՚_�z{��X���*��̩�A;���.�����]�-��B�
m���s�0 ls6���s���ᔭ����m�ΐ`i͵	�����K?����tG�|�|r�p�L��Nu׺�O�Ơ�`��i�����B���7�P�|�S�y6�5"P�1��0�M�#�����h�0;�Z?�A8��p���le����1�l�؋U
Ź�s����k[�R���uR+�,@������b�~$("�a_z0D`���~���:"�g�1;�锂�*��,!ș��P�������3�-���y����9w�I���B�C'�nM�p�7,=$�|�B������H���e��@�O<��`�^��:���T�"��Sj�g�{^)�N��!�y���q�m�*��yd���&3w�xT�U
��Bc��pnR+�3p�ͺ �J�H~�v$�쫻;�Sسa�!��2S쨩��.
s
��Aw%�t�np��漇��u�p����&��ڏ�nr�t)!?�o�2t�W��<r��/Cs�w7�{���:�7�}cƉ�a�-�&�}�`5�Κ��S���1��)�����E��3GL�H����i��&�<Dh��;`�BRr���n�>�-�+�=�7���

g��@��Z�O���%�I?��!3�{���)��g�,�9P['�B���iS
\Je���D-�♓(��izyHN�AD��3�m�o�?�<�P.;��Fv�ƫCՖ�b�.��D` ��s�,{���=sN���I����
~Y�d֖Spv\����Ɗ~Wn?��5��ðky����ST�z
I�P��C�dîY M�u�G�B��Y�oz2n��0Hٛ�w��hK�+�{u��w�ߗ�H�'&�?�$�p��u��Zv��_W'�	|I\N� �Dq��_C[��ϴ[�5	��,�^`��"y��(O�i��o�68�LǍ��W.�9�(�Ǡ���}j���N-��>}�,w;i:HvI	�~���}�z��?^��?�1x�q�Ph=l�JKs�z/���Ť��=j{�����d|Q&y�I��/�kZ��i�~�܅��5�~EK���W���ζ�k
!��6ѣ �V�Դr�0���s�*0��ZC�y0��d5�(��jѷ��zl��:�:�e�+�-����iH1�7ݚNȝ�?~S!���ޖ(�<{��mr4X3�z�A&�`~�a�n暼�1N����O,&Ra�Q�E��6N�HV�G�ݙsM�� �Zv����|���	�z�2ư�p�e�O�
N3�P�i�����'��
Sq�[=݉�Q�͘.;����O|vst� ��:��q8�k��
�Ho�Z"ֈ;�vZlф�^�R-�݇�/_�_p�N�F�rt���#�ID!�d�\��U�&#�c��B.]WM{4��v1k���W����R����"!]"�@/Lz<q)a�wWd�x��1��qtd𸷱�Ԁ�������*ɼ
�ƧҩN���ABF�QUf���BE�G��s���J�yOv�S��Y���yE�~pJx��ҁX�fυ��}xȍ�l݈#��3�7�уB�x���K���uU�
��ʢ�m�@�Jv�3d�(D�ߠ����4j���+��(aK=���F���Y�14�W�5�`19�P��ڼJu[�����,~��&jޔ�̎K���'��x}�H�^M��c��,N��Kd���8;V�Hd���>W�B��j���m�^m+~�����
.��, ����~�BBӤ�8�S��8�ߊ��#�����`o8b��7`�ܕ�ŵ�����E�~�!S����{�jWT28��#�D�f7�Gc3a9s�Y���5+s�\�m�r�r
��5�璊�o��oC��}���z��%�&7#Z�W�78sUv�,��e�I[0wQeE\�H���F_0+�FG9�ҡ�’�-�X�q�v�+���u�a�4[2�c0W�ц��$��a"߉��h�N��uUv;�����=�F��ߟdd���4��
�&�;
����8s��e��@,Ipܼ��C>�e������*:�p��e{څ#}����:
a;��q�
�vTG��+"D�W������5�����물b���\8�!�ک6k���8렳+G�n�ż���S[9�����m���#a߉��S��Oj�Z�N�f+#�.�����P@�
2*h<�5_M�G'8̙��-�>m�#����(<�x=�=0>�G_��#��7s�*����
��I�!�@E�+�Y�r�ղ=V()�ψ2�˒��\�I�����>Ņ!��'��xn|j^�)5��,�Rt�u�'�I��M���_�	���=���NTz��>���+�q���Z��*{F�����\;�K��1�P�@q���Ќ���<�3��U��>����i�q�6l�*�n�O���Aa�0�ǂ4=�Q�_~	�HU�X�4��x�YB�<Hpc9p�j�*@�+<���M�B��bc��ܿ�I�ϱI��w�Gg�'dK���5¦�4
{��V|\��9�id�!X
u�^��GاɆ�$t��`R'v��v��V��a(��C��A
=�P��&�<o�c6�G��8e��10Uǽ0�7�f�X&��R�i1�4�e�6�����@���u���g]�G[[��k�;-�h���`9M�󽖯�}qO�x��b��W���o��7�M��J�p�w�n�;mZz����.��%U��~�I���w��q���m����A��uʘ��u��v�P︅�9��$�Qcf���Ӭ�w%�\�Tk>�ʡ�1%-ecx��4��N�Jj;�?�͚������<�R1�ZӴN�8�ӣ$8]xG&���GC^N���������A�o��>������	
;:���r���jCQ|�6;�9�����)�X~҄7)P��#j�C������ʼn���h(�&�m��
FL��JU�r=bm�$g�2@�����"��Ȱ�l@��E�>���V���)@9�Jx�\w���b&��������g-�Tؘ`1�岪
5�㌊ȝ�1�����T��������/\���i�O2}W�s�l@�Dk[e�F'W՝���B��j-���tA{	��!�b�[R
�든;;�4o
���Y;���w.���jo��-*8�V����lN���X���w(�pwtu!o�Lp
�#C�E/�o�F��W�.���HS�5C���HA�|\	
��%Nd`Y?�S;5Z��`�,��΍�;�#A�:=�v�����R�p��x�x����3C���+�Tg+,S8�A���j]�y�C��$���s��Z�F��2��Q�g�Q�:?
����S|�Â,K����[0�Bx48�&i&�C����>�F2
(b~�6,�v��l����;���6QP(!`��}��yBm�p�;���`���ᕕ������X�Q��j��S@�Mߢ.~z*o��,�W�E�e䘌�6�1�Z��x��Y��#����q�U�r.@����^������9��	.db��D֬"M�
� �Y3����s���]�8_x�y�`�Ϟ��j�i����)����J��|"�	�� ��`�m����H�I�؁}�V*w���BWu|�*�c��%�������-�D��/D�=1pT|P
��%W%��yH\�E��p��]N��lٕ��׷΄��~��|�.�?��l�ʾ�l3 �_
N�܇�+�"y�A�t	���s�<�}��*���h�	%��O�]��t�b���ZB����ƣ�a?�W�(��t�)o�n�}h�3��ա�@;9V/b�
��� �ǡ_��" �c�j�B(o"ԣ?�d��)�Hw�1���?�wć��1��?�\磲_
�Ac,E��$��~�Ǿ��_��"��������c�=���\6���	N�F�ziU��^��`�LT�q�����j4���o�}�"S��7N�x�	�յ.�*	��F���U5A��h$
�-����n��؀e�~�-jSp*i�����7�Vx|3���"�W����H�&�\�	⌤釾K���b����\�tC��������$���C�^���o��\^�.7������������
�!�<�G˺�|�h)�dL�yu�x)�?޹�1�&��V�Fj�$�s�o
k\�M�ee���ɋQn����47��X3EיL0a4i�W]W�r	t22��0�Kl�<N��i�V�d���u��"���,���HLv(0S���=���-<�ULH�RX�ں���R��4Y��
���R`8�X
��L�B�=V��g�h�F7�d<xeK��~�v��|]6K�+��
[9�K�=W#�e��|�¡�I��eظ+o�P�όN�.$+�؅��ޣ��B����W��}G�Z$2J�/�P���f$���Y 3�{���F-�1Y��d�4�KX����\�9�AL�6}�Um������-ʜ��(�%��:ч%�:)-&�^����Àx	7��Bw}�UB���>�U���V�p�7�b`�a.�p��y����>���`%c3�R�0N�tՑ����G�P/Nȫ�-EQu$(����3̴�5#
�[ӑ�zo���q�O��@�����k��m�f�W�R�Be!�"NR�-׀��Ysߙ�(ɉ�7R���L�O���=w|Yֻ�l,��њ4|�s�1o��[��]�,Ja��p���D�Q�،L�r(3��l�Z��:�W20jH�^�G���T:�*���r1�w������Ȋs���pz�ޮ�V�@���w?��_�
�t%.��Tt��js�H�O�n�T�,���_��e:#�����Ιs��b�F�>��݅7Sz��5�$���v�:~�f�(_�P���F��N����l�� �,l��(�|�Ϋl+O���P(1�21C����,�&v����$}ݛE�<Q&��ɭ�����)���@5��4e�/��T^�{�ĻԖ>�\����'����� ��\�`���$�J�[:�{�J�R$+v@x��_�V�t(C�uA'V�)���NZr�HJ��E:tS��PT�pbE�"Z9%^=��~1�
�P4<�̣ʢ$����y�xq��H�CJ/0�t�?i�.�Gf��W�<
�l�,�p�űfb�,�J->���tX9�U��ؖ�w�.3�{���?��9����(=����(*/�w[T��Q�x�_��N�6�IV���Wwe>�3ܛ�X�7e�(��|��:��Ui��}W`�lB���fnK$+�ߍ���m��E
4�8ڏ����v�-�ɗo�Vv5{mI����2K���O��l��A�?W�a�,���ǿ�S|�ȞļLmR����
%��ZE��ޫ�&����P�4qؾ��f��34�-
�r�x��Q��n��[d:Ta�z�=��Ưy�k�l_r�b�#�+1��y���e�<(π��i��āWn���jlߎ�,��\ŨmTjM󿷔y?�Ý�)?��Oa��Bӧ(�)��D�U�>��H�*��0M�c�%Q��3�CQ�9��}���`�l�i��ظ��>]�a���g���q"٩X!s�F�;�\̱J��J{#+H�R�kV`I/hg�)d�����ˑ�F,��|A���ɗ�jH��=T�6|�-{�F@��ݿq�(�JfsX��3Y�x�+8ӎ�	����LЙhg���Q��X��J��]Ԓ6,$2C��~M$���x�-9wpH6��_����?�I~�+��ڇ�4�7��Gx�^+�$����E��G���;�DO8H�
��!��XދX�*X�s_�5r����Zd�r�ܸ�������Ey��95�6lԏ��^�x-ճ�>�r	1WO�c�E��4��.>ԓ�5��T1�J��?H���CP<�}:�+'1c�������,��������D�	3
�t��f��79H}]�[�N�b��Bn_���
�ȫ�PzMi;���&���ɷ�����^
�[�+�2��5�M��S-�9�a���4oq��%z��UWm�n`m�i�
�w�7;6����.��f�`�{���R0f�""	�o��?��軖9���~չg��F���Mڎ�ۏO�C_�3����"J-��z�H��T�h�O�������q�9���|G�t2a�)�#��[��{M��U����x��o�#�}j�;0A��u-�6���T�6*�)��M�.`\f���wѹ����P��9��1↝���s�H{�!��^�3���F�����bA����1~Ү�w���l��6�z>�x�Rf3��Aga%�oZ܎䂝�i�m
�D�(8c�g���v�ܲ�"�>�.4�O��QD{y5�=�����[uJ:t/�Z!�́3�[�[p�ߏ"��F�t���.��o��m%�Ntr�E�,�z���ݸ�Y�e?f���к��s��^�d]���o�+t���ٗ���#�/�m���q�ޡ�N�~��w$�y�Ӱ�GQ�y�Au�K�@eØ��|9~��2ļk��K��ir	(%�,�ǭ�@5�}��ru˴m>�L�>���:�F?�¦��\\�,7�j-��e�""�+65�|�]m���J�EDzX��R�SN��qإȔ�RW٣�zWs�F�i(�`lK
;v1��Jo�ލׁW���N"%uk�������x�ӾbR�3������c#����-����xeO�zFUм�J��FnG�m�/Z�8ug�g�'v!�م��f�/i�4��� H�|6I~I�z�i�h�t���-����� �Qdk�D�ֳ8�T��sJ
�u�q����Wũ;33�QfW���\D$�ϝ��y��9|����ڷ�f|��(�����uhxEk-���f���� ]�4�,:zWtآ�i�*ߘ��Y@�{R��ㅣ6}-���ƣ|!
�4b�?�&3�Ϳۚ"P�0�|�-�c,~nZ灅� �b�c��~t`�:ƅ/-�q�'�;b��'�� �Ǎ�)�"{0�[����4��ݒ ��J_���D��ƻ�)���J��1�hԧHe�Pw�~�5+]
��o$�C��}|���rgk��o�x^�%$^��KȂ��&!R�t�KAj��\d;w@�[�r������R@�]d:����v`(q��`#� z���ˆ֊�i��r���a��^�׀�/o��k$pfX�#&���3��s/�3�kyx��Gcw
���M�iM"wE��ߴ�iM�KI€a�+$	����	XLvj*k�~�L���xн �h��6/Y����jsš?�,?l!���=H�ciX��;���=�N��!ύ3�ɜ6�S�~�&�%�2�6�J�&9Oi�x��?��V"���'��X�@�_kLca*����\�W���w�4G�l�Y��p������go#������"w��j�D��H`� �]�w�+Y�����o�c �K��:�;s&!~"�U�g9(1�ު��)��\��	\�����#�-��0p��#�
�32�������x*�XgI��"�:P8�M�a��5Y�5�����M�BW�_S��pi�,jb[2t�8;�m�{9X�ن��*��=���׽B�"A�@���X_�4�Y��_dA=P��G>�G"�Ma�W�}dqiE8��@�X��!D����R.j�TPaٹ�$�V�i�v[-���o�?�E���0�ѭ����$��`9bUp�?��|��Y�|A'A��?�6��P̤��?c3�-�ո:׆AQ��>%��B
7�%��3�����+����&6�
e)o'�����_�C�S�׼��^`�k�J
�`�q�1��N���	�F��L脠�{�#p��gƉ�ųKOoGrp4��Gg��څ�a����OЗ^l���I7I�@������X���~$cc�\M_`��(h�p� ���Ȧ��D�=�k1׸B�Sq����< S�+�2����>0t�g��K����	)&���Q�N�C�u9����u��w�l)K����,�&�O�|A�F
1��f�B4���h�,��>
��?숥f��E�x	�tMٮ&[��|�]�0*r?�y͘�I�,��m���Byne��&�qfnq�w��-�0f�oe�|6g����9�T�3��z�ſ�>�,xԐ�Q�Ff\�t�Z���XC/�bks��:'�+�(H�$R�A����Q2�9���1��J�>��2c6�M�ձ�ځ�&\\���G���.��L�@Fr�.ɷ6�C9W��Éz�j}�;}/��o�0Bؕ�F�8�KXˁ�4y\���3I4N#�D���o���B��j�@�$�V,��C<��p�P����C�����[��<?��]�gD6�eLܝ�<��U���Ԡ�\8
�d��S���E�Ӫ��Z����u������b�ׯ�݄�ݠX�B���$	|�+�(�	���1��)+]C��#h8�!p��
eXN����&k �X������ӐDŽu\oe�|�^K�Ӽ�In�k?�%��B�d���j��t����<�xlw�u��^��a�t�/y���a�ȩ�١1�������_G����cU�.g�H��!5��ӯ��6qux�o}|H�<P�ʴ�(_�����l��$��х��P��o��l׿ܒ��*��)F�
_�� oґ~��s䙚�\�jv�%��=]K�ۋW�,M�����.H��uC"j~� �LhַI�&x�/�o=���n�^��l˕�w����!c���"�*���ܵo��S~+���z�A��C��5�y�l�x��y��R@`��s{b5-ӎ1B��؏�u�-�^f$�h�kqO�d�oMsa��Ҙ�D�r�W�$ݡ�%�_j�K]��&���|DV���'"G�+n]N���X\��&��Z��'�F��C��87Aӫ���}�l�
m�y�n��")f�|<��/��t�8��b�G�WT���2�������q�ta_������HIU�c��M3���h_U�w� P5cR�zY�
�Q�7b{������̩DR��^6�"��&�{T��
D�P^���V����dN�x�5氰��i�vxWA��-�o�o N�Jp�(ڛs�2���0����8�e
n��[�r+��`@$��QOН�ą�` �Bh�I�^rZ��{����
�
�3�֊�㊠�+���6B�B�yh�"�䋵���5��(ڗ�'H5�W��!RɝRA��0��O�B�r(	H��P��v�Ok���vJ�A��`h��n���^��<!�l��+�=�^��LU .d����;��םL�C�jn�$VP�E�BT0�0��� ۙ#������BTs�/X��3����
��T�AW�p�q�k��OxCr�5O>����'U�|:s��I�ffl~�w;������G����|�=1q60�k�篣��]�1Q�)"��� e�׳�W�]�eP�7�yv�"c�Lآ�����C߹��7��e�N�>�m�Z���YR��)D"	�P�s�g��]+��)�! �-���m5���݃��S�8� G�AT�HN�*�$��F���c�u+;��W�U즸iq�=���Rpn��ky�׾��mr���z�w9���P�qzrq���?0Zh?�Q����ڐ�[����}q�J��08Ɵ�~e�s���V]����8#M�g��6[�-rơ܍1uu������[����R�!�?�f�k�V��d���k!�1]��?�CB�aƱf��vN~4>\�5�����9l�ە�z]y�h�lB�sY��R�;��0(o>����ݳ�C�~\U�8O��[\rM[=Ìz��]m�����^���Q�a�j��쫌K~r2��O��W'S&_���0n�%q-*ے��g;gƼ\��~�D�)b��~~*�Æ[�16q�J�_���ZHU"��/E	ee���L��	0�hXuu�Mh�ƌs]�s��*k����0?iom�;>-��1r���JZ��Un�&�-�����0���"6W�-��;��+�\�z�U��o�na;�@�0|I9A� S�(8\���:(z4�d�{���VGf�3��<I\�P���y���mУW��ia��[Y�'���&G��
�����Qi����si۩u�شlTaӢM����n�m]N����͙�R:$����1`�#5��7�}��1 >��������ً@��2�{;F–��SԨ+�*�S��Y:����,&e��E�1�˳6�M��W8���$1y�p��Ͷ��U��
�����˴���N-���\/�ѱ�UВ�zZ��)�Ҕ���neL��1.��K��hq<rY�)�a�:�[̲�hS����G9O�I�>�=@hV���m��^�c�����2��9�(�$["���+h�E���W�V`�w���cr8x�M(�O���NC��J7��z|��ޤ�հ�La���1y��Lp)�������b����D�u���V}l�6����b��n��2v!�$+p{��X���.�u�-�n{R?��F!�FO7Y$��r;_�`�}�qҮ;��W�֊I��x9�0SV�!$�����]	�h��Ow?��L/�L�´������-L���&������b?��o����YC��M9�I�-�V�^�9��H���`�R�A��$���6$�xŊN^qC5�S����uLZ��9R��Jljfx���lv�N/]� �x}�^g%�"u�%�/Э7��V�y�ö��?c�"�6�R�8[���^js�1�ܺ����[(�1�IX�m�['�[��]�c�	�ae�=P1�!�A��W�X�C���t��B��n��s`���F�[�
���I�ɤ���a�P���Z!�]I-�i�
J���L�P�Z�AYj��
Z���nj��A	O�kl���+A��c�}$��l��!���ɝ[8T�UDM;�`��"��,iGW�_��4MA��X�#�'�]^&0�y{�/F&�'0tu����j�^���
F�ԡ:���w��J0�)T��O�zg� #���{�;U�L��g29&j,�;�WP(�~dټ"
F��ŗ�?T;���i	3�� 
`��lh�1�ź)Lm�L��lN�i���u!��=D�ȼ0��H<L��ƺ!}C�W�b)���~NJ.��6�/#aPj8�k��U˔}��`�c����85R-���00	/o�2v�r8�-Ŗn�p|ƫ��t�	��s��wc!���܃�Y��,f�0�<~I)�����@�9���ޏ�K�#��2H�:�t8�E����}H��q�2@1���r�1G��~N��s�-Gz������+�S�b�Ye���=9�v�M]3t�9�.�jֳք���zh���b�&.��
�GR��#��A�g9�0��1�ux�:W\'��?�\B��|#���veF���G9bI�j�1��\VO�76!|"Gmj�����O	ܳ��}��)��ϑ7�;}
�eZ��
��R�C�a��Dʗ�F�..�MƓygҪ�q(o��@��Uͼ�&C�
!1�s��|��k5���6�
�\mtN�"WГ3��,�!�rsx�\��+3��x��p�"aN �9|/v�;��`ʞ�u�3�1J8�<z,����(�*Ѓ��&IEo�!8CK��k4����b���\a��%"��!�@n7�T+����	֙�G�l� ��گnU��Z����w�H�������+!nˊ��jUW����7�rw��k��PЧG��]��=Oǫ�]���L��kJ�ż{T&S�WT{._����u|�k^\P�T�o�G�л�A�K�_�J�:�'7R%`�"��٦*��ڣ���&MWC��G�)�f����'wO��
V#�a!�~����ю�=����H��Z7�YZӏg1X���p$1o��e^�E�F��w����M�|Kb�ۋ-��d���)�KtJ�Vn�6?@8�h��=�*��Uc?��U���������ʗt���"5.FE䂏����P�GdI6���n��r�L)#�w�S�'�������XAɪ�++��HTU��w�V���tv��o���W�\�\��h��:��J�sd�k���˖�e�8��ѷ��i3�n�J��D���'z
<*M[��~my^T�*�@����´��8LIZ����~�	���R>Td�Oܭ��|��� V��=\�%�X輣U#�=��b�5+j5������(B�c��2�����F��v��=�鐔%���{*oO��ƀ���ŞF���S�=�N��ُ��[��ä�%�A���L#q���H���ZN9#X�3]�OQ	2
�_�o^pjάC55��P�3^�1�|0�~c,�f_�W:�o�9 %Ώ�ۛ��X顲���s��+0c�LN�kN������DtI��v4(��b���ێ�8O������nZ��?�TE&T~u-�N��-�/��1�X�eUI�w������ii�IU��{����q��R-PRf�%D�3j�@_�ǭՏ��A�o��};�_�����˧���	X�
O4�J}�i�4�t�����T�q�f<ٻZzӆ���k@��f[�����L�<�r��d�>"�c��gD��jQ��D��@^�f����H�,��y��L���Nw�kW��\>��1��)��ՋB����q�g�p�{�?J�]�7�o�g�5U��{<��}��#��C�5��xN7B 1�J�2�DW?[`�e�׽x�b��$��u�+��l(��	���
e�?ПD�N,4H�*д��nW`E�<�T�:���J���,�ˬ�ש�_YgF3���jw*�|$��om̈���B��Wz��W���C1�N -����+잹z̜��"]Bb�Xy��|�
^�P��HP�*<��m$I����mF-��̨�`n��3��Ϡ�Rs6��鐘F7Ԅ")��Ӡ�17h1AI�,+v�Ja:�Dl�p�D��x=���3��b葳Qa�5�^����״�q�<K�z�A��ׇ�ytLV�h
Z�z*%�Ĉ����.��/ouZ#���;���Fܭ�.��[Bu6(I��z�/��K��xl����z&�Q
<�hy��FM$���i����,X���c�»��_��I����M�!P�T�;�ƀ=��A�rh-(���,��Vx�@|��P�;��|�E��.l���6S���p� n��n����e�%"�Ԉ��o�&-yh!�pBIX�R��1���.�T�	u���9i�(Q9|����~���cN���v����6s[r)ڨ����i-R�0ʋ�3M�q���qq#����f��ɍ��?X��D�z���O���̑?�񅙤�_�����Js��q{����7Q^�G޷*�s�V��]n$�Ht{�cT�ʼx��X�����-��f���4!�$D�$l�
�՟�9�鷃��NW-�~�C6�e\��X`�k
�/V�M�1����K6�m��p|ޞm�9\y�����E��l������8�G�s����ʫD�c���#|����}��:z�O#m���e��O��E�����}�����A�ʕ&x�s�Ʊͯx@%��w�!�C�oY�#_C���D��̴�ir��$>��*�������0���bq�%Ŝ=���Ę��ӿ��6�Q����w`%P��PbD^DgVg:��i�r@](�¯Ua�~	���O��/����.�$���']��}�+��vT�Rf�Q��뮭-�d��W`�H\�A"��G�8}��󱮃.D��
;ڠ���B�M�ɮ�,�@�[�eM�J$1����5F^�7����u�k��~��v�oC3�%�Jd��kP�'���V1�N^�\Jn!n٬�!t��_ۍF����#΀\r@����2^��k)��K=�%���؃�3����ۡ��}T���RD�Q|�o�7ş��I�X& ������iSo�Y7f���)lLg��UB �4���U�Z�q��ͦL�,�N0���M��nJr^#���z��v�xV8��q��֊��cBQ��D|[
��W ����@���6O����WT7�,��	�LY[،�p`e�w�s�RpL`K��:9I�m��C
R?p�|~���UxW�iJ�VY��.�ƒ�/�SAA
�鲍�iQ�'\�m��$N��w�Vƞ��Qc��<�)d|��(/\�����ܿ�/;�"n�V𾒿�L"�jZ$:��2�f��J~,������4]^�#dy�4OoyT�}�[R����~KK���Qn�\f���5�UhXPl��)w���8�3��4�?��{S���ͧ����M��S�[A!Sε�s
'r�=:<����X�d;�V�+�;�x}'+���׎#Q�Y^�@���A9���f�d�*]b�7�b��S|�]�ܱ�U����Y�g��)��Y�v�`�:���
�.��+"p��|'�Gl�(U�I�0�=-�H��"tO
;��+����#�IkMو%��N���ݰ�0 ��"�bJ���oy]������"�)�t�����D��Ň$:Џ��r|„z�(�n�^��x�n�틽E���l��î�2���׃c���q?Œ�l��\+��Ꮎ���
�AJ!x���O3eё��3�l ��hi�g��f�␦�Lr#�ejB�MLxxR�'���ѕè `ؼ�Q������d�"s�f�;,c�e���[m-/��l�0�4�ULJ�M�y$����-��٪}ʄzʚ�(T3���x#p�'�v��%%j�l]!�h��١�vN�,4��2���h�ɣꉏ�DN��y�/A(3�`8$
Q[�F���xI|������>��'q�Xs~͙)�,o�KC��{J.uX���C�M���	xL�k�޹���I�X�V�	�H160�E�	
�)��
���6;ʾK&�b6gF��V��O��{����40�x���(qv����r�K��a��z��{p��L����\d2G�Bم��>"����ދ�W�A$�6�� �.�X�=#���<�*˳��+p8%��	+���)�%�m"�p���R��gpZ"�f�7-?d�5]��wH��k���I"f
��ōJ�*h��E�5�\����W}"i���u�9
�R�]L�/3��g���r��Y��V�[��ͺnv>���nJF���lJ[�7��>*(`�5����=��[10=�Q�Z�l��RFҬD>'
6�C�7Y:x�Ch$�EnD����!�8����?�Q���&�C[�}���	��R��ǚ�1d�j��" J��'ҹ�4&��]h����;T(��c�>�#�q���i�J��[Oe("t�[mv^`S���/w����^op�-[D�5�y�M�M�AaRR��&�@s���
�(��
T�!�>���.w�X��)6c���L�UER���'�6%+u����>k��Q�`����aEQx�Ŏ��|�Q6��[y�b�#,B�Xᩔm��BDvm�B����E\�+��T3	�����!��=AD�
��
�N�A3,�;��]j.B�)6�W��ƥO�H�͘o1Ԇ�� �=�
ҦR��]��@O�,�ki���5�LD�i�\p-%��X�s�0��C�/���W{(~�bA�1�9:[*(Q�~)�������m8���-+��Zx�
o��
+��;~�� !4��E�A��MhO�Q*pjl7(�K�1
�2w&J@S�ܥ�;����{)�8J�{1���b��cS�p�ҁ�sUN�sGLt�5;L`���G�u��A�0��Pvm����q��U��3�Y*��4��g�r��
��jߡ��㡠�*���*0��M�*��ji�M�m�{�{`�T�S�n��>Y
*�J5�$T�#?�-t��^2u�5+a��t��qQ��!:�\f+q06� j���v
�� �
�э�k��J>���#}���I¨.��������e��ѭ0|>u�-kx�a�0�޶aۈmD�=]�⺕��6>z����r�a-� �%2�aV)K�@��̭��x��"����7�_���|׭OyM�CvfUm�Wg��W]�����v��;*h�uK�+���$H��;�y��j�S;�fv�b�(Db��P�aCϥU�bx�gV�A�F��n��@�y.��@��s*i=�Y��S�asi�[���]m���RP�D`��Gk�;�(u�qB9��4���X�Ge��$�X�'O��$q5���}%k@x�����&J�}-�eҍ��F�I2ijn�˗fs�k��
����:��b����A&��� A�oH����$�E���6�B�l5Ƈ����|�ܱk�V� ��@�,Rn�B(��`ik�ΓP��M��w$K��+���(���7�����B۝K���Qٿdҍ1_3�vs�t�`�t�o�\C<= l^�y4�,�
'_��9�- K��q�jK˫P���g�X�w�O�s�ƻ��J�:+
L�r��zד��L�
u�m��q�A6k��2D�kN��݋Z�1�S��)���[��T�c��:��i~�>Z0c��ڄ]A����]��uJA�Ǧ��.���B���_a�_�}mL�L+s�Z�8"�"�		#:['���W*g�����}5���-}�GAZ}�YRD_�I�\�޼+�}:���g{;���f�� *]�iG�E���Y�*l+��:�7�+g.̚�e����{�b=&X��G	D�Ë����
��`�m�w� ��W�E�T-���)�ɧ�Bi�9��Z�#G2�ݢ ����3���?�N�0����2T�˒�ث�i��[T4��/��yl���)����_�ў�6�%x��.�d��������~�zJnj���\�aõI�7~���(qn���@�+�����)�_ƞ�/��2��i���nD�Z
����8�
7[��
���{ ԪGRYm�~�6=e�RU�?�W}�|�Z�5i���h�|ϣ�{,�RH��PeB�+��G��qw��=�*�s�9?7����)i$�qwc$N^�	:+�c�N�Z�q��-3+�#K}�j�6��,��hߍ������aQ�W���.�
��È�}Ȥ&��
��qsqS.M���Go�,���f�d�aH%;+�6��bH��N���k"j����\��1�e�ZW��|�=��a$`7�3=��Ű��*���I�.Rv�(��"�l�V���)��5ۙ����9���'��S����?���x*�|���(6��*9t��ps����.Fj�`∨�7m�ȳ�N������~b'`�
 ym�����a��{
pYl�(8�Z>�z|1W�Sw[R��3LǹX^��l�O��q�™����tgU2��xE7
̛��i)����մ�-�΀�Q}#���?�W�q��=�& ��G^�o�<�o�8�"�c'(�
�w��ߦ�,92�g��/�,V��t�W��<��@�=�;�1���6�N��b:1諻he��t��3nu+G��{2�hY����w~��w7�����6��	����e>B���Ej�xc�QE���9�$�}�5sO4W�0���᳇�ata/��ylG(Nוk�X���^�̱��Mc/�"�����S�'8GD�t�9�@�O��5��1��׊�g�kD�1��4�]�&�2\�!��7)ԴAW���VN&)Q�^|�x�^+�|�����F����˺
U������
�������Y�8�9�y�W�d¸��]���20�p�X����z�zI*V�ɑCT�����
a)��Xկ��vuv�_l6	CU`�Un��*;N�0�e*�K�yxb�Q_�%g�H�l@Gd�P�]���2z]�2�켂��2pa3���='��v���:�<VUΈJ�ɵ@��7�P/@1��/z,�+7\�7�R�<�
xtVL�K�����:��K�e�hpC�wd����Rc%Q��5�˗O�%�O�t�������66�E��Y�����Cw]��O,È��wB��n���(���������Tj�O�>�׻4��}�vZ"s��F�ͦ��K�8P�8,G�+�Ob��v�6a��9ɉ���ф��B�
^4F�0a��aY%L߽T��&�3j��[�^������kr���w�Ph���
޳i�(�rwN�y�"��?I��@��7�>a˸�

Bԅ~Ja��k�
�g�D����"��E���H<�.�1H��Cr=�ZQ���۱D(I�X6Nv�⤺O�p%�V2��S�aT�S'��#yH����O1�~��f_Uv���8���~�U�MN��
A�&�Z`���TT��H��4�a������m�ô��ʹ�[]
�ل׃�@`�d���]�;�q'SoWG�o��!�A��`F�,��B�\���Jȳ��_�Z�*�d�ɶ`%y|����c�TF&`�㷰�LE��RG��_D��ۖ��Ӻ������:(�����7Yk�Dj2Vυ����e2�ge���/���*k�S��"�yFR��d�f�q��G�ĸ�kW;�!Hѭ$R!⭙�^O�C����^�@�y�l�e�f�~��%�)Z�Xum��J�}@*ǔEx��v�o.��2pf��wAm�%Q�Lʞ�
�R.��l5�?w���
�Y�@�^H��Nc��A<�R�ťŦ=_�k!�\��[��\[Q�=�Oa�2l���2U�J�GЪ��Q%w��D\��{���P������R�P�Z��=�U��,F|�Nx]��eI�(Y��Ċe%5����
S!�Iΰ����3�M.��<�S���=r����am��7b^�6ߐ@�C�/	X��il��~�e�ə�
&_=$">�FXH��*�w?�'�$�j���+8\�@��O
5dG�m���0���f�x$*X�A�o�Qu�V*�w 0a���		K�_M%���a�>-��̍���`�:=/:�2�vq�\ ��ƌ!�<�@Cw(����Y�F�L��{$)��9��H�e��@Y92�l�?楁>0�óM(��L
#c6qwM8���Z��Xʦa�ER%
y�AK&�:˳�D��M�>�*}�� }�k�ɬԑ}�1�#B0�`Y�H\MhUy��nLf��{*Ȣ^= ���}���l�Vw<��cT/�8F���2&S�e�fi�Є�b}���VL�~8� �h��e	����l@9�s�t�:��XG�o��0	��`�.�)rw	��8��	N�"��/��+~�M�$��	�y���;MxO[I��9����Q�U�N�mN���/��p��O�y(�(�)MV��ɲJ�̞Dh���ۘG�W=k�'�����u`Q�=���>f�^����j������9�X����6E$�Um�~��o��4Rra�C�c
D���S�OSNcp�u����&w%���a͘E�������4�|b�op	���GϠ�Ӌ�8�j
Y��x�:!4iڠ{���H����g�	Vw��)Y6ϊ�3�� ���0�)�nG�)4���u=QF�1e�baE�c�
Ԭ�_Ϛ`��,=&Ԏ���Jˈ��*�Ov֒P2uoi\�ʊ���u�m��IC����!���W؈"3#܁��|��!)Ԣhx�>-��m��nka_�
������x\�G9e��널���r���آ��t���FH��/�4�uVHD���G�V�Y�ƭ`�#���s��D���!��M����?�k�f)�Eq/��4�9��9Q��!-���D�N~�Vt
L���u�]D��������Ž1�+u��ԋ�é�u/s���/]�ėXz���_�)<��i�/h�,}b�.�D�W�B+f�Q����P\�jc��Jc��xɃc. O���T�T�=џ;v0-Z�)m�Ry���}�V�p�DZh=�y�|���,.spc��+��zP��:R�-����"�&����7G�,y����P���G
:��D�A��
�r�a��j��'�-��T�pd#��$�7��M��X�!x�Cj�Z����p�V�G�Ϻ��k8+"*�>�p��3S��/�m� D^͗���=�hAU�Ly�g�/ח���F���I_0�
�ʚ��_NJ(�64e7*�7
!��c��C�R����Տ��!��}M�G��'��6A�ݢ+�y�(�#4P���X��C�lm�Jsv�y�g@Z{��هq'�n�<�E����-����
:����_@��&_�6a��7�×QC��:�:�a����}\}E��������c�4�g�eF��_��ꕦ���i~�6?.�8�B��;���?L�B:D'3�rn�wl�QlІ�)���Ah��<ÖDa�'w#x��2D=������Pm�H�ݺʶ�E�n$^40��x��6�eY'���I<.ƍs��#�k��#��}��H���$r�p��f�L�'F��1�����Ȱ�4q�Z3&�{{`�n3�hYK�,��;*H�x�U�I?"���Q�A݌4�BK�h�έg�mP�9vֺ�Ǵ�3�K�w�~I�F��Fm.��L7g��A�z=-�f��'��q��1{d���	�k�)S9�qG�`��r].���1���pFV�_�M�^[�3�fC,<�ͽ��O�1W�/�5׭Y�4�(��J��+C�QIu*-����ww2�ڻv��|�Ŝ�ثd&񮾋]����^��}uY8	�nA#+�u�c_îKP��*��8�^��"�����Rb�U�EN3L3i�t�^X�P��D�x����gE[j$i�}DT�J�U}]_\W'�#Y��‚�R1����AZ!�>�$�>uEX�&Ӆw�X� s��+��9��/N�X�t2��~���ٍ=P���f�T�Nj{K�7��Zߡ��������lx	�X
����:��lAf����y|Y}��ǪF'd���M"$�5म���r�{ɓ�	\z
��èk(xp�9�pH�CPBY��|1�Eب  ���l+Ǭ�ґ?튆"�l��X`y�|���FRQ!Q8g�̘�����+��*#��?���}՜��1�,A��y�d_FnK|���W~z�k�x3335�Al����߄�L̫\��
J1���=��)DE}���¬���+m�:�z�V�N|�쏶���d*�z���[l�Oΐ��
�2��UAԎ`�Θ�_*�mw���G��7w=��=?���mXT�\0(!�jH���L����m?D�@�9��r�%���w+�c1�z՝8�o�n���I];�vn��ᛣEq�Ri��Ő�謑�ol�ҕ����C�h�|i_�06޺�	�+�i"&_�s��Js�76�2#\�W٤)�\��z��q3�!J�H��pS�2�$�5`�ր�Ɏ�w�+Fx�eT�=	Ւ���N�l-��k�!bh�̝���
ؘ�ᷥ҃(�,�0��Ӓ�#ж1v&��mY�3ݡ��;VVG��CCn�Pژ�e6$��_��ڼ�ɞF/K�I�����,��O;A�x4�]�>P�9����7sf�3u&C?���#D
�{ħ�����A���Q�C��J��l�+�'�ވT���M�M;f-�OR�ظ��m������5�U�[���_S��dL�Q�ʡ=6~V`3
-�B�]W>�6�T��1�{�>�!�mT�-N��^7��+�~P�^"�N4d�&i�����m��o�⇗��$� �׸.��JK]�l�
����Ft�5��{�5���bH}���(/boU��@C���ɴ=����Mލ��3���~��>.��`/�f�gsCz������H1���!c5�����E-ϐ|���}��P���O)l/'���J�2ig�&�ҒqF�(���v�
����(�K�z��{4�n�� y
�"�#���~���ïA��d��~�+o.TXMz��_��S��@�N�/ps+��/��oe��D�t�����⳹\���ٹ��>r-0*��r�p.x���n�(�8�&�]p(�����YY��l���#��B��t���Aa	�h?������0��3,1�����Ҡe[���f����/��f������ɞ���g�4F,��c���-�t>��>m���Rw���hW�!�|���!!H�bv$�f��
j�1�qn���zG�˧a2��އ5�A���E5z�&2Iײ؍ӝ�G�Y;�/��gD�����QU#Q��L��#�`��#�)�Xd����"��T�K2U��hN?=+����0HhB�=�&"7^/�ְ*����;�-iC��#<�D�Մڱ���2�Nn����?�!~�8�D���Tzȫ���_�{(�| R�WE�v��T�gd�m��l�f�;�P�;�U���(����n%�I,VSB��T�{,ϟ_�:���~�
!G�+���-���_����Ʈ�z\-��p^2[���Wm�&ʀ�wN_�XjNvE3���௵�6��e���O�%Q��T�t�r���b�+�2�HN���7`���y��#F�C�0��<�\�,����>)�t�����O��+��@�A��ȳ��s&h��M�D�|���
$�J�a$a��`���ɲ��.{�4��;�LV�f_����{����<�M�hN����E�1:$�/h��c�FDEWPE��j����徯��>݀��%�w�S+���'l=�����_XI:�����|RdD�䕴}�$�� �}��f�?�d���~U�J��E�z��{�˗���1/a�}s����A���R�x�YC�"�}j�]��6���IĜwaw�ģuRV���!�N@�kc�1��<���+*��E��|�K�G��oK�)HK�?[�3��Hf �����2]�����9:���G��Rm���,���ڤ�r��RW�&p�f2�0Y#d����=���7T���b�
�v�����8	�����'���(��4'�h=��r��Q��:X��Xl,���K�c��3y�b�PH(i���t��C����s-�����y/Jҳ��O�T�D��j�����e<�T�B�"ĝ�.3��"��D����l�j�Ï��hBx]�ǎf�i�C=�)�fr��u�e�Gm��C;�^p:F�K��s��J����
���:�>\>�_*T*d�U��\�0Ǿ��k����N̡��pӌ)��%E�J.[!�+�р&
Ѱc"���&֜�9�z�`�*��Z||�L�j�Ɠ�Yd�ҋBA�G�2A"߈�vk5�s��V�$��I1Py��p4��qXU�Z쵧v�o�Z5 �����S��Ţ�	@2f6Uk���=���8��>�~Ys�A.�"l
�3�	;l�Դ���h��&�6Hj���,��"YU�f׊�҇�C��K����H�TV��C��m�H��W)g�?���4;b,��FW��w�}
�xFm�V���v6��7"���~fvpF�RE�GFYe���8bx��
�mJ��Π"�ܿ�g�L.�p��G�D?�qO:=���d��!���e��F5CMT-�y[���c������k7$}��r6^|v+�t��-G��=d;2��|*�a?�??9��aV��%�`5��H���UXs�v��(�yG�d9C�趗aLo�i�}.�������
o�52�ȗ|�w���Z>�eXc����zz�G~~��_��͗�p�=��K[:#��!H�`���֯��׌��:p}��9,���6�L�:��l�S�64���O��:4�?�V�}��h;y����GW��U:r2=�=�Ίu������L����'��~nA��@�n��u�f�t�A��y�+�n�V��t�!�~�i�z>9i]$�	Sl��q�o�z�C���H��"��s�S����[��_���gq�mV%V��<8����9�n
�gS槉���?�eO�v�U7�8��[���B:�5=gc�σ���]_�T�����`03�-`���/��qp9���o��7o��w^����i^��t|l�	K%���ϊC��?@�e�<�^~?�TOj�nQC@7ȥ�Dz�X���񒞣�P��u�d���-7���`��m�վ�LG��oƘ��o%1�XV�`�wz����,[?D�m�/�8@'��J.4a�O�-L��qߕ�+̗�	��
��D��'�~�4���4��2}r���[��r#�ࣔڜQ�ul_L�����؃-&خJW�<$��?����
&\��a���w�a1`A|�͚4�A/�h�_��Z(w�z�ս�ݜ)�F9
�8�K�����Z��Whk���
À�9�k�X�ޝ(C����;���=�� I���C!���)�1��C�*�4B1�tđ%���x�f~C ���ы�[j�h,�:��(P���B^F,T`��/�aI�i��a�W�/�E�8��p��z|F����k��ϡj��d��}O2��t
z�j�U!x�~q�"|��f��oK2�I'~N6GW���c|=�,DV`z
���c��X2����>�Q���B�4��UH��l���{,�y�������Ѫ�ؖ�N$;Ȇ�6�'��$��)9��}��"��?�K@�`��z����噏á�kUE4D��q���r��v8^��@�3W�h�<�+�ϝd�P>`�yTr�Os+l�G�u�i<E+��)Yw��0b��>u^ƛ8s�L8h��&|	\:�He�KY7���띪r�"�"I����#���gK%��C^��׷� zP��jx�:]�C�ݫ�K�Cz~\G���׀��:����I�l�h9�A�$ۇ��X��� h^�Re�$/�>6J�}�>��_L��rX�]x���&N����Y� ?l�>#�M��N��,[6�,����S�R���­���U�`�>cw�3��^��դ�/�R��Hkb���ˏ��
�hN0Ko�[P=��&9!���%|g�a#�<�����a��>^#���ɢov��w-H�xuH�W,1
��8yג���𑅬e�/����jH��s�O�p�Da]�'�2�qѷ����J+���6C���F���ٓӹ�h�"$H+W|Ƙ)dA�SH�e\�;RO)�veW櫋� ��(2�=���V�r��N���+f>.ϔ��/��R��@�
��Y��’*�Y�z�A��:B��b��H<�w{�M�U���\��؅I�P�O��q����*cʇ\'�h��i$�u�BW~юG>YВ���(I��P��G)��m<�.��r����e���S���x��P��8=q�w���MS�z�;���_q��y,8�
�ТY�_��ì�e�C��nG�5�`��"3s
����H����GDu�q�#�fGx��p�����d�iF��D��K������Ҥx/I����N�u)���N��3	 ��7�W	�i63�edǬp�ߒ�'�s�q�^��8-�k�������Bp��7O^TlNo���–6�s/�'�VY�ғƃ���XZq|-hl����B�h���0�5���đ��
��M���.Bf2KH0�[�p�~G63L"��>���O���Z.�uL+t�Zw�-Y7���H�8`�?g'X�Pۻ$ϞO��.R�O��y��Gr�� ��+�.2
�Z��A��,`��ԍH���H��g 6c�&��7	<#+�"��V~����F����J��t�ݟj��Z��w��D�t#M"�`�E%8V���G�?��m�b��<r!
F?��K�`�v_<W��)!��I�a�"��}�[<f�O` �K�}�Nc6=�`>�8ni����c�*�$�-��3z�����<�aS@����@�O~4�w�O����@jⵆ�0�h;f�0���MWV�R.�xH�}���K呩Xz&䑺�*��1�?t�%�S����a�9�~hv�;��K)�Jx^�e�����/�N������0�]^�7w�k1��`@ڒ��	1u3�p���P�@��ҔR�wN#"��%�]��A��n`O�	��Fz�WA�PWnX���W ��lz�bxb��N��sZ�
,:_��o��ު����7�fu�xw�߱ް��`)�~]4_�_AEF�5m"�fd;R�|����H���.a&	����QFtM��M�c�Ė�:��dȚǚ��x���puD����'���"����3섹�!1Z���2!��Xñ��r�?�Ug�hy�ê�+�"ћz��س2�v�c�e��k�����w��)�L��)�_W��)H2�$�0�3��bi\86R�����ݔx�T����0j��W6K���o٩��:�pƎC�Ǎֹ=ÖE����{��G��#4ӻ>x��n]4zp-�~�#�z^Q
b>�cft$����n`OP���v���S$㟜��Ɉ����(������)���geaH5���jЦ��D�����1��rgE�?W��$19з�����x_l���d�ܕwƃs�}VM���rK�R���Aj�A?�R��I�c��mA���t v7Y���/R[m��W�+�=����:5
�PP/��0Y����K+���H@Q:�9ZwԔ��;O���)@�U���{�#����z��1����_E�v�1�J����;^�B��zG�{�~;�4Ѹfu9�+>5.~l�!�]���jjθ���\����ܩ���dW�X7��^��lD�2��A�Gr�����t�f��X��z����Cu�?���@��9yYEZ�-�`�3���-@N���Sc��Ru0�v �&����hT�^sj9�#>]��e�F9p|"���7K��U�c72�aX���m������8b����቏��ꣲ��=Ƕ3�㰑��������
�$qvLB�(��_OeP��۴����u<��4�y?1Tͅ�Zp7���a~�'����{���?������뾜�z�Η�:��k{i�I\��z�y���$�3��W�x�+^;�2�ǎ�o����~x��
9��q�[�}�=�k���[��_{3��Γ��ݫ�~I/�?.�C�<��<ߕ<�൸��������U�8=�=�Cw�����%�z}6.l5y���yЧ"IU[���%�Bpe��a��MW�\�7[��K7� ����A*���wH&��6�\
�����a���9��)��J���a~�L�~���r��#'��A�lxN'��Q�L`�]�n@��W�2�)���|V[ؕoŚJd)�7}�#0Ӛ0��*�@-ck�����NAmĬ�	yN,���M�Y�Zc�8B�n̍�VQ��<��J�*�v�¡�,hN銻����X�u��n�s؂�d��X�ɾe�]���{����z
��`MЮ�C�w&��gM�o	�!SV�j�~r/ݭ����
j�w',�pUP�P���S6��f��i6�^��xN��2I�i�t-��Hl�c+�W.<�E(eD�/aL��4E�g7��WWզ����b��֣
���V�TF,ͬ��c��x���a��+r�[�jx�d�v[s55	K�o�9
��ݱ�ep���[t�@���]�r�4\�� ����S@X�:�/M���~i���|mdl�Qh�sG`G�g��ϨI�|.���lN��>Z�t������}B꼬������ɪ�h��h�pf�Su[!t��Ъ�r�~`/�銂
���]U�zSY]=�\�W��W;���Ӷ�b`����_X��2]$,  t�ea[���~�!��Fw�yhamuco�Dc-���l��q޴�"ߓaô���fkt��6=4ڍ����#��������`�T
��Pr��5��~#|�T慾��e��Bs5������柱G�q!�z��0"_(G��+D��i��F
;����b1�����y�F=�9�@�J8�;l�YQT�VY�4�����*)Tx��}AN��O�^Yq�Y*�s_W��(���9d�������)��a��G��b��eD�a��/�H��
*5�L��+��$��%��m<��Z�N�N���n~���B#�A�A5tuH�0��j1��t��*��.ex�������GdWO�L8�����q�`w�x��ϟ�M��q���-<��_(�M����l���A��a�2n���o`<��u�@�
��FY��q�-�^]d�*��T���e��8yZ!�b��mN�#ބ�'G�Ϝ����?�W�q�g�Ԏ@���s��ߠ�a�Ʌ'�G8
@�߼�88��KxX:x{^)���qK�,��Ml�1-w��{��8�*��?��wr^A]:���.�R.���f�y�p7i�\����R>�.��'gg�k�Q��`
��0Gmm���B;���I�;]��R�<0�:�1�m��`�����۶�]I�3�1ˋ&��
0n��E�`5["���1M��g��~���7i��ց� %�S`֯�e�c�&L��������/&�@�j���£j�EN����Ӕ��!^j��_�p�*��r:�`�+�)?������J����`�:���-�
�X;����JU����<���{;�(�H���t&ɞ�B*��8y��cE���z3���:�@��R��w��$�<b$�C�Г	�`g[�:Wڄp?7P�_9�\J�w
�3+v#�E����vFYDtJ��|y������!a0_��>S
�
L\vO�.�vG���K��;�̽}�Rvd��Z�rw�xY�īp�
^ku��K���J�Gꀧ���>Ld	���eߌo�~���cE�d�O{�bcsoV$�"���*|+�:�GN� \�&��fn.� D8p9���}\F]��VR�Z5ꙴ\t&��9�6ˉ�_��,!��
>տ��ͽ:�_�ؠf�V>Ϋ�X~B%E�c�0���3���&4oS�����}��K�i�;�XL�^��|�G!�O�v�l�z�	.�\���E��z��<Һ<��6�3�Zd��)B��l3��3B����y�������+���Sv
�E��d�_肒h?Yy؟.�-It����	B@\�vD���Siv{^�mg���Y�m����C�]�-}�{���g�Q�ݾN���Wd�z����
����E�,�L��gr=���D�W�u���k?jQ4/�Pb�Œh���jT����"P��D�@�Uхl���a�~��|k)��!ⷂ��N`�L��j���+:�4����D����mI��Q�)�c5"�#��uP�����Y��Q�f,�<��E��SB�:29J ���@>�`6�{��C����{&"Tw}�ǿNo8��{t)���5-؆����[�6hf�+����A|c�ĕ���o�%��j�C�ݎHzuZ���U(�Q���2���↢��H��מT�HC-��z�
ΎSDŪ���x8;+������_<���,�;�S�ex���x_�)(&�Dy���uv�44m����Қ8�AL�R�^�*�v�!��t�c�>7A��ӲQ	����\�S������2�lB���8e
��L��E�A�_�@Ŝ����wm�B�]��t��yV�{�p��^��a��
9���x�c*F���-�C�@���9��=�&J&����R}����'
�5I&��׆+N}�s����U��3���u�9J;��)��3f<ԝ��|��Z�J��Y}��b��c�,ulx~��Jس�P1��P�
+�z9m��������ʎ-�IQ<����r�ʋ��:5�1�iϐ+��Z��=�m�j����e�p��!,�ŸbPG%vrY�\l�k%C}�+��~����}����&�7�lntA��N���� 0mL[e=�w�2��koB�P�z���@]��i�GQ�h���fb�m�,�©�n����w&�܈�����53�v�MoKTM��Y�8�k�ά�$J"����V˾���=�W?;B��Ps�L�!{Ie�8U�񏭰j�p`����O?�L�t�
�Ȅ7�lk���A@GO0�H(�9\�5�ܤ"�Jp* !S�^0�m�t
���6����4�M�N�%�o�����y�,�R��J�>�ל�DTV�&����c�Y�֟���<Do�/�|��B�s�S�M;�,\e<�9s5�o�.�3�B0{`MJ[�
A�+�����8��*�U�����C�>�C<�̍�j���7�v<k����;>�Gi��T��4�>J���60�!�f��*G�زnjǃ$��a&p�/IuUe�ߒ���Lj�Ň'j��|��uJ����>��d��p�,��‡:[����O=|W���o�T���[#���MR�����������H�#X,Р[�k�8�/~-�!����;����ԘU]�s:�(��886���mw��oN��ڑm�MXt�р���v3�>Y�z��]#f-,vZ�f,�#@l��v�3W�
�u�9��֣��
M�z�1΀�j�o�K9j��-��&�Ӭ`	�v;�v@�D��l*�S�q?��
�P'��@�^ܯo�n+*�7�E���3�{��:�x�zJw�]L��Z1�J�x�/����:{h�R����!П]��
�$W]�&$�$L��{�`�Mm������tΏ>���}�l�xL�>�w���K�Բ�
�v?=�0@#���[���$˴әX��`���.�6�Ƽn%k_œv����V[~�0����K��$�NDl�(�4Pw��mdB�ҕ�i�v��{j��������]���gFSp�},>ń��
�S���E���*�#?"��B"����:M�-oO� ��[�{�tj����y,h�r��e΍5� �ž�|Ы�0��6�AO?4{�v��8M�1���s�+�c�Xdq���kȻDSU��|à/�-8/�q�)?#��"ƥ~�	�>L���LP�oߥ�9$��8�b�o���k\?}ϖ\OP?9g7
��;�M�P�ͪ�Jv
*"$y�w�"��&/�^�9��Bʠ�J���#�7��a[��Ta��Vԕ�����Z����o����t,�.�&��|(�3���K��5�ǝ���6���;����ϧ��]o���ĺ�m�$c3}~]�-��Gk�0+�}�O������B��a��
�Z2�ZK����4}Ç�}[�we'g�*eRO�R�I5�:�L�1�Ր}��|CE?� �t�=�"�������7��(������*[x?��퟇=�`�E�������I7��f�U1�$O��DpG�U�8?hR94�M�4�H}��8O��P��h$kF…��#���y��]�b����~W��%T��.��
6���򀽥��o���&|~�x�+U9���B�
�/ׯ�E|���m�=��	�dž��W��O����5pf���ڷ��2��k��yܮV�vB�v��T�mc�.���=39i_�π��o�#'x��
㡰� ��6f+}>i��
endstream
endobj
32 0 obj
<</Type/Pages/Count 1/Kids[ 17 0 R]>>
endobj
33 0 obj
<</Length 10/Filter/FlateDecode>>stream
x�c`
endstream
endobj
xref
0 34
0000000002 65535 f 
0000000016 00000 n 
0000000004 00000 f 
0000000077 00000 n 
0000000005 00000 f 
0000000006 00000 f 
0000000007 00000 f 
0000000009 00000 f 
0000000251 00000 n 
0000000010 00000 f 
0000000011 00000 f 
0000000012 00000 f 
0000000013 00000 f 
0000000014 00000 f 
0000000015 00000 f 
0000000016 00000 f 
0000000020 00000 f 
0000001335 00000 n 
0000001497 00000 n 
0000001530 00000 n 
0000000022 00000 f 
0000002470 00000 n 
0000000031 00000 f 
0000002598 00000 n 
0000002763 00000 n 
0000002900 00000 n 
0000003039 00000 n 
0000003177 00000 n 
0000003319 00000 n 
0000003468 00000 n 
0000003517 00000 n 
0000000000 00000 f 
0000205895 00000 n 
0000205949 00000 n 
trailer
<</Size 34/Info 3 0 R/Root 1 0 R/ID[<8c43871e49b2cd2deb7274482fa3e1ae><7e037a56fb26aeb76579d0e8100f193a>]>>
startxref
206028
%%EOF
%PaperPortPDFversion%PaperPortPDFversion3 0 obj
<</Author()/CreationDate(D:20151013105625+02'00')/Creator(PaperPort 12)/Keywords()/ModDate(D:20151013105749+02'00')/Producer(PaperPort 12)/Subject()/Title()>>
endobj
17 0 obj
<</Contents 18 0 R/CropBox[0 0 432 606]/MediaBox[0 0 432 606]/Resources 23 0 R/Rotate 0/Type/Page/Parent 32 0 R/PaperPortPageTitleStream 47 0 R>>
endobj
32 0 obj
<</Type/Pages/Count 2/Kids[ 17 0 R 46 0 R]>>
endobj
34 0 obj
<</Contents 35 0 R/CropBox[0 0 435 609]/MediaBox[0 0 435 609]/Resources 38 0 R/Rotate 0/Type/Page/PaperPortPageTitleStream 45 0 R/Parent 46 0 R>>
endobj
35 0 obj
[ 36 0 R 37 0 R]
endobj
36 0 obj
<</Length 812/Filter/FlateDecode>>stream
x�uU�r�8��J�07+U	|��8�NN�l&�\`
��"A�6�������_dHX�9��P ����C�o�
���V7�6���Q@^1h��BPh~,�\���~/��0O�"4ߖ����ms���S���~�)ᐕ9���(�юp�S����W��G�x"�9�#L���ܸ�ߪ���s.��e�Niy��R�I�tYI���TKc��AI���q�Yy�,����V�l��y���8e�*XP�h��{��Y+���$rPJh$����d���]���&�Ѫ^+m�q�5�nvn=|�nis�}M	+��9�����߃{g�Bw&��۽��Y0
�Џ>���!��4.���L���2V֤|&~�oQN�Q��~�W�N�{X�;m��H�#��O8ʟJ
bL�
��y�s9F;l����w+�l��]��
�6R�Vl��K-�����f'�O�2�\*�Ya��4&�~	�Q:����֘5�<Zk��:��}�^�A���|� ����|��؂Ӻu^��맷�I%@�S�����`��l�s��6�Ŧ�p2�� T�r�)u��fO�_WEK��7i�8�-�`��m���[�4�o��6���׫��Uv��u��t��Uz��@G�=���S�<��~p(g��y�Ac���vnS�ڧ�e��� �(�g3il��x?�3����is?t�#�l�X�i�9*�/?!�\�RwpO��v��0�b�h>;��1n����XEX���u��r��n'N�Z��8?�u5����/�#>�j���	/�	���W
endstream
endobj
37 0 obj
<</Length 59/Filter/FlateDecode>>stream
x�3P0¢t^.0+ȝ�����́�ɹ�\&Ʀ`���%\L?371=U�%��+����U
endstream
endobj
38 0 obj
<</Font<</OPBaseFont0 39 0 R/OPBaseFont1 40 0 R/OPBaseFont2 41 0 R/OPBaseFont3 42 0 R>>/ProcSet 43 0 R/XObject<</image 44 0 R>>>>
endobj
39 0 obj
<</BaseFont/Times-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont0/Subtype/Type1/Type/Font>>
endobj
40 0 obj
<</BaseFont/Helvetica-Bold/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont1/Subtype/Type1/Type/Font>>
endobj
41 0 obj
<</BaseFont/Times-Roman/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont2/Subtype/Type1/Type/Font>>
endobj
42 0 obj
<</BaseFont/Helvetica/Encoding<</BaseEncoding/WinAnsiEncoding/Type/Encoding>>/Name/OPBaseFont3/Subtype/Type1/Type/Font>>
endobj
43 0 obj
[/PDF/Text/ImageB/ImageC/ImageI]
endobj
44 0 obj
<</Length 204601/BitsPerComponent 8/ColorSpace/DeviceRGB/Filter/JPXDecode/Height 1692/Name/image/Subtype/Image/Type/XObject/Width 1209>>stream
jP  
�
ftypjp2 jp2 Yjp2hihdr��colr,res resddʀdʀrescdʀdʀjp2c�O�Q/�����R�\#"wwwv�oon�gLgLgdPPPEW�W�Wa�dKakadu-v4.3.2�dYKdu-Layer-Info: log_2{Delta-D(MSE)/[2^16*Delta-L(bytes)]}, L(bytes)
 -54.3, 2.0e+005
��
���ߧ���?$����<�3��H��fu��a���-����k�B�Y9���)��7����^�/r|-��A�ʥ
$�dk��Ԯ�u��}���&�zZ�\-�H��8�ѕ�j����<�@��I'ݷX��r�a&c���I�6�Ё^�Zr�|EBn���l|O�:�J`˾�6b[���ҟ��Vϟ�&w�`c�ifK�L�}[T���k�p3�h[�U`�>���	��k�����X�Y.y�m�LmrƠ���*K���`dQ�,�TP������=��F��i���O.:�m5�{p��^n"�8�vٛν���%�o	��J%�?����eD�7ƅk��L�����d���}���b<��?N�6�N�x�I� �"j×���	L��FKn�)͋��Q������ߙ	��v$y�'ȧ�"�����.(��b�wX
�8�X=��4��^7R��
��"t�`����<��JW̛��^�x�P�~�7�X�"^(�2~BB:��������k�֙!�cQi/q�N�\���S��,щ�o�;q5�F���cV?&ha*�
>�Z"�`��!%H�hbq�΀
�j(�2�5��{>#��6��/��
]�� ?
d2Uv��Un�笔qW��B�b SWiT�9PR����Zc>��y�ծ�F!�A(����p�P��-b�12��c�Cy�m����Cr)tX[�����*��juƚ��gh��|�;�v�0<0w��7$$o��Ɗ�������N�C����;��������~��?�x�:)��d~􍀿��.	�<��
	��SCL�E'�"I��yM�y����nw82�
��|�ge�dz�m��[!�')ɯ
����
��n�O���=�C�o�\O�>ō(V7�♭�u�||,�A�0���kj�|�z\�{�Ϫ#5�Fԩ���
dzK8tcO:w����S�j�&]cw�M䆻�&��M:-�:����7�x�t�@����]B�e	�r���5����)@�M����w��DzR��x�A��(t�~‰!�&���s�{Q�m÷���)Ҳ�o�, ������|��a�^
m�‚F
c�MfV�)x+�>۵� �������+(��,,���Lm�E�'5�"x(**-2�)5�P
4�뺢3'D�tڳa=ds�����~F���/��_FX�<Au�z'�i�:߾��+.��M��kK'M����A��C��*�lO��!��2�	R���M����>���k��e7���"�b]G�R�4���H�n�{�8��p��1�꼭2G�tb��{��y�*4�j�|U�Zb*��g�<���}�	o�e����5",}�}���@��/���㰎)Trd���mH��J�e;뚝������f�A�؜zS0�tUj���P��g����e�>�f�r�kԥX�ҙs�?����448�H���DŽVW
V匰� q��,	��Tz�[B���8@��
�:�^�I�\���U��pF���%.���Z�"vҖ	�H�DJǵΧď��iI8����{��]Mg�����qG����A�
���3�j��T8��j̕��/��K�D��t������>A6�\��,c��7�7'�A���*��x&]Ha�T20؉ˊz>���SM-F�:�u�raA}�(U$�L8���}�Z���[�H"O09oy<��5�Q�|&�@ʍ��W(�=� ��m�O�Ѥ��K�1�V�����,��@�S&[#�o'q˽�w�!ӤK8粥]�0��A'� <��J���=�c"�}�ʜE��q�t��;�vmG'�O_���<E|��/�|`�vC���dg]o�3�`c�P�z�4?M��9<��0x������Z]u p�=Ԗlͦ��]�<<�.�K�ta\G��&0]�6\�!��v�^`�_���>������f�!w�\qE~��_�3J�K���*���;���f�~�|�'�3��45(`����N�X�1��2�tC���rR��-�χ�Ãg0hh=���b��(Y[�E�R�x�zh���"��1��:�Ar�"�|EdV1��cIh�DZ��Ⱥ}^~��to5�$H!������j�f?�~x�*���޴�E筟B�a�Y���1���o��~7�$w@�U,�=�`_���S�
4�+̗PN��GV�*�;D��K˅�N�%��KD��z�Iz��zz׃��������ΨW��t�hj#��ۈ��6���^*&O��(�6���&I=�v�ܚ;����=�&�|�i�Fev�E�*G����T���kJ�ճ�ᆸ�G���V��<�a�c
c���T�폊ƻ���ԣA�f	L3|���M�R�u�O!In��a�d�Q�m��K��&��k�bT�٤Է^��K›�3�?���D��֨)\��q��ƃD�����[����w��lᦹA�C3����9����A�ï9�@g$�Ť	�D�q�eS;
�A����Yw
��3�e�"��'p2L3�@E��]���$kVs�#z��H�WJ\<��%?A	 �l�*m�	��5��X����ur��Fc�|ϭ�����J��9!��W���b�7xꁁ>[�/���U��"y��.b�pS<Ā��_��|�x����oE��<����g�MW��y���V�!6�ơZ������V-M�� nƲc�6[��Y���*V*��S�d�A���
 &38%r�
Ft�q$�:�AN(ߵx6��!��T���Ƭd��OD��w���	�LJ|!�3�����2����´������j.��=�Њ�p�bڴ��{㤭����7�
r��x%������W��]�_�3�b1�wyi��7
V�\����x��"Ѷ���+�!lWh�4���߸���,�{砉��=���t���D֨8�#3����3���/�Ϧ��F:R�EK}*��aO6�t�[K?�هV(:�]��
e��\���R�Dx��fz�b�����E%S�ZV�Am�Y�f�od(�Cr�̘�*���ZFm-�	����ܥ�%�MYA����G���|��_i#�";�_�j��gK�2Ͽ��z6��@����S�о3��6���ѫ��`�.t3e�zx�O�2n��zg��l�NNN�4��O�A'���s'�D�zX��J�,��k�w��m��
�9y��}�I]�#=�!ؔ��7�C��<M����}΍PB ��fo?�UBW��'��F�¤�5Cq�w�x�\����G�v���-'gc���'�/g�Qؓy%�I(�O8
3����g��=��Q�ehB����
u�8�S�L�9�yU]B:7IՕ!��b�X��,��b6ع'8X�%~����a6�W�V�Rr�0��Ƽ-�[H|*2ā��mw22mUC�SM-n�u�0kZ-a)K���֏Dr ��F�|k!�ָ�.�Z]\/���\ko��p��#6�EE��S�ˤ�3���7'�u��Ж��t���4蚯��9��l��W�D�gE$�?]'��߄up�w*O2�	cNpa �*"�aA�9�U儶Z��p�X�sy0Y���J��Ν�GA%�@��y���MLK���S�~�ʬO=$N����K��yͧxu��y��<K�)t���a�G��=��П!�	�Q��Z��qd�rY
�~E���~"D.F�.{9
k�i��8��2�V����y?�!Yf��?|2k����q�0[�*���o�D8+��B6�w�8���µ�Hs�i�
�~��p
�2cT�zCD�j�)h���m_���w.`	҃<x��Y�b��s�D[��'D���X
�ʌ��N����C+i�D���E��Pl��'���-��2
IC��jv�+�F��2+���E��.���n�6BkZm
��[
4h� ]����\�1f�*�I-����*��Vr�r�D�s�X���{j1T �+�i��w\;�f��þۑ!�B�64�o�V���:��?r̤Y��$}�xC��V��h�4B|G�	�|�kLD�I��(c(�T���R[cR��/�nI��P^\�15f;��6�J��M�a3P�L�{�ؿ����r/����|�MB�V�-���g�:[��"P�R-F�Ҫ�j:w&���M�KRCal�����]��#��ī���V���
�$'o� �uze�O��>��qcxǚ_�۔�+��!�ү��"5M�"�3-�?8L'Xa8�,k��n߅ܸa�%�ύW�S�6��ӯ*�G�T)�e�8���)U��ñ�E��,m��k$Ko,�� \5�n��m��?=l�^�I�y�M#�����~>�Q�z���G.���tvݖU��˿Y����ћ���5-���޼JCE��CA��D��F��tJh"�{�%{6>B\�R��Q�&N
�-�/���/�jOU��i�l]
?�.��on#�c����2��V�	Q��4�����+B P$ZS~�������;P�����/jv����cHu��:�(<�g���3��E5�y�(�k����D�;�8�e94�/�Dp�ݩX�4��8��2}��b�}���P�w�'���SuW�bs֡�\�} ?"��:%/�\aw��?bѤ����M�8cWb�޵ȥ�dn5�@HC-���g���~|��U��U�z+k�D�o"(�9�C��F�`���lt�������Y�V$�݄[�\h�.��A�]�����9e��<گ�Ǽ���q�QΖO�G�|�
��]����ƇG���x�J�!�d_�b�K�QT{~Ovd�9l`#beaj$b�v�ぁ�o�O��ą^�mQ���c��$��1v�Ľ�B�;{]7j7(�‹0W3�0)�����Ζ�B��FH~!#�&�S7ʚ��KstM�a ���l[j�N���]
N|�bh
`��Q��b���U�h�.JƋ�AT�Jt��~+��@��w���q�PseBiWN=CS
@�e��Al���6�#0��@Qe��P�/tff�S�KAָ���3��V�K��5�D槛�,��%�<��w]J�#�џ�����>O��/_u�� �o[��7��Iy���K�-�<������@ż���@��t�.��#SI��1����KK��f��,�6ܢp�
�c�TĚ�T�G�ם���p�
D��YR�P���lQ ��bX��!¦��ŧ���+�[
E��	��u���(6�Ôc!$��Wl�O	�K�ӲOG�ߣ}!cq��Q�w�j�
?z������//E5\��:P'�.z�]�K��w��
�pR&	�ނ��IR�c��p�#6<[Ϲ���3	̏-��~��LAm���?�(Ůp� �j�=�¢PB=���*+\>Fu}�"��_�2V]���@g9^�.�Yʆs�T���
�g6��C���i�ʫ�N	O.>����K��_�?���ɇ,�ӛ󟛨���u��hG;�E��/Y��A�*����
�A8��[�ۼ���+���X`���:\v5E�
���Y[W���I2�@�&��4��3'����m�-sh�
�a[�[��r#���
[��M�*�+M���&+k���J��Kp:�I`VvӀ�cG��"\ea��Z��m�<Ҩ��)��
H��4��v�3�RE� _�s���l�e���!�H��yC��c�j
Z�Y>��	�Ro"�=���O{C�fM����O��P�n��1�?s#�R`�a�ݦ>��+���r����=c���<&�44�P���a���܁���R��ŭ_�3���3�'��a��l�fL��[~m;�{��0`�6���@F�['I�zfFp,��pY��ssP29�(����VXҵ08by�;��"�P)\<d���N�B���g%�=�S��KpY`0Fu��=�e�XRG~�*�G�6���h��K�<$�Դ��sUV2���W�ڻNM�A�<��`Oe��VVET?Q�C��	��\t��R�Ti����&�و��:�Rkk�Xh���k�Rih��N^=EFF��r?n�Ѽ��T.������9���ٻuT��#�ɘ��͘���q^⡺:T�T��#�O��;�	��3���%�()9M���OC����8�488=i�<@/v�uRx�i~��^��RLT� �����_��V8�^��=�/B�������Ȅ��6��h���Z+Z2�*�7qN��0���N���G��[г�(�t�O��k��*R�ŏ�!�eO�%�{]�P��������r2q�<�{���]���N"'Xʁg�a���K5�u=���dIU�����ZS�ItЫƔ��Kx�		b�X;�vSV�Z>�č+�t���W�bz:��T�-������[�_&��6Q�n]´@��jl��F�}͘@�����{DŽ����t�]x�(��`'�?��⭒��nO����=���q���y���(x��_8πe��I?���2�_Ye''��_ї����ǰ�Ҧ3�
+g{�(�����|%X��=��I�,�]�v�W#a� �p�\j��3����@	Ε�vr��Sj�V��zw�oI�!J�[;(�wF�����+-�˿Ar�<a�xFC����\��f��&��R����|Uȓي�΁NH��lҰP���\���n��7�h@â�?]�^|rgqEf����9MҺ#"��~7�s��h���F�Kp$��>VRFۊ�8<I�A�� ��V�ٿ���\�#�l*�G�0��Q��z�� ��=F�8��/�U��}��T��(�(
Ǘ$�0Av�7?��û�Eֿ_�d�J��+B�J0�T�,|T�(00
Y{) =�TDqY��M�����5m9t�h6��=�[M�@z�F�ɑ-)5�����B�'j�]P�2Tz_Ĉy=���Φҽao*1$�p'a�$��#њj�㎝�5��U��g�ӓ� ݚ���h�vh�����FW1;���~0b�x�c�o ���E���}	xg�$;�NL�Gf�F�oʇ���+1&�&E%�dv�����;KH��mE��
��?�j,)��"@vJ/�"�h��'��d�-������2��6�O���e�/�`�����<��;3�U�fxٴb�.��F��u��E[�,_3���

A��in��m��ɕy�\�4��4��D{���2����h9T_U\�ދϩ�3��Y�ح�y�q�:�Q�^Q��A=�۾ܵ;�bN3�T@B�LBwӑs�!ֲ�������{�m�6�4c
�/�U}��šoǥ����.#2ۛ\��q��g��� c����%k�/���o���y���'��1 �E&��o�?��kN�r��T?Bz=�!�i=I��J�2eZ�+(:;N|��j��M"-B��Gh]�R�ȳsQT�� �L��KH]�a��$f\�²oMu�Mz�}��;��j�kk�1c�4����O��{��|�Xa5I_4�|�����U��ե$���B+:�<�|/�k=tL����>�K�yIE��S.w��9���,M�-/�6A�!���3b��1�.s�'�/�)�6&]�^��������V��0�M2�/�J��v)*h.�@r���p���U읛4�Ǘ��t�t$
Drv�Q��~㽻P�Fh��;��Lp `�:�q����t�B���lW���8��M��g�����n���"B��Qo�!��BH囬�d�-����G:*5p��G��K�v�13�����j$���G�5��W��� +�v�<�w���pf,��{��F���L9���h"����DB�Hs���`f��	��Γ��5f�;���jd]а���+���b
_�p�j��,?S��̢��Z��qf���ʴSh`�N{]@(���n�ֆ��Ml�n���☻�Xp�r�6��i��(</k=@�{p����/1D��|"S�3Ս��1�6�8���pl�_Fȱ5q��2?edCT7Jfbǎ:RSSO5��a��\O�^�5��aAB��ǛD��6WW��c�0�!u}+UL�2I2�
E�I��_�(������v�)��C
e�|�W��xB��Yb�W�)Q�ۼ�s�
� l$�)_�e^p/a����)\v3<�'�6#W �$|�I�M�[����l�U�E00�·�ќ��4܁5��f�]�ost[<9���>(���<����M��l'-��(1��9��JL/0VL��d�d“o)�M�?�Ue~EX?��''^�LF�|l�Ba��@�93ı��†q�պ��e��}��*��&�]�%W��/�q~��i7���F6�l������Uo֨��`��a����{3�%�X�(1g�N�F�5_�sp���౥u5gNl���|�-LӺ��:�ֻ��@��^rV�m�Rc��(v`��D��>&��[���P���!�r�*0�:��_7���!m"�����R��֢V���l�.��(i�{��V%�R�|^W�鴧
����/��:ij��\�I�G4 ��"S����$,.ߩ�Ϩ<G�5|�{�$��&�6	����A59���3x{r�Y/��
���a������ᆲ��1��[oSv~����q=z�C��P��}�TSvDY�Z��G��e$�Z��m��Z.錏d��<��y�k��G�t��Q�g9d�!O@��MaI*��&��~)�.1��{:������p�Q�j� d{��R3�1�Mww9��n�;�`�+F�&ި�N9Fx��=k������sP�(!�'K��S��r�~�s��c0]J�d�3�!�6�Do"M
�3�����T�X~�7���a�4�DM���RG�jc�2+-��@����91JFm���y|QU���e/1N��Kc�.��2c0��.jTR�q����ps|!�t�6�d��1���L����Ͻ�m��rA��ʼuh?_��iH���<�[�A���ME�=+J���+��֎�D��M3
�����b���s?�A�1P�F2�#��d��7��m��o�tt
D��+���s��U�ݲ��tb��Ri�km��em�i#s�a+��;�!j�lg����ǣ����d;����VCRl��@1�u~/;ߕ&C���}%�8b�����jL@�ѹ�C��G�c<���
xڎ�.	!|7V���݇D}
Y-�݃҃�,�{ز�*��b<�
{�Ȑ�I�ot
���ӤQ޼��j��
���OOJ�|4XTmSώhU�0�G�H�Wrf� V� X�%�U���q���@j.�‘u��_|\ָceI�ǩ���HC���ѮDr����ټ�Ku�A�+_A�\K��ʖ�s���^j�[�L����K��o��a9>
uw���� �<�埛&���r|.�a�wi�>^�enL�\�F�.|
�zH��#��g(r�x���T�L`/*�H�C�	{DC���.���>��ʺ�|�W?��9A%��@(��p�-f��]]1���*��6�d����B���$������?��{��G ���+�0�@x7�^���ђ�ʹ�Ӫ=q�߬Ty��_� ���Ǭ��[�H��cOܚ�y�'I��
�� ����Zچre�2�S��V�z1�\���0A���2�,��9j>�v�6��b�VB�J+�O4�+���?�"&��ʋ�$�\ޫ*#�e �YQ{��@ ~{=�]�x�
����=w,2s���
��2 C:���?�[��fzs�1mB���e3�M�5���5KG�kڐ�O�.f6ֶ�+`��ˬ�R�ͯ	K�~��~���o���J?�ǃt����-���_�/�z�=6��c�P���+�ã�E�UC!QG�a�j�H�W�@D����?�پ�Ǘ �����n��
c��eˏ��B����f~���I��-M�^����2pHC���ȫt\�����w�n����ޭ�HM��8̼�(��V��pV�ng�.m�
b��o�+��+�}mS���*N'������	��uł����8Tϳ����63��{N���b|@̋2�٪|�k�*{Pi�c����@"��y��H#�H�~"0tW�Nj�b�gNp��W�܌|9
!�A�߬K�o�ߏ|L@*q��oҨ\9]������޻ad��Z���o�E��2/��$=q,Y5:�T0eJax�+�Ӯ����SĺZ��|��)�@�����#���ȫ���?c�}��bUAK&�
Ap�<O^������3?�3��CѤY���(�C����A?	��̨ܐ��ԩ-�}��EK���o<q/�z��j�}ձj�S�����d�f�����;*%��Cg��T���e�(�%��K��������u��Z�m!�;E�4}���C����UDr��#j	�}�t���9�aԔ�Oc�D����G��T?	�<��g�c[�E8��#����u3����?�N���_nܦ_5�6i�������|H��2�f�6��	�-��)nN�H���H�2�O��b'iߺ����h�ǐ��R	��s�AO�����:��A�����k�;�ɓ��/(p�5}J�eRD{c�? ���M5ݶ�&����Kx�6�)����l�]h�K\އ\E;V^��M�l=\�*U�	�xH�ܯ�h(��
���r#���$L��&�3�,��'�g���_0�EO?�Z�|���ֺ�`���u�:z���(ɑd*����L��R'R��~��DZ�?�������w�o�{�Q��7��]���q�f�0*�+3
�Ռu��}@~�5�(hms�g��U+�D�k�d�̞_�5	#7�Ih4B�7Rr+���~���Ub�/���̖��&YC�|���b�E>[��WR�)��E�U�o+^Z��:�4�Ɵ=@�%�O-s��c
����%_P����!@�'���4_v��a����;������1-�e�'?I��"R�!�J,��/"C?�;�xj_
�j�U��;1U�?��]Q�(����(�1�W�v� )�r�1�~����>��`��%�D7Bi(�xA�p�ͼB�jUNE�ةh>�­2TL����a��P�j���u�L۬Q<�[�CӛH0ū٤r�Y�Շ��8�r��^,C�5lO���0��_�e�Y�a�&�o�ܠ����VM]8*.�\u>��
R�v��p=9yK�ֹB�j��C��N�G!����V#���Φ��aVj�)�8H�@O�+r�d
M�e;ߞo�,��h���!s�ַ�r�o_R�:��� ��!��?
���Epɗ��گ�*�,��s�o�0��&o�0��k�=7A�׻z����N��4�>JXVF�M���mC�;������Q����L0��w�K���<PA��@�Ɩ��r���g�[F�����mj���C�oΔa���U
t��:iOh���q��K�L����K��xw ;�A��l�R�H��������&��I�0]
�����c��
�4pX?����1^�'bf�{֜N*��G�2k�R�Z�8�T4�$’z�Ų�J[�1k��.Z�����.
lP��7��6{�l�m�����Wԁ�1�
@�5�>��F2/�Hy��W/w/N�u�͐
l�GGt�ۄ�4���tߑ&�!)<:���A�P�^����/v�\��y*�Ne��E3�D  ���7�4��̄;�q��5�GV�)�x���� �z@$��p�w
+0J%��B|����Qq���9N���!U.��Pꗁ_E�v�0����󖯇�ܝ����ȩ���� ����{NJ�#�U�Pst�'EuA��K�2��}vV����̀���8���S��qDwb�%�dž����]r�9@Z# %YRLb���U�8k�����<jڸp�wR Y�z��
m����G͕+�mI�x.h��r	�L;�h;�5l}	Zm�����V�'pB
{��X
�,��M,Cӫ�T�I���nki�]����7�ÙE��ek%G6�	��`�Z��sxj[w�xw]�KN�2j4�3���Ds�
�<�<q��լ{#��M�����1�R-�q衑���Ԕ4��
��%��h��J��Xӑ���=&��Ȕ��sԔW`��5X�έn��"�����$+�<)K���K�����D�B��e�ә��[��N ��p�x:=aJQ?�%��bܱb+é��<t���FE>C-*�e����ӹlxr�ʡ��}ܭQ�ݸ0�-[�X#�+����9�_@͟1�q�	Id/�t���h��Ȗv��:�1f'ǫ�
"�S�}*�-;�sd.��u��p�4�r��h/�r`z�R���8���X!<P��p���^5�#�����=�Jw�˯8�<z�TF��hz��3�%'lv�����n�'t�P8���T�tT��?�a�c\F)�c��_�Y*���%�2�ͦ12�x��8���D���2Y�5Xh�!�j�%�J�?��� �FD�!O<��ߑ>9[/��r�;�4�M�–�V��v�uyy3?|r�W��̾��_��d�z˹���� �ʢc�@J^g�E��^��K��W��M[-,�ګ(Ɩ*T6jɝ��•_���1���MN�w��@�(I�VХU��p�Vv]	��ˤ�â��(��k�ʴ+��:��X����x�-��T��%y��zu�i�~��CO	��J��c��h����
��CR�F��s��ezXХ�ʥӄ�$�m���(���v��ŗXg���*�OӶ�ʇk0�<�!�%�s*��@ ��yhg��k�e��e�r���n�i����8�v%ڲ���BV
�XH��cZ�B�w<�SDP�T��8a�Mg[�������6�8[7���ל�N�A�r�Ϧ�0W�?��Xb�0�9zwk�`ske����¦"
!Kq��ʼn���`'\׵%��|~��\�b}YE1�B��k�=D��A��k͸�Ņ<6m�����V䔜�t�t��ev=^�΅����D�Lu���S�-p��Ms����9�|���U'�c�w8e�]('z�K����2˞�p_���^��$h70F�	�r�)�	��!���͐��|'�K„��)�Qd�¶�Dž��]��_]�2b(Z��8�a��I�k�$�2.��6AkU�͜��lu�5��qj�!A=�"ғ����P�ݫǞ������^F�u�`�nF�l��h��)
"��j�w�
��V��@�W����`9�f1� =�E2bu��\�R!Nd[���1o5�r�}}�}����p!+e���?bS����y��3�R���O�W������?wғ������������>���_��R@���x?�~0��0�]Td�%[�>�<u�Q���K�)�_
��Ѩ��e�\�K�n)N��Օ.�X]
?ۀ��UY��Ŭo}+�O��.���k#��.s�?)������aƷE��T��)�A�97qIlo�P�W/�M��8�9?Fܴlq0b�k��m����2�h���Xܘ�Q`)����w����A���l˟J.�(�;xq%��X��/�XdW+K4�]�{ɳ�T���[�q�S���&�.�%.E���R�o�q����_��!Vs��\�OǿY��
 jЄ���yدY�C�|Vmk���Wa��9r0��|m�U���z�*xv��I�-�1�
�Cח��,�B�S���|�Κo� �S2H�``�s54R�ěӓEV���mD�
���d<��(�c�s!�Gҳ��v�|�����8��H��xA4�(���w�E+�<�\�M6bd��c�h�1�y���8��;Buc��"
�+&�jg�g��C�͊��Q�bSȇ�������k�����z[f�Ц����yx�.e��4�q��X�hz:f�aC��E��&Ց��~N��$~�<,�C6B/�%	���sWgO��S���s6!f.ۓ�[��.�žܩ�B�=�%�J��>DL�
�`kE^��'�>�}��n?�t/���WX�Fc��@w�p�縵,s��6��`_n2�ϋ�#£	�}��{W6�?�����p�D��!�lSu����r,v�z�m9��C:�V�kI/_,1M�C]ac��/�N�u].(��s4!�]�력Z�CP��6M!�U?��,7�=�'�,��-9��So�@�	b�"j;��K=lќ�X��N;��kTL�"�Pwzk%�n�n���W��&�sE��׺��\ʑ��#�#�/���dD�:D���.9�"�&�����&C�{��O�q:���p�Tҝ��޶��n�"]��RnZo���*��u^%��΍����2��� 4Y�q�G�����W~v�N|���պ�Ħ���;?w�b&�+t�'�1FXya���(�ژ�c_^�*.i꾮��>^����e��Χ:�f��§�yTp��Q������F�͜$�
��{���d������*�A�p�[<SP�a��6�֌%^��C`�ղ��>�0Lj_���j(�������d����u}��-����~'�3Jm�S\�h~�Q<�O!w�ǂ��n\�~
���
$���Bp!W;����_�h����F�V����K�ib��|)w��b63�=�-�^,�H}
w3�!<��e��.��j�럨���Cmβ��Z�^�6��>��Rӽ����e�D�#���Y�1�沮���`T�F3P���|	m⢮=����E/��SN�ad������w�Kq��k,6}DT�^&n�f�
C#���7�`�#1�1SλRČ|.iY��Ʋ�OA2����->y�3��ę���D�W�ʘ���4D
�ha4�Qn���"'^=ԁ%qx��f7p�Z��.��kYl��������Cr8yy���u	h�Ad�C���P2>��ի�y�w���Χdwň�"��r�˞����͟l�Hw�m��g}K��):E�c^�T��[��DV
/M<��d ���>���i�?O�k`9<�
���#�:o&ὀ��}��z(�#�$
�h�7:��g��EddJ�=$�F_Z�)�YA�Քg�bxA��zLp�M�{ ���� a�nߒ��������.�ћaw���BT��F�jh�{��`���P�P�$���]��)~���OE��[*�y��T �;�]��K��I�u!>�����FX�i�&H]Hn.�*n�$Ӝ�1Z*����K?N}��Alg�ej��E\B�����d?y2E�Q��DIgF�(
j�=�][�FB�S���q�>������c��SR5av]�!�2��s�Ľ��g�Y��%��7i�;]��~�.P��*�6TLJ���UB���-B��e�|�3��˰��*b����ZU�B��܃~��ԃ�_<0�6�Ԥ��@��Y%��~��8���Uȯ0 5w���d�yl��l���+!,��=[����CQ�5(u�l�k`;���Ϟ*&FO�آ��-َJk��"W�������2��ҾQ��w�zϏV�@������e�ڤ�G�������k�%��#HC?M�O�>SC]t]#�8�W�� F��������P��}B��0���L�>�*A{��ԙ��aϊ�YV����U@������TM[�6I`_�8��2��N2�w���Ri
�T�BW��q��|'Wb~�n�
B슙�	���ľ)i�sT|Et��V��|Ɲ��ֲܼ�B�A�|F
�i�D��W�Ǿ����>�����$�RbBԒֱ��z0/bd.gm�m��E��H_%4}פ:�v�^�`�c0ߛ��a#�*L���������g�O�5b]��c�@;n|l��E���$�+���dڵ���1|��
A�X���Ԫ�56B2���u�t��Eb
S/۰��1Fk�q��d��Vg�AJH74�gC%LE�F��?�NH��t
��6Ѱ�����#��Uk����c�r�3_�jw�ꦧW�Ru��:pr�e��`v��A(�n"8Y���e�q։���Sq+U��w�3F��Ӽdoz�#P��YX:���i��Wn �Szd�l�)XE�􉠍?B�E	:���V��~/�9���i���	>�}�CO�Ip�|A��1yT"G.!�溳�b��j~xT�����{q��q_z�/|.2���4sE	�U6�iLl>�{���XB2?f��

7>8�1}6�,�8s���ʁ*`���p���?�l���6��Go�����v}-Q>:\tp=>��ǚZ��_- zc����2��1?6|���Ȏ�g�W��J�Gz6�h�dCۨ5�'m�<@�uE�A�ý�8h2�_G���
�[3g��]��kSz.�O!��z����Q�W�'y�4JKN�Ϟ8��G��W���'��7\.k���[�)��+G�^k�d�G�3���R$�Hr�Ƥ���$3�*�bQ�Oj������2��f�=kЖ��P��@���0��CX>z'�}Xs!`ݻ�Tc�yS���Ǘ�B2FߢXy'
��gҙA���Q�ʨ?�-uC1�����^QQ��C�Zs$꯵���)����Rh�A��5�e�$)+^-�	ω_�M$��OU}*R��U�[��M�W��o��ׅ�
��pVj�'3�lQ��T3��m��:���u9s�E����4	�6°�61Q�ۊt���;7��~���C!����iA:�qZ��-o�q�����q�5ݟ�;�B�b}c�$�-�f�Y��0M�e��T�ɟs׋kzElq�zՄ��no�@hS'p'���$�ë�!�_��g\�%+`,��Q��� |%��O��z�͋� _�`G3��ި	�[*B�k*'
�K��	��R��a!����J�-�h�HI��*�ͯ���g��_wIP�pA8Ԍ�\9Q�S1x�����Y���0<i�>`~
W4+��-��
�egZn$4D>�g��F���ސ�T��h�0�CA��y���^�,~��F	-V�Dz�9��LA���z+��w{J���)$�8Q���kϼ��c��Z:���1�Ge&f0�s�p� �y&l��,��ev]��]@�۰�A�@�ٶ�}��sH�A:Z��U��9�^@�WSB��B��5\q{�ň�;�A����t��r�l-�x���j�hI:��#Ru0�6&u�4�Z�\��b��Uŀ�)�L/{� ;m0j<3^�33#��lן]VA�ii:b�_��5e�t��U���Q�1�b�pUC�ҟH��*�R�3�4���ö�]��'�ŽJ�0�f"�PZ��*^�ь$�����"��/ϝO��f����E���n��\-�r(�J�\]
�{5��q����
[�k=��L/VSY���\Y[��~�*���=?�@R�G}5D�pw�DN�6��'z���&JP��8�4��R|qiճ�t쨢�/���5��u~����裄�J6�����x1�PB
/�9R���u,Vs�}k����4�7�ZL2�}����q�i#�Q��]�@�V�{G;��TiMlw��m�`�+L)i"+>�����r���y�so�
S��;c�>j���!�.�8�?/1�W���A~r�X��d�)X���v�)���	��fOfpzuۻa��T���>_L�f��mi,P�>�v��燣�uc=>�����/�we�_Qҡ�������P;nx��n��赏�5�C�|��G�C��`�R'A�/��8��ˉ�V*��_��aNd���F8@�Hә����lc/�~�3(���>��	���b�VJ�@���U�b��ꃜfv�(�1x�[?\�49��l�x��2y;J���#�j�
&��.��`��8��7�?R�`^������t��jh�I�{K�eΧ.�Y�`�:��74���٘Kݙ�rm��S,�q�s�_s_�I����^���WQ�P�Ki��;����-,���]�� �y����4XT��%32u���Z��"��I�{�*�S���P�� p��L#��P���Q[�b��2��4�>����f�OP�;˞� ��y����"��H0
g�g�@|�<�yh�@��Ĕ2�o�SD��E
�6�|���ŊE�=�,�A�"%';
�ͩ��rVᾢ@}3�|����h��d�	xN���7�WH��o��h�ۉ;�^��țs�$�k�˰a]Au�z�1ӡ5B���Lؿ��Mf�vý��H���bh�\�-c�Ď�Hk��
x6O��^Ha.�y�
��$�y��[�J�LV�y~	?�+\Qf��a����)����+{p�[$�)>�Hn�����̻=��wCV��z0�nѐE��:�B�f�J��@�[�oP6ڇ�]$\��,��j��9@�EnP��� �ԗ$�ȗ���(/�_�;7Ȟ2m��8%"���1��<:����[��k�O�>����`�vN=2Aޗ;_�HTO�RG�{梻��.�U[�.DЏp �FhԠ��U����{Oʕ~��	BM�g���)��;���ۺ^C\?r�:�y�s��Ot��C����\ ��nt��c��mA���2�cP�ɬ�.:��,%W8�$��d
4�Uz���oq�QV���s'�N����u��ĩ7�P���J��:��{��8A=m��/,�]�*�	�����}➏pI�gTC�BwO��N:��ͧM��B:b��P8��(��W���^FaJO5I��6��s��N���u�Y��S�ˊq'�p8������;[,D��d.x�p�`�g@!�}3��e��ܬ�,�\GLa�ž\�u�0�=��r;�.6���M�Pr1Q�����:�.A?Ms�C� i��B�nդ��qX�+iHPpCE�T��3y� {�Q�_���vu_�O;c+��$��@�`�sI�ə�� ��Z��$��X<c>4��]<����ξ��;�/u��Ud�x\p�n�x�h�3M"��<��}���ρ0R�����>���{�4S�L��B�y
�QR_֔�b(�Oe�3��4��B����(xU�3oQir���a�y���(����ۭ��9?��g<_���Ը)�CЭKr�"�����C�����f��9|����%x47m�5�ڥX_HC^��5����ֽ��`t��pI��x�i3��LX.��;�"�E�)މ|_�/�����0�JSk״�P�tѯd�nY��5^N��
�k����,�Y�(6���56�+6�;rKo�^V-��j3��wt�2 ��q�.fia�)���x�a"��H�]�|,A��eBb�[d�袕hS<�X2&�
��F�����N��ϻ"Ι�cs�����Y�?`���R��`�^BC��o�I�h���|1lc�d_�LtP�T��V�r���T����������s�z�)*w�J�Ϲ�O�X�y^�	�w��Y��w0ջ��ό��F�L�4گS�;��6_�3wZL���+��|‰
p�§g�������P�-RY[���PZ튻��qu���T�UНM�Ǣ@��I�~�;�U8��b�N�mYS|]�O��J�O`�"�<�����*��P@���/�(q�����r!>��4��1�o��m�)��@[�#	�Xn���Л�j7�PD��$��Oz�`��P���Ui����P�!�_�;��7��i���K='&��ؗ'��g4�y�s�7��%�>V�}Ϲ����[�Tӱlꥅ'�p�Tj~hXoE�Ά@f���K��s���b�_��>R�����,P�"OŔB�[ٳVJ��twsq�>w0�/�Il�֪�/�)����S�����.X�{�bm���b�C�LrcX?���tT�JR&6�H�4
0�D'u@����
�<[G��DN�t�z�;�+�Tbi��l��w��>QX��	���s17�k�V��[K�<��U�|.��&c��������N�����Ga�]�&������1	���X���&��~�2{��Hπ6�1�L�$��ka���V��AF�ePް�)d��^E���{zV���������x�Ku��������}r�^�?tt�l�y)��Gg���i�z(S8ȁp�sX�ܒ�Hݠ/Oi�l�&�@ʌ�5[�}n�}#WX��N�3`C�1Mƈ=�B��ը�A�|�#+���W����O:"��z��W�ǃ��b#f��?Y�JF%T\)�z�4U��[&�xu�*P�/���*?�C،�p�,P�Ngi/�u��W�;��f�Zk��rQ�D�ѭϴ_����8�N���:`��l�ק�@8�x�܌�p�z"��$.��%��bc+�@F��抗?8
އ�s�y6��!Hb��_nN���@XdW��#.�͝E��aE�M�@n��E�61�+k_�!D§��s<�B���҄-O6���-��_A�du\ל�;\Ï%�:�7�@�[z�-���4r�3l�я��$[������L�C��qAæ��%u��+��g��9���H,��L�?�8��P+��添��l4�Ztv��-�䭭&O�ކ'���V��y�))�q�X#
J/Ԥ�~.XP���%q�0Aҷܔ��vygYn�^�鯽J�KÞoiJ�|9� 8�ݲ�C�h�X?b���qL~�w{`?�]�j�mGD"��9‰��>���ځU���Dv�Uj�IjΔ(��J|ww«�c�jRR���GGiWa�����<z���>|�G�Į�I`D�Z/�>��Zꔗc����㿹�<&�Ap�Ö#	�T�Co�T ��Z��]J���ã3i\�j�6��*�Y�(���q�tkI���Ĥݯ,N8��b;��p���+�6Ks'ϻ'�KԒ�]\G�
�1�ڒ�Y��A�~�e�mKs4O�IdD��l8c��Fp+Ewz��Q�������5��d(�Η�8΁C��;��᪵��^D�s�-嚜_"唞�M��0�]�=���sh�e����b[b�(�؂	�-s�ma�ң�Y+��!�A�Q׬г�|]@*�!KJO�\PF
)���`��vb�Ru¢l�T"�������l��s� ���&�Z���G��(F����s1W2]~�X��ǰ��[#A�۳r�3DG���U���AE��1)�[���L������O����U�f��:9��ɫUzQ��q� IUc�S�XU�%5�D�Ű�:�N@t��	��!\�4���U�([_^��5*��*c|�`M�������Բ�����{�i��6���Oms��'��7ET���6���V+cɨ��Yp}e1��t�Cc��MF�JW�d��xn�R��Mk�C=���
�ɼ�t�;X�F�8G!
gʳ�o��i��1�؉Dt?u�����ͿqL����&�l�[�8î���o�UD���E��0bH|g���Xԅ1�^K8��m�"XAe��e��mEZC8)�O�;=���!��`�N�����i&Mh�{��`��ey��9��׵'��h�ȩ
Xf0y�S�����1(V�|Pi;�(v����@����u���hRMU�����ԥ�������#��?ᑶ�1��5w V<&���k�R�����^���O���$o��N�Jk�iH��%�a�٪�w,���T�h`�|wff�f��}��F>�o���;��|�H�2~�Lϰ+r(��4�G0��#�tYWD/ϱ.*��u�����b��?v��	Ե��=��q$,p��[P "�߆ڙnf����F���n@O����T��Geh�� |&����'��c�*�;��oqz���rg��̕�2l�
��>�����3��%��ʿh�7zP��2LSg�&t�6�c���Zs�M���
�u��5��B��y������g��s]
	�����/���M�)��ۯ_I5�4�;���]}�1�/�2�>�8�d���Ҟ�U�ڽ���9mW���^bs/�s��v�`y#9�…1y�#�)�G񬲆1R��5�-�hOĿI�/C0�G�.�чQ�cd1��9}*�Y˫��qh
'�[>�B܆��ڬ�AzK���z��׎y'-����I���f�\KB�9��'D>c����~�E��5�����v�*h����k"1~W���Cڛ�$8�v�2��~$�TW��u=�����b����9n�M�H�w���8��i-���������r�q��J�͊�C
R�2E�Td�7v�.��>�YP�ŋGA�KA�)
K(e�EO���t�L6��Z�sD-�#MB�����
7ռ��)�"N�I�|�S]��52�Q[���.�R������Q��{�ZD }����uy$i����N�p��C`;~�Q'�MA*g0�B�uD1�_��e�^��Tw�i�
#àz��ETW���wx��1o�n���
�C���2%!���ւ�F�A����fA�!|�Me�?cbm�L��O��
@ye����F":qu�D_�5>���S��w��mg�l:�c$
��~�0��5sP݅�;�/=5͖~�7�W��R�D��F1�@xP�\�H2�CIdg˲2w���Kd�prm�L|�iI՟�J��T�먇:�Tw��Y�ТT7�B��nR��R�8E���غ���@�-a3C0G���߽����7����p�
��S{���s����N,��t.���C��6����D)���=BJ=9]�����}�r��T�0g��T�����+�q��ğvUL�a&u�s�����_j��"Co�&\S���N�
���U&W{쫱GX7E,ru-���|I�so����Fm���6Ĭ��g�!!4��x�
�!T��Mc=��n�����P8�4���Zn���
�xq��V&��@A�4(TG�6�lŅ/H���R���M�\�!>�L��U�1�r����Bs���f֖�_=AP:9�G*1:Z�qf]:=��Y_�Q!�Cc����dE��`{�3�윜a/<���R;~���JYP$�,2UN��o�=�dY���%��1��ɠ��<�Hs�gq��%��Uc��p�t�l�MlIj_y=���fV�Dʘ�q���U��Z�i���xDv����/��WЯ���'b*�b� T�����F�݇V:bp=���7i��&ru����Y�^Z�kK|�$�ʐDO��vX�?� =ʰ.� ��w��0����lB��6�b&��31�U]�}!�L\J��8cUb]����`��g\���4T�,�S��#z��Q�*.m��RA�ک,3>Z�m6�%�=0�3���#q{�L:w0wj��
�����Ղz6s���j;8_�}��{7�#����-VM�yaU�v`և�H+�3��J�=-
�o>f�rd�Ř4�*ds��۳��g����L[oPw�YYU�x�1�2q[��S��L��9�Qc�H3�'q�y���e�}�n Q�#<�z����VL4��\�^%+��N�.��q��
�=�����Ј&3D�0DEv�o&�����K�=Q�@�0uugu�\�­�y\#�I�1��7��=��,!�����l���(��Mۖ�oZ!�K_�y�2��m(�)��04� �n��K��'�k��׏��lYW
�j�L?>x6�{ֽ���ڗ��ϰ�aA��Y���<��1�mx��ud�P�Z�y�6�X�>�e[��Y��*F�1��.Y%|�T�6'�F�<�'��/��o��)�
�d�^~�JaT�,1fT�xL�8]O	�%�Z��j��srS��SHr�ֱ�
a�c���5@bƜ-H'Y��b�`P�J	#.��U0�`͝)�j)�����[j)\0�v$(���a�?��b[��:����O�����Q;`J�����pkB�xY8P,n���<[�*�ktr��^d����ҥ+��2.�s���|j�ȅ����T�4.2�=��B2����C�����r��҃LP:E�p|���w�pP��y�c�=R��m��t����3mw�
5m���rR�
��^NI�/���J\*y���B:��z�v�N8k �u�������J���Qa�������@���Ҷ���Q�
m�]�7��M�>���4@FN���9oxPFig��Ʀ�Rm��Y%�h4�#�D�i�S���Γ�ͽ�O��{�R��h-"���U�p����ȏAn�[�e{��E��HI&'#�m�_���C9�
|�,#���8#�%��T��[�L�և���f��@�"dv�,Iz�h����	k���a��i�+�4�q��J�T�0��X�̘N�e#�Q���<O}ṝ�䄽���T�WK`��` @�q}3™C��K����j�+%BH��)3�F%�_aSB/=�>0��R+@�i;�A�����"q�?��[�Ά����S���ԃ+��$/��NAjD7�OK�z7)2X(B����.
W�v�d�z`.b��M�&:;L�Bzd�l��?�����I>ҲkPu��S㠸t�x�怒L�3�|��z7D�l���p��u�g��������ic���-�U�@�ޖv?��L8m���T4���[#���_�f������c΂X#����F$�Z����!K���F�u�q�S�v��K'���
�:�I�ˡ��ydL>C@�Y����c����]rJ%����������TȺ|�S�1V0�u�-�ע���0R��|��0_UEw`El���[��^b�G�$��_�H��:���4ď��=�`�<�!�s�e���w��B��#M�h��l�J}�/��{őd�O%Ig���\1{�y���
sm�qJ��@�#�~<!w_�3��p0�HxL�����`�<�]z�_��X3��2L@�D�����ﴽ��fz䔥���O����Ejխߖ3ɘ�TU?)��2C3�^@^yڏ���8�.�p��=;'<-����b�D�.�`�Kg�N���:�(�l<�J��;��rj��^�_�~�D���N�d`AE����JH�#=L�ʹ3���m!~%�h�@5�|F¶�VTq�e;,E߬gr_c%:����8�_ϯF6��S��`/G:�Exl�0w��(�kAg��'��i��fC([�W9E|z�v�7�;�S:�ž��|F0vk�LP��Q S���~�8�t��.}�:Xq�W��k�Ϧ��da�$���yw�npz�aW���}J���HOw�?�(�)�@�nqɲ����~�,���K�_�bU޸:l�U���G	�'���7�Ļ�m��/���䜔1�pֶ�l�)3Tf�%����SN�RH�;������L�\{Q��/�E7Kϳ7�L�8dI͊�m}����<�ķ ��ⸯ�,[ �5�%y ���X��cg7ː�/�|�È�nK	���yMэr�b�>�<{��'�
R����U�T�妰&g2��԰͈u��~��t���X,}ci�[�\$�>���\�܂nXe���1��Wt=�Ք{%N���䯋Q~N��[N��s|�:�}C_-�����w���в�>��>qDs��
������&���v��jP��
��Z�H{K���n���a�Ea#;���G��H��.�`A���5Q���y����`��x
�sR
jZ�o7<�f��\$�b	���	
�`�Q��73�=�/z�|I4#�X#FL�‹��c�#��`Q(�_M�2d�ʣڀ�`^���У�3!~v�N�A[aIƭ]�:�Y�M��g�Z�u��Jy�~$���oWA9�r�㽮���޶���f�i�s�vMp�N{C�(�1!;•�8I��<';�XJY"g���ّ��q�E�K�3n�(K~]�{=����݁��r^+>�?�AiK^|��j��
�zө��	G�Er���	vן߳a���I�(�R\d]qTD�l��X��V��Ek�+u:;&v��	G����LmFѺg>��P�q���j��x�j��v�Mb��8#�;)���m�N�KϬ�@B\��zUM9�m���=FD��QP
��&(��ϸ�*K��	$$�E�F~�39JĦW�%�p;��t}b\�NCe	��[-���I4�h�Z��)ʅ�WܽhF�+Ml��Z�ˌ�&���;���رBɆ�-�	�5�S�!��cV����~+�"4�,<�O��6�̺>��~Jo�TI��1����m��ʪg|�|�iv���3����zFQ��U���1,�k��:��-R���H^mƬ��G��5~������G@��c��J"\̥��X&�mX��Jp���v�yɠcǞǫ�&ht\lҗn򄺒�k�q�!�W�ѩ�N�.\ޕa�>�U��_��1kw��j��\�����Q�T��@���2��ɠ���5�Ä�9㐽7��C��2ˬ4�W���+^���U$�(@��})������}��|�	�ヾP�({�9��@7Z�{	x�tO�|H]��HH�t��ƽA�1`N���T�}.��H�ds���(��4v�g��J6���
+�)DW�FӼ��A\bxډ��8[C�'�!��&q�
YAq�,}��Sd���4s��U�ʺ-TZ���K�`���ŕ�(��TO��o��]CM���;}�y��.*����RN22w
f����Q�]�����_g|+�ͥ�J&���Ԡ�q�=%
�N������+�k�ۿx���wE��T��I��n��`i�a錶*��C�Sm)Բ�{����_�Do��+�7'p+e�W�7^������}�u��/L��`EZOx�p�}����sYb4�l���I�&K��Ɋy
z�>J�9,�����<u�	�g�gX�=�7��f,)��b�o�A%!4���&z��T;�w-��Q����\�ꀶ?���,8�j)#l��mk��Ќ��H'��T������&a0k��W��7$ǻ�I���=bœ�kz9`Ҫ"�s𐎰gZ�pG�� ��tynS�i`Y#�*W�|U픉w_bw�坩	�9x���sȿNQ��j����Z�U��7�Dl�&���e�M����(,c�{��!�t$�d��t������^{��XQ��h���e����ry����K7M�~�l�H�~5��|(���vw<�P�-��
�Ɲ̈~�LQ�R43�s�6��El�=�	��V��o{�OZȣ�]2�r(�L4C�\5��������V!�U]LO=��!q����
7k�ߧ��>�����P���?�2�Z;����7N��M���d�o�a�%�.;�M�x�>A��\�G����)�XF�N"���3'^��y����7�#�4>���_���y`�O��פ�u-�Q�wZt%i���,��m���1+�G�)pr�8�q��3s����""��	��ֵ��+��S顠�ʞ��9�����;a��S&wێ2�{�+����˲BU��Uᓵ����-�R�-ci^ ��E�����%'9���:9�m$�f<xv�n-fk�����BA�ſ�*��`A^b�/�|�}kO��֖K���a��m�'ݞ�.��vRaCf��w�1Ԩ*���),T~�B1��W��^���^C�5X��Y�R�F��g��v�p����"��b��;LP��$��S�����&.`/n��oxrr��^�����-���@���T�|��C�\e�:`P���6u�r��
%	"�FYa+��^����v/�/y�C��Q��*�w�����,�g(���y/=>�\��+�50ͥt ���{����H�Q𬱿A�h�ڞc���#�D�w�$jM
�S��8 �h(�k@,��d��W�a|�
r�J
���m���[w�����Q�`�X�߻3?~��dڸ��^N$��vz�!�{�j5�C�nK�9�d��}�wH8�ګ�%?ζt4��ޖ��ݞ���CR���_u8��9[�ż�^J���>
��A(~���<�T���rў���՛J�!�^e�pVv�dL[c��t�|�B�A���g>�Gs`~�C��c3Ԭ�$qh%e%����\���"�E�kn�
gx܊�2�oG�Q|��{�Oc��1m%��2�fN����+��bM�Gx�u��^� ��S\���L̠`���R����9�	�|�I�R�!v�c�K����9�pZ���Vaͤ�����l[�#��FB�*�xN���,=.�z��*+T��j���p�S�P�Z����������W�>�!��`��|KK yv�r�RÏ�_��0���ŵ�;%펖}��v����~��V,��{V$�\ݑ��w^3�Zc_���	�C82`zM��^���U��@-ɠJt�/O'��v�W(���cU�La^�K��W�eۦ�t������=��eM:Bc;��(��F���)a	uD�a,�Q��c�0�ZwxA~[��i������v�G�ۢD0��E��E%�?ʶI�����I��z1�&G9�e�lޟX/��"aJٙ����K�Ӵ=s�
^�^rӗ:��Zw�c&�&ٷ���c��y��~b�7�!��[�
u�*�Ygh�^jen�L	+]`�� ��ށT��U�X�1e7X6:
���Ȋ�`����G�M7�}���9>�/S���)�9���Ũ0k�^�z%~/��6�*�hy�)re�Y����<�|{�myP���|8-#��q(�V�Qy��(���i�GF�(�_._DK��Ң8
xzT�Tf$����6�7��q�)�{��}3�-��t`����Q��z�Z�8��҆��-	��r�b�2����j�x�[R���
N�A_iDZ7����*��vC���G�Ё~���m���$A��7(��KP
�'"��/�Hl�AV�S��%�]V��8d�%"��[�Vߑ���x�`E��y�:��}*τm�꤄��a��o��=�u�~+�ώmo�f�-��I�Fa7��i����T��i.�D�1P��U�2�6��e\
^U�[nq���l/"3�l��0S��,B1�zm�!�&]��C���Gڭ3����Vgv��	<�m�[oN��۪D@�-/�ۛ�dxc�p��%Қ>ퟜ�]�z�]9A�T�,wgJ��`�xx߰BO���@��4:�ϊ
��TX�ЭLqZ��Y�����نRn�"@���Ӻ
~�\�cU;��8-cG��x�Y��&��s�v�t���?�^�'g[
��c���0L��z��l��g���G��BS׉<2*� �����
���	��$����.�:�7I���ĝ9���9/8��������8��NpV�MCޔbό�.���OO�U�86`�n��j�tq�)��c��ˬ�Mx��Y��+�I��tq2�D��_	b�j	�8
��u=oiU��V}�/��wZ�>C�D�aZ�m?I*��HRy��H�n�K	XC�����R�цފ�L	�t\�lLRnGxW˭��K�~$,�{��`��eu�&6�yjc���l�"�KѧE��T�M���+M�����(ze����Gb�:G��w��F�5�v��-�_�H��fARADr��FF�:0=V�J�RX	߂R	r�^���&���JQ�DK)GMl��>�;V>}CS�R�"S��X��_DiY�@�bw���ϓA~��g�r��Mm��C_%���"|:����i�����Δ��,ʑ�H�I3z�l�� /�v�1�hf�·����sa�\��!���ջ!�h�#n�%�+�[$h*���7�p&Y��:��	��ߛ~�����=�VH�@[h����t�+{˿i�����ӌO�'��}��Vb�q'km��'���ZӠ�]����[�|0�o$^u؞�k�\�L|�Ӽ&��slI�L��)IBQ�.��Z�b!\�ҊQ ��qZ�֭��k�!�8�
����i�C(/ZxYa�E�Ӫ��z#�0/R��R>��`
ՍڅF_���Q���`5#k�A�u�3,A39�����$�"��`0D�'�4;�(���
�r�߅�^��1�F֋	a�깻�4�\�صYҝA�^���E�h��6Q�w���U9ܔ���i?��y�JNl���6�f�$!�,,
bZ�I�^Ж�&�
�&Wf׸3]E)�G(�@��XS�:��[g�[F�K�K�|��֯��[��s�77
��u�[��t�O'�q���w�[!͑Ư+�FC�r����Qz��D^����<\����S���6%��3f
���|�3h�%tȯ%�Ӆۻ��X�͸Qތ1���S�E��O�1�ǐ�l�N��&��LX	y��T�B��ԑJ�-_O�����K.���j0�^[���W"�W���o�|z������_��BwQ��m̱st�v"��%�O���%>-�B{]�	ގG�C{�.�L|��S�D��*�{�y!�n������,i��J��p4R�0���P�D�8�A��_9�O�R/���Cq�U�N(%�>{��#�=
��#Q-%�4t���ʄn�ٟf8m8��zDc�����`L���14R���}]9>��)���%��d�=�Xw��v޸�<�5w��9�9���CJQ7@"J��B���� ��8z�.�K�#����j+� �\̟=B�E� �D�Ch�ƠJ�k��p:���f~�i�u�k�D�կ�Y}���O�p]�M@*�dY���+j��t�Z���c�P]@�Z��I�ƛ�_lp@;�^��M`p�B����M���L�Ф�`Y-���ҫ[N0��^��h���s�e�=���q+��p�؛&�E0�we�zz�9:�j�@��B�����$�v}���8��'��(��2d�e�3�8� ��BM�����^U'��]I���P����H7W���kK���ޢR
��q\��1wl�1��O	x��[y��S�g����k.��q#�6��h�.���8��d�l�E(<чF|r
s - �B�W2�
ɾ�&w*��;`d����B2��O�j�8ر��iϘM2��O�!D����d�ӵ�LG<(��		'��{�:�LX<{i�����In��D����(�s�Ec��uh�l�i�%k��K�t٧q�Մ�]>����T2����`�WVu]����\%���ӣY5����^� ��]���:}j���rC�2�u���5�����7Q�����j�]�X��B�6@�N�ʑŮ���|k��.n�ٲT?�(���BJSY;~��+�Mš�di<y��2>�㓱.�.��I��( G�>7�Ӕ�".~9�i�5�ঃ<��}�&#�W��E����6�����v74�����S��4�O�r��?gM�5)�|��_[6U}lB�7���_��.���(�j3�e�6��=;}F���j6̶��뺒iI�g˚/\�J�,(�Ҟ��k�?J�<q�������Z���kfϡp�7��U{kn���h������	��jx��=�^�k'�:������IS�6nl��U�I��:� ����������,���O/m�BG���M$l[��b�C!6�E��}���E�\����XRc��i:V�OAULm�_wS��r����A�j?wC�}��4Lw뚴^�����3,�|�i&2�����b���2q?�1 ��j(�&F�e1�lf��Y�}]S�)��Še��O�1St�!��>��0F�ca�G��V��n���䖙t-��A�fG�ݷk8>��h ��A)��+~�'⪰^?h&Ђ���j"�c�N&vk;���`|�q��� �r����ٸ�Y�.���5���-Z��^���tM�� �aT9�>E�g�u7{TJ*+MxO��ȍ��?� �x�&Vɘ��!��Bw?"�_����Ǣ�"�<��7�dy�n��fU֖���PE�W�-�ݾH4iH���
�/V�J���qJHNF��v�U��l�/�Y=_C.	�"ȫ�Tj���ew����q���?��@���D�xt[�N�-	U��[9��Dl��m���~K��_>3!�Ro�V��9�,"�Q�<����x�>z���m>�Ы�&y�a?��xI�;Kwcb�@w��R@�V� %D[��w�9�����x����˸~>E9�y_���D�ϙq
G1����j��+85®s���&�'W��dK$Լ
���9��<�()f&�z��#����˾f�o� 
_���ĝjWw^��2Oy�hKcV�cj��W�@.��1�L^���w����
h9?�`��0�Pv�Л~0\|X�5Z�0��=L��j)�Z�
s����gD=�#�l,�-f�f'�Z�=*#�8������$[�{S<���hk�)y��O�էlW��M��'J������۾��U|u�uU����Q�E�;,��G��P�0k�J��*�L!SH$5�-x�o���y�Ωj��堔���{>x�5E�ӹ���Iɥ�6�d�e��>R�Т�7���F���Sľ�]��A�)�#̘�M/���<�/ }�SX�n��8be��pq�*���H]i�qٌ�0Ur��OgPch�>�}�xt���s�ܤ>���q�I-���{��GDTMʆI���n([p��*rK|ù���s��>u%t�%�5v���V��_�AY�l���Cv
g�:�\��n_ȣ’w��F�Kf��\{QV���$zv���DМ�a�#;*�7�S71j���Jf�k3	ɗ���|�%���>WvK��I��d�8�
3W�L�ۍ$Č����X0��q�%�Y]]��˞gD��������J��Q�}�s��HBj2O��(��ͥD����j2G�\�18ޯk}��]*��R��Ay��M�N��e�S�Tt=.����&���y�O����C[�b�S�o]�j?�r�>��`B���i6O�kź�
�U�,�r���&!��Ld9܌�,w�x+ۑG��8Bʒ���U"�-��I��D�����A泔lJ3\x�zȇ��_W2�����J�cr�a�q����{Gx�WaC3q�����.�,b�P���ME��k�t	h��|ޖ��X�`p1���KU�#ht��C��ͨu�L�	Y_�N�G��_��<CVW^��X��IQ�p�����<͟�����$�!(���R��#�x�ͦ�A����)�U�L�r���,M�w����s��� �p���!��zG�3��MP����z�G�),�4�>K�����]�Q˜o|OUN����`+�+�%�e��VZ�Þ5��!~
mљJx�J��+�T�Z;�?�I�@3��;[�<��t��)9���Ѵ���͂��=�	�*�7���@����΄� s�6l�շ�y�tBf�/���4<ޱ��;|�!�)�v�>��.�-��=�a��.�!�*�n��^.?�v�G��f\q4�hS�������́�cᦖO</Q��cZp�.��/��B�H�4�U��F�_	pk�֢PK��%j�A��9m��/Onr�)B�H@x�L�ɗԢ�A����@��
K�=�H.����_��.Ⱦ;��}��h�s3��b8�H0��aek?�m�jb�v��c{��5,�e���ID��S�����G��5�h҅�����Σh��p^0E|=��
���F�dk��o��ܱl�g��D֪é�m�e4�f�F��3���I�nd3�S�����@�\U�O�:y<wkc���A�}>��^@������h9L�pP/s�Ծ�x�Bd�č �$�ؙ��;J�$���f�x4~q�&����&�Xֹ���8���X��d�x�(
���N�>ǀY#�d�0�qA�;i��]I�Fir*��vɔ.�
��� ��4[�P璫LX�Ca�ͧ�g��L�U����QB9���f��2��k��᫖��|�qSy~/�B�8~���DB��+3M
�h@ýݗϡ�����]_W��_�d�Xv�{�q*��i� e� ��x�.�.�C�g���"�RNC�D��l��j�6�]R��=�M}�Ǩ�Si��=�MK�>��k_�~����zk_?�����~��گ���~�a�]3������)}R�z���b_G��?��h�k��_�l�/���kq��ʯ������=�_'������������j~�B��A��i�(Y��-*��� �*��v�sj���jɵ��f�>˜f༴�׻���x��o0ģ����Z~���j
㔬KN�.�2S���\�e3�d��'n�8��~�����K�H
���
�%����5L"�7�󔗒l�xW\>1���ֽQ�}�d���5��:שCm�k>�]*�Ą��^�_䅙P�4��L�n��W�����<=6=w�k�9HV�������fV����4Ʌ�xi�j����5$�H��PF�������6�X�Z6E��
�z�aV��I-�"5J}9ڗs���in�($M��(�2+Q�xe�E���>
^�0�C�^2\8���߲�\W��A���	-Y�Ly���&e&4�l��v���"�
���%�JP5�Z���65*�3~h��ϛ�	D��P�T�r��@��t�"=��i��s6EHU��u����5!����I�uÇ���q�#_4�4�	o��"�KW�|���
O�*�p����~�"�C�9���	�詧��U��D}&+Vxδ\���u_|�,���Y��l��G���
���<���z��n1�7Uz���0��$`�΋�^����e��^��B��p��e�o[���^D�6���A��[�J��$��p�͋�,>{�<�LF�1k_�r/��e�SS�|���2ĭ&^C���\�����'�
{)����ƚ�
�^�q������H��:��9hv��`Ծ=�Q�fj����ᜊ��x�n]���T!�؟�XR{�*6� k�	�_:�S(�I����=�૜c#�?��1R�Q7�.ŴGg�af�ǚjr$�@�������?�NZ}����7�iKՄ"�}N@�nv}��rLI�����̎@` ��

A�X1sB̀����|,l��%O�$T瞿+�7j�PO]�@b�W��s��7�,
e&��Ft􏐷񨪠��j�:�C��!���!t�+��:�Q����QГ�Gaυ�E�W�+���Mp��M�����j���94*2��%���b�P%x`x+H,�r���o�����XI��؈(�M��1Ҩ[�Ȍ��8��'�_�,�)n�;��b�/&��55e����r�$��|20�t���c�ᴫ�	��=U4��ze��|�6�+o
.c�W�4��A�wl H�$*c�	S�����DL���%�y
��������P,@߳�=g��B\*���t��._��߯��]�r,��e�Y�,oj��m���|]��=�![�5����n�@�l�"�b�l.H�z�Ľ
�E�b����Ǿ�5Z����M�]/�!g2��51I�#Fc蟮�	��u���+F�{�e�H�{�;���������I�b��`j�Tf]v�q�%��ya:�h	f�eF]7O^2�ߘV�Ѱ.�f��)��Mۋ=óO� ��5`�l��~�(��Ғ�K�vr}�K�]�a �/7?�[�rw��H�h&OHA�=GI����^c����~�%�`"���b� u�4��n_��k�$�δY�{o'I8��x�V��3h���j��@kS����EJ�(�Q���q�.��=B�cvR���p|,�3�٢�x+�&�4[m 
��/Nj���+�[$s���~Y[����5�ӓ>�C�~��ICIJ��G��=�s�Yg�	G��Ú�aN��?�KK�,�2����D����
�Z��fy̑�%�Ij��y��E[f��1��𽄧��k
8>V��+Q_MO*��D�3���0�/HLb��Q�s<!-S�8[Dx��P>�%K	F��I��J�O9�U콗c�]@)��k����D�P�)ܽP)�`���k�A�V.ءl����cqL�b�u��������,�ff��h��]���w}$
�ĭ��*�;��˘[�Ƀ�׍$�,0ҽd+�d��B�d%���}��f�4�� ��;y��NmQh�ntє��R��1pk׶#U=��6A�6�؂n�ss�/�l�X�2�n�<�	����%jg���~��]�2����SHe/+�m֔�

{S��ʽp��қ�m@�`>I�U}�t+��;�� ¬:�mf␀�
:"�#b�%��a{A����uy�|��z�"u��V� UV��*��Z��	Rh*�9�ER.�(,�␌@���o�q�f��%��-�Q�@
H]|�ֱt�5��5$�����������i#|p��)AN���n�BX��O
�G��9��z��|��{ƪ�B�4�����?���k�2u�[��6�s�0+ޢa�wŕec&�Ţ��qeo�ϯ/��T�nK�����K�|��4Ht���R���]��n�^ԠR�NB;����2�(�e�ͤ�D=�8��b'�Sy[���:-�^�[��&�LgMT�y����ò��:S[ϠqB����B+����͖	��;��A�屳e��p���8���ͮ�����胺�)����TۑD���ٱnA&ü��e@�^�+/�pq���W���	X��۬�dj�_����<���M�ؼ�c�oeZ�h/���$Ki�$�J�����y&b���1G���ۆFE�N%�M�]!����z@�lN���'gcH�h/�)�7���dÊ�M~�a�Xo�'��6�=�4׶�=�<����)
����dCg7�L8���Kc��-�{�KD!�!�4ϔx��s�|r�g��Jdѐ�'a�z�M5��x���]���hG���kF.8������H�k��5���\*�ڐ��.+*B����0�v�GW�5��4�A”�-��ɲ䨼�Q~�p��.��(�|ŭA2�]`>h�/�����iAs7��y�E�7^��y##�t��aM���	M�hSB �nɴ7j�i3��s���l�}w�/�;u��z*8f4}j���k�!j������^|�.�Lr�R�JN�M7�"{P�A�w-��*�D.��A�E@�GgL�� ��dU�����=�BT���ӔG�ֈ�+�r�V[�	�g+�$���;�/�������1��v
�<���,w�
cB�ɔ�Ya+#�L1��,�e�+}ۜ%�V�G/�z��h	u��|u1��t�GZ�U��=p�)G���v(%���}P��������0� � qj�	~za/� �wGb}�٫��3�snk:h3Г�j�"��� �tK��0�p�kM�@����8�	k�WY
��J=�����ij�[{���9O��͜��K}��SGj>�DQ��I��`B^
����C$3�B1(B��m��ji�j�Y���n.��j'���5ԁw��M���]l0��v�\������2)p�p��(�$L!��
��/d����mI.����Թ�H��.ϩ���8�C���P���$�
���ު�o�)FN�K.��!�$�8T���Ԣ״���;�:qF���G��$�{Bz��V�����H)����las���Q�(���Q����,���~|f�,��B�:Up��ݍ=ӽkL�,�ۈ���}fL$7DɅ�`�����G���-[mlN�!�`�D�� ��X�Y�k#vD�+�{b'B	Enw't�=��:ǒ�3m�omʻ�!)���Uu�X�˵�
��/�|U��Dd��Xⴔ��5w�묬b�;�i��W��iW�"�l�7s�N��)c��\�8`���6��]Z������8�w!�_���-����L�����^,���jN'�]���6�?�1��&�~��a�G�PuY� ,��#
'B�}���Xv�'���Y+�.�S�*��])��q��m�z	E`5*�<
k�0P1DR;��2a�b�8K=G۶{��Y�c�����V~=���0 �m�"7.{LwJ����wP�:���:��N����5t�j���
��Ye�p�f����qdy&���C���*��쓷
c[�mM��c^��쇩rdUx;ߓ�S��"�cf�1Ç*�9k�OC�X�TS�^W���`2
%H6Mi ]��w���5�3W R�_�dWK(�"�6c�t�U��e
^B$<Us���/jnP��I����)'9����oqp8�ص����sxjHQy�_���U�MrE�������U	�i�Ї�7l'�p��,�E3���QC�K�M����T�+�@�_�{�e�D\��
ׅ.����h�;��_�I��f4z��\�+�Ⱥ����E�C���G��m�� �;N�M#�e['jc�e�<��m��h�r��.��EU�D����—���ptG���A�� &�w��gf�)f�K�uMhG�V�&�[(`�-�/Z�8�>��v�;e���
�#n?(�8B$��ټ�Q����X��X7drߋ��#$�v�KSD�}hrP��E����]��gd#m\
AG��807�nf^;�Y�����K�t擒��у��эk��*�?�J�*ύ,܂��P	,P��l�č���“xyf�y4?��8L���T|�ݼ^��u��i��l�T�{�8���۵��`�^8�j���fJ�̣J=�vCN�N�af_a�QA�&��C�����kb���)���җ�c!@wU1{2�������=Y18�5��M�to�7����ֆ��"$�A�S�*�l��6���^�c�X�.��7���;nP
#������a��3�}H[�{I
�XQA
j�ш�d�o��(�T'���x%��;7Ĝ�S3iu���
�=D�Qu<!�2��L�V	�P�zR�B���%��L���v�� �C:� s��`c�:A$�AT���mD�Z�x��˴j�'�)�Oó�
mgdI��@p ���wڟ��x�Rd=�k}m���2K��OauPɓ$���V鑨�}��+��m�@�d�bZw�Vo���S��*;��.oOg8��zs�\�A<Y��+���h�û�-c:�	0$��θt��(VĉtBe2���9ʶ�<�h��G}T�������ۥ�~�(in
�@B(�V�Zf����vm�!��S@,����n��	��ˈ��l9d�5��G/�3�]Jqś�s[��)R��}B MfBZ0^G��uEf��
K�{�ʯv��;9�L��[�9��]ÕS�`qb���dEv��u��﹦� )�Ϫ������k4$��
ڀ/����aWr`����W7G�.�`��}�j���:E>g�ҙ��~���i�^m�2�L0t�$��5Jv���"�G��;�!L� ���mSh�H�;���0)���${~��p�z����\;����2���B����%�z�9���p
#]XX�i�C�3�i�+�f	���DO��C��M;��N��n�T�<�C�̳�\F#f���lm��UӾ�GZ��r\L��u� ����.&�j`���g%q�Ӡ��bݑ�*y��3�.tS�߆��'��se =���Ao�_ej��{p��ǬUjG���
����Ί;C�2G��3?�eZTS��+vKn�C���(��e��M��&�t�6��f���>�X4�
��Z�]�������V[�ٍ�AıWoU�Qw����p6�6��sLu�#��\z�=N�y��x}-8.0Su-~�F�<����C�/s�����Y~��t�qA"XK�N��?\����`�e��P��+p�Cj ڴu��S�Um��i�4/Ї%-��/�kf�tM1��u���E�q'�f���q���&&�xzk�.��a�{���R#�.{��)K�U-�U�)jp����FC��{�Ʀ��3���q�ۻqfB��%��`H���	�]1�*���^_��1�*����ɉ�	}�!���:(��w���:j;I!V��B�].C��|�F�^�������5��k0/0�*�T
d#͕��a.���L�b�@�"��F�+0ðF�H�Ȟ�w#uܗ+�� G&G�E{�\5=�R��v�T�>�g��,T��
@5��hېj��e:[�T���NG�����<��D�"pғH�b�B4��>�^:���K��b�)|���V��-ǤOϦ��mC����-�z�!�p��s�b�l)Y���f1�z�,w�#l\@~�7s���W�糨�K�v�d���&��,� 
�
?��LC^��5|t:@v��lO�l�����m�����^�0����J�^��?l��"G�m�Za�%;H�N��<6��L=�j���v�#�����6���7����k7��jal43Ʊ�1���]]Lw�-S���Ak[��{Y{ݭ\�i>+>��=6z�R��HŹI0D<�"E��{܎N_[2��٬^���Šq8O��N!;7q�0����S���3hDvI�A���"�v�_ٽ"�qt2\��\�iP	m�T�k�k��}��q$@�q��n,u�i��6�j�k��E���%��zo�}$�M��ʔ�E�c�q�_�GW�͟aX��:�+���m@��c���A�ڍ-�4<
)��[rw�e�`Ms�8fM�����i�	=��b���D�(1������3�Ԇ���tpwՆ:��U�y��w�}�͈�ùm�4^;�G��D�Z���kg8(�e��d�;���5��SB��MΈ�M��:�d�T}u
�#
����.��J������֠�k`d(����m��L=���8�.�Ok�C�3�Y�?�\Lfec�TAئro�ovoEr5��/�o'!�dYZ��I�~li^Kx�#q`�ο#�ŵ���G��%���%�Ո���k~��8o_y��c���������
Y�[�aD7g�4}�U�줱}��ՙ�5�i~
��#,�>(�/e�(<�o�[Ȍ���sg�"i�ĵ]�x���R�%s��a���&��b�շ:\w�Ff#Sn��-6�u�MX�@�+~�DQ}%l�`׮�d�^�]gdC�TC�Se͌�G�N�0����UXߊC�B�����T�!5�dg�?=j}�.@��J���*ܙ��~���?�Q�� l�B�c���q�H�������[U>5py���D}R�Ȓy2L�#B��z�/⋍<w���
.E@��W���ٻEE��}���y�T�:���w�!ߖ濛��f�PҌ��%�Sm�Qo��L�~>M1�:z�6���6Ra�	.�E����7���%�$��O���$+�w�� ;�C�إ��M�GNj�:��Zȟ��^)��Njh�F�5�gj���l�������KT�����ە�����;M���@����l
�6^�Y��	)��"3.���T �?�E~�-C�2|��@��.�V8�*ML��a4�_��?�6���=��e0F����|�ז@G�'A�B�z1&Q`�N|�=)Jc<�f��B(�[=V'&��Ss�VN�?�A'3M�6��mh�����޹;o�[��6��/�6��]�=G��2&����&*Fc]�[�.|
0�9@�V���/j�E}o�w.�Y�]���h��4H�N�-�xP��q+e''@�@x0��U���O�'����:�����M�y:^ï9^F������J�H^b�1�9R[�%��Q�xa��\0C�+9�K��*M�9���f�׊
C�µ�^��u�V={�G��\�����-5"~�C�.$�8L���n?��Ϯ�2	l�	Gn0|����(�lKN��؟�4���`ڲ���s#����@7G�.��K��V��O;�vl�`��WD�ŸW��,$iĄ�	W�A����lt'�1��2�=�'s���]�뜐o��̬<i*8�F��j^mq�'w,咞L��O��a��
v����*�l
�<�tI����Rn@�q[�߃��Վ���/v��/h0��T�K�SF�:2��2{L�e8h�(m��ȓ4�М_�0W#�&#_ҍ���鿍3<];y��Uc#L���F�������h��|/�
?��G��'���2�J���+堰�"OX�ח�ڰ��_-�c���!�V�;_><1�h�DQ��Mb\p��zg��[$�gH��WDԁ�.[����#/��Q(k�c,�c���^��>ŭzY��xn�D�Wky�m�d8(D*�1�<�N���}�
������1<Õ-�@�:��ېtf����;�гed��S�e��w:�!קV}�>/�L��S�pɜL?��^��\��]��G�:81�do����k@&�i�����!���%��0����ub�m[Y��a��$Ifc�1e���2�`Aܼ��,�A"�;�}�=(˼c(��r
^�|��ޤ9���UD�c���������M�X�ő����D��jOz�'��t���~���^���?�h����5��� ߺ��W�j����^mY�LIZ��)̣�`�������Bs�}�k���K���$A@��JD%t���T�	�]�;�fJ�J`iWeM��2"�L�I��BAI�e�s����艿�[���XS�S�|��#|w�[��]���Ք�,�Dj�6���AWW�Sd��8t�[F$!#ܗ�Q)�x�QV�n��~��a���z��cfcp{�ӉӍy4~u*���>�BS"r,��X̵�~��ӴQ4�h���0�_^E�F�%m�T��P��Y�ޚ"��HY�_Ҧ�<�:��"����ߡ�$Yb�b�L�H�
�AB6k@ѡ+\�&�D��2���t{�ߐ���u�]p���O3A����Ƞ�
���#,�/�렙
�x8s��QrW����|=0Q#|ʗBڹ��#|g�S��v@7J�X����Ty�{�L��t�H�O]�����C��{ۜJ,���r����.�K����R�����_V�@Ґ���2ј(
PSػ�SeN��ۍ[�x���KW�l��L��>=�csx���}i
�uɊF{v3�7�ǚ1� S�9��P�`��/���W>v��}���+²�%2�O�E���p�2�=���v�=Aӱ���…o���
"Ss�Kl�)o�]!R��3�?�3�uhq?:՝����E���&�J���dwjV�� 4��bf�����!5nؖ׭�@���I�v��Gx�d�~�\c��ݿ.��̭��kV�U!�џ�y1�e��4a0���@Dz���� �y�z��&�<�n��4��N�����
�Ý@�]Sw�R�]}*��|s�a�H� OP�:�Q�%��N�㬻���B�w��M�{/�&�+��7�%�c�:Qt�WR%�.��rdf�I[������m���b��$�G�31
�h�|���olQ����7�\�jEgbħ>E�#.����Q��Fc����r�icSJT�]��~wn�,U�>8�0�<��v#t�T�N�N�W�wG���^�s; �J!�R25�&w��8�3$P�p���G��Y�'���U�I_	_�=�������q�J�jNc�DB�̋驨�k����K��i|=���js��)���{~�Y
�:_f��*��m�p��$7C����}��ש7��ϔP��𢌚���T�(1R�"���C����,w��+vhi�z����~)��F�G5��oq���V�k����̲��mk��J�3R�y�~#��	�(�q;-��<;�Xk��N�*f]�����6}BC��|�Ť	���O��ڿ^���l�KF��(ޝhIp^�L&����t&���=��k�l��*�bV�����HA팮�q�����/�� �V��P�wo�|6�����Q
�s�	��q�o�)��(����s��	���Ά1A�'�Zz����(-�B��G�����-~9�KӉ��N�U�&=�E k���'�^�,�Q��e'�w3`�4hwG��B�c�~]^���,F����x_�˻��W˻a�����້�X�+��淏ER�KI-�Q���p�p��{2T)��Yؠ���sŧ&Ԟx⫟����'�	@��jk��&��H�ڹ��:�6��Ull�l�/����>CH@YmR�ѳ�XIog-+�J�Qj^?��G�v�7�(���&n3���)`����N`X�]ꦵ�v?���M�}�{^=_�S-��C+k(�xK���jQ�E4��By"1`�E�-�7V|a"i�Y"�X
ai:��Bw��v�<3�zb#�P�E�?��:�
����t���k�a�~Z*{���gz�8y(!Y&m�gS��\0�{W���җ⻤P"�{��.�>�4)�_#�uv�c�*�<�{���g�e
�U�u��t�Rں<M���Z�y����5	$�����ۣ 9��7V���~�}P[��o>}��`U�=#G�ߚ�1Ɨ��V�9�}��S�Pl��J9���L��>1�}���|�Ef���b��p�/�%1ԫ��]����h�;�E^^ڹ�;�Ƥ<���/�m����_��K����8��v�\���/��{q���8�Ow,�It�P�l�c[`�.����^_D�c�
�~)�����[�;9aԺ�B@T��v����z�E��M��f�n#�s���E����Fp_y�h�̃��Uϫ-�Z�1~}ߌS�X�
 3 R�?( Z��_u��s�����f�(gp�����l�Pw�,g�0_@&r�VL��Y��e^��w��3Ux����ķ���‚�l�P��~<�Ɋ�'D�'`i	�xp}����%KtY.C����?!�7�il�b���w��^�7�΂/���ؘ̃�9��R�|���J������i�'hB���t�~���{����d-��`e�'.M�'�
>-��2�3��Z~z��&\	�^�Ė�+4���k�G�IF\� �}��JΜ�U�Х1�
�L'�ƹ�b��
�[�q�C�Ov�&�n�ܠi����n��L��~Jb�y���{�u��^
C��ı]eS���d���jW�����z��g��|�xV~P9��w�B���m�����@�"�[��NN�Pk83k�r�Y�������u�
����)$����Ә'��?�jXi�RI랴& ��#�O=6����\�gj�Zt8��/���05gH�MDQ����6&�SEX���E�1���Q�4�i��̇}�zH
sdo#i�8ԫ����rc״�T[2a�k?؜Bޘ���M�(e�n����Z������zepH��M��>0���|��2���*
�7a=�]-�	�ש�ҍ�,W8�o@E����O��~�eH�3�B���t�4-cGM".��M�eC��yh'փ��8+�O�Gbcs_+a�r�vv��U�UH�"�}nS>:[p��e�=б���;�Pߊ�9�韇t���#ͧ!�Ɓy4�>�A�
iѯ��Y�Y+��R��t����n�<U���~�u�Ր����m.���Jj<����c�ڛ^����_�tqt][�^���̰>�z^-�CP�sܞ4��.Pi1����ka�����X��y�S؋����(����P���8;=6H5ɴZG�����C��XckD
@����U;������R���st��*�}�m���-� �auB�mq�F��ZP2�-}U\F��Z��҈J�RN&���B�0*�_��w��I^�%ϛ�`���U��!�sFai��G�@
���5a�B����SD'��c	&�M���k��۬5����D�g�� rz?n#&��9�FAM�L�iLS%��04��s�w��J/ey):t��WT��*����V�ZJ�����㎠/�^�r#4_Kw��d��[h(Q��Qߨ�g&��PG��/	.�-v�Ж�;
QE:�K�
��`����rJII�v�7�Jz7A�¸j%U+���"�"��qr>/�A�JT�N'%��X^����J���,J��a|�~�5��R^�7�!V�E�]*6P�װ���@��u�s�:P�p�� G���Ҕ�m?���Yj�,���q�e`�l��h2�t|� K}�
x�hM)??w��<�Nr[
��/n�b[������?|��,UOa�m���T	�ޜ�J[ʟ ���C#����B�-�3j���0
��u�k2w�+�4�34fĪ�C-U��q�$�]�hX�v�M�+N��C������~d��˛;o�;s���&�$D%���O��Dݦ�=f�':��ʪ/�j�&
`��Q4����o6�W٠�Z`������۽v����	�7�V��wH�Cۍ�C���ײַ�kȸ����R vf��o�:�(^���G�@S�2����Z���}�X��G��X��q@��r�Yd,��$Q^�����왓yA��$�4�m��f��PÊ�NB;�~WI���
}W�3U�@�S|h�5�L�g���2p�F�
��_2\�#�U�Pe�:/P����Ipn����.�S�6�
�\ŝ�It�L��=s��3����O�04i�{��N�����9;��T<ܾQ�?�ef4bUeV*�W�p ��oFxo����:�n]�w�P�,i&�l:Gso}eR�tVC��P��W�,���v}�|xӬ�J�߹vVe���[�?h�gb#��PB�r�Xঋ)Dy��3oN�-�\XG�j���~�JMc?��WS?���MoM=���;���j��b�и�O��ŅsT_ Zp�#�(�G4$�۟�:/R�.�K�W���V�;�M�;�c��۵��)�yabۈ�n��f{�,;��k���vl�n9'qA�4������	�g���2�B���	տG_1�k�����V镕6�E܀R܌`��|�c���G!���5��^_����%����Ya|c���%L+hSr���r��m�	��>�Oxž��b�'����;l�@:@�W6[n�%^���"�ۋ�ր��ϳ�?A{׋P�j��V�����0�;s�U�Z� �pMuoiO5ꂯ�*g�$%\U�}
����T.��:q�����!��ө��%���x�J�ps�gDJ,�w��Q$q3�髄gL'��.Iѫe����[p����r���@��M�ۿ�Y6P
,��Z�?��L��Β��0 �W�M�GV�<�ʕj�DY���S�<5���>�j?~��)+B/�Q�CT�0��<��\��O���o���"n��ŕ5�YuW
J��LOZL$践�΃��O�"����r��S'Gd<'>�LS,�J�˯D]߯6u���:�ZDG�>���ћ9ؓ^��x��T�?�W�#�=��ɝ��N+o�W����֜��	R����1���L!6�({�P~�s���
��U�?F�/��_]���
>�փ[�#ǣ�%���˶/3��6E����������B�cr�M/<Sj����W�^��(�OV�b
6m�k�2���(Tn2�G��i]u@ĒS3�Qlہ��>aO�8m�&75[��(ȴ�
�dQ�Q�9�����ډf(/�T`�$�i?3b�T6 i�ʹ5d�F��?����ӊ�T1T&�ɋb�^_��"���:,��D��������nлgw���7�<�°�W��]V�C��-��R��3���K�F�oe0U[�݅������>D�ؔ�HC�X��b�u��m��)��1�Q���o⦙�1�͟i���y)�ῤ�SE-~y�
��.7%8���4���	ߛ?���d(܄�L�9���$�gZ��zCB��F���~F:�b4E��bpb���H_(�8�����}1�?�p�g/��]��eT�弛qir;����[4��ę��"݉���yv꽧($�KS���n�A�vn�F�W��W��2�²^��o�Nᵡ2~�
s��+n��uG��k�8�x��@��]Ȟ^���$&oK������ü7�k����/!�2�8������"�aP�b+qJ�:�~-��r�f��dq;����HUT!wb���t�
=�8U�<+���F�Zd��.@W���o�#�y9�&/����@�S�v$U��3��|���W�7��KY���T�Y�M���MT��0dT�\�m"�Tʺ%!�����h���/���:�Q��
���ζ�"?��3�����u��o�$=��9!`����%�i#u��,�����I�ѽZ����l>:���,��1yc1��ҿ���5Cj���ō�bhp6?5E
%
W�����9�1���8��~�,��15��/����b����q����yW����b�b�6Ku+B��o㎃q�(�� A�R�჊.��"���5,�m����F`WC=3�m�K�-�7�[*�J�z���s���W��
w��k��i؇p��D1�ƴBtc6��P�)���Whum�3�D�&.L`�'�/�]5�rMG۠f���P�C�6�7 ��(Վ�Yf^�ns��BaC�gq�%���2����ȑ��|5Q޳�r$M_��Kc��C��Y�Q��ox�qN��3?~6��b�?)�C!P���(z�O�Y.��,#�cw��riTE�����J4��6��VQ\�J�#n��WRDa���q�ukS��1cӅ4Je^��+j���0g<���/�Y��QUp�3�7�$�,s.<v	�KT;�﨡xA�5�fO���n��G�wj����R0{^�U���:�4�y�i([u	����%��{q�y@�*��.I�O�B��JuB=,�	=$Ȉ�b�@��=�4�|�ԡI��Y<�:�_l�>>�Ac謑L�m��Ǜi\�Іb��_Ȇ�7l���OC��I��E-K���W���U�A=��.P�=���j��x��v��	@�?�Ԓd	�׷��#Q��16�ƯVWL;ZA9�4.1^�g�I�m%o�=
-WiX,R���-a���!�ѷ@�|�;�!f�ߨ/:��|]E�����Gx�Ũ����#UR�`�P���Z��@�W��@Œ�,�xdPK�S�5QI̽O��r�VX���񑳺�ɥ��!$ކ�I�	Z٠	}E�n�%3p�8 ��:��b&�E?i��ˀ�)��F�[���𘂕�zSr#��{�����3�"k.���e)=�Ϲ�Ϫq�!LQ'3�6rh�9F�0�&�W�3�/����S�6�S��
�w��á ��m
Ѐ0u5�S$ҐC+n���ڬDC�-aMp��]�Z���m�?�~������f�t�!<B1�-��bx
b��z�m�93;,�s�i��u3�4��A�W���
�C��U���(���j�&sF<��R9�9`����9uoEw�۠�׊���G	5�M����D��O��@�&������d]G���� u�j������h�q)~r��i�/es)�����!��3�%\��DXO\�,��%�,�Ar�T���4C`��D������J���؊2�*��w�?*�?���i�|\y֐�pĊ���t�x�r<�}��ڀTFw�y���E���;��0FPR��Ԫ�N��Z�Xq��dz��VxHe��	Bd/����!��i�N���e��2D���#��j���Ĕi�0�����2Cޗ�y�
���ږqc#�{Q:��S�?��*1�`�I^q�l���5׮/_u����->ņ��m��.�Z�\&��|��f��(�Y.:G�%�7o�=��߇<C{�)3j�C�������/�������3��@VጇL�5l
�e�nP����Y@�4h=��:Ld����cC�C5.=c=~��~mm!f���M�$y���Ȯ�UTcL�'��3D@��ˍ��E��iji�P�Ҍ+:��u߅\�,{R��~,~��K�{��f���һ��r�Zӕ���ܮ�5�MN{پ�2m�����8��(���~Ek^@Ћw�Eֹ��˸|�`6x=�28�>�rn��>r
&f�&�+Ђ�s!zL*���곉:ܖ�����^���%�*�u�k�Rg���	��p1��Z)��93�|$�O�u����R�f)-�嬶�
�A��Q����d
�Kyh���i|�.d㊻��2�T�9�%h��}���Ĕ�/����%P
TB���q�oPHn�(U|~=\�̟�w�nr��@�4oW��<����AI��<F�*�-x6P�rNk�vF&����c�(k�u�y���:�*;�ݒ�35A��c9���^:k���n%��V�?(��3���2�xy_H�9��������9p&�⸳���
�v[�xnbq�1��&s5�s�`�����J:˭PYX����k �2 ^i���/{���\\
⨰�Ld�ZU*����l]�
]'�A%ak��o��
tY���s
�G�������b�X�S3�W���+�r�@�l2n���|�OŲw�i��� ߢ*��A�����e�
l��DBd���b��n�{Y����%�z�{��i}7,s�m�^�g�
Ձ]	~��\�Ȉᱱ�<�}�l�c��k���y0e��1��������{���*�`]pD���
d�|��G���qi+ͤ_��ʞ+��#A(c�ѕ��z���Qv��%��L��fשz�Zs���y�MA�K�ey%3S���_��'8=�۲(y����A_�D*��j�A]�I�j��J�b2��h���䖒^�u��*�r3��B����iS�t͗>���U��H>S��P�u��+���]�[a�8��!!��;ľt9[6��Z'����<�U�r��"]��D+��@��U�r�κ�-���C r�pz�_�k4�Qg�C_U��Lɢ4_}��(��\�!�_�u"�rT�p�b3l�:��D�_<��8f�_���yOs��53(���i�r��͢�/�%�K	��x'��d�����+R-�b�]���-Z��3�7�˛���7�F��*�7����,�w��P�,;�HO$(�t�Q�P�J**_�%��������_�W5R�K�;b�׺@@�y'�@�i�0�hؘB!�R�5�Yy*���3�9eIͽ7�_�k�~sI|�њG�6�n&���?D`��`gZ-�I��3�l]���2�V��!V� i�N�E�xh�Qm�Nr;3�߮��Sxk�!I�8^P��ʷO[�� �����؞�Ɩ� �{y�<{�=g�7�l����I�2�[Q�py��h}�wA�0�߿��ze���G�
�J�!��t���Ǹ����~-��YUX�#�RW��'��W8?9���ܨ��3/����F�ѩnC}�`�3�C�Ywg�?Z���Sgyb^�gF��
�s:#3�*6ʓj�+Z۪[�r)��}��{�7�����ύ��KYF1��D�������J`���vH��G��e�Ώ3{Gw�b�kiͦ�	�q��7|�h�n���˼�t��箟d�U{�HP�j��!�e=K����������!�F�����ل'�
)#ٵ���&�
u���X���^0�u��J���X��d�J~y_�dV�����s�HT��Fr�&<�Ż�*��sJ��k�?J@�[�E��O<�Xh��O������%�:l*`x!�ar��SW�p@�b�t�A��4R�&ǒ�u���T
�w�&ȃ�ɑ��^���{���YF����6$�U˲a�P.Abx��m3�ShA/uu�q��Z��1�0<�	�د���%DD��Ř�s�ڱC�m��x��Y��yhL
���L�?�_�4�NJ�溛�,L�Q��8�
�u�]8���Th6�ը��:��ʼ��s�k�CmŦ����;���3\�;������dZz��-��(T�W^�w��D���e?�^+�|�E�sf�I!���W��ކ簎^�	�v�(�Ǽ�b��d��oDpud���QpQ�T���{!��E��F�s���NF+�*��n(��d�EQl�3Ό�ldq2�"�rb�E�n��,:���	�GN��iOZ�ޑ��
�t�ڣ�[}	���-��T_D_N��đO��j�����{�#�\�_�'�����=i*QG��E=:K:ClA��?X�P�!���}ܮ� @r�e�Q:R���%*���>U,�S�7|Ʊ�RM��TR��裯5=�L�W`�?kv�w��uh�Ͽ�å�Z}|��}��I���8ؠ�P��>?KI*�e��%�, GO��G;Z[.��1��uޛL��g�Se�e�s5fZ����8(�)Ǵ^�ԟVi��U�f�-`���[m�J�;��a�X��	rl�u�����m�_)�ȯމq}җ�S��z���_���J9��A*Ԅ.�V�������v햠�k�M�����J�;5,���H��Ղ�/y�����
®���^���M���zG:���[�'�Ab��Sd]�Ź�yyc���e��V_�Z>�n�31;��a�;Qnz4�ӑ�L ��47P�7)T;z��h�E�gm�������E7��BAf��%���V�ʗq�V]6)9�|�ru,A)B.
�Ω�;�e�Ln!tv�{R	�B24��u�#t�K�P�`�:��5 ��@M��*���3���?�r�–/���ve�sε4���$���	�[�yT���6D�Ӊ̍�PW�@u�u@3Vo3���f`+��>�w�[uU[It���8���h��PMw�`b�Si�w,qu�"�s���f<F�RSХƛ�5ZB����S�����a��
�Wz���"Ǣ/jjp>e���
�[9�r"��(�ߦG{��VP+|g�k��-���z�>��)$=��sL�n�
����0�;Gw#�COZ��ֵ�>�0�ySI��;�B���N�sq��D0zt�v��X�mN0��ը�J�r%��1�?�lu��L�M(ql�(�A�Z�Dߓ�kL�~#̜� W�/R�=C�
�=CM{�G�d��6�H�Kʚ�b�[,���8C-��*ղ�����
/
%���b�
(��2�ڒ��+g4��󷐽�����m����W~�G錄��ꁮ)�ִ ����$��F4b�P������|5#k�W���T�����<i���M����Hlv '���l���ſ�N��׷�t	����*�W�,�GÁ��ʾLګ֯�%*��5-�$���H����R�uc ̘�lo�͞2�5�[����2�u�*}a����}�^j��.�i�~�.H��� mT�|A�y#�8�M�+���`��(c
3H�M��"냖?ۯ�k��{&U��|#�<��
�e5��x��
g�S�s���Nփ�h�6�����!n��'�T�z���uPw��^A#�����N6��[���p�@V=�l9�dl����ё�7K�;l��F|�m�u�2w��g�Ӿ�t�H��o��^3�L]t�D�)��\Y�+�W�~,��x���(�/�NZ^A��%��P��	������U�"iͶM1�T�HP��|�NN��_l��l!Z����,���,k/!��_zY��	��~CKF
�Z*�<C����;(����z�i��n�._�**��goe)u�����|�׬QQa<���zY�Ă%m����}�g~��#�P���+���Vz[�"f[l/�weˌ��`
]Y���*47
�~�
��w�4�����M�m��1ԀC�HD�dnj:�) ���,���Z�����j%��YO�a�F��΁]��͂-.�_�!=t�ɉOr��+4$"X>����k�x�
��K5����?�T�R.���P�v��o�JP��*K�%��,��ꝶa��!�������Q���9�m�_��NQ�Si��n�|&l[�t/]�~d��a})�o� �������x=o�1�s����r�o�.z�^����35x[I(�h�6��xh_��<�x����9�ΐ@��B�_�f!$���IE�;�<�>���������T\��e@��˷˪���xP�Hѫ��R��g�شL(:
jD%k7�z%c�o��7	_�+B����E@��3B��9�[�aQ/��Y����o�H`�:4͎	������D4�:�_ق����AU��}��:_5`�ao��J
��S��Z)r��C>U�d�H\�����H璞I�M�##;Q��,'
/��OȯF��
���۠�Qbni�n=�P�y� ��6:�;0>����4�Ꮖ�?Gr�
�5�obC��PO�i�U)O`�4+���=O��HZ����p��b`]pe�ߥ����[oȈZ�m���g�r!0�v�.��q�1�X��lA��;��X/^d��~�����e�AZ�3��`��4+���2�,�g�i��γ@Y�*18qf��@IS�޼�Mz�S�83a��w�͂�v�R��x<��[�q���)�gXͲ܆���T�"*n��>O5���8N�r�]w�a��w�I ���z�̱O���W0L-Qvk�H�$��55g���_hj[b7�8r���[����O�s�Ev�]%�7�t~B#v-Y��Qz��Ⱥ�~\��Q��:L�
���L,OZ������	T�$a\Dh� �eXs�2�)��"�zu��me��Ŗ]F3��7��Gё�g��>���
(Chf
Jp��@�%�=�x�,E�Y�|½~Z�d��W<<2fCgr~����zI=��~F�k5�ݨ��X��d}�7Z_&$5�.�0SPO��uw�m3��S8LW�b�B}*	'=�Pq'��t�U��UMi�r�g��I��eo�Zs��&L3�BI?��'ABQ7^;�A�x���w�|#��v
-����[ih0�T�7o�E�E%ń�㭤�A�9�'�d#� j�F`�"���^!��12�$M̢B���s|�Y�%s��J#�P������Q�h����"���^�'/)c[4�C��&7=3��ܥ�X�����/���Lw�h��/C�����mf��%HYˈ\f	��ِr[��;"��L�U@�r97�*����w�{�S+��G®��H��{8�鐦,%�̋�e7�Vf�ȳ�����
�M�l���^)����!
�Պ�?`=��t�ho�YU��LF��!���iQ�q̕�3�t��Pc�,����$Z�Q���0'�h����>��*��o��vV�ԓ��lXS�ͻ�Bu��<*i䙽��3�s!�S��9��T���d�(���HևZK_�W��lC��kZ�1�ײ~k$�n[���+P���(�y�K��ʍ�WXw+@�W);�O�H v��qHs(����R�]��ۺ�>���^NÈ���;�زM�ڐ���1)Do�t��:����r_e�<�*ؑ�(<�^WY�߮7s�_sѪ�Y5歫�s��zll�bjs�j��[�U�H�T�8���^1F�r��br�.�\�0��%����y7L݊�$���m��s���S�ڋ,�IDծI=�TO�y�]p��8�z��qo����(I�x%��~Q�14n&�J��sdS��@W:��!u���h0��V�M�����4Gi�"�'#'�bC�qƃl�� �sG�P{G�ҏx,q�kn߂�<�&<��
s��)�JY�D�wu�
SE�Ґ�>�E����4�V�[n�0x��@��I��+�O��P�ä6Pe N���q��&;��L�x���9����-W�leT�۹u�l�얹�O>�`v��=��|��r����g�%�E�������[g�;�s�܅Ug�95��&5��f�ŊW�ո
^�˗Ý)��x"vb���C
�v���Q���,\%�n�z�,zBO@�﫶��E��G���&�=D�U��zE��Ώ�A�.̘�|���%�Pk��a��*߀m����k`_� "m�)G�D�r1w�7n��B�[V�Ѐ�C�Cқc�wT#�jY�FM�wo�O׮�Odc���I����d+Ȅ��y�aY�>��D�]��.Iz���yĺŠ$'��߲t��D�s��6J>�`w�y�t�0�=���%��d�>=��vu��i��F��P��������[BI����qI��v��wO0���H87Am����C۴ע�j['%�Tsg��ٺ���'�L����Ia��]Y1t�b���6�z�y����s��x�`��-�e�t����.��\Ʊ!�a*���2�����K&ȏJ���f])��:�أ�PgI����7���A��`]�ˍ�*��%�����-����>�Zn;3.�E�qr����J��{���j�S8�1��=��\{��-6{�_쳦�׍]4#��Mt�,���H�m>x���2G���3�m��f&�5QB_�6�cN�n*0���gEm=#�:���p��
y=��/_�c�/�h@`�dЫ%V>&
�c�R�|RsEs�SNs:�%]?��jf���T�6�����X�OD�����3����,�&�tq�ښ�v�!"�L��R)p({�J��<}"��ёQH!-)�J����r��Sq�8�L��0�=�R�UT저i��v/�
K���B�)2�Ԛ�X��(��i�VU�%y�^���=�����?Pq��qno�[&�]��L�I?��wup�8~��i����l��Bp�nûͩV�%�9J��}Q�9L��`����h�V	��c�����$�/eS��F�ߧ]F�w��I��*��Y�=ک��\bp���Gp�'%��S|O-�gr��D�V���?��ߵ�����f|_�~��h %1�$�	�-�$� 
g��>�^��S-i���6X?���wJG�n�Y����nó���Y[��&�P��$[���R�x��1���l��]�����e�@�'��ή2��w4\j�EA�%z�4��+蓗it���)�l�jYv�Y� �:��W��lnp�#��)&cy)�03�E�u�U���•Z����8����q̵S��_;��}�F�{Z�*5-=g���l􁌅��J�CYE8?5����咦�T����z�;�2Xj=���r��A�����"�jw�@rGM8�5PM�߬�-���xXC�[�yp���䢟�rx	��b��N�m���*ұ��!o����z{-pL��1��:��$�c��np��Ԋ� �>��(��#�&ow�+�<�hg��ݕ��:��w�N��xe e���Ft�-y�����
�P��2)��PE`�ȧ�����_G/�`v[�#��Gb�P�I���kJB��KR
�7.:��딅ɴ>�g �O��WlBL|�_���0�C_�5;��!��
����+/���巺H͟�-�qwz�`*�SH3d��5GF��Y�8G@�����K�F/��;��(��dҝ�6G��#ɕ�i`�):
���W'�rḰ�
������!ķ[&01���������
~@�����0a�g���s���o�"�l+��	�m,�:�ւ48�����b��փ������vܗe����'�n
)
s���^���O����<�>�$,���
=��/��d'Y(8y�c6!T��.���iwJx�4��~��JpE�Թ��}E2���X�Ĩ�rH�Y��g��?Q����|U�ބ��!¸)ڙ��X�!I����i!��VsQ@�4&�y\:=A�:vO��G��k/c/v��Xl�O\�8FWմ��$Jܫ�7��b(���M�ɮ]�b��3�#:�՘�!����4ID��Y��T��ĥ���v=�^Tٟ�n&�Rj�G�e��~XT�nU<!8�r1���D��^)Y������6����W#
��w�ץ��[��ITT'����m�z�K�>z��Ѕ�J�����-0��6��2�VN�J#ĩI��<;�]e�D�g�������r0D-6V^��}���dm��(�@h�^�iM�ʢ1̱
&J}4#�n��F�����/R�
�Z�Ba��^D���̑�4>�����+).,�W'!gP"�s�7�4wE�Z�.
�5��vZe��K��Յ:$����b�;��#(�ܻ�.)v��%���4I\D�ç熳�
���ъ2��3$lt����F_����On�I'��b���Ƙe�oQ��4�o�w�*39�+
�Q��8U_�n�k�N.W3��[]��ikK��)�#ds������l��sh~@�
��J<'�l	�擝]M
G(��,t��>�&O�yV�؇.�Qݴ�ћ�
B�	f.��!A|������oI���4׵j��h�`x���1��

�f�o��A^}�Ñe�=���y#<4g��F��ՈE�I��F��C_&�U��R2f�B^�J�1ھ'��55�]�9̫�\O|j�C7�s߸�%�N��9
#t:M�Q�4$����ˎayy�rZ����_sU����������u�7�h	fn����q׬�*;�/&�5�e2a�Oՙ�KA��|3�|C��o<&�M��tNHs�r4@��ˍ������?I��[�M۵�5H^9�>n��KY�x���M��8�R_{��"�:N�EC:�<w�$��*��1��	�f���7�˜�'R��B�_�6D��:����8Ȁ;��8R�z՛��\����,��U�z�B4%��@7��p��/�k����J�
pE��K�!R]
��f��Q&�Ĕ,��M<%�+�!�~2N�ŭ|"
l^�� �>�x�����>����y��e�v0��t�x�G��F۰X��
00B�'�4��<r8*V�	2u�Cph� �s�8Ɖ���ݬ���_Oi	���E��3d_�~ťȯ�Q�+�	_��6	��x���P���p]�.�2UNN�d�ý����„�܇�t�Ȭ:��m:)�7
_��--p;�����e��WT����_ؑ��=���ZkڷžVSEj(�x����ن����D2z��xKַ\3��+��� ���l��p����j(���$�?�e���<ٟ�Di�C�싧���z=E����K%	��uND!,�'9��C��t���h�%�v��*���z�?��t/���?�ݥӌ2sh��b��ȵj��������1@�'k�nQ�ë��g>$�JB�)�z;y�aS,h�&��3v�ѷ3�6�TH��$�Rl���9�xF$��Wk<HSj^N�Ai�4?���k�CN`ȑ�9B�-�a��|^���e#����@��w��Oʯ���G�+��,�8���V��(<�|�T�WX�C�Vt�̀@��SV����e����ڀ�%.�_x�����5�3���3)�'�Wq���pP�q�d1��7՗,�Z��0��0�~+�<l4�c(b�������0E4 ^��L�P��
2�����Vx�7�b���NbQ�Z�_���ݮX)�(�U�{,�����N�V���V�L��+xX&�Z-���6ٺ�\�;1=b]P�D��o#�b,���uW���<!z�+��h�b/9�G$�j �H�O�;�����r2q.e�yԠC�0t+�Sd> 5]����ܮ�\E��ЭE|��#!
�������N5�߸�?ȏ蛛����!�t`do�y�L��zh�=4�g������9���5� �|�Ę�|���r�}��b��4�1=����P����d�2s+S�/��M����Z	c�%�ȩ_����{��.�U��7�m�G����J��_�>*ۜ*�6���9e
R��X��Fj�W�l;?J)ZS?�!cO��xC���@Q�;�IF�2�Y��s$�eR����"��C����J�E~�!=W��'K�m�"ʧ�({]b����0�+����RNi��M=���j�9ȺQU�2��W�۝
�K�/�������T�h��N<��*�f?�Y�|��}B�e����>�w�a_�F��J&�@i���9�pn�\��2�b����E�_�Б�U7��a�Wbr�k�SFmM�;mQq:�#*����1��9�u|+�T��T���1��
�=��Zw�O{	�كM�1���g�`e��-9)R*^Ѷ���%��xt��.�+�BQV�E��ќ��{#;�'�~\'
y�'g

�77~��]��Zf�@�¡B�HN���i	��%��8�'�
�a�Ce:��F*���䡭�Ҥ��7Z��©��ɂ�r�5t$|� 8³�%�[���$��\�o$g���Er�K:d�$NZOJl���g���O���4��,	^n٧
�2	�x��ܞ���tr�{��G܇w(+����HOYi�$�x��o��Bz
Qì�l�C†���|?qk��r���犵&�K����q-/=Ã��a��9Ѱ�-�<'�d&l��������=��g�&$�ő.��a�aN<^��]
٩�O"i���]XL�{1��w�7�3�5������N<u�0��n3r'�`{h��ZtZ�bt�Pscx2F݋`avۗ�������`Y�IU}�}���$�]�e��ٔ�Q��n�եX�j���P�L^�A^d֗�����8�і�UɸmS`��5����q�FOa在i�z�;;�܊����)x��hD����0�D��������X^���⊧"���'Ig(z��q>�-�uѡ��4o�F������a�Y�F���dw>����m�Ci����SONT�7�Q�	r�۳��
أ/؁��hĽs���!Ȼ/IL5��a���g~=�q���34�V]���\�.s5�Us���7q�g蝄����0h�r��/B$p�5�g��2P1��4�0��q��_��y	����3N�DbW$7�DzL��_�.�*��]�7�VNQal!Bk��8U�9��M�}G[����i6j�`찂�q��S����
D�wle�4�?�6`�E�uq���ȥ߮N?�H_�^�Z�՝r�A�T����Ѡ;�g����YwL*������z�/-#K��yaBn/��Ls�z�f��Q�Ts���˛u爏
a�[���2�n�6؍Y����0GE�����(� ���9T}�Z��O����$7������7X�h,O"�l�i����9�)[�(^I���.��\$[~X����q�.[�����:�Ċ�ƱT��k	R���'c;�0��%��.9e�O7=�>vkKc�*�V�Z�64�6e?���^Q�9+}gd6F4�s}�b�q2�Y:D�斖� ���X\�����3Z��~J��J�Z2Q\[
2�G��ᖗ
R#j�e��P�!Kca~+�ᅪ�ρG��!��f�g�m�e�N����LҖM�X2!)	jbx��뼠Ze̲�#���m��j�pS�v���y�c���"�OGn��c`�0*�?]T�~�
�Ήm,�����^B�C`���=����2A��5�-��?����$��#_3ux�k5�I;tL�󉖚�{t{d��he{ɸ�c��ê�Ds'eؘ��J�����;��]��~\�n*<�]W�u�	����hQfTM" �M
#
z�>�g�A|�z���rm z������b��'Y�	rq��$4A�c6s&S�� c�Zn�M��cN�o����1�!�Hl7������b9�& <O:j��X 쌤�|�

�t@�������!A�d1WuhL.8���0C`��(��XJO
a�T����~
��뒒YIߑ�]�6����?>c?�%I4�0,�O[}4^51�L
��~�U��ͮ�f{��|�tdj�ve6J�vR����w�tT}�kܕA�n7H:{�{U!J	�dĹϾ��<,��c�_���nY�.��7�\"����h��i��/,!��ݾ�g�Ę\�7K�}L�9h�*g#Ą	��oU�+�8a��~��#	�c1�*���Y) ��b�e�4f���aXA�I6zPg�(Vd��ߨ�=�٢E��t�j��}������<����2]#�*�c�	Z�y_��Ӑ����TJ�Z��P��px����0~-��>�}����y��R�y����>�X۬�N��Q��P_4K
�{�w>G#�9c�[��ь�N�:��]�����$6��q��h�J�zup.{�j;T���	u����6���\�|�S`�=I�L��a�����Q%G�%1�8s�VNK3L�2�tNM�s���G�S�b�_����ӣ��DE���y�g���'l�[J}
���ro���O���k�QZ���B�ӏ ��f��ULp��JD	{��P���]��~�pr��mOBi����<F8���MK<v�����F��KO�ciy�b�>I��L��"8�#��TS�(����(|:;�M�H����9�Gc@�°�w�A��;+_��]� ���\Uٌך��'o��r)b����t��V���Pj���p�)��n��A�^o��,��撘z�����̊9��rpC߸���L�����8�L�I�u��ln<&-5ȳD�H��u%�����I�&A�-�¹R���:>xӁ}�E�Ru���̈���x��M[�S�K)��/q��Y5����_f$���p��i�r
���)��O\b�!"�~�)?�	X���~����%����v?/i��M�;�^޿ɾ���ѷ�_
�u��G��S�>w�g�w~.���ߊ�t��ww�;�K�+v��w����`դ�_��S���->U3=-je>�*�������^�~0!��U�QW��E/�A��F<�sJ��}���#��0U�8�,զ�o!��^Icf�эad�Ug2ܥ��|9���֔[�jb%��!��Ã�{O:hEUL���ńPy��,�~����j/Z�
�w�>�8P�v�W��r�@�֢�jp�~�h˾e��OMڶ��(��j	SH���ZV-�Qbt!�K"��:9������-+;@�򚫢��l��<���:�́��=FbQ��5[evk�{o'}$<�!b���D;��g+On�����cِaЃa߼��Ri��35%%�t��D2r���1SP���N�4���=\c��nu�)��(V�@M��'�+��>��$���u�{�=�p9���u
S��#��8�т�D��eVa,J`���;Q��wg����L�v�m&�w[)(fo����)�����H�w�s0�c�	p��h�}0��Z�\l�Z�������JLoS�ƽ��Pp�1Wm��k�U�'��B�!�A='���q�!L6�S��$�'����6�o�;����u�-�4���]d&�_r���G��h=�B�2�� ���j=g����z�mt�AU��a���t���]u`�k2.��:dw���X��8���PK�}�g	�W�5"��%8�MH����A����c�N���`A�j��b��8�J 
�K��M�y����g`�L#�y�[�f�-�s�[�?I{�eVE�9)��Z��R-�]��|��:�|I>B�n���|ΰ�>����A����14�U���w'���������<����-.��s�v������Q0�$_�Yw���A�4b���A���4�}��{�3����R��#+j����g,B�O�]&�Cō�B���b��*2����|�hq�3U9�ݬoS1�O�����v&����HFs��T�?���ӝ;�8����<�j�$�q���f�>��'���["����4��{a|�_)�����7q7+�(b��r��
 ����S+6�ϳn��c�ТǷ�m���۸9��;CH�\1� ?X�G۟�Xu�G��J�q$�>��U����qi��Y,J�%�A�G�jn�c�b�},q���	<��bf���3�Pɛ�Ž�
��6�^�tP�E�2�q�������*�ԭ?%&x*
9TM
��^?A�0��g�i��:�A	��B���/�0f�8�'�z^��	|��"�����I�FdP��Y?dZxY�KG>�\�������3���$�Yy��_���@.��;t���{�@w��G�����4���¨jfEn'yN=OHr��b�w�֍�lDA���._)ƒ���D������[��\69��
�o!�-�Ï���б�dn�k#�;�iȜ���O'��C��WuA��U*]D�Rc^���|���9[�5�OjU�g\$o�����H@�
����i�E���
H��Z�W]��|�F�'���Ѱ*qAj;03�p�Ԇ��}�Ң�����u+��)�/���G�(L�K���UPySW�~�-�	��r���lt��'O��Q�H�Y㟔�5bHh�R���}��-
@���p�v��<�W�G���Ty�t}&��f�g9m��v��e���*��h2v&S��fB�L��{;�q����%�ϕ#�C�A^�EX;x����22�=��k/��o��*qJ��*q&�uT��x�i����,�k��0�0i��[,��R�sc��P��I���Ɗ���M^�;'�\�޲�k������Yd�Ry!xc+Lj�ږ�7��Wc�1�]�]���ae0 8�6�?̶�3�=���2�M\
`�ВLo�a)��YNQ��U}�
�������,)a׵u�~��#@Ø=A+w��HU"ɰ��h�<������"�j�/xK�
>51Wq"W7�J�Ёeϝ�Vn�����M�F��ZX��kݼ�җ��K?p[V�,���?��I��/	�d�h|�I8����ۼy~|dHI఩�8o�<��p�U�LN~����Ps��l{���Y���jy��/x�S��~�z}3v����*
٬��o7�����q^��P[0�<|�;;�=�%��Ԥ<ۡ�/���

���4WΗ�jK>��73؉Kߡ�d[Bœ�F�Z����ڋh�K!j�n�ud�փ_X�F?�Ixרv���TR3�[�K�n=���}m�J=�Я����
�x?Rof��ny�d�uF/8BևX�g��C�w�ȴ)�$�
Lr8uΏq�n���02�+䨿��_d({ѫ*���qL�*#
�i�b�G�[���v.X�W���g7����7Gc)�r"X�g>�Q��p)"d�侶k�u�pT5��<�S�Ħn�wއ�e�����7�s8V�靄�(*ǡ�ͤ.Y*�Ҏ�KT�+�c~W��Wti�,fh�=Sg�hNQ�]��D���z4'*�%�U�s��l|����8�ݛoR2�~���ZˬMxOAM�J��z7�����ѩ��j�������F>��KI��kc��Η�b�D�0[��F�U Q�R~Qp�������ʫOL�3^��rQ2�w��T�g��x�
%DnQ�qQ�Crb�~�^��l��+D�^�F�~8��|N�9o%�q�z���z&xV?{I�]�s��o�������_��$Qb:7lc�cg��1��T��k3$W�U��_Ʌ���Ċ~����㉥�N?��ێ�hy�x�i?�@�S�����X�[���rC�֞9�Z_u�.�^���7>��fշC��E���} �/~1>��zİ��P�>���*ڍ�:����A)f����ߺ��۬�]u{�X������HJce*�>�����p�i���1Z�6{�����5%�����<�Jְn����_��5��M=�t��z��{Ͽ{P�V�u	y]�*�}����U���[wQȊ�_xn+��-(�N�9~1�"���9e3�q��В�/��E^Ť�	���T���v�N����.s��E�z���+
tohȞ�p�q֎i}8���9�>��P��,-H�.?f��;-DZ>-��ۤ��	��`\��Ç<��ev>~�i3B��+b!�(U:WZ%�Ë���ݍG+Hq�<a<0�+ʯ����o�d��?LE�i�H������![�'�)�`D{;��`R�ṘE�Z�Q����_���8�|�
k�/>�˕J&�B�Q�}[�;{��N�������v{o7�6�`���,a,�վ#�uʼn��M.��Kb�^�A�T����Ou�}��e
/��[����Q��i�*��{\T�&mNe�lk���q+�d/����xI����=I�M�g~�����Y�w��t�	�&�V��,��!;���^s���8��H�Y��W�!�pYZQ����t0S�U	�J���Q��G� ���7�?�٘���R��.��M�F~��Q����#�t�MK�;���(L����Ʀ��^sݡ�����������z�t�b��a,ɦצQ�&h�-E/.�k�u�B����}e� �̿��,�<E!����n+���:�|=d�	f�8�Id~�(�JѰ�?����_�F�4��pBaF¸C�`t���^*6�2�&��su��vv�c,dQ}C?�A"������@[���/�EJ�ˑЮ!�=����ŚM/��`�i?��d�K�ݫ”=���/��\��>�������mPs��
�v,�|E�K֨9&/�-�QgZzm��ZA�(�5����0�}����`l�0�=ŹQ�<RS>/-�is�Y���[䂿"��hp+����b�2�qV4��3�#�C0+�̞�C��T�k�<�5�ט	��K�F�2���g\�G��X�wO���fXs�Bm��tR�+��S5��U��w�c���(�ݧ�M`R8�EqsCVG��BU{5}����䛒eY53�0�3�!sE"g��h}����‰��<�,�n���&e�4�53���AQ�@Fp
$N�+h�=����l���X��^#m�f���l
�jJʨ�<	�M���_U&�v6WeE.�~�	8��g�@��+��g�0�03'��36�N�I��-C,�_O�f�d]��s�;8��a��"4~��]w�=@_(J�����
��A���?�[��hS&y�q�d�Ķ�)Z�1�#����LT�d���N���<��]:���ԯ�z�~N�ۦOQ7�s���]��"�;�Ս�!���.��)���r_sw�[�^��x�}F�;���3�U@g[���<%�C�
!ky��L�YI�8^�٬Q�-ts���� �#O�ށO%��L�٨���9�Cո�&�5��f��:!"���S�ْ6ZF{�S�c&)�O�B]�e��ػ�K�W��.!�Mo5t&/t�y���]�wc�\�2�+}m����z�X�qM?�ˇW[N��t3�.�e�\���=)~���>V3�>�_��[PjI�������<y'�kѦ���ٹX��V�XdSq�?�{�������^�l�hU�^z�#�ַ뮆S�Qt8�����,>8�}��z�8�Y�^x
�f����l�[���V�l�=-����԰s=5D<բgpfq{�Yv��0���!#0�ss���O��g=y�d�…˂���|vU�× ��"��/���b��sъ���4�ղ���y;yE<�
��T�5��|� �hj�}�9G��m|W�dd���+S;��nҪg��Űw���^���5����t5�'�u�ܮ&�i���@p|����3��&�y�ϒ��Ň�0qf���3٭���D+��eh� 

��\w�/n���bP������R����F\.�SU��0�<�5�v ��k[�ϩ�t�f(	�ȭbo;b�C��gWd�ET�G�d+��ltWA�������B��gA�h��Uե�a�	Y�d�|�����ptY��e�C{)>����P
�Z�D�g���K���[�&�F&�l=Z��؎��ɖf� ��&^a;��q�\mB��j޽�v�|�d���uY8�� 4�
�g�_�_��ޣ��<�	�o�D�b!<GM �=�SW_����23��$x��PfiZ>2A������-0.H1:��^z�fn8l�+�N��'G5��~~�χ����~�~~���ԯ�dO������}�N����??m'��g������n~f�v�w��l<3�}��=�7��|���7��Y��N�z���o1��kL�t^���s��>�G��IL	튿�F�'��B��8��7�-|c��,�m�x�|���X�q�{	�JՑ����k�!N=����㞾�m�\����������;	��x<ȩ��T����L`q=C@�~+7��D��(��̺���@�@(�8�o�`��ꟈ^+��w�����k��[ba�w���,�PU���ϳv�Z�b3��ӥ��&R)&�~�t32g�^袇,	{�*�#6���
j��F���]�s�Pf[���F�_˴��˕?�PF�
f��^ԝ��d�Rz�d�*��+t�v��襭��s��D�揔0d2IPH7��pA{��V�#��^��wt�X���D"��cٿ&���1���L�)��+�����p���N~�OE�8�ݭd��/-T�-0�e��6Y�>��Q뙰�mX���-q���-Y<�/�0Q>筙��J���J%BG-�‡�a��R�K���[�Xe+�
$y��-��"1��_��(�W���IaZ�eH����s�Mĥ̈́�d�'�����/��w)P=~�I�a��)۶F݉��
�	=D��y]u�����{����D5��zl��޾{Ubc�	�e5;<z��7wv%���{?6�:tnR��;����M��=�o%x>�0���C<��4��+���ӂ+fb���1C����UP��]�J/��?	���r���+.1H�x.�f����������G�`?0-y\�n���K��Ԅ��/�rݕR��J
�hd$B�\��A��_�4�U(�?<E�ᡭ���5�bP�I�ЋV�@U2�F�>�m����
J�XhOe��L�]~���1��á}D�B���ۚ�|߶2�X��%��^�e��M�{
j�C+�_s9�iA��Ұ����e��EID�8n����'g�@iPO3Z�ֿ��vhc�͓�#"�!	�N�皤�(]�5����bt���~:LaY��9�+��ey�8˅W�x�"	�c;Np����Fr<C��J,�ϹNt��0V	HWԁ��e4��wZ�36KםHM����4|Q6�c���\�˭���ǽ�j���x�,X���
.��!'�"�a��Q�dgK�h�G+��ܩө�y5C\fj,��1�gm��Z�*�0z��4IǸ5P�J��y����%t��\��zU(6B�)$�%��{��
Ŭ��w/�O�T'e��
�G	�.�²X��TO7$��/K�6���^/�s�:�hN>�8�V�S�|}���#��*��V���RĠC�&E��dbƉ3��<g�)0�B�~�x���;1D�B�E֒>�]<Sn�B�B���
�8_�;s�dy��@K�Fp�[�BY��Ȓx�e:�Y28�Jx}BQ��-^�b�#�WEB���}֥�3:s�"�щ���h�vw	���J����Q(Hƛ�]��>��ׅ@�Wi �=��6m���LFj��gÃ)���%d�a���j8>2>�C�Ȅr
F�b�F�TB�sbO!8��v�z��p}�7o"^�mAM�e7��	��b_�6�5�~8�T��w�4�C��Pc�y�:�C��������,��n5�T�BfE��e"�tl7^�`�˚;Q�}'��W��a`����(+S�mCC+=o����.��'1���vR��r�*���.���W��~�r��c�$h�˾��r��y!o@�-�"���/yķ=s����r	םjf��	�^��}6�f�J��y��(z
����ZCpΐm��Od܊أ�k3�Ÿ��/�M�OoN�E�����h,�du�f��Y]�F?�U��M
0e�`�ֽ��įA+Y@@U�p&��	<=8��/9���o�qӝn������V|��$�T���9F`C��,���ul��b�ۋ��1��)�*I�?��'�ۖ�%�����+%��u�J��vaD�IS_�6�`�J�ѹ)��m,]���2��W��FU»FYG��ͳC�e���p9�em�k'/f�{�����h]����M��R�3I�E:��
���+&��Llg���g�Ru����z&��9����~f���5�Y�����9y����ks뒉ʜ����:øSQ���6#���\��c!2%�����S�E�����{^��}a��n�Vx�+2��"�֔��L+	PN�ռk���Rx��֠�HW�K�z6�tʦ���6ۤEW�X�DS�5y\K�6��>��T��{@(��	�����Y��&����{���+$��ad�:�F�c8�魡͘����A-?	���bEZ���U�w>�(��_�
��+v�J���0�0*
@[1�6�ެ=Z��qϷ�m����Q��]i/?a������^�Y� �ׯ������.F;:���q���*��Đ����w5n/� Rt/��+��Y��䌳d$��5�"_����|�8&(^��a���2��r~^"
J�z�s��"iZx��e�L*V;��>�1�m�Z�&_�enc���(��L\��:G�	�B�q�h
�A��Օ,"��A<�E/a�t�s���G�_�J��N=]�8=mV�%��Ԧ}�INx�����/��b����:�ݰ��hW�
�`���jݰ�fm���ك�:r�HL����=��#���X8��g�<�ԩ�z�`���&�G1�"8X'�o�0�v[A��0�R��w�u%���'-B\u� X�K����d�FTb���E�y�lL�Æ'���Sű����K��񔀭�Cy<���OR�����G�O)��=U`ߪ裛��J!�_C�M��3h�.@Y�Rs�|�	x��v�<G����%?��o|g�@��N;F4���C���/ �&,��B����������+0C��T�xo9w/��\�aM���p�c����6�!{#pΔ	Nu�0lë;M��N"����.#���Q+�]�Ǹ�4�0j�_��$�[,*փ~X��YemQZ?�pcF[�$�?��y�����L���<o��`�z�xc;��-�_B_$�GL�yuB"��l����;�~l7
>{�y�����}�ۀo`��Z/m�+	��Y�����{Ȍ�J�9����+�����#9��D�r���	�b�v�g�����`�t�3X���s��V��T�Z8��h<�z�߷���\�V��4�m��#��8YJFY�a��T�l^4��Ax��e�P��%�1��L�OG��:Ep9g�)5df�8�j�tr�m��v�F<�V�Wc���F����,�*�Vx�+4�p��$�c�R�k �bXH����X��8E���j
<u�:�i91��Eyu��p�'ᾋp0��CУ��x-����iq��r��:Ǯ��Z�v��[lw�jY�l%wޞ�~��gnBΫIab�3�睇7���
LAc�
��z��~DH��t�@��朽AYe� �'oC���V$`Lǐ�D����ZZ�(�op���T��T�<e�,�$ٳ�p�HD*��&�1�I�G߻��(�{2�eʖ]h[1=�Q��	�0x��i�ݏ��u�,)ys�$f�}�8�%1P���*��X	^�תrR®������+��O�	�Kjy�d�����1�K�R�[e0��[��Yq��&�2���2�󘻦q:��p�+sT����-6����mb6���$��#��O;�-M�&�r�J���}�����V��|)�-T!H#\�)fS�?14-�n!k*��L,ߜV�_��ħ���h�^��T&�� �7EG�}kc�k~w{�5i�2�	{u�/�bK^$�L�cP�\E�a�m!p��>�e6�@!�)�=���+�>f��D�JhJ���J/s�����
��D�ub	���J������bM���Y���-='�ux����G����'`�+љ��a�G�T+���?�T�h���_���r�i��Ui����BҠ�1$����s|���sz�����>m�����ia��R�|�Inz�ăc���R��� �D�4���M�tϘ�����A��wm��9Ф������'��%�e?��[<����jX|�n(v�i�|�}QƘLg�&z�|AW&�j͎C
�(�4���Y>�O�j��@u��b[7���d|n�ҫ�+8kD�Se�A�ʅ9yR_qI���Ƚͷ��J��2������Y�ˊ�F����ׄ3�(pP��h���y��P!�t�����:�@iWg�%$N8Š3����O�7�^�BxNEzF�Σ�s��Q"ҥ�H�%��_��ݜ<�7_��\�˟�V��/�M�{h�slJ�AWd>#
�۵�S[��W��\s`�0�p���g��lD�y�&�}��M�Z���+���߾�{'�5(�G?.�'^���ٍ��0Γ5�8�ak���eu�������#1��ۈ�R�,��\��mv�r4��X�w��Xp�P�-�(Z���a��I�{I`+�[��5�|	r��������+T��"�e�n�r�Q�C���iª��B�"�}�͓j�)��ƈ�/�/o`��#�
Z]i+�Ռ��M���s�������]'���+��v,s�Ą�õo�0�
�y<�,��f���iP��*W��je6��I�X�D"��J��6"�꥛����7�R���?�n�rऴ)�6�M$�Z�ݬ2y�lltJz
̆�P4��� !v�ŨF}G���:R��$ֿVF����gIh~��0���m����Ã�-L��ϭG_S�3z(����2�w�aL�T\���X���u� �o'H)��!��#��t��Eӯ���􆞏x�T+�����kY@��<4�R9��(C��C�Y� ̤����Pȑ��RZ`B�|��\0�y�0m~.���X�H7�����+g��%C�ĸ�`%��ϲi9=�g�}�o�s�65�b�.�PK�tᲝ0�xe���̕i�1�?t5�����T�}���t̼�Iu��m
{{o>^�Nr�ˣr)�[�V}�
�s��"X=��9)��p\���'� 'Y���`��#1ji�~0��X�����ǡ8�Fd9��q�D]�[����p/�72]�Q�O�0jª��g���k�B9x3HSҋ�����4����a�8M:g}a��W�!�'�2e�/�յS����J���]�㡕e$Y
�]F��xesl�%�2�#L���IF�g��p�#ܭP�#�'E��n�\��5j��Hp�70ͺ�C�]ߤ��I��-���7g�R&õ���l��Q�f���S�]ꦷ�,����̌��r@�<��p����D�r�DDeyVӍBO�0GH��k�i�æ�t&X��x<��}5�`9�C�>@4i�hlĩ@`��
iO+VԬ�Z���I%�����f�i���~�;�X~Qh6���	iW��/�cw��K��]�p���F횗.Q|�oS"�,Uz��B�#G���X��Y^D��5�Ʌmڸ~(zd��墈{t������y����'����r7gl���,�21��(Oф�X*�!�����(��k�]]O��C?���y��ǣ0j�ye�x��h��%{�z��w���0M��DŚ��/<�,�����u���m5Sz4~�B��maٓ�"i#���'�o5�|E��/�'ք��(w�K�d�hR�O^<���Ե{��a^LZ���:q���6?#ۛ��I��m��[������*�%ޤ|��.�"�]uq
��|�5yK��NHS1�b'��e�}��\��1w9@�F��.�sR=Xj
�F)Mb7k�����LJ��I?�_ ���7�ꃧ�9�yB>���t��X�?���̫D;jՒڳ�����`��`���|~�h�֐�d�A`�:�]]䷺%�Y8G�������88�&��tJ��0��7Mvc�PO@Z��:Dž���&��fB�8�ߒNRc_Q'~�	����910��N�wv�p>�ř�Y=d����N�5�z0?�C���G6P{FH}?��GČf�&�dP+�:����V�����\*��[ɢb�%V#̡�I�<�K��7����~�����Rl�Ʉ�e^x�)G�&ȫ��AL+>�@�񭖒v"��u$k�����I
QsQ�3
���i����f}���WY�ТG�(�}J�wU$j����4��@1qF��K�HL��(<{�!�A�RV����ߔ\Y� �y��)��`��ѝ74D`x�RS���ߨ"��J��rٌ1���HH@����Mh�C�'�4�;
�w��X�{F����޷ߘax�^Q4n�Y�u��ruA6���e
��iۈ�G9��7���X
�	z�oJE���؅/ƽ'��f�OW�wF@G�PyJ�Z��n׻�*�g���%�M���.�<x�*Ċ%��כ�"�N���;q��*^��]8M��R1'�Op�
�*�𩍙�uo͡�)JEr���Bt��`2"�B/�QhB�ߏ���vH:��8�z�I�F��/y���_&�N��u}�z��]s~K����t_'n�#�N�����?��5>b����ɪg������'O����Q���������U�~��M�~��~������~��N��'d��߿��}�_�C�{Y���/����-�}��_j��.��I���^��D��0��#��P�g����Q����������?��=�~}�|=���~~��֗����y�G�Zoö~��_��ߓ�_������?ɫ�&�߇�?���k���zJ�zs��7���On���_^����o�;#|=Z~B�d�7�M�B���i���s�ѷ����;`Ů�"��qI������/�"/6�g�a��}2QRS�
�OA�Y�$�ח�jW�j�������͔Ŭx�8��/��D��,��QA3<٬���(��.9~�LA���Ԏx�����so;@���ݓ	�IA{C^��̫�+��m��Čň��UG���؃�n�pXE��[��B��4���+Vu�u��;' ����=t}�*�G��:r��w��X&�3������O�(h`�F�=�zrW��a0E�M}�,q1��
N%��H�jΝ'�R�=������e=US���c:?�QK����`�ìl>�ݐ__�1�p���?�w��������
�ê�
�6]�� Huڪ	(�%����}bN)̆�!��/�-�o����C���ª��%NMSI��w���&�k���?R�QY��B"��$���	+L�a����;���1T�L����
2�3�޹��ڕ��� ��)�!�\�#+��5g�c�r����`��e��������T/'�|ik'��X�N%��	��ۏ<�j,�3�+����+��m���)<��<M��FqFg�N/-ͫ��4�$*(�NxT{&��n��G0'��}����`#-T���F|EC�*%������FJ�T|LZ+`E���� IYe��	`���Ku���W��İW� ��U�e�?�ui�}�A���
3���:?�T�@:�)0�(��N%nJ�	yL-�.�Q���'�U!$��>f�TI�G��74�&	�2����X��Ye��+!8�X7s�8K��SI8�[�9��ٴ�O~Y�E݀mP������E�QD;a�Y2-M����,��͕J.$���f�n���V@�F+��`�$�`��W������lG&�[يM������'z�Y�.�t�<9�[��6,��O_�[C�UR��8��>V����oY�"1��?\:+ �'�jy�
����r�����ƃX�m�V<��H�n���q*�p�1;��L��8�ҧIF	k8��[���������
C��\��L�D���/���@r�C�ё�X�9J�������D(�;d�Ձp�FZ�E2݁���m����d�b�,�-#Ls��t���|=��ڕGz�T�0zM�t0�vo����(��!xy�0�Na��(%� �5r�Wv��N�,��tq@�����ƛ�� ���\�P�o�h�i"���i�r,xMY������+�QYL��]F��m����F����no&d��C�0@��w
��,+w�t���'v��٤R�U��f�Txȣ�p
&c��S�}�6�[ԉ���/Pr�mBJ<�>�^�ɻY�_�~���$Q��@dK��mU�9�k�
�Tk�Bz�����r�Nr��	7���m��
�Z^�t=�Ϣ�s/����wJ#�mie��zYt��1��'z’�D����O��w�j�p����'�fF��L)t]�L��R�|w�ΐr����?������|D�E�x��}ry�13m �v��ltS��)s�+i$��sSe؊��7gk����ov�v��V�RgR�)̂4vkn!q7�>6�k�XMQ���w\Ũ�,�6P��
;(�9���*m1�l� ���O�(ćn�8l�ڻ5P�M��~´m]5Oe�E�h�V1�������U1���5+�g�Zt�Ik��2��
�䐜=r��2��;�R�F����v���j���T 5oJ�A"rBR�����D�!�I��0ڐ��9���C��ǫT���k`���K1�.c� �[���Lb޲�^�FpXn�H�TS��ubaG���c�Ak�
��5/m�(�weq�sMn����4/��w~G���G���1ߏ8��X?|TٴU�NS.��>s���|��I#��y���Iۦ����z�T6����Zh�J�U��}��G��C�O�#��
z*���j�F�dr��z����P5�2�f%K�DI���a��hu-7�@�+�P7�SG�=�Q�S�N"���pfWl,
ia�ގm"�)TEZwk�پh���;��n��+��<5!,+v�}�`>��X�LZ�\H�?�M}�>���lU�~�1ﳗ��Hn�]��y�bۀ�ߑ,��0��$�"v�f���/^��|,Ř�p2�I)������ȸsН��#E�z8�C�3Ó�Tb�%Mҝ�f��f
�Q����t�H�9���
FY�������l(�i-u����,T�ܟ���@`	h����'�P���1����]��`9׼�u�j��5��z�s�6b��ѝ����x��u�k��f��.�-���Po+��#-�v*C�Kx�����|�J�ظwKIfe0���"a[�����v�V��z21��XQ0��F�E�z4�����TZ4���6� ����17㉮�"�ѓ�S�&�l��ߩ��}*�E�%h��V�75_0-gN��e2-��!��a���^I��V�w[�
e�hƉt;���bN�w�x	~;O�0j��C~�{�^��4R6�������V7�&́-�(N?��|�<Q�{)mN�>H��d�R�	l p���2e@��ޔciF�*h�Io���~���[�:���Q�t��ɦ�;O��ʠi��!3�!>�S�^��[��I�&�f��0A+4,e�����0i?��Q���_1�1j�QN�<_�U^͊/o�%�����v�ʻh$����9�:<�D|8�����:�z3Fώ!������)�$ܫ�L�YZ�B�̮��?�b]㤬�i�ŗ�C>iQ�GV$S��7�=�n|��=o���kfC��	7�&�
+arR����
��T��Dׇ��87b�
��#q>?�d�O6�����Q�����3j�ׄ{������)��^��u.��B��@|Zv�<�Ϋ�c�H��O �"�O�'��j�<��'!rܜ%��.�syq�f;)3x�U7�NLH6�h���u����Äk��źH�\���%��_�j_49B%�(Ȅ��$�M36Z��8�Vm��0��C���iT��%���p�J	�ќf��	J�A�6��q��c�[�_�Oۜ��vPq���B���)����U��=BP{n����LG�.�y
��ha߰�j&���ƴ�9�Y��*��>[��z�y�z���E*bU���6A��`nNԸ/-�@mº�(�3����n��r�T���H�?�����ֻ*N���C���iJ�����I�xņ��*�:`h��%��b��P��F��P�����k�{WR�
n
q�R��6�G�q��mYR��
UZ~�X����!��.g+�m#ǟ��v�5��Lgb<W��s`�y9�%��n_��I�N�T���&4|0�l{�9Z#G���
U�.w��U�:g��I�u���~�mU8�B�?�m�dz��cY.�r�ڬqW�������є{��s��
�S�vv:�7�x ~��G����
E`�e��ylo����c��ځ��Ou&�	.a��Zɘ�&��m��׶�*;�M&�]䆫�X+�m1�?=�� *϶��rG̐�Q�0~��V��1_CV�O��,gm�*iX�d=������}�f@v@!j��@n=����g"�QFn��w��,�+MFJ��M�r>suo^�j�/��?_qzz;ݍ�����UY��:�4�a 6u�ƪ����4\9J�=S�!>�Yݺb v�/����ŷ��=�^��;m��̣.�U��̖�-/�@^Q��T���%M�)�b
WnKd�Aq	�C+a�0K��7�"��!d�8׼}E���g!�nc��^WS���E�lcˆÔ�-���X&��g��O�}S/��#,�+׺Tθ�Ѿ�xh��C;�x���a�sU(�~'�g�q���ƍϞ�b�3c��u���ħ�L�԰��G�#� J$��Z5�w3:@�����=f��K��2u�
!֊(R����!U��C
��9��ݤ���H|j�"���큋ڏB�����.�I��x1���4 �M:���nL�w�@Hx�\�|R�X����z*$�,����u5�����V�P��$�\8�c3�}�ʉ&�c������R"(���2�b��}
T��_0��$Ab��#���u_�&�V��$�/���,N�� r��Sv�^z�ɬNj۸r���qz��\���:f�Rh"9��z���S�?��CPQ�b�/�!nRO(F��7��笲�TBQ��
h���4E�m@�|�Ӆ6	[�vL�YE�u�
�d�W�Qb�ě*_�?c]2��6-�&}h��o�$�+�� 8��F�Y|J
�j����Jm�d�$bc�r��m3���v�P��G�β	em;C�Ɣ�N�&4<[�������AR�D�Fү��Uf��xK�=�<�)����T�'6U�d�E�����`xhA��2��0����������)x��6[����	m���-oخ`4��q�����}�z�Ǔ�:�����9�`ڱ�`���V�}r�����͏�Ht��*G�8�w’�Xj���:��s~Ӌ�{^r�ڙ��Q�T\IO]�/S��J�d�XN�W&����O8N�D�
>�ɖ�<�cƋ���%W�B]�O�clJW{q��8ǸQl��e�V����q��T����6g%��h�"��)A��E.�fD6�ǿ{2=sz:�DD�?8�T'EV���!� �A�b	̋ ׈��}&�
�ē�}2yj��Fh�Va�r�B,��{�
�����T7�\f;����22�����_��#>��h{��Y$�� Ƨ%;S3/��Ni����Ȉ����v��ϙ6���)���H��䩣��ң����s�K�W�����QӅ��պ��,��pje��qd&7�NC��|2E��iՉ�z��#�\����i9h|��t�g*�w�{s����4h��ۇT`6�!f�c��l4�Z��M:�'�ߋ���ď��i��{bI�8�q&���J��ۤ�(.��������3����̪�1G��"���e��Ks}��Ɇ�\_u��c�g��(�}�Vc��E���dj�:�D��j�[��s���i���]u��D�R%JT:�q�/v��䒹��8��Da�g[�ي�}�O��+%��U�$�'�k|b|�N������*���z�kit��e@�����E���B��]̭�1�����L�r��7�$���'�Sq.}gE�>>S�	�6��5��t`�Qw��,/O�^f�3NH�6���
梁�R�Om��K\񄶡y��v�Y>�����)������1O1���)=���8G݆��Y�d�E�z���S�:�T-�JW��b��cOEdC������u���#��~�A�zͥ׸���,Z�"T[)�h�`(��-��0�O��g�s��W���X_(�}ɥ0���q�mQ���\����A���C�g��*-�oȳ�av�˘J���PV7^�k=4���`N"T��}JP.�8|�VJ��if	�*}G��tO*�c�z����qꯛ��0��3���nˢ	��'1k�q7��>X������șre������ki�YN�?Ap�U<X`˲�7CF6�PD*��6i#|��b(a��	:$N����#U<`�o���j!��L��V�}��Eڌ���j%�]�d\����t1#��l�UVp�>��lѭ��J���l0���XGV������N�N\��c�׈1|X�����t]���wz�>mһ{��2�2��e��b}�Z��ΒRR
�3��"��-�
��*�=\6'����i)̺YUIr��,3���^Xk.��<E�<K���~�=�u�L��i1��F�G�����f��w�P����l
ҫ\�W��g����(��/�t��i�3�L�����+��oM���UB�_>��z�,{�ŋ<��
d%���3;>��i�+0@�:�����@=�e>�wtx����
F�7kF�=�H�Tօ!��-��3�u�am�7��!����M$>��!q��H\V/�)���0;hs�2�KC�Ғuw��R��uQ=�%�J�H.D1���tsk"�l��|�~d��bY_�m�1�#�8����\WӀsw:���#�t�J�����n�t�\c�
_�I�+Ҝ����KU�W?uY��aΠ��5�����8��vV�=V��^���FZ���$�Ԕ�-�:�7�(�l���Z2�0>j.N��H�����钆�<`��������<}��Հ�h"(�0�oƑ�DNjhDE��߇�w�HkE2Z��u
��ޮ�h�i?F&��,��] U
��?I����Pn�rU��4�{f�G�Eq�z�����p���bL�tת;A�0�c��gq9�@�T����t�Ψ�ah߅'׷G?�_�ս&��R�Y5@�}N:��xj�k��Cx;��Vv˯Ʉ��i�y��}�i�yu�4L<��-�@�0���o��F��(~�'��+'�ְ��u`ol��F���{�.���jN�f�w�2O U	_3�")	�"�W﷚7��W>*�}����'L�o��՛���@'�Žq���”tA�8},��e'Vê\X����g�ba��Z��_Oy)�^���d��DŸ�X�އ$��]JJ�J(e.��愦���U��|�I&�.�FٴpS�V����f6��K��츭xc������7P��T�O�=�����������(�>B�����͟����*�"!m:��+�����ur�ӡ�Je��:�A�����y�~1�����.sF��Y�F(�]}?+R���34q���h�g;�`a%3�D[��P����>$^J�O��?3�m�L�8��3���_�YJ��ȡ�GW�zTgs�Ys?��}���X�`v���b
l��u,'Nh��&���OK�stI��Ւ�{��2+��,����-�� �:���7��җ�z܆%H|}X�;�)0H����$��\��\�f�l������c:<5X�H,�nl�Lҧ�W�:ϥ�8���:�Ma�C:q�S6.�wC��ONv� S\p+fB�Y̑�D o��x��h�O[G� @UT����{��
���Nf��1�9Z�����8�P]�|��
�\zm����|q��
��Oi���s��x�a޸��8�Ⱦ�],�j"[؃0���P�}�bd�m�L�N����L5��Y�\�lB�����+�E�P���<�����:Z�'���XO�N�.�ϭ�-���_�?N���LF�ݠ%���vD�6��^�
+�!]O$��A�R�_,��A
���g�]-��`%#�4sTp�~�z4zC0������
�Q��%�Uxy�J�(��^i%I�{"�"�
!nI#���=���>�2�J��:�Z
�����E��"ܹ��q4Y�y�"3��$��o-]��2php����
�t�O9�b]Lj�_i�Lw"�0��1��cm!F�M�jJ���kW��Z	����q��mv< �4���mH)�2*,<��By!�l�$�r���#��h[�IFk'7��r���7��t�RMy.����dׂ[��p2�$֗�1���ZFO"����h)�#VWh�Cm�5�7�jF�Oz��A�N����0�-HI��_���=n��A��m@�����7�Y����}d�yh�ɴ�E�^�_L�v�O�{Ev�8�]ˢLY�A�x@%M����r�$�؛k��G��	\���~(��&3�\O�s}j�+5�\�������?3�69�he�*�C���*~K`Z���v�9�FDs�)�4V�]�^�o�{�����O��@*�T�#T-��Qy�Έ7��ކ*w�l0O���㎞~2�j��}U��S��������8xx��Qx���ɧz�
��HRy�#��xo��úY��P���W����YFxp����\Wxd�b��A<P����o
S��x�EǔͥD����d�򔺥�X�oh&_/�{����攷�:�4V
Kz��9id��?��,��:ق�jԄQ� �\�E�z��:,�WV5���]�z�����}|Lg���a�wfх�ɇ��ʽ��V����Z�1���c�i�z�V�ƿ�e�X�	�e����Z�Zk�Q:���;�!K]4 �ܡ��`է.�
'�(����=�"���(xTo>k47w���R˿�����)�B4��c)D-�=p��]5>nDjb��v$bnz�4�w�m4+$7u�M�
g1
2��"���u�WP
���<�W�×X�J���1�6��-��QgZj�q��>�6�z{�œ��_i�J}�� {k��qV?@�\GMҍ�h{
Ћ�X9$�ZRj��~P��ŷ�J��/N.qD�q�(��������X��.�>9��%�Cnm����mj�Ʊ�ݤ�7-/ ��Y��(Os�袏3��
�u9_������gd����]4-I��F
���_
�mXT9<�wZ�N�0�<J�gCe����J~�{�������ّ�3�-�����d+K8
�P	��7��|�e�Z�������L?���\Q��2Z�
8��R�+Qx�K�,p9N�xп|��9'�8z�!/�o��$���*�-o���ƅ�{<`[0�Mh��+v�ޘ�F�M�Lv��V���1��(83�qh{ٲ7��!��D;�yG�����l諭�@}|ۆG�k����D��y����COb$���Y��7�"�|�BC5�����S|�m<g��G�@1��0q�@��ڬv�h���`(&3m�����"����HsK������k�Lz,=��#	mk	����M�� �߭�dA[)�0��I��L��w�cRf�8�)xpJg�t��nk_��F� ��r]P�*���b��!B�X�lrPD.��*B58�U�1*�=�}2�Y�C(�=���w�P�n����:�S��h.�g��K`�u��~���E�5��4� �D�ݩ�����:_I�����I~�E�&nӏ~I�Uygn��@DV�eP��"i����E����;��&}���>�T3b�򖄱�@8;��'��5.����?�s�B�ܫ�')��s�F5y�@�酂����I��e;�Xv�
��N�L.���#ͱ��搷�m�B2'�?+�;��}�R[�Y�Y���s� �A�ޞ[ltm��lR[�;���"�_�b��?��p5TnI��ˑ�aeޚ�!F�GX���;��{���!�i��
�UrI"�W#L�=��mi�ģ�j��o�,��~����%��ո�hި�Ϳ5ѣi	�*���%����K=E�]8G�Y��9���
˦X1,4�����] ��D>�|D-�42��C�l��[���b#h�P�8��&�5Y��^�N-8��i5)�a!��_��|�T��HV�y�}w�-n/�k�%��a���\f�(��I��N�[ˏ�I��c���q6ʋ�9��]��j����Aeyt*$���VvN��8H���~�D�<���_��sy��,����6�|�?x�lkQ�+e�A��u��q{H�RӘ�2 ��n\$��9츛�@	p��a�B�h��S�^��x\�\�u�"%�C,��ϋ�D�+ߺ��{i*�b�%o�o��/���6�Z�nڨز�lEߪ�S����M_�{y ��`#�,�,iF�C�����`�9��r—��t#L9���2�f��l)`gp�]xtOa�fq׳��$��C�2ج��+�^��H���8�x&o3��51���7�Kƈޘ(��ۏ�`ËF��#a"����io���
&۬Dz��1C(�^��o��Q�=L:!�d�+|FG�����#Įٓ^j�vq�K�$(��2�"�kVn����If�9�5����5Ʋ-/��
��ڻ	�dǺ<�%)������S�}��s���k6B���!e��A�H�񓆍�L��2|�@tlK��o�"i1�?P�)�K����<��X�Ù�x�ďX�?S�J���P��W8��a�^$��܀I��`1�+OP�u�>��1���E`����,��Z�`�ꊋ 
�|�&�uܵ�[��{����%��q/�{4�u�1vZ�vca��#%�c`���F/4�!��~\��|�?'I_��ц���"i�O�H�p$�9(�'e��D�+iA4�)����S.�5��c�����m]&)����	9��͕!��DZ����n.��(�ZMwT�?k��~�S��,�rL(i:��k�2�FT������ܟ�rY�n�7��I�_�R�\�^�����?D@}���gz�)�4���,̕��w����B(���!��E^��^��Y�v�:{{H(ph�9rW�uH�0��~z�}mNj�[g2�s���'��B�&˜��]ƥƑ�W&4׫�_D�����ENw�"(z�F�q8n�
��s�g��5[��!q
_խ�kL
T��4,����L������\�C���EH�����d�ir�֨n���p���x�_
RbG��2?��ף(ض���@�j/���T�{f�خ����nW��-�;�	D���F��N�A�
.
��S��1�sD�ty���F�|31`��B�3�hd�Fv�R������[Z%�����r�Uv��!����=��{7���L%��_62�rT�2Œ��Y�v&(���A�b�����'�ż�0	P�C���-�E!� &�/ݻ��@�A�$�A)�a��s��0��[�^����K����]�	k_�G�W!���/z�4�2�؀#���a�jDY�plG���]���%��_C�$�
�ϝ��4K�m\I
�1Qr����^Ko��x�b�d������ﺻ�t�Xh�ƭ(�6j'�AL�~wB���y>H�ee�q��p��TG*�JA?C��p=�����^	���!�(�)���w	]"�UD�>��Q.sa�&|�m��k+W;�D���Ӊ�Ƚ�kFT���� 81�6���ˍ�K�A�)���yh�}_]���'�v'���;������Ĵo�A�=��JJX��/c���e�1����_E�(X�U�3�Cթ<���a)�(JQ�����Æ����f����m��6+�p�6�j��[}L1M�
�+�S;�c�i�����$��f�NF�/m�Sz�_�i��k���9.���]�s�����ҳsq���Sڷ��$S /c����|:�B�n!_����Ι�߅�F�8�o\Й	(�2��ҙ†���MO%3@~���G6]��H���E�Њ�b�k6��2o$���"�y{=��u�@��;X�;�>�ǎ���\�.�Tf1%����e$dx�r�5�zH�V�
ql�crR�3���æ@zm�.���[-��)e�~t��y����̷c_���_����|-�̙�x�+N���y}eR=4X7Țj�g�h�/�P~8���iu��<�n���ڔ�[i�pRo]S�/Dt:j���:�Jkl�s�^��f��W�O�2�&Q"� *N{����̖���?��	h����Q�sb"G��z��3��bE��iԝ��6N0���12Ы��U�6LZl	!�ZBf/�����p���k��[̛��"��g�霢!�N4MG���'�{�?��*xl���AŚ��#S�����貆��㕺r�K\��`*9_5I�Z���Y1s[iw^��v퓖LW���n}>4���;!�Bu
4�}}��~��&iP��?�}e�b��h�g�T,�X���+�{�Kp3+G_���
õ�
̸���A1��*��J��D�~ߏ�2�?�I���`��:M�>"�
Q�R�cڲ�],jņ�r4P�Y�VB�t]�`�y�煐z)1^�ɧ��r=w��C�����=&��e�� �~"j;�x������2�?���d򹶗&#���N�
o�W��Œ�,�El>��-�)��t�*y�05��V��m��	��%g&�d��b���~��:4�H*2�GB�Q-b.螀7D��lB׷t[�a�#^?��Y�>h����Q��VEߋ����M�$��OJ�v�v���fQO�w���YF�~<�Eo)`Mx�@�����n2��v�Ri�Y��{#��;Mƫy=�d�Z�c�P.{?(���Vev����p��內�c�.�HhnQ�Kh��үK_d��u�k�wp�3,�:����r���B�ޚ�t����>bb'����I��T�Bd������y	A-]$�k������[�9ZO����X�gvr&�Ͱ��%W���	}ݑ�9S\f�v�Lk�JÜ��Ww����rb��tU�T��{�W?~�`�#ޥ�����‡�_%����G@���<��_�!����<ݍ�2���SS�Z�I��ߞ�Zr
��z�i	��=��=P��*0<����� ,9���J�NR��4�6nb�UI�BQ�VCb���l)�@���˚�4`��k���udp�C�R��2t�z-��vLe��<SF��e ���'�DX~�>�z@�g�禲@�~�t���	�u=ް$�ܳ�Ee@L�>eʪ}1|zH/��vv�{ ϥg��r_kq��F;��ȿn�]�̒6��ѿ�<^���J-B���)�$�c�)��W%�Vm�S�����xr_�2׾��{M�U{$j�V6��-��<��� 3ɯ�ܲ��C���av�)T$P`�{`vԏ/�/7��d�I�.�U ����
���Ô��P0o=~�L����̙	+��ҁ�"Q��,�6�{���g!E��1(�6ӄ�Z��2�?�N����t��_����( �eg"}'N�Q��{���=�2�1��昬5;�p*_0G��ڹ�!#W��'���D������zD�թ���R�I�d/�A�>��� ����
ZC��-qs�K*�}un�t_�k�CN��l������b�P��ɐ1����0	���p��P֧� �l:;���и�������c�2����6,�Ml�ly�P82���n���n�pn>�'6�|qb)�$K��˛c7&-�6��v��9�S�'�5��xT�r�etc�f�=��#����~�%�%'�����1��k�,LNk-�*#g2�N�S0�(s�ѡ����LJ[0Ԝ�
.�z �*-�0�h��MT�ܯ�!%�g=�K�n^F)r�{Ң���ԝ�-�00�B�刏5�O�3�D=S_��.�si�
�0x��mC����rX�"|�� ��~��Ȅ�k���0\dʺ*��^y��t�;���i(��'�Ƌ�����b/R�AmS/=,��(‚|^:3��}�k��j��zW�[c^��/C"�6�e K��o��$�Q ����\
��&I&�V[�����?�Ry!
Ul���`3�����y���2,�q_A��^.��1��*-ma��>Wi˜vzb�2��s�*���8�%<�B�3d)��mM_�F�by�q��2&ڵ����ܬ�
����]���c�Nk�I.��b+�
����dwCky
!'�3��䷬��Fm�"���
Ƽ���c���^n�8>�
.��P�u���F��S���3�r_?~ �E�S�<�u
μ�K�8�RS����-D���-�ot`ϡ�]��yY�i���r��$��z��d�{ʮM'+i�g��!��wް#�2����9@#��(���g�5�v^ֻ��ׯ_�='ЩQK�r��
�>W�G�&0P21ǀ_௦邋��1�7jE�j�"������!x�s�4�7�~
y�:�K3l����P��v�48�n�c�_��$Af}z�Nv8S\f��m����<>�������H2';�My����6��Q�Z#�����(�
"�g'��b��q?�vt��v�!QlV��a����h����z��SI�>�
h�s��Е̄��9��0lR�{�U�Ӆ��֣Q�5|�6$[��E��H?�b6"
�@�1��l�]�>��)<�,Φ\�jv
sR�p�<z���Qv�(�;/+b@�m1{R�w�&N�.��'b
2j2f\Ph4Ơ6�)����h6a`��b����`��t羟iS�-�s�}~=����t<���݋濕j�7q����{5аkS���dO� �S���]�TV�i�����dky����n�p��f���n'��b�9Y.9�׍�>+��F�V��n�g��c�WY�‹jO���HY.�����b�;�����Y�ŋ�֛�P�4u�wf�ȵ�b+���\;[�MA4pl���z���Z�Y�Ӗ&�A�DY �a�lzN��^|�������oGy$���қDf;��_�鶆<�h R^�6��l����+��Xw�-;~IGB�F��:�"���*N�atRqt2xU�|��9Q�NQ�P���{ǜ��7���e!)��a�U��9�}�1�W��sLg|�t�Y��A�/q���
�Z��b���9��q!���n�@>�ۓ�Y1� dˆ�
;�Z�d�/q�ENJ/A違LW&��'s3V.�Ƚɓd�W��3*}+�R_��<�R{��(1k��a�l�ھy@�C`CkѤ�U����t-��ٱ͌}?�`Q��=yU�=I2�ðh@��?�9��F�q6��?H��,�.���J�2zH����冊�s���'�N��1��7���ꅡl&��l	�j�n���V	CٱJ	��Z���������z�}!xZ؊&���OV{�0���m��ot�M�ep癷���!���g֞�D4�~}��=�$��~摟$m7�3+���Z���.�7v�4 Ua>K�i�5���#K�:�A\G����ź0�s��@�j����R��O�����"ZV��1�n2�t���(2�H=�U�O3�NKXs�e0o��]��UV*ؕ1�Q,�qi֙'\`Xs%���y5�?�3?���#c+P�7G�TF�B��+u~�[���/׷�&�1IE��ϙ
;����;�lc!x9�OI�$	��0��߽6���~��/�?��6�ptB\!� /��}�N�Aš����)۫~`[�
���be$	~s�ᶦ��,O��,�9�B��1����R�mCW��Fr!�����]���+s�Ƙ�f�(�5��`ڈ�$l_�O,xp�1|�P��҅�/5M���?y�/Qo4��Bq�u#j����}�߮Ҝ�t����[?��fs�����2��3Q&a�����#�\�4FBd��M~�
+�P<-8��X�]��]r�i���ޱ�"B��I��J
�l�9�m݇o�B
k��f�X�>>os�����Ǯ�Z�!w�,
���Zi���p~&E�H+k��Uo�op�p$+z�>�g�F�
@���R��#����&b	Z���X6/g����
��,�x��9j0ޛ�d�;Z�%{K����w�<	��$(������{�)�~47)�u|/0�k�,~w�z��n�M�7櫯��4���)���Ӿ�,"7*��%s��ic��j�=Ť��g$yEk�"����͑U�u�ܺ�8��Ha^��2�V۱,"�۝Pl�#���oE�(" �g.�$r�%�<%���S���������;��x���
�7�	O�V�0kB'�t3�;��~��
<���%|4�E�qs��g�����σ,���>��H�Z�bT
9�͌�(�M�4��YלO���� ���h��V�B�8�\X�VE8?�1��K1$sj��F[q��c�i#��} ��`~��s�HS��^v���uu&�{;��M7j�r�n'�e}��>��U��d���Cr*pM���`�Pd�w�Q�Y��G�����d
��O�`��6)�,er�n��6"1"e]�]�b�6�pd�0�����	�xe -d_���3���c���_��
{�y��ƛ0�o(����iF:��'�%L(���؊^}�;H�	�2�65��f�_�\R]�v�.�q���	�k9���p,>����{ˍ���,=��D��8T"����^ˤ.$Y~+�<ʲ�j3�b5ALx�$��ݣ#�!o=SGn���KA�.b����3�9�K�I�H�n�P)=��l����[�zMoQ	�\2�7�i�z�wfTMI���_F�I@q|5QfDtd/��]2M������;�l�Ιh��S�a,ɤ
+�&���D�W�+أ�utBԼ�΂��@4�|V�1��'Z�q����g�"?�M�$$��S�P.h�/+��~�
���5�7F(�7��0ѓ�N��-�3�W���F�	�DDS,P|p.\X����X%�R�Nz�2hJ��UBAxA� �P*������Kj�1��m�Ki�
��[})��!�`�H<��]�ʊ%�y��-i�cB`��=�5Vq?�|H4���Y���"��.x�:|�����l/��`fˢa1��L��8�5B�[��m�S���çS0��Y�!� �pB��T�
x�����Mfa��u��)r%_G�f�)�؛�?ye2R#E;��yD��i�QwN�s���T����8�i�0�|� �4�!U�	a��`��LN�Dh���a����;�W�����c�m��s1mR�|փZ�`��)�p��Y[J��&_�7\U��wõ�u?�.33Ī{��!Y��e��8^���/���Wl�kU8=��P���"�I�
Ec��*xL�?؏��8t<�R��ڡ�Y�#	�%cI�������%��xԔ[�O]v����#a�X�F�N؝uDV~��n�}Y�`��>QTw� �M�IѕAƝ�IlR!0L��J�~c��f���V���2��)5K���92{���Kzؘ��q�Aͳ$I�9U�.�whˢ8+�䓾Ery��G�i��yٷ�I{�a�)p���T�:ASC�x�d ?���{G�/k�SlL%�,�U�ݽ��(1%׿\M�;*,���c3�6��ά��!�Z�וpل="d/���~-p7����Ổ��0����`������j�3���Ł�	d��;Ӝƻ7><��i�zN[��*z�2~�%��7��н�|�]�n8��{����`!��~q�”E��V���k���UF~���[���;'����Z+6/���@��Mo���Vj�<BUe�xZM���S��Z�	1B�hޏ��˜�aPW�w�0�<����
�/ϝ_�P*re���R}�*��`��-����Ƴ���YB�…9�
�w�so��w�^�"^�;5,�>�(׾��a��n���˧�k*��A題�c��U�Q�}X��@-�R�ۄ��ٛ��3NY+�N�1�#�	�U*j.g�.Ah�+�.�]Z~,�!lG�S�X���n��|S���@�k��H��&{pi�|j3}���z����(�8^	
�BX���N�_���"�Okx�Q�4��f�~�ܖ(n�J�D���2�z�Ur&�c�_]��GY��n(�mdW�xOTb�7��p����i�
�_=*�P�<�eU��O�7#�F��Źz����6��9�q��W�,d��Q�r~`z�΁�I�[�x��<E|�7>���^�8w�m�F���j�mI
���#���}�Œ���P�Y�)B�j�Qt��yN���U����5��"�Y"�W�e�Kx�8�$1�HY�)�U⌇�Z�9x-C���$r�U�%/�߰ڼ�f�_J��&��Ux�5y��C�&k�-B�~��a��Vq��M�؛�{�d��L7��a�N R�@HP���2̠��*(�ZSB����'8�:��K���4a�8�]ç=��we4���D��C�zl�-Z��!�Ͱ�T�_	�O��d�����w��*���\4�4���Yp���y^�-e&�q�j�ڛgx��h��0�vs��Wߎ�+�7v9������@A�,�^��Rci�N��a�b���L�}�Vm8��>X�a��4���>��X��F�Ϯ������#��B/�V�0se����&k�3���p�F���B��f���0>�ߊ��r��l��5��_QhH��0N��9�!_sjq��U��/�L�-V ɟ�8���C_�B{&ϫ@\oZ���"�{��+�!����d-�1��߻�������?c�7��x����3���y�Y3�}�21�
�e&*���H�U�3~�t������-�dA�]y��	�{���Gq�ݐ���٘�]�	�jp%����C��K�xWN���*�ow��N"9��
�2�+)�v6~U^��jtfs�L�>�ם��a��>-���E&䆅��I��ld�`�"���V�t�xFQ��ܥy�!�s�E��=7�y&�}ii���NR�@=4 $8��\E� �d��&8��ΐޤ�}`
e��1�sge��`�7�3,���\���ŀ�bU�D����V�0��|��9ӎ�Ǟ7�;�_�v�dݫ+�
�ƘD��������\���\r�GJꍱb��>7ߧ>������J�g �4{]9��iL��X�Q"t[W�dk��8�|"���_	����C��Vq�LL��*<���B>����*c�(�!e_*�'Z�41ݠѭ�����!U�=�ojW0."(�n!�>��C@�w/�)A`�aH<�F^���	_��F)ĔV7�S^���]$����^6"e]�.f�n�3.�|A��*y�gخ��ʹ"&��Pm��y
Z��_ ��%!n��<`�,�~xؔ�|���UN��!fo�k��
�8�O����#d�^q�;���_xه�>����!6�9���;]������,+O���֚�k/f�o'�ѳCg:�	S?��[W �����{I@��;.���A1x�({�߇�C5u����_�"�h�-M���)ϯ�n��tj�?��r�q��de���&�)߶屃���7>l�l���������Z'U��
�}����pS�����{�X'��A�������tտ�m�X<�h�H�'���ކ�q`������ �k���⨼�������^�ҟϟ�)ru��
��-(��@J.
A�����]���m9}���:=���2I���@�2���Q�T���L�ր"yim]/�����uf0������`�1Y��G>��';Er��s�ȯ��R�c](��+*��[��\�	fl|�a'�P[+�|���	�/�:g>��՟�xP��`�'6^h���#3i^ٔ�^
�z[|�/��������sb���H��wNh��4C����&�vA�5	0e���P�ҳD�>(����p
�Om�@��H�V&Ҷ��.��i(����!��>K��KW��Z�TV�J�JⓞOPV�@�I+�W��K��t�w<����R�	�iE���+�Gz	R����:Y����2l���Y�&��ȭkt��N�VL�ZWK�s%�b,�BF��f�b̵�r^v��#�*c��\ds:){��C�o�Z��S�U�ӂ?�îA�Û5�ϕ�*��`A�H|(1[��F�F�~�Lㄥ#�__vI{�
9��C�L�pū��!�A�����e�O������BH��Ҕ��D�u���9�8���<,7�)��굢6�YSA��Їi�̎bK���o�Cc����n�@���!�G�l{�i��(܈�1foI�~S,�2qi����ǟ�2����  �dqRYF�en0S��i������/M�m,��'���E�u�o<m�o����*���E�mo3P�*�UˡWx@����쫇�����˱F�^����[�,b�������d;׸���|ɬ��ҷaRs�}?�(�{+�a�9�dp�06h�݄<����A���B���u�* _Dq�l���M�Bz�,b�`�!��\�Ŵ�.��ʹ22|�H�'m�>d��+k)��7�0�]��a|���,
���;ۂ�	��J�}8P��{7�֘�"2Ѐt���D�;B�1��@#��I���'���� �����9�7*B��U�jb���>	s����te�3�^�_��(l3���
���{tpO@��_'��E�ǒ�䆌��-�"�jϏH[SO��c�9�J�"�r���5���u����\#�9Wo��f��V?��IhFKt~wH�V?T)��қ 0�����0!Q	9',��A�:9���R��_�<[ׁZ�3F��)�iN�Fy�w<��d��*	��~�&š�q˩�9#ԡf��&|㊑�������Ո@ro��:0�qK��|)
y6�|us��/)Y
�wb($T�������v�L�1��k]9�y^���و�ze��ˁ�v+�=~��t��xj���g_�|�c#i�\�j�\*`�9�"^i�����ҙjg+�}c�2�l��{6W��?�VL��������ľ�\���w>���]q��AX����~��w��#�_\�u�q�{���лdRh�OitY�h�ÓB��8	��.=a���V0GK�I��a�\v�o3e�"�k�
7�ĿŞ��)=�x/�����>h�x���J^]���C�jwI�u̙I����T&i2Hn�3�V�bX6f�sdB��x��utkch��G�'�lj�oe�S�$�}�}W��Br*�I�7�_�����B
W$�����V�.��CG�#�c���?�jͦ��<1��͛{����qe�p�s�T�K��R�'��&;�p�0��v^?�1���<����᳒=gx[�^y�E�-|h���v,d��A��y����:�>~z$˲r��r�)��r����M�a�sT��<��J����dB�Pw�`zP*�>~�`�:��]��j��H��Z��*t��^���q@p\�F���
��{q��8^J_�Gy)�ׁ���)�
����ʱt��d���*�^k���z�f~ņ^?NA������&#�'���,�9���'H����%��q�xa��b�Ǧ�ط���a^TG5S����|�o��
�MI
>�a���T:���4e�;l����Һ|�Q�Tȉ}s,�H�]�s+���d�5�MS7��<��6��Y�mօ!���O�q!e��B���o->[�k*r�K*�M�4�i�-�Zrf�e"�'��%4"�&41�*�,"���#|.|�n������x�q�Ul���u#d�mT�XZ�d�¾��g!��|�+ց����g�y�g҆F]�Q��
s�t@��Gxb�>�J�q�������bc+��@��B!��%���W݌'}F�t?�O�fD0��hOa؋LQyw������ݴ<'�W�r6���c�l�50.�_T.�U��Q�:�jh��V\
:���}&�	�~	8�/��21ed~�?ą���Ǜ%w^zB%���!���乁z�}|�K~9Xݨh���}��u{A�+S[9`����� .O��`ר���;EV�HpF~r�M��Ͳ�f �@R:���0����9�9�C����h|b��w�zvb��T)�g���!��p ���;(�?�V�nG
�B�:�zl��6}��b�t�^�۰��`O���4Y�&py@�,��oR���+G�X�-�<Kp�R�u!ʄ�A>�b�7B�Tx��iO��	�TyX����la���r��9�p�J('l�y�*�c�y�7`�K�+B�~�T ��R��z;�
��!�t��Y�:���gim��x\>�>�9{�+E�{Wu�%�!T�.�!�L�	�W(��(+�_=��3�qO����A�r��^�h��{���Y|�t��=��`I�T ��Y �X���3��"��[�HG�ͫ�tΛF����"�`ʏW�S����('Yئd65�q���Vt9�_��\6R���zX������e�R�gYB�
�漇:}�)ў,�¦<X�k�k1%~�0���߮�ܯ��jSj�4��!��P_�+�Ċ�1�P�$�p��NaxR��O�=�t|L�4e��oXf:`db��}`Į��
�t{����ץ.�_8m�@�~�ݒ�L�xL�s����	y�
G��J�λ,��q�ZJ��%���e�&�ҷ��S��t�����$ً;��[���|m'�Qz+�PM�(��AW:}G�nTcI�8a^!�}�����[�������M�HXʒ�J\�X֞�*	���(�>�~���<}YYv5��s�8-Ί��݌��&K�Y�6MF�'Dž�� #���xJ9�}��ra�H�CbvT#���O�ؒ�Bg�sw�/���b��Ml3�h��,�����N6L�Fl�~�n��ń�����0K�dQ`�������T\�LnF�I��<��^.w��}]��4��+�dʍ 0g��� �	cKZfB�d�`��/d�/4�F�(�6���0�,�e�M�����,�3�M����;�4xg�"BR�#�x�Mk���V)��<ޞH��_(��:kKg�l��N��I��0��1��礪-kg�<tG,l�dQ�ܟ&�r�K�
�C�v<U�b������k��P���H
@��ޛ(��탍�:�z�1��o���l��);�{�^�m��T����0����DH� Ch��A��y�X9$R�r̚���e�?C����]іJ��񳗏�<vq��
�/���
dӃ��պy��1��_�~�l���>���Ս�7��Z�r�٨�$�?&���h^��O~�T��Z��.i2$�+)8�F�vSӐ08"DI)��~����E�?F��7�N�V��T�2�umQ�����@�2$H�
5N���X���C.Wn�u����r)�feX���8�ca��{r䶛�/g��ި�	��4����8)��a�F?�	
�#������tA��Z�
�@�^��.I"1u���f]#�g��}�W��B�����2��
urQ�ʰ��D����s��X`(G�� FY�����D�w�0�����`�ժ0�t�v���� P��~,�n,�{�O�ִU�R"��	dή��;�`��[;�Y���2��[�?��-�d�k���`�D��bƓ��v��5�y#C�V�.�a�����L�iCѲF��eG�l�%f���Y�Ìdcag?z����`	'�f"J�k�9��_��X��1��sB6�9�Fܜ��9���!i�����e�&�ƶt�S�۞�C���@vN���bŽ@b�
9"4�?aݑ�|q�"�L���xl�շp�e֋쉺����#�6R�"ϝ
���a�Pj0�v�N�i��}v�Io�� �VT�:A�p�
A�9�9�����#��,(�u-�~������aϟ��'2��Q�zAK&�W���W[�I3lL�}��V)��Hy��@���T����EN��M�U�u~�2g��{C����eT÷ML��h�&��R^>ӍH���Ovr%Ys����{��i���K�� �Fbp��, �!^��#�ӹ6TC�)�I�;!��Ƞ˷׵ǀi���ELf����J�-Z9W�N
H3���"$g[3[���~A�BjbvEP�?mQ"nq-���
p+���D��aɗ{��,�%�{���*�%P�
#�"$k(�so^���$u�қ:�9�n�T����Z��d�y�[R�cX�Sق/{F{�絖�"����^vu�Yj�<$�����7u�z���.,����QKrK�X�N���
���rl�.+�R�@}��ɀ�)�p���۽��-�=3��y�E
"�Q�ߐ
�(gy�c��2��>�+c���$Lи���4�XmzӴ��22�,��q�
��:kc��E������3wM�'~?��>��ዎ^����y6�d�L:��F����ex�]&�2
=�ݬ9�h��f9�Rl�zS�ĉ��&����$�':�s���aM��\��D%�
C��Y
�ଛ�(����.�Q�����M2~3��m��G+p�#A(h�1�"�#Lf����%�ʀh��,�6۞u�	
r}m�D00j�(�@�7i��x���\w�"S�r<�d��S�muk%]x:��e[NC��z{���p�)|V��J$%c���G��u�	��ܣr�5"�u�҈���I�h�����2j^O{�t�u��lʨ�VU�%|A_}�
�u�(����g
%
���^��^@s�0����B#�F����O��d}�s7A��	��!�%_�D˥��X���ā���`R���G��j-�%�9�O�bi�6
\���Jsn��*�C,� KF�ߧ*���HTx���"��giA�C���Z�v��6I�����b����F����`M��9�W�زH�oz�“�����A�4��;�Y�F�����uBz���KQ����
�m�>�6��}��n� l�fLF,al���t��Eb�~;�՗�&C����ؼ�����4�qD�]e�m1WB=;s��-�~�q-c-��z8�a�E)�~�I�^m�k&��F���`0��qYKɐf��=��{��J�Ei�w3�&�P|2s�"~^��l�%��4=��z���G�k�sx�b(������K��R�Z>�zl��=t�o
����3�s3�*V��m�*q(���~��� w.��Y��M�t�{��'n�@p_/��%+�m�0K���sze52Ym�Bd&�)B֓��}��Uē�a�I�9i���~+�%�A0�.�tĆ;#�CD,_UuAc.�;�b+���
Q^�uԐ�Ep��i�eU�k6����c��sF+_hw�ATk��|d�wؒ���Af2��CMs=�%�hK'�؋�r
Ô2V~P���`2����g
��,���Y�@�����hNT���u‘CQ�s���j��3�';�,�~�G8�|��1�H1`�E����I�u,	��)5Kg��3�!��qS������Bh�m�dꅽ=U��K��TPG�k�՜�Tx���o�#��P�K�\B��N����اȉ��9|�:����<=�	�'p��֝n�Q�AJ�U�
�;'�2��UI��wښv��M�Ph�Q���'��X���.g�ֱ>�W�Nj-�Cp~���9�/
b@j2�ݥ#�.���c������T�4
�jtS��I*�s0�3X��4��������˭��z>�b�j;#A�������m'`Ë��:%�`����'KdQ��ne�"˴�J1݂JV�ǒb<~L�9ys�E���Š�c���a��J6�����F2��F��aƾ��|8pX��P�JŰ�<�G��Xt��Xk14p�^�u��awJNHy������%H���ژN���������gj�g9*ߏ�7]�>��!g%FY�`2b�(6�����]3�	���^��:]�/�����jq�q��D;�W�<1���v%�g�dO��Dž`�D���u�)E=�d�"}�$�F���T��n��莋��dk�'=e�����R��j�k��cʐ��}Xx3p~�,�"^mC(��Ǡ/�k����(�lr��ܮ�T��4��\sv�I�
�B�>v��8��Y�����.X�u�&���~H�BF���ݼ��:�}'{I����ꣅa&Q0^>��~tF�`��o��ha�1L{v������!l� J���T���Dybq��}-�Bd��z�7�UV�n��W+9�8*ݲ'�
����!W<���C�iϔxHfg[��zU`��P���f�+��FƸ��iy�a+Wn��Z�BN4zD�Q��E���.K&W�➷
�
ʱ?W��֎��}�w�C�%��B���*�a��8��"�}|i`�A�M�5�߼�l,��G�_p��$��Z���I����)d�,���;I57��J�M�$G��"P�&�� ���+X��W�j�y^���v��A\ ��k��N3i��utU�a��-���m�b�3P��#��^nV���O�T,&MM�!7�[Z�Ȉ;�j��
��&��.{>��E1�����'�(�&>��І�
����q�1�B�ٰN�����SZ`D�*0<V�ʡ.�D�k��\j�o�#H�DΛZ�S\<�<���k1fI(
&��?�F;
@}Dբ�w@�sNH���Coh����0`���/yɠ͹��?Q�wcBSd�d�}�8S��D�By�yYI��U9���:jn�0뾶-y�3�@-p]WŔ,�#�Ĥ��UDa�\��k���)kq:e�M�
�F��X��l���;`������
j�,ͯI7����O�fߠ8��2�)7r27�*�4U���&vK$�e�
������[���x��%?���o�p�C�["�Iw]�k��D��+�G�������w�Ul*ڗ�h��\6^v}]������>�}�<���୓�'��һL��-�z���#E�[��y##m��P�c|@���V����1�:M�@~Gԓ}�����.'<�(P�#��΄a!E:Vj���3Ro��&�F	H{�)A/���
.�+e���4B�YK��+�>�p�*���`�Zx y�}gu�fh"�`y֛�zt�)q#�}ӚU>s��G!�d8��kPN�T��� ����G}�:����UJ�D��43�Һ��Wc�$,�^�=sj�Kl.�H7H�bt�]{��/��8ͤ�����2l��~����g��;�r8��ep}�>�Ҕs��]�f�|QV�����G��<v�N��
iȕ����@j�^�.ֻ�����4l)5���rpֆ�`��q;c+{�����9�HMV��B�h���J�G��v~���0o��=x���_�֟9������P���y\/?o*G�Q��-ȋ[�]��J�A�:E��=m@c�\�`@��r��͡� y�#��*}���%��҆�
�E�%��$�Ԕ`�t��[�����!��}�5:q����,{%n��O�D>U�u�q���!�3Ib�����)h-��F��۠`(�䊹e���S�qު
C1� �oIǖ�tY3��
u��A�R�0+EP��7Q��M�����:K�^��*l���3.�=EZ?w�����#�\��o��/�8�
(#�n�*�=���э��C���w铁�K��\y���v������^K��&3I����=���Ȳr=������`V)��<�~��-�db���-�v����
�S
�剌�
��i�uv��`$	�Ry�4�o���
m,���7)e&�w�昲����Wϓ��N���wN2��k������΍[�?e*6ڴJӊf�I��&MG�т��wrC���{��V�
�
���N���gbWE�#ʃ�;����z�l����
FP�l�E��v;�/^���`�L�t��QD�VA��+O�p&N���k�7>j�>c�Q�NC#jb�6���Ad�G:�"�.��bB���n:ί�e������R���P�wXc��]�.�A��b����J#H��w�ƶT�����ȭZ�aO-�����V�r����n��
_��~,TE��^��[3�B=6D����0�U�h�?��j�X�T~�YX�dk>��*����i�zG���%A'��[A5T�@�}.��i@Kkw0��]Fe��h���ow��T�8�zȃ%����0�y��:J�;*��)7湈e�Fď�ż�I�<<�fH�`7P��c�W-��k��Ƌ˧T�]6����U�`�}�εEI4�=��y���l��Lύ�}�����
rV���AF֮
1n����-��z��)�뒀Yg�t'��OG��Q�a��+8�Z�'iXD�3y��{����/�@�����nI���oYA�LW.a������g�
�����c���k�vZ�`�n>�)j�`�?�ی)vMx��$�
/کN��+`o)j%�m_Pn�u�2��Ü>{�Z�h��ʶ� �O�g�E,\��O�,2��,mQ3[�]�d�\��+�D-������_�R��|�7�)��l���5��M_�>=ZxQ���:�C�h��V��,���8�n����w��f��r��w(蜠���:��Z�|,����,���|�mgh|��3"�,�a�l�L��*��%�i���l�i�.g�.]�2.�]���=��8d�aQ�Ĝ>�y�H���-_1欐~b2��"B6����i�x�(WAo�)Iq�V�<|��-I�l����_�c�x],QZCI�t{`��P�d�9�s�I�>Z�&3^��LW�¦���.���Y�t�Qr�H��)!����|�"M�����u�����|����fA� 9�Hf�k*�#�0y�1���!~t�%��y�.� ������C)'~ޗ�]>�]=A�?ԟp�컄k��]� ��]�*�+Z���kW0���]���r�do�M甄Dh��Eqm$噩b(�G����fF=}���`-Q��}*7�e�]�p���I�3n���SV@� ����^Z���Wy��r�|v��6m�~Z�W�k�,�);�?�d��B�̹jU��N���K�ǀ&��zV>y��*������7��?a���5`�#�\�d6�Z�;qC���߶*R��z���}�F/;�,ju��eFa4���ÿxs�����^\�9n��quDP�o�:�a���H͚���i��zTl���	bR�<���Igl;�8�J��@�4b���J�vܦ>'χ���Kޒ-��V=�'�g�g�}]��<�p�Dȟ�/�-��2�hd#=�Z�0
w�%����0٧}��'���@][f�A�V���=��Ν�B�X
��T����;%Zj��x�L���CݷB+��7ū֪(/E[
?:�6B]iO~��U�$�$�\hA(���?
{>��{�6\(G�w���sU���|k�+a��.MF�z�+�už�0�su01��~-��+A�~�~������9=wR���-W]$�y�-�y \�=5"��:n^�%3d-�����r�9W��~����>�n-p�/����U}������u~�R����,�:�E���{���Z�AM������w�%����+|�F��+I���n�	C��wc�Q�͑9�<6��k��� I�����5�/8I*��;#2����P*?:^��
%��W��l��H6�G��H�3I��yS��;�+�86!oD�__��i�R��xt��\k��#�h0,�m��+�:�>�������'7������#P��Wi>��V���ъ\����6��'&@�Y����զ�+��\�k�U��x?�5��K U)�th �H�)�u$Ģ�F� �/�W��ܻ��q� N@7��Q��a)KX�'U��j,x6���Cx�
�$��,�د�Q���
����`�gb�s����Z����C�ܓPJ�]���Ir�K��g��%8���Z�,�%31t����y	SȦ�wCBs���F�].�UT�����s5ƒD�c�
�ʎ�g!�c2:}��yS�k�")�ړ�@d�dH�#e:�-�ؓ���$+T�q����
�a�6�.@�F�q����~�_�3���/[���k�<	W3�.��OI�����׾��W+w�w*��#�
������#������4�_�"_q���)|�t�I�E����z^
���}=,7m��g"�]]<@g�\�Y�?6u��YX
oz��2T۝>斯�xv0H^�T�AnR����^��/2O0�=�N�^�Z_�Ի���"���&�&*�ϤP�]��x8e 5y�
�.<
��tl&�QsAo/B�ߔ#
V}����ٞ���؃��t\2v_�X+�F�T���l,P��i�,@u���Rb��h�#�rXs�m*��j�g #��M
���A�E�u�j ��=W,��F����]�"���
��л�Q����Z�]'�*��ʹ:݁P1�*�.J���GH���P��Q\�{�cm��J�i���iRf��T}cZ�ʣ4�
!p�W>�y[G
��Q+�p>x��b	��\��p󰏍E��b�
�7���v�r�⇗T%��	��)�ᠢP��VL`a��7�g�Qpd@ow�wl�G
�A�(�Ώ��64�i}�U�)\�{�Y'�v.�'���r�^"�G�o�8����̐���qꐑ����>���QI�A�l@��� ��I��YԽ4m�����EET¹6�+4�&0^_�_7����Nt��(MG(��!cg�v�U�
6�ꄖ0���~O�t~�c�m��Y0�1>'�k�����E����P��<�V���;��a��j�{Z��K��
K�Zc�0{o�?�I/��s�F9P!�T
xxϒ�6���|޾d���'5L�Ț��0hv~��f��'�eX�o#����J�d�b�Uu���{�x�Lnj=��6P1q�#�ݼd��k^�/�&�0[0'%���0��� �N��U��tJ��n��K�#�~'��Ωv#����
�`PK;��e��r��Gl2@�o���8�U����m�uf�l��ׂS�K�٥�����U���Jlr��,�ɷ?�	��6k#
]��y9�וW*��r�q��Jgʛ'Q�\!v��Bl�ՈB(�Z5��c�1*�!йߵ9�б��bL6b]7���9���#�?�;�}��i��DC��Ľ����ib�0و�va>:
I0M�LM%l��#��\�{K�6�Ubr��'��̘��ɭz���]2o�Rz����.����>�mx@�(τ*az|~͘uD�$xX���9t�PMnme���hکug[���!V�'�y��g�Nݿ�K9�>�]^O�V8D#�G��@��kp�s�ۗN��#��\��e5?:�Ť^X"K@A�r��Ģ�Oؚ�J$0�d����c�g'^����%��&X���̟�4�wUߟX�J�
��'�����
�E�v�rQ�U�L��z�{P1S���o��Q*��q�F(`�r�y�x����7u�[�y�CAB��J��^�R�UX�B.��AD�D�����d.Ul��΄_���`Ղ��WY���%��P�3|aV�W���
&RR��������>���b�z1t�Ɯ��*�<�4����
��dP��"���p[0���ߔdM�-қ�j�2>�x�4��r��:��{�Yџ�aQ�,;a)�#\pON~�����\_��-3�]qY�1�n�P'�M��0�a��po�,�j}3�T���Wpm"r�g��
���E�e��v1�)�������/��0���gN�������&%m�1
%pu-�63�+$E}�;+M�����%Ұ�̷����y�
�f{���ƞ���Yj�����x� �2A�y���f~���J�U��}�! 6��=B���v��՗�U@Bo�Y�c�	��0;߼�U�z��L^��m$�ٽ�w�o=���u1�L�"R���7��z���˺�[9��� z�f|��-�+ԗ�m'��-z(�+�{U����;��=���@.-��	�E$����2�/Ŭ�U=�-�D�?T�U`��+����U�b������*���z�y�Ӎ��-��ߏ���p����<��R��f]�4�M7�<R�H�QD���#�^����u��8j�^z�Jb��F8ܶS5�� ���\��-t�҈�X�]޼���{��ݻ��BT�F��j��w9i����L�s_�;i#�[�K	��U$}�1��S�N�mjg�1�����؅���2��o�zx����dɾ~Ę1��N�;� ��X��E	jj�݆��^%�S�l|9�A�X��w����	�К"�K[H�.�B��$ق��_��)b��jÍ���/�m��r����ͩ��g��e�[�?Q&HB�'㟯1��YS��[Gp����9��J���ْ��;IA�Zʼ�T�C��̸��^ݣ)�ka"v
㣚lP���ۅ�9
 �2d�e�eTIwG<sOEqk���#�`�!�(�|�*�?���O�_�L
 �v9[
�N��PF��n3���M��x{��=¯R�6�l݈!b)�V|�2!�>�Ju���腿��Z��wxn����A���~u*ϘL,�F�n�
^�5ִG�O�LJB��U���5��QD-52wi�|ۼ=�:"Z"��P���!��{�FV�Lβܰ��']�J�Ԍ�i�ѱ�d���$@���H �Z�'��ǶT����*>>0�aJ1���żh�X �l��Sc��*	�c��f�y���N��e�u�[!6|�mK�ʓ���߭���#�gE��!��3�v�A9��x088�yQ�~6�!���
~u"A��O��d�]%�53���[~�v'���z�L�u�|/F����a��ˋ�W"\�JAb��e��;鞤�(>�(�@+��ې�0���Bu_��r�_�H@H���!=&K𧢷����Z��ԅ�7�j+Qn�wU�@�L3��<��H{�.�>�.#$�x�OC�j;��ye�Q$B/[��0��]r��5;ؚ9�׫�e��.��]/M+N$,���YJlڵ.���+�%̦�s�m�8%�y9�����a���K��# ��O��M�Q�7��TR^b��}K�O�1Ü��'��!�'�7<p��H��U�j{Г�2�_������-�_C[��p���nql���.i�0^5�k��ѝxF0�߇p"��oT��]�`в��)�'���Qk�p|�cd�BJ�}���zǰG����s���s��F�Y�����}�2m&��%Sʪ}�zېJ��c'v(vꑼi�J�x� ;2tى�uj��g{!�g9I!n��:�9�
��՝-�+����;�9=�=�7�o�6\�$�<�U.����T�N�ί> C��N��br"����3�n�:�����>�&����<�>�rul��
!��k�v	?썩���[��w0�`H=��2f�(*�i�
ś�.~t�%>Q��6���}KdC�:�|��n�ŗ����|�	G����Kw�݂�;i�s@?�{e\�?�U�3
��)� ���mw,D�s��j�C.
~�m��^��и� p�71��;і��	��ȶ��u�R�ܖ*H�k��X-1��v�>��:��H �)@�#�\0��1��Ë�D��al����
@��OG7+�I�ޤ�*����LY����"�np��~T�y}�T"���Y��2�Y�Tr���r����b�F�ſ��:Y}��)�{VC�w��'ƌ�L��h�|�&$������{-���v�]+�ךcQb*`*/ie-8=�"@6�!įX@�$��W�&�{����0ӗGӎ'yg��K2�m)��gT59�p�#}��=�ո��Z��p(1O�a\�I� ���'���$^6�God���e�j�+�8�J����M��U�Ҽ;�H���F6��T1I4�qwfƵ�L�j����uzJF���=ʟ���/��l�c��^}F�ڤ=�&�*�h�l8>]�y�����3�������h�cY�߰M�����ਏ�4���I�S�"�9��N�d�⒨��Qm_�W�nk���En͓�e�%����x%�f�Z�"�8��jN��<�=Cg)*[RL�+���g��a��Ae�!Ԋnd���1�`���k�E��f��1�V�j}��c!,���}��x�f02�
7e����4�t�Z ���O���A�
�:>�M;Ē?�@�ĭ�H�,LK5���y��lWD*dG�G\˥K���r<�4��Q#;QcABF�˾M��>�D1	4���}�F�߈gA&�*㱄�CF�4U�|;��4�=1T��M�ޤ7V��o$*�c9�$ќ��48��\A_e�ψQ�U����Ei�g�B���>9�FwB���}*8�f�
+x��b���B�����LhRq�� j���M�0�up:]r.�d��B�>��9vLu�8�?��x)�d���ۗ����t[[$קs�ͽ{��̖�y��|��Fr�R0Qu�v��|Yh��)���e�T����1*W��ڟ����#16�B�Ma�0a変"��h��vkv�y�U�]0�l�/5lXۧd��>P�Un��8�5�!iFF�8��ޥw-�Ƅ�h_��RvK��r�d?)(�&������͖z1��H(C �)�*^��"RhXRIi�ȥ{�"�?�w�%��-�Ǧ�W�*t�s"�� G�e_��ä%�����8��-�����p�Ao`�`~�Q�bp5"�*���
�|�������s�w��Y�������ȏ��B�6�aҺ�tM�µ wZ/�/�f"!&(4�T!�0�DAm?�X>.����nJ/(�T�EZ�L	���⧹~�~�҃֯��J�-j�ēV�i��~?h�DȢ���|�&��W"{o�sԳ��6�UR �H�˯�lݡ�,Ѳ.n���o5��`̭
���#8�Rŝ�����3�#�ZK�ui0�vq2�j��7;�-�|��0��m�0� ��B��^��%BPHز�0)�"\�ƪ�;$'�e
���//'M���r��%
tQ�uuxNJo��Y(��,K&*��D��EzW)D�(���p�̲ė�g��C���px\�Ķ��T
$f�)*WYVF;8ij6��у��mnG�+(�RhP���2��U1>�h�B<���	:C����s�Y�]��PE�rD"׉�7�
�����1M4�1״�EW�ա�����y��	 9���M^"D#�HaI<
�߽]���xv���C~�H��_m@=1��O*g���3S���voj��1ۛ��P�d�N�ZߗHթ�N��8SV���kכc	��97	�kz�x�:;"i ��x��}�00W��/��[�޷���"�����kN����\�RL
�;��4��(*�勵WlV)B>����4Ko>L��`桯g�0YчIrVe���s3��i�!d5��Z�Ƈ�<e��ZIeJ<`�ص���=;��}�Yh�B�v^Ŀ�C�P���{n���̟���ч��C�q܀���k1Z�5�hR$3������[J��C��K��C��;��'��t����-g'T���K��I��X��>C��%���I�D��d�B�?hV���,;AQʮ�)kj��Z��j>��LG��0���R���F�DO��U�m�l�Y�_B'h���JlK@�UZkw�0>�V�@X-����T�X{���b	[��Jh�i�۩pio[�S�`��F{��Ca���M�>kM�2u�60�9�"
��s#��YN��(��X��IN�L
/��)���tu��x`yN��AQ���?�����D!{�d�
FL^}���jq���<2[/���w$�iHu��I��9*ԧ�.�p#δ[���w�5X2Ƈ�z�^�6���6��S��o��X�]$�
D@�ya0�0xV�?�6*�(]�P�Hs��e�(�"��,Yr������X��ԣ�u�@U�h���J����o[8^':��z�Q�Ө�\�c�/�0�;�6d�j�7�f����m���q�l��8�V�����@�T��q[���Xf��1u�a�����w�#l���R�@�-�����l��V۞��
a@��o�^����%�=4
��)�
0�2��&�v�����G�Y�<�+6M�4Scc��^�������E�N�a8���G�#�G�ȁ�ѱVJz���ՔT�t�?�+�Š@���X�%~veB�10I����4{�z��`��H����i��/�/��8�v;+�،�A�h��1}���f	�����0�89��VJ����F�2��ϙ��o�k��?H$AZ2��t���$�����+R��
H(s,ĸ���%�韭�����NNC�]m�n]����oHF@�f��g�Gз�I�L�O�DŽ�Q�<�ow|�?-�Y�Lԟ�{Qzf�@�+�\��-W�n�7��>%��a���y�wi)n.�''�lh�c���0��vc�Q��g����j��$:�烲d��#w,�m�v��W����V܊5$mAO�1�?ڍ��R�4�M:q��_�hr	��2�?�G������^
�`�%TE�/��6ͼ���x��>c�� �M�ڦ��UOl0���%� ��5�/�Do�\�O����+P���
vE8��p3�U�o������Ep�H�}�sn%���0>�/�|�T9�ϕ�`��M�
�<	%O� ؈3>F���D��n�%#b(�B'��]7)ir
T�yq;U�ڊ[~������h.�C�>7=M��N��+��K"���BԸ�N�E���C݌�P���m�H>��A���UXf��Y�n^�s%�>��f��d,w3q\�U��T�2�	n�R�������^����FO㮮�G����{i�U���t̜�`#�W��c����Jb��B���f��y��T��r2��AH"�y�h�
�3�q�VEn\)z#*NQ/
�|�y�C*�H��6_��H�_�,�و�9�Ѻ��=�֎�e~��:~�<F�t�=�E��G��J۫�0k�5�B����8o���r�F
p��
�J.�PUd,'t�W!S�0&4����⧖*�`vMOCL��#��m��1N�4���ۨ'�0�a��K~������#W_��+�2���ᜥ�����
*a���G�DG�(�ܤ����Z{_G:/���aQ|�����<��\ .司(Dя�t�YMUWL��^�~wܐ	)H �{�mm�{
j���1Y�d#�h��$�*��:a8'g]ʼ�[�ØP<�dE�V��Ξ�ۥ�(/u,����oڇ�0S�������M���-ؓw��zK��n�1eo��G��Sk
�̠Q�2��5`�K�qY�[���1�LF5a�y$�4�'	;M1�wX�L�K�A�y�Th����ȍ̌C�N�*�A�m]be��YP�����<���:�O�J�D� ���T��zSޣ}��.ē(�W�1C�O`HedI}�+R谹������2��lq�W 4R=ȊIA�)��	����<�s���@j��kP�n�\�*�)�ы����VBC��Ġ�A�^�4;��Z�>u�J�u��7{[�9%ΝH��&��vo+��Cʘ��kȿ���������8��z��RN�s�UT6b�8r�Jp!���y	��8�6,"��RX���^�7s�U]�}�
���4�y\q�Z������ �"��Y������.���(��v��JYUl=|��i�葝׎%$l>�������H#&���Tj�y�FzՐ��}��X����8���Mi�T@v���n�\�Q��l+��1���N:�o�~a�#��GM�P��h�ǽ�1%`�aO��SKt���8|�sJO�%�i������0��
󳎈cr��(4d4z�w�2��ܟ����`#�O��ÉkJ��[⳩!���y��}0�L��}|�Zދ0Vs?����,C��
���g%;qa��"iYHh{��'n�s5�X�'7�`J���/��Vƪ�8�Ĺ��VAؖ�u�.�k���P��� @�G�e,�Ȗ�'��
�7GnX&����BI�˾���Ύc		5T�����\g�˜ޔ0�O��)��9�R������A�0}nթ�|e'�1�编��/:�M�j�E̹,�Y�����;�.�*(w�����Y�Ju�仂1�����f�'ӏ��P�9}�B�5Qn�0����L��r�q]��/��������ap�F��^�lCZ%���t1h�w�b*Wp(s�-��(��1/i~5Q�z��)��#�gf{ٙLc�H�@|��5��>�T�+_�,?|,�B�Mk�Ɂ����x&��^[%LT��'��4}����� 
���lud� ��^$a�D#[
p��r%��P�,��B���6�Ґ��z�q������l�\�	��v �.��V�;�f%�|D��x���[�JL��F��
���EUhT嫇���_��r��f��^3��q�5/�rR]C�Ԙ��cw6q�u�cn���~�	�.��N�	�4BG��r�jS�M�{� 9B�&yeDyD[[c�-3�r1�[�`ᯆ	S�WRY"�.��l<��Jx�G<���٬�	��<X�4���!x�xb�����K�:������Ѵ�{����<���j-��%O�[~�f&��1	�q�k�U�1S��.H*������~s��<�]x�o��ۨ�����J�ߎ��D�]V���z��+
�PaqŬ��v����c�0u,o�$M��`�"��YՎ+�(~W��s#>_b4O�E�-c��ISx��a5W���R:'�op��cv�B�~�3�I^�)�}�p=������vi�x?B���L3��ͱr����f
+���I�O���Ch:����E�ˑ9��T/�YC�[�����7�Lk��$�pJ�S�n�<�Ë(��B}�)�N\S�殳I�^DK��$n7�C�G���JY*��}��_�"�T*T����ks� �ȅY4��|�'��\��G.@"g�;	�%#a�9���1ɠ��:�#���}2���*��`n�V:3_%��Hϱ1@I���Yv6렽�ºA�&x��ڐ�3��r��Lt����&�`+ɽ;:&!n{��"��}�:��J��O.UP��4:N8����o\~��4����i���@�h����| �uʕ�ހ�Q���5�C�'<����!��E���[ҐM�1��ֵ�)}��p�b��Tz󮓩T�2#`��}18�5
��M�~%+�ĮH�h5$��UiQ�:�A�}K�z�\rT��R�<�"V�5i?O�����0�Y�Q�R�S��9�#$�����R^@o&��B}�K%=/
��� ��������UǓp���M���s1H>���ft\���˄"Z�W�bx͗����������"}� e���I���E`��	5L���T�_�Ϭ;�&d�4u3�/$2�:��i`"������������x�O�����=Z\n
!�,J�\s���b��*�B����'��P;���W�~�q��iU��PB��2T��a����Sr1x[SK���}r��^��7��V1�ձ��R�Aa�ͽ]v�O~+�$@]�e��BY�����O�)�H>�,��5��ǝ9V�ؔkLu� ���C�W�@�:��wx4��2P [re�5���%����jhK�ui�,pR��cz�{;:E���_cA�5��U���	ʓ۸��t9�\�ޠ�ǁ6v�B4*8�-6� ��&�
N�%�e���ѯn��& ��0�d�i�?�BU��B�~�ĒO|�x9��`
�䪇�;��C�6�$�k��>,����B�\���=o�M|r��f��#��b�S.�K�yYtD2�ľ�gL,���2.�p��7�w߁IR_U�qUJ"��C�����E�K�zê*�T�l�ݯ)T6��\#��^$��!��*=o���(0�ރtяu.�<��L�Y���͎�	�HѮ���iXI$�9-��{�>����P4v��%WXKA\I(�;Zg�Zz�GU
#bs��1fG�U�.]�Ȃ��T��c�#~����,�|��)mH�<I�F^��3���S�P��B�2��u|匒�T`t� ����|%D���>�N`c@)Pz�9=eV�����U��6`����j��9�ȁ2������?���=1�F5{��	%Ӡ9�Aϩp�vQ��������(�Y���t�^�6��zg���WC�ϖ�@$������v[���S
g7�)�[�{��8��2%"�W;����?-�?W�S�_؉Ԅzo��H�	p�z���6�-r��^d`3X����*nJ<�Hu��$���Պ@
�C�ΰl\�T����D�餴,��7/ϲ�[��w)
f�I�@���Zdn?�𓗊��:��P0��X`�d�\���2�N]G6n1I#FƊ�p)�*}��!��V�{��-�R����k@Wk���
~>%˳����?M=k<��a%���Œb?�Ђ���>�pB�)ы��������Y���ᔆH�RX�d������}m����YO(2��ն���:>Pɒ�^��hɊ��s=s�V\ԯV���\*K;�{�Z�eA�8q�%��0>�%mJ��v6U�nr�_P��P'ZnS׶r�Y�5������3ɻ*��uP1G�b��0"���%��[��$m����~I�2�5�q��	�q`��q�R��B���l	=?jv�0�c;?*��
�ي�6�S
��:���^ί3���ݗ��ˆL&�������Z��ķ��_ˌ�A�89�&*_�"��4#�!8:����2	��15�x6D�o~����~_�Dzj�(��23�}����gH$��Q�!-�����Zeo�R��&�4��f��q��)�u�@eZ�°2v�m��+a��}�M�p
vr"���1�y�a�-mSB�͝8s\Nx��*�F�4�YFA`��OI��%�"��؇��nds��K�1S�Z-Y~���	*0��@J�j�v���{L��_�+�qO>yA��HM�&=|T�Eʕ̈�m�,��i"FP ��M�����d��Q�)���':�?]�K�?�	ՉSɲ�|?�Rv<s�?b-�[tXڶM����ɧ���!�iWJ�W<f0�K�l�-��W��$tr�7fP�*�������P��$��G_:���+0��٣��L�U�^{l`�LJ�#V�^:�l��)�5`ou��m��x|�t��9.��du�H����|ߘ�+cv]v�;�S~h_0��
-�(�����H:��:y��RѶ�l�nN�z��O�:j��@�z�U>t�$)��H��2�S�g^Ed���%��\z�X`HX���xң�\|� I��	�	�r�j*��%�l�Y�kh#T�z�aI�j�]�Dh���Cc�}E�
�A��b��2��8�mŅ���K�����pp�����j��l��+{�#��`�.^����O��^B[�N_�����Q��?�x?%�,òs3���I��ig3{ij%oQb_�ʹo,�����>��O�9�#�)슷g�W��~�H�/1<f�<z��F�;**όf9����3�{ns��u#'F�QvQ�C��I?�C1{�j�(v�I�p���y��#OR��r����H���U0�~=7��/�طt��k�
u}eN\3.����MH�����s�?T�U�2�3
|���_�YTq��t}Ki�u�1��QC��̌-�@�?�x�X�l�0Sc��JW�%3��$��`2��6�����[��=���$92�?}�٣������GE���Ę��mQ,>|���֣�z/�<"�Kk�Ujô�z1�*ާ�}�<'�Md�O�*��͚sm���
~T���S���PK�[���h]��r��Qz5��W�{�NvPs�~��K�u!�޾H:εi�oT�A�s��-J~���ح�b�B��+�{`�=-<�k|��R��(n��%���x�=B��d��10�gi^�qx�����C݀�0X�>�w�@?-�*YZ��G�����3?���s�q��֐�T1Χ��{r��R3�g����͞0J0p6��B�0���ub��$fHt��]����HL�����D=�����H�'�����p2��|��7m��v�z��zX]��I�>���O5M�L/���޼��-)mf���1�.4wԆ�L�P
Le��Q��]F��#�*yk'FK��ʼn��
��cy����s�f%c�:���޵�34��.�Ɨ�@f6��&��z����C�n��D��/)}m�,%��.~D�G��z;iY+Cs�����.TU(�fFo����X��Y����;�_ܠ 3z�v��X?��O"܂�8��-���pٟ
�i���*�s��z�� [�Ke�lg�&���4�~]Q��zhK���yo�M������{ڳ�L��KY�ks�q�H�U_\�)�Q��_6JF��W�߽V�8�M��K�gB�����>H,E�ꀿ������P�q�r��1�A���D�O�c�$q�����O�W#`��ʻ�}��,�Cت�C7��l��+�xZ�Y ̲Nl�4���Û1�I�Y�Fe�k�F	�n5�zX	�Dwa�e ��s�P�>]��L�5���9�|_ҕ#��v�R���~�P�c?#t�����;���b�;��ĵȧ`��8����?Kz^>�RmM�$�H�YA��D
s"��c�����a���
��(�*-�]��XC��gl���8�e���Ո4e��d:G6��b�s����a��Rgp�K��鳭���P	��QB�r4>ӓ1�V�D�����#s`���6���K$Ȥ^;��}�&�W!�֔{f��-�O���#�����������(�� )N\#@;(�HtP��,ND�F��tC�NQ��]e�X8e@4�%��/_�Sv� o`7�D�.�1�H`9zꎤ*h~,jl2L���kHT[��z�4��`#P��S���J�'8�2��%��s��W��G�ULLp�1�vI����3Z�\F4����€�'C�1�9�y���"Biu��
�R����Bsa�B=�xB�CI�R���g؞��9��CE��;�v�b���L�{�r-�$�����VB�'s� �ۚ�s{J�d̍.�I����W�NU�K���u5QZ���A�Ev���_�b�W��!���UGteU���77�*sd��ԩۯ��Zr�ow�]���.��nl���/��Ӗ���:,d/�W��zB����hܜsg=��15���?�lK��kx��5�[����'��DK{���ĨP':����F��~�e���@m�`�9�Gx��_霳R&ׁzC�"'��x��8U�v{��X�*��\#�6�[ְ�Q	t�3��k��©�$�
��VQ�g�С,<���5�o�_�j��ק*�KP9o6a��N+k�tm3n��M�ЈB���R,�gj�&�'��_9���|�T`���G��v:<��k�w��[pv�OS%7�G�L�8�I�F�穽�Ϯ��m9��Ѽ�0Vcus����1J����!���<�-F�V�B�T���=I���+F7kK���4p�n��n>��(���x�65E!�s�h�a���G+��]WO�#I$$#�"H�Z�I���/�ku��/"�r�������g1�E���+k�J����n�  2��Yr�<�qPRO�O�7ӓ�YG�)5ԻA�P_���{����Z���1��%��3@�9��Օ�KᗛQV�S���'g9i��a�1��q%$^�T�c�"��WQѢEEpҤ��Xmd���0�OW�^�"�C2'|�����w�-��վ{f��N%�0�OI�|���Aj���=�w�
�*�ͮQ2n�1��H�����-J�yR�(�%Y��=ҏ|Q
3�,�e�j���^T�Y�-H�u��E�3�
M����Q\�}o��⭔›�����k&�����!�?�;��)�nl���d
�'d��=kw&{A��Kͫ���| �jnY1N�Ha�xR��������yC�6�~�4o$^�,� 6�y@��Q�F�I�	�-�/�v[&׽T��;B�4�+�����A�ި��$������ꐸ�챉��n�9+:�-{�\S��6l��Y|�?C#�>=�lsu�=1Ev�-[j򧱐'Q����Vo�r��lt1��ͪ.��W"��5�-%�ynn?hX��|�p�d-e1C�ٛ���%
��ހ*x��
�<�A�j��1	��ժ�3b�����oŀ��
�I�$���E�d;�z��1"ǎ��Q�xx�gÝ�P3���ĉm༐�ja���v�Brk#}\y���?�H���I��HM�WB3��V�ױ��r"�nUv5��zK�,؄RAL�i�
����ii��X��:g��o��i���6X�s��"�9]
6�/���`��Zd�~���%>߾hsE
��@������~nԋ������D4ڣ�$���X���C��c:o%y\I�b�I�va
�*��r����Ml��S̭�$N���)�dY͍{��E֤��2KƟ)��+&�i܈�'�d��tw�C���<�
ꉺ�^�>�:����E�D�&�'��k64
��0iq0J�])�~-ԽLj�6E�H<��6�F�c"�ê����s�B��>��8G��p�nG0&�D�\�2>�@u��/5��
`'!��l`��WdfG�GD�N�c��=�:
�*�ať�E��!���zd�/�g8��=�~���J.2"��K� �n�>�g�{�U�
!�1��]T�%�f�!��s�Bq���gS�.�An����Tx$ޏ�����,URV�f�۳���Oc��-�%7S�����JE;<�V-�tW'K�kt�iWI�ž��ꭻ}�E�n��=�X;c9���i��Ŋ�K�����7����E�E�l�A'��U;�8�'���Y��[�/��q)ik�x��4�d��@4'�۩h�s���X.�ǃ,�ؕh�o;��(�5T�o�'6Hm�;tJ�?�şU����Q0�:w0Zz���j�&���DU]�[*"ɕo9A�#{0����XM����������C�����!�{#f�a„��o
b�����qÖ���ec}�\�%����`^$�S�R4(6�e�`f�	��w[��2Ėy+҉��Â�h<��/�%jQU�	��bbM1� 	��69��(#3�1`h-�J�7'߫���@�Dl��}�MYdu�*o��-�3O&%o����ie{9�f48����� ?
����=�zy|l����L��A�=+h��3�v_ϋ1&.��Vf�F�aK켋:-�����l~Yɔ���O�ԝ9�6��n�_��� �ҏ���/Ε�3EឰB��f4��lT�i_?�������ݓ��=_u�K�)��*tU�`��҂�i4=�dubH�͠&�K	eC?\��H������޲X)��f
r�#��3�8=��/1�!�?p���](ʌ&c�=�d���8�l�КƗ,�T�+�V��o1=oq���/�2ӷ�ƐY-�
���/���ú@�u�߇�4ډ�O����Ơo��,��)����f�Y��%���~�E��Ӎ
����ꐀ�,�h���pp���ho\�"�DS���ACUmv�2r`)1��+Q���F6SW��~��yp*�q�`B���9��F����ͱ�X�7��X��5��mGmR<F�h�uJ,����$^��Q١o��#�]��<����n������j�1_D?�{������׋��8�1����W@Q��%"](Cl%]�
"��Y*o��?]ď��os�w��i/cEfO�u�!���������;��w;W,�|��+$��I�薏(�w�(Ut��l��{����Do���w���~yzQ+w�]�&Cj/Kw9c�' 
Hu�疿ߏ�9$	mɽG����J��"�ϭ�f���&e�!K1d붔m�~��0"w�I�~A֛�#��Į� �$T�Q�Y ,:K휺�ȕ�Z�����0��R�v�^����to�=�jR�q��/^~��f��o�7�.�DF�k�t}+��m���Q7��^�a��M�S�_/���5�������.�
�h}�}�=WҶA�ڡ���]�q�IKH'&�٨�rr)���b�y�}�NtwAO�7���5BM�����G|�+r���KY�.������v�0*�4�nѻl�(�=�a�ɍ<1�F6s��I��y�"������I1q�	��I�n��W�D��9�[
ث��?p4ԫ��7E�z�a�V�Bx��=)2��U�dj�H�,CY�~7���t<:x�:��Q�?L�{�ү@���r��rJA�Cz8֜���T�4/�ӗ�{�s��h�s��֋�}�52�z�]!_
퉱@�<;b��S��F,��Fd0�_a혴<1b��,��Q���A�?ϸ�g�*��k�rz�;�t×���쀂.�!��W�����o8�'��QS��3Ӟ���,�cR��;�kœ>��L~܋��B��`�^j!�i���1�6��/a��3�&�̪���.�y��@���M*`��As���Q
����T���0�ǭg�{x��R��¸Ƃ��~L��[{<��S���сsy;��a��l��!Z�'�N���#��Qt��\��%����ZA{�Ė�
&�J�n���J��K����0�E��翛����)X.j�t1^�s�!}��q���,�����(��&�#3��@�H谁VR���V�0�,��K͞������k�L@��y1SV�YO��a��9r�HFK������~�I�u���,	Jq��/{쭥�]p�ւڦyE��v�s�I�e��&z`�
5r���W��m��h�f̽5�S��zw�h����.)΢,a�GQg���-�#�Zd���]�p���Wm��ߣ�f�}aru?��i����9�襸"�}ZC����7Z
y���D��1�D����z�@`�t�h��0}��3l��]����ؤ4�1T��|s
4�EK��.�4�雀�j��U�~1����$ �aCG����>s�t�@�E���!U^��X�e����Op��de��W��>��_��	�w
ӵ���5��8����:>.��D�C� ز����F�z�(N)r�����x�pDŽ��4w{�
*f�7:��^eX�9pz�knK5�
�=���9��g
�j�f?6�/�p\p��n?�
O������\�<Vq����L�#���8�"ǫ���C�Qw����<
��<�,��#�kg��K���,3mY&�����)�C���13&{��H�=�N��v.	�`��C��/���A�m�Ӑ��Gɷ>�L�n��f>�FKґ���8��-����=�i��|Dob�
ԯ�]5e
�g�)yr��e��2��x����X��j�,b�(�@^���nQv^>��>}��0*b����~4�Kct_��E�w����	+�ˌ�$�OX����a b���0gFg;.�����-��i=���6@�����3�1��,_���j��+�y^�hFן��^�]qeA�`�{��F$���@��(�kD�*���N�|P45
��v)'���{�Q�t;W���.]��O\xu���%^��h>�כ�O�S�~�6�D|Ӳ�a���
N����v^�}���?�Š7ࡷ�ΰْK�a�>+����T|չ��n�d�#/,v�Y�M.�S��8�Kf�"�z��"��E��x{�(����v
��i�<��aџ�k����+^�AcP�$L<S�y֪���{����Cwa�3��F;l�a��xQ2�,�+��K�q�~L�e�nS�F���(ڳ�={�5.ޓ<�UC���k~���{@�x����Rd&����okh�yZx�Yq�l�YS�G �l���/��
虜F�ɈCۡ]���}i}���{�6vg�a�#��c0��ګ�-5g(�R`\a�5�/%����Qo�QӬ_;K�1�����<�;5:?��D�	�X�v��/�	�Ģ�j�NB�h�fD�)��k3!2��y�]�5;�G�Q뾸0��T�S�7E�ȱ7�
��3x��b���n�2�C�&��Q�ϝoҭ��E'�)�,`R_U�M�d#i��2��,�/��Cա�`���[L@^V���TP!ip�X�#���V�ǧ����6wX�؃`v!#}�#9V#�B�Qf�"#��}�:��������g��0�rMN��L�P�ܢ�iJ�6ZMBi��h��0'MZ~y��5�]�>�βZd�q��f،�؞�ʃ��t;*��$l�l�.@b�'�
<�@��h�1j�"�˗��< H��c��!ў{B�7��V���&7��0���Ka���f���V�$u�����J����Ȥ�ƽ5̬�7�&G���u�M�P��:���kZ���ʳ�����L���?�&H&v��o�����\�ka�h�k�5G���>mR��� �	�I��!�x�խ�^c-
�%,����.Ա	�[��*�I��,&�yK��2���z���'`��f�	����&�EʾI�g�2��6AZ�+;�'�	�kg��@�n|�s�;�d��A}(���]���<��:dn��fk�h�Z����L�<�iXTk��kk��$�Sm��H�.� �Q��{����8@� ��;�"6���+ȇ�j,�8}h�X�Q����<�[j\}P��-��ݲs�X��":��(�:���@���-��I	�H��~N�]�$DH��XS/�;z���Kq[-�e|:Q:G-O
�	�S�{�	���K2YFs ���� �MB8����v�]��KϦ�f꿇J�skr�����}�j|&�OU��|5�Z�=��}�Ksk��|�Q��W�]��6Z���k��-1�z�BӷVuzz�|7?��������vv��h�3�u��u߁+�9]O�b#����o�a��]w��z(�+�E��c�K+/|��4�1LO?�!�3���z���:�M5C���r�Q3�7{��xE��_�.R3	��Vڸq:~qz=��g�3C�\��ު�gP��8�dQ�Q��܍8g:������Ha	Du���;��5T���(ň�}��dQ�&d�9���J3ug�/���P����:�qEL*��z7�#"EQ;�d���/,�KÆ%�\C䱟���h����ŗ�A5��$���:ˇ���H�����·��ѵ�KG
��;�ƅ�o��K�U�h�5�1���q}�cQ�z#]��3�GԼ�����@��0<I���\�c�}���A��^j:\�(�	+��x�ob}@��j+�l2?j�1z�v��I`�9݇�:��S��	#���ܻ������Ғ�OT���F�j#nU�x��^�����抪�B�G�-��4q��θ�
�A�tL/�׹m��>�0����
-%* ��$e ���Àا��{ݗ��[�bC°^�����
_|��̊λ3�8���8�[CF��Cxn�'�`#��AYI��e�hn�f�m3i{Q�
���L�0�n�FY�a�W
��t#Ll�L6�*�5嚋���``?m�	/�*��L"�=�VGz�|�N�Q]>�$��@�j��v'+��]�\�L��{V�V(�T�'�6�)�<��{����b��T�Ȯu��"��&8��jώA��i��Mq�ܹ�)�ӎ��	���1A��!����2�nz��}�4a6�u^|�"��?�vq�%P�)��g��  ���䂼�ѿ�x-0w	��V̠���t�Rݘy�+N�PⰼË�����-�b��&�v�µ�b�V���XRd(�ȟD����,Z����S/[X��ё��]�ܺ؟ԛ���ls�I\-�A�D��Du�\��D2K΢����y��|
��:O �'���}1�K�,��i��3��
�?����{m�׷wM�`'Nd����Z�d/�(�d�y��u��p���!�݂˳wj(�oC��L
�W���x�/�-L��݅4��lh��!��g�^�g�3kB�Ӊ��%�$ݶї������oJ6M;��UZHV�3H�oWv~���̖�t9oז`QԋN����4j՜DΒ����{��G#W8�ikd��~��oܥ�L�w*Ъ����^}κ\h���(g���</�P�?h�(iJ!��E�z��ݡ�Z"
��7��y�"G�ۀ�4w�=��x˜b!���jw�"�S�OJ�h�c�X���$�+�V��!�#����i��y���/���{�z�!t������O���v	���+u�?;G�O��=>���k��^\�*�{�l�P�"��Tj[�i-�]Fg�#�L�R��ξ坹_B�S�LI���1;MQ*��	��%��!%eW�\�E�~g�w/��n��6�U��l�E�%m�гB��J�&ā?C����z��^��[enL�U��f����$d�L_S}���7m򣼭���	N�Ũ�F�C��qij����[P:Ǖ��-���تJ����﷈!Ӫs+�'�LI�5QI|�Q2 ڪ'�X��3�b���,ۨ��x���#m*�iѕV�f�RzJR9D	
�d��Z�z.i�O
�:-i&|��8o�O��8|���X���d�u��h��if�[o�6i���{<o�u*r�y/�F�%'S����~�$�O@Y}��&�<H�֯�Gk������+NR�h����D��vR!��,���j�e���i�6X��9'�F��׏9>B4�r��d��) �cG����H���\j����E���
�-#[9}��/���!lo?_W�IN�m~�p'x��0hԯ�B&�[�8%���hv�C;8ل�m��+�����>�@�����`/k�k%�Q��7�p�������d3#|�V�jűT��M�΢��Ɂ�!J�f3�p������ޚ�M����hB�@UE�Z#�v�3��ߞL��n��y�R����a�r��ߊh���)S��-���D�~"�м��GJ��ʋ$&`r�(3�f�`����h[{�u`Z�/���2<����
��lp�H�4X@���r\:S�����b��j�,��lE����Rj����-c�r���-���F���e�M��k��<���p+,Q�"9�*�q��o=����n�ɵ��UJ<3��#�,l�9&ݦɔ�$=_�q��Kc��/+�>�B������Y�Ftw:b��f"�K����f��� ��@�Ɍm�n�ߍ�o!�D/�\֓��O�ʆ�	8���S�����[��\�����ͷ�@�3��B��U�-<$�t
��_��<ȼ��������m=߬���Y\Wh� �AG[�+Z~mw�
�*�1�݇එu������a�)�.�t^r��v������;%�54��m*�'7��X]r�`�-�鉳�Ŀ����P�c�B��§z�y���9�-@](�X��٭��:�^�'@j"S~8:�d�kTB%���^<�g��s�A�nj�;�I����8��+�i��9�M���턭��p(_����+�]�R-!B��K�az�8�o�{Pl�����:�8`��㩝�p��{��K�� ��zEΙ4���})#�&�*0��M*K*m�`}�ބ�9�΅���z��p��fU��~��w�{��[������\�I�(h�g8+67kX�[����z�h`���9y'�����_ ��降o��_��B�\�O�w��Lb���Nμ����?Bā�߆���t�	P���J:!4SP�
�7��z���$�o�#P0�_�����a�C[��h�Ef$�#\*\,�5����Us�u������y��0E�@���h�LR���Z�(:ʅ!�e�����/�Y~��\�*ICb`�c���.S��g����^��g�C:�������˓��&s!g�_ܕ�O:�@�rK����&�Tsm��h�)�d}Y+�*1��
�4��>�e�Gq\%E%�"r�	6��nZ���j8zue)c�pA JvJnh���s�tD�ӮBW���[�xi>sH����o�EL�,<p�O���|��W��� ���7$����e#�i��J��h��H�|���X���bb��U��zM��<
��$�4�h���[l��,
��0�"�S`ƶոw�h2��0p\�~�WYz��GR���;iJ�<��lͪ�[rTle��������8�`���z�5?�����$cBq�Q���k!��;ph?���gBC_�\�n~�|DOE��c*ǣ��H����#���*�5R��I��g9�OS��]�)|%,'8rm�=G�hʋ`��n�C�����8Ь)�?E���=�g�6k!��gknNI��E��"���(Ȍ
X-[t��.���m�2� 3����~4���f#AWM;��(��˚�O�S��5L��S�WL,h.�{�ĥo�t��̹�$3�Q�֡�-��I�#OXp�0�]1��}ms��x�xGt� �P��z#��Lfpʛٚ���m�	�o/�z���$b���{�N ��_�~	"����hF@%&�	�!�~w}��ߥύ���TiZ-U�瞽�X�S#�{Q�&�Ǖ%1j�s�,*t�ݼ�&�g�xk�{1��y��9��Q4�<�	�[�&/��\���I�ԭ��4����\]��^o�1ㅑ��ݗQ˨|pYy�{z������W/�X\�K��B!H
���@,c/����:%�~on��&q��Q��$u�S�Z��+��U��U)�=��Bǡ0�gW1s�d�q0�&T��i f���^q����`A����t(qWYY;��v(6$Je��%��'J�'o5T5��z:�q~�G��s����m����V.���0�Q�/
`�����4��Plj�1g���խ�<��Di��C��� Y��,8��t�*�xmHU�큌�������P=��#%��]"�v��.�I�'c>�I�^I�����dN{��bQ�1����Fw(�A_N1��9������~�(�6���!+v�w��%ך�:Z�ndE��?실�t��ƒ_���|��w8M�n`��W�쉍\k7t7�Y(�h=*��jX��Q<�3A�N�]=�O��Hm�5<�T6�0�aa*o�j:}�>��ؽ�o�k*c��SG��n��b��V�e�ڹ`�:��%EO�EHC�X20��[���n���#��`Þ%�fHgrt;pSe/� ���f|�߹\���7�!��o49Tu%�I\�O�A�hM�*9�s
�ռ�C5p�0=��v9���q�u,�X�\�d�l㘗.@,-����aiV����I����.x?��P������K
�\�T����]p�<�5=;{�r����m�b|-,��mUN
���y&��I%�+�i��6>�mS�s��҂�1w��.i=|O�/�{��{
"��D�
Եe���ǹ���x3S��
K;����v?S"c�	=�[Ž�8+�fZa��3��T��ij�=hࡰ� +b$<��O�H��F}�B��*��&���W�b0Bc��Ǻ�F.v�:�y‘썎���x
g�M�:����vv�+�y�֩c��q�g��@Ɯf������ٮ,}�֟��AK�����]oN)c…G��0J`�	��Z�{']3)w���U/��V�Q��^T�@�)������o��%���q'�-1|b�>"�"C/�Οbo��Vi�c��㹯����n�2'��o��`j�s�f~�0/앇Ȥ\o�a;q��,[�C6�n�ZOe��H?�M�ͳBL�UQ��ܺ%�s�K�o&�ʧL&�;�c6��iz[^F���2x��g^�|�/���
�q�M�K��5Ɖ��&KdXg~�O��P��W���0)�6�+�����ڙZ|6w�p_2����𨏨�N��6;h�^nH�u}��u%�[���ލ:�_��¿��˻���Y��b��x�����Іᄕ��u���w�͜�m�L}[���`������k]�`��$
9@3���Nsn׽�}����rx���&�
�)�a�k��D�1#�\��>0���o
H�y��5���?xA7���-�r���K�W*����c��q��`�@���i:ɖ�c?� ��j�f
�������=-�=[��/̚�b���k�T�λ�g�l�?29��z��)���m��z�f�ko��ɶ?/�/��o��o�Ի�����q�/�7�I�o�^��ү���-=������;��[����v�-ti۟˭w��.�k�j�Mݢ�;����wR�Կ�w�
�Zn/���7�q�A��{��Kߋ�1�Q]�_ߊ�o��]���/���z�/]߇�?B?���[�ok������z�ߋ��	�c��s�w�ڿ��?�����R~>�'=�wI~]#���C�|>��_O��}�~_a�{����z3���L��Ջe~E�|+���5n}�~
޼O�ַ���L����������Ծ��o=�7ū;�W�ӽ���7O������rk�ɡ?�J��?	��>��t����'��?�%��;=���n�i���:����~.�]���������?t����-���O~��;/����<�~-]|�ۭ�-#�W�}�>�~d?��߇w�v�Z_�W�>�~h?������w��+��C���އ�/@_��{�����.��W{���7��G~/H�������{�|�>��Un{�ߏ�o�q�_N��냿��O�
��S�)�)9��vs��9�g���7n��W�K�߮��I�\�N�L�6��_����+�Ⱥ2D��f���uW���[��z߾�u�]��q�o��j{�>��^�����v����?z������[�y�o��ާ~K���{J�.z��t瞐��������}�w}��{��K?�k��s�Nm.m.t��k�+��m-��@�-
}`�Ut�F�>�	4ĥ`|Yq����8&�KJ�"�����
�X��bF���L�3���b��-��iM�=I�Ԣ89l����YiY�9`wJ�	=�̧c�����O�^�;�(�r���!ڵcL�$����|h�ޥ3�!�As~�j�ަ�]:����-�s���:�]� �n�%�!���!�Ց��X�'��:��rFr�NQ���
���ͧ��q�$�e������ܾ""#��V	��H��'��mF~{�_�Ɵ>z�LWȚ���w�EѸc`h�g�ΰ�0A[�!���7�5\�ܷp�犄Y�T��G�z
���
#p�W�B�_]�vA�&�v>�l����<4�M],›��qمZ�)<V��um��-��Խ��|ϭ��{
�uR�T�u���}zf�N#c��Az��c�"�z����z��N�[��9��N����^��}7�榈�`�B[�����7�^�Ds����u�4����Օ��^�)T���j�6�z&[xF%�׭'A#}����;�'p[O�%�lJW��p��ָ��!#6���+j�������ZB�`4T-����I�c
��p�:Q%�n�<K[� �m �Ÿ�Kτa�/�8[����Zv��3�����"[C�rԔ~�g�6udIv�&>~2��R�{3�5?�������Z��JD�g}%uל��W�wn���l
C�]���1��#�Q�q�'�\��R�2�<��5�Ӵ�0K�};�
T�&���ʙmj}�9C�n��	�f`�M����L���f���^�z��#r�uȼ�J�����e�������M��	`1[{���G2��E��=��~��	�.�8��8rdI׺���_rb�����5Z��1��~2z�C�)��ܰ�G�N�R�i���hǨ���[P"݊�m7v��"��J"el5)�}�"�ɻ�9��y�\$��� ���ۏ����x���E���aU	��mb�0ؙ�˝a�9*��HK{�	��!��EJ�
�U,2!оQn[��+:��m=���;�ّı�eDힳ�7�3����Cn�	��4�.��57��H=��2����Fڎ����9=c�6��sۤ��¥��e���	�8ac�-6E2g�cHޓ�_-�����ss��᣺��Ca���p(�$y5�JPh͸,���f�Ci�u_�{��m�V[M�7��K�x�Vf��vQ�� E	�r<���9Ϳ.�A��
���梆~��]\(A�|39{�o� ��xsYm�lҽ�x%+q�o�w=���$&u�G���Q�D-O�c@�y�*���u��]�
7�O=���z���I���&ǁ�"A�R����/ũ�mB�qh Zg�5� ���f�VDR���r(�"����q4���J�0�-l�����{�Uń��qCeE��S��8��݀��x%��H��1`F������@Z���$��<8�;�>��� �[�e��SSρ7
�\krd��E� O�ܚ��0�0����:T\g����s����;�\�h;�	�}��{6_4m���^	-A�ڹG���5F���׺`B:6Eہ�23[j#W�߁j��-���n�V|�}8�_{��(H} �/8��eUʧ�Y�J�0"yzv�����AQ����z��H�!Y�9<��D�B�ԯ?��}�M]��?Q�BM��-�@�5
Dc�pLnG),p�=.&B��*�\��n�C/��d��_2>Ql!��6�'�|$`0�+WC�%�Y&���7l���l�?�W�I�?GE2M�ャ�?�N�M���	���/Huџ6Z�R�#��J;B�-
�!La5���>_ȕڅ¶Jž�Tx����2�҇�v���Ī�%�-����a1�+8��y߁HPM��Z�L��:��p����_��d��aY��:"���wK����,d��#l<b����a���F��1q��F����yԊ�V��Q4ƣX�u��d$�|�@�%�&�#�tf֥Y���*�/}���=H���wo���\� r��ڄKi����Ewb�n�7u�"B����e^�?���!m�A�麗��8D^\M�Ț\���Xjab�Y7�4mz"��+=p��mA��2�<6�4��i��]1]�୊q�@�,=�P�eڤ��DU����_��Ҝi�[y�=�=QT�dO(��W�;8�9X;�n��.�<��ը��p��&-�^�e�c����gç��/2��¶��o �J�j���n�R�IX-�b>�O��vF)J�z��C���:
�hŻO�&F��*Xw��Y�K�{����u��I%��dLD�n���z\��/�?d��)��a��ɉZ*��v��_�*6e�i,�\�Ød�D��V���'uS|��8�{q�*���6���Iy�-��U�i\�|"���[pK�B���E����qw���XIi��p�մ>����B̟8`l^Ի:���?*��X� ��ŧ�n�ߵioo�pf[g��1^r��:��Fm%t9��w�98\T��Ҁs��(�-5�����}��L�aW�cx�(8���
p�����~����6D1=�q�X��8��u1����c5�Ѕ+N60�W����^),��r����ƣ1�-H�w�%��[�S�$�'n����J�!V�fX� IC|�]�:{p��wS�Q�����l���f=k�����bU��q�%�� �*ɪ7s@�� ��ʠ���T���Gf�R2�\c%Crs�Z��%E{�p�d��O�M%e���v!�e�~(_�6�y���D^�F}�'�,���P����F�Yo��݅'=�P�L=Տ�93L�R'�+V�k: ]z��섨Y�ދ�3�
;`u<|[���<�E�U��S�� 8����wr��6����c%�zu�*u���3H�ɥ��3J"��:�m[���X�U����Q	+R��-:���H?�ǡ��_��r����B�-�̧�ք��k����o��dA�^������8Lb�5g,���@fV��}��$3�'���>�A�4_�:��C�~��
�J8ANt�}��hZrg��DS1'�gny����޲�nP���X���}@R�V��c�&=T��b1��4s̽��QW��9c0+DZ��
X���{#���\W�Z��:,C�0lW��f���(�@�r�R\о<��������8q_*M����p}�����y4p����1p�eR%��q�Ͳ�T��6��m���tޮ}~���ڕH��e=�p�ᛨ���s/
d���$�4�Ț}U�Hf���X���So�?���D��4��(o����2��1���q;2%�x�>u�	&�/vG�ugP|ϲO	]���e�9��wz�^���.�����sϢ���Q#�����nV!�pB�A��v�V�F�c�cj_�"X?ʼn��So�O[��|m��c�6nń�[�A1��n�����C���$�\T�l��L��RHh�$�$}4J~g�?��|6}Sb8��5/�4�lW�8�wVk��/�������>�4�ܽ�0�jl�lBp�AP�$҈%i�D5�|�Y,7}5s��ܱ!�As�'2<|���N����8f�]�ϥ�J�D�C�e=�ܰj��6;��r@վ~�`0fʌ?�GT��_'M���ۤ��w�	�{�M�����-�(2�'&(F�h��$��%@;��� �zp�X�	��\r�7.�q�b�"y�U+���4�;���3�M��M��`�;���	�ΫU.��Z\*����VO�X9"<�֋a"�H�L<xmJW>Zb��	�TU��K�c@Su�]	�ַ
���G�M�Xt�C��s]?Ԧ�:e#P� ��	rD!l\�a†�^��\�3*�I�h�=��s�G�0>�p���O�wS�/��Fٮɷ%��]ۆ���3�h����O���c����g*r8��li�Fñ�Q,1I�M�t2q�R8�Xw�Z�r	�ү����V�z%@_�w�D�fhw��Y�#���C<)���P;�8��?Eg�F� ���]R�=�U�$6hr�A3.3��p�v_.��	��b)�.=�/_�������vg�>;���-	���uy��`i�Xq�X�ȟ��n����w��q�EH�都
��8�Je�J����x�)nb������RZZ�Y{ᴱ�Z���gw
��b��d�MG�>H�2Y8�����c15B�$B����:%�d��ՙ����χ.9a���RY]<\V�&����<�6C�@��%~H���*�?ސ?@4��/㵀��'�W'�'��7~
$G�@�?��	�D�q7�����p�(f�K���r�ԍ�?��\IU�@������{N�3� ���B->�Ԃ��:�gf��dY0��Ѡ^��62ƃ�Q��19�'L���W6������k�b)��:�^ױ������[�f�֦�3�[��ׁs\�^��-}"��@0�B:�L��Y���������/����׭	�%��~�y+�^� �Ƅ��^a�V��9B�<��!݃�%�ֽ|�v,���Z(,���W�	Z��'ꔢ1��cӓE�}T����\��)�`*8�5�p�Dj���7 <�12cڟ���k��G�a��]KL���\k%b=�u��������"׳(�G��Ž$��	�s	u�mnRB)wR�b3s|R=?���U�i.����9t��o�d|�l��A�(�
ۃ�fQg橑
C*�L�J���ך������f��#��0I�C��JB������4�@ط���F_�	��������b+��=+���*��)��D�A
�C�Y��at
��	�b�+w�f"��,��7.����<]�|仁�R���;�?��׿�D{�?2a���j��f���+U�Q�<g�6����n����S���JӧNUp�mH�� l��blW�,�:�X��v�|�j��9�3#̹���������%�����SF�G�L�$�em�Fc��~ǖ8?�!�����D�:ĆWj�"E�U0��T��*�fs����,������^^���O�����3�BD.���4�p{<�H����
h&�Nl��('���a�ۆ�V��2{]�5�#K�&M��̙�e�OqP+�,�'�(ځWd�@�)��ٍ�1�_�-�J��M�ڴnyK,�q�= ��h]g=:�@ifWpe��疧��Y��'��H�Q�^4��]&(�V�"<�#˦z���Co6����O(ҙ;�7�ӛ��\��M��|��C�bz�Н$��<�D%���2;��2~N�J-bx��z�<���/��,$ð������`
���c-��oj$���CT��	�G�1u�.Z�|�x
3�z��RAֈ
��#��@����yT�k��)E"g"�]�u�1���z��J2�x�z�=sx��e�BA��A\fo
�-~�Y�[䞎`�V��ZB%���5�q
�9E��Y�
֋g%��R�+Sy9�~i��ٰ��MtG�HR�J5D�;���p>�.���V��[���
���NBU,$Q�<w�n�ۢ����6��6����3��,�pwM�A�����~�����&�X`͊���G�FRh�ߖC��b#i��@����Z�x���7-`�D�!Q`h�*�ACE�=�5�#2�#h�&7ˆ#JH[�@�����5Y����w����5�,•ʸD�'MDT���Q;�Ý��rJ([��b�j��K���m��Y����PH��y`o��2Z˛�xF��7�T�V�ab����e��+3�g�a�K	�! �
�z���))���[��=�1�G���QiQ��n{�y����R�K���㕵qD�]�Ԟ��%l��E�06D���b1�6�%�.�UҏG&a4ݡƅ��
��W��\՛
B��gjo�^�m�ȳ�[W<0��) �A��33CxS����c��–�X�X�-f�X�i�L+���Z�"ľ�J��%/�ؠ}㈷1H:#��|�n&1C��~k���;I��yH\��33p	$�a�dg}	|Nڶ�Q��)�8��<��2�#�a���RM�4|����u�i<�,/�x��X�-~�zu&卞:�uʄsQn#�M�c��<Q���-�XR�;+iN�7v�N��j̘ 0����Mq��=���%���V�A��_-�CjQ�0&H��㎎v�0��jɥѯE�T���F~���ɰ�8�_J1�`$R�RW��g&�$Dse!,�O3�
�?��I��Fg<Fx�6\Z$\aX'�^+�����Ub���F�2����<�J������3�N��;�7��:em���~=�b95�c��\�9�Y�g��0�)Uk�v�Kd6�Ц܅vm5�=[]���'(�wV��Y�����Xb�ٙc3nW�w>\��4�ic�s"�e��E%$�4΄���M��g�򙃇��	�b�������c�~�D�
]O�J<�N�%a@���s�mɺ��ٲg#��<ߝ(��Dê���1�.`����8��*fJ�::�݊.8�"�> �+s����2�5w��T�P�Z�h5��u��p������m��-�TP��� #�����0햲�Z9�t��j����s:^R���[o)��p�� p֟�x�K�"p���Ns6���Z���x"�ښ}��&��������y����J͗<����'��O[,���<��٢wй�ɊJ����a�˖yS-�N�]����}�ǔ��}9��{�Q�D�-YT���_�a��x("��h��`�E���:��lf�Ù�ț{�#^��YT���
o4ÇR�d<����p+�r\[d{��|���{`e���b|2�Aש�l��<��A�b
;�N�TN�n����
��=8^%��mIk׺^�P<9.y���g|��ze>Ơ�v7�U��)����:2-��~�[RR�$��g��u��ƒ���
i���^�ɶ7x�%�T���IÕB��!W��l_����8�U�8�F�_�S�� �%�t+J׹WƧ�oe�P���r~:��-�]�\������}f�Ѝ�C�|�ov6J&�\���,�eY���vt@$z��8���,h�ʾ�$��M�m<?#!��X��35;-Dˑ/�_I�U�<h糹#��1lR�/�_��`�I�^}H#2����!��Y�F+�)]I����T��/��m��L�ڱ�L_m"?V�ܑ簑"+x�}W�ֈ84��,�j]0/PA��l�l�Y].�Q5��u����ù4�����&�c	�Q[��@�������!.t�:���� ���d]�Mp��9�ا+������/�/�	�.p?���r#8}!i�k�ɰLԼ�x�5���ܞrf~]���
��.oP�+�g1N!���4������
��1^���Jlx�+m��#9g�D��~|��^`���J)���
�n��s��d�Ot�-�s�.TC���C�»Z�.�W�h0��Q8����O�&�Y��ْ-z�?���!�\�yHz!�eԘ��x��k��u�*��A�6�;�u�i��D>_�'^/�0���m�kN�7/�~�شF��
V?���5�r�|�d���ē�u�k><F| �䙱m����Hu���wkre8��h0q����+7�"�:?�I���s�� �
_��=�S�""O���׳t�x�V�'�۹R:�H�[8��E!��m���Y骪3�p���[�)�	y�Z�pc�-���=��s�x��#DFM�{|74y/HT7CY���Q�}�Z��X�q�8+��Џm�&�Ƿ�QS&�t�5z��b�L�2]�A�L�����glڢ�),J2U+���������n˹�S�`�,BP���[3�(6ʵ��F{ML�V���;���4n���
L[P`
OpT��1cH��O4�_f�Ư{v�bV�s�OC��B��<F�#3ˆ�t(@���+B�$�RGh(3v��AM1(:ь�CZi�((�v�Ȧ����"�͋`j,���N 8�5�R�~uT���&�6���i󥔘Nwf�Q�K!H�_�)|����L���9��p�ƲnJ���N��Q؝��X�J�խ���7[��o�K2�ŃM�%J�Z���n2v-θ�g�
�_�5��0ϫ1q�gv��Jc�1?��Gkc��x)��A�GJ�lُ�-���R��k��|���yP��w���~V��EUB�3���l��9��k %u���o�*�8���i��3�M)};&)Qc]3|��Re��nQ���ۑl�v(��"V'Xo�	C@�0�$�NYb$��Ϋ͖���	��JKf�����%uȯ�f挄UJ��^�CJ�:E�t;C���[ԥ�Jx`�1�!{.�>��A�Au�����Y�;��̻�f�`_�_u��Q�W��0-�0_C�(�� Z��0?�d��08�iğ�P_];�<���5�q$��Z���6�Gy���A$S���ć���Wd6�d?�?�$��GcB�
��C��C��X�������s�;�GCý����8��wT��ж�4T��C���ђ�r5,SC �7c��M`og,F��=˽s�L�ZQ��Ӂp�8H[sG6>R���\���<!3	�6�f+� �a�T�R�fR��vb%�?�ICk�v6���;� �{ax̗/R�^�ܩ)`���\L�x�w1�Œ'j7� �O�� ��/�ȡ�վ������'cW��F �����9�QT�x��^�c1�X��`��:������\Z,�) ��V�ߌ�ц������;_����!���G�ѳ��Ǣ�‹0)���ލ�SN'��z6�?�H��='��:�S>��+tH�TT��Y3�;�N�R
��ȓ��±��F9����0[�x�-���Vձ;Ux;�ǛIA���Dr�A(��dT�	D|�%�*i;����u�&���úѨE:�`�� ¡1ٸP/
�ǚO�6��=�����U����s�%�n�d��~
�!�p�,�󺀾 ��vr���u2OQM�u,ޚ�GW�t4��W��54��R���i.W�Ӗ�,��0�.�b��rG��.j��2YljѨ��[T��ߓ���w]
���#e���i��d3w;�v��b��	?��AD��"���m7��B�1�t�h�@{l%6�Y����x{ 3fx(k���PrLJ��*�,�%�2v�q�Q�h0�,gxb_�K��!�[𺫍�0��&���BP%�j��L,播\�w�db��
�d(�Z�;��
�=ޅ�z�<�9=q�cZ$�e�I*v��즕�M�)R0/cq�~E��NF-gՙ(�^�
]���$��zM��v�}V"<i�rʠ�_"ɺ]�d��Ě�@>���פ�~�X.���Q�=s�
C(�}yT��M��Lq��r\�WO�te 8��]O��,��(�L/ﺓ��qsQ�m2)�Xk홤�+|=�1���="����6L�|���/ �s�5] bڈ�C�38�b�B�r�������=^Nv��4;��]��A���0�\ k���I
`���{o�+����)62p�x5t^Ur$�]ꡟ�q���l�(��(��0[�m�N��9چ��U���Vz
���	�lhj|�0����Xt��9�hy�񳁋��s^��a�m�۝�AT�%����p`Ƶ*�fB���2���]~9�ϝ�C��C��G��ͥ�(��f�1|;y"��;�.d_��&�u�3/����S�勵��7�+ҋ��\TOmȉ�Ho�߯�"�GS�Yڧ�K���w�cN7�'��b�"�E����m/S��Q�E�<1�/�Z%K�< �,��{o6<��I�2HI����Wgy'q�cvDR2�)U�`c$���2O�H�c�"��6���@
�Ic� ��u�@��(�.s0I9�G	a�c�\��&j1��İb̶;�� A�+��G	-�"@�̢��3�%|�&
�nm
Z�e�͌.��´������}�D��L5��7�j�����D9�^;E�*@ʟ���i�9}�Mi�H��HCN�9?�tk^k�ȝ��c�J���(V�K��F�Q#�x�PI\V���ڙ9]�B�m�UX���u��2��1�Y��w�g���<�Yo��%6Vxύ�ִ=j�����/�x׳�SIo�&�ֺ�[��d������i���i�X�Q��^"����#+����;��d�j]��Z��y�����s���S>+"���?kM��~R�;�Y�5���5-���V2�QPR��t�e���c��~�O2��]v������`\̉}���Z�<FjP��<�<%�\r��ңX�Ƭ5N�.!5`@\��ꌊ�1%{,A�GI�_�;�fKI��X=�y����G��K�C��Q2�Ϧ�z,��Í��}^8�Μ��Jq�L��>rٿ}=��fz����7̊N���S=E��|�ג4(�ܞ�c�I8)�@T�`A�d(�n�ƘX��;�J�B���H����L�I��b�t+��pҊ*���M�엮���y!�2[���pv�3�:>�.#���hɜ�'>�(l�X[��4]
K.�]7��K���$�a��P�.M����qE]X�@�I�΅��jm�X@��k@ս7���I{�C<V:eW)^_�K��s�eb�J)ߎ_��,X661�B[��q�ޖ;@�+d���_jL�2�'+z*��VkA;�}�
���" ���b�_���y��H�Π���@�o�Q+p�j���j�V�ip�r�J�b���B�$����R��ǞԴX�;N+O?R����ju��vH�X r�3�%g��j�[�-8z�����'��x��p|D[0�tx�>��$���q�Lo�b2؋�O���Ҕ�����0bF�~ce렐_r���@LqB��;}y�&�,j�1�!�.�;�`����|��n  9�w
��T=�<	%@�n7btkck!HW{p�Q��2�i2{�+H�����c�`��.;-��^��>�o�-�|H���˭,g��غ�1�c�����P�L,^�j-��1}�����{��cA}`܏�Z??��<��tS#�	���M1���2*$G~R�xp�r�#j
`9��s���v�8%=�[��{��V.οaJ��0m���)���-��l�9�}_�N��:�E
M��KD)��H[�=��"U�3n��u2JD1_۱B����u7�a�Ө�����+J�H�ޒ�/(����I���,Ox��s��@��Ӓ^�������]��6
&|�a���D,�0�
�:�Ӛ&<V���A�APN�A�)���s�.*��T{Fo{��$0f.�kG�P3՚���֭j��������������y�9�b����ǭI����Nn�d�X��^��kC���i��Gh�M�'��ݢR�$�O#ޝx�}�����ݬp7��=m�g#�&�����!��s�g��0�!����q�Z�P3��+��h ˟L�?�[����y|�:�u�����-��)��"�Ǹ�r��!\�����/��r��SS����{��qp�~t��/7�������5�Uѩ�T�b��*�7�I~Z����(�^lΕ�������yLU˸U�T�in'�p{�ӀB�vS��yg�F!.����;�T_�HK������SӅ�2��[ޫh?#��ƞ���uk�9JÎ�hL�ź���[�y%]���:�a��0�Z�A�gd!�~�ֺ6
t|0�
��XI���c)�Z�#�)�8@��MՄsGTL�X����V�wm@����Orf@��[����	���,6lp� _cȕCo���W�)x����_h��6cXa�ެ������JŲ��XK-����d�up>t���[�M��zr����`�'�:��]&3'�! l9Т;���(��!�ҷ�>Ne7�6[:�`�=������p�lF�p��u)�R8��
��'�..9!g��5�
�BX�*�����^�A� ���]�$�T	�v���n���eX�7v��ї�~>��0)zۑ�|n�J���Q}�[�/r�g��1w^�/-h���]!����K���W2����itN����>�h>(����()���_Snݻ�#�B�MS��ޕ?1=�����xк�����E���8<ZAE8`�i�{�7���
����j�
T5��t���Mr�X�vg�HRk�d��x�O���WheoR������f�B��xE?��+C�<#��>�$�1�*�,��$�ұ	?:߃;ّ�e�(G���n/a�}j!��d�9�.=]͍1�X
:iL��.+���b��p��-r޷p�'j��1,�|#x{J�㘟������S��i��g:���â�Rql݊D�V�iz����Hj���7�~����[H1�Z�s
	�;d.�Z�XQ��B��
�s썬���~R�dt��N��C�8����#1#� 4L����:�6�Ӧ�.�k�VxZ��i{��O��R�dP�����=�'VaM'���c,����Ԅv�0��&�_uXX����D��A�G_L�#D�������-ne����(ژݜ�Cez^\�9��Z_=�8��`�Oλ�����\���ے+��ӄ6c!-�:	�ǐ"��>rz]�{s[*����z��%:�ĨFV
ĝ,@�/J�����vR�	�u�{�=��TÄd��"�����~Ơ�_�H��w�)�X�*|���5md�ܛ�r]<�>��	vi#�h{���k�|�|B�n
t�!�<��V����Z�o��'���!-s}��r�uN>�%N~Ay�m�s�;��k�,���_p���Pds�>9Pմ��o9P��o�Q�q[��-ܾߢ���(gdn��i�S`K$���eTƾ����C;1i'���t�+�-����9�`3����X�/ȯKX|��t�ZP$���ۂ˕��;�c)Q1��a��p/�k��b��l~Ǚ����]ٿ�6o�l�ʮ
\^[���F'ͽR��^��/K�Ư+j�7@20/N�sl�Q��B��SqR���V^\������Y�wjHS�X��XGO
4F��8��l����_�O�H�(K�x	����~��+�VY�›�!.	�q��7۳-�/u������U&�D��P.�;8�y����a�B�Bي{���<�-Gy�����M��w������E(_�*<� �kz7��Qw��րY�����KA��M�����1WNX�2�����:y�t�n��oܗ�V��:��O�рD<����ذ12)�b�I:~��3s�ƒZ�̌���,��I˒�g�t$��#��
�ɖ2L#���#;e�,�3v��M�=�5�z
�J���4����H�݉�1�0ͺ��8k�=47\vMw���?�w=n2��7ir�("׈�q�H��{��Q�>��*�"�6!�(ܳ��IC_O������l��f̛B�H�!@�Zq3�+�x�+��P���{�`ls
��tׄKϴ�4��IH�x����=����Ź��ݙ[� ����<SO��dR�M�<��|%��+�H���ί&��,�_a4���d���ln]|΢�����/)�{jp;�ܒ����L%`�5�T�a��9�^+�"T�"�X�u���=��2n����v�-}ۚ՟�Jy�~��M�)k�{;eB_H)$\Z����Dkkۣ�9��w�::��6{��ɒV�m�a�z�\X+_}o�kԕ֘=�ֺ�ܩ�a��7�K�����?�^N�?�w�EdL& ��H-Zx���]�^κ�5)3��Qw��f�'��UL�e97�Z���n����q��;s�6�O���.i�u+�͙��d�v$䔔^
g���:�8�l�;2	(A��<?��DŽ�Dؒu�?�2&u�0��6�^��0���GC�w�X��;W�abOO�v�Kzʪ�Œz>:?Y+쯾C�Y�8n�f�x
�r�������&�x���x����W���,%�P~3��cB{ gBX�,-��+�ƴ�e�!1��d,Aa�y"�]�ʁ�>�©} (P���5�9�s�5o3�ݻ�&}5������B����vs�<�s�M\�E$akjx��
؝�Ҵ4�I;;)u.]�d����-{o��1�U���F��z< 9��3-τ;�V�ğA���m��w��� DF��l@����Wo虜�5���/���/tg�}���8�{���f��F��m��V0.��N�)�����U=�����!�?=�
��ݦ?�����T�LS'�n8D��W��M�� �yN�Of��"�}|	5���j���2F=��;w�xB�J��0/�t��a�^�0E|3�L��Q1�>U��+Vӎ�T�P3Hf���k��3H��o��C��I�UM߀��9��J��$ٺi4����Wth
:3�PY��b�Rh�>��_+n��8�6@���
�	�aVJ�k��huO.������r��?e3�+]�}��uN�^�my��i�z�4-��Qp���O�-!6ƨ�^�Z�l�Qp��l㸓q��g���F(
n11�h���R�����
_6����l;����|p�$j�x�#=�i��Q�N'���d�����&i���[ I�:����s�P�'\�x"�|H,�n���sV��A�s��/�Ch�6Yt�@�����?��9���ې!z����
��V�	���maܤ�/z�[=$W�dTQ,�C*�a�>�b75�ܕ��
f�{m�2��C{�t�-d�P큺Y�CD�!�TCu�S
��řa��mJ$��{ucA�|JԔ��L�*�t��rԇ�hu:�MYkҸ�=��$k�h�?��Y��7A�g#$�Qk�S�Q%gaj��"�
]e;Ē���f4�Ѩ^���)�3�ST�ͽw���ul���T͹>'צ��}%��}�E\�y8*�NW�~v u@�S��O$�	��/[pk��4��p��L��!s�8�SP��!�B��'?�bz�6E�iַ�2�uJ�
�Od�	�W���(Ȝ!���,�`;��`�@_���4���T[�#F���q{�8�O�Ԏ�z/���U��\�c�Օ��/�*[}���BĶ�+�H0	 ||��^=�p�'�%�S`fN�S)I\�|���,�^�6<1�BّB`��ƅ�d�J����A4��"�I~&��KE�$��G�ʯ�BuM��$�TR��ğ;�<V5�[
��P�@J׊r�n[�����	��M7[0ǻ��2n[���x(t�����)9L��(�K�frC}�����~Z�gU7�G�N�Ca�_8�5��������}��T|4�ڄB?XG98�(�4tqS[3�i�b�|���S�N>ok>�cq#ʄ�݂��IK{�:kz�����R`�B�7.&�Q�nb�̳2���x�o��OF�N�G}K!@�s��$�~�*�y�L�1�߃A��=��=a$���Vy�n!fљQT�������u:����1q;�Q������U!�.���`\���e�������[��K�fB=���3[��NЈ�O�F��-�i� �b�)����0�;>�L��Ed?\FY#hz�z�0ZދS����K�Y��8I#���9g׀�>je�5�e\�q��"�B`���(zt�aARQ�M8��d)��������p�/C�u���f��A��a�Z�<*�X���4|��揿�j�'vK��c����~٣o�&�we�i)'w8ِ<��tb�3�	0��,�J����a�0-�"6N�fqAp"��"�7����I��W�k�U<��*ɦ�-B����|��϶&z�\�#ܔ��d����M�3��gQ˕bQ� �w5�/�k�e��*��3>LJ#�a�5��Nc�jC�����-�.*���/�� 	�T���� #�8c�On��ge7�{c�h�2�šԨ��/@
r`8xў�M�:�&��� �Jtg�fLf��t-E��[-#��nH��[���	#m��<|B��^>lhwG���]Wy>b�G�������9Eג��S2�w��1Z�k!��f���}8u���U��
����``�t���}�6�O�V���xk�U��Xԧ��@|�M�F9gYj�d�BG����SU6u�֗�$���))���^��+Z�S;E�~�:�9��\t,�Up���Ozd�$s?�i���Q*y�7�,-�Ȥ��)I��k��ԝ�D�w(S;�%�A�ܞ��ww�E��Q
?yL���
���ӛ]��ފ�?�d�mC���G��G�u�F+l�9�
.覗��Ǒ��#Y���@yM�
֑FDQ��қ���	+!�%ߴ���z�!�����魕��v	;�8v6��j=���{i����u����:�e}�q�;����%t>���)gvsl(3
�+�y���0�Ǜ�v��y�ɰ�v4K+nĪ���A����ޛ��݉�G�GrT����BB����Za��g�u�J����F�"}�Jh�@�+ڸ~��@�ʵ���!�t#�N�2���������"!G�.NL��s�p��qRfհ\�ڮ�}��ZL�:v�%s�����mfWD�T�{JSO9��n֕��YK.��Jf�/V�7د����$����ίߺ1i���寕0���ѿP�O r�` �� =vK�E�+�Z�q�,@d���<�*�;�;��)eA/���]��
)�:�Ou��W{�4�����kHiG7*�G��X�r�r&+F�>�>���h	�Q��S���
�Y]�Y�*a�=��дv;�U�|I�=�qj�36�Q~Y$�&���rpu���9�ih���}	E��Z�`.@���ȉi�	���JE6��B�L�2nܕ)6k9�)����|�@B��z�Xq�2@L�ӊ��
&i~8�gU��A�F$eO������&���
%���"�W$�����R���DWN���d	G�Q~�L�y�Yp���G���	`�>��KT���W�F���g�Ng���Ջ`7-�-N\�R���·��v��Y=�95�m�QSa�TA�9]�i
5:I�#�����KŔ�䥌�z�OՊ��
��x�-�l]�G����Hr=)�"�ʊ�x��)ҟ*��%����qs�‰h����C,�u��$Ӟ߅"(�ˌ�m0��U9ӝ��;��f�ϊ���M@�w�
�ٛz~�&~��zYc�[�-����B��>��k���ͣ�$�?d��.�1�$��6�;'����w$2qz�9���Bh�}��l�����/�Ug�P�қI;/��>��q�NO�`m��3D��u��k����D�,&��[��4w�F�aD]�*5'?��@%�y��Dp2,7�8�{+v��!0����yc��`��a~D�5�~��R}�W}@f���_y���Ks����*Z蠶;���Dҳ��.������Rv��a���~�F|x�D�U�q`kN2��I�i�3� �tVF(eJ��؅k�Z��`|��6��M/[�ރ��QJ���?.)UAO��e����
�P���=\F�U�jؤ���*�0��U��ǁ��
���fR*m ¶x��m�"P�Q��`���# 
RIҙ�����W�d.�O����q���)7�R���l'Y}����Ү
g��sQ��x#N
���:<Oa�m�W�I�,�z�T���3��a�g�飲St!��
ف�!�a�v�{�k1��|#�o��7���T�CZ��g~��t
�}���g�n��ؚ�Q��Hd؟̷�f�TQ�B��A`L�@�����?'>k
��j?����m�5u	�ˇy�W��é^�����s�3#��0w��*7��:��N(g�L�I�	��=�ɡ*�ߑc�
w�uz��</塪����2%'a��e����zI����Ǥ����|�=!��{V��+��YM�W�Z�^�'1t�Y�Pk0���,���9
�I'�àm�~Y������̖u�Mm��ܡ	8k��/s�#)��鶷]���qq�=�-���u���CpJ����f@qFs���Z�@���P�B��i�1�kd�8s���0���b?�l��մ߻���3$���wx�V���}�o��f��ȷ�+;
�d	Q�9F���G`�h�39����
dc�3��8���m�Ӂ�G�C�*�|�`��K�D�ÃU܆qd.�g'K�w�i&��;q„�1��S
�ќ�l�-�m���Qo�#j���0I��4�[�@f�	��S��9����NJVý7Ѻ|�p�vv\�������1��S9:;�g+��Lj������#��ف�W��]��ԟ�T��i�����ތ�H�]E����з)�f�.S�QR���
��CL3p"�צ(�z�-[��;��[m��"��������J����=���K�ۋ��2L��pu��^!q�H2���0�61�2LAN�����M=��q��]�/��
ec�j0��l���ݰ��N����G�e8ʘ%-V�]�����
���Չ��TZҼ��~���mo�ٌ��E�!���:�}��Ѡ�G���G�tx���z�!��l��(�L&шU��3��������~� ۚ�h��%�2&p�}�-e�-��-�S�(���F��|�c	�A{���*���,��>f��"�9�ڨ������ ��փ���(/̜Ƽ$)?���"P#d��֎X�����B}*���p�5llkM˻�V�m��i[�
$�&&u.�/�Hj*F�s��YM4�x���V��.���t˴נ�D�Wګht��1<���t�,%}�J�N�!M��zALl��žNs ���f{���
���`�ȓ�T,��-!��r��!�[�?t`P�ֽc˫������oK�D�p�o�'�k~ʄx�cW��Xq-H'd��T1�7��On� 4�|�H{�96,m�I������%Xmk��ñ P�����0Aej
Κg���
�љ��	0Zx=�Ώ�������Ax��|n�5H�0P���a�K:�y���Hd>8���D#U&��w�'��x�|�_���>_8]^�#/�!J��}�L���6B����#m΅�,J�GR�$gk���0�C��'�)�p^e��S��	ٙ���+3����;��u�O���9?�y��佲y#)��暤�4[ޫ�=��fք.9lr��t��{"OivL���Ҳ�H�"�bI�j�j��3Jf�W�j�n*��Mn8�����+�Wٓ�C�cg�K�6�eh�M)���JN�����1K��(|PU_��b�`�;�+5Ǚ�f���9�O�K��q�6�r�zP��6�Qw�@�[rAX�s�(j���T
 z���] =U]��^L3'$���bH��hZ0T��4I�8*�U\_y�n���x�����nn]�	�{X��sUB�S�?��'��.daD�DR�� ���GZ[j?�Z&��`G��I�>�7
[�\V���:{Lsm"�Q6��,>�s���.�x�^�N�n�Ms��#kl���H�ķ��qh� ���2�1�e�и
����ZI�d�f�DUC�0��2�<A���_"M|��y"����55î,x1Jɀc�<��4Yi!��{4�U�S��(�dQ���K�ǭӮ'���S�&�O�B��Sx��D�N��@��|r��!�@��.<'[;ZZ��P����LVy9	��{�ؽZR	�RW�`���c)W��x��J��J�&��|Q��7|�W���ȱ$�4T�\��N�7�P�e����
��k�1�ڔ��
gE��VD�_��3�k/��3Q,PR�Z�;3qt���Nh��cR�7vHfH��@p
W���vl����ŻQ�b�,�IJk��:��y�n ��=�~�k쵚8fn~PK@2[8�����f3c��{	B�,t�R����@�L�7G�E$";kDt�$L*;Ni!|(q�E�E� �o��s�\�WNá�G�7���?�֏�:A�?MOm��nٿ����s�z�/�X�P��-�!���<�Gp��RƯ͈?-=�`n��9.�0b��E�XmI�Q�Q��}��Q�I�}�>�gF�U�v�c�A���g���^Y,% 9h�k��8WLH}BZ�@���z��J�">�Z�e)O�Q�B��E�9�@1wn��."����̋/<�|�˝�^0��_�s���;hvC���Ng^Rx�%����r��b�������<ju,����IY�#e�+��
!���JP��^���-A>�vA�����
����m�Ҫ{T !7X7�;O���L��ᬇQ���q�d�!��;��[�Y�YJF{��P�����-�y�����챨��}X�O��t�%�wCiKe�9թ|�X�C�=-��o<r3�)ԛ{�7Sr�h�Éao�Q���{���7	{��M�|�'�ɛ���F�Ϳ1h���"mQDȂv�\;V�$����O%N��)�O6?F��i��-F�ۯ51�z�!7{���pv�{�	O3�ƃ)��)�j���f
����/X�.>���ԋ�t�A%�o_=�3 ��"�;���|����:K�*�����MD�����٩�J�m�Y����J�Utz�6�cK5��.��W!�?QĹ%
"��q�]3�o�WA~�jl�6��[��(V�]�LQ��.L$}4�It�XDF��:C�p�ވ������~S�1�p`)�����A�R�}���bh���$ �dw�P�
W��d�3��+^�)<�	}�o��S�C#+�.q�$��,��`f�MKx!Z�`��P��ɹ�44ǡ���8�_�E�=*#�h��U��L_H���k6OH�E/��F�L5��mv[�IFx����e�d� 8�O7��m�62}�Ȫ����c��ဴ&�Zw뚠�=��_��<%S_}�*�u�_��]da�#X.Y����?ˡ�j�_.�K3�MM�|;^)AmЯ�[��.�"	z�{=ڐ�:S�@ԫw�Og���(���^ٛ��X`��/,j3�1�J������(��^�i|��?sa`�M���X&�X�/Py��ƷZ#o�?��y_��1݀v��?̄~P�tڗ�L��.�*�[r��_�Z�.G3���kcC�%UYp����X,�5�br��j�h�X�7uYA�"�?/M�4��`y/��U]���t��m�`���>M��d0m����?�M�)w'����u�y�LS�����������oS�*IxSt��䳌�W>
��Q���wR/@)/%��ߥ+��k���-������c0�a!�я�����E��T�e�����ps@ڎ���)~]7È�MX�u��SUy��a�ͱ��E4n���/���0
��o��˄EJ��|߶�$>����{]��ء,m���_�6�ނh��-뭫�����K쥅Xa�&ZГp6�bI$��){@���:y�D����m�����w*��ie��
������\�A.-�:En4�F��X5��� ��0���B��l�O����'į�0������h�8͡�)���l��x��Ks�L(@߾���p�C���Q��]���k��
c<e�F~(5'L����/�u�~��O��Y�:��m9��ƾwy):�7O�y�Lt�B�)�h�:�3����?�2]W�BE������^�jC��:C�M'P���	s�
�9�
'�ڈ���=و伫;���q�u�n�6|�e�5��0��R�Ɯ0�@:B1O�m�C����	���
b�IؘHB�7�I/�+|"�c�sQ��)U*��e�����˝��q�T����޳2V�,����ZP3�~��EB��ؽ7�hEsp����{�Z�\F5�t�������ɕxh�0�Y�TL��X�${tZ
�ٍ��A�ſ��(U�6���Vry���Z�`��48$��,��d�kL��C���o��?�'֣j�5��H�V�x�LC�'\��*c:�F�����Ɵ����V!��S��;��m8"���བྷ� �`Oy��~
��_�B��/�<��&�d��&�◡��%�E��U��5=)��Fp�����&��+����G����UU6n�[�yl�
���@��;��S�P���0Z��h�����L�=8Tۅ|����a9Ǩ��\BӋ9����2�؟�Q�yF#�zL�u(�nʠyn�1@�\bʓ��n�tJ;41�����t�2I����[;!G�M��ޞ��+J���V��2�����B����m�a��R�d��*�J���B�*Ґ���H+J�/�Ŝahq�#(�O
�U�:p0�'P$��U�1�K�߳�z�j[t���OB9l`K8��j^�W��$v�/���Wg	'V*�lխ=u_ΤGN+8s�)c?��oqT|�޵Ӷ'������p�ֶw\Xh�X���0�K��O:�%~�3Y0�a�^����l�|D��"˂�W�jJ�-�1�}��sA5d���yP�;C�g��;�y��SH�}�M
q��Z��չ;�u��#�NS��L33���L���Y�]4_��������OY<H�)��?�{	�l5L5)�I���koC<��/�D�6���J&3�9`���
�C�o�2U� B�N;e^b��O����7?��շ	�$Y�vi%`�z~�B~2�3�.�к9����d-n�"��<λ~6*���(�d�-�4NTl�d����R-��%��dN��"3��~,�I�G?徖�!e8�Ӯ��s-h� �y��Hx�J^H]֣�_і�M��q�xg��!4��y��Ŧ�2�Ha� �Qv0VbB9�ɷ͞;O!�kq�4���p���I��Rz�$�nMbpP0��p��}���"X0���Fz�$�@�!�����6�?�F�1�6�����ڲ�c�[�Rœ�=�6H�J҆5�e��S�&/�r�F�D�*�Ng9��ӳV
�x��
f�YjUu
a�����3M�'�?�=Y�K��m����'�`���gjo�0�N��[cۋ��x�L�^�\}޺ ���V<�	�j��u�ruz/�%d��PI`�֩ܪ_t����%9z#����ɇ�`0�Lk��W`$�K0
�c[�<��:���|�4�!�!ك!�%��#�w_���G.�LqE��vT�젻쏲]�Q/��
�`���C*e��k[m�g	���-:�I�x@+t���0@p%3���� /�P���n�bR�܄�v���=�g%��h�j��h"�i�gy�!��Ll�Ъ)h�Y��Os7�ݹP�	3���.�s�Ɓk�q�0l�r����1ǥ'{')2cE����DO#�ve"E]��Fg.L��QA!ᾎ'��~�v�}sd��7�b!�'7K-푩݃��E?��a]	�TZ��K.!
����%�>�\ִ�?Qڀ�p�GN7l�GJ����b�*A
�֭����Oh0��$E p�Z�☖������D2��,1���\�f��3@r���$�S�m��3���l!b@�4l|��Ug�f�R�"S�
yţ�-�"ϕ�,2��B���WԌ���D,�E�S� MY
��>��C����;hʶ�S�O�{�� ���)n�/T�Dȹf��D��=�w���/[�yXh&˙~�d�������l�ֶ%i�1"�1�SWT��R��PįR�q��7LsV���j��C��0
Ro��h�.�ESl|h�T�n�G1�1i��̀�#,Y �? ~Ga+���)�
q��@Hf�d�w&����tP�o��+Z��I�\����L�YB\��Ir'�E�4}Ըe�.=�$�wl	��v_¥�g�	��o3a���|�*�}5��� &�/?מ*�G�)�Kt��u�on�UB1>i8Lj^μ�O��i��2���ο8uE�`5��$y9���Ϡp��bG�j:To'�y�gc=������X9�%�Vy�a?{�&��s��*#���+�H嫇�����+A�9�3U��s����w����"�a�Gc�n60)/)�y��X"�t(n�#�P]��L~,�%^G��B/��W�o˳K�{X����c�A�����u��T�T��;\i��T�������B��6u��c=�V]���r���R�h�/e�5��4�.��Y�[�
�og�cQ@ҋ��'�O:�ϭ��=�
~�ዤ^U��I�<nK��ԒȀ�–I,J*��<v���M�e�Vt͉�_ˋ�i6����͹f�+qI<|��6�>��_�D�\��n0�"�8�G3{;Z�hH���&Nb+��{h$�PŢ��=z���sWE�#�����e#�Nϓg(��E��	4Mm��U��c*�6.�Zov��f��-	��Eš�|��"fl�e>����g�Trt��t�!E�n���~3vߨ<�R���cD�����������
.��4�T��_6D
?��V�d�N���Ӗ���P�#Xr�h��tĺ
C���tcɛ�^��4�b�̅�)����T ��bB,������k�-�O���N���8�mǡ��=؞{^%8ቂSx0��Ksu�ߓ��R�G����Lt��K!�#�����J�>?�j��$,S����	���e$�g8e��M?�)b�t��>��TA���s׫���Y�/s���{��J��İ�
w8�֍�h��ݲ���L�WeҴ%�+�}$j��8z��m����ɾg�;
�Qk���+p��h%�t�b�z�ˈ�S7��$��5�F��G
Q����r�Y��Ԓ��qسu`[�`�*b�#jbE���DQ=��u-��?���	�-4����:���A:3���dn�_���A�dE�L��m�`~ˆ"�+��2�`��|�'
�=
8�N�����^GfY)��v�©�Uآ��r1�y���Zǡ0s���ͪ��k�>�m��ѿ]��,ٕ-���|'����twYNS�PU��.끔��<���w�a����&&
	��C�"6�Ec��)��f���w �!�s���&��K�����k�\) zu�IZ��y�W��eV>8����(�R�T�Jч�(2��V�VK��~n��~��c�BVj��@r�^!�%sP.��s�*~!�_��x�sͭ�q�h
=�I��N�q	d�������ܧb��h�8j�E�]A�2�XX-�7�PGg�y�c;s>Ȼ"/S'T�W7�<�c~yzu�+��(JE[lF2Y���σw�N���j���8�X��x(+njTͥQ�L �anm=�E��2���xJ��iz����a �M�	O�Wr�L�c�n����.�fъ�S�e&�]�����K<�����_�El���o�1�_!����]/a)
�Qԯ/��7�-G7�w�UsF?�t���M���޸�i���-�7��� |���p�Q�"�I�E�X��l[,<a�gg��b����*�\jk)�?�C�,�y���ow�q�OfB.���jk����+qY؍�l`��0�1�P�q]b�K92�X�0r�d1���#�����ō�ܕ��˵�>''�����`�,�����R����t|s��K�/3S�IG�@KZf�
�/N@�m{$z/u�)/�b�[�ɛ�#��kMttE���z��-]~٣�՝�}_;M���B��7;X��w��;��^��������K}6.�/�Y��U�'?�p����oU
�X���[G�ST�w��8�#1=�Z+�:�s�HU�~S��߈���m�*�����'�4|��2d]1�B�L�D���5̀�z"�ɇ��`�{D�C�<�=U�2.e���i�",��Qulv±C��n(&sh�.{DŽt0�\�3�Г)7FQ�����p�����Sr]A�)5�D4
����ӻdO���)���V����A�aV��)Θ&L$�~3�٪B�m�@�N"�����y0��L
]�r�Nvg���֣	�a]�����C�{E��~r��7�(���
<�D��*CT�dr!�	��65I��%E�J �y���T�7Ylo�j�=B�SІe�9RWh��9���l c���`U�𛺱��֌˂9P~�,��M}^M0m�w`,z�m4�F���`�gȉ�\�FQ�|�-�H�s��=U
�p�L�|�tjz�Z�W�cϜ��A�<?�K�͘7�oQ�)jA*�i
,$���F�\}���$�Ȟ���$��҂#�4��M]=鱜::$��q��˪?�f����S��3�d%S��:��Mj�Zf1�׌�#�L1��-jvOO���W�"��&rtK�>�Z~�T��raVB�	�0��k\l�f2^C�/U4����M{p���9w36�w��zwO�*�}��΅���w�W����S���ı
��-�j���\\{ꇎNkBe8<4w�Rn�	��B�)Dd�p3���nʫ�0��_1m�5�����w��%x�ن���y�5d��N-_K��Q���8t���=�)��翂P\?��D�TSK�8-0�&.���[�p=��\�+���<��&�%���]@���r^KL&���Hُ�y�=��+%c��K<R�Q�,]f�~�Rd�3#��j^gW��k���Y:����m_3In#�r.�SZ���K����u�"��6���Z~��ޓ��z�(�+��&�)���'�}7gs
��ؠLJ�?��4�jR&��9A��Oy8���>���g\!k�Xv��	1�I9��J��{F��8�������/^i�k'� ��=��E�JV5/ZZ%���S�M-p����$f�6H��Chk<n�߷"���^9h0D�:�ٝ��7:�穊��0^@
��j"���˥�
�BK6(�]ҧ��/�ro}'{�q��`8�Ai�ۜ��[���v�{�i�����\	��a����,a�,�T/�5�8��{h���R��"~.�~],{f&+�ņl�X�9��������~9���6�
�F<��I��+E���ox�hSKA�ܮ�^���]��_��^O�Ɉ ��M�����Z7qDK]\��yJ���0Z��S:O^�_���V�+�7l/QV��l�/	\�S�5��1��t�(A;u���S��7�?1�|������h{x��lo}�o�ad�7A�Wu�w2̽�)�:%��qBha���z�'���	�o�e��笕S=��A\P�3��C�)�z�<b��O@��b�C2P0��&��b�1j��P^qp��<$�n�l7��>%��:`��a
2a��6�b��Iׅ�~�Fc翋Y�G�"�i�F�Hxm.��ngq�~�@2���5�EF�ո�ז^�Ѷ��i/OW��.hJ��Y����Ug�{J�.��_F���<�y��)b'<�s&8ѐCKMZ;��LF�ɓ�N&�9�l�_�YF����bҫ���2���:r��9�ʘo0LZ8��A��tF쩤̻8���=֨k���z<uz�|������v����!rK���b-J��׵I�qg��ah�R��u0�&��WE0�V��O����p�	�����\��T6��YH��������Z�X;6���x\D��G�>��L��/l�\�*p����~������#�4����2"��Z��t�J��26�m��j=�<{ܭ���+r�H9˦	�p�*F��M�e.�	SC���c��K~s�'�����kֳO̳yi�AU݀�6&R��S$����
@^]��^���^�$n�
��X������D�3��v����N�X�A�q8��T���
?��A��yD�#�h0��8Z���p�T�n�e��G�=��C���Rr�����䩫/NyX��}D�K�"g�QG�h���BBEŘĪ�������`�=�e�;�#�^6�$��HM^_z�X'(<�"�����&�=\M����$��Y����G��'�����ƒg>mx���:�*�Nm3:H�դ�`���Ս�De)�Ͳ�b�4+�m��g�����3MlV��k��gڟ��1A��j��D�D�ž��^�~�|��uZ�Pz�� ��N-��w�^bW�l��/GL���)�l�T�5�%�=�螈,�<�׹�RD���\n�����g�LӞ����B�R�v���f� ����|�\�U�k2���'���E+Q�>r�Dݨ
 FEP}ަWQÀ�!�b������-\W�[������_c��"�*�(�S��?��>/�S�;�o�ae�	7jv�=��b�h�RT�qѵѿ#�D|RO��d�;�yxWa	4_h��q%��9 6���\�l%4��h�W�Y��i�L~�͠4��B�*RU"P'��qTh����6�)���Ԣ�U�$P�蹯]]'M�'r�ϵ�g�-��j�$9�|�� �H�#����?>؀�;�rr����]j 4��p�k���|�;�VvB��q�/�9����
H_��9��2?��ME]�x{�?�b�rɘC)3xm
���#�Z!�:m������s�z5/��8�2/Y�+�:<wrM
z�Zd�AN�c ����2w#q�l�R]6Q8�K_�Y�=�].ອ�i�貊��b���UkhyTڏDO`�{E큜�=|]C�l����"��ph&bA9xt5Bs+sQ�f��/E�x���؋S�9.��A�6~�},z&�����  "�1�eS�^m*�a�\���rӓ����-�{�5�:�_��Q�~��ѵ~ǯ�Y�@����VT� �_��~����FKh��I%��J\$���
/"N�f��8��F��>w"���k�\"?���h70�7�[���-���iފm����ԍ����2ę�K�²�EJ�=2B1f�p�$��M	m�}"��-_��-��4И"���}�k�Y�����V��j�8��$��;��e:��>h/Y��{�[�*�dx6P�^���m~�E\�ggH�ی-�{> ۼxCi�lj��M^��"��JfZ��T�Dha0�0bp�9�G���}ǽ�)9h�5u#,��Q�	��ufc�(CA�Ƨ�A��{t�S����	ъk��_ctY��}귢�BQ':�b������ԫ�K���-|��.�S���4ϓ��1v$X� �O����H�_��|��}9� KH~�/{1�h�?:Y��+5�}�0�b @'ҹ|�l�rZ�w��Qv�kܜ5�:��?�7���:���E��x$ƫ����*r^+��;���Ea�&7��<G��
~j�0�c/}W����ufU+h�F��1�ː^!2o_���{ey�=3^"�\Ӱ��<	/dr#�.�����L�{mm���{"��K{�{ۈ���R~\f۰����h���1v����^P��wL
�ol�M�n��t>,�Dl��(l]�a�=�կ��ve���m:ް��;'L�c�D�H�4&h@�O1g��_#��d��7�@΂����M'n�bq�%�?���q�$��%��@�/QûP�Jg��$��v���3���������~c�?�t�Blm��w��ᒾ�B�#��ڋ�{8R�(5�9�L�k�aA	1U-�׬�tL��:����]�x|�(U��A��*ʵTu-��zO��t�qF%V�uNM������H��1E�k�7�g3�����F�����f�~;��;�� �Zv���`�r��t%Õ-T�.>�uO�i��9r!Y6Z[��$�d�A��
�7(N���@,VV�V e�Z������eP��-�!	����n:;K���ժ$
+�>:ɭ$����
��2b&pb���e��}��.OƊrFv���G�g�j?T�bb�����Юk�?��J����O0��o�z����5`���z�Qq�wl14�/���jP�p�GH2��a�?�/�:�*i��ީ{�+^b����(���Y1vh�¿�w�6&�g-�t8�3}��������*��	�7��
5�~笪wF�E��_�3��-伕�[�|�?�Z��y���Y�.�k�����*$�$�4IfX�L��i����fd��������H��O��}x�x~#��l�q��U�E��l��Rm��d�.g�lo��}T�x)��zZ��<�{�My�=�`.�G��yA�7`��S����$ߡO��:a7�V��_�"m�Io�u%�D�&P�,�& �����yaIQ��ɽ�2Yd�g�$8�i��������Zhm,�=EG5��Ɍ��R��S:�5چ?,� ���QO���{�^�h<3��f��B��!I��x}���IA^Y	'�P��D{��U�Q�Ni5��

��l��V�nj��V�K+��v#@�\oc�<U.�rР냈��ʘ��_W��#H/Wl�~,mj�\E�/�!o��y��^��X9��2s0p�Lq=3�#�<�L�5�n_�n��ns?
��Dx��1[�w��lN��bn,�ξ��@n[YUU��I]��[��cñ؃4�M��}��3�t�dyK9��]�W}�W`:p�Sw�+�N�Q�����Ωp��9D�rh�!�yn��u'[�]s����b�,�4�f	�b%Zj6������7Q���5y5��<ίq�>�`n]m�ӌ�'@�o$�� �5���)cm{!�?�_B�5�hd_�8*��/����ro�'�?��Gs�$N����d����}�E]+� �p}�-�	��$3��`)�����0�����K��@z����$���.�	��$��v�I=�Ԝ�&���%H+� �����-L�3��&4��H2�еe.utᩖA_*��S�[']�D�W����ʈ��7Y3
�n�Knr�j�ז��{e(�Sޫ�mϦ5,��
���<�]`M�\睨C]eb�!!Rc��n�	���{T��;�
�c��,Cz��1��	�9ϼ4��I#tJJى�{"�5��3He/��sH:hk�;I�Ofʪ��^�T����$ń���*�>Q̝�ht��*��k���Jr�_�<�����k�J)�&:x�
�O;��z#�/�R��]	\���c�IF�?
B�@�F$
�<yU��.���Jv�эAZ��A�֝υ<{�,Lvn�uh�50~d�Z�ѿ����7�y��@�Ъ�q����>y�2���*'?�R��;g@&#J�m��� ��eE5~Y�5����RnR֍���Z���5�
4�>os:R�	�Jw�ݳme�6�	���#��kdU}�L׌��+Lhel*zh����Z!����G�_&��W��
q�&��utn�C)kJz֘�k�;퍜��t�5
���
9�i��CQRW]���9̬ڗʠ8w�>Yjś�mDF��;�k���j�$m�Z�����iHP+g*��՞r���$���K����#�je 5N�lTې��CQ(>+������6��Z��W.�ዻ45��g�J���W)���O�\��~���VK�(o��UZ(I���� 3)�295��

f�#�ɯ��ɥ�04q�\j�3˻,��5%�r�k��e19�k�;�׾-�#�z���|۫��oBf��yw�Zm�8�!�Je^dTuR��`6�	���Z�u[�<2���`\J�yZ��7i��\���g���5W���t$����Dj�[FB��&J�j^\)�l��>��lt҄K���&4����zh�j-��}�i�'�`����8D/��O6|�gu�7b.�k�IN����x���1���f�Y��z��������Q6���Zy��bC�A�=��h�S�����"a��Ej�1�ÝSQ�O�)[�P�cՑѽ�"��VLofp�t�!ә�q�XB{�1��-/��iJO��W��� ���L**
�
��Ku���oH�N\�g�8{���P����!����e~�J��
{I�w1P�P�cC�mrG�=s@Oa��hXL����?����]N��A�pb��{�5f�܉%T^w�=�z,��~A&�6��x�=�ĽX�6@�UYuh�'�a|E:�b]�ɼ�����b�*�c=�ߋ��;Y_�G�s~�w��z���|�5�!A(����{�O%�繳�j���U��](�
Th��Tm(ft�sX]�Q�[�s黗;o�:!]qC�V��T�F��!r��i��!�̰&)��1����o6�q����t��{O0	��SND8�Q*hD�8�gJ�C�qߋ��)�+6{���q�5ko��2�c��{�����@�N����@�K>A	!hR����>_:EK߻?�:��f����ͷhk��i�3��禠��Әok��#�,�=D��V�sR��T�;\��;�X�`Aj7�3�:2f(V�\����Nq:o������`�?�1�4Z|D
�G
�����Z	���"'��;g�>���%y!syL��W��4�M��\��r�f<�7�������=/�*S���F6Jj�R�
��teyM[����0�ӈZ��.�B��sUH�P��O=�	-;�U���sk�#����b����y�Z�u�%b���jh�$��S��k@d���/{�2����U�:��$�V�
E��x�i{���D*�F�u��q߻uL�ȜH�d@���3/�
?�f����~��T�B}�H�U{�n/�|���3T�"�91�ʉ3�Ñ�P��1���Y�:��}=��!��B��M��oq(�N�� �f�tI�'>ʰ�,����-�P8x܆��}�$�eR����R��`��������ɽ�3w���|~p�'
��`y�!�0�}n���b���E��g���͔����nM�W'1v�42��Z�w���
����u�/��[}��0�EU�#:�-Ո��9�2Y��BJ<U�o�c`	������9+X�yСC?�ܯ��Js�I�M`/��g3��5~)Q2��Η�t��m������8���]�U�6�\��}�P�L�B�orȽ�Dik�I>.�ݥ͎�y�5�r�?�"fIh�~��bw���~����ĬM�亜:X�� ��V
'…���'�JwT�21����N�:]���*��x{�B�G|g'������=��X�
��{�(��� L(k��?3.V��$x����/q6�z}�Z���g����C�&9��ZZK���,#"\qv��J�z_:n	r�vt�V�nX�j8F����[�N�7��O&��O+����\�|8D��nz�\i=x��U���-gi	5M�6��[3a��'�����i}���W��6�
�~�}	M.�w�TWBᨩ����s�<��w4����R���
I
�`��~�&u+��E���W8�1xF\CeT�V���5υ�bu�	���R��T����q����mA����#s�|G��㹧7�H����w�ڀV�n�:�1>�۟���>ܢ����;H�S2x��4ӽ�~��w��H���P��Z�9�YܓM����ؕ@�C���@�b����%���>�O�/�pY���Y����9g��A�H^���	|.1n2a�q�a��i�M�]֩J�FH���L��O&�;�j����a��Ds"�[�����F�_w���w�n*ݳw�G.���:=���j���.h�<f�o�a�X�kq�n���V�C�:��=V_wt�M�����}+*~���
�9��B=q������Rw���Y��ځ@�h��eh���BH�(͹X��1d~�YEw����R�Br��r��4�c8,���b<h�΍L��e��t�?}���/��Lb�������(ުJo��+�O��r�gn���{4nE����;�AG>��E:r��o�i�b�+�ӿ������X��q
���x
�B��;��fa?��u����y�� N:%^y��y�������	�'�dm�?�UuK�Sv��D[�1�I§�>mu~$��&��
a�Z�j���5y*Qw��QŇ:*��3�2�f��*g�tO=�y�)��� c*7�������b��G��P8�,e� ���/^�9˺P��ʁ�8�`'\`��F9_d��Ϭ�w�!H��9��	�aI9� &�G����ϧ�r'?5��|����8��r�6���Gaz��#j�{̛�\&m�ǎ3J�.�=r+k�	��_�wd"Ǘ�"<?�P���cČ�)��f�vkd���	#b�O�e��dw��n��3`�>I���l)TKP���j��r����h(K��t�׳�PD����{t(�8�V��Ֆ��QMp��4�}��Q�������!c�<^I�-_K��������pO���@������KJ'P�+U��3��{���o����KY�u2�wn�v�7i���&5Upz^�¹�`�t\�w��x.�$�0��`�ȯ��Y����'D�u�����������Av�C,C�j0"=:钾Q�%�F#Cl�氋��涰1���D2���xB
xY�/���Xb�H9@;�E
�z�,D�=�7
` ����>d�$�
��G��}'� �J��9��r�o�ELl�0�,@�\"�\a @ _��L]��&[�w���ЌTh�Z�nB���J��;�3�9�ǩ\p��<rE��1��p70�g��3F��x�7�z�������ida���`�!�	�j�����ݾ�����EF1�j��-%VA��ڶ�{���'.����\(�<y&��D��������iH�F�2�j�~���ǯJHp_����rZ���6�#�����n�E�L�/𰌪?�y�)<h�O�P�}��Zӟ��4NJh�9��n�@�zr����;�6������e.��{�/J���:�U�r�V~cl8Z��`�����MkD���4����2��fa���m��!WE{D���:�'�+T?��+r�Bq��*���h���aW�v4HI���x-ٟ�H������	%L�^	�1�Z� �漺x�p�GZ��<�Q5���3A �x�t�"���t+��X�E�L�:��G,st�D,>�=��By_~5���F](46FT���jz��%��@$����&S��'�x��|+9�ܺK2K��)P�Lr�������~Uz!�ZZ0��
;
�+�r��"4r���|_x��<��b�*�7�Gx�ɓ�RL�Р�XC�w�S�L4�Xf�}Un��n��q�q	��%�����,��1��2�^Uo���׍*�X���s	Q�aXv��a����j��2�]���<˻I����X��,.���au:�J�6m/�Uy�dԃvG�\d��A^+tű0*��ʟ.ySТSz+����L(6�>����"M��^���b�u�P�p��qyWѣr�؆�dqt�A&��)l�Io�a�)/�\qPɈ{Lf�u�Æ,��ھ�B�P�J��[`�T���_�$�S�j^���V���㕖�z����^�KL�UTh������Hr��;ϒ�c�I�wY�ϳ���j����B�v��<���Ļ��x�R���
��!�1�P�i�h3�C�8�A-yc�=	��~a��<I��p��Oq�F˳癌�����[��I�窵2�u�#}T�P�W^�ܴ$�,�T�	�~���W��\�Xlʀ�av�7�k�b�)�$"|5ʗ@3D�=�j��]�LK2q��1�5O�U��68�K530�^
Ry�<��+��
��ڹu���X�;`Jd�Z!���x1�N�����fCW��.r�^���,�p�#fcLЌ%�8�W|�X�y���7/�R7�؟��YOb����[k��K���>����kh�L'�=�ɓ70$H��z7�b�,W�O ��ݲ������3h�����A�7�738���ϲ
q����,�2|_D�i\��,Qt3��ő�U�$�b���	��KCA~����mԷ��L�ҙp���2,��C�ל�=�$v-���Q�!wa�:s�%'�[?f]�A��������d��m�쀒Cs�6�r�`T߂�X��j��/X@�!�C�E��/71��%"Go�fᩳ�4����4V�ف��-�k�&��t�wY��X�v���ϭ4M��;�I���]b��$���\����ՃVo�I6�Np^q_ �,�jA��|�ǣ��p��?.!�?1Y�t������y9�.�xy8z�7�+��L����UVx	�6?��3Z}��@�j�Z��WKKѩ�<V�0ͰJ�![/��FL1a,�v�
�'�t1�c+�1,����f�'25)#�����%���B#��H���k�ǫː�����>Y�G.i����)��AG4�YĂ;��5�up+�������Q��a�⊭�45�p���Whk��j��<C�huOYP���!����໪�.>��Z�lp�6�&￟�T�Pg"Ղ|�9Ы�T���M'բ'œ]�܈�o�O${�W�	h�yڹ�/�m�N���ҩ��mT?\3g���0�Y<Du$�X�#���cb2��XN]3��v���GR�ӈJ�]V:;��W��|���7;�)���1E@�E��i����.�%~���om��6_,PϘ�q5n��u�?л���K���G~�MYl���{K��J���@ٓxӮ��@r�F5��	��W"��G�}�fN��U��{��K�L ��,z��T�)��}�'�g϶q��d]��1J�“��++��`ԍI%�\�S�1��W�-˃�K�`!�*Ԣ���G���'r���LGX�sA�{���v�$Tl��^y3�u�u�	첾�^��l�l�o�~ І?�e�bJɭe27��K�P/Z���r���w���J���U�6QD<0���Κ	���@㻎,
����o'�I2���7+/(�3#�5���cOtW��bo='[��H��T�z���U�ɤ)�Z�A���yy\ch��F���q��:m	YFM|����9�w����r#B��ڞᷟ5�X�A���ov��n�?/�'}���z����G�A�$l[0��dx��C;��0+�`Њg��(�0qK�8�D*�p-�I�EJGڰ���0j��'���U�C�\(cc�gZ���_%��]���S��e��Ԅ��O^��T'��w�2��&����H��Ia���Ĺ�N���"����
!g���1z� �'ZɥO�Lљ�p`*c����t���K%�u������4��m$�*	��3�-��ݒ7Q��T_��5�3�y\�����K�.V�`@;�Sq[�G(WM���u���Y�"���޻rNG���a��8�t&z����Kc9w�5ʙz��
��'��P��a�]�ڴk���G��X��m�؈�@��D�����[[�e�=֯%죿�@l��݈,��
��@_��o{G�+���+�?�X,���z��po�0<nN�����.�?�f��_�##��?]��@�X-�Ϛ�js��;/�@�6�e΀/}�GOk��˨FP&�2�Cݙ�������Ϲ���Z�b�栫$H!R�+�2~h������rr'�wʪ*+k�Y�p뛙%g���nC�Q����\������N��@ё|z۔ؒ{���}�I����Χ�X��I*��B��ET0]�Ko��	��(�����\�gB��_���b�����5�(�+���ek�����x"��ǯ��+���:U�8ۑϜKH���h���I�덄���g������aFdG�q���U>陊�_���Ng{>�]��
�S%�ھ�$r@	K{1	i��xH�Tc�"�FW�]��,I���,0��M�¿�3�Z۰LA���|��D�$H��
y�	_A�N1�B�IDW�ɻ~��kL/Q"�p�j��d+����Q��j$��@����3rNs�uؓO�(�fA
ʏ�$���%�A��8DR������`r!���r.)�g�='��
�z0m�2�jv����كq��X�̵�����WâM����]�dpi�̱��rl8kO�j�h¼��U��B�5���{#�i]��j_�M�t��ބ�t��jy
���9�Jк��Y(���7��������3]��L�l>�*;��壑�}@/z�_�PD�>�;��L��	�r�.V8��A��B� �떞��4����t�}�9�\����`R�_���L!m0Y��@�If2�b--���q#LZ�HT�:�2�������|ܑ:�t�@(�%�U�ބ�
n��KÌX�fj!�X�z�eK��o�0����T,	!e1����EU��C�1��w�$����J�)Ȯ�Y�ҳW�f.Rf���l�\zW�]�:u�O����fy�o"R�nhy�\4�R،�e��A��]�p�R/�Y�|5�O�f*=`�����#���H;�ؿ�ζ�&��}1�JW�X��Δ���W/Uw�������h�T�Bˠ�r)�Bq���
E��]�upJ�]�A��c�Iꀦq���j��æ�M�i�k
[!(�a��?��ĸ�{�g	�=
q,c��%à
��w�V��KOf
�Q��vd��-6���#�wM!�
��aó�W ڻֻ'B��9�1<���)�� ������-�u��U�G-�R���!
��l�Ƥ���f�{����|�K��{�we���S���*�ئ��*��T��ˋ�?7�XO���&�v�ʇ:g2��
ʄb�z�7)�(#rQB{
�z��ح;>�w>�P���>��Wm;�n�*��\�i�/P1
a�a(���U��7&�o�{O1j��W2s�8,"}T������V�a�b�N�_6���}�����3���]�^�9���<���c�"J�#�B�Tt���(�k�W.�>�H͉Xf��R�㯍�#5q2��&�3����͙�/�!r��Ȟy�4HǗJg��i:DBW�ǖ�1�P�b�Y�i���z/m�V�n�
��7$ݦ���޹�D�*��C��"h���S���&��@8^ț<q�Q��)+0l���_Qr�`T���v�18���<�P@i�O�N0N������)
|�娂�"�o�{�X��'���uY9@���\��#������<$&�9{���?�uJm����cbKB�y�z~�IJ ��b��Zh���n�"��4)Z��lr��C��T�G9��W��%Y��IUd���
�Ѵ>km�D��>	��	����:Rοbri:��-�6ǪX�h��3%'�p���`��L�:�`+��`ff���4r;��bYņ�&���t#�2��O)W�M������g��D����R�� �/�s��,�s��$w�{��ON:�S���@�7O��4��|����������ں�oJ��t-1

�O�@)J��n|�]��6�d����1>mZo<��'6�P]�h�:M�T#���f��d����JkX�9O�&��ʇ��;p^:_�����J��_
H��}�5���پc�V=@��l���-�Ai�vQy�:��>�z�O�|��u����D'֖�dgRo������t=!aJL��/N����bw��?[����p��;<�e�Ӫ^8�W��^[LOfU�B��i+<QC�q�R�8���K��e��ׅW������ �{�Wr�ny�Df��ձ�
�~��c!��u)�u Y��b6n�:�\~;>�(Պ���v�`XK�Ⓣ�V�X2�2ڮ�,=�R��P4���@9M*Q�Sԋo�we='�{#P�E�,��2�7+����!gw#�B?�df%s Z�C
���f�TJ�\o�	T�U���G%Ab�.2ʲJJF��YD�8���m3����B���H2�eD�/x�ʓ�V��Љ�F��U������cc���]E��]����V�����S�f�Ox~�Z��"$�湀l�z0�ݎ{���-��c�ТVa|�� ����E��N-�`'7^��h�C��^G�t�M��XnE��x�sF8���E���ú�����$6�.��>8�Y���'S��
�d����_^[�3+|��i9(������P��%!�A�PXm�}zJ�5Oo8�my �Q��W�(̣i��MBT�A��U{y72��"nw����2�շ1�y�v���H��9��/�@���ɶzM��K<���ek���
�"8�E�q��e�]��+��)wl�vc���%�x |�غ�1�QM둜f��{������R�x/l�%���ܲ�r��y���˭����]g�~�y��4��2���M,ᓅ�s�x&zRXņ��
Z3_��c�-FC/�쒚�g�?���E��]j�R�P�c�I*ȵÐ�����n@~�F�oП
���.�t>�81��g:��r�I�$�{]#hvo����lWd�.P���zh�d��>9\թ��딐+ɘι��败-„l��̩ͻ�������q�:��e��,�]���6P�[����\;܅~p]�U��-�kg�PXyBG�t�*+B#-?lY/�B��b9����8W�'w��KT�X�f>��V�lB�yb]�X�O���� =�!,�!<���Dh�ɻ�j?�!+E�d���
��"l�r�9W��
��}���R�@�kG~bm�[I�@���nۍ�E�%>��=mA����?��h����0wJ�v+�tG�/reo���)m�������I����p?�x��u�
���~¬��0á*�s���` ���@�4!r_�'���1=�
�j�&U��b��Vf?�ԇ�9|V1u/lP�Y*��������&Z!ն�p�� 3���CPw#̓2(`�W����F�yC�O��7	z�:s����y�ںF�J��fa���Qe�@D�o�����
C��>H�=�<9�֮5¿z��ƀ�QJ�;����9J�h3�*v�E���<�)hZ����x�a�j�Tfi����Fj�Ƅӻ�FSG(�E%*�i!��4�Ko\X��@W͊���N�Ž��)kj����̳-�����5L���:�u����G����\�u�:4���o���}*��e�x+;�y&!�u{�S��G3�p��̃jV}���Y\���w�'~�[��
>(Q�&uO��/�e�$�wl��ߍN��Η�=����Μ��v�tc�0�o6�Ah�U��z����5���Q�K��7�{��+����V�vz��V�hꛓ���¡�u�o��*Q;�������;��$�S����nz�Q-�(h�7g�ݫ��ꚷ�~�O�W�C�k߂�pW���CjA5x�ڮ[��;��+I�f{	R����wmIIK�������֙��͚ll�'O�G�%��غ��г2��дM�S�8UIO�1����jp79�_��ܬU���z�)i�2��0�1u�'ʊT��耎ە$�FV���92���͗{L��s���!�UK��?��B�����_���=��'T�l�����b�Fy$?�r@��U�>���C� �eK�W.9Ԙ�2�6����#���
�Tz^;$�zD�=+��ms7���lu�Q8C���s���w:>Z�X����&��G��i?��S����q�Qz]�P`WXUeͫY�b���g�l�K�q�A=����F��q����I��~���N\m��
%Zv�`�%�r�u��>Ƨ�s�_]��\i�8����c=F�L>\�����7��<����9z[��T"��`�	�"�m���
��k�X2}L}�&a'tFt=�2;
��d��jh𘟘l�C}|fJK��!o�C�L�߷�*؃Q> ��2�-̱��Ȯ�Ex�p&4���O��	h�6QNc]`�ԍ�6���d(��H��$�7�4�,X��V9ǃh4V�Z��#��p`�n
���9]]�����4�O�hG���#.����U1�g~��Uqm�c�**�����Ҏb�XSk�vݖ�cm���R:cLWR�_s�M���_��$��ХD�UF/�~fh6]_�@�z^�.��ɄH�m��Sۗ�ȑ�֨�)Y�0,�‹�X�?�����A�r��{P]������G�M����~����w0@o����}�LM�ޔ(���GWii�m5�]]�R�K1�7o�}'1���;��TgR����m����F�e�p���fCv��RLv+�|�u��o�k��/o�qg���!�����0�I�O'j����{�&�z�Zs�<��o�59!��(S� �,�0�;qՌ�4h�k��c?_&�[�����Ǐ�+⾕C�^�I�w�d>��w�zE\w
E���1�m�	D��_�je�i��/F�AE1j�
�۽�=wn[���[�	����ڰJ!�&���Z�У5��"~�=�I�}�3�8w�&5�:�"]�·��.��pr�D���@������dW-�!	.zrA��Np��bH-P���w��6�S|��z]��׀�C <B�R�
{�#\?�x�b��jU�em�͟��2,&�J��n%�os�X.��?��x��ۈ��p�c���Ya��]�.R׭R=�v���c�WU/τ�<��c�A��ێ{X��.��Qۯ$�#y�=l6���<�ƻ�+�g�b!�3{��?�Ѥ�X]��r�\��Zf����e�ԕ��ϿyJ��� �Ȩ�DIH)�
�7����&��=i�s@W8�OЊ��>��'��M���qa8O�tSm�䕕/h������	{�˔��rB����WjO��~0�t���XP�n)'����>��	
q�q���*�/�×��x�_�O��Qu�z���)o�R�횄�Ba�����e�|,�j�sUc-��j!�����n��vG�b�X	{k����_nK�s���Q:��V���Ds ����6���`����#�Oj3Z]�~!D�aèy)�k�;8�c*�	��gp�4:˒��;��-*:�H5y���}5��b1���97��ܘ4�����#�_%$�Ks���AۋM��ڣuv�eM�(��
G3�
!QD@�C�Uc�m��]���y�2')��g<Lԛ\�Z�ji�0x����xTg�~�n�������Ğ��`��Z9Hѵh�' qJ�$�$�Z��9�ĚHL�,t�ǭ��jYA�P������{��"�|��f�{���Vq.�e���z{��]֞��9��Xߊw�l�_��̟C���v�
�}t�K:F�
׈�o&V�;ݘm}�6�y�l\�+&�޴m�$�Q�4�3�(c
yp�H��h<�wP�+�C���n���@g6}�NjU2KğU��!Q������w�>���w�M���y�$֊0��������Y(Hi��ҸcY�:$1,{ɻ9�gS�3)UEJ5����*8�@L��/ɻ�G�i
4��@���k���;�*�ln�{�R�"�<�
������#��s�_�Xl
�}�;��X��=D�#��Gb�yV��5�O&�$r���l-�J�G��[ڿ���9���~)ګe!��w���ŚB-I����J�N'(��T�� h�Y�!'�2F4,NkN\Ɛ��줳�iTE�J�������%9����:;k�r���?���n�w�zRW�c��bq��F� ����#&�`/Nܱ/����5�ټ�=C��z=ĩܠK\�䆮.�c۸��%J:8gr��'�^B��n{͗�Xd��O��P|���(e��J��-/}#��b��A�:�s9��<���Fn�H%\d��1c���q9�+�d5��oȏ[|`´�o�$ﴁ�OF/�
3!/��U�W&Fd�R�*�%\�}S�W�`{���"�)��/`%7e���`�F��=Y�G����ّ��d��3й��g��篧��W~F��x1&�A�^O�H�h���ʈ��S�>6��F�����G��i���<�ݻ?��\��6�w�-��J���k~�w����r�(C��R���0�LV�.�qM�rƷ��C�&Gmo\fQ����ZoN�[0�M�YHi=e�f#���k��a�&!��t	��["w����3
�ȓ0?}J�8�v��%��J�dž�’Nb1�d�1*�bi3QX���b�
�Ǻ������z%D�6b�I���;	b;S��	{V��nf
�ejHN��T�ρtgc�*�v��
�b�g=���0r���1�~��㫈��<\%c�f0���r������|�^
SM��#����w���P$�^Ƞ_V���'G4���Z�#��"�c�M:�حn��oN�р]{$�+�.w���
����Q�$L��t
��̉�����f�rG��?�)�%��tO���l?�G7���Pn�e�D7g�T�~��aG?��w�?.���t�?-�I.ZyC��e�ǽ?0ڽ�%U��^%kj��KC�xx�/{��&�@I%S�
��:M֛��HI�ڂ�%����:iHYKh!d���ȏ�2�n�D|{��)��n��O�%���xX^�s��������z-N��֠@0pn�X�=V���eXv��M�C�d�J�4����_3��јe��Ag�h1$�cj�O�B���Y>��%��
�>@���};�v�����>��m4���t,�9���*��I��\~͌*@�<��������^YB8�W�oSp�8iuу6��f9:Ku0���R���v���)K�EYz}pd�I�mX1`�9�2	|���]���,R��~�w2��� s��c��`<���d�ZQ����x�n���bm���|�����b�g��0�y���ڬ���:x��o�P[�Y��}A=��̌j���Q�J���	"*mm\����szio�[�Ȉ���b����{[f���F�΍��|Z��,�g}HŬ����_���s�gc�Uq��e�M����"�D����U�
������Q�[�L���
[<�Y/���*H�&���Wk��(�xjD��b�F��Y>�X+���$�BU���
�)n��Z����@|� %9;_LW�F����n�
��`�C��l[����'��Nռ������b����3*�0�V���+�Wnm�P_�?�	�ptb����Z,I;��� ��.N�(���p�{�����d�Jb��%��
�IU��=��,-���`[`2@�B��PY�e�^�SK�(	y�4�H�\�C&��'�@�*��M�����wl����H�����U�vw8u�Kpnh^�X��;�����]�`�-�a�+冠k~�>4�R�4���T ,Qك%v����
zx|,�h� F
LJ��'(��=5y����,��*�@�%�����U�Y͌��R��k
f�J�֛�_�V�WZ�/BS�z���v����hܷ�0<�t�&����Iz�4����b��;B^ۂmu�yJ�����O�S�Ɣ"{����q~���d�9��d'
s1�>�)~��T^߯V���/����c����Ι���-��3B���oX�	Y����!�1Ԥ����npϳ5#��d6�,N���nK~��|{����kc�GE��ArD�dz���y*.��fk�1a�L̮a�j�b���=WC/��nc��3��l�����zщ���"�R�v%�PR�w�_^2�o�~�*[z�M��������DsM7���}��r�'�ݓQ��9��0��)�_�����_.��S�5S
%�*�B}(1A}AV���+�d�%c�1�J2�	��}큗r�Y� >wʡ^ݥD��x���O:���k54�v�S��4R��67t�c�ƹ
����6uĈ��q�t^?���)n�d�i_��2���O�H��zR8��F�WV���m�j����
�����w��e�U2o���@�9�lǼz��Ƨ>���w�b5m�`]���P�_/
��m��l�h-fڜSZΕJ�JRT�i!��e�﾿Кk���fdu��y�������������B�"�V��m��<��
�u7��¨��&}��8+�$���V=��Q�Ge��CI0%����ɞQ��w�I�H&�
@}utUC晳7�ڄ��)MgN�W�	�G�0oؠ�c)�F��?�.:L��H�U�d�;Iݐ��Vߕ�<�O�s�[�YzI!�FcR�n��6g����9o+�k-O׆���Ut��scf�in"��`�fuL]�9�$�����p�ONPt0�@�:2��E��E��CO������-AS귃�1r6:DӲFo�k��U�^$F:8W.�/��ﯷ�H�s�KҞ��q8��I�I�Lw(��y���сn�+-�l��Q�=�Ջ6�Q��5�E�7p�V�
Sr�֕��2q��iى{67Li��m�OV�F�"�;Ssdmk�o���#�)ӟ�o�J�/��������ܟ+�%
W}���@S4,��:
{�/W��N�
@k���y�����I�,�q��!a�[G
�CYR�6��x<����oo����É�]Zδ�fZ�C4��oc�H��}�.�`�4GH���) ݎD %C����BșVB�e�1B8��-P�P:�!T_�\�y[�=�4ck���U������5��,ԃa1o��������1�a�h�c6�/xw/��	�Q?�,}�]�T�:�j�ʮt�w����M�Ġ��@p�_7G1���g�׃��%>�D��V+�3-���њV���_��CvC~���w+�j�C��R����9R��f�d�Y�I!���W�h��{��r�c������Y��!�g���垅�+ҽ7k�!��3�to��6�:�oa!=�:ۛ��:��tFI�2�Ԟԡ�G"�w㰮q�Z �w*�b���&�D���I]��[����w����G*��Z`���[�P�y+�S�Xf��ox��!N_��(�EE�-�H>#`
�-i���i�o��q8���֥֬,՚�q�,Ha���y[�,��0I�M�/�c�p�0�*
�� �5�f2��
��ꆇ�r�\�5
���g��
�FGA3`����%^���RAPUd� i=�h�Z��Q�r�e���5��O֤d�1�>j�Ӷ�|d:��p׻����M���iT��E(�]����r���C�V����uZ#Z�t;I��ku΃��w��p,T�bJN�j��8Ԑ5*�,�
�����R�9:U&�ׂc>�	Wn'L���v��D��Z+��2\��U]����+K˔9~�ӶlEγW2�X�y޸��:M�L�)�����g�)����rv
�Դ}�+�H�M1D�և.�A�>dy�1�yM	�e��f{���휊��g	������ލ�p8e��[�u�q���i�W�A�4�`^�V-��U�1����'G�=�,���G�oH�t9��B`=�n%�g9�V
��=�h��l���
��c��Z)�%kF]�P�D&`�А�.QDM�m�nk���ry$��zYA�1�jV���ĩ븖�s8�Q�<OT������~�@U�q	���������"�^�m�V�������snQ��uѲ�{�T�b�3Ӂ��)97TG	�V
�D�Ё+�O�ua����a0�@4��j��ŸK.{bN"�"k=�g�_h*>��H��"�'�M�4�_�Os쵓F0��VH��⫠�ԦyX�
G?�21�f�J?�T"�4#�hCS�ַ�s���|�;%&��4	:)�<-�����q-��F�ǥ�jK���� �.����/[�!��m�>�k�F9P:va���'�ٝ��6�Y�j\ "6�v�}f��6yF�C�+�}�[ż>d1ӱ�:#�7��q�x�PF��ut���dZz�n9\��5L�T����0z�z�CF�k�l�^�:Z�V��:aD�c�����W>��tȀ|�SF�q�E:�W7����]� �Fao@�^
���������c�I�B���Yҳf5C!�'���E 7^�)�'�&�`��d���k�w��e����ɏ���"W�C���Oݏ� ����l��{�(�;CI!�'M��G�@������wJn�~03�Dž��~�,�ʕem�j��޸��MVQ�.TNr�����f���z��Y�u�.!��b��~�S�ǰ3��5f���>Ho��Q���۽/�m#k8}��h��dпժei0NH��坮��6�#ƈT`�Wt&��,n�]��QT��O���pխ�Uf�ξ淫�v!�Jͷ&���-jő/��X3p!:������2s�ʛ㔩=�H˭��ĀkO�c�7NR'PK������Ȋ�Y�PhŘ� H�]����:Z�ښSIld�c�z'�-��8�Ǫ�hpI�T�u{��4�e9��)Lf�8]1i�6�a��#-S�-�!�B9�KYt�<�W�&��VN��#��!���?sR{��7��c�юae�թ���aOv��'�mR�>��Q��2u_�<˲���ޗD��!��ql��2����*�b���t<\+��$)�M�6��(�2x��I0=|9��RB,��Կ�����	�qUk�'3>�b��D�+���9y��.)I`/��޲�5��$��~w��Rp����Dŧ�����nl�[8%�H�SG����(��PE2�Ci�S4e�E�Lm6��mQ���u�<���1?����a���O�0�Ж�O�j�����87�V��)%F��P�ɃKתD�������ձ�0آڕ��4�`1�[ka��i��`�A������il� u��j�Cɰ;��f�@��k�M+�z_�ݗ��T��F�
������Z�QO���]:�]ռna�%�NW���O��/�����P����p�^g�we$GP�ݦuX�xJ���g���Z�E���[�T�۰��,�,���E�rǻ�l��.z���g�;e�{^9�識ȍ4�^Y���o����T䄏�h6a::ђHN=�JJ��V�YNb�	��ۺ��Jx��S��oG5����Lt�0?QMPSmf�3�Ȯ
����k@��ݛ��݊aU~����(��jn0Z�[
Z����G	R{����=F��0�����3R�`U���[��20�=m�}C^ A�#��S�~��~FEG�9b��2�Ѝ���
�1���M՗C�I��
�7m���8�����BV�3��q�q�Y�B�N�N�4ڋ�~E���7�ƓAjZ+��gF�d��������r'��V��h �4-��ly;�u�m�d?d�����[	�ߏ���۳���K�P{�\R&P!��D��g��"�xS}��-�rh�囸b�Ѱ�s�o�;ݧ~Ѹ&�{©�8�^���p�ٴ�s�q�<�@��R���~l8�|�s�����yZq�4F���;�t��UWf�I���Υ�fE";e�j���y���,�T��f���!�\����oi��+63`&B��Vp�h�Zs��N+�ކ��ܾ����x���=#�s��Y�z[���������&�H$Qh��:�Tgr��N.�Ba�7K�:MM��7�W��-6��,�M������?D(��Z�:���)�ªOV}eD�H��{��tƊ�A[�k�͈�;�~{�K�^��D�<�=���q�)�m_AM��p�?:�����{��c
��+�=�Q��E��gGдX�"�K�5�bzq���,[������!!�زr.a�Ǡ�:{�1���բ�!�ED�*��](̲&0�����
�W��K�NO��W��JVN�kR�6�:�%��k!qڏ��ʯ�;3�h�(Dsȯ!u9W�C�kmE��f�(O�Q|> ���RL�����uh/s���Y�:��&nX�W�Z��g��(�X{�v�[V�|��ףVF8F�8���<c�
��K~����������T�g��f�� �r���@�� f����36���3�pHv��m֜	�zL�_"i3�q��CĨ�z�;o�>^a<&����3���`fN/Ѱٙcp��^��fev��.-li
A;o�E�Ȅ��lr+`""I���Vףx@b�E�_���/��S�#*���su�Ǯ�1K�G���|�M�(!v7۷~3�/�dv�܈�Orl���b��A���Ӛ8r�xJd����\�|y|��R��Օ��C���i=��_����ߗ���
4W�g�
�\j���y��1��4v����r�q>�iL������It����\0�H7%]�A'��g�
wf�YB�l=�h+3���o��	�{�N�im��K�vj�t�꧕Ϡ�BJ�^M]w��ƴM���\\���N����aXk��{�ȟ��ـ�M�{�pU-ԝ�f�%���v���v$�է�2Wi�������U�7�{ώ��9���"�K5�g"�fS�Ѝ=k�ί?���f�9��6�c+�}|��f�53��ۧ�e�����8<�A��/���pؠ�F.�.j=Oߛ�j�H
�E�q��q� `Q�\����0Cʮ�F/ʑ��Ń���+�2H03U��9����h��v��q��P�Ԟ ���w��ǜ8i��TY����H��H��NRC��Ę .�ڪ�`�D���I�e��Wj;�9�Z�A��f'���4j�dzJ�AQ�95�RN�Y�UDq�kf�
�F8}j ���Ӥ��r��PF�t���dե�V���G�N�,>C~���YVg��ѓ<4$��괚6e�(�*��{T������}�wy��C�ivڈ��P���E�t��Z�_B�7�껞���'z�*��2j�4��!��廊5q0)�Χ�W��V;���D�y2�
����w��a�x%��Pd=>�iQ�x��Oa���÷���a
C

l��o���i���"��F����Ĝ�QP�v�d	�fJ�m��\#�0�1yn����*$Ȳ�����q3/;�4��-����cځ�5�ǥ�h�ñ��#J�B�	��/���14�w}z ���ei����S`�9��N�|�R-Dx0h+�#���2�ϋ�	�Ĝ����<�&��[nB��ڏ���b�²Hn�|I�V-ɝ�C�=I�x"�g��>�C
U>�$w��b^��/a�V=,���y�y���VI�N��^~ZϡK�i8�5rZY�[F�'�z�w~q�?�"��~��J����F&�΋��G�m���4H?�����[NϿ?e�b{�r,Y�a�����19^~E+E�`�+���z�5�nl�3�7�L?4kh��O�kT0���C�?��9Z����HA��c�U�<f�{�K��@l�%���2iow��:G{�2�,uV8?������c3���
�v%�@Է��Ha^�����Z$1DA���d��6VEݕ��ϐ�6���M���a�{u��-/w[笂c�b�pq�I8
9�z:ۚ���Y��7O���Gx�*�L�����h�K����c�!��3�&q��s��H��8K���Eρ<"�t�����<aP%�-<;��'QkM�1I@d�n���Y��K�9TP�s���r��e���A�?D�d�])����!�!�Ly#�"��\W��[J�<a�L��Qc��gnjx����{���c~Կ-�6�_iŹѭ+��c6	b66+��x]RN�>��T啃�$=X��ې�ߐ��c���Ȧ�'�9[\����K���f��Q������d�tGu��kߑn����a����r�x��d�Pk�U=G�0���>':��`�x�Ie�/����Y������e����%5�
,kR���r=�CP
'��S�r����*�l��D��Mb���:mqh�qY�]�
W�<Ÿ�xF��BX1B��a�_�J�Vc�7gN��W����U@<��V=R�=1c�N�I��Ut��sq"	�rJ ;�U�NzC;��{���q�K��3� ��Y]Z�G�;򩈑����������x�7:�u�U-"n`
�/n� �3���Y�z�qG��%h;O]��ڰC���wn�wc�(DK"L��/h!1���~��Utqw�];y
\�Ma��j��� ���j��X� '���zw~Nj'd'����B��G�xJ��Ix?�YK�����<��F�s������=B���_��ּ�%{��{�ZVC��B[�+4C9�4@\bY�p��޺�˧L�*n.S���!�����HF�������%�F���j��Z rd��N�V�֙Lu5/�@����2_Z%w�40�y5��	4�2���G����t69!��K���ɔ0X�<�^ZV�����r8T�>��5�����s͊�)��������4��]�}[��{t�hV10�J��¶nj�D��^�
Rt�
���5/v���i@
,���h�sV8>5b
r�z�� �
�B��D(�
��m�o����Tΐ���x-M���Q.�1:�Jxp�����lk�^����ܵ=pEI�9dJ��J�����*�'
��h�V��u�3�c��w�`R�Fܫ/qh�٥o��Aб��gL`��� ��uK�KԚ߾�4�:�O#����:@�>[B��3A=�ep�i/r�ԍ�S��z��.d)å=���I�и���;��7���Uy�w�z��[�Ft$>N3����c��<ƃ�d����SA���B��J~��kݘp�N;��o��`y����­��
�]��c��_xl�����D���62R�>dyꈸ_�ȓ�lK�(y�ǟ�g���H�!,�1a�0�`�U��{�����&��jdB�;6�x��䐾�o��I����`�>����N�Qx���7/��@�
<��X��R���r�m�)R���,�ut��α}ܣ�"��î5�QEsDz�"i��=%�{F
�H�0�8�?�z�^:�
 �'�O���N��)_*���J	c[N�2؈?t��Yd�nm�>;�^�u$����)G�$���(��3����'&����3m��ew|�:����u`�B�~x5�Q$x����7V;��$�<�z��}��:�B��,��.�v{z1-v����^
��K.��	��	�?�U�w��9�|�ny
�_����W���87@�!��Nape��b�&T�ًx	
D��LI#dP��Ѹ�>�>w<���0��䶤ؖ?�=4�!YM�U
�V�m��O��C`im�_{@�ټf�$�����r1��/��ZW���R���&���q�e$Wt�L�^X�.Z��H���k0��W�֫�a�a��`�����gT��{ȍ�q�'4������k�Д-b�B���!���|�C�ԹoSԝE;�(��bԧ��v9����E��AзZJhL��x�;6�Z�bˬ�*H���wᩪ-�
U,�{��93WAu3A��u
�
�%�-N #�t�@Z�B��_�Kl��~Qd~�] >E�_�|�Scz5~�##�����|.�vQ��x�Ę���A�6O��އƚ�\��/���r�z���C����0�
Yl���B�\�N�!`��]t�d6&9	|V�VN�4A��p�K��OC��X1�u���d�! NJ���rj�xB��	��`�4��
�T�Y	��9E��� ��|$�3�uD��^�p���o�"�K�[�M��$Rf�<s_�-Zf����-��>��Pi�L"%��Q�¾�L��_S#_�C�t��qlJcM���8&Gp/�-��Z�|zҍ��a�}�`�W��N��~t|}N�o�P$�{ŧ����l΀�L��b��y���a�[�҅,��
�;�3R���\�bY�K_� �"�V4d���)���7�rl�T};�P}�
�X��_(��<a/s�uj�Bp��Ȳ�H��D �g}�u�X:��J��ћǫe��kߟ=�Eɨ�S��iJ�6c��#st��J�G��Gn�756۾�'���t�I� ���bFW�"�.��*�w����%��.*!K��(xc��J���+�G�Uf`�c_9������m�V��j�E߈�8�E*�0���ؑؗ�s3m�[�̿�aP�O��r��~�]n>��v�̮8�x3� M!��z���i�O�l�b�)ˆ�"B�K���6o׌�A���\��(0��m�m�jeE���9Z��b���H�;l�*��5z���@�>�\���q��;@}�(�����{�p���_�>�_3��ߔ<���c��"�!n�@|���ͬ��C�于�q�C�z�|Y$$Xy:����a�5�0(�E>�ަ7/B��1�ؽ��~��_mB��n��&�tE3���s�1ށ�0cHK�
Άw�ݟ�lWmL[����_$��DRi�D��aI��Ҡ�R�0�N�/��<�`�B���&.��p�<�I�NDF1P��W-E�_�o'��$j50���P"<�=�i�<��QzT����A7��G�'����`y9T��q��&�����3{l�8�]j�� P�&�Y�y�x��#[N�t?����I���ǰ�-ER�[�l��ESE��Y�Xn#��a�i'�|�	Y"�
�)�m;J�d���P�=�}�%��N�R+aP#���	h	:���.�8u�����1�,F�l����ڬ�uI�`@�˟�2F{
D��ؖ0�����׍�5�XղK���r�\���D~�&�\����7��71�
V�M%ax�ٽ��i5����=����$Ӭ��k�j����b�o��H�[<���\}ul��x�(n�LFx��:?1�T/�Oj>e"�t������0��O:k�?�e9�"Ñ9�9lnr�+L�ۑ�ߎp	j��8��Z�^%���I����.�?�\�ˑ��g���Bij��1��H4/�l0Ɛ=��Lp
��>@�Va�{���g�̎ݞ�U���(t��+���-Pd1׋�:0
��P@���9��z�/*�i]��k��z��|4$}2�Ć��F��^'~�aȷ�F�ZHs�-��:C��s5`�O-�;Q���v6���i���s$Y��n���[���'ȵg��J�H�|���Vl���o��@M���5&�N��A����orl�iG,�H��(�u�����BƄ�����
Ө{�@�;+���&��^|�o��&�F9�pJ�����ҧ�~�MO����I0c�u��9ѳr<k<B�zdGB!z"'��^RT g��.�X�)�,���ꅗ
,�L8�6ZRqdb
�2��P�}�&����׎5�{\l^���Y�V!Ql\��ܨ����9
���2(�-Y���ON�o����^]�Ж����}�2i��Hpg�%fJ�Zu�m@�7�?�(�v���ȤXc��$�^�v�l?'��`�–�
��i��}�:*�Y�D�l嵫�
�A����cw�mzx�7u#����LS-%�t�cu{RRT�eG�����AN�Pe��z��1&/�Ś�q�*�b��d?�⹝`�ѳ���b����B��j'���\-��pd�%�o�H��p���*ݖ`�r�C�|�Hu���p��>|���(�֔%������Y.2��6q�}2m�؆H�&�^�M]\�D'3eF�@�0�z��U]��;��D;��sa�h<`V�]�d҆�����cc��d�{1���Z�nP0�ff��'ڠ�p3dF~�Ds~H%>\}�|X,�>�`����o�	����l�����4N���H��a��Qw%��N���P���F��
U��\�!|�M�B���*��[a��D�����æ-D����ƶѪ��H�6L���U��Zi��)�,�Mc��܄$䞙�֍�?�س��Tg�b.�; 3�0��>�[ř�tDcTp���H�_Ʉ��y��W�Jx�4�y��h�:��ǚ��3��0���m׽�J"?F�H��@���cd�:���Y`��2�hX��@��Dl��^�����@u��e��l���od���;<���Lhbsgr]N��G���H{	�I��cb���E���sO�k
M꫉�iu��-���2��G���(�C3ވ;�ㆭ�N���맆U�?(�V�8����)=c��_9!+�Tm7Eo?],�M�XN�)"U�p�!���a��bm�O�79Uґ�
���9QWψ�e�Dݔ�W��b4cY�݄�ll��M�R��X����N_kFӍ�h��,mP�ſ�sq�ᘕ'"$:bd�Qg�#��/���<�����y��/&����uM��93�� )i3XNJ��0n��s!%�����snD���h�;�(����F�/�E�Q�|�tf���K�(	�mB�{���p�=ܪ��������3���q�xB�ۓu�K5��'��C�k')�b�~��RrMX8��L7�$u-\8��3�hdc�}�)�3�N��Ib����,����\#�c�%��H�Oߣ\
ġae�4K�"T{l}?��u�A'1S���
��đ��'�NUe�N[8RyƋ.j��.h]�.�Ag�6G�{&�Iq��,6��Z��.����u�*.��fn���7��J.lX�����Q��r�09S�Va�o����A�,�~�z���O9G�A�ih꒝:ܯ�N+#��.]�c�N%���_}#`��P�gBk�n)˺64n�����'��#x
b�s�sS�ܴve���*��?P����DʥW=�\t�m�b�k[y��.^�-�4k�Ictj=��mE��u��3�Z���_-���s�l�p�O<*�w�B6�
0���]�Q6�o�V�>0���;�M������#Mߋ�Ȕ}�naWU����%T��i��
��
#��:t��J��1�����c5S?�LJ�S��)fȖ��]�
+����qs�<�;��6����2	#�����m������0�n'A�����#F|mǃ���=�X��H䱫�)�uQ��t��W<��;o��+l��rt`���s�Ȟ�l���\�xPn%a�s�Z�H���i#�/K�ٌ�Mq��z���i�ۆot�+b��"z`M�m����K0�:9-��t�
!��ߕcr�$�S�2z�6��Z?I��K�ʔ�֒�E�Y�-MBu�7ds:�YQ����Gc������w$I�@�.�H�mS���oPa�9oW3�ōx
��B���*Tx�|��
���E�[��Ȅ:��W6�)��)�����>�����	Pn�n��5�x�gR����ձUHdW��#�x�~',�ςC#�˧H��E�3_��G��+�6�/<LX;��&\G��f�I����8k��C?6U���,Olks�r�����4��̮�wT���N�=��8�����bo�����"Z̟��6Vp�Tr)�+�ܚ|��M��KQ�y�/��-&Q3�k�^�u�.�q����T%��f���;���aާNu���dk��M�gj~/��0�Qȥ��ͳ�|J��\�����
�;r�P�}lk�,κ9 ��o��6�w�,j�S��:�]��|f���U�}~B>g�m�7��QE�?٪1�����l�$X��ь�7)�1��G;�Ip���E��2l��f"���w;x�tvaYb%Hė�<��0گdk�$��r'
�A�]4�tUh8_b�,���W7	���?C�M
��U�;�s�Շ�?@~ԫ��|��?���nM���C%�:�Y���׎�e�����KCr�1�A�d�271��Qxs�z��}u�/LTw�nM��N|�q��=t��0�Sq�BZ�je
sj�p�뷩�:��9岫I���}��X_BA�O�&�Eب���Ni�E��d�S=��ɡN�.s�[�>��w�T��l�g!�JU�uڎ{����O�Z���hZ�J��R��:41w��j��n����3��5Kb�E��bdjFC�kw�KY�u��[���%�΃��T�X4k������W�},�C��@���ƶV�ăy�y��~W�ˑQE�U�6n�z8_��K.��!���}��cF5%�n݇����2����1�,Η�����>ߵ�`>�sg�V�;^�/�O34�Ê\U
A�]���J<�����#�N5�tAU�(j��BP9H@������n������z�ٯ���-\DZ��c*S|or#�94��NsVk(��۪#����fD�,��!{(l*/�3�}Ȭ����
o�O���J9�x��=HQ��$A�y���=��Y�G*���a��<�K�n��^�5y_u�u��8���b�Ǽ�	�-��&[&�'�Que3Yo#
\�.��;x�b)7 ,D�[���Н�~�Jw�����$�_y��孊�����}W�'q-%�ݩ<y'Q�^�}6+�X[�g�l���m�f,�XpM�=3��{���dF�L�seQ_An����U�	s�AmXB�<	S{A����V�[�Ǝ\�8�=�p%�R`@"��Ї8#�Z�	���JNp�Sm�Gp�e��c$�c�{�O$�T�ū�6�y���PV�!�8�x��nD
�[u,,������cr#�fK����3����^���j*��p�4:+X��a���`�w~񂝷uN���Z�o��\���h�t́z���)>���y�6۞���ɕ�wzB��n'@��p,
�v
]�!K���bȓ�Dl��'�ѱN��n4Iz���9P8?}���:�q��t�������~��0��;�I&���<7�Ҍ/�k&�n�6��K�A0?��g��ڮ�=������&�"���A�qFF�k��{���#4�Ƅ��4f6i�;�ee�8��eD<�F����{��h�5,��k���c�j��Kx`\ǣ���u�C�Bף��K
��
��f�]VQ�r�8w?Ѹ��N�����E*�4}}윾��0Ca�t[��}��Z�faH�&U��
J=rB�A��*�O�b6�j��y�"Aq4u6��`��3�k[/R�pH�<v~6�y�߼d R	U�\�m�r����M�R�=�r�4*H�a��0r�!"���t�=��/����sF-��0y
�4(~�;!�C3P��슑"�r���oV����Ԭ\��n^�;��4���IT���mTa��(<gfS�H;����ҳ�����S�4ې���k��܋cM&D��+Q��U�u�9^r�:�j���f��b�m(�<���z�t����$Ĝ(��r`
�#~�h���OrM�����f=��Xn���D��6���V�:H{��//�83��=f`��-��>�R��X��%��M:�^emD׋��0�2��
�G���ӏG�ނ!\x@�@�.��C��8���t8�^2�"H�2ADD���l��r(�)!?�T�����@�^S���Cq�/��c:����m؀g�F�{�}bfV�q�g�@�f1*/!�FUY�{�T'1���7|_���p[+ 2�! .I�U�$EqmE*4оj����cW�����
�i�e���eg7B��WT���f���y��.O�þ�C��K�V�X�FQ�86)�-�/%@BB�Vޤj���Wy&��J�3u��:E�3��Zn���=r�$�D���!x�d3��'mmo����6���Y�l7٩A*40�*����r��ه��<I�Lf���ro�6ۍ'��>�M;�
�5�?%��H�w�Ӵ[��h�����
��ǵ<1��ި�5Ruo�gM+1L��l�S�I%��|�s̽+�
�WX��!�#/7�-NB0'����W���<�z�%���@)D+g�>U)D��#r7���P���u	a$�>JQ*�y�w�҂
���
h��Ne���[7����K�]sn1�]�5G�*�"Y5���j�<�Ȇ5���~x�?�4:�	�_w�"M3��uΘ��
RT�%���G��7t���J��qj��u֘"Q�����%4��a1C��";�Y)���C��N��a��<O�
�gk��<줤�ܣ�j�*Ϡ����΃��Go����1J*���݊�VUB������4��fGa`���_&Kd���A�z9(	o#�C�&�爲%@0�Kى��;,����R7�_�QyR�>Q�H$��f���:�����0B9�ۥӶ�e�<��΅�v:��=�@5�n��Zd�a���֮U��o���>��{W �_ۘ�K��\,!��r��:$���?�	>0�yyg�BZ(�=BY�yz�.��PR>�X6j����	m,�#��]n����v��Pu��NN��v/6��jmh��AO1���^�Ɠ���N��oQ�����͛Vh@��7u1(�8��\Y�%�>E@��_b���;�.'��~��9��?�s�2\���9�S�T���TQ>�|sN��V�={
�.Y����=��(qG�%�RL;��e=[&��x�E�8�a"�t�q��A��Jݛ��(�[�i|�R�a��|�Ŭ�8��h��n&��*-+/:�S<�f@Y�G�4�A��T�)K��7{�JSj<X?�Ԇ~,��OdЂ�Xx�Ϲd�u��p�3z$�T��	��[/�j���(X`���b5SDi�c�F���0�c�S���k���9�
j��A�V'�P��紽�,3bT�k�!�r��Y&�����n�}z����?`�A�1%w�\�]\8X����
�4�Je�^jՒRo��n�Ь������|���)՜w-���k�Pu�i��5
��(p���?�c���~F��Y�4P�mÜ����+!21�b��H��m3�%]SWL:�N��RN����f������ieh��!?��ZYO�O!�rC��Ӭ�*��s'��,
�ƽ#�
��lS+�+��ڙ� ~�3%R0��tj*EB<6$����6��Ih嚇2*�/T��,dx';">S��]���T���`�z,�D���)~��AV����gq�e����4Eb��?ԑ������6ݐp��Zn�7*�Amf���:֠K��+�oM.s�;���wd�����˟J�W�����?O,�� �
|k
'�Eu7��	�c�UVU���T�J
]��6��L^P�r(�H�E�m�Q:�K�����G��^��:j:��8Ԑ�5�#P���.����<�C\�.�T[��FGU��\=�9�ݥ����!Z�j�I���d���$�Y5��<�����Q
� ������	";����d��h���7�[d�dsd���à–�6�6����H���9��5e�_�H�J��_�n�[�)$U�tl��>��;���>��Dhn%$�5k�ҥb�*�� cT�'���]y�p����-��=[`9� ��~l��r���u�g����y�:B��~�HqAn1�fh�M[V�[	��)����S�x06O5��G`��rT������;�ʟ���5��<+(4xY��M6��Mo� �my��|C��R!�D�l��A_ޱ_��M�W�3�q3V�^ì����+�;(E�d��r��I-]�l����a�;�g��g�<6h�>�_���43|�Kx=e�4ؼ��M�a�[��;��Q�Nޟ5� ���J��B���"�B���a젽7#V`.ό���Z��آ�/TUD 
+Ƿ\�EBXv����y?:�V�9E$�]�6��y��㠟�E�ˬ�6n�e���(9��cQ���'�2jQ-�Pć20(,8F�v���>A{~�h|�e�,�X9���2�����C@W�$��ܲ"|�6��|/@1��gbm�t��e!���2(W�.��ǿgΉZ�\rs�n?�+�`��iX�֠�ij�	
�. #K�d-)Jh@�P�(���1�u�.v�dv�Uw�&���F
��u�]�m���X!p�Ý�.�(;���brup����4�����If5|b�Y�)|��u���@j�k�σ�K���o�X}ȣ�A�[H�G�.��6�\ό���m��%̗d7��u�̜\\�0�ɔ�=Ft�}�-&���[Xo`as\p��)��xܕ�~���A������������.vG�DI���3�'zՕxDd��po�1�fs{�Ek�8N��oq6�	m��Mϸw��c���F\�p��(;|nF�?T�����*�L���;2e�1�[�C�p�٣�I�[t7�V#:�pz��``e��'������sbŚI���!����VH��
�%P:MT4Xu�a��h�ըw���c�[ď�Y��* ��3�G��}x�[Z����[�����!1�G0~�����hߓ
��E���1�{����{����Su��)�-υr.I�8�P�n	�0��u�uIWK1��F��)B��I�aI<[tUP(3N�-��
O!Nb$�(ÿ0���9=ߊeī��۹��~o�8�{U�}T]�]�5��M,;����i��}+p�(��L���
ZI���l�zj����U�7�aaf���c"�/��W�骖�ՙҗ��*��o�}4�\JXK׸.� �(8���c��x�?�W!+E"��*�.Q$��J�%imWH���
��2܏
�ͯ���,�]<��2[g��G�H�W��F�?
��B�
�y���1�˹h�٘��dOdxqS6�Z��ر`r$�dgT�3x�����h3�Ҁ��R��Ӊ.����Β�+#i��zӟ�^]���-����Dݮ�"\�R�~
	�&���2��<	�4���ܗ�ʷ�{X�
���[B?z֨Lkꈲ��3��Slv��Oo��5�,�ɞ�mga�s�W�"��Q)Q�
�j	�k'�AL�E���9���9�l�sДGP]�*�lvL�E��R��U��5��6���W���Rq)z��
���Ꞓ�եCI�&�����9~[#�vѱ�)�k��;��r���ј����+�Y"��&*��x�,�7�[����@�ˑ]-+�Ӡ�AҚ��H��z�x��/����p������ �04m��1�d����8J�?ǤI5L5hI��0��{J0���u�<��my��?���[2`
@R��mT\(77>�^��:�/_}؃�D�Ӎ���0���U͋Ьn����9!��C�㣗��/��2������ke1s�Jsd`k��#�F�r�����x%R��v�dM���o(:��y�=��pgy�%��N�uQ,��i���L:��(8Ԍ�>@��W���9A����+��V7:Fpp��M;�-�t]��cݚa��i@����ٷ]�ޟ�b�<pg��;^e�"�Ѹ�r�9�v�g�3ý��_{*���)G��'�U�0�H�2�1�[wE�$~�Pz��^J"l��N�J���:6M��'�-��[�I)���.�a�s�2��Z4��2~O�����"����0G�2�P�ޚL&�<�t���Zh:��/(H��x���(��;��X�E��EV	�e�f�����a"��`|c�{k��IF��J
��B��ھ)��x��Q!O*8����i=�l4���ah<�l���]i�T��~`C�7�%)� j��y��\
��ߤ�N�?��,��^��D�ٻ��}r���P)���}:�(��D�+�X�$ԑE�EϋP�Z)v,%�c5��|-���z�W5JL�(_Q;�`ø}�z��h:C��t���>�ࢶ��x���'y��h�[[ƅ8�<-ଠ�Y,Ւ�Pv��o�M4"Ҝ�
R�M�^5�{[�FG����(1�D+FL*�}殟�>��|N`�mAdQ��^��Xh��>�B��~c5^��A�>���ډ��Tj�lZާ����u�"���t�TW,p�p��t��n�O����À�I�YY髳�����'�ɠT!�ݺ�k4��7A��,��1���T���(���m�f�W���L#�%�[��Xt�߬��5

�kŷ���	���m
�r�b���|D@6C�Ҁ�[���čt}>U��,�"`�Ҕ͊��%��ԑ��?m�DG�I���u`��leh,��k�~IL�_��^@�Bݐ�����2�ѹ�36az���eQ�G�`EI3tپ�ܒ#���=I����v0.�k(�ިL��2�7-��n�=�b��z7�9h--�yE���V�ӾZ��ӾN/>w6�{�f%q�d
�b��+Q�6	��ds���П�*��ae���K�^�L�H��e�������Y��í���8:�\<q=�1��J��x[�59�o���r�V%3o����F�
^�z��}r�Ѡ>��t/���_�
�h��P4�J	������Ҫ�5�\�C���9j�4�i�r'�!���zq���+'�%%�j��U�%��}OOb\&�����16i�tW�`��˯1j[�jFgJ驯�:��O陈'�f�z�DM�2�UH�x�|1KX�3MY�2n��:I����8Vn��3,���� �+}�����nE�KՈj�yh΁��蜜�xj�:j���� �K�6��7I��5)j
y������8:����E.��JI�P'���[a67�X�߈?�a��=0zK[*V�j#w��w������bs�m�)��So�xw����ڰ�8��Ө��]���s�*`�ML�ڠ+oo*���}TK�{�.�G�B"��&�C���H�/ƨ�\^��cӉ�����`5M
����iΠ���̉�*@T)Z�8o
*=��?	�A��t�`�'�V���kP� A����)-��>�V��#<��eܕ�Vgx�P22;�}����/5%���$���V����V/��b�#_O$7�u���m��y���؇�Kc�[�_�x�.�k�}�w��Հ�T�Au����9�8׼t`q����hfR��Z���}H���M7�]��;M|����Rd7j苊��[m�,q�����e&���`�/d�6.p52��͚���0����A��e��d�6�8�,��?�Y�|���D��H�S�3�Q[�@k+J���X��Mv�
wlu��]��x�?��	҃�w�����I2���ڃ�[�Y�\<�9�"�����D"ҦS��� ��[ᚂ����g��Fb!��/&�ze��H�M�=v�F~5�v��8�X���6cWa���枦h��@ˈ3't$dC�(��;7:�|�*���,�$����u-�c�j�V(����`c"�U0���o'R��؂
=J�I�N
�Ie����b���ƄlP*m�p����XY'H��O��nJDbgF´'������;�L[�|u�-Ę��-2�6�K'�i��}�+ל>�0�$z�WiVӝT���FL��U�XPF��G4���T.�*�ڜ0���+g�2M%�4�b06�ǟ��a��z��kI�"�����k���T�Ǎ��1LB26Q��Ǎ!;��ct�G��p�r���R�Ű(�3��g^1=����7�3kz��1��!�&��9&�PDf�ry���ɝl��ѻ9۰3e#��_ט��
�y�,�
�Ft���S�N*��E��gC�]����P��qC�;Zg7bI�`k�	~9G��]�H���P@��,3�1vz�c��"�
�ڶ��;}5+���Q�A��D�����Aw����Ӗ���7A�i-��l��H)U�;w����Pj��h�#���?�Ot��W�^�~P��#�ڿ�8'�\���t;ޔ����;0:M����|�Hdrr+�b����/-�G�}���v/ð�$?�b��=u}�ov]}81��'�{�{��ڰKt ��)�����O�Q�5����h��0{�B�$��K�e�8(L�����ZR���vQJ���ެ��|�e�^������ŏd�V��e�2����(�_�"��,��"ȥ}g�D��g�\[�`YБ��͐���α�Ց�1G�&�}�"!3l��hﴰK~n��VM����Ju(9cNx(iL��~�
N1sDӂ%���D���=
Յ��j�	�̈́|�چ�j&!��&oin���&&��}��
U&_������3�Y��a�W���g��b6���xW@�j�#�at��a���骽"�@��갻M�Tf�	o���«tC����WVWdO;��U.#b���	Cz�x�}.�(c0�ėoR�l�i��L�
1�ж�	��~�;8h��'�0/��_���?�[ziV�Y?F<�3��|�H�Z8���!�wPm|���o'����C��D�����N�G�=�2��{g�Z�-:�4�u=�=��:&o�{��~/H;j7�u't�`�L�=7�4���c��<��40�&��eL

�����DhČ�և;�	f�nF�W���6���t�Fb`�vߘ^[�@���qX�e��[l��H��`��ו�T�	MNK���w&pl��"$�I�c�*�1�0�a�>(�$��TՈ��"2�o�vF�_A
��)�w��6����l���0�"^�4�e�B�
ohm����a*<g(��y@y��|>�ik@���V��w9�p��L�2���
��O��UT}L~�U_��#��?�#^�
oJ���i�*��Savl���W�w�|����k2����M�O��Xq�������O�[?	K�a��و1�b�j�aV*GY�\NE?����h�)�u��G2J�����]M���/O�N�N��:��{��:����J.}-��6Uig��M⦒�?��BG�UT��4�t�PR��7�[��%�:�����w*� ����T��m�K/16\�Ұ��p{�j��<	!��TO�F�P0ס7�.���B�m�'bL �)���B�
ݺB���5ڰ��^�kK��ˋ�F���KA=�ӖR6�!í�����ꖣ�$ϓ���L�c%��d:�Ľ�Ym�RhDN���&1�O^���,g�����z2V��֗����W|��x��0j�wݪ����a>e�R�+�	���5�z�;~xP	c��g
IJ|qG��:�-7���x+`�k�S��(��}�&�d�1��f�A�_�Y�X���F����H�3����wG�� �-H`�}�r(pZs��oL���Sѥ{@u�Qa��B�qdگt}��^�_�4�T��;�5��ݬ�ec=L4;��k-�Q'}��H[�e(�a�������t���V����ƒJ�R����n��C@wL�{�ݧ�1��7�w� �	Ǜ�QU�Gȉ�~C�(��כ�����x�I�$��,�m;gsd�b����jy$`�6��rèz��Z�����<	[!}#fJ�q��m��ۺ�a���(�[�F@���
�����"I�I���z�������H��1K�C�ē��`!��n���F�� �,��`�G>��e�<,�0��a7��Y�}�����j�i����0��Ľ�[�U���,�}&�ks�;�k�Ѩ�l�~!uVd�a)M�rB����7�_�P��݇��`I�ހ���#U�X�L�Y[��K �3�9�ĩ�����i�*梂�R{�i�Y�A.�
b�u���4�ey��ګ��D��3?��Z3y�h��nC�)���h8޴ش�i�w��-�dP+*󐲆��+��	�X
p��K��h���O���Q�i���T��|�w
�Y
%�l4ق���Tm4���s��QxL�J�\g�/��֡bm���W��N/%����6���fK��,��]w�@ek)W{T���õ�$va�Y��V��J�����Ca�[�
�{u䕅��L�]�|�OA���Sz{X��h�K����)\VL��B��	71���&�0V{|�,�/Ҽ;��G�oC�?Y�b :U�\�ɺ�6���������|�"@ S@���Il?�)�6�?��T:.�kdc*:k�!.ek����̛#1e��ʀ贲M��X��y��]�Q)�@]���r��G���_*�F'3�� ��{(PqPkbE�i���#öfOvx��q[���j��`Bբ36�Φ�(���Mh:Z��S��t���;��0��飤��k�o�[�_~�3�廉B���dH��5x��"��jkO��Y���(V�O5�tўr~�=Ҹ��͛�p��߅����c�T��(��v�Uh�ӽ	=��dH�0���k�6�}�v��o���YJV_��3r��������'h��]� �:�I����[��n5��Z5�<�-z׋e�s:�\I=8v�kE�Y�y�:1R�&�>߀���U���U�8��`1�LaZy��ALG���v�t\�q��ane�}Ӯ3�)��i���da]I�g�d^vN��ׅJ����hi�H�B(�E�9���޹���t��j�E4��w�ۤy�5˿1;�̹S/�KP# ɵa���)�(�n�Z��"a
�c������fdlf@��q~��͍�/���/�i&7�GG�;:[cc�J/��O�⎁o���Zf��q��[��+���}8bS
��r��d������T��[ ���fI���}ŠH�n
�Eq.5�8�+�Y�۴��7�\�C�&_�"3�,P@�w��ߊ�!��e_q2��74��GZ��D���,��ð�6�Rb��qCZA�	Zyy��N�@K9�e��NqA��d3��IH�B�(���r��{<�ַ�0�ك
l�"*<�s��T�q<���vt���M�d[�3Ÿ��Խ_
�_�Хq�L�A�O.��
��"���Q��/J�0��/V]zV�p��1ig\Hq?��qh�sѬ����n�Paӛ&ƨ;�� s�^W��Ҳ{C��NrC��+>�rJ,�݇�(D�S�g/���7n��;W-�N�@v.��;���庫��*sZ�e��'@o�쟘�Q_�ٲ\�7���͛�����RAX��=	�Am\ƿwDd����c�K����ߕ��9{]��g��/����~&�<xI�Wg��f���q�)��,0κw�"��!�D�N���Sq\A�j�[ޛT�rI(��)��Ϲ��=�pQ�N���,c�(`~���Wݍ�gG�3ՂiS6We�lL�U�0��[za6Dc��𷷣x�iW�}#h�_��'�����ĭmѵ5���?y�Au�$+a�ȹ�8���3���EΝ�Ċld�&1�+�{����3ol�ɨ�/{(n+�-�H;+P̆��ͳ�1:���rU��2�ג�>�p=�?������{&"(�;''�ip���S�fč���i�2��'��7O�ᔇ%��|x�|�Qu���2�C���1�p[O����g���@�h���G0#y4��b.�
��Q3�F�pi���C�@v���j���TL�3,����
endstream
endobj
45 0 obj
<</Length 10/Filter/FlateDecode>>stream
x�c`
endstream
endobj
46 0 obj
<</Type/Pages/Count 1/Kids[ 34 0 R]/Parent 32 0 R>>
endobj
47 0 obj
<</Length 3>>stream

endstream
endobj
xref
3 1
0000206897 00000 n 
17 1
0000207071 00000 n 
32 1
0000207233 00000 n 
34 14
0000207294 00000 n 
0000207456 00000 n 
0000207489 00000 n 
0000208371 00000 n 
0000208499 00000 n 
0000208645 00000 n 
0000208783 00000 n 
0000208925 00000 n 
0000209064 00000 n 
0000209201 00000 n 
0000209250 00000 n 
0000414023 00000 n 
0000414102 00000 n 
0000414170 00000 n 
trailer
<</Size 48/Info 3 0 R/Root 1 0 R/Prev 206028/ID[<8c43871e49b2cd2deb7274482fa3e1ae><769b9002759705ef45d30d0c337fb895>]>>
startxref
414222
%%EOF
%PaperPortPDFversionupload/grand_restaurant.png000060400002565320152455614210012117 0ustar00�PNG


IHDR���� IDATxL��|����� IDAT���=aD IDAT��w�?� IDAT��޼Z IDATL��|�yUP IDAT�Ž�{ IDAT���2C�  IDATwJ� IDATL��|��	
	663$$#���������������������������6<:gjh
������������##��������������}������������������������������ #�	�������1y IDAT����� <?>sun������$"����	���{w{����}������������"#$	
)) 	�������rmr���������
Y]Z�Y� IDAT����������������%'&����	�������� �T�� IDAT������������
����������������������������9<:�������					���Kj
� IDAT QUR������..&���������L��|�����������
�������������������342����������������������F�� IDAT


W[Y���/10������Ŀ�����������������<=<mrm#((���	������/2*���������������������


���������������;;;�������cac���777\]\$&%���������������454���������-,,[]\243���������������stsSTT���^\\������		
������lmlZ[[���������������&&&XYX677��������������RRQtvv�~��������������������@BASYW%%%
	

		���46,������������021������������������ACCsvu���������

455���������������������YZYvxw&''���������BDCuxw���|z{������244���������������������CDC{|{8::���������JLL�����������465���/11���������576������������KMM������������221z||IKJ���CEEswv���������465������$%$���./.������,.-"""�5� IDAT���������������������(()z}x������230


�����3/$TXK������
���������������������			[]]���JJI���������������������������%&&���������JLK���^_^������������������������
������;==���������jml���<<<������������������������```���NPO���������Y\[���VVV%%$��������������������������������������������������')+$XXV

�������������������������������������������������������������������b`a���������������������>@@������������������������������������			���cee������'((���b_`������������������������JLKPMO���rsr������������������������223������������������������������
4428BC������160
��������������	
#����������������	�����������������������
������������������������������=??������������������~��������������������������������������acc���������������������MJL������������������������������������������������������������677���a__���WWV{~}������������������������������@|' IDAT������������)+*���������������������������������������������"%&	CDC

'%")*#���
���
����	���������������	$'KD9��%���������USU���kmlPSR���������CCChkj���MJL���OQPa�b���&&%���			���������		���#&'		=9/74*%&"���
���������������xpo������!#IVT������tk]�����
SG8!4:DFFYZY""!prr������������������


>??cdc���xzy������������  xyy344����������	��,00���	����������������������YQX���������		.01
OSM��hD7%
���8/!����������jkk���������������������������xyy������������������������LNN111������������������������MNM+,,���������������������������npo���������������������������������������������������������������`aa��i� IDATAA@JKK������������������������\_^,,+������������'('��������������������������������������������������������

.))km`��������������������������]UV���������	eh`HFA���������.,&���������������������������������������������������������������������������)+*III���������������������������������������������������������""!NPO���������������������������������������������������������non������������������������������������������������������������������������jkk������������������������������������������������������!""Y[Z������������������������������������������������������������������������acbgih������������������������������������������������������_`a������������������������������������������������������������������������������������������������������L��|


w}o

������������������zsr������"!WQD���%+$,'2/#������UVU������XZZ������BDC������::9,.-RSS������������������223CDD���VXV121


������������������������������������



������jab������
=2*���,,$�
	

��
������������������798������������������GGG���������NOO���������������������������OPP���������������������������-/.'&&�����������E IDAT������������`b`RSR
������������������������<=<���������������������������������������������������AHC�����

 ����������������!!���2.&���
������������������������������BCC���%%$021���������������MNN������������������ACB���������������DFE���������������������/00


?@@���������������III������

���������������������LE=
	

	>>9" �}����������������

!
�������������������������������������������������/0/���������������������������:;;������������,-,���������������������������<==���������������������������444,-,���������������������787����������������������������������������	������� 22'���ÿ�$'(����������������

	��������������������������������>@?���������������9::������������������������������������������676

������������������F IDAT������121���������������������������������,.-������������������������"##���������;<<�������������������������������������	���%%��������������������	
�����	������+,+555CDC  !!!������������BCC=<<*)*������������������

���������PUT!# "%����������
	�
��������
������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������+,+���������������������������������������������������������������������������   ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������((' !!���������������������������������������������������������������������354������������������������021
��������������������������������������������������������������������������������������������������������jhq���������W\\������8;:=IR����������GK����5'������������������������@BA������#%$+,,������������		
@A@���

!!!������������������������������������������������������������<>>�������������$�� IDAT���������������������������������+,+���������������������������������y{z������������������������������������222������������!""�������������������������������������������������������|uz������
���

QVT9;6���������464����������������������

�������
���������������spq���			���'((���usuqqp������YWX������$$$������&'&	

������������			���������������������"##������������������%&%������������333vyx������


���./.���������������������###��������������������������qvnrp������������������VVQt{x

���������

+,&�
�������������"�����������������������������������������������������������������������


�����������---���������,-,���������������������������466���������������������������������


	


���������������/10���		������������������()(�������������
999��������������������

����������������9:6362���������������?CDY``���������������RL:��%�������

���������������������������ust���������������� IDAT���fcd������kmlpsr������QOQ���Z]\������TRS�����������������������(((���?A@���������������..-���#$#���������������yzx_bb��������������455���������ece.--������������������������������ ��������WYTcd_���������Y[V057����
	
���������������
����������������������������������������������������������ljj������}|}VXX������������������������������������������������������ZXX���&''���

	������������������������������xwx������mlnIKJ���###������������������������������L��|���KHQ��������&%	���������#$y}r���>A<
+),12�������"������������������������������������������������������������������������������������������������������������*++���������������������������������������������������������������������������������������������������������������������������������"""���������������������/10VYWFGE������	
��������������������������.-%$&��MK>2;@$(+�
����������������������������t1�� IDAT���121������������������������������������������������ !!  !������������������������UVSwyt�
�����		����
	
��������������nob������������������53+�������2(������������������������������������455������������������������������������+-,...���������������yzvY^\���������('
���
����������
	

	������a^N��>�����;���������������������4."���������������������������rtt���������������?������������&('���;;9tuq��������������������������������������
	������������
	
#">BD7����������������

������������������Z� IDAT���������������������/00������������������������������������������������������������������������������������������������������������������������������������������888����������������������STP
�����������������
�������������������������������������XQBEI:
�7;=������''#��� ���

	
���������������������������������������������������������22.������������

������������������NRQ
70	
�����������������	�������


TWT (.vx������=7.
���)'	�������������������������������������������������������������������������������������������������������������������������

���!�������������������������! �����������������##���-)#~�������������& IDAT #����
��������������������������������������������������������������������������������������&&&��������������-/-

���������������������"##(,- +-#��������	

rwt��������������
��������������������������������������������������������������������������������������������������������������:::���������������


��������������������9;9��	
������������EHF
	��������������������������#$"Y]UXYT��

]`b���������
�(&ͷ����������������������������������������������������������������������������������������
!211������
�������������������
�����������?>9
������������������������������d� IDAT�����������������pusSTJ�&$���12+z~w���������#&����������������������$$%������

 
	�JHG�����E!�������������������+%"
������
����&!DE@�����������������������������������|vyEHF
	
676<>;���	)&%	
	������������������������������������������������������������������������������������������������������������������������������������������������������������������������� ! ���������������������L��| +,'! �!-)#���94*	�����-$93/�Ƽ�����������������������������		
�������	

���00&((%5:6.�����*'
�����������������������:;9
������GIE��� �����0.
���
�����������������������������������������������������������������������������������������������������������������������������������!"!���������������������!%-)U� IDAT/-'&'���SMA������0'!���	GB>���������������hnf���
	���������!���
�

����:7/#&.7;�������������������������������



	������
	���������������������������������������������������������������05^aa	73-c[N���������������
8,!���*%	
#$!#�������������	
����������!WWE��������������������7;=������EIG�����������������	$$
����������������������������������������������������������������������������������������������������������������<=<������������������!#+=B<970(.***&�
����������������������e`VJGI
���srx¾����
	���""�����������
�!"����

�����������jmi������������������
�
����������������������������������������������������������������������������������U�� IDAT&(BGG=70����QPC���	�����������77/�����:6+�����������rjnQTSQVU��
	������������	

�������������

�	���ork����������������"

$����������
���
����������STT���++*ded677������������������������������������������������������������������������������������#$#������������

*-"##'!���50*����

���# ���������������!
	�����,)@>;���������������=A@464774������������������.21122\ZP

���	� ����������MPKݍ�AA=�����������') ���	
����lgU���ƿ����������������DFFDFF���������������������������������������������������������������������������������������������������������������������������������������������������������������������������,.0-)�������		���
���������4.(���?;3��������//(������������������	������������������������'+(

����������**(.+"
���ڵ����������	���GE8�����!������������������������������������������������������������)*)�������������
455������7:� IDAT������-/QNH���������
������%"����
A=1���
	������
&&#$&%�����������������MKT���GIE�����������������BFC����	44*���

���	���
	�������������������������������������������������
,1<73���72/"'$���������������
������������	����!��
��*$ ������cai������
���	
���������	����X[������'& �������	������
���������������������/,-���

���%&&������.0\XT������

�������./*�����,(���������>9�	������������������vsy�����������'*$�������!#!8;3��������������-*&�����"���������������������������������������������������������������������������������������������������121����������������������������yL~ IDAT���������-/.������������������������&(A@?�����	�������.)������


������������0.#�������������
���]a^���������%�����������		����������������������������*++���������������������)+CIH
���"*)#+)"
	��������������������
��
�������������������*+'
������	������(&--'�������/43������%'��������������2)���
������������������������#$#

���������������������������������������������������
QRR


@A@������������������������&('!! ������������L��| #JRR93(gbX�����	(%	($���,%������>5(��&!��� ������������������jrk"!������������}�}������	���������
���
��������������������������������������������������������������������������222���454�����l IDAT���������������������344���<FFfZE.)%��������������������������������������	 ����������������

���������("������CHE������52)�������������	.(��������������������������������BCC���������������������������������������������������������������������?BA&&%VVV������������ ! ������������������.;?vm[�����������������D;3
����������ސ�������""#*+)���������0.&!#��			���������	QQE������]ba���<=5������������'' 44)����6/$���������������������������>??���������������������������������������bdcusuNPO������������������������%%&�������������


������������������������04oeV;9.��������(���A>6���	�������������������	$$"�7,+$ ���������	
���	������*/-����^c^���%+������������6."����������
81(������������fef���tut&('������,��p IDAT���XYY������lml010		������	
''&ID<+%	������������������������)-qka
�����
������ldU
�������������������������onh���
�����������������SVT������01'��������������������
���03�	���&������������������������������}~���%%$cee������������������������������������������������������������������������������������������xzyqpq���>>=fih������������������������������������������������������������
#,-2-)20(��������
GD4���
	�%#����������XZS50#
��������� "�2-"
���������������������PJF���oe[!!��������������������
������������
 265

��������������
	������������������������������������������������������������������������������������������������ced������''&���������������������������������������������������������()(����������������������"'//YQI3,�����;8,����,* ����������)$2.!���[XH���̻�*45������		���50)���22-������������������#**i_\�����
���
��������������)+,��������������)22E;09/!���.&80'�H���RI:������� 	���"
���������������������$%$���688�������������������� IDAT������}����������887���/10������������������������'((������"14`\Q � ������)'64(����������(#������������		02YSK3/&������
��-��������������������"$"�����%!���������������������9>?�����������������
EJG;;7������������`R?9/g�����


	.0&������������������UVVqsr������������������������������������������������������SSS���������<=<XYY]^]	

������������������������������������)*)���������������"47�uf���	
&"������	������������*$���	������
���"%1.-��
20&���

	����"#���ZYI������������������������HLJ$�����
������������!$ �������������TWS\WH�vn[	���-%�
���
	�����
���
���������``_������������������������������������577344���������344������������������������(((�������������	
 04f]R���$'#$#������
������FA2������

������1)�����������������&*)

-,#������

���#�,���ǿ�������,)%~��699����������������������RUS���������������^ZOJME��&"������!C1�����	������'&		����������������������������������������������������%%&


������������� Z5 IDAT���������������������������������������������8;;,,,������������&)]YP!" 
	������	��������
�����������������������������<;9;8,���������������������	
���%"���������������

	������������(43 "��� ���
	)#�������������	

��������������������������������������������������������
���������������������������������������������������������������������������������������������������������������7::���������!! ������������������������SSK84(�������3-"���	=4%������������������067KF4	
���		����������������961���(%"��	������������������������$%gdX
1(������ ����������������$!����������������������������������������������"""������������������������������������������  !������������L��|�	"$GB8@=.		
���

����������x��������������"-052-��������������&%$���������32*���:5+������������������������������������WSI*%OD/���$"��������������$'	*&�������������������Z[Z�Aي IDAT������������������#$#������������������������������������������������KMGQM>���
������
���������������
���������	+$+(&! ���������
	���������;=8XVF���������������',���	���	
/0%����������������������^`_EEE������������777�
������������	������������	)-�����������&$ ������������
320#!���:5/�����
������������������������! +)#����������&(!�������(���>@4������
��������������������������������������������������������GDF���������������������������������������������������������������������������������������������������������"#"���������������������IB>E=1���

	))$������������'(if\
�����������
'$���������������f^R-)$��������������������������"%'6;(:>0AF	
%0./:;��
���:8,%#��������������

���������������������sT IDAT��������������������������������������������������������
j`WG?/��������0-���������������39:>:+���
31'������������NLH
������������������������.2?II�����������k`pv	;:6���	���������qt���������������������	
������������������������������������������/10���##"������������������������������������������������������������������

������������G?.������	�����������������A<4	���
������������������"$]XL�����"������������������
GKK��x�����������aS9$,���������"
�����������������������
���
���������������������������������799���***������������������������������������������������������������������������������
$%$#$!���qn\1-���&&���

��������(/0
���,)&������'#���������������	

 ������������

3/(���������������472phX��������������<A<������
5/(0*���	��@@4�������������������

�����������������r�1 IDAT���������������������������������������������������������������-..���\XY���������������������������������������������������������������������������������������������������$$$�������������������	
���		������������������@FFPSL�������������������
-1VVT
������1.*���)&#������������
 ! ���ѿ���� !%'&		���,/,������=;4�

KB)������796������������������!��������&#���
������������������������������������������URS������������������������khi������������������������������������������������������������������������������������������9:9������������������������-*'f_O������������������!),!"��
������SKA)*$���������9HK2210/)�/+$���������������	!*+tqg���yn]����v��������{ti���
+,"�������G<'*%��80#���

,+$$!��"�����������
	
TJ:�	���������  ���������������������������������������������������


���������oll���������������������������������������������������������������������������������������������������������677�������������������������������!.'!������+35,(%���������@>;WRJ������������
""������3+"������������������')ZWR������������"#	0.,��h`LPLB
OE7=:.��*" � 
GJD��� ����� IDAT���������������������	������!!'<A���������������������������������������������������������������������������������������������������������������z{{������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������12/% ���"�����������),`ZI���##���
������"$ -/<::������"!���������������
HC@�������964�¿130��O������������������D<(���'0-ν����##	�������������������	

������-0,�'.������������hcU��������������������������������������"##z}|}|}������������������������������������������>@?������������������
+,+���������������������������������
���������"$#))���������
���������������������'*LUWMGD/)!�����.0*��������������&)(7<������*"-%=4-_ZL�

	
41)+12�������������������#"����2,%		
GF=
�����������		������!3+!<@=��������"!!������$!�"DG@
���������������������������������������������������������������������������jml������������������������������������������������������������������������������������������������������������������������������������������������������676������������������������L��|

������;9,	�����	")*ldT�����	�������������������� 257@BC>5%#�������������������������H�#T IDAT.24EJR_aig`~ys

)02
�����-%������&)OJDkg]892<6%		������������������)
355���	�������������������������������
������
H>0ME4HB2	������������������������������������������������������������������������������������MPO������������������������������������������������������������������������������������������qpq������������������������������������������������������������������������������������������������@8.�uc,&$*&���	� .*'���32(��1*$���������PYY`^[)% ������

	���+&������������#25X\Y�uh���LE?���
`\U$������
�	�����lup`J@3)!���������-$���������������
		360
����������������		32/������"������LJ<8.
���������������������������������=?>���,,,������������������kij��������������������������������������������!><3?;,������������
<@>���61&�����������������������2,('"������  ��������	
�������������mrm{xp������
�������,(#'&*(!	������������''(
" �����������������������	
�����	
588�'$	������������������@;-#"�����������������
$(#��.'���������������������������������������������������������������������������������������������������������������������,--���;<;������������������������������������MKL���������ZXY���������������������������������133����������������

������������
VN=0/&��������������
('"������������#&.2LHD
���'(## 
���
��������
������q IDAT������	/2IXZ/3`^XWSH���GC?:;9������MA4���������������" ���������OIA�������������������������������������+$�����0/,����������;1&��������


�
���������82(!,+�����/,%����������������������zxy������������������������#$$���BCB���������������������������������������������������635�����������DBC:89��������������������������������������������������������������������������������������������������)&!!�������
!$#���[[O���*HD:*'������������������8<=01-
������,)0+ ��
	���
������������������ TVS���&#;0&���������)+)a\N���UOA�����������������������"+)��������.,"����"��������������	������	�>9.���80������=>6�����	���95)������.1(��������.$���
0*!������.*%��������������������������������������������������������������������*++iji���������^\]������������������������������������������������������������������������������������������������������������������������������������������"%#

	����	�������	����
������������2<?FA:���������	�������������("��������� "F>9���������sle���4*��������;4-�����������������������$'"�%
������������������6

	�!	��������������#'	�����������������==1�������������
������		<:-������������������������<<<rssLMK������������������������������������������|yzSVU���������������������dab���������������������������������������������==<������������������������������������������������������������������

������������������������		
������0-*�������{�o IDAT�rkI����������."���������.8:WOG������,) ���GC:��������������������&(%''���,-+2!*9;9	
G?4���94/������.)$��������������62*
����������������������	
������-,#�����	A>2
����	���#$"*������		������+"%* �����������
������������355355���������������������ede
IKJ������������������adcadc���������������������������������XTJ���������&	������	
	���
���	! ���������!CHId^P���������32)���	
	����$"���������%02soj������leZ.(���	���YPI������=93���������������������,2.������
���,*!�������������������

��������������6/��� ���

������760�������
����� ���������������������������������������������������ZXX���UWV���������URS���������������		��
���������������������������������������������������������������������������


���������������������������566���������������������������F>,���������

261
((&���((�����������������(/1+%#������87+��--+��  ���������)&!���������(*��{���UL?��%)"������

�*(#*(��	������
����

%!!���	
������������������	<93������������������
����������������������� ���������SH9��������������������������������������������������������������ecd���dgf������������������DBD���������������������������������������������������������������������������
�������������������������������������������������������*�� IDAT������
#$��/-���������0.*�������<5(���-'' ������-58"! 
���������.&���	�����������������|p&("�	"���(:;6���������
�����
���F=2������	
�,* ���'%���
	������������� " ����������386������������

�	��
���������.+$�
����
����������
=A9�����������������������rqr���wzy"$$���]\]������������*+*���������������������������������������������������������%&&���������������������������������������������������������������)&������������30*&%$##%OG:�����
��������$''59/.+,)$4/%����������������������������!62+���������BDB'+(����������/0/
���


������
������ !	.(������		,*"������
	40(���������
������TI@������)' 	���������
730'+$$	���������,*$���������#(!��������������51)���
���������������������������������������������������������������������JLKEEE���������������������������������������������������������������������������������%" '$qdQ1/-		��������������������
 37VYY\TONH='%����971"!������������������=A?XTP�		���Zl����������������0'&���������
���������YZS������������������������������������
shW ���������# ����������
���������02-��������������4.&������QJ:������	������������������������������������������������������������������������������������������������pmn���������������������������qsq����������������������������������������������������������������������������������������������������������������������������������������������������������u; IDAT������������������������������������L��|������42&����3.
���(*',*$61&`ZD������
& ��������������'79?LLFFEZRD	�������������
//)���
�������������		)/.�}q������������NLD������er����������(&��
1/%����������������������������''!OLA������������������������

������<83 !���������������������

$!���6/($$���
������471��.0#���������������������������������������jgh������������9::'&&���������������������������������������������������������������������������������������������������������������������������������������������������������FC8�������%..�����,)&����')!���
������������PNI��	�����;<2������
��������
���������.54�������##�|o���

���������IF@*((��A92#"��������� �������������	'%&

���	������
����������!*-���������$"���������5/+GH> ���������590������		$$#�
)&�����*"��������!�
���������������������������������������������������������������������������������VWV������������������������������������������������������������������������������������������������������������������������TVU���������������������144�����*#;9-���jaMu�������!""%#�����E@0���	������ú�
//- $�������������������			���$# ���������������*'' !���1*&������
_YR	���
�!E>0���������+% �s����� %%$��	������������55/���
"������!��	���������%! =:9����+!������ 	���-(���'������G?1
���		���*&�����������*0-������90���������������������������������������������������������YUW������������������GJI�������������������������������������������������������������������������������������������������������������������������<�p IDAT������������������������������������������������������/.&������d`M��}g�h_M�������"#!"2/'�����

���PK@����������2;:�	D=5"��������870���������������������������������

   # !34/������##!"%��1/������%!�������������	������	

����������!�
�������������������43.TI6���������������GS���������������������������!'"�������
���������"'*������������������������������������������OKL���%&&���


������������������������������������������������������������������������������������LLH
���LF3	�..**+*������������������JH= !���������)&$AA9�������������������
���*'���:/ ������������������!! (&!���	SPJ	
������������������������v>:������.,%��	����&
���������������
���������'&#

������)$ ���������������KVQ3+���������+'!*20����!
�����������&' ������������������������zxz������������TQS���'((���������������������������������������������������������������������������������������������������������������������������������133������������������������������sj\�����G@%!keY��"�����ocN���
���FB<,&$54%���
������������

�������	
		��������}��������NUT�����[SD�����		��RNF������
!*,+
��������������������DA;���%&#���jbT �����������BA;���������:7/��������������9:8�����GE7���%���������!�������	������������������5-'�5+!���

	
���'!���gZJ������������������������������wtu������������������QMO���455������'''��������������������������������������������������������������:< IDAT���������������pnn������������������������������������������������022������������������������������[TJ���-/&������4.(((��� ��������������������������-) �����������������


�����������������������AB@���5/(&!&#�������� �������
����DB@������������
	���������������
���(%"NLI
��������������		���@@:������'!��������������<=2��������

���������������<?8������(!���������


!(!		
	�������
������AJ<����������������������������vst���������SPQ���9::
���������������������������������������������������ZWW���������������������������������������������������������������?5'65(������-* ���������
���")&������		��������	������" ��	%"���	����������������
��$"4/+�����
55.$'$
�����������EGB�����������������������


()')-'
JC8
���������
 ��������
@>3������<95������	" &		!$���	b]M���������!����("�������������1+"������*(
����*" ������II=�������������������������������������������������������������������������������TQS������������������������������������������������������������������������������������������������������	-1+������% ������������	
���/&�����41(���������('������		

�����)%���������������	!;95���»����5/'����������.*!
���	
���������������KJD���
	��
������������������������&!��������������������	�	31-���������WWF
���	��EII���51.���4.$������G?5������������RVO
� ������(&"������������	�����������1=<����������������������������ecdKMM����������������������������������������������릲 IDAT���������������������������������������������������������������������������������������������������������z��aVJ(&!����������������������.���**%
	���������������������������������������		!-,**'$>=6>7-��������
	�����=7/)#�����������������	����������>?9���3+���'�����������������

�����	����������������	
���
		
�����$&*'%�������������H���������������������SKB�������������	ROA����A=2����* ���
	������;6.����68.v�����������qmn������VXW���&''���������������hfg��>@?�������������������������������������������������������������������HDF������������������������������������������������������)**������������������������E>8GF=����(�������4/!���D=,������
���������������dZN���������������

*,YRN4.'�������������
�������������������������������	
&&%	NI?�����������������������'' ����������,$������������ :92	���
		8:3�������771
������1-(
*%������NF>��	���

	�����11)���������VUD
�	������
%01���
%
������������������������������������!!!���������������YWW���$%%������������������������������������������������������������������������577���������������������������������������)**������������������������������x������ ���������������� �������� �������G?6@5+���������������.99��u85-�������������������� �����������������������������������������������**&����������������

RPD����������������������
���	
����!&$������������
���
������
�������
� $��������@A>�����=<4���������� ����	
RQJ76(��������� ������mjk����ߞ� IDAT������������������������������L��|���������������)+*"!�����
	�������#!
)#�����������
������		������������mfY���FA4,)�����'% ������������64+��������.(������!������

���a]U���#���TVO��������� ����������������
���451�������������������	
 ������86.���������������'"������!!������������okX���	����

��42*]bQ�����'�����������������������������������HKJ������������������������������������������������������������������������������022������

���������������������������������������������������������������������*���
	�������������(%&������������)#������������������
&+)�����������		��:83�������5/*���������?<3������+('		
���������������������10(���������������nj_�����������������
���#���������YTM����������573($���������
���������������������	��

`[H1%.50����������������������
������������������������HKJ������������������������������������������������������������������������������	���������������������������������������������		������������������������*&�����
	�����������������������������	
>81
			�����	������������������72+82'������

�	����������������B>:����'"���������		�����������������	���������	������$& ������
&$ %%���
���!$&���������
���#%���30&������RVK����������������=7'��Lu[���������450���������������556�������������h46 IDAT������������������������������������������������������������������������

������������������	

�������������������������
 �������������
-'!"��������
	������#"�������B<5������&!����������
������������
%""�
���������������d^V�:6.������-(#2*%������')*���!!���� " �������������

"4:/�����!*(!���leV���������6.(14,�������
 ���),&����/'!QRI������������8.!������"&
������������������������������

������������������������B??���iji������������������������:::��������TQS���BCB������������������8:9	�������������������������&%!���@;/���
�������	961��������52,+'&\YM�������"!���������	
##!85-���/(�����#"���������420���������9:5	��3$��������
������������PMC	72+���������#
#������

" ������.)������5#��91*��3�»���ILF���
		��������		��
@;'������$#�����������������������������$&&������������������������������������������������������������������������������������������������������������������������������������������8:9���������������
���!?;/����������������

($���	������������������������jr����	
����
�������

��������������������	1,!(("���
���#& *&)"
���'�������	���
���������]\R�������44(�����(%!/.!+3.AIB

& )42����� ����������������� �������>)���������������#%%�������L�E IDAT���������������������������������������������������������������&'&���������������������������������������"#"���	���81 	���������
20&������������������������������������������

���
("62,XQH������RMH,+(

83)���
������
�����������
����������72-����,#8.!	
������	����������
���STF������%& 
����
�����������E:-#'fj`���������������K@-		������������=1#%"���������������������������������������������������������������������������������������������������������������������������������������������������������!
	���������0-!
���
�������������������������������)(!������
A=2
������������1*"RI:�������96/

1/-���������664���fcX
���;:/	���587���������������40,��������<<6&#JC2
�������QHE�������������������������}Q]^z~qEH9���������������������5+21#%%���������)&
���������������������������&&&���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������GB1�������������������	2,"��(#�����������������&OKD������#+*<<:	�����������""
����������������\[O���
������������������0/'������.%����������������������%"A8-��������#%��������*":@8�����������������.)QE1(& -(meQ482���	
���A8*��������������������������������������������������|� IDAT���������������������('(���������C?6���������������
��	��������������������������;6+����	71+

	������������.)$		�����������" ���?:0	\`U������������


�����������������$!


%������������	������AC;���/.'
������������������������%$#

�����������������������&.)�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	
	���981	������������������������	������	#*)��u������"������������
��35.���������	���������,-&
���
���/21���/)�����

������RN@�����������&%�����������5=7$���}�� 
������	���������230����������������������K�������*,)���[YF������������������������243���������������������������������������������������������������������������������������������������������������������Y[Z������������������("������>;+������##��������		64*'%�����	-,&����������������
,*)

������������������������
���0.*������
.+*+'!����������	

������
���
	
���
	���������
������*#43(�����������������������������	
�����������>8.,(���������������������������q�����+&(]�� IDAT)ZQ9""������������������


���������������������������454���������������L��|$#���B@1���
��������$ ������/+#������������������������30+���
�����������95*�����������������
@?3���������YVK������
������%$!'(#�������
������������# �������<7N���:A?���

	��������0&������^N9
Y>������)' ���������������33-((%������������������3������������������������������������������������������������������������������������


�����������������������������	���������������
�����������������������������	A:5������	
���������

EB>������.'86.���	������	--)������A9.�����������������������������������������������.0-�������-$=?9	
=:6��691��5+������������NH3	,#
������fn�����������������������������������������������������������������������������������������������������������������������132������������������������������������������������������������������������������	���		B>8((!���'% ������������������
:95XQF����������������������������������
���631������������GB;���������!


--&������Z IDAT�������������*$ ���������STB
���]d`#&(01
	������������������	
��88/wyc
������������������������������������������������������������������������������������������������������������������������

������������������������������������������������	
22&0-!

��������������
)'&#"���	
���
������)% ��������"!���
������������������!


���������
974������'&���5/&���������((#(&!	
%$"���"_ZO������,+"4-���

73'������������B8'����������������������������������������	*$,+!��������������������������������������������������776���������������������������������������������������������������������������������������������
������������������������������������������������������������-,"����%!���
	���
�����������	�������
.)$ ���		""! ���������
���!891����������������� ���������������//&���������������	
	EF?������
������������������������77,(-$������������������������������������ss�������������������������������������++*��������		�������������������$#�����������������������������������
����������
		���������a�{ IDAT������	3(���������$$!����������������������LJE�������

����������NKG/00���������������������������������������G@/	
!!A>72>=���F;.����������������om{�������}�ż����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������:9/���lbO��
����������������



+'�������������������242<<3E?2����������71+������

������������?;3���������?B:�������������8B>3���������������

VJ?����
�����������8;4���������Z]$
	21(������2/!:4$�����G<&�����������������V`x���������������������00���'('


��������������������������������������������������������������������������������������������������������� !!������������������������73$
���$ $!���*&���?92ncR1-	/-"��
���
������
750������������*'"���"#��������������LG?
c^W����""
[VJ��������-*#������=4/�������������������������������
���������	�������HB2	

�������������������������������������
������������������������������������������������+++��������������������������������������
	���������	2.	I�e IDAT����� !����������������������,(%($���������	�������!=7*���������������


����������������CD?������
���������������������RLE
�����	,%����������**&�������������	&$@=-		��������������������������������������%%$������������������������������������������������������

���
CA4������PH3����������������������HD7���74*��������++(������������XSJ(&���� ����
83.WVO���13/���	je[���������&!��.)&������#?;4

	������  ������ ������������������������ſ����������������������������������������


���������������������������������������������������������������������������������������������������������������,/.����������������������������������������������������������������������)%$���-%���"#������% ������������$#������D@2���������������
71&��������"������
		������������!# "#���+,)�����������372�;4)
���
���daU������	*($���&(&������
����������������������&*$

����
��������E5#|��������������������������������+,,���wvw�������������������������������������������������������������������������������������������������������������� IDAT	�>9,������	
	�����������������������������"�������??8������������	73.
���������������
TQJ371+-+
���
����		�����
�������

��������5/%�����������������$'���I@5
������������������������������������������:;:������)**9;;���������������������������������������������������������������������������������������������������������������������L��|�\SG-+��������������������


���63($#���������
	���������	
!"!������������40-VUD$#���������%����������*&"
DB8	���# ���))%


)12���	����������#��������72+GGD<@@+01	���������������$�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������%%%���������������������������������������������������������������������������������
�����B?8		,(!������������('#
������1.'���&%������������������


������+%�������������
���
"
���������!&*������WXU�����������*//��)*#���@:0���ҳ�zi������)%���������!!������0+$������������������SRK������"# ����������������������������������������������������������������������������������������}B� IDAT�<?>������������������52&���:7(,)�
��

�����0,"31)�������! ���������
10+���-)%������������41'���������������	:9713.�������10*<:0������QLC !���������������HB8���
������,*'��������������)��������������� ������������������������������677			�������������������������������������������������������������������������������������������������������������������������������������C=0���������#!���
������

	
�����������(���������1/)��������	75-���������#�������������������
	���@@6:80���
�����%���+*(M����	

..+���
������+M>���	�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	������������	
���	�

A;+������������! ������������
$)&������

)'! !	&��	! *#
�����������������������!.+"���������!�����

������������������;8*!������23/��������������������


,,+������������������������������/00���p�L9 IDAT��������������������
e]K:8,����������

ID<.-%�������
&#.*#-,$�����<6-���������������������	$:4'��05,		���>85DD@��������������������������!�������������������
���������������������

�������2.'��������������������������������������������������������������������������������������������������������������������������� ����������������������	)&������
����������������
		���������%&���������������0* ���	
������'%#%% +*#�
�����

���*+&
)/,���
��������������������������
���	�&'!�������%=6C������+#������������������������������������������������������������������������������������������������������

�����������������������������������������������3.$������
���!!		85-/-' 52$���������������
������!$"�������������������������������������,*'�������������(%������������������������������������������������RVG�����������������{��knzº����������������������!!!��������������������������������������������������������"#"�������������������1� IDAT������������������������������������������������������ !����������	���		���	 5.!��������31)������������	������������������rlY������E;-�������	
%'%)-'���������6/%	�����0.$��
�������������������������!���� "!sz����������������������������������������������������)**���������������������  ����������������������������������������������������,,,

���������������������������������������������������������OI4)"������	���������	!2431+
�������������
���������" ��	62*�������3,$�����		���&)$����+%���	'&���������	���������#������������������SB6���&)#���������������������������������������������������
������������������9;:������������������A;)���������������3,SM@���		��������������������
(*&45*==,������������&#((!���
	������# "
!$%:97���������40'������
�	
���
	�������������������������hs����������uw������������������������������������������������������
���������������������$$$@BA���������������������������������������������������344_�6� IDAT@A@���������������������������������������������'''�����������������������������������������������������������*&�����������������" ���MH<!&%aZK��������������������������
31.�������������������*%5, ���������)//%'&QPG���	������������)!		������������&$%'#���������������������
	����������������������������! ������������������������--,122���������������������������������������OPO***�������������������������������������������������������������������L��|������

��*'KH>������������-/*PI;'( ���	
	���������

���������  ���������������		������	",'!gbW���541VVM�������HE<	���������������	LK>���02.������������������������������������������(((������acb&&%232���������������������������355...111'))���������������������������
���������������������������������������������
���%3-$

	!(%==5������
# ���������������
���������������������		!�������"72)sp^���������bVJ������������"�?<2:3%74+��������������������������������������������� !!��������������355bcbghh����������J,� IDAT���������wyw

	}~���������������������

������������������a_G������������	���qm]
������������#������

����������������������������B=1������VLC#�����������8:7���������GF7��������������������������������������������������		
�������������������������		
fgfgji���������������������������������������������������QSSzxz�������CED���������������������������())������������������������������������������������12'95)������OI7������������������
UVN54,�����	���
##�����������+&#.,!���������$#���������������

���_VD	
�������
$#���|����������������?A<���������ROE������	���������������������������������������������VST���������������������
y|{`ba���������������������������������������"##���������QSS=??�����������������������������������������������������������������������������������SPE�����!���-&�����'# ������
+31i`P���������%$���75(������*%"
���������������������������������-,!���1.'������������9/#	���(�������������������������������������������			�����������������������;>=���������������������

������������������������f� IDAT���������������������������������!""������������������������������������������������������������������������������	����������34)���
����� D?8���02"�����1-"/.$���������������������������������
��� ������54+���������������������������RPI�����������������010?@?875��������������������������������		���������������������������

���������������������������������������������������������������������������������<>>������������������������������������������������9::����������������������������������������������������"���JI7�������������� 	
�������	DA=
$%�������������		
�����&$���
=8345(������������������������������������������������������������

(((565BA@00.��������ppl�������������������')(
������������������#$$������������������������������������������������������������������������������������������

������caU���������������##@?=MK<G@1���������2&44*���
	��������������


���������	��� #�������������������������545AB@442	
	��������WUT������������������?	

! �����������������~� IDAT���������8::���������������������������������������������������������������������������������������������������			������)))���������������������������������������������'(&������_[J������&!71&:1
����������zjKK>��������������E@�>?;�����������������=9-������������CB>
	;8+������=;3������������---:::;;9--*

��������!  ���������������������������������������������acc������������������������������������������������������������������������������������������������������������������

������������������������������������������������������ �����������������	#"������������������BC?73*
	����������������
	..'��������0,&���������������($ ��������������OB5������������::9>?<321����������������������������(''���������333������������������������������������������������>@@���������������������������������������.0/���������������������������������������������������351
���	
����������IE8���GD�|h���������,-+$# �������������������������A?,������<7,���������������������2.-&"������80)A>5������������342<::997&&$������������������������������������������d� IDAT������������������������������������������344������������������������������������������������������?AA���������������������������������������211����������������������������IH9��������2/$��
+,!��44.��
*1.IMB���,)"���������siT������

LG=���������+)(���A;1
�������������������������������������$$#??><<:-,+����������������������������������������������������������������������455������������������������������������������������������������������������������������������������������������������������������������������������������������L��|��������QF������������������������������dcU���XTK���50'������������21,���������" ���

�������
! 3-"����������������������������:<:<<;864����������������������������������������������������������������������������---


������������������������mpo


���������������������������������������������899������������������������������������������uw������������������������������������������������������

����)'"������54-���������
���88.���$% �������������
������
	������
���'&���#"������())@?>?><''&
�������������������������������������������������������������������e IDAT������������������������		���������������������������DFF���������������������������������������������������������������555������������������������������������������)))������������������������������������������12+���������0.'��������"!z{h������������^ZN������������
�������	������������+)������������<<;?><320������������������������������������������������������������������������������������������,,,������������������@BB���������������prq'((�����������������������������������������������rvi����������{c$��������eaP2/'>=2��� �+���
�������������������� 
���������������--,??>@?=%%#
	����������������������������������������������������������������������������������������������������������[[[GJI���������������������������������������������������������������������������������������������������������%&%���������������������������������������������������MQH# UNA���$$�
���������������&# ����������	
�������
��$#���������������"!!=><@A?1/.�������������������������������������������������Pk IDAT��������������������������������������adc���������������������������������|{{243������������������������������������������������������OPONPP���������������������������������������		���������������������������������������������������XTK-+$@>/������44/���������������$!ME5�����������


���'*$
���
	85*$!�����������--,CB@=<;''&����������������������������������������������������������������������������99:������������pmn���������dbc���������������������}~/00  ���������������������������|{|���������$&&����������������������������������������������������� <=6BE;

������ !����������������������>7)��������������! DDB>><0.-�������������������������������������������������������������������������������������������

���������������'((y|{������okl���������������������b`a������������a__������������--,�������������������������
%%!		���������������������#$ .-&��������
=82�#������������ IDAT0/.EDC==;%%#����������������������������������������������������������������������������������������������������� "!������������������������������������������������������rpq�����������������������������������FCC���566���������������������a_a������������gji�����������������������������������������������������������������������������������
�20!���������������ZXWLLK$%"��������������������������������������������������������������������������������������������������������������������������������{|{ILK


������������������������������������LIKnpncdd���������������������������������������!"!��������������������������������������������KJC�����������;7#���������������//.VVS������+,'��������������������������������������������������������������������������������������������������������576���������������������YXY##"NNN455��������������������������������������������������������~����FFF565#$%

###��������������������������������������������������������������������������������������������������������b IDATw~x���������"!����<7'��������������jigLKK	
430�����������������������������������������������������������������������������������������������	
�������������������
	

���������

��������������������

		
������������������������������			

��������������������

������&'*!
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������L��|-2/LKD������!������
������
��������������������
���������������������������������������������������������+�� IDAT$#"�����������97.���������������������BB������������������������������������������������������������
���
���>?8������9�,��������������������������������������������������������������������><632+		
51-�& ������������332����������������������������������������4� IDAT/10&&"0+���%!
��������������!! ����������������������������	'$������'&��������������������UTS ���������������
���������������
������������������_x�M IDATEKH.1/
���0,!����
����������������		���	F@/������	

���������OKE���������
 ND:�������T\{ IDAT	
.//��������	('		
�����������������
/+'


���������������L��|=;4
�������������	�����������R IDAT120���	
 ������
������������00.����������GB7������	
(& ��������� �������j�� IDAT?=;05,90%������������AA<
FC5��������.)!������"%RPJ<=3���!PM=\c}������%)((*%������������!���������KLECD=����������-32�WYR���������������\TG�������m IDATLMF$$"���#"������POC��������!!65/����������jbS�����������

	
���=@8BB=	��� ���������������

#	
";92()#�������	,*������������L�,E IDAT&'!

��
��������������JOH���0,		����������������
������������������������0,%���	`bX&)*��������
������94+������L��|����������������	--%>C<���360LME�"
������������������s�� IDAT������#���������B?0���!�������\]U	
�������D?2����������������������74.���������������>A<LPJ���>A8������������������������������! %%������)&���������?EBXZ3����������
:/%���������j�� IDAT���������	����������*)%���� ���������������&"�������������������

��� ������CC?GH<
	������������������������������������#$���+&!"" ������

	*,+���00.882������#"��������ž���������v IDAT�bg]���PO@���%$���������2.(���#"	
	������uuc������������
���������}�������ihQ)(�+'�����CC8�%#�32'�����������23(�����������}��������<<4�������������	��82#������������������^UF���������\ IDAT�}�������������������������
	��������
������YP;�������������NSG��������		//)���20$�����;;.������������������L��|�rr_��	���+*%�

����������������������hq IDAT��	
���#)"������������������������������������"\�C IDAT�����������]P� IDAT�
� IDAT�n| IDATL��|��� IDAT�^�� IDAT!X� IDAT�^' IDAT� ,�)����IDAT?:�ݫ��IEND�B`�css/acytooltip.css000060400000001471152455614210010241 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

.acymailingtooltip {
	cursor: pointer;
}

.acymailingtooltiptext{
    text-align: left;
	visibility: hidden;
	position: fixed;
	z-index: 10000;
	padding: 4px 8px;
	max-width: 250px;
	background-color: hsla(0, 0%, 20%, 0.9);
	color: #fff;
	font-size: 12px;
	font-weight: normal;
	text-transform: none;
}

th .acymailingtooltiptext{
	text-align: center;
	white-space: normal;
}

.acymailingtooltip:hover .acymailingtooltiptext{
	visibility: visible;
	transform: translateY(-12px);
	transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
}
css/fonts/index.html000060400000000054152455614210010462 0ustar00<html><body bgcolor="#FFFFFF"></body></html>css/fonts/icomoon.ttf000060400000033474152455614210010663 0ustar00�0OS/2H�`cmap�͹L�gasp�glyf�� ��1�head皨3X6hheaB�3�$hmtx��3�(loca�˾4��maxpX:5t name�J	�5��post7 ��������3	@�"���@�@ p Z���5�����"���� Z��������������;<5,?'��797979���!!!!!!������@�@�V�U2#!4763V""���"U"�"�"
 ��!�FYb��������%46753#5.5:34&#">7'3<546323<54&'&674&'5#35>5*#4632.'7#<54&#"#<54676&'#"!54&"4327"432!"3!2654&!"43!2#7!"43!2'!"43!2o	LL	>	[/"!0n#&?'66!'�
	MM	
>
[0"!0n$&>&66 '�u/D[C�S`��#22#]#115��O��R��N�HD

pt�"//"OLONB	/,$�+�}HD

pt�"//-LONB	/,$�+TD/BB/D�6666*2#��#22##2�v66�66M66*����)[k{����'7.5467>07.1.#"&'7.1:3>54&'0.'1#"&'0&'3267.5463332654&'1*#">7>7.#">7>74&53265#"&'.5467067'1:32326?'1465&0>1607>54&'#"&53267.'.'3*#>54&#4&#">5'3267.'.'!
5`#a0I4�_$L>(9&<J$^$J<&

aA$%I4(E/3IA/4I(��E03I8*224IV

_4I%$A�^%K=(B0a$'>K%`$K>'5
_4I��/AI3/E((I4I30F2*8�I320
	^#	3I%$A�]$K>(��%A&=J$^$K<'
]
3I.	,=I40GI3
	.7.>I4-C	(	(I3��
^A%I3
�_$K='3	#'>K#_$K='	
^A$%I3��G04I=,	..	
3I&4I>.(	C-	3I(E�:62"/&4762�


�

�

�:

��

�_�U"'.?62"/Q


�

�

�_



�

�



���1###.'.+#"!'.+7#"3!26?6&'�̚�O
Z��*��*��Z
P&D&f4��N	T
�__�
T	#��#��233	3.'.+#"!'.+7#"3!26?6&'�̚���DO
Z��*��*��Z
P&D&f4���N	T
�__�
T	#��#3f!"&7>6?>67>3��
H	�	p
f��
&
	D
�
	k	�/�p
 1>&'7'.4&#'"7'&676&''.7>�+
B
��N�]	�*	(qg��\)	��	
[)
G	
��	)
	
(
�
O*���A�*	(�#�\	
���f1/

��(
/	
})	��
	
(
	)	f����#'+3;CGK!"3!35#535##!34&#35#"35#35#;5##354&#326=#35#35#3�gffff�3f�f3�gggg�3f�3g33ggggg���fffgg���3g�gfg�ff3�g3�33f�g��f8�i&10>7>''�<Ia�ږ�8Sw�/# ^��7i!#.�wS8�{��bI<d���=
��	.170&.'.'?01�7J�o4���hS
:&&P7�o�4�I�C

T&':3�.#7676ɳ�h��\g�_��j�����GH=���"|7�[X���-!7.#"3267>7#".54>327���7�MM�76::67�MM�7	`#Vbl:j��PP��j5d\R#�@�6::67�MM�76::6	T(A-P��jj��P'7#�f��2"132650>=4.#".54>32^�j:`t`@&&@`t`:j�^EsT..TsEEsT..Ts�+7fdkS��3Skdf7+��


	 q����%1.?>?67>'&'.7>�
:Ug77aD!
��N
iGzM7N/
	�A++8g++�9]>

4Nc9E�u"
e
�
�B^q9N-% 4-- l�}	 ?7'&%./3267%>'.%676&'&'.3267#F5d!���	$59#

&��%
&�		��

g�S!��	S��'
�
r&�����%

3��f
*8FT!"3!2654&!"3!2654&!2654&#!"3#";2654&#";2654&#";2654&��		)

R�p		�		�[�		�p		�\		\		\		\		\		\		�����f�%.#54.#"#"3!26?>54&#+54632)\3M33M3f>:(:>(��8..83{8W=  =W8{(�p'		'�(�7997lG�a3%'>54.#"32672?6&'4>32#".5��5ZvBAtV14ZvB,P$�)0�K"<P-.S?%"<P--S?&��$T-AwY52UtABwY5�0"p-P;#&?S-.P;#&?S.3��>3267>7>#!"#"&'.'&13!2650<54&Q	w�r	

	r�w	#��#{y�u



u�x#4#�@I>>I@
88{?I==I?v�r##r�vQ��5H.7>167>7>'.'.'&6767>.'.'.676rKMF*9��$R# /
(	 I
%#	^wP9 #'39&38/eGxU'
^��T^#"5#	[

O 
%."
Mp�G��8S77fO1>Y7n�
f��!15#3#3%#35!5!35#!!'!!'#3!"3!2654&!!���������ggg�f����gg�4�I��f�g33����33g3f3�3�3��3���2W�F/990>769067>76&7>1'�����
>E7s�Ұ
�|K]Q.6-��
/4*�Fcub.�����)1,	���
�	*/&T�-15;26=4675+";2;#"3535#3
9.-K6j�
 xx 
�7^^7�����M

M%Vl
4EP'�a
�

bfBgg�ff�-@37'#"+32>7>3>7>7.+32#"&';7'/��/Gq]N# =AJ,kkGq]N# =AI-� 3~Rkk3R%/6V'%4�V/��v���{/L^.*K9"�0K^/*K9!Z*0>�,$�1(
03D{�Βf3!55!5'!!7���3���f��f��M�g�g�����)"32>54.#".54>31%f��NN��ff��NN��fQ�j==j�Q\=j��M��ff��NN��ff��M��=i�QP�j=�{�(W/Q�i=
��5Fkv667>7>'.'&>#.&07>7647&"?>'%&'&67>76&7>67>'6?'�#A(G
#EgSw
1m)#B$I�	1	�\6#		0*,#	
x+EFT:>J��1�M��l .A
-K6F (
I.@�*	��	5$ ,>>/0X+HPP('#s�E0�X�3��3,<"32654&!"3!26=4&!"3!26=4&#!"3!26=4&f*<<*+<<���3��3��33<*+<<+*<33

3�3

3�3

3���9m4.'.5467674&10676&'.7&1061!045.5467674&10676&#"10630454&'3'>O)R>% 	/J'VF.'	 %&RR=3�,'-II-
(5MG9�.,B4)#H@&FB>k
'F!O>BF&@=#$rR(/)-*([[(*-).&7I0g&>���S2!.54>>5#53.'#53.'.'#5.#"#53#3#333>j��P&Fa;�;aF&P���-ZUj@#R-@  @-R#@jUZ-	�%6%�	�P��jH�s^!!^s�Hj��P��CJO)@"@@	#2FUUF2#	@@"@)OJC�?�_&276&'%&"%'#"&'%276&'�*�	
�) �)
	���))��
	�*�	
{����(?��@��C�gK(%"&/&676>#*1�
�;x/:��	g�;��
:��!��� %"/"'&4?'&4762762�3��3��3��3�����2��3��3��2�`m:(3>IT."267>4&'.467>2"&%64'7'&"'>2.467727"&'\H���GHHHHH���HHHHH��"##"#WZW#"##"#WZW�%%[[M2E�E2.dfd.��[%%[�2E�E2.dfd.(HHHHH���HHHHHH���H��#WZW"#""#"WZW#"##5E�E1-dfd.1[%%[�1E�F1.dfd-��[%%[��3 +#"&=#"&546;54632323	��		��	��		��

�{����2E32>7#".''.+"32>=4&''##067>;21#�8*Jg>>gJ*9!OX]..]XO �,
^
,c�=j�QQ�j=�c87f7Wc	
h
	cWa��	"!!"	/11N!	4''4	!N�DDu		u���#35%7'7 ``���'i�``��@�@�``����'���``@@�@�#'!!!";!32654&"&54632!!����&&��&&��%%%%%�����@&��&�&@&�%%%%�@@"���!"27>54&"&54632��0�$�(���(88((88��$(�d�0���8((88((8���0<��%7'./#'737>77'>?5'.'"&546325'.'7'.'7'.'7'./#'''77737>77'>77'>77'>?"&54632l)-:	@	:-)FF)-:	@	:-)FF�%%%%C9C'.8
;%@%;
8.'C9CC9C'.8
;%@%;
8.'C9C��:QQ::QQ�:-)FF)-:	@	:-)FF)-:	@	�%%%%�@%;
8.'C9CC9C'.8
;%@%;
8.'C9CC9C'.8
;%kQ::QQ::Q@����";W>54&'!!>54.'4>75.51!.=467>7!!.�4U=!��!=U44U=!z!=U4��9S66S9�9S66S9�661�f1666M�M�!^s�H  H�s^!!^s�H  H�s^!�@FhMdMhFFhMdMhF"G@G3 2G@GxKLw @�%+2#5267>54&'.#"33>!3�]�zFFz�]G�225522�GG�2&2	���Nv����Fz�]]�zF`522�GG�22552&_4�Q�g;���@�@����'7EK"32>54.".54>32>54&#"1%.#">#!5]�zFFz�]]�zFFz�]K�a99a�KK�a99a�\
pP.P2[QE��P.Pp
EQ[�@@Fz�]]�zFFz�]]�zF��9a�KK�a99a�KK�a9�0Pp)"
'6E(�")pP0(E6'���@@����"06!4&#"!"3!2654&%2#"&546!33!26=3'7%���K55K��

@
�S%%%%���
�
��@�:�:@5KK5
��

@
@%%%%��`

`�e�:r�:���(4A.#"32>7>54.'>32467#".5j$T\c33c\T$$8&&8$$T\c33c\T$$8&&8$&!��/q>O�i<�&!/q>O�i<*$8&&8$$T\c33c\T$$8&&8$$T\c33c\T$��>q/!&<i�O>q/��!&<i�O���2.#"34>32!#".'7!732>5z#U`j8j��P`Aq�V.WOE�`�&Aq�V.WOE����#U`j8j��P&>+P��jV�qA$3 �`���V�qA$3 ����&>+P��j9#@.:EI#3#'#7'.'#3>7>6>7>'.7>'.'7�FX�g�\G��A	B�>%.N".)-.[
X='C��!BL#d3<BQ7@;O1�!�!���f�C� <=��&
$9u&(7.[%+E���
oH5�9j6,
	�b	2���s0;HT`ly�90>769067>76&17>1'4632#"&534632#"&74632#"&74632#"&74632#"&534632#"&�����
>E7s�Ұ
�|K]Q.6-��
/4*��������sbuc.�����)2+

	���

�
*/&T�|��5!"27>54&"&54632>7>'7&'7X��*�^i
#�
�#22#"22�(][R 
xy�m'$eqr1!�
�_#
���*Q��2#"22"#2��
,&)b0
�~:w2/6&+p-AU4632#"&>54&'.54>7#.54>7>54.�K55KK55K&>,,>&!''!��'!&>,,>&!'�$4!6W>"">W6!4$�6W>"">W6!4$$4�5KK55KKN;HT..TH;4�SS�4��S�4;HT..TH;4�S@zn`("]o~DD~o]"(`nzp"]o~DD~o]"(`nz@@zn`@����37OS326=4&+5##";33#26=4&+##";35'3#26=4&+5##";3'3#��������������������������@�@�������@������@�����3"%>54&'%32654&#".#"326732654&`";�Q�;"B^^BB^�Q;"B^^B";�^BB^^�

�^BB^^B
�^BB^�
B^^BB^~]}H'27>4&'."01267871'01"&'.46787162"'&47�A��(((s(�!""!"UXT"�g/////v{v/A��"TXT!"!!"�(r)((�z
'


EyA��(r)((�"TXU"!""!�g/v{v/////A��"!!"!TXT"�(()r(�z

&
E���@�"10>54."&54632BuW2dxddxd2WuBPppPPpp�2WuBx�̂��xBuW2�pPPppPPp����5	5&&>@�����8&+iOF��������e��Mr�����A%5>54.#"!4.>7.'.5467>7.#"!>75K$NHHN$K5Q�g;�;g���*e9	P9
OZHN$K5Q�g;
�5�J<iN--Ni<J�5-CW00WC-)
*Y-Aw20<:E-Ni<J�5-CW0
	@!!����@��@@@
%!!!@������ ���@��@�����%Do4.#"!'>.54632'>54&#".54>32''>54.#".54>32P��jj��P1Y{I�I{Y1��%%3,:K55K:,KDW(F]55]F(WDK�I/P: 2WuBBuW2 :P/I<dH(Gy�]]�yG(Hd<�j��PP��jS�}_  _}�(%%;;	F.5KK5.F	�O5aJ,,Ja5O����;O`5BuW22WuB5`O;�SkE]�~JJ~�]EkS#����Tan.'.67>7.'.'>7464&'4&'&#>7>7.'.'*#7.326'''"&5462�		18 (qG
-;n;
9p7#%@"!=!*4p:<n;-
<92
*#
93	%�I43EG23H,2!!/2!!/!	HUW#
Eq(6e5(5f2(TTU+0V--U.��0g6
'6e6&%6F($XWJ	�3GJ42EJ3"00 !10 ���UY]ae%#54&#!5326=4&+";!"#";26=4&+5!#";26=4&+5!#";26=4&#53#5353#53�B.�����.B����܀�����������.B����B.���������������@���@��!-48181!8181!5!"3!2654&##"&54632!537������&&�&&�8((88((8@��@�@�@&�&&&�(88((88����������!!%!!!!%!!!!%!!��������������������������������`� @@���� ��@�@@��`�`` %��@``@�����@���@�@73��@@����@��@��@�@@��@���@�@#������@@@�`��@�����@��`�W�W_<�դ�դ����������J�V; *f8=3fq��l3Qf23�!��{"@@ @@C2@~���#����
:Zh<`�2�8h��j�P��6��	T	�

"
`t���
.
�
�Hp���j�p��P�&��P��.�p�:l����J8
�`6uK
�		g	=	|	 	R	
4�icomoonicomoonVersion 1.0Version 1.0icomoonicomoonicomoonicomoonRegularRegularicomoonicomoonFont generated by IcoMoon.Font generated by IcoMoon.css/fonts/icomoon.eot000060400000033740152455614210010651 0ustar00�7<7�LPW�W�icomoonRegularVersion 1.0icomoon�0OS/2H�`cmap�͹L�gasp�glyf�� ��1�head皨3X6hheaB�3�$hmtx��3�(loca�˾4��maxpX:5t name�J	�5��post7 ��������3	@�"���@�@ p Z���5�����"���� Z��������������;<5,?'��797979���!!!!!!������@�@�V�U2#!4763V""���"U"�"�"
 ��!�FYb��������%46753#5.5:34&#">7'3<546323<54&'&674&'5#35>5*#4632.'7#<54&#"#<54676&'#"!54&"4327"432!"3!2654&!"43!2#7!"43!2'!"43!2o	LL	>	[/"!0n#&?'66!'�
	MM	
>
[0"!0n$&>&66 '�u/D[C�S`��#22#]#115��O��R��N�HD

pt�"//"OLONB	/,$�+�}HD

pt�"//-LONB	/,$�+TD/BB/D�6666*2#��#22##2�v66�66M66*����)[k{����'7.5467>07.1.#"&'7.1:3>54&'0.'1#"&'0&'3267.5463332654&'1*#">7>7.#">7>74&53265#"&'.5467067'1:32326?'1465&0>1607>54&'#"&53267.'.'3*#>54&#4&#">5'3267.'.'!
5`#a0I4�_$L>(9&<J$^$J<&

aA$%I4(E/3IA/4I(��E03I8*224IV

_4I%$A�^%K=(B0a$'>K%`$K>'5
_4I��/AI3/E((I4I30F2*8�I320
	^#	3I%$A�]$K>(��%A&=J$^$K<'
]
3I.	,=I40GI3
	.7.>I4-C	(	(I3��
^A%I3
�_$K='3	#'>K#_$K='	
^A$%I3��G04I=,	..	
3I&4I>.(	C-	3I(E�:62"/&4762�


�

�

�:

��

�_�U"'.?62"/Q


�

�

�_



�

�



���1###.'.+#"!'.+7#"3!26?6&'�̚�O
Z��*��*��Z
P&D&f4��N	T
�__�
T	#��#��233	3.'.+#"!'.+7#"3!26?6&'�̚���DO
Z��*��*��Z
P&D&f4���N	T
�__�
T	#��#3f!"&7>6?>67>3��
H	�	p
f��
&
	D
�
	k	�/�p
 1>&'7'.4&#'"7'&676&''.7>�+
B
��N�]	�*	(qg��\)	��	
[)
G	
��	)
	
(
�
O*���A�*	(�#�\	
���f1/

��(
/	
})	��
	
(
	)	f����#'+3;CGK!"3!35#535##!34&#35#"35#35#;5##354&#326=#35#35#3�gffff�3f�f3�gggg�3f�3g33ggggg���fffgg���3g�gfg�ff3�g3�33f�g��f8�i&10>7>''�<Ia�ږ�8Sw�/# ^��7i!#.�wS8�{��bI<d���=
��	.170&.'.'?01�7J�o4���hS
:&&P7�o�4�I�C

T&':3�.#7676ɳ�h��\g�_��j�����GH=���"|7�[X���-!7.#"3267>7#".54>327���7�MM�76::67�MM�7	`#Vbl:j��PP��j5d\R#�@�6::67�MM�76::6	T(A-P��jj��P'7#�f��2"132650>=4.#".54>32^�j:`t`@&&@`t`:j�^EsT..TsEEsT..Ts�+7fdkS��3Skdf7+��


	 q����%1.?>?67>'&'.7>�
:Ug77aD!
��N
iGzM7N/
	�A++8g++�9]>

4Nc9E�u"
e
�
�B^q9N-% 4-- l�}	 ?7'&%./3267%>'.%676&'&'.3267#F5d!���	$59#

&��%
&�		��

g�S!��	S��'
�
r&�����%

3��f
*8FT!"3!2654&!"3!2654&!2654&#!"3#";2654&#";2654&#";2654&��		)

R�p		�		�[�		�p		�\		\		\		\		\		\		�����f�%.#54.#"#"3!26?>54&#+54632)\3M33M3f>:(:>(��8..83{8W=  =W8{(�p'		'�(�7997lG�a3%'>54.#"32672?6&'4>32#".5��5ZvBAtV14ZvB,P$�)0�K"<P-.S?%"<P--S?&��$T-AwY52UtABwY5�0"p-P;#&?S-.P;#&?S.3��>3267>7>#!"#"&'.'&13!2650<54&Q	w�r	

	r�w	#��#{y�u



u�x#4#�@I>>I@
88{?I==I?v�r##r�vQ��5H.7>167>7>'.'.'&6767>.'.'.676rKMF*9��$R# /
(	 I
%#	^wP9 #'39&38/eGxU'
^��T^#"5#	[

O 
%."
Mp�G��8S77fO1>Y7n�
f��!15#3#3%#35!5!35#!!'!!'#3!"3!2654&!!���������ggg�f����gg�4�I��f�g33����33g3f3�3�3��3���2W�F/990>769067>76&7>1'�����
>E7s�Ұ
�|K]Q.6-��
/4*�Fcub.�����)1,	���
�	*/&T�-15;26=4675+";2;#"3535#3
9.-K6j�
 xx 
�7^^7�����M

M%Vl
4EP'�a
�

bfBgg�ff�-@37'#"+32>7>3>7>7.+32#"&';7'/��/Gq]N# =AJ,kkGq]N# =AI-� 3~Rkk3R%/6V'%4�V/��v���{/L^.*K9"�0K^/*K9!Z*0>�,$�1(
03D{�Βf3!55!5'!!7���3���f��f��M�g�g�����)"32>54.#".54>31%f��NN��ff��NN��fQ�j==j�Q\=j��M��ff��NN��ff��M��=i�QP�j=�{�(W/Q�i=
��5Fkv667>7>'.'&>#.&07>7647&"?>'%&'&67>76&7>67>'6?'�#A(G
#EgSw
1m)#B$I�	1	�\6#		0*,#	
x+EFT:>J��1�M��l .A
-K6F (
I.@�*	��	5$ ,>>/0X+HPP('#s�E0�X�3��3,<"32654&!"3!26=4&!"3!26=4&#!"3!26=4&f*<<*+<<���3��3��33<*+<<+*<33

3�3

3�3

3���9m4.'.5467674&10676&'.7&1061!045.5467674&10676&#"10630454&'3'>O)R>% 	/J'VF.'	 %&RR=3�,'-II-
(5MG9�.,B4)#H@&FB>k
'F!O>BF&@=#$rR(/)-*([[(*-).&7I0g&>���S2!.54>>5#53.'#53.'.'#5.#"#53#3#333>j��P&Fa;�;aF&P���-ZUj@#R-@  @-R#@jUZ-	�%6%�	�P��jH�s^!!^s�Hj��P��CJO)@"@@	#2FUUF2#	@@"@)OJC�?�_&276&'%&"%'#"&'%276&'�*�	
�) �)
	���))��
	�*�	
{����(?��@��C�gK(%"&/&676>#*1�
�;x/:��	g�;��
:��!��� %"/"'&4?'&4762762�3��3��3��3�����2��3��3��2�`m:(3>IT."267>4&'.467>2"&%64'7'&"'>2.467727"&'\H���GHHHHH���HHHHH��"##"#WZW#"##"#WZW�%%[[M2E�E2.dfd.��[%%[�2E�E2.dfd.(HHHHH���HHHHHH���H��#WZW"#""#"WZW#"##5E�E1-dfd.1[%%[�1E�F1.dfd-��[%%[��3 +#"&=#"&546;54632323	��		��	��		��

�{����2E32>7#".''.+"32>=4&''##067>;21#�8*Jg>>gJ*9!OX]..]XO �,
^
,c�=j�QQ�j=�c87f7Wc	
h
	cWa��	"!!"	/11N!	4''4	!N�DDu		u���#35%7'7 ``���'i�``��@�@�``����'���``@@�@�#'!!!";!32654&"&54632!!����&&��&&��%%%%%�����@&��&�&@&�%%%%�@@"���!"27>54&"&54632��0�$�(���(88((88��$(�d�0���8((88((8���0<��%7'./#'737>77'>?5'.'"&546325'.'7'.'7'.'7'./#'''77737>77'>77'>77'>?"&54632l)-:	@	:-)FF)-:	@	:-)FF�%%%%C9C'.8
;%@%;
8.'C9CC9C'.8
;%@%;
8.'C9C��:QQ::QQ�:-)FF)-:	@	:-)FF)-:	@	�%%%%�@%;
8.'C9CC9C'.8
;%@%;
8.'C9CC9C'.8
;%kQ::QQ::Q@����";W>54&'!!>54.'4>75.51!.=467>7!!.�4U=!��!=U44U=!z!=U4��9S66S9�9S66S9�661�f1666M�M�!^s�H  H�s^!!^s�H  H�s^!�@FhMdMhFFhMdMhF"G@G3 2G@GxKLw @�%+2#5267>54&'.#"33>!3�]�zFFz�]G�225522�GG�2&2	���Nv����Fz�]]�zF`522�GG�22552&_4�Q�g;���@�@����'7EK"32>54.".54>32>54&#"1%.#">#!5]�zFFz�]]�zFFz�]K�a99a�KK�a99a�\
pP.P2[QE��P.Pp
EQ[�@@Fz�]]�zFFz�]]�zF��9a�KK�a99a�KK�a9�0Pp)"
'6E(�")pP0(E6'���@@����"06!4&#"!"3!2654&%2#"&546!33!26=3'7%���K55K��

@
�S%%%%���
�
��@�:�:@5KK5
��

@
@%%%%��`

`�e�:r�:���(4A.#"32>7>54.'>32467#".5j$T\c33c\T$$8&&8$$T\c33c\T$$8&&8$&!��/q>O�i<�&!/q>O�i<*$8&&8$$T\c33c\T$$8&&8$$T\c33c\T$��>q/!&<i�O>q/��!&<i�O���2.#"34>32!#".'7!732>5z#U`j8j��P`Aq�V.WOE�`�&Aq�V.WOE����#U`j8j��P&>+P��jV�qA$3 �`���V�qA$3 ����&>+P��j9#@.:EI#3#'#7'.'#3>7>6>7>'.7>'.'7�FX�g�\G��A	B�>%.N".)-.[
X='C��!BL#d3<BQ7@;O1�!�!���f�C� <=��&
$9u&(7.[%+E���
oH5�9j6,
	�b	2���s0;HT`ly�90>769067>76&17>1'4632#"&534632#"&74632#"&74632#"&74632#"&534632#"&�����
>E7s�Ұ
�|K]Q.6-��
/4*��������sbuc.�����)2+

	���

�
*/&T�|��5!"27>54&"&54632>7>'7&'7X��*�^i
#�
�#22#"22�(][R 
xy�m'$eqr1!�
�_#
���*Q��2#"22"#2��
,&)b0
�~:w2/6&+p-AU4632#"&>54&'.54>7#.54>7>54.�K55KK55K&>,,>&!''!��'!&>,,>&!'�$4!6W>"">W6!4$�6W>"">W6!4$$4�5KK55KKN;HT..TH;4�SS�4��S�4;HT..TH;4�S@zn`("]o~DD~o]"(`nzp"]o~DD~o]"(`nz@@zn`@����37OS326=4&+5##";33#26=4&+##";35'3#26=4&+5##";3'3#��������������������������@�@�������@������@�����3"%>54&'%32654&#".#"326732654&`";�Q�;"B^^BB^�Q;"B^^B";�^BB^^�

�^BB^^B
�^BB^�
B^^BB^~]}H'27>4&'."01267871'01"&'.46787162"'&47�A��(((s(�!""!"UXT"�g/////v{v/A��"TXT!"!!"�(r)((�z
'


EyA��(r)((�"TXU"!""!�g/v{v/////A��"!!"!TXT"�(()r(�z

&
E���@�"10>54."&54632BuW2dxddxd2WuBPppPPpp�2WuBx�̂��xBuW2�pPPppPPp����5	5&&>@�����8&+iOF��������e��Mr�����A%5>54.#"!4.>7.'.5467>7.#"!>75K$NHHN$K5Q�g;�;g���*e9	P9
OZHN$K5Q�g;
�5�J<iN--Ni<J�5-CW00WC-)
*Y-Aw20<:E-Ni<J�5-CW0
	@!!����@��@@@
%!!!@������ ���@��@�����%Do4.#"!'>.54632'>54&#".54>32''>54.#".54>32P��jj��P1Y{I�I{Y1��%%3,:K55K:,KDW(F]55]F(WDK�I/P: 2WuBBuW2 :P/I<dH(Gy�]]�yG(Hd<�j��PP��jS�}_  _}�(%%;;	F.5KK5.F	�O5aJ,,Ja5O����;O`5BuW22WuB5`O;�SkE]�~JJ~�]EkS#����Tan.'.67>7.'.'>7464&'4&'&#>7>7.'.'*#7.326'''"&5462�		18 (qG
-;n;
9p7#%@"!=!*4p:<n;-
<92
*#
93	%�I43EG23H,2!!/2!!/!	HUW#
Eq(6e5(5f2(TTU+0V--U.��0g6
'6e6&%6F($XWJ	�3GJ42EJ3"00 !10 ���UY]ae%#54&#!5326=4&+";!"#";26=4&+5!#";26=4&+5!#";26=4&#53#5353#53�B.�����.B����܀�����������.B����B.���������������@���@��!-48181!8181!5!"3!2654&##"&54632!537������&&�&&�8((88((8@��@�@�@&�&&&�(88((88����������!!%!!!!%!!!!%!!��������������������������������`� @@���� ��@�@@��`�`` %��@``@�����@���@�@73��@@����@��@��@�@@��@���@�@#������@@@�`��@�����@��`�W�W_<�դ�դ����������J�V; *f8=3fq��l3Qf23�!��{"@@ @@C2@~���#����
:Zh<`�2�8h��j�P��6��	T	�

"
`t���
.
�
�Hp���j�p��P�&��P��.�p�:l����J8
�`6uK
�		g	=	|	 	R	
4�icomoonicomoonVersion 1.0Version 1.0icomoonicomoonicomoonicomoonRegularRegularicomoonicomoonFont generated by IcoMoon.Font generated by IcoMoon.css/fonts/icomoon.svg000060400000136556152455614210010672 0ustar00<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>Generated by IcoMoon</metadata>
<defs>
<font id="icomoon" horiz-adv-x="1024">
<font-face units-per-em="1024" ascent="960" descent="-64" />
<missing-glyph horiz-adv-x="1024" />
<glyph unicode="&#x20;" horiz-adv-x="512" d="" />
<glyph unicode="&#x5a;" glyph-name="uni5A" d="M384 896h256v-256h-256zM384 576h256v-256h-256zM384 256h256v-256h-256z" />
<glyph unicode="&#xe0ca;" glyph-name="message" d="M854 852.667q34 0 59-25t25-59v-512q0-34-25-60t-59-26h-598l-170-170v768q0 34 25 59t59 25h684z" />
<glyph unicode="&#xe600;" glyph-name="autonewsletter" horiz-adv-x="1083" d="M367.257 176.753c0 14.979 7.592 28.425 19.633 37.845v72.613h76.58v-68.538c15.43-9.355 25.53-24.619 25.53-41.914 0-17.279-10.095-32.554-25.53-41.904v-111.729h-76.58v115.803c-12.047 9.404-19.633 22.855-19.633 37.824zM344.021-26.798c82.515 0 41.030 0 162.317 0 0 44.825-36.333 81.164-81.159 81.164s-81.159-36.333-81.159-81.164zM233.59 563.551c18.968 21.118 42.37 32.039 71.562 33.368l-3.512 76.468c-50.096-2.289-92.203-22.083-125.137-58.84-72.876-81.309-76.36-224.336-75.444-270.491-39.845-12.411-68.581-46.439-68.581-86.477 0-0.767 0.118-1.496 0.145-2.257h54.095c-0.059 0.761-0.209 1.49-0.209 2.257 0 20.689 21.375 37.513 47.651 37.513 26.281 0 47.656-16.824 47.656-37.513 0-0.767-0.15-1.496-0.214-2.257h54.106c0.021 0.761 0.139 1.49 0.139 2.257 0 36.43-23.82 67.868-58.121 82.59-1.919 48.021 4.53 166.226 55.864 223.382zM722.44 176.753c0 14.979-7.592 28.425-19.633 37.845v72.613h-76.58v-68.538c-15.43-9.355-25.525-24.619-25.525-41.914 0-17.279 10.095-32.554 25.525-41.904v-111.729h76.58v115.803c12.041 9.404 19.633 22.855 19.633 37.824zM745.676-26.798c-82.515 0-41.030 0-162.323 0 0 44.825 36.339 81.164 81.164 81.164s81.159-36.333 81.159-81.164zM856.107 563.551c-18.973 21.118-42.365 32.039-71.562 33.368l3.506 76.468c50.101-2.289 92.198-22.083 125.137-58.84 72.881-81.309 76.355-224.336 75.444-270.491 39.845-12.411 68.581-46.439 68.581-86.477 0-0.767-0.113-1.496-0.139-2.257h-54.1c0.064 0.761 0.209 1.49 0.209 2.257 0 20.689-21.375 37.513-47.656 37.513s-47.656-16.824-47.656-37.513c0-0.767 0.145-1.496 0.214-2.257h-54.111c-0.016 0.761-0.134 1.49-0.134 2.257 0 36.43 23.815 67.868 58.121 82.59 1.925 48.021-4.525 166.226-55.854 223.382zM603.495 903.567h-117.299c-63.408 0-114.801-51.398-114.801-114.806v-66.013h346.911v66.013c-0.005 63.408-51.398 114.806-114.811 114.806zM487.874 763.419c-34.575 0-34.575 53.613 0 53.613s34.575-53.613 0-53.613zM596.885 765.209c-34.569 0-34.569 53.613 0 53.613s34.569-53.613 0-53.613zM718.805 722.748h-349.286c-46.67 0-84.504-37.84-84.504-84.52v-282.41c0-46.675 37.834-84.515 84.504-84.515h349.286c46.675 0 84.515 37.84 84.515 84.515v282.41c0 46.68-37.84 84.52-84.515 84.52zM700.539 329.157h-334.189c-34.575 0-34.575 53.613 0 53.613h334.183c34.575 0 34.575-53.613 0.005-53.613zM707.686 520.377h-337.759c-34.575 0-34.575 53.613 0 53.613h337.759c34.569 0 34.569-53.613 0-53.613zM707.686 597.22h-334.183c-34.575 0-34.575 53.613 0 53.613h334.183c34.569 0 34.569-53.613 0-53.613z" />
<glyph unicode="&#xe601;" glyph-name="joomla" d="M289.074 559.738c-9.606 9.584-11.694 22.262-11.776 31.232-0.040 20.356 9.524 41.698 26.236 58.552 28.242 28.426 69.222 35.41 89.662 15.196 0 0 3.85-3.892 10.812-10.67l95.682 93.656c-7.802 7.7-12.206 12.082-12.206 12.082-47.268 46.858-116.326 60.354-180.92 42.25 0.798-5.55 1.188-11.182 1.188-16.916 0-68.668-55.706-124.314-124.334-124.314-9.032 0-17.9 0.984-26.542 2.846-8.786-23.612-13.372-48.416-13.372-73.176 0.266-48.476 18.35-93.142 51.282-125.748l212.766-211.068 95.56 93.634c-95.868 95.212-214.036 212.438-214.036 212.438zM857.744 235.212c4.014 0 7.986-0.206 11.96-0.614 6.268 20.132 9.606 41.020 9.4 61.828-0.226 48.434-18.308 93.144-51.282 125.768 0 0-111.554 112.722-208.118 208.486l-93.716-93.716c96.932-96.194 207.606-209.798 207.606-209.798 9.668-9.544 11.654-22.302 11.654-31.294 0.082-20.316-9.4-41.616-26.112-58.51-16.814-16.876-37.948-26.542-58.326-26.624-9.010-0.082-21.688 1.924-31.294 11.47 0 0-2.458 2.314-11.94 11.716l-96.092-93.246 13.702-13.538c32.87-32.666 77.722-50.504 126.136-50.298 25.028 0.164 49.89 5.078 73.626 14.234-1.044 6.472-1.618 13.086-1.618 19.804 0 68.71 55.726 124.334 124.416 124.334zM869.704 234.598c-10.588-33.668-29.532-65.312-55.542-91.484-22.898-23.1-50.134-40.754-79.216-52.060 9.482-59.31 60.846-104.592 122.798-104.592 68.628 0 124.416 55.726 124.416 124.396 0 64.634-49.418 117.76-112.456 123.74zM869.704 234.598c-3.972 0.43-7.946 0.614-11.96 0.614-68.69 0-124.416-55.644-124.416-124.356 0-6.716 0.572-13.312 1.618-19.804 29.082 11.304 56.32 28.958 79.216 52.060 25.99 26.174 44.954 57.836 55.542 91.484zM306.586 802.038c-8.212 60.662-60.232 107.5-123.168 107.5-68.73 0-124.356-55.686-124.356-124.416 0-59.556 41.862-109.362 97.812-121.488 11.080 29.368 28.61 56.914 51.63 80.158 28.508 28.754 62.688 48.272 98.078 58.246zM307.752 785.122c0 5.734-0.39 11.366-1.188 16.916-35.39-9.974-69.55-29.492-98.058-58.246-23.020-23.246-40.55-50.79-51.63-80.16 8.644-1.864 17.49-2.846 26.542-2.846 68.65 0.020 124.334 55.664 124.334 124.334zM394.424 222.188c-9.626-9.544-22.364-11.53-31.376-11.47-20.316 0.082-41.534 9.748-58.246 26.624-16.794 16.896-26.336 38.196-26.194 58.51 0.040 8.99 2.088 21.77 11.632 31.294 0 0 3.85 3.788 10.69 10.506l-94.72 94.514c-6.514-6.41-10.282-9.994-10.282-9.994-32.808-32.626-51.016-77.312-51.22-125.768-0.040-20.808 3.134-41.678 9.482-61.828 3.89 0.43 7.906 0.614 12.002 0.614 68.65 0 124.334-55.644 124.334-124.356 0-6.716-0.614-13.312-1.658-19.804 23.758-9.154 48.702-14.090 73.666-14.234 48.456-0.206 93.266 17.634 126.136 50.298l212.726 211.026-94.74 94.514c-96.544-95.702-212.234-210.452-212.234-210.452zM716.062 785.122c0 5.734 0.452 11.366 1.208 16.916-64.654 18.126-133.572 4.628-180.86-42.25 0 0-116.306-115.424-213.012-211.272l95.212-94.188c96.44 95.744 212.132 210.432 212.132 210.432 20.336 20.152 61.298 13.19 89.58-15.238 16.672-16.856 26.276-38.194 26.194-58.552 0-8.97-2.11-21.668-11.694-31.232 0 0-4.69-4.608-12.882-12.76l95.232-94.084 11.818 11.818c32.994 32.604 51.22 77.252 51.384 125.748 0.062 24.76-4.628 49.562-13.434 73.176-8.54-1.864-17.428-2.846-26.418-2.846-68.668 0.020-124.456 55.664-124.456 124.334zM154.194 234.598c-63.078-5.98-112.352-59.106-112.352-123.74 0-68.69 55.624-124.396 124.356-124.396 61.87 0 113.276 45.28 122.674 104.592-29.040 11.304-56.3 28.958-79.236 52.060-25.846 26.174-44.892 57.836-55.438 91.484zM166.194 235.212c-4.096 0-8.11-0.206-12.002-0.614 10.546-33.668 29.574-65.312 55.438-91.484 22.938-23.1 50.196-40.754 79.238-52.060 1.044 6.472 1.658 13.086 1.658 19.804 0.020 68.73-55.686 124.356-124.334 124.356zM964.832 785.122c0 68.73-55.664 124.416-124.314 124.416-63.038 0-115.016-46.838-123.27-107.5 35.472-9.974 69.572-29.492 98.12-58.246 23.020-23.246 40.55-50.79 51.568-80.16 55.972 12.124 97.894 61.932 97.894 121.486zM717.25 802.038c-0.736-5.55-1.208-11.182-1.208-16.916 0-68.668 55.788-124.314 124.456-124.314 8.99 0 17.88 0.984 26.418 2.846-10.998 29.368-28.548 56.914-51.568 80.158-28.508 28.734-62.606 48.252-98.1 58.224z" />
<glyph unicode="&#xe602;" glyph-name="down" d="M687.002 570.419c13.875 13.722 36.301 13.722 50.074 0 13.824-13.722 13.926-35.891 0-49.613l-200.090-196.096c-13.824-13.722-36.198-13.722-50.125 0l-200.090 196.096c-13.824 13.67-13.824 35.891 0 49.613 13.875 13.722 36.301 13.722 50.074 0l175.155-160.819 175.002 160.819z" />
<glyph unicode="&#xe603;" glyph-name="up" d="M336.998 351.181c-13.875-13.722-36.301-13.722-50.074 0s-13.926 35.891 0 49.613l200.090 196.096c13.824 13.722 36.198 13.722 50.125 0l200.090-196.096c13.824-13.67 13.824-35.891 0-49.613-13.875-13.722-36.301-13.722-50.125 0l-175.104 160.819-175.002-160.819z" />
<glyph unicode="&#xe604;" glyph-name="import" d="M768 614.4h-153.6v307.2h-204.8v-307.2h-153.6l256-256 256 256zM990.106 279.962c-10.752 11.469-82.483 88.218-102.963 108.237-13.568 13.261-32.973 21.402-53.35 21.402h-89.958l156.877-153.293h-181.453c-5.222 0-9.933-2.662-12.288-6.81l-41.779-95.898h-306.381l-41.779 95.898c-2.355 4.147-7.117 6.81-12.288 6.81h-181.453l156.826 153.293h-89.907c-20.326 0-39.731-8.141-53.35-21.402-20.48-20.070-92.211-96.819-102.963-108.237-25.037-26.675-38.81-47.923-32.256-74.189l28.723-157.389c6.554-26.317 35.379-47.923 64.102-47.923h835.174c28.723 0 57.549 21.606 64.102 47.923l28.723 157.389c6.451 26.266-7.27 47.514-32.358 74.189z" />
<glyph unicode="&#xe605;" glyph-name="export" d="M409.6 358.4h204.8v307.2h153.6l-256 256-256-256h153.6v-307.2zM990.106 279.962c-10.752 11.469-82.483 88.218-102.963 108.237-13.568 13.261-32.973 21.402-53.35 21.402h-89.958l156.877-153.293h-181.453c-5.222 0-9.933-2.662-12.288-6.81l-41.779-95.898h-306.381l-41.779 95.898c-2.355 4.147-7.117 6.81-12.288 6.81h-181.453l156.826 153.293h-89.907c-20.326 0-39.731-8.141-53.35-21.402-20.48-20.070-92.211-96.819-102.963-108.237-25.037-26.675-38.81-47.923-32.256-74.189l28.723-157.389c6.554-26.317 35.379-47.923 64.102-47.923h835.174c28.723 0 57.549 21.606 64.102 47.923l28.723 157.389c6.451 26.266-7.27 47.514-32.358 74.189z" />
<glyph unicode="&#xe606;" glyph-name="chart" d="M1024 870.4v-819.2h-1007.616c-16.282 0-21.299 10.701-11.059 23.808l228.813 294.298c10.189 13.107 28.314 14.49 40.397 3.174l72.653-68.301c12.032-11.315 29.286-9.114 38.246 4.915l156.006 242.688c8.96 13.978 26.061 15.974 37.939 4.608l111.155-107.315c11.878-11.52 28.621-9.216 37.069 5.12l262.81 398.592c8.499 14.438 20.787 17.613 33.587 17.613z" />
<glyph unicode="&#xe607;" glyph-name="interface" d="M162.765 665.702c-21.658 17.92-54.118 14.848-72.090-6.758l-65.382-78.797c-17.92-21.658-14.899-54.17 6.707-72.038l403.866-334.95-194.918 427.725-78.182 64.819zM359.066 835.43l-93.184-42.445c-25.549-11.674-36.966-42.24-25.344-67.789l217.6-477.44 10.906 469.965-42.086 92.365c-11.776 25.6-42.291 37.018-67.891 25.344zM727.603 824.986c0.666 28.16-21.862 51.712-49.971 52.378l-102.4 2.355c-28.109 0.666-51.661-21.862-52.326-49.971l-12.237-524.442 214.528 418.15 2.406 101.53zM982.579 776.346l-91.085 46.746c-25.037 12.8-56.115 2.816-68.966-22.221l-327.219-637.747c-12.851-25.037-2.867-56.115 22.221-68.966l91.085-46.746c25.037-12.851 56.064-2.867 68.915 22.17l327.219 637.747c12.851 25.139 2.867 56.166-22.17 69.018zM655.309 138.598c-12.902-25.19-43.776-35.123-68.915-22.221-25.19 12.902-35.072 43.725-22.17 68.915s43.725 35.072 68.915 22.17c25.19-12.851 35.072-43.725 22.17-68.864z" />
<glyph unicode="&#xe608;" glyph-name="template" d="M563.2 972.8h-409.6c-28.314 0-51.2-22.886-51.2-51.2v-614.4c0-28.262 22.886-51.2 51.2-51.2h256v-102.4h102.4v102.4h-102.349v102.4h102.349v102.4h-102.4v-102.4h-204.8v512h307.2v-204.8h102.4v256c0 28.262-22.886 51.2-51.2 51.2zM409.6 614.4v-51.2h102.4v102.4h-51.2c-28.314 0-51.2-22.886-51.2-51.2zM614.4-51.2h102.4v102.4h-102.4v-102.4zM614.4 563.2h102.4v102.4h-102.4v-102.4zM409.6 0c0-28.262 22.886-51.2 51.2-51.2h51.2v102.4h-102.4v-51.2zM870.4 665.6h-51.2v-102.4h102.4v51.2c0 28.262-22.886 51.2-51.2 51.2zM819.2-51.2h51.2c28.314 0 51.2 22.938 51.2 51.2v51.2h-102.4v-102.4zM819.2 358.4h102.4v102.4h-102.4v-102.4zM819.2 153.6h102.4v102.4h-102.4v-102.4z" />
<glyph unicode="&#xe609;" glyph-name="click" d="M924.672 873.421c-30.003 30.003-58.573 1.69-155.699-45.005-259.84-124.877-712.653-378.675-712.653-378.675l389.069-55.501 55.552-389.069c0 0 253.85 452.762 378.675 712.499 46.694 97.178 75.008 125.747 45.056 155.75zM831.283 773.325l-282.573-524.646-28.723 238.336 311.296 286.31z" />
<glyph unicode="&#xe60a;" glyph-name="edit" d="M899.123 847.923c-73.83 73.882-129.28 62.822-129.28 62.822l-656.691-656.64-51.712-243.814 243.866 51.712 656.691 656.538c-0.051 0 11.059 55.45-62.874 129.382zM290.816 91.29l-83.149-17.92c-7.987 15.002-17.664 30.003-35.328 47.718-17.715 17.715-32.717 27.29-47.718 35.379l17.92 83.098 24.064 24.013c0 0 45.21-0.922 96.307-52.019 51.046-50.995 52.019-96.307 52.019-96.307l-24.115-23.962z" />
<glyph unicode="&#xe60b;" glyph-name="language" d="M969.011 686.899c-478.157-694.682-314.47 13.312-718.694-325.478l91.904-361.421h-103.373l-187.648 737.792 94.72 33.997c453.069 331.315 216.474-297.984 800.614-64.205 18.637 7.526 33.536-4.608 22.477-20.685z" />
<glyph unicode="&#xe60c;" glyph-name="generate" d="M1024 576h-384l143.53 143.53c-72.53 72.526-168.96 112.47-271.53 112.47s-199-39.944-271.53-112.47c-72.526-72.53-112.47-168.96-112.47-271.53s39.944-199 112.47-271.53c72.53-72.526 168.96-112.47 271.53-112.47s199 39.944 271.528 112.472c6.056 6.054 11.86 12.292 17.456 18.668l96.32-84.282c-93.846-107.166-231.664-174.858-385.304-174.858-282.77 0-512 229.23-512 512s229.23 512 512 512c141.386 0 269.368-57.326 362.016-149.984l149.984 149.984v-384z" />
<glyph unicode="&#xe60d;" glyph-name="filter" d="M512 921.6c-251.29 0-409.6-77.414-409.6-153.651v-102.4c0-47.002 307.2-307.2 307.2-307.2v-307.2c-0.051-35.021 51.2-51.2 102.4-51.2s102.451 16.179 102.4 51.2v307.2c0 0 307.2 260.198 307.2 307.2v102.4c0 76.237-158.31 153.651-409.6 153.651zM512 659.302c-183.859 0.051-314.266 68.25-314.266 93.747-0.102 25.344 130.458 93.747 314.266 93.645 183.808 0.102 314.368-68.301 314.266-93.594 0-25.549-130.406-93.747-314.266-93.798z" />
<glyph unicode="&#xe60e;" glyph-name="acl" d="M905.779 730.88c-25.754 152.422-164.864 254.31-310.733 227.379-145.92-26.88-269.107-144.179-243.354-296.704 5.478-32.819 20.89-84.173 39.066-121.088l-264.96-395.418c-9.779-14.592-15.309-40.909-12.39-58.419l17.050-100.915c2.97-17.51 19.046-29.286 35.84-26.317l77.619 14.387c16.794 3.021 38.093 17.818 47.309 32.717l104.806 169.523 0.922 1.126 70.963 13.107 122.368 198.605c40.192-7.117 97.894-4.71 131.994 1.587 145.818 26.931 209.254 187.904 183.501 340.429zM776.499 652.698c-40.141-59.904-81.101-17.715-138.394 24.32-57.293 41.882-109.312 67.686-69.222 127.59 40.141 59.904 119.091 74.496 176.486 32.512 57.344-41.933 71.219-124.518 31.13-184.422z" />
<glyph unicode="&#xe60f;" glyph-name="detailed-stat" d="M35.328 392.653l69.786-17.306 52.531 82.483-99.84 24.678c-24.986 6.195-50.227-8.909-56.422-33.792-6.195-24.73 8.96-49.818 33.946-56.064zM946.227 379.29l-228.506-205.619-268.646 207.923c-5.12 3.891-11.008 6.81-17.306 8.294l-35.738 8.909-52.582-82.483 56.32-13.978 291.686-225.69c8.499-6.502 18.534-9.677 28.621-9.677 11.213 0 22.426 3.994 31.181 11.878l257.434 231.782c19.046 17.101 20.531 46.387 3.277 65.382-17.254 18.944-46.643 20.48-65.741 3.277zM444.621 605.184l250.214-160.205c21.146-13.517 49.203-7.885 63.488 12.595l257.382 370.79c14.643 21.094 9.37 50.022-11.827 64.512-21.197 14.592-50.125 9.318-64.768-11.776l-231.834-333.875-251.699 161.126c-10.445 6.707-23.091 8.909-35.226 6.298-12.083-2.714-22.63-10.086-29.235-20.48l-383.846-602.47c-13.824-21.606-7.373-50.33 14.336-64 7.68-4.915 16.333-7.219 24.883-7.219 15.411 0 30.515 7.629 39.322 21.504l358.81 563.2z" />
<glyph unicode="&#xe610;" glyph-name="list" d="M737.28 512h-296.96c-28.262 0-30.72-22.886-30.72-51.2s2.458-51.2 30.72-51.2h296.96c28.262 0 30.72 22.886 30.72 51.2s-2.458 51.2-30.72 51.2zM839.68 256h-399.36c-28.262 0-30.72-22.886-30.72-51.2s2.458-51.2 30.72-51.2h399.36c28.262 0 30.72 22.886 30.72 51.2s-2.458 51.2-30.72 51.2zM440.32 665.6h399.36c28.262 0 30.72 22.886 30.72 51.2s-2.458 51.2-30.72 51.2h-399.36c-28.262 0-30.72-22.886-30.72-51.2s2.458-51.2 30.72-51.2zM276.48 512h-92.16c-28.262 0-30.72-22.886-30.72-51.2s2.458-51.2 30.72-51.2h92.16c28.262 0 30.72 22.886 30.72 51.2s-2.458 51.2-30.72 51.2zM276.48 256h-92.16c-28.262 0-30.72-22.886-30.72-51.2s2.458-51.2 30.72-51.2h92.16c28.262 0 30.72 22.886 30.72 51.2s-2.458 51.2-30.72 51.2zM276.48 768h-92.16c-28.262 0-30.72-22.886-30.72-51.2s2.458-51.2 30.72-51.2h92.16c28.262 0 30.72 22.886 30.72 51.2s-2.458 51.2-30.72 51.2z" />
<glyph unicode="&#xe611;" glyph-name="security" d="M808.96 563.2h-92.16v122.88c0 148.326-68.352 235.52-204.8 235.52-136.499 0-204.8-87.194-204.8-235.52v-122.88h-102.4c-28.314 0-51.2-33.075-51.2-61.389v-399.411c0-28.109 21.914-58.317 48.691-66.918l61.286-19.814c26.829-8.55 71.782-15.667 99.942-15.667h296.96c28.109 0 73.114 7.117 99.891 15.718l61.235 19.814c26.829 8.55 48.794 38.758 48.794 66.867v399.411c0 28.314-33.178 61.389-61.44 61.389zM614.4 563.2h-204.8v143.411c0 73.984 40.806 112.589 102.4 112.589s102.4-38.605 102.4-112.589v-143.411z" />
<glyph unicode="&#xe612;" glyph-name="search" d="M898.304 180.89l-193.485 193.485c29.184 47.872 45.978 104.192 45.978 164.352 0 174.95-151.603 326.502-326.554 326.502-174.95 0.051-316.723-141.773-316.723-316.723 0-174.899 151.603-326.502 326.502-326.502 58.214 0 112.64 15.821 159.488 43.213l194.509-194.611c19.046-18.995 49.92-18.995 68.915 0l48.282 48.282c18.995 18.995 12.083 43.008-6.912 62.003zM205.005 548.506c0 121.139 98.15 219.29 219.238 219.29 121.139 0 229.069-107.878 229.069-229.069 0-121.088-98.202-219.29-219.29-219.29-121.139 0.051-229.018 107.981-229.018 229.069z" />
<glyph unicode="&#xe613;" glyph-name="mail" d="M80.589 702.157c24.986-13.414 371.098-199.373 384-206.285s29.594-10.189 46.387-10.189c16.794 0 33.485 3.277 46.387 10.189s359.014 192.87 384 206.285c25.037 13.466 48.691 65.843 2.765 65.843h-866.253c-45.926 0-22.272-52.378 2.714-65.843zM952.986 589.363c-28.416-14.797-378.214-197.069-395.622-206.182s-29.594-10.189-46.387-10.189-28.979 1.075-46.387 10.189-365.21 191.437-393.626 206.234c-19.968 10.445-19.763-1.792-19.763-11.213s0-373.402 0-373.402c0-21.504 28.979-51.2 51.2-51.2h819.2c22.221 0 51.2 29.696 51.2 51.2 0 0 0 363.93 0 373.35s0.205 21.658-19.814 11.213z" />
<glyph unicode="&#xe614;" glyph-name="campaign" d="M881.818 612.864c-81.101 188.723-211.558 332.288-277.555 305.51-112.077-45.619 66.765-264.397-483.686-488.090-47.565-19.405-59.597-96.666-39.68-142.95 19.866-46.182 84.89-92.211 132.454-72.909 8.243 3.379 38.451 13.107 38.451 13.107 33.946-45.619 69.478-18.586 82.125-47.514 15.155-34.816 48.077-110.49 59.29-136.192s36.608-49.51 55.040-42.496c18.381 7.014 80.998 30.822 104.96 39.885 23.962 9.114 29.645 30.515 22.323 47.309-7.885 18.176-40.243 23.501-49.51 44.698-9.216 21.094-39.373 88.986-48.026 110.387-11.776 29.082 13.261 52.787 49.664 56.525 250.573 26.214 297.421-128.614 382.72-93.901 65.894 26.88 52.48 218.061-28.57 406.63zM853.606 306.893c-14.694-5.888-113.306 71.782-176.282 218.47-63.027 146.586-55.091 280.576-40.448 286.566 14.643 5.888 110.848-87.91 173.824-234.496 63.027-146.586 57.549-264.55 42.906-270.541z" />
<glyph unicode="&#xe615;" glyph-name="newsletter" d="M716.8 716.8h-204.8v-102.4h204.8v102.4zM716.8 563.2h-204.8v-51.2h204.8v51.2zM460.8 716.8h-153.6v-204.8h153.6v204.8zM460.8 409.6h256v51.2h-256v-51.2zM614.4 307.2h102.4v51.2h-102.4v-51.2zM716.8 256h-409.6v-51.2h409.6v51.2zM563.2 358.4h-256v-51.2h256v51.2zM409.6 460.8h-102.4v-51.2h102.4v51.2zM870.4 921.6h-716.8c-28.314 0-51.2-22.886-51.2-51.2v-819.2c0-28.262 22.886-51.2 51.2-51.2h716.8c28.314 0 51.2 22.938 51.2 51.2v819.2c0 28.262-22.886 51.2-51.2 51.2zM819.2 102.4h-614.4v716.8h614.4v-716.8z" />
<glyph unicode="&#xe616;" glyph-name="send" d="M954.368 837.939c-17.613-6.195-886.835-312.525-903.987-318.566-14.541-5.12-17.766-17.664-0.512-24.525 20.531-8.243 194.355-77.875 194.355-77.875v0l115.2-46.131c0 0 554.906 407.45 562.381 412.979 7.578 5.53 16.282-4.864 10.803-10.803-5.478-5.99-402.995-435.866-402.995-435.866v-0.102l-23.142-25.754 30.669-16.486c0 0 238.080-128.205 255.078-137.318 14.899-7.987 34.202-1.382 38.502 17.101 5.069 21.811 145.664 627.763 148.787 641.28 4.045 17.562-7.578 28.262-25.139 22.067zM358.4 94.106c0-12.595 7.117-16.128 16.947-7.219 12.851 11.725 145.92 131.123 145.92 131.123l-162.867 84.173v-208.077z" />
<glyph unicode="&#xe617;" glyph-name="plugin" d="M0 256v-76.698c0-14.182 11.52-25.702 25.702-25.702h51.046c14.131 0 25.651 11.52 25.651 25.702v76.698c0 49.101 41.011 116.378 102.4 142.285v107.776c-118.579-27.443-204.8-146.125-204.8-250.061zM617.728 732.109l-129.536-97.178c-17.766-13.312-39.373-20.531-61.594-20.531h-119.142c-28.416 0-51.456-23.040-51.456-51.456v-204.339c0-28.365 23.040-51.405 51.456-51.405h119.142c22.221 0 43.827-7.219 61.594-20.531l129.587-97.178c31.027-23.296 68.813-35.891 107.622-35.891h93.798v614.4h-93.798c-38.81 0-76.595-12.595-107.674-35.891zM870.4 665.6v-102.4h153.6v102.4h-153.6zM870.4 256h153.6v102.4h-153.6v-102.4z" />
<glyph unicode="&#xe618;" glyph-name="bounce" d="M772.762 630.067h47.104v-146.534l204.134 206.029-204.186 206.080v-122.214h-47.104c-189.133 0-295.731-140.186-389.837-263.782-84.582-111.206-157.696-207.309-275.763-207.309h-107.11v-143.309h107.162c189.133 0 295.731 140.083 389.837 263.782 84.582 111.258 157.696 207.258 275.763 207.258zM276.992 539.75c8.090 10.394 16.179 21.094 24.422 31.898 19.968 26.317 41.165 54.016 64.102 81.715-67.686 63.181-149.248 109.773-258.355 109.773h-107.162v-143.309h107.162c67.942 0 120.934-31.898 169.83-80.077zM819.814 292.147h-47.104c-72.038 0-127.334 35.891-178.739 88.986-5.12-6.707-10.291-13.517-15.514-20.326-22.579-29.696-46.848-61.491-73.677-93.082 69.427-67.789 153.6-118.989 267.878-118.989h47.104v-122.778l204.237 206.080-204.186 206.080v-145.971z" />
<glyph unicode="&#xe619;" glyph-name="open-close" d="M716.8 716.8h-512v102.4l-204.8-179.2 204.8-179.2v102.4h512v153.6zM1024 281.6l-204.8 179.2v-102.4h-512v-153.6h512v-102.4l204.8 179.2z" />
<glyph unicode="&#xe61a;" glyph-name="statistic" d="M512 952.32c-271.462 0-491.52-220.058-491.52-491.52s220.058-491.52 491.52-491.52c271.411 0 491.52 220.058 491.52 491.571 0 271.411-220.109 491.469-491.52 491.469zM512 71.731c-214.886 0-389.12 174.182-389.12 389.12 0 214.886 174.182 389.12 389.12 389.12v0-389.171l347.75 173.875c26.266-52.378 41.37-111.258 41.37-173.875 0-214.886-174.234-389.069-389.12-389.069z" />
<glyph unicode="&#xe61b;" glyph-name="configuration" d="M160.512 620.032c47.77 37.12 87.398 11.52 140.288-49.715 5.939-6.912 13.926 1.178 18.483 5.12 4.506 3.994 74.291 66.816 77.722 69.683 3.379 3.021 7.475 8.653 2.099 14.95-5.478 6.298-25.293 32-38.042 48.691-92.57 121.088 253.235 203.213 200.141 204.493-27.034 0.717-135.475 1.997-151.706 0.205-65.69-6.912-148.173-68.301-189.696-96.922-54.323-37.171-74.598-58.982-77.926-62.003-15.36-13.414-2.458-44.39-30.31-68.813-29.44-25.754-47.821-6.246-64.87-21.197-8.448-7.475-32.102-25.19-38.861-31.078-6.81-5.99-8.038-16.077-1.075-24.115 0 0 64.717-71.475 70.144-77.824 5.376-6.246 20.019-11.674 29.030-3.635 9.062 7.987 32.358 28.314 36.25 31.898 3.994 3.379-2.56 44.083 18.33 60.262zM452.762 593.562c-6.144 7.117-13.773 7.322-20.326 1.485l-73.421-64.102c-5.786-5.12-6.605-14.49-1.382-20.48l424.653-483.277c9.933-11.418 27.136-12.595 38.451-2.714l49.664 41.626c11.366 9.984 12.544 27.29 2.662 38.81l-420.301 488.653zM1018.982 799.232c-3.789 25.293-16.896 20.019-23.706 9.318-6.81-10.803-36.915-56.422-49.306-77.107-12.288-20.48-42.598-60.979-99.021-20.992-58.778 41.523-38.349 70.502-28.109 90.010 10.291 19.61 41.882 74.598 46.438 81.408 4.557 6.912-0.768 26.982-18.995 18.586-18.278-8.397-129.178-52.48-144.538-115.712-15.718-64.307 13.158-121.805-43.52-178.893l-68.762-71.68 69.069-80.179 84.685 80.384c20.173 20.275 63.283 39.987 102.298 31.078 83.61-18.893 129.229 12.493 156.723 64.41 24.678 46.387 20.582 144.077 16.742 169.37zM140.237 99.686c-10.65-10.701-10.65-28.109 0-38.81l48.691-47.616c10.65-10.701 27.546-6.195 38.195 4.506l251.238 246.989-76.954 87.757-261.171-252.826z" />
<glyph unicode="&#xe61c;" glyph-name="custom-field" d="M870.4 819.2c-56.525 0-102.4-45.824-102.4-102.4s45.875-102.4 102.4-102.4 102.4 45.824 102.4 102.4c0 56.576-45.875 102.4-102.4 102.4zM640 768h-563.2c-14.131 0-25.6-11.469-25.6-25.6v-51.2c0-14.131 11.469-25.6 25.6-25.6h563.2c14.131 0 25.6 11.469 25.6 25.6v51.2c0 14.131-11.469 25.6-25.6 25.6zM640 512h-563.2c-14.131 0-25.6-11.469-25.6-25.6v-51.2c0-14.131 11.469-25.6 25.6-25.6h563.2c14.131 0 25.6 11.469 25.6 25.6v51.2c0 14.131-11.469 25.6-25.6 25.6zM640 256h-563.2c-14.131 0-25.6-11.469-25.6-25.6v-51.2c0-14.131 11.469-25.6 25.6-25.6h563.2c14.131 0 25.6 11.469 25.6 25.6v51.2c0 14.131-11.469 25.6-25.6 25.6z" />
<glyph unicode="&#xe61d;" glyph-name="user" d="M818.637-6.605c0 114.995-111.974 173.517-221.030 220.518-108.698 46.797-143.411 86.221-143.411 170.701 0 50.637 33.178 34.15 47.718 127.027 6.144 38.502 35.43 0.614 41.062 88.525 0 35.021-16.026 43.725-16.026 43.725s8.141 51.866 11.315 91.802c3.277 41.83-20.378 131.072-117.811 158.464-16.998 17.459-28.518 45.158 23.91 72.909-114.688 5.325-141.363-54.682-202.445-98.816-51.968-38.707-65.997-99.994-63.488-132.608 3.328-39.936 11.418-91.802 11.418-91.802s-16.077-8.704-16.077-43.725c5.632-87.962 35.021-50.022 41.114-88.525 14.541-92.877 47.77-76.39 47.77-127.027 0-84.48-10.854-113.152-119.603-159.949-109.107-46.95-143.053-122.214-142.49-231.219 0.154-32.614-0.563-44.595-0.563-44.595h819.2c0 0-0.563 11.981-0.563 44.595zM948.634 288.512c-58.112 23.398-82.176 51.302-82.176 105.779 0 32.819 21.402 22.118 30.822 82.074 3.942 24.781 22.886 0.41 26.522 57.088 0 22.579-10.342 28.211-10.342 28.211s5.274 33.587 7.322 59.341c2.56 32.102-18.637 115.046-116.122 115.046-97.434 0-118.682-82.944-116.173-115.046 2.15-25.702 7.373-59.341 7.373-59.341s-10.342-5.581-10.342-28.211c3.635-56.678 22.579-32.307 26.522-57.088 9.421-60.006 30.822-49.306 30.822-82.074 0-54.477-22.426-79.974-92.621-110.182-3.533-1.485-6.144-3.482-9.37-5.222 83.968-36.454 216.371-99.379 247.706-227.686h135.424c0 0 0 97.587 0 118.682 0 51.2-13.978 93.901-75.366 118.63z" />
<glyph unicode="&#xe61e;" glyph-name="dashboard" d="M512 896c282.77 0 512-229.23 512-512 0-192.792-106.576-360.666-264.008-448h-495.984c-157.432 87.334-264.008 255.208-264.008 448 0 282.77 229.23 512 512 512zM801.914 94.086c77.438 77.44 120.086 180.398 120.086 289.914h-90v64h85.038c-7.014 44.998-21.39 88.146-42.564 128h-106.474v64h64.284c-9.438 11.762-19.552 23.096-30.37 33.914-46.222 46.22-101.54 80.038-161.914 99.798v-69.712h-64v85.040c-20.982 3.268-42.36 4.96-64 4.96s-43.018-1.69-64-4.96v-85.040h-64v69.712c-60.372-19.76-115.692-53.576-161.914-99.798-10.818-10.818-20.932-22.152-30.37-33.914h64.284v-64h-106.476c-21.174-39.854-35.552-83.002-42.564-128h85.040v-64h-90c0-109.516 42.648-212.474 120.086-289.914 10.71-10.71 21.924-20.728 33.56-30.086h192.354l36.572 512h54.856l36.572-512h192.354c11.636 9.358 22.852 19.378 33.56 30.086z" />
<glyph unicode="&#xe61f;" glyph-name="copy" d="M473.498 378.829c23.040-16.026 53.76-16.026 76.8 0l465.306 270.387c12.083 8.397 10.752 26.522-2.458 33.075l-471.296 181.094c-18.842 9.37-41.062 9.37-59.904 0l-471.296-181.094c-13.21-6.502-14.541-24.678-2.458-33.075l465.306-270.387zM1013.146 419.277l-127.283 63.13-293.12-170.342c-24.013-15.821-51.917-24.115-80.845-24.115s-56.832 8.346-80.845 24.115l-292.915 170.445-127.488-63.181c-13.21-6.554-14.541-24.678-2.458-33.075l465.306-323.021c23.040-16.026 53.76-16.026 76.8 0l465.306 323.021c12.083 8.346 10.752 26.47-2.458 33.024z" />
<glyph unicode="&#xe620;" glyph-name="save" d="M424.653 102.502c-22.272 0-43.366 10.394-56.883 28.314l-182.938 241.715c-23.808 31.386-17.613 76.083 13.824 99.891 31.488 23.91 76.186 17.613 99.994-13.824l120.371-158.925 302.643 485.99c20.838 33.382 64.87 43.622 98.355 22.784 33.434-20.787 43.725-64.819 22.835-98.304l-357.581-573.952c-12.39-20.019-33.843-32.512-57.344-33.587-1.126-0.102-2.15-0.102-3.277-0.102z" />
<glyph unicode="&#xe621;" glyph-name="cancel" d="M734.618 212.531c-24.013-24.013-62.925-24.013-86.886 0l-135.731 155.136-135.731-155.085c-24.013-24.013-62.925-24.013-86.886 0-24.013 24.013-24.013 62.925 0 86.886l141.21 161.28-141.261 161.382c-24.013 24.013-24.013 62.874 0 86.886s62.874 24.013 86.886 0l135.782-155.187 135.731 155.187c24.013 24.013 62.874 24.013 86.886 0s24.013-62.925 0-86.886l-141.21-161.382 141.21-161.28c24.013-24.013 24.013-62.925 0-86.938z" />
<glyph unicode="&#xe622;" glyph-name="help" d="M859.546 808.346c-191.949 191.949-503.142 191.949-695.040 0-192-192-192-503.194-0.102-695.091 192-192 503.194-192 695.194 0 191.898 191.949 191.898 503.142-0.051 695.091zM345.498 294.298c-92.006 92.006-92.006 241.101 0 333.056 91.904 91.955 241.101 91.955 333.107 0 92.006-92.006 91.904-241.101 0-333.056-92.006-92.006-241.101-92.006-333.107 0zM785.766 313.395c49.562 92.109 49.613 202.701 0 294.861l91.29 49.152c65.997-122.419 65.997-270.848 0.102-393.114l-91.392 49.101zM708.557 825.907l-49.203-91.341c-92.109 49.51-202.701 49.51-294.707 0l-49.203 91.29c122.368 65.946 270.694 65.946 393.114 0.051zM146.944 657.408l91.341-49.203c-49.562-92.058-49.562-202.598-0.051-294.707l-91.341-49.203c-65.946 122.317-65.894 270.694 0.051 393.114zM315.341 95.795l49.203 91.29c92.109-49.613 202.752-49.613 294.861 0l49.203-91.392c-122.47-65.894-270.848-65.894-393.267 0.102z" />
<glyph unicode="&#xe623;" glyph-name="new" d="M819.2 460.8c0-28.314-2.458-51.2-30.771-51.2h-225.229v-225.229c0-28.262-22.886-30.771-51.2-30.771s-51.2 2.509-51.2 30.771v225.229h-225.229c-28.262 0-30.771 22.886-30.771 51.2s2.509 51.2 30.771 51.2h225.229v225.229c0 28.314 22.886 30.771 51.2 30.771s51.2-2.458 51.2-30.771v-225.229h225.229c28.314 0 30.771-22.886 30.771-51.2z" />
<glyph unicode="&#xe624;" glyph-name="delete" d="M173.517 608.614l56.371-558.49c3.123-23.603 117.094-101.222 282.112-101.325 165.12 0.102 279.091 77.722 282.163 101.325l56.422 558.49c-86.221-48.23-215.091-71.014-338.586-71.014-123.392 0-252.314 22.784-338.483 71.014zM674.202 895.488l-43.981 48.691c-16.998 24.218-35.43 28.621-71.322 28.621h-93.747c-35.84 0-54.323-4.403-71.27-28.621l-43.981-48.691c-131.584-22.989-227.021-83.968-227.021-128.973v-8.704c0-79.206 174.234-143.411 389.12-143.411 214.938 0 389.171 64.205 389.171 143.411v8.704c0 45.005-95.386 105.984-226.97 128.973zM617.984 750.592l-54.784 68.608h-102.4l-54.682-68.608h-87.040c0 0 95.334 113.715 108.083 129.126 9.728 11.776 19.661 16.282 32.563 16.282h104.602c12.954 0 22.886-4.506 32.614-16.282 12.698-15.411 108.083-129.126 108.083-129.126h-87.040z" />
<glyph unicode="&#xe625;" glyph-name="myacymailing" d="M544 960l-96-96 96-96-224-256h-224l176-176-272-360.616v-39.384h39.384l360.616 272 176-176v224l256 224 96-96 96 96-480 480zM448 416l-64 64 224 224 64-64-224-224z" />
<glyph unicode="&#xe626;" glyph-name="print" d="M256 896h512v-128h-512v128zM960 704h-896c-35.2 0-64-28.8-64-64v-320c0-35.2 28.794-64 64-64h192v-256h512v256h192c35.2 0 64 28.8 64 64v320c0 35.2-28.8 64-64 64zM128 512c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.652-64-64-64zM704 64h-384v320h384v-320z" />
<glyph unicode="&#xe627;" glyph-name="tag" d="M976 960h-384c-26.4 0-63.274-15.274-81.942-33.942l-476.116-476.116c-18.668-18.668-18.668-49.214 0-67.882l412.118-412.118c18.668-18.668 49.214-18.668 67.882 0l476.118 476.118c18.666 18.666 33.94 55.54 33.94 81.94v384c0 26.4-21.6 48-48 48zM736 576c-53.020 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96-42.98-96-96-96z" />
<glyph unicode="&#xe628;" glyph-name="process" d="M363.722 237.948l41.298 57.816-45.254 45.256-57.818-41.296c-10.722 5.994-22.204 10.774-34.266 14.192l-11.682 70.084h-64l-11.68-70.086c-12.062-3.418-23.544-8.198-34.266-14.192l-57.818 41.298-45.256-45.256 41.298-57.816c-5.994-10.72-10.774-22.206-14.192-34.266l-70.086-11.682v-64l70.086-11.682c3.418-12.060 8.198-23.544 14.192-34.266l-41.298-57.816 45.254-45.256 57.818 41.296c10.722-5.994 22.204-10.774 34.266-14.192l11.682-70.084h64l11.68 70.086c12.062 3.418 23.544 8.198 34.266 14.192l57.818-41.296 45.254 45.256-41.298 57.816c5.994 10.72 10.774 22.206 14.192 34.266l70.088 11.68v64l-70.086 11.682c-3.418 12.060-8.198 23.544-14.192 34.266zM224 96c-35.348 0-64 28.654-64 64s28.652 64 64 64 64-28.654 64-64-28.652-64-64-64zM1024 576v64l-67.382 12.25c-1.242 8.046-2.832 15.978-4.724 23.79l57.558 37.1-24.492 59.128-66.944-14.468c-4.214 6.91-8.726 13.62-13.492 20.13l39.006 56.342-45.256 45.254-56.342-39.006c-6.512 4.766-13.22 9.276-20.13 13.494l14.468 66.944-59.128 24.494-37.1-57.558c-7.812 1.892-15.744 3.482-23.79 4.724l-12.252 67.382h-64l-12.252-67.382c-8.046-1.242-15.976-2.832-23.79-4.724l-37.098 57.558-59.128-24.492 14.468-66.944c-6.91-4.216-13.62-8.728-20.13-13.494l-56.342 39.006-45.254-45.254 39.006-56.342c-4.766-6.51-9.278-13.22-13.494-20.13l-66.944 14.468-24.492-59.128 57.558-37.1c-1.892-7.812-3.482-15.742-4.724-23.79l-67.384-12.252v-64l67.382-12.25c1.242-8.046 2.832-15.978 4.724-23.79l-57.558-37.1 24.492-59.128 66.944 14.468c4.216-6.91 8.728-13.618 13.494-20.13l-39.006-56.342 45.254-45.256 56.342 39.006c6.51-4.766 13.22-9.276 20.13-13.492l-14.468-66.944 59.128-24.492 37.102 57.558c7.81-1.892 15.742-3.482 23.788-4.724l12.252-67.384h64l12.252 67.382c8.044 1.242 15.976 2.832 23.79 4.724l37.1-57.558 59.128 24.492-14.468 66.944c6.91 4.216 13.62 8.726 20.13 13.492l56.342-39.006 45.256 45.256-39.006 56.342c4.766 6.512 9.276 13.22 13.492 20.13l66.944-14.468 24.492 59.13-57.558 37.1c1.892 7.812 3.482 15.742 4.724 23.79l67.382 12.25zM672 468.8c-76.878 0-139.2 62.322-139.2 139.2s62.32 139.2 139.2 139.2 139.2-62.322 139.2-139.2c0-76.878-62.32-139.2-139.2-139.2z" />
<glyph unicode="&#xe629;" glyph-name="queue" d="M728.992 448c137.754 87.334 231.008 255.208 231.008 448 0 21.676-1.192 43.034-3.478 64h-889.042c-2.29-20.968-3.48-42.326-3.48-64 0-192.792 93.254-360.666 231.006-448-137.752-87.334-231.006-255.208-231.006-448 0-21.676 1.19-43.034 3.478-64h889.042c2.288 20.966 3.478 42.324 3.478 64 0.002 192.792-93.252 360.666-231.006 448zM160 0c0 186.912 80.162 345.414 224 397.708v100.586c-143.838 52.29-224 210.792-224 397.706v0h704c0-186.914-80.162-345.416-224-397.706v-100.586c143.838-52.294 224-210.796 224-397.708h-704zM619.626 290.406c-71.654 40.644-75.608 93.368-75.626 125.366v64.228c0 31.994 3.804 84.914 75.744 125.664 38.504 22.364 71.808 56.348 97.048 98.336h-409.582c25.266-42.032 58.612-76.042 97.166-98.406 71.654-40.644 75.606-93.366 75.626-125.366v-64.228c0-31.992-3.804-84.914-75.744-125.664-72.622-42.18-126.738-125.684-143.090-226.336h501.67c-16.364 100.708-70.53 184.248-143.212 226.406z" />
<glyph unicode="&#xe62a;" glyph-name="renew" horiz-adv-x="1088" d="M640 896c247.424 0 448-200.576 448-448s-200.576-448-448-448v96c94.024 0 182.418 36.614 248.902 103.098s103.098 154.878 103.098 248.902c0 94.022-36.614 182.418-103.098 248.902s-154.878 103.098-248.902 103.098c-94.022 0-182.418-36.614-248.902-103.098-51.14-51.138-84.582-115.246-97.306-184.902h186.208l-224-256-224 256h164.57c31.060 217.102 217.738 384 443.43 384zM832 512v-128h-256v320h128v-192z" />
<glyph unicode="&#xe62b;" glyph-name="schedule" d="M512 832c-247.424 0-448-200.576-448-448s200.576-448 448-448 448 200.576 448 448-200.576 448-448 448zM512 24c-198.824 0-360 161.178-360 360 0 198.824 161.176 360 360 360 198.822 0 360-161.176 360-360 0-198.822-161.178-360-360-360zM934.784 672.826c16.042 28.052 25.216 60.542 25.216 95.174 0 106.040-85.96 192-192 192-61.818 0-116.802-29.222-151.92-74.596 131.884-27.236 245.206-105.198 318.704-212.578v0zM407.92 885.404c-35.116 45.374-90.102 74.596-151.92 74.596-106.040 0-192-85.96-192-192 0-34.632 9.174-67.122 25.216-95.174 73.5 107.38 186.822 185.342 318.704 212.578zM512 384v256h-64v-320h256v64z" />
<glyph unicode="&#xe62c;" glyph-name="spamtest" d="M928 832h-288c0 70.692-57.306 128-128 128-70.692 0-128-57.308-128-128h-288c-17.672 0-32-14.328-32-32v-832c0-17.674 14.328-32 32-32h832c17.674 0 32 14.326 32 32v832c0 17.672-14.326 32-32 32zM512 896c35.346 0 64-28.654 64-64s-28.654-64-64-64c-35.346 0-64 28.654-64 64s28.654 64 64 64zM896 0h-768v768h128v-96c0-17.672 14.328-32 32-32h448c17.674 0 32 14.328 32 32v96h128v-768zM448 101.49l-205.254 237.254 58.508 58.51 146.746-114.744 274.742 242.744 58.514-58.508z" />
<glyph unicode="&#xe62d;" glyph-name="spam" d="M874.040 810.040c-96.706 96.702-225.28 149.96-362.040 149.96s-265.334-53.258-362.040-149.96c-96.702-96.706-149.96-225.28-149.96-362.040s53.258-265.334 149.96-362.040c96.706-96.702 225.28-149.96 362.040-149.96s265.334 53.258 362.040 149.96c96.702 96.706 149.96 225.28 149.96 362.040s-53.258 265.334-149.96 362.040zM896 448c0-82.814-26.354-159.588-71.112-222.38l-535.266 535.268c62.792 44.758 139.564 71.112 222.378 71.112 211.738 0 384-172.262 384-384zM128 448c0 82.814 26.354 159.586 71.112 222.378l535.27-535.268c-62.794-44.756-139.568-71.11-222.382-71.11-211.738 0-384 172.262-384 384z" />
<glyph unicode="&#xe62e;" glyph-name="refresh" d="M889.68 793.68c-93.608 102.216-228.154 166.32-377.68 166.32-282.77 0-512-229.23-512-512h96c0 229.75 186.25 416 416 416 123.020 0 233.542-53.418 309.696-138.306l-149.696-149.694h352v352l-134.32-134.32zM928 448c0-229.75-186.25-416-416-416-123.020 0-233.542 53.418-309.694 138.306l149.694 149.694h-352v-352l134.32 134.32c93.608-102.216 228.154-166.32 377.68-166.32 282.77 0 512 229.23 512 512h-96z" />
<glyph unicode="&#xe62f;" glyph-name="ABtesting" horiz-adv-x="1091" d="M172.591 266.82l-69.148-209.445h-88.91l226.232 665.835h103.723l227.22-665.835h-91.885l-71.123 209.445h-236.107zM390.911 333.982l-65.199 191.658c-14.812 43.462-24.699 82.986-34.574 121.498h-1.975c-9.887-39.512-20.762-80.011-33.587-120.522l-65.199-192.633h200.533zM583.056 734.268c33.258 24.602 74.513 50.789 123.68 74.196 61.687 29.356 112.769 37.195 158.583 23.907 38.341-9.168 69.758-33.709 88.459-73.037 36.159-75.988 1.268-161.668-59.079-212.285l0.841-1.78c62.2 9.838 129.495-14.081 163.045-86.923 29.356-61.687 19.238-125.703-6.059-173.932-30.38-58.298-90.154-103.186-171.518-141.893-51.849-24.663-97.834-43.254-128.995-51.496l-168.958 643.244zM808.789 186.029c20.067 6.23 42.828 15.97 63.394 25.76 88.045 40.804 152.853 116.584 106.929 213.139-33.599 70.611-108.392 73.403-176.334 41.097l-59.908-28.515 65.918-251.48zM727.681 499.38l55.446 26.37c85.826 40.841 131.616 117.45 96.749 190.744-27.65 58.128-83.376 62.334-148.635 31.27-27.723-13.203-48.789-26.516-58.701-35.623l55.141-212.761zM454.919 732.018l33.456 9.371 187.664-670.010-33.456-9.371-187.664 670.010z" />
<glyph unicode="&#xe630;" glyph-name="sendtest" d="M954.368 882.739c-17.613-6.195-886.835-312.525-903.987-318.566-14.541-5.12-17.766-17.664-0.51-24.525 20.53-8.243 194.354-77.877 194.354-77.877v0l115.2-46.131c0 0 554.904 407.451 562.381 412.981 7.576 5.53 16.282-4.864 10.803-10.803-5.48-5.99-402.995-435.866-402.995-435.866v-0.101l-23.142-25.755 30.669-16.486c0 0 238.080-128.205 255.078-137.318 14.899-7.986 34.202-1.381 38.501 17.101 5.069 21.811 145.664 627.763 148.787 641.28 4.046 17.562-7.578 28.262-25.138 22.067v0zM358.4 138.906c0-12.595 7.115-16.128 16.947-7.221 12.851 11.725 145.918 131.123 145.918 131.123l-162.866 84.174v-208.077zM90.080 15.221c0 23.68 16 40.318 38.4 40.318s37.76-16.638 37.76-40.318c0-23.038-14.72-40.32-38.4-40.32-22.4-0.002-37.76 17.28-37.76 40.32zM222.55 15.221c0 23.68 16 40.318 38.4 40.318s37.76-16.638 37.76-40.318c0-23.038-14.72-40.32-38.4-40.32-22.4-0.002-37.76 17.28-37.76 40.32zM355.021 15.221c0 23.68 16 40.318 38.4 40.318s37.76-16.638 37.76-40.318c0-23.038-14.72-40.32-38.4-40.32-22.4-0.002-37.76 17.28-37.76 40.32zM487.491 15.221c0 23.68 16 40.318 38.4 40.318s37.76-16.638 37.76-40.318c0-23.038-14.72-40.32-38.4-40.32-22.402-0.002-37.76 17.28-37.76 40.32zM619.962 15.221c0 23.68 16 40.318 38.398 40.318 22.4 0 37.762-16.638 37.762-40.318 0-23.038-14.72-40.32-38.4-40.32-22.402-0.002-37.76 17.28-37.76 40.32zM752.432 15.221c0 23.68 16 40.318 38.4 40.318 22.398 0 37.76-16.638 37.76-40.318 0-23.038-14.72-40.32-38.4-40.32-22.402-0.002-37.76 17.28-37.76 40.32z" />
<glyph unicode="&#xe631;" glyph-name="replacetag" d="M855.932 937.030h-336.578c-23.138 0-55.462-13.388-71.824-29.75l-417.316-417.32c-16.364-16.364-16.364-43.138 0-59.5l361.224-361.226c16.362-16.36 43.136-16.36 59.498 0l417.324 417.324c16.36 16.362 29.748 48.68 29.748 71.82v336.58c-0.002 23.14-18.936 42.072-42.076 42.072zM645.57 600.452c-46.474 0-84.144 37.672-84.144 84.144s37.67 84.144 84.144 84.144c46.472 0 84.146-37.672 84.146-84.144 0.002-46.472-37.672-84.144-84.146-84.144zM478.136 43.806c106.434-82.588 256.792-66.962 335.824 34.892 42.318 54.542 55.59 122.74 42.462 187.018l-120.844-12.556 121.088 156.058 163.070-126.536-108.432-11.264c15.152-78.246-1.434-160.936-52.874-227.228-97.272-125.366-282.322-144.588-413.32-42.944l33.026 42.56z" />
<glyph unicode="&#xe632;" glyph-name="action" d="M384 448c0 70.692 57.308 128 128 128s128-57.308 128-128c0-70.692-57.308-128-128-128s-128 57.308-128 128zM664.348 729.474c99.852-54.158 167.652-159.898 167.652-281.474s-67.8-227.316-167.652-281.474c44.066 70.126 71.652 170.27 71.652 281.474s-27.586 211.348-71.652 281.474zM288 448c0-111.204 27.584-211.348 71.652-281.474-99.852 54.16-167.652 159.898-167.652 281.474s67.8 227.314 167.652 281.474c-44.068-70.126-71.652-170.27-71.652-281.474zM96 448c0-171.9 54.404-326.184 140.652-431.722-142.302 90.948-236.652 250.314-236.652 431.722s94.35 340.774 236.652 431.722c-86.248-105.538-140.652-259.822-140.652-431.722zM787.352 879.72c142.298-90.946 236.648-250.312 236.648-431.72s-94.35-340.774-236.648-431.72c86.244 105.536 140.648 259.82 140.648 431.72s-54.404 326.184-140.648 431.72z" />
<glyph unicode="&#xe633;" glyph-name="options" d="M896 512h16c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v192h-128v-192h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h16v-576h128v576zM768 704h128v-128h-128v128zM592 128c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v576h-128v-576h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h16v-192h128v192h16zM448 320h128v-128h-128v128zM272 512c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v192h-128v-192h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h16v-576h128v576h16zM128 704h128v-128h-128v128z" />
<glyph unicode="&#xe634;" glyph-name="share" d="M864 256c-45.16 0-85.92-18.738-115.012-48.83l-431.004 215.502c1.314 8.252 2.016 16.706 2.016 25.328s-0.702 17.076-2.016 25.326l431.004 215.502c29.092-30.090 69.852-48.828 115.012-48.828 88.366 0 160 71.634 160 160s-71.634 160-160 160-160-71.634-160-160c0-8.622 0.704-17.076 2.016-25.326l-431.004-215.504c-29.092 30.090-69.852 48.83-115.012 48.83-88.366 0-160-71.636-160-160 0-88.368 71.634-160 160-160 45.16 0 85.92 18.738 115.012 48.828l431.004-215.502c-1.312-8.25-2.016-16.704-2.016-25.326 0-88.368 71.634-160 160-160s160 71.632 160 160c0 88.364-71.634 160-160 160z" />
<glyph unicode="&#xe635;" glyph-name="attach" d="M665.832 632.952l-64.952 64.922-324.81-324.742c-53.814-53.792-53.814-141.048 0-194.844 53.804-53.792 141.060-53.792 194.874 0l389.772 389.708c89.714 89.662 89.714 235.062 0 324.726-89.666 89.704-235.112 89.704-324.782 0l-409.23-409.178c-0.29-0.304-0.612-0.576-0.876-0.846-125.102-125.096-125.102-327.856 0-452.906 125.054-125.056 327.868-125.056 452.988 0 0.274 0.274 0.516 0.568 0.82 0.876l0.032-0.034 279.332 279.292-64.986 64.92-279.33-279.262c-0.296-0.268-0.564-0.57-0.846-0.844-89.074-89.058-233.98-89.058-323.076 0-89.062 89.042-89.062 233.922 0 322.978 0.304 0.304 0.604 0.582 0.888 0.846l-0.046 0.060 409.28 409.166c53.712 53.738 141.144 53.738 194.886 0 53.712-53.734 53.712-141.148 0-194.84l-389.772-389.7c-17.936-17.922-47.054-17.922-64.972 0-17.894 17.886-17.894 47.032 0 64.92l324.806 324.782z" />
<glyph unicode="&#xe800;" glyph-name="location" d="M512 960c-176.732 0-320-143.268-320-320 0-320 320-704 320-704s320 384 320 704c0 176.732-143.27 320-320 320zM512 448c-106.040 0-192 85.96-192 192s85.96 192 192 192 192-85.96 192-192-85.96-192-192-192z" />
<glyph unicode="&#xe808;" glyph-name="test" d="M576 711.628v248.372l384-384-384-384v253.824c-446.75 10.482-427.588-303.792-313.86-509.824-280.712 303.414-221.1 789.57 313.86 775.628z" />
<glyph unicode="&#xe812;" glyph-name="users" horiz-adv-x="1152" d="M768 189.388v52.78c70.498 39.728 128 138.772 128 237.832 0 159.058 0 288-192 288s-192-128.942-192-288c0-99.060 57.502-198.104 128-237.832v-52.78c-217.102-17.748-384-124.42-384-253.388h896c0 128.968-166.898 235.64-384 253.388zM327.196 164.672c55.31 36.15 124.080 63.636 199.788 80.414-15.054 17.784-28.708 37.622-40.492 59.020-30.414 55.234-46.492 116.058-46.492 175.894 0 86.042 0 167.31 30.6 233.762 29.706 64.504 83.128 104.496 159.222 119.488-16.914 76.48-61.94 126.75-181.822 126.75-192 0-192-128.942-192-288 0-99.060 57.502-198.104 128-237.832v-52.78c-217.102-17.748-384-124.42-384-253.388h279.006c14.518 12.91 30.596 25.172 48.19 36.672z" />
<glyph unicode="&#xe900;" glyph-name="folder" d="M448 832l128-128h448v-704h-1024v832z" />
<glyph unicode="&#xe901;" glyph-name="folderopen" d="M832 0l192 512h-832l-192-512zM128 576l-128-576v832h288l128-128h416v-128z" />
<glyph unicode="&#xe902;" glyph-name="connection" d="M1024 448c0 282.77-229.23 512-512 512s-512-229.23-512-512c0-220.054 138.836-407.664 333.686-480.068l-13.686-31.932h384l-13.686 31.932c194.85 72.404 333.686 260.014 333.686 480.068zM486.79 325.174c-22.808 9.788-38.79 32.436-38.79 58.826 0 35.346 28.654 64 64 64s64-28.654 64-64c0-26.39-15.978-49.044-38.786-58.834l-25.214 58.834-25.21-58.826zM538.268 322.708c58.092 12.118 101.732 63.602 101.732 125.292 0 70.694-57.306 128-128 128-70.692 0-128-57.306-128-128 0-61.692 43.662-113.122 101.76-125.228l-74.624-174.122c-91.23 39.15-155.136 129.784-155.136 235.35 0 141.384 114.616 268 256 268s256-126.616 256-268c0-105.566-63.906-196.2-155.136-235.35l-74.596 174.058zM688.448-27.708l-73.924 172.486c126.446 42.738 217.476 162.346 217.476 303.222 0 176.73-143.268 320-320 320-176.73 0-320-143.27-320-320 0-140.876 91.030-260.484 217.476-303.222l-73.924-172.486c-159.594 68.488-271.386 227.034-271.386 411.708 0 247.332 200.502 459.834 447.834 459.834s447.834-212.502 447.834-459.834c0-184.674-111.792-343.22-271.386-411.708z" />
<glyph unicode="&#xe903;" glyph-name="distribution" horiz-adv-x="949" d="M456.624-32.8c-11.599 5.974-22.928 12.558-34.836 17.833-129.603 57.454-152.941 206.598-47.024 301.056 7.233 6.444 14.296 13.067 20.74 18.961-37.114 92.34-116.656 172.302-211.463 210.624-16.744-23.977-34.346-49.182-56.705-81.201-31.519 70.921-60.701 136.557-92.37 207.837 78.224 8.652 148.775 16.464 227.867 25.215-16.983-33.347-30.71-60.311-40.221-78.983 77.165-70.261 150.823-137.346 224.86-204.76 0 108.234 0.619 222.223-1.189 336.162-0.14 8.971-16.024 23.197-26.534 25.315-20.22 4.056-41.839 1.179-75.326 1.179 48.303 64.057 89.602 118.844 134.649 178.596 43.358-59.852 82.819-114.328 127.186-175.589-34.546-1.898-60.161-3.307-90.681-4.985v-360.788c70.251 64.907 144.359 133.38 222.633 205.699-8.791 16.814-22.358 42.768-40.89 78.224 79.243-8.682 150.483-16.484 228.647-25.046-31.269-70.821-60.361-136.677-91.95-208.207-21.349 30.7-38.223 54.966-54.537 78.443-80.651-21.079-164.979-101.231-216.539-209.066 5.605-3.197 15.175-6.963 22.688-13.207 112.93-93.748 90.751-249.077-43.438-306.471-12.068-5.165-23.757-11.209-35.615-16.854-8.801 0.010-42.099 0.010-49.951 0.010zM606.158 150.55c-0.979 67.934-57.474 122.311-125.687 120.962-68.523-1.349-120.602-56.785-118.894-126.566 1.628-66.565 55.426-118.864 122.071-118.654 67.924 0.2 123.479 56.545 122.51 124.259zM561.821 151.949c0.14-45.056-38.303-82.619-83.319-81.41-43.228 1.159-78.873 37.284-79.402 80.461-0.539 44.367 38.642 82.649 83.319 81.401 43.108-1.199 79.283-37.843 79.402-80.451z" />
<glyph unicode="&#xe904;" glyph-name="tree" d="M976 192h-16v208c0 61.756-50.242 112-112 112h-272v128h16c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-160c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h16v-128h-272c-61.756 0-112-50.244-112-112v-208h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v192h256v-192h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v192h256v-192h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48zM192 0h-128v128h128v-128zM576 0h-128v128h128v-128zM448 704v128h128v-128h-128zM960 0h-128v128h128v-128z" />
<glyph unicode="&#xe905;" glyph-name="image_view" d="M959.884 832c0.040-0.034 0.082-0.076 0.116-0.116v-767.77c-0.034-0.040-0.076-0.082-0.116-0.116h-895.77c-0.040 0.034-0.082 0.076-0.114 0.116v767.772c0.034 0.040 0.076 0.082 0.114 0.114h895.77zM960 896h-896c-35.2 0-64-28.8-64-64v-768c0-35.2 28.8-64 64-64h896c35.2 0 64 28.8 64 64v768c0 35.2-28.8 64-64 64v0zM832 672c0-53.020-42.98-96-96-96s-96 42.98-96 96 42.98 96 96 96 96-42.98 96-96zM896 128h-768v128l224 384 256-320h64l224 192z" />
<glyph unicode="&#xe906;" glyph-name="list_view" d="M0 960h256v-256h-256zM384 896h640v-128h-640zM0 576h256v-256h-256zM384 512h640v-128h-640zM0 192h256v-256h-256zM384 128h640v-128h-640z" />
<glyph unicode="&#xea1f;" glyph-name="backward2" d="M576 800v-320l320 320v-704l-320 320v-320l-352 352z" />
<glyph unicode="&#xea20;" glyph-name="forward3" d="M512 96v320l-320-320v704l320-320v320l352-352z" />
<glyph unicode="&#xea21;" glyph-name="first" d="M128 64v768h128v-352l320 320v-320l320 320v-704l-320 320v-320l-320 320v-352z" />
<glyph unicode="&#xea22;" glyph-name="last" d="M896 832v-768h-128v352l-320-320v320l-320-320v704l320-320v320l320-320v352z" />
</font></defs></svg>css/fonts/icomoon.woff000060400000033610152455614210011017 0ustar00wOFF7�7<OS/2``Hcmaph���͹Lgasp�glyf�1�1��� �head3�66皨hhea3�$$B�hmtx4((��loca5(���˾maxp5�  X:name5����J	�post7h  ��������3	@�"���@�@ p Z���5�����"���� Z��������������;<5,?'��797979���!!!!!!������@�@�V�U2#!4763V""���"U"�"�"
 ��!�FYb��������%46753#5.5:34&#">7'3<546323<54&'&674&'5#35>5*#4632.'7#<54&#"#<54676&'#"!54&"4327"432!"3!2654&!"43!2#7!"43!2'!"43!2o	LL	>	[/"!0n#&?'66!'�
	MM	
>
[0"!0n$&>&66 '�u/D[C�S`��#22#]#115��O��R��N�HD

pt�"//"OLONB	/,$�+�}HD

pt�"//-LONB	/,$�+TD/BB/D�6666*2#��#22##2�v66�66M66*����)[k{����'7.5467>07.1.#"&'7.1:3>54&'0.'1#"&'0&'3267.5463332654&'1*#">7>7.#">7>74&53265#"&'.5467067'1:32326?'1465&0>1607>54&'#"&53267.'.'3*#>54&#4&#">5'3267.'.'!
5`#a0I4�_$L>(9&<J$^$J<&

aA$%I4(E/3IA/4I(��E03I8*224IV

_4I%$A�^%K=(B0a$'>K%`$K>'5
_4I��/AI3/E((I4I30F2*8�I320
	^#	3I%$A�]$K>(��%A&=J$^$K<'
]
3I.	,=I40GI3
	.7.>I4-C	(	(I3��
^A%I3
�_$K='3	#'>K#_$K='	
^A$%I3��G04I=,	..	
3I&4I>.(	C-	3I(E�:62"/&4762�


�

�

�:

��

�_�U"'.?62"/Q


�

�

�_



�

�



���1###.'.+#"!'.+7#"3!26?6&'�̚�O
Z��*��*��Z
P&D&f4��N	T
�__�
T	#��#��233	3.'.+#"!'.+7#"3!26?6&'�̚���DO
Z��*��*��Z
P&D&f4���N	T
�__�
T	#��#3f!"&7>6?>67>3��
H	�	p
f��
&
	D
�
	k	�/�p
 1>&'7'.4&#'"7'&676&''.7>�+
B
��N�]	�*	(qg��\)	��	
[)
G	
��	)
	
(
�
O*���A�*	(�#�\	
���f1/

��(
/	
})	��
	
(
	)	f����#'+3;CGK!"3!35#535##!34&#35#"35#35#;5##354&#326=#35#35#3�gffff�3f�f3�gggg�3f�3g33ggggg���fffgg���3g�gfg�ff3�g3�33f�g��f8�i&10>7>''�<Ia�ږ�8Sw�/# ^��7i!#.�wS8�{��bI<d���=
��	.170&.'.'?01�7J�o4���hS
:&&P7�o�4�I�C

T&':3�.#7676ɳ�h��\g�_��j�����GH=���"|7�[X���-!7.#"3267>7#".54>327���7�MM�76::67�MM�7	`#Vbl:j��PP��j5d\R#�@�6::67�MM�76::6	T(A-P��jj��P'7#�f��2"132650>=4.#".54>32^�j:`t`@&&@`t`:j�^EsT..TsEEsT..Ts�+7fdkS��3Skdf7+��


	 q����%1.?>?67>'&'.7>�
:Ug77aD!
��N
iGzM7N/
	�A++8g++�9]>

4Nc9E�u"
e
�
�B^q9N-% 4-- l�}	 ?7'&%./3267%>'.%676&'&'.3267#F5d!���	$59#

&��%
&�		��

g�S!��	S��'
�
r&�����%

3��f
*8FT!"3!2654&!"3!2654&!2654&#!"3#";2654&#";2654&#";2654&��		)

R�p		�		�[�		�p		�\		\		\		\		\		\		�����f�%.#54.#"#"3!26?>54&#+54632)\3M33M3f>:(:>(��8..83{8W=  =W8{(�p'		'�(�7997lG�a3%'>54.#"32672?6&'4>32#".5��5ZvBAtV14ZvB,P$�)0�K"<P-.S?%"<P--S?&��$T-AwY52UtABwY5�0"p-P;#&?S-.P;#&?S.3��>3267>7>#!"#"&'.'&13!2650<54&Q	w�r	

	r�w	#��#{y�u



u�x#4#�@I>>I@
88{?I==I?v�r##r�vQ��5H.7>167>7>'.'.'&6767>.'.'.676rKMF*9��$R# /
(	 I
%#	^wP9 #'39&38/eGxU'
^��T^#"5#	[

O 
%."
Mp�G��8S77fO1>Y7n�
f��!15#3#3%#35!5!35#!!'!!'#3!"3!2654&!!���������ggg�f����gg�4�I��f�g33����33g3f3�3�3��3���2W�F/990>769067>76&7>1'�����
>E7s�Ұ
�|K]Q.6-��
/4*�Fcub.�����)1,	���
�	*/&T�-15;26=4675+";2;#"3535#3
9.-K6j�
 xx 
�7^^7�����M

M%Vl
4EP'�a
�

bfBgg�ff�-@37'#"+32>7>3>7>7.+32#"&';7'/��/Gq]N# =AJ,kkGq]N# =AI-� 3~Rkk3R%/6V'%4�V/��v���{/L^.*K9"�0K^/*K9!Z*0>�,$�1(
03D{�Βf3!55!5'!!7���3���f��f��M�g�g�����)"32>54.#".54>31%f��NN��ff��NN��fQ�j==j�Q\=j��M��ff��NN��ff��M��=i�QP�j=�{�(W/Q�i=
��5Fkv667>7>'.'&>#.&07>7647&"?>'%&'&67>76&7>67>'6?'�#A(G
#EgSw
1m)#B$I�	1	�\6#		0*,#	
x+EFT:>J��1�M��l .A
-K6F (
I.@�*	��	5$ ,>>/0X+HPP('#s�E0�X�3��3,<"32654&!"3!26=4&!"3!26=4&#!"3!26=4&f*<<*+<<���3��3��33<*+<<+*<33

3�3

3�3

3���9m4.'.5467674&10676&'.7&1061!045.5467674&10676&#"10630454&'3'>O)R>% 	/J'VF.'	 %&RR=3�,'-II-
(5MG9�.,B4)#H@&FB>k
'F!O>BF&@=#$rR(/)-*([[(*-).&7I0g&>���S2!.54>>5#53.'#53.'.'#5.#"#53#3#333>j��P&Fa;�;aF&P���-ZUj@#R-@  @-R#@jUZ-	�%6%�	�P��jH�s^!!^s�Hj��P��CJO)@"@@	#2FUUF2#	@@"@)OJC�?�_&276&'%&"%'#"&'%276&'�*�	
�) �)
	���))��
	�*�	
{����(?��@��C�gK(%"&/&676>#*1�
�;x/:��	g�;��
:��!��� %"/"'&4?'&4762762�3��3��3��3�����2��3��3��2�`m:(3>IT."267>4&'.467>2"&%64'7'&"'>2.467727"&'\H���GHHHHH���HHHHH��"##"#WZW#"##"#WZW�%%[[M2E�E2.dfd.��[%%[�2E�E2.dfd.(HHHHH���HHHHHH���H��#WZW"#""#"WZW#"##5E�E1-dfd.1[%%[�1E�F1.dfd-��[%%[��3 +#"&=#"&546;54632323	��		��	��		��

�{����2E32>7#".''.+"32>=4&''##067>;21#�8*Jg>>gJ*9!OX]..]XO �,
^
,c�=j�QQ�j=�c87f7Wc	
h
	cWa��	"!!"	/11N!	4''4	!N�DDu		u���#35%7'7 ``���'i�``��@�@�``����'���``@@�@�#'!!!";!32654&"&54632!!����&&��&&��%%%%%�����@&��&�&@&�%%%%�@@"���!"27>54&"&54632��0�$�(���(88((88��$(�d�0���8((88((8���0<��%7'./#'737>77'>?5'.'"&546325'.'7'.'7'.'7'./#'''77737>77'>77'>77'>?"&54632l)-:	@	:-)FF)-:	@	:-)FF�%%%%C9C'.8
;%@%;
8.'C9CC9C'.8
;%@%;
8.'C9C��:QQ::QQ�:-)FF)-:	@	:-)FF)-:	@	�%%%%�@%;
8.'C9CC9C'.8
;%@%;
8.'C9CC9C'.8
;%kQ::QQ::Q@����";W>54&'!!>54.'4>75.51!.=467>7!!.�4U=!��!=U44U=!z!=U4��9S66S9�9S66S9�661�f1666M�M�!^s�H  H�s^!!^s�H  H�s^!�@FhMdMhFFhMdMhF"G@G3 2G@GxKLw @�%+2#5267>54&'.#"33>!3�]�zFFz�]G�225522�GG�2&2	���Nv����Fz�]]�zF`522�GG�22552&_4�Q�g;���@�@����'7EK"32>54.".54>32>54&#"1%.#">#!5]�zFFz�]]�zFFz�]K�a99a�KK�a99a�\
pP.P2[QE��P.Pp
EQ[�@@Fz�]]�zFFz�]]�zF��9a�KK�a99a�KK�a9�0Pp)"
'6E(�")pP0(E6'���@@����"06!4&#"!"3!2654&%2#"&546!33!26=3'7%���K55K��

@
�S%%%%���
�
��@�:�:@5KK5
��

@
@%%%%��`

`�e�:r�:���(4A.#"32>7>54.'>32467#".5j$T\c33c\T$$8&&8$$T\c33c\T$$8&&8$&!��/q>O�i<�&!/q>O�i<*$8&&8$$T\c33c\T$$8&&8$$T\c33c\T$��>q/!&<i�O>q/��!&<i�O���2.#"34>32!#".'7!732>5z#U`j8j��P`Aq�V.WOE�`�&Aq�V.WOE����#U`j8j��P&>+P��jV�qA$3 �`���V�qA$3 ����&>+P��j9#@.:EI#3#'#7'.'#3>7>6>7>'.7>'.'7�FX�g�\G��A	B�>%.N".)-.[
X='C��!BL#d3<BQ7@;O1�!�!���f�C� <=��&
$9u&(7.[%+E���
oH5�9j6,
	�b	2���s0;HT`ly�90>769067>76&17>1'4632#"&534632#"&74632#"&74632#"&74632#"&534632#"&�����
>E7s�Ұ
�|K]Q.6-��
/4*��������sbuc.�����)2+

	���

�
*/&T�|��5!"27>54&"&54632>7>'7&'7X��*�^i
#�
�#22#"22�(][R 
xy�m'$eqr1!�
�_#
���*Q��2#"22"#2��
,&)b0
�~:w2/6&+p-AU4632#"&>54&'.54>7#.54>7>54.�K55KK55K&>,,>&!''!��'!&>,,>&!'�$4!6W>"">W6!4$�6W>"">W6!4$$4�5KK55KKN;HT..TH;4�SS�4��S�4;HT..TH;4�S@zn`("]o~DD~o]"(`nzp"]o~DD~o]"(`nz@@zn`@����37OS326=4&+5##";33#26=4&+##";35'3#26=4&+5##";3'3#��������������������������@�@�������@������@�����3"%>54&'%32654&#".#"326732654&`";�Q�;"B^^BB^�Q;"B^^B";�^BB^^�

�^BB^^B
�^BB^�
B^^BB^~]}H'27>4&'."01267871'01"&'.46787162"'&47�A��(((s(�!""!"UXT"�g/////v{v/A��"TXT!"!!"�(r)((�z
'


EyA��(r)((�"TXU"!""!�g/v{v/////A��"!!"!TXT"�(()r(�z

&
E���@�"10>54."&54632BuW2dxddxd2WuBPppPPpp�2WuBx�̂��xBuW2�pPPppPPp����5	5&&>@�����8&+iOF��������e��Mr�����A%5>54.#"!4.>7.'.5467>7.#"!>75K$NHHN$K5Q�g;�;g���*e9	P9
OZHN$K5Q�g;
�5�J<iN--Ni<J�5-CW00WC-)
*Y-Aw20<:E-Ni<J�5-CW0
	@!!����@��@@@
%!!!@������ ���@��@�����%Do4.#"!'>.54632'>54&#".54>32''>54.#".54>32P��jj��P1Y{I�I{Y1��%%3,:K55K:,KDW(F]55]F(WDK�I/P: 2WuBBuW2 :P/I<dH(Gy�]]�yG(Hd<�j��PP��jS�}_  _}�(%%;;	F.5KK5.F	�O5aJ,,Ja5O����;O`5BuW22WuB5`O;�SkE]�~JJ~�]EkS#����Tan.'.67>7.'.'>7464&'4&'&#>7>7.'.'*#7.326'''"&5462�		18 (qG
-;n;
9p7#%@"!=!*4p:<n;-
<92
*#
93	%�I43EG23H,2!!/2!!/!	HUW#
Eq(6e5(5f2(TTU+0V--U.��0g6
'6e6&%6F($XWJ	�3GJ42EJ3"00 !10 ���UY]ae%#54&#!5326=4&+";!"#";26=4&+5!#";26=4&+5!#";26=4&#53#5353#53�B.�����.B����܀�����������.B����B.���������������@���@��!-48181!8181!5!"3!2654&##"&54632!537������&&�&&�8((88((8@��@�@�@&�&&&�(88((88����������!!%!!!!%!!!!%!!��������������������������������`� @@���� ��@�@@��`�`` %��@``@�����@���@�@73��@@����@��@��@�@@��@���@�@#������@@@�`��@�����@��`�W�W_<�դ�դ����������J�V; *f8=3fq��l3Qf23�!��{"@@ @@C2@~���#����
:Zh<`�2�8h��j�P��6��	T	�

"
`t���
.
�
�Hp���j�p��P�&��P��.�p�:l����J8
�`6uK
�		g	=	|	 	R	
4�icomoonicomoonVersion 1.0Version 1.0icomoonicomoonicomoonicomoonRegularRegularicomoonicomoonFont generated by IcoMoon.Font generated by IcoMoon.css/component_default_box_red.css000060400000002560152455614210013262 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_box_black.css");




#acyarchivelisting .button:hover, #unsubbutton_div .button:hover, #acymodifyform .button:hover {
    color:#bc1f00;}


#acyarchivelisting .contentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}



#acyarchiveview .contentheading{
	color:#bc1f00;
}



#acylistslisting .componentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}
#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}




#acymodifyform legend{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyusersubscription .list_name{
    color: #bc1f00;
}
	

#unsubpage .unsubintro{
	color:#bc1f00;
	border-bottom: 1px solid #bc1f00;
}
#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #bc1f00;
    color: #bc1f00;
}



css/component_default_square_red.css000060400000002600152455614210013765 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_square_black.css");




#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#bc1f00 !important;
}

	

#acyarchivelisting .contentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#770000;}


#acyarchiveview .contentheading{
	color:#bc1f00;}



#acylistslisting .componentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}



#acymodifyform legend{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyusersubscription .list_name{
    color: #bc1f00;
}
	

#unsubpage .unsubintro{
	color:#bc1f00;
	border-bottom: 1px solid #bc1f00;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #bc1f00;
    color: #bc1f00;
}



css/component_default_square_blue.css000060400000003447152455614210014154 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_square_black.css");




#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#5a99af !important;
}

	

#acyarchivelisting .contentheading{
	color:#39616f;
	border-bottom:1px solid #39616f;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#5a99af;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#5a99af;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#5a99af;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#39616f;}
	
	
#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ecf2f5;}
#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e3e9ec;}


#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f4f8f9;}
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e3e9ec;}
	

#acyarchiveview .contentheading{
	color:#5a99af;}



#acylistslisting .componentheading{
	color:#39616f;
	border-bottom:1px solid #39616f;
}

#acylistslisting .list_name a{
    color:#5a99af;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#5a99af;
}

div.acymailing_list:hover{
	background-color:#f4f8f9;}



#acymodifyform legend{
	color:#39616f;
	border-bottom:1px solid #39616f;
}

#acyusersubscription .list_name{
    color: #5a99af;
}
	

#unsubpage .unsubintro{
	color:#5a99af;
	border-bottom: 1px solid #5a99af;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #5a99af;
    color: #5a99af;
}



css/module_default_square_green.css000060400000001150152455614210013575 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_square_black.css");




.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#9e9c07 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#9e9c07!important;
}
css/component_default_shadow_black.css000060400000022233152455614210014260 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");



#acyarchivelisting .inputbox, #acyuserinfo .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-radius:15px !important;
	margin-right: 10px!important;
    padding: 2px !important;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;}
	
#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
border:1px solid #aaa !important;
box-shadow: inset 0 0 5px 3px #eee !important;
-moz-box-shadow: inset 0 0 3px 3px #e5e5e5 !important;
-webkit-box-shadow: inset 0 0 3px 3px #e5e5e5 !important;}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid #bbb !important;}
	


#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	border:none !important;
	border-radius:15px !important;
	padding: 2px 5px!important;
	margin-right:5px !important;
	
background-color:#730028 !important;
background-image: linear-gradient(bottom, #333 21%, #666 58%) !important;
background-image: -o-linear-gradient(bottom, #333 21%, #666 58%) !important;
background-image: -moz-linear-gradient(bottom, #333 21%, #666 58%) !important;
background-image: -webkit-linear-gradient(bottom, #333 21%, #666 58%) !important;
background-image: -ms-linear-gradient(bottom, #333 21%, #666 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #333 0%,#666 100%);   background: radial-gradient(top, ellipse cover, #333 0%,#666 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#666666',GradientType=0 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
color:#fff !important;
background-color:#b90041 !important;

background-color:#730028 !important;
background-image: linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
background-image: -o-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
background-image: -moz-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
background-image: -webkit-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
background-image: -ms-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #666666 0%,#cccccc 100%);   background: radial-gradient(top, ellipse cover, #666666 0%,#cccccc 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#666666',GradientType=0 ) !important; }




#acyarchivelisting table{
	border:0px !important;}
	
#acyarchivelisting .contentheading{
	color:#000;
	font-size:16px;
	font-weight:bold;
	border-bottom:1px solid #000;
	padding-bottom:4px;
}

#acyarchivelisting .contentpane form{
	background-color: #FFFFFF;
    border-style: solid;
	border-color:#ccc;
    border-width: 1px;
    padding: 10px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#333;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#333;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#666;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#eeeded;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}


#acylistslisting .componentheading{
	color:#000;
	font-weight:bold;
	border-bottom:1px solid #000;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	padding-bottom:4px;
}

#acylistslisting .list_name a{
	background-color: transparent;
    color:#666;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
}

#acylistslisting p{
	line-height: 15px;
    margin: 3px 0;}
    

div.acymailing_list:hover{
	background-color :#f5f5f5;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
    border:none;
	border-bottom:1px solid #ccc;
    margin: 0px;
    padding-top: 10px;
}


#acyusersubscription th{
color:#666;
padding: 4px 5px;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
border:1px solid #ccc;}
	

#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo #trname td{
	padding-top:10px;}
	
#acyuserinfo #trplus td{
	padding-bottom:10px;}



#acyuserinfo select{
	border:1px solid #dcc2b2;}
	
#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acymodifyform legend{
	color:#000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	border-bottom:1px solid #000;
	margin-bottom:20px;
	padding-bottom:4px;
}

#acyuserinfo input{
	margin:0 5px;
}

#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
    color: #666;
    font-size: 12px;
    font-weight: bold;
    margin: 0px;
    padding-top: 20px;
    text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}
	

#unsubpage{
padding: 20px 20px 40px;
font-size:11px;
border:1px solid #ccc;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}
	
#unsubpage input{
	margin-right:5px;}
	
#unsubpage .unsubintro{
	font-weight:bold;
	color:#000;
	font-size:12px;
	padding:0px;
	border-bottom: 1px solid #000;
	padding-bottom:4px;
	margin-bottom:10px;}

#unsubpage .unsuboptions{
	padding:0px;}


#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #000;
    color: #000;
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 30px;
    padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
    margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
    margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color::#fff;
	border-radius:15px;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}


#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}


#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#000;
	font-size:17px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}


css/module_default_box_sand.css000060400000001143152455614210012714 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_box_black.css");

	
.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#aca489 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#aca489!important;}
css/component_default_square_green.css000060400000002601152455614210014314 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_square_black.css");




#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#9e9c07 !important;
}


#acyarchivelisting .contentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#727127;}
	
	

#acyarchiveview .contentheading{
	color:#9e9c07;}



#acylistslisting .componentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}



#acymodifyform legend{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyusersubscription .list_name{
    color: #9e9c07;
}
	

#unsubpage .unsubintro{
	color:#9e9c07;
	border-bottom: 1px solid #9e9c07;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #9e9c07;
    color: #9e9c07;
}



css/module_default_shadow_black.css000060400000012177152455614210013551 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");




.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-radius:15px !important;
	-moz-border-radius:15px !important;
	margin-right: 10px!important;
	padding: 2px !important;
	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
}

.acymailing_module .inputbox:hover{
	border:1px solid #aaa !important;
	box-shadow: inset 0 0 5px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #e5e5e5 !important;
	-webkit-box-shadow: inset 0 0 3px 3px #e5e5e5 !important;
}

.acymailing_module .inputbox:focus{
	border:1px solid #bbb !important;}



.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited  {	color:#fff !important;
	border:none !important;
	border-radius:15px !important;
	padding: 2px 5px!important;
	margin-right:5px !important;

	background-color:#730028 !important;
	background-image: linear-gradient(bottom, #333 21%, #666 58%) !important;
	background-image: -o-linear-gradient(bottom, #333 21%, #666 58%) !important;
	background-image: -moz-linear-gradient(bottom, #333 21%, #666 58%) !important;
	background-image: -webkit-linear-gradient(bottom, #333 21%, #666 58%) !important;
	background-image: -ms-linear-gradient(bottom, #333 21%, #666 58%) !important;

	background: -ms-linear-gradient(top, ellipse cover, #333 0%,#666 100%); 	background: radial-gradient(top, ellipse cover, #333 0%,#666 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#333333',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active{
	color:#fff !important;
	background-color:#b90041 !important;

	background-color:#730028 !important;
	background-image: linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
	background-image: -o-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
	background-image: -moz-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
	background-image: -webkit-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;
	background-image: -ms-linear-gradient(bottom, #666666 21%, #cccccc 58%) !important;

	background: -ms-linear-gradient(top, ellipse cover, #666666 0%,#cccccc 100%); 	background: radial-gradient(top, ellipse cover, #666666 0%,#cccccc 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#666666',GradientType=0 ) !important; }


.acymailing_module_form td{
	padding-bottom:0px;}


.acymailing_module .acyfield_html {
	display:inline-block;
	padding-right:10px !important;}



.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	text-decoration:none !important;
	display:inline-block;
}



.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}


.acymailing_module_form .acymailing_lists a:hover{
	background-color:transparent;
	color:#B90041;
	text-decoration:underline;}

.acymailing_module_form .acymailing_form a:link{
	background-color:transparent;
	color:#000;
	text-decoration:none;}

.acymailing_module_form .acymailing_form a:hover{
	background-color:transparent;
	color:#B90041;
	text-decoration:underline;}

.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter: none !important;}

.acymailing_module .invalid{
border:1px solid #999 !important;}
css/module_default_box_black.css000060400000012266152455614210013053 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");




.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-radius:5px !important;
	margin-right: 10px!important;
	padding: 3px !important;
	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ) !important; }


.acymailing_module .inputbox:hover{
	border:1px solid #ddd !important;
	border-bottom:1px solid #aaa !important;}

.acymailing_module .inputbox:focus{
	border:1px solid #bbb !important;}





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#666 !important;
	border:1px solid #ddd !important;
	border-radius:5px !important;
	padding: 3px !important;
	text-shadow:1px 1px 1px #fff !important;
	margin-right:5px !important;
	background-color:#CCC !important;

	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;

	background: -ms-linear-gradient(top, ellipse cover, #e3eff3 0%,#5a99ab 100%); 	background: radial-gradient(top, ellipse cover, #e3eff3 0%,#5a99ab 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ); 
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#000 !important;
	background-color:#f5f5f5 !important;
	border-bottom:1px solid #ccc !important;
	background-image: linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
	background-image: -o-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb', endColorstr='#ffffff',GradientType=0 ); }


.acymailing_module_form td{
	padding-bottom:0px;}


.acymailing_module .acyfield_html {
	display:inline-block;
	padding-right:10px !important;}




.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	text-decoration:none;
	display:inline-block;}


.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}


.acymailing_module_form .acymailing_lists a:hover{
	background-color:transparent;
	color:#79adb2;
	text-decoration:underline;}

.acymailing_module_form .acymailing_form a:link{
	background-color:transparent;
	color:#000;
	text-decoration:none;}

.acymailing_module_form .acymailing_form a:hover{
	background-color:transparent;
	color:#79adb2;
	text-decoration:underline;}

.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter: none !important;}

.acymailing_module .invalid{
border:1px solid #999 !important;}
css/component_default_box_black.css000060400000021462152455614210013566 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");





#acyuserinfo .inputbox, #acyarchivelisting .inputbox{
	color:#666;
	border:1px solid #ddd;
	border-radius:5px;
	padding: 3px;
	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ); }


#acyuserinfo .inputbox:hover, #acyarchivelisting .inputbox:hover{
	border:1px solid #ddd !important;
	border-bottom:1px solid #aaa !important;}

#acyuserinfo .inputbox:focus, #acyarchivelisting .inputbox:focus{
	border:1px solid #bbb !important;}



#acyarchivelisting .button, #unsubbutton_div .button, #acymodifyform .button {
	color:#666;
	border:1px solid #ddd;
	border-radius:5px;
	padding: 3px;
	text-shadow:1px 1px 1px #fff;

	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ); }

#acyarchivelisting .button:hover, #unsubbutton_div .button:hover, #acymodifyform .button:hover {
	color:#000;
	border:1px solid #ddd;
	border-radius:5px;
	padding: 3px;
	text-shadow:1px 1px 1px #fff;
	background-image: linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%);
	background-image: -o-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%);
	background-image: -moz-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%);
	background-image: -webkit-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%);
	background-image: -ms-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb', endColorstr='#ffffff',GradientType=0 ); }





#acyarchivelisting table{
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#000;
	font-size:16px;
	font-weight:bold;
	border-bottom:1px solid #000;
	padding-bottom:4px;
}

#acyarchivelisting .contentpane form{
	background-color: #FFFFFF;
		border-style: solid;
	border-color:#ccc;
		border-width: 1px;
		padding: 10px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#333;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#333;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#666;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#eeeded;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}


#acylistslisting .componentheading{
	color:#000;
	font-weight:bold;
	border-bottom:1px solid #000;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	padding-bottom:4px;
}

#acylistslisting .list_name a{
	background-color: transparent;
		color:#666;
		cursor: pointer;
		font-size: 12px;
		font-weight: bold;
		text-decoration: none;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
}

#acylistslisting p{
	line-height: 15px;
		margin: 3px 0;}


div.acymailing_list:hover{
	background-color :#F5f5f5;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
		border:none;
	border-bottom:1px solid #ccc;
		margin: 0px;
		padding-top: 10px;
}


#acyusersubscription th{
	color:#666;
	padding: 4px 5px;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ); /* IE6-9 vertical */;
border:1px solid #ccc;}


#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo #trname td{
	padding-top:10px;}

#acyuserinfo #trplus td{
	padding-bottom:10px;}


#acyuserinfo select{
	border:1px solid #dcc2b2;}

#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acymodifyform legend{
	color:#000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	border-bottom:1px solid #000;
	margin-bottom:20px;
	padding-bottom:4px;
}

#acyuserinfo input{
	margin:0 5px;
}

#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
		color: #666;
		font-size: 12px;
		font-weight: bold;
		margin: 0px;
		padding-top: 20px;
		text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}


#unsubpage{
padding: 20px 20px 40px;
font-size:11px;
border:1px solid #ccc;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}

#unsubpage input{
	margin-right:5px;}

#unsubpage .unsubintro{
	font-weight:bold;
	color:#000;
	font-size:12px;
	padding:0px;
	border-bottom: 1px solid #000;
	padding-bottom:4px;
	margin-bottom:10px;}

#unsubpage .unsuboptions{
	padding:0px;}

#unsubpage .unsubsurveytext{
		border-bottom: 1px solid #000;
		color: #000;
		display: block;
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 10px;
		margin-top: 30px;
		padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color::#fff;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}


#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;}

#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#000;
	font-size:16px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}


css/acymessages.css000060400000001747152455614210010364 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

#acymailing_messages_error, #acymailing_messages_success, #acymailing_messages_message, #acymailing_messages_info, #acymailing_messages_warning {
   margin: 5px 10px;
}

#acymailing_messages_warning a{
	color: #c4872f;
}

#system-message-container{
	margin: 0px;
	height: 0px;
}

.alert p{
	margin: 0;
}

.alert{
	padding: 8px !important;
	margin-bottom: 18px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
	background-color: #fcf8e3;
	border: 1px solid #fbeed5;
	border-radius: 4px;
	margin: 10px;
}

.alert ul{
	list-style-type: none;
	margin-bottom: 0;
}

.alert .close{
	right: 0px !important;
}

.alert-success{
	background-color: #dff0d8;
	border-color: #d6e9c6;
	color: #468847;
}

.alert-info{
	background-color: #d9edf7;
	border-color: #bce8f1;
	color: #3a87ad;
}
css/module_default_color_blue.css000060400000002014152455614210013242 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_color_black.css");




.acymailing_module .inputbox:hover{
	border:1px solid #588896!important;
	border-bottom: 1px solid #235563!important;
	border-right: 1px solid #235563!important;
	}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited, .acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate {	color:#fff !important;
	background-color:#235563 !important;}

.acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active, .acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover {
    color:#fff!important;
	background-color:#588896 !important;}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#588896!important;}
css/module_default_basic_red.css000060400000001651152455614210013036 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_basic_black.css");



.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#bc1f00 !important;
	background-color:#fff !important;
	border:1px solid #ccc !important;
	border-right:1px solid #999 !important;
	border-bottom:1px solid #999 !important;
}



.acymailing_module .acymailing_module_form .acymailing_lists a:hover, .acymailing_module .acymailing_module_form .acymailing_lists a:active{
	color:#bc1f00!important;}
	
.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;}

css/module_default_square_sand.css000060400000001150152455614210013422 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_square_black.css");




.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#aca489 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#aca489!important;
}
css/component_default_classic_raspberry.css000060400000002537152455614210015356 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_classic_black.css");




#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#B90041 !important;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff!important;
	background-color:#B90041 !important;
}



	

#acyarchivelisting .contentheading{
	color:#59001F;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#b90041;
}


#acyarchiveview .contentheading{
	color:#b90041;}



#acylistslisting .componentheading{
	color:#59001F;
}

#acylistslisting .list_name a{
    color:#B90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}



#acymodifyform legend{
	color:#59001F;
}

#acyusersubscription .list_name{
    color: #B90041;
}
	

#unsubpage .unsubsurveytext{
    color: #59001F;
}

#unsubpage .unsubintro{
	color:#59001F;
}
css/component_default_basic_red.css000060400000002550152455614210013552 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_basic_black.css");

	
#acymodifyform .button:hover, #unsubbutton_div .button:hover, #acyarchivelisting .button:hover {
    color:#bc1f00;}


#acyarchivelisting .contentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}



#acyarchiveview .contentheading{
	color:#bc1f00;}
	
	

#acylistslisting .componentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}


#acymodifyform legend{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyusersubscription .list_name{
    color: #bc1f00;
}


#unsubpage .unsubintro{
	color:#770000;
	border-bottom: 1px solid #770000;
}

#unsubpage .unsubsurveytext{
	color:#770000;
	border-bottom: 1px solid #770000;
}

css/component_default_color_raspberry.css000060400000003555152455614210015054 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_color_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #b90041!important;
	border-bottom: 1px solid #730028!important;
	border-right: 1px solid #730028!important;
	}


#acyarchivelisting .contentpane tbody .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	background-color:#730028 !important;
}

#acyarchivelisting .contentpane tbody .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#fff!important;
	background-color:#b90041 !important;
}
	

#acyarchivelisting .contentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#b90041;
}




#acyarchiveview .contentheading{
	color:#b90041;}
	
	



#acylistslisting .componentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acylistslisting .list_name a{
    color:#B90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}



#acymodifyform legend{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acyusersubscription th{
	color:#fff;
	background-color:#730028;}
	
	
#acyusersubscription .list_name{
    color: #B90041;
}
	


#unsubpage .unsubintro{
	border-bottom: 1px solid #B90041;
    color: #730028;}
	
#unsubpage .unsubsurveytext{
   	border-bottom: 1px solid #B90041;
    color: #730028;
}



css/component_default_radial_raspberry.css000060400000006747152455614210015200 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_radial_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	box-shadow: inset 0 0 3px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #eee !important;
	-webkit-box-shadow: inset 0 0 3px 3px #eee !important;
}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid  #59001f !important;}





#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#fff !important;
	border:1px solid #59001f !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #b90041  21%, #59001f 58%) !important;
background-image: -o-radial-gradient(top, #b90041 21%, #59001f 58%) !important;
background-image: -moz-radial-gradient(top, #b90041 21%, #59001f 58%) !important;
background-image: -webkit-radial-gradient(top, #b90041 21%, #59001f 58%) !important;
background-image: -ms-radial-gradient(top, #b90041 21%, #59001f 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #b90041 0%,#59001f 100%);   background: radial-gradient(top, ellipse cover, #b90041 0%,#59001f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b90041', endColorstr='#59001f',GradientType=1 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	color:#fff !important;
	border:1px solid #b90041 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #de5384  21%, #b90041 58%) !important;
background-image: -o-radial-gradient(top, #de5384 21%, #b90041 58%) !important;
background-image: -moz-radial-gradient(top, #de5384 21%, #b90041 58%) !important;
background-image: -webkit-radial-gradient(top, #de5384 21%, #b90041 58%) !important;
background-image: -ms-radial-gradient(top, #de5384 21%, #b90041 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #de5384 0%,#b90041 100%);   background: radial-gradient(top, ellipse cover, #de5384 0%,#b90041 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#de5384', endColorstr='#b90041',GradientType=1 ) !important; /* IE6-9 vertical */}



#acyarchivelisting .contentheading{
	color:#59001f;
	border-bottom:1px dotted #59001f;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}
#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}



#acyarchiveview .contentheading{
	color:#b90041;
}


#acylistslisting .componentheading{
	color:#59001f;
	border-bottom:1px dotted #59001f;
}

#acylistslisting .list_name a{
    color:#b90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}


#acymodifyform legend{
	color:#59001f;
	border-bottom:1px dotted #59001f;
}

#acyusersubscription .list_name{
    color: #b90041;
}


#unsubpage .unsubintro{
	color:#b90041;
	border-bottom: 1px dotted #b90041;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px dotted #b90041;
    color: #b90041;
}
css/component_default_shadow_raspberry.css000060400000005667152455614210015231 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_shadow_black.css");



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button {
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -o-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -moz-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -webkit-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -ms-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #730028 0%,#b90041 100%);   background: radial-gradient(top, ellipse cover, #730028 0%,#b90041 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b90041', endColorstr='#730028',GradientType=0 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff !important;
	background-color:#b90041 !important;
background-image: linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -o-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -moz-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -webkit-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -ms-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #a2023a 0%,#eb0053 100%);   background: radial-gradient(top, ellipse cover, #a2023a 0%,#eb0053 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eb0053', endColorstr='#a2023a',GradientType=0 ) !important; }



#acyarchivelisting .contentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}


#acyarchiveview .contentheading{
	color:#b90041;}
	
	

#acylistslisting .componentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acylistslisting .list_name a{
    color:#B90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}



#acymodifyform legend{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acyusersubscription .list_name{
    color: #B90041;
}

	

#unsubpage .unsubintro{
	color:#b90041;
	border-bottom: 1px solid #b90041;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #b90041;
    color: #b90041;
}

css/frontendedition.css000060400000012675152455614210011255 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

div.toolbar { float: right; text-align: right; padding: 0; }
div.toolbar span { float: none; width: 32px; height: 32px; margin: 0 auto; display: block; background-repeat:no-repeat;}
div.toolbar a {
	display: block;
	float: left;
	white-space: nowrap;
	border: 1px solid #fbfbfb;
	padding: 1px 5px;
	cursor: pointer;
	text-align:center;
}
div.toolbar a:hover {
	border-left: 1px solid #eee;
	border-top: 1px solid #eee;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	text-decoration: none;
	color: #0B55C4;
}
div.toolbar span.divider { border-right: 1px solid #eee; width: 5px; }

#acytoolbar tr, #acytoolbar td{
	border:none !important;}

div#acy_content dl.tabs dt {
	-moz-background-clip:border;
	-moz-background-inline-policy:continuous;
	-moz-background-origin:padding;
	background:#F0F0F0 none repeat scroll 0 0;
	border-left:1px solid #CCCCCC;
	border-right:1px solid #CCCCCC;
	border-top:1px solid #CCCCCC;
	color:#666666;
	float:left;
	margin-left:3px;
	padding:4px 10px;
}

div#acy_content dl.tabs dt.open {
	-moz-background-clip:border;
	-moz-background-inline-policy:continuous;
	-moz-background-origin:padding;
	background:#F9F9F9 none repeat scroll 0 0;
	border-bottom:1px solid #F9F9F9;
	color:#000000;
	z-index:100;
}

div#acy_content dd,div#acymailing_content dl {
	margin:0;
	padding:0;
}

div#acy_content div.current {
	border:1px solid #CCCCCC;
	clear:both;
	padding:10px;
	max-width: 100%;
}

table.adminlist {
	width: 100%;
	border-spacing: 1px;
	background-color: #e7e7e7;
	color: #666;
}

table.adminlist td,
table.adminlist th { padding: 4px; }

table.adminlist tbody tr.row0:hover td,
table.adminlist tbody tr.row1:hover td  { background-color: #ffd ; }

table.adminlist tbody tr td 	   { height: 25px; background: #fff; border: 1px solid #fff; }
table.adminlist tbody tr.row1 td { background: #f9f9f9; border-top: 1px solid #FFF; }

table.adminlist tfoot tr { text-align: center;  color: #333; }
table.adminlist tfoot td,
table.adminlist tfoot th { background-color: #f3f3f3; border-top: 1px solid #999; text-align: center; }

table.adminlist thead th {
	text-align: center;
	background: #f0f0f0;
	color: #666;
	border-bottom: 1px solid #999;
	border-left: 1px solid #fff;
}

table.adminlist thead a:hover { text-decoration: none; }

table.admintable td.key.vtop { vertical-align: top; }

table.adminform {
	background-color: #f9f9f9;
	border: solid 1px #d5d5d5;
	width: 100%;
	border-collapse: collapse;
	margin: 8px 0 10px 0;
	margin-bottom: 15px;
	width: 100%;
}

table.adminform td { padding: 3px; text-align: left; }

#acytoolbar a:link, #acytoolbar a:visited{
	background-color:transparent;
	text-decoration:none;
}

#acytoolbar a:hover, #acytoolbar a:active, #acytoolbar a:focus  {
	text-decoration:underline;
	background-color:transparent !important;
	color:#095197 !important;
}

#acy_form_menu h1{
	font-size:18px !important;
	padding:0px;
	margin:0px;
}

#acy_content th.title{
	font-size:100%;
}

.icon-32-cancel {background-image:url(../images/icons/icon-32-cancel.png) !important; background-position:0% 0% !important}
.icon-32-send {background-image:url(../images/icons/icon-32-acysend.png) !important; background-position:0% 0% !important}
.icon-32-save {background-image:url(../images/icons/icon-32-save.png) !important; background-position:0% 0% !important}
.icon-32-edit {background-image:url(../images/icons/icon-32-edit.png) !important; background-position:0% 0% !important}
.icon-32-apply {background-image:url(../images/icons/icon-32-apply.png) !important; background-position:0% 0% !important}
.icon-32-delete {background-image:url(../images/icons/icon-32-delete.png) !important; background-position:0% 0% !important}
.icon-32-new {background-image:url(../images/icons/icon-32-new.png) !important; background-position:0% 0% !important}


.tree{
	position: absolute;
	left: 0;
	right: 0;
	background-color: white;
	-webkit-box-shadow: 0 4px 8px #d7d7d7;
	-moz-box-shadow: 0 4px 8px #d7d7d7;
	box-shadow: 0 4px 8px #d7d7d7;
	z-index: 2;
}

.tree li{
	list-style: none;
}

.tree ul{
	margin-left: 10px;
}

.tree > ul{
	margin: 15px 0;
}

.tree-child-item .tree-child-title{
	cursor: pointer;
	font-size: 15px;
	color: #545454;
}

.tree-icon{
	padding-right: 5px;
	padding-left: 5px;
	font-size: 15px;
	color: #6b6c5a;

}

.tree-child-item.tree-empty .tree-icon:before{
	opacity: 0;
}

.tree-child-item .tree-icon:before{
	text-decoration: none;
	content: '\25bc';
	padding: 0 5px;
}

.tree-child-item.tree-closed .tree-icon, .tree-child-item.tree-closed .tree-icon:before{
	content: '\25b6';
	color: #aeaf98;
}

.tree-closed .acyicon-folder{
	font-size: 12px;
}

.tree-closed .tree-icon:before{
	font-size: 16px;
}

.tree-icon:before{
	font-size: 12px;
}

.tree-current > span,
.tree-child-item:hover > span{
	color: #08c !important;
}

.tree-child-item.tree-closed ul{
	height: 0;
	-webkit-transform: scaleY(0);
	-moz-transform: scaleY(0);
	-ms-transform: scaleY(0);
	-o-transform: scaleY(0);
	transform: scaleY(0);
}

.tree-child-item ul{
	height: auto;
	overflow: hidden;
	-webkit-transform: scaleY(1);
	-moz-transform: scaleY(1);
	-ms-transform: scaleY(1);
	-o-transform: scaleY(1);
	transform: scaleY(1);
	-webkit-transition: transform 0.5s;
	-moz-transition: transform 0.5s;
	-ms-transition: transform 0.5s;
	-o-transition: transform 0.5s;
	transition: transform 0.5s;
}
css/module_default_radial_red.css000060400000005337152455614210013216 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_radial_black.css");


.acymailing_module .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	box-shadow: inset 0 0 3px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #eee !important;
	-webkit-box-shadow: inset 0 0 3px 3px #eee !important;}

.acymailing_module .inputbox:focus{
	border:1px solid  #770000 !important;}
	
	

.acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#fff !important;
	border:1px solid #770000 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #bc1f00  21%, #770000 58%) !important;
background-image: -o-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;
background-image: -moz-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;
background-image: -webkit-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;
background-image: -ms-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #bc1f00 0%,#770000 100%);   background: radial-gradient(top, ellipse cover, #bc1f00 0%,#770000 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bc1f00', endColorstr='#770000',GradientType=1 ) !important; }

.acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff !important;
	border:1px solid #bc1f00 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #ec2700  21%, #bc1f00 58%) !important;
background-image: -o-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;
background-image: -moz-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;
background-image: -webkit-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;
background-image: -ms-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #ec2700 0%,#bc1f00 100%);   background: radial-gradient(top, ellipse cover, #ec2700 0%,#bc1f00 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec2700', endColorstr='#bc1f00',GradientType=1 ) !important; }



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/module_default_radial_green.css000060400000005336152455614210013543 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_radial_black.css");


.acymailing_module .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	box-shadow: inset 0 0 3px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #eee !important;
	-webkit-box-shadow: inset 0 0 3px 3px #eee !important;}

.acymailing_module .inputbox:focus{
	border:1px solid  #727127 !important;}
	


.acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#fff !important;
	border:1px solid #727127 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #9e9c07  21%, #727127 58%) !important;
background-image: -o-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;
background-image: -moz-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;
background-image: -webkit-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;
background-image: -ms-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #9e9c07 0%,#727127 100%);   background: radial-gradient(top, ellipse cover, #9e9c07 0%,#727127 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e9c07', endColorstr='#727127',GradientType=1 ) !important; }

.acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff !important;
	border:1px solid #9e9c07 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #d3d14c  21%, #9e9c07 58%) !important;
background-image: -o-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;
background-image: -moz-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;
background-image: -webkit-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;
background-image: -ms-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #d3d14c 0%,#9e9c07 100%);   background: radial-gradient(top, ellipse cover, #d3d14c 0%,#9e9c07 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d3d14c', endColorstr='#9e9c07',GradientType=1 ) !important; }



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#9e9c07!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/index.html000060400000000054152455614210007331 0ustar00<html><body bgcolor="#FFFFFF"></body></html>css/component_default_radial_green.css000060400000006722152455614210014260 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_radial_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	box-shadow: inset 0 0 3px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #eee !important;
	-webkit-box-shadow: inset 0 0 3px 3px #eee !important;
}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid  #727127 !important;}



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#fff !important;
	border:1px solid #727127 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #9e9c07  21%, #727127 58%) !important;
background-image: -o-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;
background-image: -moz-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;
background-image: -webkit-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;
background-image: -ms-radial-gradient(top, #9e9c07 21%, #727127 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #9e9c07 0%,#727127 100%);   background: radial-gradient(top, ellipse cover, #9e9c07 0%,#727127 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e9c07', endColorstr='#727127',GradientType=1 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	color:#fff !important;
	border:1px solid #9e9c07 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #d3d14c  21%, #9e9c07 58%) !important;
background-image: -o-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;
background-image: -moz-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;
background-image: -webkit-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;
background-image: -ms-radial-gradient(top, #d3d14c 21%, #9e9c07 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #d3d14c 0%,#9e9c07 100%);   background: radial-gradient(top, ellipse cover, #d3d14c 0%,#9e9c07 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d3d14c', endColorstr='#9e9c07',GradientType=1 ) !important;  }



#acyarchivelisting .contentheading{
	color:#727127;
	border-bottom:1px dotted #727127;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}
#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}



#acyarchiveview .contentheading{
	color:#9e9c07;
}


#acylistslisting .componentheading{
	color:#727127;
	border-bottom:1px dotted #727127;
}

#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}


#acymodifyform legend{
	color:#727127;
	border-bottom:1px dotted #727127;
}

#acyusersubscription .list_name{
    color: #9e9c07;
}


#unsubpage .unsubintro{
	color:#9e9c07;
	border-bottom: 1px dotted #9e9c07;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px dotted #9e9c07;
    color: #9e9c07;
}
css/component_default_basic_sand.css000060400000003766152455614210013737 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_basic_black.css");

	
#acymodifyform .button, #unsubbutton_div .button, #acyarchivelisting .button {
    color:#777059;}

#acymodifyform .button:hover, #unsubbutton_div .button:hover, #acyarchivelisting .button:hover {
    color:#aca489;
	border-right:1px solid #aca489;
	border-bottom:1px solid #aca489;}


#acyarchivelisting .contentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#777059;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ece9e0;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e8e4d6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f2f0e8;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e8e4d6;
}



#acyarchiveview .contentheading{
	color:#777059;}
	
	

#acylistslisting .componentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#777059;
}

div.acymailing_list:hover{
	background-color:#f2f0e8;
}


#acymodifyform legend{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyusersubscription .list_name{
    color: #aca489;
}

#acyusersubscription th{
	background-color:#f2f0e8;}


#unsubpage .unsubintro{
	color:#777059;
	border-bottom: 1px solid #777059;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #777059;
    color: #777059;
}

css/acypopup.css000060400000002260152455614210007707 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@keyframes fadeIn {
    0% {
        visibility: hidden;
        opacity: 0;
    }
    100% {
        visibility: visible;
        opacity: 1;
    }
}

.acymailingpopup{
    cursor: pointer;
}

#acymailingpopupshadow{
    z-index: 101000;
    background-color: #000;
    position: fixed;
    left: 0px;
    top: 0px;
    bottom: 0px;
    right: 0px;
    opacity: 0.7;
}

#acymailingpopup{
    z-index: 101100;
    background-color: #fff;
    position: fixed;
    padding: 10px;
    border-radius: 3px;

    animation: 0.5s fadeIn forwards;
}

#acymailingpopup iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

#closepop {
    position: absolute;
    width: 15px;
    height: 15px;
    right: -10px;
    top: -10px;
    background-color: white;
    border-radius: 20px;
    border: 2px solid #525252;
    font-size: 15px;
    cursor: pointer;
    font-family: 'acyicon';
    line-height: 1;
    box-sizing: content-box;
}

#closepop:before{
    content: "\e621";
}
css/component_default_radial_red.css000060400000006744152455614210013736 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_radial_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	box-shadow: inset 0 0 3px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #eee !important;
	-webkit-box-shadow: inset 0 0 3px 3px #eee !important;
}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid  #770000 !important;}


#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#fff !important;
	border:1px solid #770000 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #bc1f00  21%, #770000 58%) !important;
background-image: -o-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;
background-image: -moz-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;
background-image: -webkit-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;
background-image: -ms-radial-gradient(top, #bc1f00 21%, #770000 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #bc1f00 0%,#770000 100%);   background: radial-gradient(top, ellipse cover, #bc1f00 0%,#770000 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bc1f00', endColorstr='#770000',GradientType=1 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	color:#fff !important;
	border:1px solid #bc1f00 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #ec2700  21%, #bc1f00 58%) !important;
background-image: -o-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;
background-image: -moz-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;
background-image: -webkit-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;
background-image: -ms-radial-gradient(top, #ec2700 21%, #bc1f00 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #ec2700 0%,#bc1f00 100%);   background: radial-gradient(top, ellipse cover, #ec2700 0%,#bc1f00 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec2700', endColorstr='#bc1f00',GradientType=1 ) !important; /* IE6-9 vertical */}



#acyarchivelisting .contentheading{
	color:#770000;
	border-bottom:1px dotted #770000;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}
#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}



#acyarchiveview .contentheading{
	color:#bc1f00;
}


#acylistslisting .componentheading{
	color:#770000;
	border-bottom:1px dotted #770000;
}

#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}


#acymodifyform legend{
	color:#770000;
	border-bottom:1px dotted #770000;
}

#acyusersubscription .list_name{
    color: #bc1f00;
}


#unsubpage .unsubintro{
	color:#bc1f00;
	border-bottom: 1px dotted #bc1f00;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px dotted #bc1f00;
    color: #bc1f00;
}
css/module_default_classic_black.css000060400000006306152455614210013702 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");




.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-right:1px solid #ccc!important;
	border-bottom:1px solid #ccc !important;
	margin-right: 10px!important;
		padding: 2px !important;}


.acymailing_module .inputbox:hover{
	border:1px solid #bbb!important;
	border-bottom: 1px solid #666!important;
	border-right: 1px solid #666!important
	}

.acymailing_module .inputbox:focus{
	border:1px solid #bbb !important;
	background-color:#f5f5f5 !important;}




.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#000 !important;
	padding: 2px !important;
	margin-right:5px !important;
	background:none !important;
	border:1px solid #ddd !important;
	border-right:1px solid #bbb !important;
	border-bottom:1px solid #bbb !important;
	background-color:#fff !important;
	text-decoration:none !important;
}


.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff!important;
	background-color:#000 !important;
}


.acymailing_module_form td{
	padding-bottom:0px;
}


.acymailing_module .acyfield_html{
	display:inline-block;
	padding-right:10px !important;
}



.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}


.acymailing_module_form .acymailing_lists a:hover{
	background-color:transparent;
	color:#B90041;
	text-decoration:underline;}

.acymailing_module_form .acymailing_form a:link{
	background-color:transparent;
	color:#000;
	text-decoration:none;}

.acymailing_module_form .acymailing_form a:hover{
	background-color:transparent;
	color:#B90041;
	text-decoration:underline;}

.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter: none !important;}

.acymailing_module .invalid{
border:1px solid #999 !important;}
css/module_default_basic_sand.css000060400000002121152455614210013202 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_basic_black.css");




.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a, .acymailing_mootoolsbutton a{
	color:#777059;}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#aca489 !important;
	background-color:#fff !important;
	border:1px solid #ccc !important;
	border-right:1px solid #aca489 !important;
	border-bottom:1px solid #aca489 !important;
}


.acymailing_module .acymailing_module_form .acymailing_lists a:hover, .acymailing_module .acymailing_module_form .acymailing_lists a:active{
	color:#777059!important;}
	
.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#777059!important;}
css/module_default_color_black.css000060400000006215152455614210013376 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");




.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-right:1px solid #ccc!important;
	border-bottom:1px solid #ccc !important;
	margin-right: 10px!important;
	padding: 2px !important;
}


.acymailing_module .inputbox:hover{
	border:1px solid #999!important;
	border-bottom: 1px solid #333!important;
	border-right: 1px solid #333!important;
}

.acymailing_module .inputbox:focus{
	border:1px solid #bbb !important;
	background-color:#f5f5f5 !important;
}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited, .acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate {
	color:#fff !important;
	padding: 4px !important;
	margin-right:5px !important;
	background:none !important;
	border:none !important;
	border:1px solid #ddd !important;
	background-color:#000 !important;
	text-decoration:none !important;
}

.acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active, .acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover {
	color:#fff!important;
	background-color:#666 !important;
}



.acymailing_module_form td{
	padding-bottom:0px;
}


.acymailing_module .acyfield_html {
	display:inline-block;
	padding-right:10px !important;
}



.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;
}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}


.acymailing_module_form .acymailing_lists a:hover{
	background-color:transparent;
	color:#B90041;
	text-decoration:underline;}

.acymailing_module_form .acymailing_form a:link{
	background-color:transparent;
	color:#000;
	text-decoration:none;}

.acymailing_module_form .acymailing_form a:hover{
	background-color:transparent;
	color:#B90041;
	text-decoration:underline;}

.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter: none !important;}

.acymailing_module .invalid{
border:1px solid #999 !important;}
css/module_default_radial_sand.css000060400000005455152455614210013372 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_radial_black.css");



.acymailing_module .inputbox{
	border:1px solid #e8e4d6 !important;
	border-bottom:1px solid #d5d0bd !important;}

.acymailing_module .inputbox:hover{
	border:1px solid #d5d0bd!important;
	border-bottom:1px solid #c8c3b0 !important;
	-moz-box-shadow: inset 0 0 3px 3px #f2f0e8 !important;
	-webkit-box-shadow: inset 0 0 3px 3px #f2f0e8 !important;}

.acymailing_module .inputbox:focus{
	border:1px solid  #d3cebd !important;}
	
	

.acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#fff !important;
	border:1px solid #777059 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #dad5c4  21%, #777059 58%) !important;
background-image: -o-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;
background-image: -moz-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;
background-image: -webkit-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;
background-image: -ms-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #dad5c4 0%,#777059 100%);   background: radial-gradient(top, ellipse cover, #dad5c4 0%,#777059 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dad5c4', endColorstr='#777059',GradientType=1 ) !important; }

.acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff !important;
	border:1px solid #b6af97!important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #ece9e0  21%, #b6af97 58%) !important;
background-image: -o-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;
background-image: -moz-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;
background-image: -webkit-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;
background-image: -ms-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #ece9e0 0%,#b6af97 100%);   background: radial-gradient(top, ellipse cover, #ece9e0 0%,#b6af97 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ece9e0', endColorstr='#b6af97',GradientType=1 ) !important; }



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#aca489!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/component_default_classic_red.css000060400000002534152455614210014114 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_classic_black.css");




#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#bc1f00 !important;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff!important;
	background-color:#bc1f00 !important;
}



#acyarchivelisting .contentheading{
	color:#770000;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#bc1f00;
}


#acyarchiveview .contentheading{
	color:#bc1f00;}



#acylistslisting .componentheading{
	color:#770000;
}

#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}



#acymodifyform legend{
	color:#770000;
}

#acyusersubscription .list_name{
    color: #bc1f00;
}
	

#unsubpage .unsubsurveytext{
    color: #770000;
}

#unsubpage .unsubintro{
	color:#770000;
}
css/component_default_basic_raspberry.css000060400000002557152455614210015020 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_basic_black.css");

	
#acymodifyform .button:hover, #unsubbutton_div .button:hover, #acyarchivelisting .button:hover {
    color:#B90041;}


#acyarchivelisting .contentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}



#acyarchiveview .contentheading{
	color:#b90041;}
	
	

#acylistslisting .componentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acylistslisting .list_name a{
    color:#B90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}


#acymodifyform legend{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acyusersubscription .list_name{
    color: #B90041;
}


#unsubpage .unsubintro{
	color:#b90041;
	border-bottom: 1px solid #b90041;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #b90041;
    color: #b90041;
}

css/component_default_classic_green.css000060400000002535152455614210014443 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_classic_black.css");




#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#9e9c07 !important;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff!important;
	background-color:#9e9c07 !important;
}

	

#acyarchivelisting .contentheading{
	color:#727127;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#727127;
}


#acyarchiveview .contentheading{
	color:#9e9c07;}



#acylistslisting .componentheading{
	color:#727127;
}

#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}



#acymodifyform legend{
	color:#727127;
}

#acyusersubscription .list_name{
    color: #9e9c07;
}
	

#unsubpage .unsubsurveytext{
    color: #727127;
}

#unsubpage .unsubintro{
	color:#727127;
}
css/component_default_shadow_blue.css000060400000006524152455614210014140 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_shadow_black.css");



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button {
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -o-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -moz-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -webkit-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -ms-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #3A5B6C 0%, #5A99AB 100%);   background: radial-gradient(top, ellipse cover,#3A5B6C 0%, #5A99AB 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5a99ab', endColorstr='#3A5B6C',GradientType=0 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -o-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -moz-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -webkit-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -ms-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #5A99AB 0%, #b3cfd7100%);   background: radial-gradient(top, ellipse cover,#5A99AB 0%, #b3cfd7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3cfd7', endColorstr='#5A99AB',GradientType=0 ) !important; }



#acyarchivelisting .contentheading{
	color:#3a5b6c;
	border-bottom:1px solid #3a5b6c;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#5a99ab;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#5a99ab;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#5a99ab;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#5a99ab;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ecf2f5;}
#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e3e9ec;}
	
#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f4f8f9;}
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e3e9ec;}



#acyarchiveview .contentheading{
	color:#5a99ab;}
	
	

#acylistslisting .componentheading{
	color:#3a5b6c;
	border-bottom:1px solid #3a5b6c;
}

#acylistslisting .list_name a{
    color:#5a99ab;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#5a99ab;
}

div.acymailing_list:hover{
	background-color:#f4f8f9;}


#acymodifyform legend{
	color:#3a5b6c;
	border-bottom:1px solid #3a5b6c;
}

#acyusersubscription .list_name{
    color: #5a99ab;
}

	

#unsubpage .unsubintro{
	color:#5a99ab;
	border-bottom: 1px solid #5a99ab;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #5a99ab;
    color: #5a99ab;
}

css/component_default_basic_green.css000060400000002557152455614210014107 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_basic_black.css");

	
#acymodifyform .button:hover, #unsubbutton_div .button:hover, #acyarchivelisting .button:hover {
    color:#9e9c07;}


#acyarchivelisting .contentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}



#acyarchiveview .contentheading{
	color:#9e9c07;}
	
	

#acylistslisting .componentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}


#acymodifyform legend{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyusersubscription .list_name{
    color: #9e9c07;
}


#unsubpage .unsubintro{
	color:#9e9c07;
	border-bottom: 1px solid #9e9c07;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #9e9c07;
    color: #9e9c07;
}

css/component_default_box_blue.css000060400000003432152455614210013436 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_box_black.css");




#acyarchivelisting .button:hover, #unsubbutton_div .button:hover, #acymodifyform .button:hover {
    color:#79adb2;}


#acyarchivelisting .contentheading{
	color:#6a9195;
	border-bottom:1px solid #6a9195;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#79adb2;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#79adb2;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#79adb2;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#79adb2;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#e8f0f1;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e0eaeb;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f0f5f6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e0eaeb;
}



#acyarchiveview .contentheading{
	color:#79adb2;
}



#acylistslisting .componentheading{
	color:#6a9195;
	border-bottom:1px solid #6a9195;
}
#acylistslisting .list_name a{
    color:#79adb2;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#79adb2;
}

div.acymailing_list:hover{
	background-color :#F0F5F6;
}



#acymodifyform legend{
	color:#6a9195;
	border-bottom:1px solid #6a9195;
}

#acyusersubscription .list_name{
    color: #79adb2;
}
	

#unsubpage .unsubintro{
	color:#79adb2;
	border-bottom: 1px solid #79adb2;
}
#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #79adb2;
    color: #79adb2;
}



css/module_default_square_red.css000060400000001150152455614210013247 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_square_black.css");




.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#bc1f00 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;
}
css/module_default_color_red.css000060400000002014152455614210013065 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_color_black.css");




.acymailing_module .inputbox:hover{
	border:1px solid #bc1f00!important;
	border-bottom: 1px solid #770000!important;
	border-right: 1px solid #770000!important;
	}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited, .acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate {	color:#fff !important;
	background-color:#770000 !important;}

.acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active, .acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover {
    color:#fff!important;
	background-color:#bc1f00 !important;}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;}
css/module_default_classic_raspberry.css000060400000001672152455614210014640 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_classic_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {	color:#B90041 !important;
	background-color:#fff !important;
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#fff!important;
	background-color:#B90041 !important;
}


.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#B90041!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/component_default_color_red.css000060400000003555152455614210013615 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_color_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #bc1f00!important;
	border-bottom: 1px solid #770000!important;
	border-right: 1px solid #770000!important;
	}


#acyarchivelisting .contentpane tbody .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	background-color:#770000 !important;
}

#acyarchivelisting .contentpane tbody .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#fff!important;
	background-color:#bc1f00 !important;
}
	

#acyarchivelisting .contentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#bc1f00;
}




#acyarchiveview .contentheading{
	color:#bc1f00;}
	
	



#acylistslisting .componentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}



#acymodifyform legend{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyusersubscription th{
	color:#fff;
	background-color:#730028;}
	
	
#acyusersubscription .list_name{
    color: #bc1f00;
}
	


#unsubpage .unsubintro{
	border-bottom: 1px solid #770000;
    color: #770000;}
	
#unsubpage .unsubsurveytext{
   	border-bottom: 1px solid #770000;
    color: #770000;
}



css/component_default_fancy_orange.css000060400000016037152455614210014277 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");



#acyarchivelisting .inputbox, #acyuserinfo .inputbox, #acyuserinfo input .inputbox {
	border:1px solid #ddd;
	border-bottom:1px solid #ccc;}
	
#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover, #acyuserinfo input .inputbox:hover {
	border:1px solid #e37a09;
	border-bottom:1px solid #c55f1c;
	}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus, #acyuserinfo input .inputbox:focus {
	border:1px solid #c55f1c;}



#acyarchivelisting .button, #acymodifyform .button, #unsubpage .button{
	border:none;
	background-color:#cf5402;
	border-bottom:2px solid #aa4502;
	background-image:none;
	color:#FFF;
	padding:2px 3px 1px 3px;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubpage .button:hover{
	background-color:#e37a09;
	border-bottom:2px solid #c55f1c;
	background-image:none;
	color:#FFF;
	padding:2px 3px;
}


#acyarchivelisting{
	background-color:#f8f8f8;
	border:1px solid #dcc2b2;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acyarchivelisting table{
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#fff;
	background-color:#e37a09;
	font-size:16px;
	border-bottom:6px solid #cf5402;
	padding:4px 0 4px 20px;
}

#acyarchivelisting .contentpane form{
	background-color:#fff;
	border:1px solid #dcc2b2;
	padding:20px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#7c3200;
	font-weight:bold;
	padding:4px 0 3px 20px;
	background-color:#ffa443;
	border-bottom:2px solid #e37a09;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#7C3200;
}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #7C3200;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#7C3200;
}

#acyarchivelisting .sectiontableheader a{
	color:#7C3200;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover, #acyarchivelisting .sectiontableheader a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableentry1, #acyarchivelisting .sectiontableentry2{
	text-align:center;
	height:30px;
	border-bottom:1px solid #eee;
}

#acyarchivelisting .sectiontableentry1:hover, #acyarchivelisting .sectiontableentry2:hover{
	background-color:#f5f5f5;
}

#acyarchivelisting .sectiontableentry1 a, #acyarchivelisting .sectiontableentry2 a{
	color:#cf5402;
	text-decoration:none;
	background-color:transparent;
}

#acyarchivelisting .sectiontableentry1 a:hover, #acyarchivelisting .sectiontableentry2 a:hover{
	text-decoration:underline;
	color:#cf5402;
	background-color:transparent;
}

#acyarchivelisting #acymailingsearch{
	margin-bottom:20px;
	padding:2px;}


#acylistslisting{
	background-color:#fffaf5;
	border:1px solid #dcc2b2;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}


#acylistslisting .componentheading{
	color:#fff;
	background-color:#e37a09;
	font-size:16px;
	border-bottom:6px solid #cf5402;
	padding:4px 0 4px 20px;
}


.acymailing_list{
	background-color:#fff;
}


.acymailing_list .list_name{
	color:#7c3200;
	font-weight:bold;
	padding:4px 0 3px 20px;
	background-color:#ffa443;
	border-bottom:2px solid #e37a09;
}

#acylistslisting .list_name a{
	color:#7c3200;
	cursor:pointer;
	text-decoration:none;
	background-color:transparent;
	font-size:14px;
	font-weight:bold;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#7c3200;
}


#acylistslisting .list_description{
	color:#333;
	padding-left:20px;
}

div.acymailing_list:hover{
	background-color :#fef5eb;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
	border-top:none;
	margin : 0px;
	padding : 0px;
}


#acymodifyform table#acyusersubscription th{
	padding:4px 0 2px 20px;
	color:#7c3200;
	text-align:left;
}

#acyusersubscription .acystatus{
	padding-top:20px;
}

#acymodifyform{
	background-color:#f8f8f8;
	border:1px solid #dcc2b2;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}

#acyuserinfo{
	background-color:#fff;
	border:1px solid #dcc2b2;
}


#acyuserinfo select{
	border:1px solid #dcc2b2;}

#acyuserinfo .key{
	color:#cf5402;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription thead{
	background-color:#ffa443;
	border-bottom:3px solid #e37a09;
	padding-bottom:20px;
}
#acyusersubscription{
		border:1px solid #dcc2b2;
		border-top:none;
	}

#acyusersubscription tbody{
	background-color:#FFF;
}

#acymodifyform legend{
	color:#fff;
	background-color:#e37a09;
	font-size:16px;
	border-bottom:6px solid #cf5402;
	width:100%;
	padding: 4px 0px;
}

#acymodifyform legend span{
	padding: 0px 20px ;
}

#acyuserinfo input{
	margin:0 5px;
}


#acyusersubscription .list_name{
	text-align:left;
	font-size:12px;
	font-weight:bold;
	margin:0 40px 0 20px;
	color:#cf5402;
	border-bottom:2px solid #ffa443;
	padding-top:20px;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	margin-left:10px;
	color:#333;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}




#unsubpage{
	background-color:#f8f8f8;
	border:1px solid #dcc2b2;
	color:#666;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#unsubpage .unsubintro{
	color:#7c3200;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#ffa443;
	display:block;
	border-bottom:2px solid #e37a09;
	border-top:1px solid #dcc2b2;
	border-right:1px solid #dcc2b2;
	border-left:1px solid #dcc2b2;
}

#unsubpage .unsuboptions{
	background-color:#FFF;
	border:1px solid #dcc2b2;
	padding:5px 20px 20px 20px;
	font-size:11px;
}


#unsubpage .unsubsurvey{
	margin:10px 0 20px 0;
	background-color:#fff;
	padding:0px;
	padding-bottom:20px;
	border:1px solid #dcc2b2;
}

#unsubpage .unsubsurvey .unsubsurveytext{
	color:#7c3200;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#ffa443;
	border-bottom:2px solid #e37a09;
	display:block;
}

#unsubpage .unsubsurvey div{
	margin-top:5px;
	font-size:11px;
	padding-left:20px;
	padding-top:5px;
}

#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ddd;
	border-bottom:1px solid #ccc;
}

#unsubpage .unsubsurvey textarea:hover{
	margin-top:15px;
	border:1px solid #e37a09;
	border-bottom:1px solid #c55f1c;
}

#unsubpage .unsubsurvey textarea:focus {
	border:1px solid #c55f1c;}

#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}

.unsubdiv {
	padding-top:10px;}
	
#unsubpage input{
	margin-right:10px;}
	
	

#acyarchiveview{
	border:1px solid #ccc;
	background-color:#f8f8f8;
	padding:10px;}
	
#acyarchiveview .contentheading{
	font-size:16px;
	font-weight:bold;
	color:#CF5402;
	margin-bottom:10px;}
css/module_default_shadow_sand.css000060400000004473152455614210013422 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_shadow_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited  {
color:#fff !important;
background-color:#777059 !important;
background-image: linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -o-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -moz-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -webkit-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -ms-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #777059 0%, #aca489 100%);   background: radial-gradient(top, ellipse cover,#777059 0%, #aca489 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#aca489', endColorstr='#777059',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active{
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -o-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -moz-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -webkit-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -ms-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #aca489 0%, #d0c9b3 100%);   background: radial-gradient(top, ellipse cover,#aca489 0%, #d0c9b3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d0c9b3', endColorstr='#aca489',GradientType=0 ) !important; }

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#aca489!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/acyicon.css000060400000010565152455614210007503 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@font-face{
	font-family: 'acyicon';
	src: url('fonts/icomoon.eot?p7bld6');
	src: url('fonts/icomoon.eot?#iefixp7bld6') format('embedded-opentype'),
	url('fonts/icomoon.ttf?p7bld6') format('truetype'),
	url('fonts/icomoon.woff?p7bld6') format('woff'),
	url('fonts/icomoon.svg?p7bld6#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

[class^="acyicon-"], [class*=" acyicon-"]{
	font-family: 'acyicon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.acyicon-message:before{
	content: "\e0ca";
}

.acyicon-distribution:before{
	content: "\e903";
}

.acyicon-image_view:before{
	content: "\e905";
}

.acyicon-connection:before{
	content: "\e902";
}

.acyicon-folder:before{
	content: "\e900";
}

.acyicon-folderopen:before{
	content: "\e901";
}

.acyicon-list_view:before{
	content: "\e906";
}

.acyicon-tree:before{
	content: "\e904";
}

.acyicon-location:before{
	content: "\e800";
}

.acyicon-renew:before{
	content: "\e62a";
}

.acyicon-test:before{
	content: "\e808";
}

.acyicon-users:before{
	content: "\e812";
}

.acyicon-options:before{
	content: "\e633";
}

.acyicon-attach:before{
	content: "\e635";
}

.acyicon-share:before{
	content: "\e634";
}

.acyicon-action:before{
	content: "\e632";
}

.acyicon-tag:before{
	content: "\e627";
}

.acyicon-schedule:before{
	content: "\e62b";
}

.acyicon-print:before{
	content: "\e626";
}

.acyicon-queue:before{
	content: "\e629";
}

.acyicon-generate:before{
	content: "\e60c";
}

.acyicon-process:before{
	content: "\e628";
}

.acyicon-spamtest:before{
	content: "\e620";
}

.acyicon-spam:before{
	content: "\e62d";
}

.acyicon-refresh:before{
	content: "\e62e";
}

.acyicon-dashboard:before{
	content: "\e61e";
}

.acyicon-myacymailing:before{
	content: "\e625";
}

.acyicon-replacetag:before{
	content: "\e631";
}

.acyicon-sendtest:before{
	content: "\e630";
}

.acyicon-ABtesting:before{
	content: "\e62f";
}

.acyicon-autonewsletter:before{
	content: "\e600";
}

.acyicon-joomla:before{
	content: "\e601";
}

.acyicon-down:before{
	content: "\e602";
}

.acyicon-up:before{
	content: "\e603";
}

.acyicon-import:before{
	content: "\e604";
}

.acyicon-copy:before{
	content: "\e61f";
}

.acyicon-delete:before{
	content: "\e624";
}

.acyicon-export:before{
	content: "\e605";
}

.acyicon-chart:before{
	content: "\e606";
}

.acyicon-save:before{
	content: "\e620";
}

.acyicon-interface:before{
	content: "\e607";
}

.acyicon-template:before, .acyicon-saveastmpl:before{
	content: "\e608";
}

.acyicon-apply:before{
	content: "\e620";
}

.acyicon-language:before{
	content: "\e60b";
}

.acyicon-cancel:before{
	content: "\e621";
}

.acyicon-click:before{
	content: "\e609";
}

.acyicon-edit:before{
	content: "\e60a";
}

.acyicon-filter:before{
	content: "\e60d";
}

.acyicon-acl:before{
	content: "\e60e";
}

.acyicon-help:before{
	content: "\e622";
}

.acyicon-detailed-stat:before{
	content: "\e60f";
}

.acyicon-list:before{
	content: "\e610";
}

.acyicon-security:before{
	content: "\e611";
}

.acyicon-search:before{
	content: "\e612";
}

.acyicon-mail:before{
	content: "\e613";
}

.acyicon-campaign:before{
	content: "\e614";
}

.acyicon-newsletter:before{
	content: "\e615";
}

.acyicon-send:before{
	content: "\e616";
}

.acyicon-new:before{
	content: "\e623";
}

.acyicon-addcompare:before{
	content: "\e623";
}

.acyicon-resetcompare:before{
	content: "\e621";
}

.acyicon-plugin:before{
	content: "\e617";
}

.acyicon-bounce:before{
	content: "\e618";
}

.acyicon-open-close:before{
	content: "\e619";
}

.acyicon-statistic:before{
	content: "\e61a";
}

.acyicon-configuration:before{
	content: "\e61b";
}

.acyicon-custom-field:before{
	content: "\e61c";
}

.acyicon-user:before{
	content: "\e61d";
}

.acyinactive-handler{
	opacity: 0.5;
}

.acyicon-draghandle:not(.acyinactive-handler){
	cursor: move;
	cursor: -webkit-grabbing;
}

.acysortable-ghost{
	opacity: 0;
}

.acyicon-first:before{
	content: "\ea21";
}

.acyicon-last:before{
	content: "\ea22";
}

.acyicon-backward:before{
	content: "\ea1f";
}

.acyicon-forward:before{
	content: "\ea20";
}

#acy_content td a img{
	vertical-align: middle;
}
css/module_default_basic_black.css000060400000006356152455614210013347 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#666 !important;
	border:1px solid #ddd !important;
	padding: 2px !important;
	text-shadow:1px 1px 1px #fff !important;
	margin-right:5px !important;
	background:none !important;
	background-color:#fff !important;
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
		color:#000 !important;
	background-color:#fff !important;
	border:1px solid #ccc !important;
	border-right:1px solid #999 !important;
	border-bottom:1px solid #999 !important;
}



.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-right:1px solid #ccc!important;
	border-bottom:1px solid #ccc !important;
	margin-right: 10px!important;
		padding: 2px !important;}


.acymailing_module .inputbox:hover{
	border:1px solid #ddd !important;
	border-bottom:1px solid #aaa !important;}

.acymailing_module .inputbox:focus{
	border:1px solid #bbb !important;}


.acymailing_module_form td{
	padding-bottom:0px;}


.acymailing_module .acyfield_html {
	display:inline-block;
	padding-right:10px !important;}



.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	display:inline-block;
	text-decoration:none;
}


.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}
.acymailing_module .acymailing_module_form .acymailing_lists a:hover, .acymailing_module .acymailing_module_form .acymailing_lists a:active{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acyterms a:link, .acyterms a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}


.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter: none !important;}



.acymailing_module .invalid{
border:1px solid #999 !important;}

css/component_default_color_blue.css000060400000004411152455614210013762 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_color_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #588896!important;
	border-bottom: 1px solid #235563!important;
	border-right: 1px solid #235563!important;
	}


#acyarchivelisting .contentpane tbody .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	background-color:#235563 !important;
}

#acyarchivelisting .contentpane tbody .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#fff!important;
	background-color:#588896 !important;
}
	

#acyarchivelisting .contentheading{
	color: #235563;
	border-bottom:1px solid #235563;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#588896;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#588896;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#588896;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#588896;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ecf2f5}
#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e3e9ec}
	
#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f4f8f9}
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e3e9ec}


#acyarchiveview .contentheading{
	color:#588896;}
	
	



#acylistslisting .componentheading{
	color:#235563;
	border-bottom:1px solid #235563;
}

#acylistslisting .list_name a{
    color:#588896;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#588896;
}

div.acymailing_list:hover{
	background-color:#f4f8f9}


#acymodifyform legend{
	color:#235563;
	border-bottom:1px solid #235563;
}

#acyusersubscription th{
	color:#fff;
	background-color:#235563;}
	
	
#acyusersubscription .list_name{
    color: #588896;
}
	


#unsubpage .unsubintro{
	border-bottom: 1px solid #235563;
    color: #235563;}
	
#unsubpage .unsubsurveytext{
   	border-bottom: 1px solid #235563;
    color: #235563;
}



css/module_default_classic_sand.css000060400000001670152455614210013552 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_classic_black.css");




.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {	color:#777059 !important;
	background-color:#fff !important;
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#fff!important;
	background-color:#777059 !important;
}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#777059!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/component_default_fancy_blue.css000060400000015364152455614210013755 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");



#acyarchivelisting .inputbox, #acyuserinfo .inputbox, #acyuserinfo .inputbox{
	border:1px solid #dde5e8;
	padding:3px;}
	
#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #c6d5da;
	border-bottom:1px solid #a5b9c0;
	border-right:1px solid #a5b9c0;}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid #8ca3ab;
	background-color:#eff3f4;}



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	border:none;
	background-color:#558da4;
	border-bottom:2px solid #477487;
	background-image:none;
	color:#FFF;
	padding:3px 5px 1px 5px;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	background-color:#95bac9;
	border-bottom:2px solid #7ea5b5;
	background-image:none;
}


#acyarchivelisting{
	background-color:#f8f8f8;
	border:1px solid #CCC;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acyarchivelisting table{
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#fff;
	background-color:#74a8bd;
	font-size:16px;
	border-bottom:6px solid #558da4;
	padding:4px 0 4px 20px;
}

#acyarchivelisting .contentpane form{
	background-color:#fff;
	border:1px solid #ccc;
	padding:20px;
}


#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#558da4;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#153c4c;
	font-weight:bold;
	padding:4px 0 3px 20px;
	background-color:#dde5e8;
	border-bottom:2px solid #c0d8e1;
}


#acyarchivelisting #acymailingsearch{
	margin-bottom:20px;}


#acyarchivelisting .sectiontableheader{
	color:#153C4C;
}

#acyarchivelisting thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#153C4C;
}

#acyarchivelisting .sectiontableheader a{
	color:#153C4C;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover, #acyarchivelisting .sectiontableheader a:focus{
	background-color:transparent;
	color:#558da4;
}

#acyarchivelisting .sectiontableentry1, #acyarchivelisting .sectiontableentry2{
	text-align:center;
	height:30px;
	border-bottom:1px solid #eee;
}

#acyarchivelisting .sectiontableentry1:hover, #acyarchivelisting .sectiontableentry2:hover{
	background-color:#eff3f4;
}

#acyarchivelisting .sectiontableentry1 a, #acyarchivelisting .sectiontableentry2 a{
	text-decoration:none;
	color:#558da4;
	background-color:transparent;
}

#acyarchivelisting .sectiontableentry1 a:hover, #acyarchivelisting .sectiontableentry2 a:hover{
	color:#153c4c;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;
	background-color:#F8F8F8;}

#acyarchiveview .contentheading{
	color:#558DA4;
	font-size:16px;
	font-weight:bold;
	margin-bottom:10px;}


#acylistslisting{
	background-color:#f8f8f8;
	border:1px solid #ccc;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acylistslisting .componentheading{
	color:#fff;
	background-color:#74a8bd;
	font-size:16px;
	border-bottom:6px solid #558da4;
	padding:4px 0 4px 20px;
}


.acymailing_list{
	background-color:#fff;
}

.acymailing_list .list_name{
	color:#153c4c;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#dde5e8;
	border-bottom:2px solid #c0d8e1;
}

#acylistslisting .list_name a{
	color:#153C4C;
	cursor:pointer;
	text-decoration:none;
	background-color:transparent;
	font-size:14px;
	font-weight:bold;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	background-color:transparent;
	color:#558DA4;
}


#acylistslisting .list_description{
	color:#333;
	padding-left:20px;
}

div.acymailing_list:hover{
	background-color :#eff3f4;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
	border : 1px solid #cccccc;
	margin : 0px;
	padding : 0px;
}


#acyusersubscription th{
	padding:4px 0 3px 20px;
	color:#153c4c;
	text-align:left;
}

#acyusersubscription .acystatus{
	padding-top:20px;
}

#acymodifyform{
	background-color:#f8f8f8;
	border:1px solid #CCC;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}

#acyuserinfo{
	background-color:#fff;
	border:1px solid #CCC;
}


#acyuserinfo select{
	border:1px solid #ccc;}

#acyuserinfo .key{
	color:#558da4;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription thead{
	background-color:#dde5e8;
	border-bottom:3px solid #c0d8e1;
	padding-bottom:20px;
}

#acyusersubscription{
	border:1px solid #CCC;
	}

#acyusersubscription tbody{
	background-color:#FFF;
}

#acymodifyform legend{
	color:#fff;
	background-color:#74a8bd;
	font-size:16px;
	border-bottom:6px solid #558da4;
	width:100%;
	padding: 4px 0px;
}

#acymodifyform legend span{
	padding: 0px 20px ;
}

#acyuserinfo input{
	margin:0 5px;
}


#acyusersubscription .list_name{
	text-align:left;
	font-size:12px;
	font-weight:bold;
	margin:0 40px 0 50px;
	color:#558da4;
	border-bottom:2px solid #dde5e8;
	padding-top:20px;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	margin-left:40px;
	color:#333;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}



#unsubpage{
	background-color:#F5F5F5;
	border:1px solid #ccc;
	color:#666;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#unsubpage .unsubintro{
	color:#153c4c;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#dde5e8;
	display:block;
	border-bottom:2px solid #c0d8e1;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
}

#unsubpage .unsuboptions{
	background-color:#FFF;
	border:1px solid #CCC;
	padding:5px 20px 20px 20px;
	font-size:11px;
}


#unsubpage .unsubsurvey{
	margin:10px 0 20px 0;
	background-color:#fff;
	padding:0px;
	padding-bottom:20px;
	border:1px solid #ccc;
}

#unsubpage .unsubsurvey .unsubsurveytext{
	color:#153c4c;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#dde5e8;
	border-bottom:2px solid #c0d8e1;
	display:block;
}

#unsubpage .unsubsurvey div{
	margin-top:5px;
	font-size:11px;
	padding-left:20px;
}

#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #dde5e8;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #c6d5da;
	border-bottom:1px solid #a5b9c0;
	border-right:1px solid #a5b9c0;
}

#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}



css/module_default_box_raspberry.css000060400000001143152455614210014000 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_box_black.css");

	
.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#b90041 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#b90041!important;}
css/component_default_fancy_green.css000060400000016157152455614210014127 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");




#acyarchivelisting .inputbox, #acyuserinfo .inputbox, #acyuserinfo .inputbox{
	border:1px solid #d9e668;
	border-bottom:1px solid #c5d442;
	border-right:1px solid #c5d442;
	padding:3px;}
	
#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #c1ce55;
	border-bottom:1px solid #a8b632;
	border-right:1px solid #a8b632;}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid #b7c634;}



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	border:none;
	background-color:#a9b53c;
	border-bottom:2px solid #8d972f;
	background-image:none;
	color:#FFF;
	padding:3px 5px 1px 5px;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	background-color:#c5d442;
	border-bottom:2px solid #adba37;
	background-image:none;
}


#acyarchivelisting #acymailingsearch{
	margin-bottom:20px;}

#acyarchivelisting{
	background-color:#f8f8f8;
	border:1px solid #CCC;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acyarchivelisting table{
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#fff;
	background-color:#c5d442;
	font-size:16px;
	border-bottom:2px solid #808c14;
	padding:4px 0 4px 20px;
}

#acyarchivelisting .contentpane form{
	background-color:#fff;
	border:1px solid #ccc;
	padding:20px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#5c650b;
	font-weight:bold;
	padding:4px 0 3px 20px;
	background-color:#d9e668;
	border-bottom:2px solid #b7c634;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#808c14;
}

#acyarchivelisting .sectiontableheader{
	color:#808c14;
}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #d9e668;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#808c14;
}

#acyarchivelisting .sectiontableheader a{
	color:#808c14;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover, #acyarchivelisting .sectiontableheader a:focus{
	text-decoration:underline;
	background-color:transparent;
	color:#808c14;
}

#acyarchivelisting .sectiontableentry1, #acyarchivelisting .sectiontableentry2{
	text-align:center;
	height:30px;
	border-bottom:1px solid #eee;
}

#acyarchivelisting .sectiontableentry1:hover, #acyarchivelisting .sectiontableentry2:hover{
	background-color:#f5f5f5;
}

#acyarchivelisting .sectiontableentry1 a:link, #acyarchivelisting .sectiontableentry2 a:link, #acyarchivelisting .sectiontableentry1 a:visited, #acyarchivelisting .sectiontableentry2 a:visited {
	text-decoration:none;
	color:#808c14;
	background-color:transparent;
}

#acyarchivelisting .sectiontableentry1 a:hover, #acyarchivelisting .sectiontableentry2 a:hover, #acyarchivelisting .sectiontableentry1 a:active, #acyarchivelisting .sectiontableentry2 a:active {
	color:#808c14;
	background-color:transparent;
	text-decoration:underline;
}



#acylistslisting{
	background-color:#f8f8f8;
	border:1px solid #ccc;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}


#acylistslisting .componentheading{
	color:#fff;
	background-color:#c5d442;
	font-size:16px;
	border-bottom:2px solid #808c14;
	padding:4px 0 4px 20px;
}


.acymailing_list{
	background-color:#fff;
}

.acymailing_list .list_name{
	color:#5c650b;
	font-weight:bold;
	padding:4px 0 3px 20px;
	background-color:#d9e668;
	border-bottom:2px solid #b7c634;
}

#acylistslisting .list_name a{
	color:#5c650b;
	cursor:pointer;
	text-decoration:none;
	background-color:transparent;
	font-size:12px;
	font-weight:bold;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#5c650b;
}


#acylistslisting .list_description{
	color:#333;
	padding-left:20px;
}

div.acymailing_list:hover{
	background-color :#e9edc6;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
	border : 1px solid #cccccc;
	margin : 0px;
	padding : 0px;
}


#acymodifyform table#acyusersubscription th{
	padding:4px 0px 2px 20px;
	color:#5c650b;
	text-align:left;
}

#acyusersubscription .acystatus{
	padding-top:20px;
}

#acymodifyform{
	background-color:#f8f8f8;
	border:1px solid #CCC;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}

#acyuserinfo{
	background-color:#fff;
	border:1px solid #CCC;
}


#acyuserinfo select{
	border:1px solid #ccc;}

#acyuserinfo .key{
	color:#808c14;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription thead{
	background-color:#d9e668;
	border-bottom:3px solid #b7c634;
	padding-bottom:20px;
}

#acyusersubscription{
	border:1px solid #CCC;
}

#acyusersubscription tbody{
	background-color:#FFF;
}

#acymodifyform legend{
	color:#fff;
	background-color:#c5d442;
	font-size:16px;
	border-bottom:2px solid #808c14;
	width:100%;
	padding: 4px 0px;
}

#acymodifyform legend span{
	padding: 0px 20px ;
}

#acyuserinfo input{
	margin:0 5px;
}

#acyusersubscription .list_name{
	text-align:left;
	font-size:12px;
	font-weight:bold;
	margin-left:20px;
	color:#808c14;
	border-bottom:2px solid #d9e668;
	padding-top:20px;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	margin-left:10px;
	color:#333;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}



#unsubpage{
	background-color:#f8f8f8;
	border:1px solid #ccc;
	color:#666;
	padding:20px;
	margin-right:20px;
	margin-bottom:20px;
}

#unsubpage .unsubintro{
	color:#5c650b;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#d9e668;
	display:block;
	border-bottom:2px solid #b7c634;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
}

#unsubpage .unsuboptions{
	background-color:#FFF;
	border:1px solid #CCC;
	padding:5px 20px 20px 20px;
	font-size:11px;
}


#unsubpage .unsubsurvey{
	margin:10px 0 20px 0;
	background-color:#fff;
	padding:0px;
	padding-bottom:20px;
	border:1px solid #ccc;
}

#unsubpage .unsubsurvey .unsubsurveytext{
	color:#5c650b;
	font-weight:bold;
	padding:2px 0 2px 20px;
	background-color:#d9e668;
	border-bottom:2px solid #b7c634;
	display:block;
}

#unsubpage .unsubsurvey div{
	margin-top:5px;
	font-size:11px;
	padding-left:20px;
}

#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #d9e668;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #c1ce55;
	border-bottom:1px solid #a8b632;
	border-right:1px solid #a8b632;}

#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}

#unsubpage input{
	margin-right:10px;}




#acyarchiveview{
	border:1px solid #ccc;
	background-color:#f8f8f8;
	padding:10px;}
	
#acyarchiveview .contentheading{
	font-size:16px;
	font-weight:bold;
	color:#808C14;
	margin-bottom:10px;}
css/module_default_square_raspberry.css000060400000001150152455614210014506 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_square_black.css");




.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#B90041 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#B90041!important;
}
css/component_default_color_green.css000060400000003555152455614210014143 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_color_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #9e9c07!important;
	border-bottom: 1px solid #727127!important;
	border-right: 1px solid #727127!important;
	}


#acyarchivelisting .contentpane tbody .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	background-color:#727127 !important;
}

#acyarchivelisting .contentpane tbody .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#fff!important;
	background-color:#9e9c07 !important;
}
	

#acyarchivelisting .contentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#9e9c07;
}




#acyarchiveview .contentheading{
	color:#9e9c07;}
	
	



#acylistslisting .componentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}



#acymodifyform legend{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyusersubscription th{
	color:#fff;
	background-color:#730028;}
	
	
#acyusersubscription .list_name{
    color: #9e9c07;
}
	


#unsubpage .unsubintro{
	border-bottom: 1px solid #727127;
    color: #727127;}
	
#unsubpage .unsubsurveytext{
   	border-bottom: 1px solid #727127;
    color: #727127;
}



css/component_default_classic_sand.css000060400000003214152455614210014263 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_classic_black.css");


	

#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#777059 !important;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff!important;
	background-color:#777059 !important;
}



#acyarchivelisting .contentheading{
	color:#777059;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#aca489;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#f2f0e8;
}
	
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#f2f0e8;
}



#acyarchiveview .contentheading{
	color:#aca489;}



#acylistslisting .componentheading{
	color:#777059;
}

#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#aca489;
}


div.acymailing_list:hover{
	background-color :#f2f0e8;}


#acymodifyform legend{
	color:#777059;
}

#acyusersubscription .list_name{
    color: #aca489;
}

#acyusersubscription th{
	background-color:#f2f0e8;}

	

#unsubpage .unsubsurveytext{
    color:#777059;
}

#unsubpage .unsubintro{
	color:#777059;
}
css/component_default_radial_blue.css000060400000010061152455614210014076 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_radial_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #bfd8e1 !important;
	border-bottom:1px solid #9dbcc7 !important;
	-moz-box-shadow: inset 0 0 3px 3px #e2eef2 !important;
-webkit-box-shadow: inset 0 0 3px 3px#e2eef2 !important;
}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid  #6A9195 !important;}





#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#fff !important;
	border:1px solid #6A9195 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #dae9ee  21%, #6A9195 58%) !important;
background-image: -o-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;
background-image: -moz-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;
background-image: -webkit-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;
background-image: -ms-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #dae9ee 0%,#6A9195 100%);   background: radial-gradient(top, ellipse cover, #dae9ee 0%,#6A9195 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dae9ee', endColorstr='#6A9195',GradientType=1 ); }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	color:#fff !important;
	border:1px solid #68a2b2 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #dae9ee  21%, #68a2b2 58%) !important;
background-image: -o-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;
background-image: -moz-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;
background-image: -webkit-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;
background-image: -ms-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #dae9ee 0%,#68a2b2 100%);   background: radial-gradient(top, ellipse cover, #dae9ee 0%,#68a2b2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dae9ee', endColorstr='#68a2b2',GradientType=1 ); /* IE6-9 vertical */}



#acyarchivelisting .contentheading{
	color:#6a9195;
	border-bottom:1px dotted #6a9195;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#79adb2;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#79adb2;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#79adb2;
}
#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#79adb2;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#e8f0f1;
	border-bottom:1px solid #fff !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e0eaeb;
}


#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f0f5f6;
	border-bottom:1px solid #fff !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e0eaeb;
}


#acyarchiveview .contentheading{
	color:#79adb2;
}


#acylistslisting .componentheading{
	color:#6a9195;
	border-bottom:1px dotted #6a9195;
}

#acylistslisting .list_name a{
    color:#79adb2;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#79adb2;
}

div.acymailing_list:hover{
	background-color :#F0F5F6;
}


#acymodifyform legend{
	color:#6a9195;
	border-bottom:1px dotted #6a9195;
}

#acyusersubscription .list_name{
    color: #79adb2;
}


#unsubpage .unsubintro{
	color:#79adb2;
	border-bottom: 1px dotted #79adb2;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px dotted #79adb2;
    color: #79adb2;
}
css/component_default_basic_black.css000060400000015135152455614210014057 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");




#acymodifyform .button, #unsubbutton_div .button, #acyarchivelisting .button{
	color:#666 !important;
	border:1px solid #ddd;
	padding: 2px;
	background:none !important;
	background-color:#fff !important;
}


#acymodifyform .button:hover, #unsubbutton_div .button:hover, #acyarchivelisting .button:hover {
		color:#000;
	background:none !important;
	background-color:#fff !important;
	border:1px solid #ccc;
	border-right:1px solid #999;
	border-bottom:1px solid #999;}


#acyuserinfo .inputbox, #acyarchivelisting .inputbox{
	color:#666;
	border:1px solid #ddd;
	padding: 2px;}

#acyuserinfo .inputbox:hover, #acyarchivelisting .inputbox:hover{
	border:1px solid #ddd !important;
	border-bottom:1px solid #aaa !important;}

#acyuserinfo .inputbox:focus, #acyarchivelisting .inputbox:focus{
	border:1px solid #bbb !important;}




#acyarchivelisting table{
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#000;
	border-bottom:1px solid #000;
	font-size:16px;
	font-weight:bold;
	padding-bottom:4px;
}

#acyarchivelisting .contentpane form{
	background-color: #FFFFFF;
		border-style: solid;
	border-color:#ccc;
		border-width: 1px;
		padding: 10px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#333;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#333;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#666;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#eeeded;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}



#acylistslisting .componentheading{
	color:#000;
	border-bottom:1px solid #000;
	font-weight:bold;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	padding-bottom:4px;
}

#acylistslisting .list_name a{
	background-color: transparent;
		color:#666;
		cursor: pointer;
		font-size: 12px;
		font-weight: bold;
		text-decoration: none;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
}

#acylistslisting p{
	line-height: 15px;
		margin: 3px 0;}


div.acymailing_list:hover{
	background-color :#f5f5f5;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
		border:none;
	border-bottom:1px solid #ccc;
		margin: 0px;
		padding-top: 10px;
}


#acyusersubscription th{
	color:#666;
	padding: 4px 5px;
	background-color:#f5f5f5;}


#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo #trname td{
	padding-top:10px;}

#acyuserinfo #trplus td{
	padding-bottom:10px;}


#acyuserinfo select{
	border:1px solid #dcc2b2;}

#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acymodifyform legend{
	color:#000;
	border-bottom:1px solid #000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	margin-bottom:20px;
	padding-bottom:4px;
}

#acyuserinfo input{
	margin:0 5px;
}


#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
		color: #666;
		font-size: 12px;
		font-weight: bold;
		margin: 0px;
		padding-top: 20px;
		text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}




#unsubpage{
padding: 20px 20px 40px;
font-size:11px;
border:1px solid #ccc;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}

#unsubpage input{
	margin-right:5px;}

#unsubpage .unsubintro{
	font-weight:bold;
	color:#000;
	font-size:12px;
	padding:0px;
	border-bottom: 1px solid #000;
	padding-bottom:4px;
	margin-bottom:10px;}

#unsubpage .unsuboptions{
	padding:0px;}


#unsubpage .unsubsurveytext{
		border-bottom: 1px solid #000;
		color: #000;
		display: block;
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 10px;
		margin-top: 30px;
		padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color:#fff;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}


#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}


#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#666;
	font-size:16px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}


css/datepicker.css000060400000010420152455614210010157 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@charset "UTF-8";


.pika-single {
    z-index: 9999;
    display: block;
    position: relative;
    color: #333;
    background: #fff;
    border: 1px solid #ccc;
    border-bottom-color: #bbb;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.pika-single:before,
.pika-single:after {
    content: " ";
    display: table;
}
.pika-single:after { clear: both }
.pika-single { *zoom: 1 }

.pika-single.is-hidden {
    display: none;
}

.pika-single.is-bound {
    position: absolute;
    box-shadow: 0 5px 15px -5px rgba(0,0,0,.5);
}

.pika-lendar {
    float: left;
    width: 240px;
    margin: 8px;
}

.pika-title {
    position: relative;
    text-align: center;
}

.pika-label {
    display: inline-block;
    *display: inline;
    position: relative;
    z-index: 9999;
    overflow: hidden;
    margin: 0;
    padding: 5px 3px;
    font-size: 14px;
    line-height: 20px;
    font-weight: bold;
    background-color: #fff;
}
.pika-title select {
    cursor: pointer;
    position: absolute;
    z-index: 9998;
    margin: 0;
    left: 0;
    top: 5px;
    filter: alpha(opacity=0);
    opacity: 0;
}

.pika-prev,
.pika-next {
    display: block;
    cursor: pointer;
    position: relative;
    outline: none;
    border: 0;
    padding: 0;
    width: 20px;
    height: 30px;
    text-indent: 20px;
    white-space: nowrap;
    overflow: hidden;
    background-color: transparent;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 75% 75%;
    opacity: .5;
    *position: absolute;
    *top: 0;
}

.pika-prev:hover,
.pika-next:hover {
    opacity: 1;
}

.pika-prev,
.is-rtl .pika-next {
    float: left;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');
    *left: 0;
}

.pika-next,
.is-rtl .pika-prev {
    float: right;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');
    *right: 0;
}

.pika-prev.is-disabled,
.pika-next.is-disabled {
    cursor: default;
    opacity: .2;
}

.pika-select {
    display: inline-block;
    *display: inline;
}

.pika-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 0;
}

.pika-table th,
.pika-table td {
    width: 14.285714285714286%;
    padding: 0;
}

.pika-table th {
    color: #999;
    font-size: 12px;
    line-height: 25px;
    font-weight: bold;
    text-align: center;
}

.pika-button {
    cursor: pointer;
    display: block;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    outline: none;
    border: 0;
    margin: 0;
    width: 100%;
    padding: 5px 9px 5px 5px;
    color: #666;
    font-size: 12px;
    line-height: 15px;
    text-align: right;
    background: #f5f5f5;
}

.pika-week {
    font-size: 11px;
    color: #999;
}

.is-today .pika-button {
    color: #33aaff;
    font-weight: bold;
}

.is-selected .pika-button,
.has-event .pika-button {
    color: #fff;
    font-weight: bold;
    background: #33aaff;
    box-shadow: inset 0 1px 3px #178fe5;
    border-radius: 3px;
}

.has-event .pika-button {
    background: #005da9;
    box-shadow: inset 0 1px 3px #0076c9;
}

.is-disabled .pika-button,
.is-inrange .pika-button {
    background: #D5E9F7;
}

.is-startrange .pika-button {
    color: #fff;
    background: #6CB31D;
    box-shadow: none;
    border-radius: 3px;
}

.is-endrange .pika-button {
    color: #fff;
    background: #33aaff;
    box-shadow: none;
    border-radius: 3px;
}

.is-disabled .pika-button,
.is-outside-current-month .pika-button {
    pointer-events: none;
    cursor: default;
    color: #999;
    opacity: .3;
}

.pika-button:hover,
.pika-row.pick-whole-week:hover .pika-button {
    color: #fff;
    background: #33aaff;
    box-shadow: none;
    border-radius: 3px;
}

.pika-table abbr {
    border-bottom: none;
    cursor: help;
}


css/component_default_classic_black.css000060400000016114152455614210014415 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");


	
	
#acyarchivelisting .inputbox, #acyuserinfo .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-right:1px solid #ccc!important;
	border-bottom:1px solid #ccc !important;
	margin-right: 10px!important;
    padding: 2px !important;}
	

#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #bbb!important;
	border-bottom: 1px solid #666!important;
	border-right: 1px solid #666!important
	}

#acyarchivelisting .inputbox:focus; #acyuserinfo .inputbox:focus{
	border:1px solid #bbb !important;
	background-color:#f5f5f5 !important;}
	


#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#000 !important;
	padding: 2px !important;
	margin-right:5px !important;
	background:none !important;
	border:1px solid #ddd !important;
	border-right:1px solid #bbb !important;
	border-bottom:1px solid #bbb !important;
	background-color:#fff !important;
	text-decoration:none !important;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff!important;
	background-color:#000 !important;
}

	


#acyarchivelisting {
	border:1px solid #ddd;
	padding:10px;}


#acyarchivelisting table{
	border:0px !important;}
	
#acyarchivelisting .contentheading{
	color:#000;
	font-size:16px;
	font-weight:bold;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#000;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #666;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#000;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#666;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	border-bottom:1px solid #ddd !important;
	border-right:1px solid #ddd !important;
	border-left:1px solid #ddd !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	border-bottom:1px solid #ddd !important;
	border-right:1px solid #ddd !important;
	border-left:1px solid #ddd !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}



#acylistslisting{
	border:1px solid #ddd;
	padding:10px;}

#acylistslisting .componentheading{
	color:#000;
	font-weight:bold;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	margin-left: 10px;
    padding-bottom: 5px;
}

#acylistslisting .list_name a{
	background-color: transparent;
    color:#666;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
}

#acylistslisting p{
	line-height: 15px;
    margin: 3px 0;}

div.acymailing_list{border:1px solid #F0F0F0;}


div.acymailing_list:hover{
	background-color :#f9f9f9;
	border-color:#eeeeee #cccccc #cccccc #eeeeee;
	border-weight:1px;
	border-style:solid;}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list row1{
    border:none;
    margin: 0px;
	border:1px solid #ddd !important;
	padding:10px;
}


#acymodifyform{
	border:1px solid #ddd;
	padding:10px;}


#acyusersubscription th{
	color:#666;
	padding: 4px 5px;
	background-color:#f5f5f5;}
	

#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo #trname td{
	padding-top:10px;}
	
#acyuserinfo #trplus td{
	padding-bottom:10px;}
	

#acyuserinfo select{
	border:1px solid #dcc2b2;}
	
#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acymodifyform legend{
	color:#000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	margin-bottom:10px;
}

#acyuserinfo input{
	margin:0 5px;
}


#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
    color: #666;
    font-size: 12px;
    font-weight: bold;
    margin: 0px;
    padding-top: 20px;
    text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}

#acymodifyform p{
	margin:0px;}

	

#unsubpage{
padding: 20px;
font-size:11px;
border:1px solid #ddd;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}
	
#unsubpage input{
	margin-right:5px;}
	
#unsubpage .unsubintro{
	font-weight:bold;
	color:#000;
	font-size:12px;
	padding:0px;
	padding-bottom:4px;
	margin-bottom:10px;}

#unsubpage .unsuboptions{
	padding:0px;}


#unsubpage .unsubsurveytext{
    color: #000;
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 30px;
    padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
    margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
    margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color::#fff;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}

#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}

#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#000;
	font-size:16px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}
css/component_default_shadow_sand.css000060400000006525152455614210014137 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_shadow_black.css");



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button {
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -o-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -moz-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -webkit-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;
background-image: -ms-linear-gradient(bottom, #777059 21%, #aca489 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #777059 0%, #aca489 100%);   background: radial-gradient(top, ellipse cover,#777059 0%, #aca489 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#aca489', endColorstr='#777059',GradientType=0 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -o-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -moz-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -webkit-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;
background-image: -ms-linear-gradient(bottom, #aca489 21%, #d0c9b3 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #aca489 0%, #d0c9b3 100%);   background: radial-gradient(top, ellipse cover,#aca489 0%, #d0c9b3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d0c9b3', endColorstr='#aca489',GradientType=0 ) !important; }



#acyarchivelisting .contentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ece9e0;}
#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e8e4d6;}
	
#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f2f0e8;}
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e8e4d6;}



#acyarchiveview .contentheading{
	color:#aca489;}
	
	

#acylistslisting .componentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#aca489;
}

div.acymailing_list:hover{
	background-color:#f2f0e8;}


#acymodifyform legend{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyusersubscription .list_name{
    color: #aca489;
}

	

#unsubpage .unsubintro{
	color:#aca489;
	border-bottom: 1px solid #aca489;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #aca489;
    color: #aca489;
}

css/module_default_color_green.css000060400000002014152455614210013413 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_color_black.css");




.acymailing_module .inputbox:hover{
	border:1px solid #9e9c07!important;
	border-bottom: 1px solid #727127!important;
	border-right: 1px solid #727127!important;
	}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited, .acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate {	color:#fff !important;
	background-color:#727127 !important;}

.acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active, .acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover {
    color:#fff!important;
	background-color:#9e9c07 !important;}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#9e9c07!important;}
css/module_default_basic_blue.css000060400000001651152455614210013213 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_basic_black.css");



.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#5A99AB !important;
	background-color:#fff !important;
	border:1px solid #ccc !important;
	border-right:1px solid #999 !important;
	border-bottom:1px solid #999 !important;
}



.acymailing_module .acymailing_module_form .acymailing_lists a:hover, .acymailing_module .acymailing_module_form .acymailing_lists a:active{
	color:#5A99AB!important;}
	
.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#5A99AB!important;}

css/module_default_box_red.css000060400000001143152455614210012541 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_box_black.css");

	
.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#bc1f00 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;}
css/module_default_radial_blue.css000060400000005271152455614210013370 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_radial_black.css");


.acymailing_module .inputbox:hover{
	border:1px solid #bfd8e1 !important;
	border-bottom:1px solid #9dbcc7 !important;
	-moz-box-shadow: inset 0 0 3px 3px #e2eef2 !important;
-webkit-box-shadow: inset 0 0 3px 3px#e2eef2 !important;}

.acymailing_module .inputbox:focus{
	border:1px solid  #6A9195 !important;}
	
	

.acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#fff !important;
	border:1px solid #6A9195 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #dae9ee  21%, #6A9195 58%) !important;
background-image: -o-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;
background-image: -moz-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;
background-image: -webkit-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;
background-image: -ms-radial-gradient(top, #dae9ee 21%, #6A9195 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #dae9ee 0%,#6A9195 100%);   background: radial-gradient(top, ellipse cover, #dae9ee 0%,#6A9195 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dae9ee', endColorstr='#6A9195',GradientType=1 ) !important; }

.acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff !important;
	border:1px solid #68a2b2 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #dae9ee  21%, #68a2b2 58%) !important;
background-image: -o-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;
background-image: -moz-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;
background-image: -webkit-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;
background-image: -ms-radial-gradient(top, #dae9ee 21%, #68a2b2 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #dae9ee 0%,#68a2b2 100%);   background: radial-gradient(top, ellipse cover, #dae9ee 0%,#68a2b2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dae9ee', endColorstr='#68a2b2',GradientType=1 ) !important; }



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#79adb2!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/acymenu.css000060400000021703152455614210007513 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */


#acymenu_leftside{
	z-index: 50;
	overflow:hidden;
}

.iconsonly #acymenu_leftside{
	overflow:visible;
}

#acymenu_leftside ul{
	padding: 0px;
	margin: 0px
}

#acymenu_leftside li{
	list-style-type: none;
	line-height: 8px;
}

#acymenu_leftside li:hover a{
	text-decoration: none
}

#acymenu_leftside a{
	color: #fff;
	padding: 10px 0px;
	text-shadow: 1px 1px 2px #5c759f;
	font-size: 12px;
}

#acymenu_leftside .acymenu_mainmenus{
	background-color: #728fbd
}

#acymenu_leftside .mainelement{
	text-transform: uppercase;
	cursor: pointer;
	font-weight: bold;
	background-color: #728fbd;
	transition: background 0.3s ease;
}

#acymenu_leftside .mainelement:hover, #acymenu_leftside .mainelement.opened{
	background-color: #91acd7
}

.iconsonly #acymenu_leftside .mainelement.opened{
	background-color: #728fbd
}

#acymenu_leftside .mainelement .acysubmenu{
	display: none
}

#acymenu_leftside .mainelement.opened .acysubmenu{
	display: block
}

#acymenu_leftside .mainelement a{
	display: inline-block;
	width: 220px;
	min-height: 20px;
}

#acymenu_leftside .mainelement a span{
	display: inline-block;
	float: left;
	line-height: 15px;
	margin-top: 3px;
	max-width: 160px;
}

#acymenu_leftside .mainelement .acysubmenulink span{
	width:150px;
}

.iconsonly #acymenu_leftside .mainelement a span{
	max-width: 200px
}

.iconsonly #acymenu_leftside .mainelement a{
	width: 100%;
}

#acymenu_leftside .mainelement.sel{
	background-color: #a3bbe2
}

.iconsonly #acymenu_leftside .sel a{
	width: 26px
}

#acymenu_leftside .sel a i{
	padding: 0 10px 0 2px
}

#acymenu_leftside .sel .acysubmenulink i{
	padding: 0px 14px
}

.iconsonly #acymenu_leftside .sel .acysubmenu a{
	width: 100%;
	max-width: 190px;
}

#acymenu_leftside .sel a{
	border-left: 4px solid #fff;
	background-color: #b1c7ea;
	height: 20px;
	padding: 10px;
	width: 206px;
}

#acymenu_leftside .sel .acysubmenu a{
	background-color: #5d7bab
}

#acyallcontent.iconsonly .sel ul{
	display: none
}

#acymenu_leftside .acysubmenu{
	text-transform: none;
	height: 32px
}

#acymenu_leftside .acysubmenu:hover a{
	color: #fff
}

#acymenu_leftside .acysubmenu a{
	color: #d6e3f9;
	font-size: 15px;
	font-weight: normal;
	display: block;
	clear: both;
	padding: 10px;
	max-width: 200px;
}

#acymenu_leftside .sel .acysubmenu a{
	border: none
}

#acymenu_leftside .acymenu_slide span{
	background-color: #3c5174;
	display: block;
	color: #fff;
	height: 40px;
	position: relative;
}

#acyallcontent.iconsonly #acymenu_leftside{
	width: 50px;
}


#acymenu_leftside .opened ul{
	border-bottom: 2px dotted #466597;
	z-index: 1000;
	padding: 6px 0px;
	background-color: #5d7bab;
	-moz-box-shadow: 0 5px 6px #516890 inset;
	-webkit-box-shadow: 0 5px 6px #516890 inset;
	box-shadow: 0 5px 6px #516890 inset
}

.iconsonly #acymenu_leftside .mainelement ul{
	-moz-box-shadow: 0 5px 6px #516890 inset;
	-webkit-box-shadow: 0 5px 6px #516890 inset;
	box-shadow: 0 5px 6px #516890 inset
}

.iconsonly #acymenu_leftside .opened ul{
	display: none
}

#acyallcontent.iconsonly .mainelement:hover li{
	padding-left: 0px;
}

#acyallcontent.iconsonly .mainelement:hover li i{
	padding: 0px 10px;
	font-size:15px;
}

#acyallcontent.iconsonly .subtitle, #acyallcontent.iconsonly i.acyicon-down{
	display: none
}

#acyallcontent.iconsonly li.mainelement{
	height: 40px;
	position: relative;
}

#acyallcontent.iconsonly .mainelement:hover .acysubmenu{
	display: block
}

#acymenu_leftside .acymenu_slide i.acyicon-open-close{
	padding: 12px 18px;
	font-size: 16px;
	cursor: pointer;
	position: absolute;
	right: 0px;
}

#acymenu_leftside .mainelement i{
	padding-right: 14px;
	padding-left: 14px;
	line-height: 8px;
	font-size: 16px;
	float: left;
	margin-top: 5px;
}

#acymenu_leftside .acysubmenulink{
	text-shadow: 1px 1px 2px #3c5174
}

#acymenu_leftside .mainelement i.acyicon-down{
	float: right;
	padding-right: 0px
}

#acymenu_leftside .mainelement.opened i.acyicon-down::before{
	float: right;
	padding-right: 0px;
	content: "\e603" !important;
}

@keyframes deploy{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

@-webkit-keyframes deploy{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

@-ms-keyframes deploy{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

@-o-keyframes deploy{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

@-moz-keyframes deploy{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

#acymenu_leftside .opened ul{
	-moz-animation-duration: 2s;
	-moz-animation-name: deploy;
	-webkit-animation-duration: 2s;
	-webkit-animation-name: deploy;
	-ms-animation-duration: 2s;
	-ms-animation-name: deploy;
	-o-animation-duration: 2s;
	-o-animation-name: deploy;
	animation-duration: 2s;
	animation-name: deploy;
	overflow: hidden;
}

@keyframes deploy_horizontal{
	from{
		max-width: 0px;
	}
	to{
		max-width: 800px;
	}
}

@-moz-keyframes deploy_horizontal{
	from{
		max-width: 0px;
	}
	to{
		max-width: 800px;
	}
}

@-o-keyframes deploy_horizontal{
	from{
		max-width: 0px;
	}
	to{
		max-width: 800px;
	}
}

@-webkit-keyframes deploy_horizontal{
	from{
		max-width: 0px;
	}
	to{
		max-width: 800px;
	}
}

@-ms-keyframes deploy_horizontal{
	from{
		max-width: 0px;
	}
	to{
		max-width: 800px;
	}
}

#acyallcontent.iconsonly .mainelement:hover ul{
	animation-duration: 0.4s;
	animation-name: deploy_horizontal;

	-moz-animation-duration: 0.4s;
	-moz-animation-name: deploy_horizontal;

	-webkit-animation-duration: 0.4s;
	-webkit-animation-name: deploy_horizontal;

	-o-animation-duration: 0.4s;
	-o-animation-name: deploy_horizontal;

	-ms-animation-duration: 0.4s;
	-ms-animation-name: deploy_horizontal;

	overflow: hidden;
	background-color: #5d7bab;
	border-bottom: none;
	display: inline-block;
	left: 50px;
	padding: 10px 0;
	position: relative;
	width: 210px;
	top: -50px;
}


.myacymailingarea{
	color: #c2d5f3;
	font-size: 13px;
	padding: 15px;
	text-transform: none;
	font-weight: normal
}

.iconsonly #mainelementmyacymailing{
	display: none
}

#acymenu_leftside .mainelement#mainelementmyacymailing:hover{
	background-color: #728fbd
}

#mainelementmyacymailing{
	margin-top: 5px;
	padding-top: 5px;
}

#acymenu_leftside .mainelement#mainelementmyacymailing{
	cursor: auto;
}

.myacymailingarea button{
	background-color: #5d7aa8;
	background-image: none;
	border: medium none;
	border-radius: 4px;
	box-shadow: 0 2px 3px #3c5174;
	color: #ffffff;
	font-size: 12px;
	font-weight: bold;
	padding: 5px 10px;
	text-shadow: none;
	transition: background 0.3s ease 0s;
}

.myacymailingarea button:hover{
	background-color: #91acd7;
	color: #fff;
	text-decoration: none;
	transition: background 0.3s ease;
}

#myacymailing_version a.acy_updateversion:hover{
	background-color: #f1ce72;
}

#acyallcontent.iconsonly .mainelement:hover .subtitle{
	display: block;
	position: relative;
	left: 50px;
	top: -26px;
	height: 18px;
	background-color: #91acd7;
	line-height: 18px;
	padding: 11px;
	width: 188px;
}

#acyallcontent.iconsonly .sel:hover .subtitle{
	display: block;
	width: 192px;
	position: relative;
	left: 32px;
	background-color: #b1c7ea;
	line-height: 18px;
}

#acyallcontent.iconsonly .mainelement:hover ul{
	top: 40px;
	position: absolute;
}

#acyallcontent.iconsonly .sel.mainelement:hover ul{
	position: absolute;
	width: 210px;
	top: 40px;
}

#acymenu_leftside .acyversion_needtoupdate a, #acymenu_leftside .acylicence_expired a, #acymenu_leftside .acyversion_uptodate{
	color: #fff;
	padding: 10px 10px 0;
	border-radius: 4px;
	width: auto;
	font-weight: bold;
	box-shadow: 0 2px 3px #3c5174;
	min-height: 16px;
	font-size: 12px;
}

.acyversion_needtoupdate .acy_updateversion{
	background-color: #deb957;
}

.acylicence_expired .acy_subscriptionexpired, .acylicence_expired .acy_attachlicence{
	background-color: #e66a6a;
}

.acylicence_expired .acy_subscriptionexpired:hover, .acylicence_expired .acy_attachlicence:hover{
	background-color: #ff9090;
}

#acymenu_leftside .acyversion_uptodate{
	background-color: #a7ac51;
	display: inline-block;
	padding: 10px 10px 2px;
}

#acymenu_leftside .myacymailingarea i{
	font-size: 14px;
	padding-right: 10px;
	padding-left: 0px;
}

#acymenu_leftside .myacymailingarea .acyicon-import{
	margin-bottom: 10px;
	margin-top: 0px;
}

#acymenu_leftside .myacymailingarea .acyicon-renew{
	margin: 0px;
	font-size: 15px;
}

#acymenu_leftside .myacymailingbuttons{
	margin-top: 10px;
}

#myacymailing_expiration{
	margin-top: 15px;
}

#acymenu_leftside .acy_attachlicence .acyicon-attach{
	margin-top: 0px;
}

#acymenu_leftside .sendother{
	border-left: 2px solid #728fbd;
	display: inline;
	color: white;
	font-weight: bold;
	float: left;
	left: 5px;
	background-color: #2a3f61;
	padding: 7px 18px 6px 18px;
	top: 5px;
	font-size: 12px;
	text-decoration: none;
	transition: background 0.3s ease 0s;
	position: absolute;
}

.acyallcontent.iconsonly #acymenu_leftside .sendother{
	display:none;
}

#acymenu_leftside .sendother:hover {
	background-color: #455d86;
}
css/module_default_classic_green.css000060400000001672152455614210013727 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_classic_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {	color:#9e9c07 !important;
	background-color:#fff !important;
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#fff!important;
	background-color:#9e9c07 !important;
}


.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#9e9c07!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/acyprint.css000060400000002363152455614210007704 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

.onlyprint{
	display: block !important;
}

.donotprint{
	display: none !important;
}

.acymailing_footer{
	display: none !important;
}

.acyheaderarea{
	display: none !important;
}

#element-box > div.t, #element-box > div.b, #border-bottom{
	display: none !important
}

#border-top, #toolbar-box, #header-box, #footer, #system-debug, body > p{
	display: none !important
}

#content-box, #element-box div.m{
	border: 0px !important;
}

#header, #nav, #module-status, .pagetitle, #system-message-container, .toolbar-box, #no-submenu{
	display: none !important
}

#element-box{
	border: 0px !important
}

#ap-header, #ap-submenu, #ap-sidebar, #ap-title{
	display: none !important
}

#ap-content{
	margin: 0px !important
}

#ap-content-body{
	height: auto !important
}

#mc-header, #mc-footer, #mc-message{
	display: none !important
}

.navbar, .subhead-collapse, header{
	display: none !important
}

html, body{
	height: auto !important;
}

.acyblockoptions{
	margin: 0px;
}

#acy_content{
	padding: 0px;
}

div{
	max-width: 600px !important;
}
css/component_default_classic_blue.css000060400000002533152455614210014270 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_classic_black.css");




#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#4b7c8e !important;
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff!important;
	background-color:#4b7c8e !important;
}



#acyarchivelisting .contentheading{
	color:#4b7c8e;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#6699ab;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#6699ab;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#6699ab;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#6699ab;
}


#acyarchiveview .contentheading{
	color:#6699ab;}



#acylistslisting .componentheading{
	color:#4b7c8e;
}

#acylistslisting .list_name a{
    color:#6699ab;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#6699ab;
}



#acymodifyform legend{
	color:#4b7c8e;
}

#acyusersubscription .list_name{
    color: #6699ab;
}
	

#unsubpage .unsubsurveytext{
    color:#4b7c8e;
}

#unsubpage .unsubintro{
	color:#4b7c8e;
}
css/component_default_color_black.css000060400000015316152455614210014115 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");


	

#acyarchivelisting .inputbox, #acyuserinfo .inputbox{
	color:#666;
	border:1px solid #ddd;
	padding: 2px;}
	
#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #999!important;
	border-bottom: 1px solid #333!important;
	border-right: 1px solid #333!important;
	}


#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid #bbb !important;}



#acyarchivelisting .contentpane tbody .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	padding: 2px !important;
	margin-right:5px !important;
	background:none !important;
	border:none !important;
	border:1px solid #ddd !important;
	background-color:#000 !important;
}

#acyarchivelisting .contentpane tbody .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#fff!important;
	background-color:#666 !important;
}
	


#acyarchivelisting table{
	border:0px !important;}
	
#acyarchivelisting .contentheading{
	color:#000;
	font-size:16px;
	font-weight:bold;
	border-bottom:1px solid #000;
	padding-bottom:4px;
}

#acyarchivelisting .contentpane form{
	background-color: #FFFFFF;
    border-style: solid;
	border-color:#ccc;
    border-width: 1px;
    padding: 10px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#333;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#333;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#000;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#eeeded;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}


#acylistslisting .componentheading{
	color:#000;
	font-weight:bold;
	border-bottom:1px solid #000;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	padding-bottom:4px;
}

#acylistslisting .list_name a{
	background-color: transparent;
    color:#666;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
}

#acylistslisting p{
	line-height: 15px;
    margin: 3px 0;}
    

div.acymailing_list:hover{
	background-color :#f5f5f5;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
    border:none;
	border-bottom:1px solid #ccc;
    margin: 0px;
    padding-top: 10px;
}


#acyusersubscription th{
	color:#fff;
	padding: 4px 5px;
	background-color:#000;}

#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo #trname td{
	padding-top:10px;}
	
#acyuserinfo #trplus td{
	padding-bottom:10px;}


#acyuserinfo select{
	border:1px solid #dcc2b2;}
	
#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acymodifyform legend{
	color:#000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	border-bottom:1px solid #000;
	margin-bottom:20px;
	padding-bottom:4px;
}

#acyuserinfo input{
	margin:0 5px;
}


#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
    color: #666;
    font-size: 12px;
    font-weight: bold;
    margin: 0px;
    padding-top: 20px;
    text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}
	

#unsubpage{
padding: 20px;
font-size:11px;
border:1px solid #ccc;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}
	
#unsubpage input{
	margin-right:5px;}
	
#unsubpage .unsubintro{
	border-bottom: 1px solid #000;
    color: #000;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 0 0 4px;}

#unsubpage .unsuboptions{
	padding:0px;}


#unsubpage .unsubsurveytext{
   	border-bottom: 1px solid #000;
    color: #000;
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 30px;
    padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
    margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
    margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color::#fff;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}


#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}


#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#000;
	font-size:16px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}


css/component_default_radial_sand.css000060400000010361152455614210014077 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_radial_black.css");





#acyarchivelisting .inputbox, #acyuserinfo .inputbox{
	border:1px solid #e8e4d6 !important;
	border-bottom:1px solid #d5d0bd !important;
}

#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #d5d0bd!important;
	border-bottom:1px solid #c8c3b0 !important;
	-moz-box-shadow: inset 0 0 3px 3px #f2f0e8 !important;
	-webkit-box-shadow: inset 0 0 3px 3px #f2f0e8 !important;
}

#acyarchivelisting .contentpane .inputbox:focus, #acymodifyform #acyuserinfo .inputbox:focus{
	border:1px solid  #d3cebd !important;}






#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#fff !important;
	border:1px solid #777059 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #dad5c4  21%, #777059 58%) !important;
background-image: -o-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;
background-image: -moz-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;
background-image: -webkit-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;
background-image: -ms-radial-gradient(top, #dad5c4 21%, #777059 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #dad5c4 0%,#777059 100%);   background: radial-gradient(top, ellipse cover, #dad5c4 0%,#777059 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dad5c4', endColorstr='#777059',GradientType=1 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	color:#fff !important;
	border:1px solid #b6af97!important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #ece9e0  21%, #b6af97 58%) !important;
background-image: -o-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;
background-image: -moz-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;
background-image: -webkit-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;
background-image: -ms-radial-gradient(top, #ece9e0 21%, #b6af97 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #ece9e0 0%,#b6af97 100%);   background: radial-gradient(top, ellipse cover, #ece9e0 0%,#b6af97 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ece9e0', endColorstr='#b6af97',GradientType=1 ) !important; /* IE6-9 vertical */}



#acyarchivelisting .contentheading{
	color:#777059;
	border-bottom:1px dotted #777059;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#777059;
}
#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#ece9e0;
	border-bottom:1px solid #fff !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e8e4d6;
}


#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f2f0e8;
	border-bottom:1px solid #fff !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e8e4d6;
}


#acyarchiveview .contentheading{
	color:#aca489;
}


#acylistslisting .componentheading{
	color:#777059;
	border-bottom:1px dotted #777059;
}

#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#aca489;
}

div.acymailing_list:hover{
	background-color :#f2f0e8;
}


#acymodifyform legend{
	color:#777059;
	border-bottom:1px dotted #777059;
}

#acyusersubscription .list_name{
    color: #aca489;
}


#unsubpage .unsubintro{
	color:#aca489;
	border-bottom: 1px dotted #aca489;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px dotted #aca489;
    color: #aca489;
}
css/module_default_radial_raspberry.css000060400000005337152455614210014455 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_radial_black.css");


.acymailing_module .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	box-shadow: inset 0 0 3px 3px #eee !important;
	-moz-box-shadow: inset 0 0 3px 3px #eee !important;
	-webkit-box-shadow: inset 0 0 3px 3px #eee !important;}

.acymailing_module .inputbox:focus{
	border:1px solid  #59001f !important;}
	
	

.acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#fff !important;
	border:1px solid #59001f !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #b90041  21%, #59001f 58%) !important;
background-image: -o-radial-gradient(top, #b90041 21%, #59001f 58%) !important;
background-image: -moz-radial-gradient(top, #b90041 21%, #59001f 58%) !important;
background-image: -webkit-radial-gradient(top, #b90041 21%, #59001f 58%) !important;
background-image: -ms-radial-gradient(top, #b90041 21%, #59001f 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #b90041 0%,#59001f 100%);   background: radial-gradient(top, ellipse cover, #b90041 0%,#59001f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b90041', endColorstr='#59001f',GradientType=1 ) !important; }

.acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff !important;
	border:1px solid #b90041 !important;
	-moz-border-radius:5px !important;
	text-shadow:1px 1px 1px #666 !important;

background-image: radial-gradient(top, #de5384  21%, #b90041 58%) !important;
background-image: -o-radial-gradient(top, #de5384 21%, #b90041 58%) !important;
background-image: -moz-radial-gradient(top, #de5384 21%, #b90041 58%) !important;
background-image: -webkit-radial-gradient(top, #de5384 21%, #b90041 58%) !important;
background-image: -ms-radial-gradient(top, #de5384 21%, #b90041 58%) !important;

  background: -ms-radial-gradient(top, ellipse cover, #de5384 0%,#b90041 100%);   background: radial-gradient(top, ellipse cover, #de5384 0%,#b90041 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#de5384', endColorstr='#b90041',GradientType=1 ) !important; }



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#b90041!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/module_default_classic_blue.css000060400000001671152455614210013555 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_classic_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {	color:#4B7C8E !important;
	background-color:#fff !important;
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#fff!important;
	background-color:#4B7C8E !important;
}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#4B7C8E!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/module_default_shadow_red.css000060400000004477152455614210013253 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_shadow_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited  {color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -o-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -moz-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -webkit-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -ms-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #770000 0%,#bc1f00 100%);   background: radial-gradient(top, ellipse cover, #770000 0%,#bc1f00 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#BC1F00', endColorstr='#770000',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active{
    color:#fff !important;
	background-color:#bc1f00 !important;
background-image: linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -o-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -moz-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -webkit-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -ms-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #b00303 0%,#ee0000 100%);   background: radial-gradient(top, ellipse cover, #b00303 0%,#ee0000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ee0000', endColorstr='#b00303',GradientType=0 ) !important; }

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/module_default_basic_green.css000060400000001651152455614210013364 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_basic_black.css");



.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#9e9c07 !important;
	background-color:#fff !important;
	border:1px solid #ccc !important;
	border-right:1px solid #999 !important;
	border-bottom:1px solid #999 !important;
}



.acymailing_module .acymailing_module_form .acymailing_lists a:hover, .acymailing_module .acymailing_module_form .acymailing_lists a:active{
	color:#9e9c07!important;}
	
.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#9e9c07!important;}

css/component_default_color_sand.css000060400000004411152455614210013760 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_color_black.css");




#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #aca489!important;
	border-bottom: 1px solid #777059!important;
	border-right: 1px solid #777059!important;
	}


#acyarchivelisting .contentpane tbody .button, #acymodifyform .button, #unsubbutton_div .button {
	color:#fff !important;
	background-color:#777059 !important;
}

#acyarchivelisting .contentpane tbody .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#fff!important;
	background-color:#aca489 !important;
}
	

#acyarchivelisting .contentheading{
	color: #777059;
	border-bottom:1px solid #777059;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#777059;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ece9e0}
#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e8e4d6}
	
#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f2f0e8}
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e8e4d6}


#acyarchiveview .contentheading{
	color:#aca489;}
	
	



#acylistslisting .componentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#aca489;
}

div.acymailing_list:hover{
	background-color:#f2f0e8}


#acymodifyform legend{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyusersubscription th{
	color:#fff;
	background-color:#777059;}
	
	
#acyusersubscription .list_name{
    color: #aca489;
}
	


#unsubpage .unsubintro{
	border-bottom: 1px solid #777059;
    color: #777059;}
	
#unsubpage .unsubsurveytext{
   	border-bottom: 1px solid #777059;
    color: #777059;
}



css/module_default_color_raspberry.css000060400000002014152455614210014324 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_color_black.css");




.acymailing_module .inputbox:hover{
	border:1px solid #b90041!important;
	border-bottom: 1px solid #730028!important;
	border-right: 1px solid #730028!important;
	}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited, .acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate {	color:#fff !important;
	background-color:#730028 !important;}

.acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active, .acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover {
    color:#fff!important;
	background-color:#b90041 !important;}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#B90041!important;}
css/wordpress.css000060400000003324152455614210010101 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

[class*="toplevel_page_acymailing_"] #wpcontent, [class*="acymailing_page_"] #wpcontent, [class*="admin_page_acymailing_"] #wpcontent{
    padding-left: 0px;
}

body{
    background: white !important;
}

#wpfooter{
    display: none;
}

#wpbody-content {
    padding-bottom: 0;
}

#unsubpage, #acymodifyform{
    margin-left: auto;
    margin-right: auto;
    width: 500px;
    margin-top: 40px;
}

#acymodifyform legend{
    padding-top: 10px;
    font-size: 20px;
    line-height: 40px;
    color: #333;
}

#acymodifyform #acyusersubscription{
    margin-top: 10px;
}

#acymodifyform #acyusersubscription .acymailingradiogroup input[type="radio"][value="1"]{
    margin-left: 5px;
}

#acymodifyform .acymodifybutton{
    margin-top: 0;
}

@media screen and (min-width: 600px) and (max-width: 782px){
    #wpcontent .acyaffix{
        top: 46px !important;
    }
}

@media screen and (min-width: 783px){
    #wpcontent .acyaffix{
        top: 32px !important;
    }
}

#wpcontent .acyaffix{
    left: 160px;
    width: auto;
}

@media screen and (max-width: 1050px){
    #wpcontent .acyaffix{
        left: 0px !important;
    }
}

#wpcontent .acyaffix .acytoolbartitle{
    padding-left: 0;
}

#acy_content select[multiple] {
    height: 100px !important;
}

.mce-i-acytags{
    font-family: 'acyicon' !important;
}

.mce-i-acytags:before{
	content: "\e627";
}

#acy_content #fieldListing .front, #acy_content .hidewp{
    display: none !important;
}

#acy_content #fieldListing th.back {
    background-color: #91acd7;
}
css/component_default_box_raspberry.css000060400000002560152455614210014521 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_box_black.css");




#acyarchivelisting .button:hover, #unsubbutton_div .button:hover, #acymodifyform .button:hover {
    color:#b90041;}


#acyarchivelisting .contentheading{
	color:#59001f;
	border-bottom:1px solid #59001f;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}



#acyarchiveview .contentheading{
	color:#b90041;
}



#acylistslisting .componentheading{
	color:#59001f;
	border-bottom:1px solid #59001f;
}
#acylistslisting .list_name a{
    color:#b90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}




#acymodifyform legend{
	color:#59001f;
	border-bottom:1px solid #59001f;
}

#acyusersubscription .list_name{
    color: #b90041;
}
	

#unsubpage .unsubintro{
	color:#b90041;
	border-bottom: 1px solid #b90041;
}
#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #b90041;
    color: #b90041;
}



css/module_default_shadow_blue.css000060400000004472152455614210013423 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_shadow_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited  {
color:#fff !important;
background-color:#3A5B6C !important;
background-image: linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -o-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -moz-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -webkit-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;
background-image: -ms-linear-gradient(bottom, #3A5B6C 21%, #5A99AB 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #3A5B6C 0%, #5A99AB 100%);   background: radial-gradient(top, ellipse cover,#3A5B6C 0%, #5A99AB 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5a99ab', endColorstr='#3A5B6C',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active{
color:#fff !important;
background-color:#5A99AB !important;
background-image: linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -o-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -moz-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -webkit-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;
background-image: -ms-linear-gradient(bottom, #5A99AB 21%, #b3cfd7 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #5A99AB 0%, #b3cfd7100%);   background: radial-gradient(top, ellipse cover,#5A99AB 0%, #b3cfd7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3cfd7', endColorstr='#5A99AB',GradientType=0 ) !important; }

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#5a99ab!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/module_default_shadow_raspberry.css000060400000004501152455614210014476 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_shadow_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited  {
	color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -o-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -moz-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -webkit-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;
background-image: -ms-linear-gradient(bottom, #730028 21%, #b90041 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #730028 0%,#b90041 100%);   background: radial-gradient(top, ellipse cover, #730028 0%,#b90041 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#730028', endColorstr='#b90041',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active{
    color:#fff !important;
	background-color:#b90041 !important;
background-image: linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -o-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -moz-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -webkit-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;
background-image: -ms-linear-gradient(bottom, #a2023a 21%, #eb0053 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #a2023a 0%,#eb0053 100%);   background: radial-gradient(top, ellipse cover, #a2023a 0%,#eb0053 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a2023a', endColorstr='#eb0053',GradientType=0 ) !important; }

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#B90041!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/component_default_box_sand.css000060400000003432152455614210013434 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_box_black.css");




#acyarchivelisting .button:hover, #unsubbutton_div .button:hover, #acymodifyform .button:hover {
    color:#aca489;}


#acyarchivelisting .contentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#aca489;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ece9e0;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e8e4d6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f2f0e8;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e8e4d6;
}



#acyarchiveview .contentheading{
	color:#aca489;
}



#acylistslisting .componentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}
#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#aca489;
}

div.acymailing_list:hover{
	background-color :#f2f0e8;
}



#acymodifyform legend{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyusersubscription .list_name{
    color: #aca489;
}
	

#unsubpage .unsubintro{
	color:#aca489;
	border-bottom: 1px solid #aca489;
}
#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #aca489;
    color: #aca489;
}



css/module_default_classic_red.css000060400000001672152455614210013401 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_classic_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {	color:#bc1f00 !important;
	background-color:#fff !important;
}

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#fff!important;
	background-color:#bc1f00 !important;
}


.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#bc1f00!important;
	text-decoration:underline !important;
	background-color:transparent !important;}
css/component_default_box_green.css000060400000002560152455614210013610 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_box_black.css");




#acyarchivelisting .button:hover, #unsubbutton_div .button:hover, #acymodifyform .button:hover {
    color:#9e9c07;}


#acyarchivelisting .contentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}



#acyarchiveview .contentheading{
	color:#9e9c07;
}



#acylistslisting .componentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}
#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}




#acymodifyform legend{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyusersubscription .list_name{
    color: #9e9c07;
}
	

#unsubpage .unsubintro{
	color:#9e9c07;
	border-bottom: 1px solid #9e9c07;
}
#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #9e9c07;
    color: #9e9c07;
}



css/module_default_color_sand.css000060400000002014152455614210013240 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_color_black.css");




.acymailing_module .inputbox:hover{
	border:1px solid #aca489!important;
	border-bottom: 1px solid #777059!important;
	border-right: 1px solid #777059!important;
	}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited, .acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate {	color:#fff !important;
	background-color:#777059 !important;}

.acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active, .acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover {
    color:#fff!important;
	background-color:#aca489 !important;}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#aca489!important;}
css/module_default_shadow_green.css000060400000004357152455614210013576 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_shadow_black.css");





.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited  {
color:#fff !important;
background-color:#727127 !important;
background-image: linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -o-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -moz-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -webkit-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -ms-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #727127 0%,#9e9c07 100%);   background: radial-gradient(top, ellipse cover, #727127 0%,#9e9c07 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e9c07', endColorstr='#727127',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active{
    color:#fff !important;
	background-color:#9e9c07 !important;
background-image: linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -o-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -moz-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -webkit-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -ms-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #9e9c07 0%,#cdcb2e 100%);   background: radial-gradient(top, ellipse cover, #9e9c07 0%,#cdcb2e 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcb2e', endColorstr='#9e9c07',GradientType=0 ) !important; }

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#727127!important;}
css/module_default_box_green.css000060400000001143152455614210013067 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_box_black.css");

	
.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#9e9c07 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#9e9c07!important;}
css/component_default_square_black.css000060400000023036152455614210014275 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");



#acyarchivelisting .inputbox, #acyuserinfo .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	margin-right: 10px!important;
	padding: 4px 10px !important;
	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ) !important; }


#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #ddd !important;
	border-bottom:1px solid #999 !important;
box-shadow: 0 0 3px 2px #eee!important;
-moz-box-shadow: 0 0 3px 2px #eee !important;
-webkit-box-shadow: 0 0 3px 2px #eee !important;
}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid #bbb !important;
	background-color:#f5f5f5 !important;
box-shadow: 0 0 3px 2px #eee!important;
-moz-box-shadow: 0 0 3px 2px #eee !important;
-webkit-box-shadow: 0 0 3px 2px #eee !important;}




#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
	color:#666 !important;
	border:1px solid #ddd !important;
	padding: 3px !important;
	text-shadow:1px 1px 1px #fff !important;
	margin-right:5px !important;
	background-color:#CCC !important;

background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;

	background: -ms-linear-gradient(top, ellipse cover, #e3eff3 0%,#5a99ab 100%); 	background: radial-gradient(top, ellipse cover, #e3eff3 0%,#5a99ab 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ) !important; 
}

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
		color:#000 !important;
	background-color:#f5f5f5 !important;
background-image: linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -o-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -moz-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -ms-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb', endColorstr='#ffffff',GradientType=0 ) !important; box-shadow: 0 0 3px 2px #eee !important;
-moz-box-shadow: 0 0 3px 2px #eee !important;
-webkit-box-shadow: 0 0 3px 2px #eee !important;
}



#acyarchivelisting table{
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#000;
	font-size:16px;
	font-weight:bold;
	border-bottom:1px solid #000;
	padding-bottom:4px;
}

#acyarchivelisting .contentpane form{
	background-color: #FFFFFF;
		border-style: solid;
	border-color:#ccc;
		border-width: 1px;
		padding: 10px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#333;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#333;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#666;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#eeeded;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}




#acylistslisting .componentheading{
	color:#000;
	font-weight:bold;
	border-bottom:1px solid #000;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	padding-bottom:4px;
}

#acylistslisting .list_name a{
	background-color: transparent;
		color:#666;
		cursor: pointer;
		font-size: 12px;
		font-weight: bold;
		text-decoration: none;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
}

#acylistslisting p{
	line-height: 15px;
		margin: 3px 0;}


div.acymailing_list:hover{
	background-color :#f5f5f5;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
		border:none;
	border-bottom:1px solid #ccc;
		margin: 0px;
		padding-top: 10px;
}


#acyusersubscription th{
	color:#666;
	padding: 4px 5px;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
border:1px solid #ccc;}


#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo #trname td{
	padding-top:10px;}

#acyuserinfo #trplus td{
	padding-bottom:10px;}


#acyuserinfo select{
	border:1px solid #dcc2b2;}

#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acymodifyform legend{
	color:#000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	border-bottom:1px solid #000;
	margin-bottom:20px;
	padding-bottom:4px;
}

#acyuserinfo input{
	margin:0 5px;
}

#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
		color: #666;
		font-size: 12px;
		font-weight: bold;
		margin: 0px;
		padding-top: 20px;
		text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}


#unsubpage{
padding: 20px 20px 40px;
font-size:11px;
border:1px solid #ccc;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}

#unsubpage input{
	margin-right:5px;}

#unsubpage .unsubintro{
	font-weight:bold;
	color:#000;
	font-size:12px;
	padding:0px;
	border-bottom: 1px solid #000;
	padding-bottom:4px;
	margin-bottom:10px;}

#unsubpage .unsuboptions{
	padding:0px;}


#unsubpage .unsubsurveytext{
		border-bottom: 1px solid #000;
		color: #000;
		display: block;
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 10px;
		margin-top: 30px;
		padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color::#fff;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}


#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}


#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#000;
	font-size:16px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}


css/component_default_shadow_green.css000060400000005667152455614210014320 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_shadow_black.css");



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button {
color:#fff !important;
background-color:#727127 !important;
background-image: linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -o-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -moz-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -webkit-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;
background-image: -ms-linear-gradient(bottom, #727127 21%, #9e9c07 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #727127 0%,#9e9c07 100%);   background: radial-gradient(top, ellipse cover, #727127 0%,#9e9c07 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e9c07', endColorstr='#727127',GradientType=0 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff !important;
	background-color:#9e9c07 !important;
background-image: linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -o-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -moz-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -webkit-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;
background-image: -ms-linear-gradient(bottom, #9e9c07 21%, #cdcb2e 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #9e9c07 0%,#cdcb2e 100%);   background: radial-gradient(top, ellipse cover, #9e9c07 0%,#cdcb2e 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcb2e', endColorstr='#9e9c07',GradientType=0 ) !important; }



#acyarchivelisting .contentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#9e9c07;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#9e9c07;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#9e9c07;
}


#acyarchiveview .contentheading{
	color:#9e9c07;}
	
	

#acylistslisting .componentheading{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acylistslisting .list_name a{
    color:#9e9c07;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#9e9c07;
}



#acymodifyform legend{
	color:#727127;
	border-bottom:1px solid #727127;
}

#acyusersubscription .list_name{
    color: #9e9c07;
}

	

#unsubpage .unsubintro{
	color:#9e9c07;
	border-bottom: 1px solid #9e9c07;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #9e9c07;
    color: #9e9c07;
}

css/component_default.css000060400000104643152455614210011565 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import "acyicon.css";
@import "frontendedition.css";

.acytoolbartitle{
	font-size: 14px !important;
	color: #fff;
	text-align: left;
	font-weight: bold;
	margin-top: 10px;
	white-space: nowrap;
	text-overflow:ellipsis;
	overflow: hidden;
	max-width:1px;
}

.acytoolbarmenu{
	background-color: #728fbd;
	padding: 0px 20px;
	text-align: right;
	height: 40px;
}

.acytoolbarmenu button{
	background-color: #728fbd;
	transition: background 0.3s ease;
	color: #fff;
	border: none;
	padding: 0px 10px;
	font-weight: bold;
	text-shadow: 1px 1px 2px #5c759f;
	margin: 0px;
	height: 40px;
	font-size: 12px;
	cursor: pointer;
	vertical-align: middle;
}

.acytoolbarmenu button.acytoolbar_save{
	padding: 0px 5px 0px 10px;
}

.acytoolbarmenu .buttonOptions button{
	white-space: nowrap;
	height: 35px;
}

.acytoolbarmenu button:hover{
	background-color: #b1c7ea;
	margin: 0px;
	border: none;
}

.acytoolbarmenu i{
	font-size: 14px;
	margin: 0 6px 0 0;
}

.acytoolbarmenu i.acyicon-save, .acytoolbarmenu i.acyicon-spamtest{
	background-color: #ffffff;
	border-radius: 20px;
	color: #51a351;
	border: 2px solid #51a351;
	padding: 2px;
	text-shadow: none;
}

.acytoolbarmenu .acytoolbar_spamtest:hover i.acyicon-spamtest{
	background-color: #51a351;
	color: #ffffff;
	border: 2px solid #ffffff;
}

.acytoolbarmenu i.acyicon-new{
	background-color: #ffffff;
	border-radius: 20px;
	color: #51a351;
	border: 2px solid #51a351;
	padding: 2px;
	text-shadow: none;
}

.acytoolbarmenu i.acyicon-edit, .acytoolbarmenu i.acyicon-copy{
	background-color: #ffffff;
	border-radius: 20px;
	color: #63728d;
	border: 2px solid #63728d;
	padding: 3px;
	font-size: 12px;
	text-shadow: none;
}

.acytoolbarmenu i.acyicon-cancel{
	background-color: #ffffff;
	border-radius: 20px;
	color: #d75c55;
	border: 2px solid #d75c55;
	padding: 2px;
	text-shadow: none;
}

.acytoolbarmenu i.acyicon-delete{
	background-color: #ffffff;
	border-radius: 20px;
	color: #d75c55;
	border: 2px solid #d75c55;
	padding: 3px;
	font-size: 12px;
	text-shadow: none;
}

.acytoolbarmenu .acytoolbar_save:hover, .acytoolbarmenu .acytoolbar_new:hover, .acytoolbarmenu .acytoolbar_saveastmpl:hover, .acytoolbarmenu .acytoolbar_spamtest:hover, .acytoolbarmenu .acytoolbar_spamtest{
	background-color: #51a351;
}

.acytoolbarmenu .acytoolbar_spamtest:hover, .acytoolbarmenu .acytoolbar_spamtest{
	padding: 0px 20px;
}

.acytoolbarmenu .acytoolbar_edit:hover, .acytoolbarmenu .acytoolbar_copy:hover{
	background-color: #63728d;
}

.acytoolbarmenu .acytoolbar_cancel:hover, .acytoolbarmenu .acytoolbar_delete:hover{
	background-color: #d75c55;
}

span.onload{
	background-image: url(../images/spinner.gif);
	background-repeat: no-repeat;
	background-position: left;
	padding: 2px 20px;
}

#acy_content span.loading, #acy_content span.spanloading{
	padding: 2px 20px;
	display: inline;
}

div.onload{
	background-image: url(../images/spinner.gif);
	background-repeat: no-repeat;
	width: 16px;
	height: 16px;
	float: right;
	margin-left: 3px;
}

.searchtext{
	background-color: rgb(255, 255, 102);
	color: black;
	font-weight: bold;
}

.acymailing_table_options .filter-search{
	color: #666;
	margin-left: 10px;
	border-radius: 4px;
	border: none;
	white-space: nowrap;
}

.acymailing_table_options .filter-search input{
	border: none;
	padding: 4px 15px;
}

.tablegroup_options{
	text-align: right;
}

.tablegroup_options *{
	text-align: left;
}

#acy_content th.titletoggle{
	width: 65px;
	text-align: center;
}

@keyframes deployslide{
	from{
		max-height: 0px;
	}
	to{
		max-height: 450px;
	}
}

@keyframes retractslide{
	from{
		max-height: 450px;
	}
	to{
		max-height: 0px;
		display: none;
	}
}

.slide_close{
	animation: retractslide 1s forwards;
	overflow: hidden;
	background-color: #fff;
	height: 350px;
	box-shadow: 0px 1px 5px #eee;
	padding: 5px;
	margin-bottom: 20px;
}

.slide_open{
	animation: deployslide 2s forwards;
	overflow: hidden;
	background-color: #fff;
	height: 350px;
	box-shadow: 0px 1px 5px #eee;
	padding: 5px;
	margin-bottom: 20px;
}

.acyslide{
	overflow-y: auto;
}

.acyslide .acy_stat_date{
	margin-left: 0px;
}

.acyslide .statsubjectsenddate{
	min-width: 200px;
}

#acy_content th.titlesender, #acy_content th.titledate{
	width: 150px;
	white-space: nowrap;
	text-align: center;
}

#acy_content th.titlelink{
	width: 100px;
	white-space: nowrap;
	text-align: center;
}

#acy_content th.titleorder{
	width: 100px;
}

#acy_content th.titlebox, #acy_content th.titleid, #acy_content th.titlenum{
	width: 30px;
	white-space: nowrap;
	text-align: center;
}

th.titlecolor{
	width: 12px;
}

td.key{
	white-space: nowrap;
}

#acy_content a.acyupgradelink{
	color: #A44097;
	font-style: italic;
	font-size: 10px;
}

div.roundsubscrib{
	width: 12px;
	height: 12px;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 10px;
	float: right;
	margin-left: 3px;
	margin-top: 1px;
	margin-bottom: 1px;
}

div.rounddisp{
	border: 1px solid;
	border-color: gray;
}

div.roundsub{
	border: 2px solid;
	border-color: green;
}

div.roundunsub{
	border: 2px solid;
	border-color: red;
}

div.roundconf{
	border: 2px solid;
	border-color: orange;
}

div.acymailing_footer{
	padding-top: 20px;
	font-size: 10px;
}

div.acymailing_list{
	border: 1px solid #cccccc;
	margin: 10px;
	padding: 10px;
}

div.acymailing_list:hover{
	background-color: #FFFFDD;
}

.list_description{
	padding: 10px 0px;
}

.list_name{
	font-size: 14pt;
}

.acymailing_forward{
	text-align: center;
	width: 100%;
	margin-bottom: 30px;
}

.acymailing_forward tr, .acymailing_forward td{
	border: 0px;
}

#forward_addfriend{
	text-align: left;
	cursor: pointer;
}

#forward_sender_message{
	text-align: left;
}

div#iframedoc, div#iframetemplate, div#iframetag{
	height: 300px;
	display: none;
	border: 2px solid #cccccc;
}

#iframedoc iframe, #iframetemplate iframe, #iframetag iframe{
	border: 0 none;
}

div.newsletter_body{
	clear: both;
	margin-top: 10px;
}

.hideonline{
	display: none;
}

img.captchaimagecomponent{
	border: 1px solid #dddddd;
	float: left;
}


.icon-16-refuse{
	background-image: url(../images/icons/icon-16-refuse.png);
	background-repeat: no-repeat;
	width: 16px !important;
	height: 16px !important;
	float: right;
	margin-left: 3px;
}

.icon-32-schedule{
	background-image: url(../images/icons/icon-32-schedule.png) !important;
	background-position: 0% 0% !important;
}

.icon-32-import{
	background-image: url(../images/icons/icon-32-import.png) !important;
	background-position: 0% 0% !important
}

.icon-32-acyexport{
	background-image: url(../images/icons/icon-32-acyexport.png);
}

.icon-32-unschedule{
	background-image: url(../images/icons/icon-32-unschedule.png) !important;
	background-position: 0% 0% !important;
}

.icon-32-copy{
	background-image: url(../images/icons/icon-32-copy.png);
}

.icon-32-acytemplate{
	background-image: url(../images/icons/icon-32-acytemplate.png) !important;
	background-position: 0% 0% !important;
}

.icon-32-acytags{
	background-image: url(../images/icons/icon-32-tag.png) !important;
	background-position: 0% 0% !important;
}

.icon-32-replacetag{
	background-image: url(../images/icons/icon-32-replacetag.png) !important;
	background-position: 0% 0% !important;
}

.icon-32-acyprint{
	background-image: url(../images/icons/icon-32-acyprint.png) !important;
}

.icon-32-spamtest{
	background-image: url(../images/icons/icon-32-spamtest.png);
}

.icon-32-acysend{
	background-image: url(../images/icons/icon-32-acysend.png) !important;
	background-position: 0% 0% !important;
}

.icon-32-acypreview{
	background-image: url(../images/icons/icon-32-acypreview.png) !important;
	background-position: 0% 0% !important;
}

.icon-48-stats{
	background-image: url(../images/icons/icon-48-stats.png) !important;
}

.icon-48-acymailing{
	background-image: url(../images/icons/icon-48-acymailing.png);
}


.acyschedule{
	display: inline-block;
	height: 16px;
	width: 16px;
	background-image: url(../images/schedule.png)
}

div.acymailing_messages{
	border-bottom-style: solid;
	border-bottom-width: 2px;
	border-top-style: solid;
	border-top-width: 2px;
	font-weight: bold;
	margin: 5px 10px;
	padding: 0;
}

.acymailing_messages li{
	list-style-type: none;
	background: none;
	padding-left: 0px;
}

.acymailing_messages ul{
	padding: 3px 0 3px 25px;
	margin: 10px;
}

div.acymailing_warning{
	background-color: #EFE7B8;
	border-bottom-color: #F0DC7E;
	border-top-color: #F0DC7E;
	color: #CC0000;
}

div.acymailing_success{
	background-color: #CCFFBB;
	border-bottom-color: #00AA00;
	border-top-color: #00AA00;
	color: #00AA00;
}

div.acymailing_info{
	background-color: #C3D2E5;
	border-bottom-color: #84A7DB;
	border-top-color: #84A7DB;
	color: #0055BB;
}

div.acymailing_error{
	background-color: #E6C0C0;
	border-bottom-color: #DE7A7B;
	border-top-color: #DE7A7B;
	color: #CC0000;
}

div.acychart, table.acychart{
	border: 1px solid #dddddd;
	padding: 2px;
}

div.acynormalchart{
	margin: 3px;
}

#openclicktotal{
	page-break-after: always
}

#acy_content input, #acy_content textarea, #acy_content select,
#acy_content fieldset input, #acy_content fieldset textarea, #acy_content fieldset select,
#acy_content fieldset img, #acy_content fieldset button{
	float: none;
}

#acy_content label{
	float: none;
	display: inline;
}

#acy_content fieldset{
	border: 1px solid #CCCCCC;
	background-color: #FFFFFF;
}

#acy_content table.admintable td.key, #acy_content table.admintable td.paramlist_key{
	background-color: #F6F6F6;
	border-bottom: 1px solid #E9E9E9;
	border-right: 1px solid #E9E9E9;
	color: #666666;
	font-weight: bold;
	text-align: right;
	width: 140px;
	padding: 7px;
}

#acy_content table.admintable td{
	padding: 7px;
}

#acy_content table.admintable td input{
	margin-bottom: 0px;
}

#acy_content input, #acy_content select, #acy_content textarea{
	padding: 3px;
	border-radius: 3px;
}

#acy_content input[type=checkbox], #wysija input, #wysija select{
	padding: 0px;
}

#acy_content input[type=radio]{
	margin-left: 10px;
	padding: 1px;
}

#acy_content div.acyheader{
	background-repeat: no-repeat;
	color: #0B55C4;
	font-size: 22px;
	font-weight: bold;
	line-height: 48px;
	margin-left: 10px;
	padding-left: 55px;
	width: auto;
	height: auto;
}

#acy_content dd{
	width: auto;
}

#acy_content div.current select{
	margin-bottom: 0px;
}

#acy_content fieldset legend{
	position: static;
	float: none;
	top: 0px !important;
}

#acy_content div.current{
	background-color: #F9F9F9;
}

#acyarchivelisting td, #acyarchivelisting tr, #acymodifyform td, #acymodifyform tr, #acymodifyform div{
	border: 0 none;
}

#acyuserinfo td{
	padding: 4px;
}

div.acytagpopup .familymenu a{
	background: #eee;
	background: -moz-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #eeeeee));
	background: -webkit-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: -o-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: -ms-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: linear-gradient(to bottom, #ffffff 0%, #eeeeee 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
	border: 1px solid #ddd;
	border-radius: 3px;
	color: #555;
	display: block;
	float: left;
	font-size: 12px;
	margin-bottom: 4px;
	margin-right: 4px;
	padding: 5px 10px;
	text-decoration: none;
	white-space: nowrap;
	text-shadow: 0 -1px 0 rgba(255, 255, 255, 1);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
}

#plugarea .nav-tabs > li{
	float: left !important;
}

div.acytagpopup .familymenu a:hover, div.acytagpopup .familymenu a.selected{
	background: #3994c0;
	background: -moz-linear-gradient(top, #3994c0 0%, #2970aa 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3994c0), color-stop(100%, #2970aa));
	background: -webkit-linear-gradient(top, #3994c0 0%, #2970aa 100%);
	background: -o-linear-gradient(top, #3994c0 0%, #2970aa 100%);
	background: -ms-linear-gradient(top, #3994c0 0%, #2970aa 100%);
	background: linear-gradient(to bottom, #3994c0 0%, #2970aa 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3994c0', endColorstr='#2970aa', GradientType=0);
	border: 1px solid #267ba4;
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
}

#inserttagdiv input{
	margin-bottom: 0px
}


div.acytagpopup #inserttagdiv{
	float: right;
}

div.acytagpopup #plugarea{
	clear: both;
	padding: 10px;
}

div.acytagpopup table.acymailing_table tr.selectedrow td{
	background-color: #FDE2BA;
}

table.acltable thead{
	background-color: #5471B5;
	color: white;
}

table.acltable{
	border-collapse: collapse;
	background-color: white;
}

table.acltable td{
	padding: 4px;
	border: #cccccc 1px solid;
}

table.acltable th{
	padding: 5px 15px;
	border: #cccccc 1px solid;
}

table.acltable td.checkfield{
	text-align: center;
}

table.acltable tr.aclline:hover{
	background-color: #CDE6E3;
}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding: 10px;
}

#unsubpage .unsuboptions{
	padding-left: 20px;
}

div#wysija{
	background: url(../images/editorback.png) no-repeat;
	height: 25px;
	width: 150px;
	padding: 7px 12px;
}

#wysija span{
	width: 15px;
	height: 16px;
	display: inline-block;
	background: url(../images/typo.png) no-repeat;
	cursor: pointer;
	vertical-align: middle;
}

#wysija span.ielement{
	background-position: -19px 0px;
}

#wysija span.uelement{
	background-position: -38px 0px;
}

#wysija span.belementselected{
	background-position: 0px -29px;
}

#wysija span.ielementselected{
	background-position: -19px -29px;
}

#wysija span.uelementselected{
	background-position: -38px -29px;
}

div.acyfilterarea{
	border-left: 3px solid #ccc;
	padding: 5px;
	margin-left: 10px;
}

#acy_content td.acytdcheckbox{
	width: 35px;
	background-image: url(../images/checkbox.png);
	background-repeat: no-repeat;
	background-position: 14px 3px;
}

#acy_content tr:hover td.acytdcheckbox{
	background-position: -56px 3px;
}

#acy_content tr.selectedrow td.acytdcheckbox, #acy_content tr.acy_list_checked td.acytdcheckbox{
	background-position: -126px 3px;
}

#mail_receivers .acymailing_table tr{
	cursor: pointer;
}

.acymailing_table tr.acy_list_checked{
	background-color: #f3f7fc;
}

#lists_choice .roundsubscrib{
	float: left;
	margin-right: 15px;
}

.receiveemailbox_hidden{
	display: none
}

#acy_content tfoot td{
	text-align: center;
}


#acy_content fieldset.radio{
	border: 0;
	margin-bottom: 5px;
	background-color: transparent;
}

#acy_content fieldset.adminform{
	padding: 5px 17px 17px;
}

#acy_content fieldset.adminform legend{
	margin: 0px;
	padding: 0px 3px;
	border: 0px solid;
	width: auto;
}

body.com_acymailing #acy_content table td.order input{
	width: 20px;
	margin-bottom: 0px;
}

#acy_content .close{
	float: right;
}

.acyheaderarea{
	margin-bottom: 10px;
}

#acyuserinfo label, #acyusersubscription label{
	display: inline;
}

#acyusersubscription input[type="radio"]{
	float: none;
	margin-right: 4px;
}

.onlyprint{
	display: none
}

body.com_acymailing #toolbar button{
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

body.com_acymailing h1.page-title a{
	color: white;
}

#acynavbar div.navbar-inner{
	background-color: #FAFAFA;
	background-image: linear-gradient(to bottom, #FFFFFF, #F2F2F2);
	background-repeat: repeat-x;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.067);
}

.refreshCaptcha{
	background-image: url(../images/refresh.png);
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	cursor: pointer;
}

.refreshCaptchaForward{
	background-image: url(../images/refresh.png);
	width: 16px;
	height: 16px;
	display: inline-table;
	cursor: pointer;
	float: left;
}

.acymailing_forward #captcha_forward{
	clear: both;
}

.acymailing_forward .captchafield{
	float: left;
}

#dateDetails{
	background-color: #f5f5f5;
	background-image: linear-gradient(to bottom, #fff, #eee);
	border: 1px solid #ddd;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 3px #fff inset, 1px 2px 3px #ddd;
	opacity: 1;
	padding: 7px 12px 12px 12px;
	position: fixed;
}

.dateDetailType{
	padding-bottom: 5px;
}

.dateDetailType input{
	width: 30px !important;
}

.dateBtn{
	padding-top: 5px;
}

.abtesting_actions, .abtesting_mails{
	padding-left: 15px;
}

.abtesting_actions input{
	margin-right: 10px !important;
}

.abTestingPage fieldset{
	margin: 10px;
	padding: 5px;
}

#acymodifyform div.acy_onefield, #acymodifyform div.acy_onelist{
	clear: both;
}

#acymodifyform div.acykey, #acymodifyform .captchakeycomponent{
	width: 150px;
	float: left;
}

#acymodifyform div.inputVal, #acymodifyform div.acyListInfo{
	float: left;
}

#acymodifyform div.acystatus{
	float: left;
	width: 30%;
	max-width: 120px;
}

#acymodifyform div.acyListInfo{
	width: 69%;
}

#acymodifyform .subscriptionTitle{
	font-weight: bold;
}

#acymodifyform div.acy_onefield, .respuserinfo #acyuserinfo .acy_onefield{
	padding-top: 5px;
}

.respuserinfo #acyuserinfo .acykey{
	width: 150px;
	float: left;
}

.respuserinfo #acyuserinfo .acy_onefield{
	clear: both;
}

.respuserinfo #acyuserinfo .inputVal{
	float: left;
}

.respuserinfo #acyuserinfo .calendar{
	margin: 0px;
}

@media (max-width: 450px){
	#acymodifyform .inputVal, #acymodifyform .acyListInfo, #acymodifyform .captchafieldcomponent{
		margin-left: auto;
	}

	#acymodifyform .key, #acymodifyform .acystatus{
		float: none;
	}

	#acymodifyform .acystatus{
		text-align: start;
	}

	#acymodifyform .acyListInfo{
		padding-top: 8px;
	}
}

#acymodifyform fieldset.fieldCategory, .respuserinfo #acyuserinfo fieldset.fieldCategory{
	clear: both;
}

fieldset.fieldCategory{
	padding: 5px;
}

#acymodifyform fieldset.fieldCategory{
	border: solid 1px #ccc;
}

#acy_content .respuserinfo td.key{
	white-space: normal;
}

#acyarchivelisting .archiveRow{
	width: 100%;
	display: block;
	text-align: justify;
	clear: both;
	padding-bottom: 10px;
}

#acyarchivelisting .acyarchivetitle{
	font-weight: bold;
	display: block;
}

#acyarchivelisting .sentondate{
	display: block;
	font-size: 11px;
}

#acyarchivelisting .receiveviaemail input{
	margin-right: 6px;
}

#acyarchivelisting .receiveviaemail label{
	font-size: 11px;
}

#acyarchivelisting .receiveviaemail{
	display: inline-flex;
}

#acyarchivelisting .archivePagination{
	width: 100%;
	display: block;
	text-align: center;
}

#acyarchivelisting .archiveItemPict{
	width: 150px;
	float: left;
	padding-right: 15px;
	padding-bottom: 10px;
}

#acyarchivelisting img{
	border: 0 none;
}

#summaryfield{
	width: 80%;
	height: 50px;
}

dl.tabs dt{
	border: 1px solid #ccc;
}

#acy_content #pictureinput{
	padding-bottom: 5px
}

#acy_content #pictureinput input{
	padding: 0px;
	margin-bottom: 5px
}

#acy_content #pictureinput img{
	border-radius: 3px
}

#acy_content #pictureinput input#deletethumb{
	margin-bottom: 8px;
	margin-top: 3px;
}

#iframepreview{
	display: block;
	margin: 0 auto;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-ms-transition: all 1s ease;
	-o-transition: all 1s ease;
}

.acy_stat_subject{
	line-height: 1.8em;
}

.acy_stat_date{
	margin-left: 20px;
}

#acy_selectChart{
	width: 100%;
	height: 30px;
	margin-top: 10px;
}

.selectChart{
	cursor: default;
}

.subscriber_filter{
	text-align: left;
}

.acymailing_table .acyradios{
	margin: 5px;
}

.acyplugformat .formatbox{
	width: 235px;
	position: absolute;
	padding: 12px 20px;
	border: 1px solid #CCC;
	box-shadow: 1px 1px 5px #CCC;
	background-color: white;
	border-radius: 4px;
	z-index: 3;
}

.acyplugformat .acybuttonformat{
	background-image: url("../images/article_format.png");
	background-repeat: no-repeat;
	width: 46px;
	height: 26px;
	display: inline-block;
	margin: 5px;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
	border: 1px solid #bbb;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	transition: background-position .1s linear;
	padding: 0;
}

.acyplugformat .acyokbutton{
	background: linear-gradient(to bottom, #62c462, #51a351) !important;
	color: #fff !important;
	text-shadow: none;
	float: right;
	margin: 5px 8px;
	line-height: 26px;
}

.acy_popup_cancel_button{
	color: #6190b9;
	padding: 10px 15px 10px 25px;
	font-weight: bold;
	font-size: 13px;
	text-transform: uppercase;
	border: 1px solid #93b7d6;
	border-bottom: 2px solid #93b7d6;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 15px 5px 0px 5px;
	cursor: pointer;
	background: #fff url(../images/editor/popup_cancel.png) no-repeat 10% 50%;
	width: 100px;
}

.acy_popup_cancel_button:hover{
	border: 1px solid #8baac7;
	border-bottom: 2px solid #678fb6;
	background: #adc7e0 url(../images/editor/popup_cancel_hover.png) no-repeat 10% 50%;
	color: #fff;
	text-shadow: 1px 1px 2px #5a89b7;
	-moz-text-shadow: 1px 1px 2px #5a89b7;
	-webkit-text-shadow: 1px 1px 2px #5a89b7;
}

.acy_popup_delete_button{
	color: #dc5d55;
	padding: 10px 25px 10px 15px;
	font-weight: bold;
	font-size: 13px;
	text-transform: uppercase;
	border: 1px solid #eeb6b3;
	border-bottom: 2px solid #eeb6b3;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 15px 5px 0px 5px;
	cursor: pointer;
	background: #fff url(../images/editor/popup_delete.png) no-repeat 90% 45%;
	width: 100px;
}

.acy_popup_delete_button:hover{
	border: 1px solid #d4615b;
	border-bottom: 2px solid #b13e38;
	background: #eb837d url(../images/editor/popup_delete_hover.png) no-repeat 90% 45%;
	color: #fff;
	text-shadow: 1px 1px 2px #c54e48;
	-moz-text-shadow: 1px 1px 2px #c54e48;
	-webkit-text-shadow: 1px 1px 2px #c54e48;
}

#confirmBoxMM{
	width: 370px;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #d6d6d6;
	padding: 5px;
	border-radius: 5px;
	box-shadow: 1px 1px 5px #dddddd;
	-moz-box-shadow: 1px 1px 5px #dddddd;
	-webkit-box-shadow: 1px 1px 5px #dddddd;
	position: absolute;
	left: 234px;
	top: 150px;
	z-index: 999;
}

#acy_popup_content{
	background-color: #fff;
	padding: 20px;
	text-align: center;
	color: #706f6f;
}

.acy_folder_name{
	color: #5e93c0
}


.contentpane tr, .contentpane td{
	border: none;
}

.acymailing_table{
	width: 100%;
	border-collapse: collapse;
}

.acymailing_table tr:hover{
	background-color: #f3f7fc;
}

#acy_content .acymailing_table td{
	padding: 10px;
	border-bottom: 1px solid #eee;
	color: #777;
	font-size: 13px;
}

#acy_content .acymailing_table th a{
	text-decoration: none;
}

#acy_content .acymailing_table th a:hover{
	background-color: transparent;
}

.acymailing_table tbody tr, .acymailing_table thead tr{
	background-color: #fff;
}

.acymailing_table thead tr, .acymailing_table thead tr:hover{
	background-color: #91acd7;
	color: #fff;
	font-style: normal;
	font-weight: bold;
	text-transform: uppercase;
}

.acymailing_table thead th{
	padding: 5px 10px;
}

.acymailing_table tbody a:not(.acymailing_button_grey), .acymailing_table tbody a:link, .acymailing_table tbody a:visited{
	color: #728fbd;
	border: none;
	font-weight: bold;
	font-style: italic;
}

.acymailing_table tbody a:hover{
	color: #6680aa;
	text-decoration: underline;
}

.acymailing_table thead a, .acymailing_table thead a:hover, .acymailing_table thead a:link{
	color: #fff;
	font-style: normal;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
}

.acymailing_table_options{
	border-spacing: 0px;
}

.acymailing_table_options tbody tr{
	background-color: #c9d5e5;
	height: 50px;
}

.acymailing_table_options td{
	padding-right: 15px;
}

.acymailing_table tr{
	background-color: #fff;
}

.acymailing_table_options{
	width: 100%;
}

.acymailing_table_options .btn:hover {
	background-color: #c9d5e5;
}

.acymailing_table_options .btn {
	 background-color: #c9d5e5;
	 background-image: none;
	 border: medium none;
	 border-radius: 25px;
	 box-shadow: none;
	 font-size: 11px;
	 margin: 2px;
	 padding: 0px;
 }

#acy_content #search{
	text-align: left;
	height: 17px;
	width: 200px;
	margin-left: 15px;
	margin-bottom:0;
}

.acymailing_table_options .acyicon-search{
	background-color: #ffffff;
	border-radius: 25px;
	color: #51a351;
	display: block;
	font-size: 14px;
	padding: 6px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2) inset
}

.acymailing_table_options button:hover .acyicon-search{
	background-color: #51a351;
	color: #ffffff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3) inset
}

.acymailing_table_options .acyicon-cancel{
	background-color: #ffffff;
	border-radius: 25px;
	color: #d75c55;
	display: block;
	font-size: 14px;
	padding: 6px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2) inset
}

.acymailing_table_options button:hover .acyicon-cancel{
	background-color: #d75c55;
	color: #ffffff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3) inset
}

#acy_content .acymailing_table .title a{
	color: #fff
}

.acymailing_smalltable{
	width: 100%;
	border-collapse: collapse;
	margin: 10px 0px;
}

#acy_content tr, #acy_content td{
	border: none;
}

.acymailing_smalltable tr:hover{
	background-color: #f3f7fc;
}

.acymailing_smalltable td{
	padding: 5px;
	border-bottom: 1px solid #eee;
	color: #777;
	font-size: 13px;
}

.acymailing_smalltable tbody tr, .acymailing_smalltable thead tr{
	background-color: #fff;
}

.acymailing_smalltable thead tr, .acymailing_smalltable thead tr:hover{
	background-color: #91acd7;
	color: #fff;
	font-style: normal;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
}

.acymailing_smalltable thead th{
	padding: 4px;
}


.acyblockoptions{
	background-color: #fff;
	padding: 30px;
	margin: 15px;
	border: 1px solid #eee;
	border-bottom: 3px solid #eee;
	border-radius: 5px;
	display: inline-block;
	float: left;
}

.onelineblockoptions{
	margin: 15px 0px 15px 0px;
	background-color: #fff;
	padding: 30px;
	border: 1px solid #eee;
	border-bottom: 3px solid #eee;
	border-radius: 5px;
}

.acyblockoptions:hover{
	box-shadow: 1px 1px 6px #eee;
}

.acyblocktitle{
	text-transform: uppercase;
	font-weight: bold;
	display: block;
	margin-bottom: 20px;
	color: #728fbd;
	font-size: 12px;
}

.acymailing_button{
	background-color: #728fbd;
	color: #fff;
	text-shadow: none;
	padding: 8px 15px;
	border-radius: 4px;
	border: none;
	border-bottom: 1px solid #4f6c99;
	background-image: none;
	transition: background 0.3s ease;
	font-size: 14px;
	display: inline-block;
	cursor: pointer;
}

.acymailing_button:hover, .acymailing_button:focus, .acytoolbarmenu button:focus{
	background-color: #b1c7ea;
	color: #fff;
	text-decoration: none;
	transition: background 0.3s ease;
	border: none;
	border-bottom: 1px solid #95afd8;
}

.acymailing_button_grey{
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	background-color: #f5f5f5;
	background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
	background-repeat: repeat-x;
	border-color: #bbbbbb #bbbbbb #a2a2a2;
	border-image: none;
	border-radius: 4px;
	border-style: solid;
	border-width: 1px;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
	color: #333333;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	line-height: 18px;
	margin: 3px 0px;
	padding: 4px 12px;
	text-align: center;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
	vertical-align: middle;
}

.acymailing_button_grey:hover, .acymailing_button_grey:focus{
	background-position: 0 -15px;
	color: #333333;
	text-decoration: none;
	transition: background-position 0.1s linear 0s;
}

.acymailing_button_grey:hover, .acymailing_button_grey:focus, .acymailing_button_grey:active, .acymailing_button_grey.active, .acymailing_button_grey.disabled, .acymailing_button_grey[disabled]{
	background-color: #e6e6e6;
	color: #333333;
}

.refreshCaptchaModule{
	background-image: url(../images/refresh.png);
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	cursor: pointer;
}

img.captchaimagemodule{
	border:1px solid #dddddd;
	float: left;
}

.captchakeymodule .captchafield{
	margin-top:3px;
	margin-left:2px;
}

#acy_media_browser .drag-resize:hover{
	cursor: nw-resize;
}


#acy_media_browser #image-edition {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../images/grid.png);
	top: 0;
}

#acy_media_browser #image-edition.hidden-edition {
	display: none;
}

#acy_media_browser #image-edition .image-edition-toolbar {
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	padding: 0px 25px;
	background-color: #ECECEC;
	border-left: solid 1px #DCDCDC;
	width: 190px;
}

#acy_media_browser #image-edition .image-edition-toolbar *{
	margin-bottom: 5px;
}

.acymailing_active_button{
	box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
    background-color: #e6e6e6;
    background-image: none;
}

#tagfieldcontainer{
	display: inline-block;
	position: relative;
	width: 250px;
}

#tagul{
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	margin: 0px !important;
	padding: 0px !important;
	border: 1px solid #aaa;
	width: 250px;
	background-color: white;
	border-radius: 3px;
	border: 1px solid #cccccc;
}

#tagul li{
	list-style: none;
	float: left;
}

#tagul li.tagchoice{
	position: relative;
	margin: 1px 0px 1px 2px;
	padding: 3px 20px 3px 5px;
	border: 1px solid #aaa;
	border-radius: 3px;
	background-color: #e4e4e4;
	background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
	line-height: 13px;
}

#tagul li.tagchoice a.choice-close{
	position: absolute;
	top: 0px;
	width: 20px;
	height: 20px;
	background-image: url("../images/closecross.png");
	cursor: pointer;
}

#tagul #searchbartag{
	border: none;
	box-shadow: none;
	margin-bottom: 0px;
	min-width: 175px;
}

#tagul .searchtag{
	height: 21px;
	padding-bottom: 2px;
	margin-top: -2px;
}

#tagul #searchbartag:focus{
	outline: none;
}

#existingtags{
	position: absolute;
	z-index: 1060;
	border: 1px solid #aaa;
	border-top: 0;
	background: #fff;
	box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
	width: 248px;
}
#existingtags ul{
	margin: 0px !important;
	padding: 0px !important;
}

#existingtags ul li{
	list-style: none;
	padding: 5px 6px !important;
	cursor: pointer;
}

#existingtags ul li:hover{
	background-color: #3875d7;
	background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
	background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
	background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
	background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
	background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
	color: #fff;
}

.acymailing_table_options #tagfilter{
	vertical-align: middle;
}

.onelineblockoptions #tagfilter{
	vertical-align: middle;
}

.acynewsletterlisting .acymailing_table_options tr, .acylistlisting .acymailing_table_options tr{
	height: 30px;
}

.acynewsletterlisting .acymailing_table_options tr select, .acylistlisting .acymailing_table_options tr select, .acysubscriberlisting .acymailing_table_options tr select{
	margin-bottom: 0px;
	width: 220px;
}

#clicks_overview a{
	position: relative;
}

.overviewbubble{
	font-weight: normal;
	color: white;
	width: 22px;
	height: 22px;
	position: absolute;
	text-align: center;
	top: -10px;
	left: -10px;
	border-radius: 50%;
	line-height: 24px;
	font-size: 10px;
	border: 2px solid rgba(255,255,255,0.6);
	transform: scale(0);

	-webkit-animation: bubbleappear 1s 1 1s forwards;
	-moz-animation: bubbleappear 1s 1 1s forwards;
	animation: bubbleappear 1s 1 1s forwards;
}

@-webkit-keyframes bubbleappear {
	0%{
		transform: scale(0);
	}100%{
		transform: scale(1);
	}
}

@-moz-keyframes bubbleappear {
	0%{
		transform: scale(0);
	}100%{
		transform: scale(1);
	}
}

@keyframes bubbleappear {
	0%{
		transform: scale(0);
	}100%{
		transform: scale(1);
	}
}

.columnclassname {
	text-overflow: ellipsis;
	max-width: 250px;
	overflow: hidden;
}

.sendingtimebox{
	margin-top:8px;
}

.acysendtimecheckbox{
	width: 60px;
	height: 33px;
	background-image: url(../images/checkbox.png);
	background-repeat: no-repeat;
	background-position: 25px 8px;
	cursor: pointer;
}

.acysendtimecheckbox:hover {
	background-position: -45px 8px;
}

.acysendtimecheckbox.selected {
	background-position: -115px 8px;
}

.statsBoxRow{
	height: 5px;
}

.filldiagram{
	background-color: #5f78b5;
}

.underlined td:not(.legend){
	border-bottom: 1px dotted lightgrey;
}

.sendingtimebox table{
	display: inline-block;
	vertical-align: middle;
	margin: 20px;
	padding: 30px;
	border-width: 1px 1px 3px;
	border-style: solid;
	border-color: rgb(238, 238, 238);
	border-image: initial;
	border-bottom: 3px solid rgb(238, 238, 238);
	border-radius: 5px;
}

#displayPict .acy_attachment_delete{
	height: 24px;
	width: 24px;
	vertical-align: top;
	position: absolute;
	right: 15px;
	top: 15px;
	z-index: 990;
}

.acy_attachment_delete{
	cursor: pointer;
}


.acytabsystem ul{
	padding: 0px !important;
	margin: 0px 0px 9px 0px !important;
	list-style-type: none !important;
}

.nav-tabs{
	border-bottom: 1px solid #ddd;
	list-style: none;
}

#acy_content .nav-tabs > li{
	float: left;
	margin-bottom: 0px;
}

.nav-tabs:before, .nav-tabs:after{
	display: table;
	content: "";
	line-height: 0;
}

.nav-tabs:after{
	clear: both;
}

.nav-tabs > li > a{
	padding: 8px 12px;
	margin-right: 2px;
	line-height: 18px;
	border: 1px solid transparent;
	border-radius: 4px 4px 0 0;
	text-decoration: none;
}

.acytabsystem .nav > li > a:hover, #template_css.nav > li > a:hover{
	background-color: #b1c7ea !important;
	color: #fff;
	border-color: #b1c7ea #b1c7ea #dddddd;
	text-decoration: none;
}

.acytabsystem .nav-tabs > .active > a, .acytabsystem .nav-tabs > .active > a:hover, .acytabsystem .nav-tabs > .active > a:focus, #template_css.nav-tabs > .active > a, #template_css.nav-tabs > .active > a:hover, #template_css.nav-tabs > .active > a:focus{
	border: 1px solid #728fbd;
	color: #fff;
	background-color: #4c6da2;
}

.acytabsystem .nav-tabs > li > a{
	background-color: #fff;
}

.acytabsystem .tab-content .tab-pane{
	display: none;
}

.acytabsystem .tab-content .tab-pane.active{
	display: block;
}

.acytabsystem .nav > li > a {
	display: block;
}

.acypagination li{
	display: inline-block;
	width: 40px;
	height: 30px;
	line-height: 30px;
	border: 1px solid #ddd;
	border-left-width: 0;
	font-family: 'acyicon';
}

.acypagination li.selectedPage{
	width: 200px;
}

.acypagination li input{
	width: 35px;
}

.acypagination li:first-child{
	border-left-width: 1px;
	border-radius: 3px 0px 0px 3px;
}

.acypagination li:last-child{
	border-radius: 0px 3px 3px 0px;
}

.acypagination_counter, .acypagination{
	text-align: center;
	margin-left: 0;
}

.acypagination li span {
	cursor: pointer;
	display: block;
	line-height: 30px;
}

.acypagination li span.acypaginactive{
	opacity: 0.5;
	cursor: default;
}

.acypagination li span:not(.acypaginactive):hover{
	background-color: #e8e8e8;
}

.acypagination .selectedPage #acypagination{
	vertical-align: baseline;
}
css/backend_default.css000060400000152653152455614210011156 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import "acyicon.css";
@import "acymessages.css";

#acymenu_top a, #acy_content a {
	text-decoration: none;
}


.com_acymailing .subhead-collapse{
	display: none;
}

#acyallcontent{
	width: 100%;
	background-color: #f8f8f8;
	color: #555555;
	display: block;
	position: relative;
	margin-bottom: 25px;
}

#acymenu_leftside{
	background-color: #728fbd;
	position: absolute;
	bottom: 0;
	top: 0;
	left: 0;
	width: 230px;
}

#acymainarea{
	margin-left: 230px;
	margin-right: 0;
	margin-top: 0;
	min-height: 100%;
	padding: 0;
}

.iconsonly #acymainarea{
	margin-left: 50px;
	margin-right: 0;
	margin-top: 0;
	min-height: 100%;
	padding: 0;
	transition: margin 0s linear;
}

#acy_content{
	padding: 20px;
	display: block;
	font-size: 13px;
	background-color: #f9f9f9;
}

#acy_content textarea{
	font-size: 12px;
}

#acy_content table{
	border-spacing: 0;
}

.acytoolbarmenu{
	background-color: #728fbd;
	padding: 0px 20px;
	text-align: right;
	height: 40px;
}

.acytoolbarmenu button{
	background-color: #728fbd;
	transition: background 0.3s ease;
	color: #fff;
	border: none;
	padding: 0px 10px;
	font-weight: bold;
	text-shadow: 1px 1px 2px #5c759f;
	margin: 0px;
	height: 40px;
	font-size: 12px;
	cursor: pointer;
	vertical-align: middle;
}

.acytoolbarmenu button.acytoolbar_save{
	padding: 0px 5px 0px 10px;
}

.acytoolbarmenu .buttonOptions button{
	white-space: nowrap;
	height: 35px;
}

.acytoolbarmenu button:hover{
	background-color: #b1c7ea;
	margin: 0px;
	border: none;
}

.acytoolbarmenu i{
	font-size: 14px;
	margin: 0 6px 0 0;
}

.acytoolbarmenu i.acyicon-save, .acytoolbarmenu i.acyicon-spamtest{
	background-color: #ffffff;
	border-radius: 20px;
	color: #51a351;
	border: 2px solid #51a351;
	padding: 2px;
	text-shadow: none;
}

.acytoolbarmenu .acytoolbar_spamtest:hover i.acyicon-spamtest{
	background-color: #51a351;
	color: #ffffff;
	border: 2px solid #ffffff;
}

.acytoolbarmenu i.acyicon-new{
	background-color: #ffffff;
	border-radius: 20px;
	color: #51a351;
	border: 2px solid #51a351;
	padding: 2px;
	text-shadow: none;
}

.acytoolbarmenu i.acyicon-edit, .acytoolbarmenu i.acyicon-copy{
	background-color: #ffffff;
	border-radius: 20px;
	color: #63728d;
	border: 2px solid #63728d;
	padding: 3px;
	font-size: 12px;
	text-shadow: none;
}

.acytoolbarmenu i.acyicon-cancel{
	background-color: #ffffff;
	border-radius: 20px;
	color: #d75c55;
	border: 2px solid #d75c55;
	padding: 2px;
	text-shadow: none;
}

.acytoolbarmenu i.acyicon-delete{
	background-color: #ffffff;
	border-radius: 20px;
	color: #d75c55;
	border: 2px solid #d75c55;
	padding: 3px;
	font-size: 12px;
	text-shadow: none;
}

.acytoolbarmenu .acytoolbar_save:hover, .acytoolbarmenu .acytoolbar_new:hover, .acytoolbarmenu .acytoolbar_saveastmpl:hover, .acytoolbarmenu .acytoolbar_spamtest:hover, .acytoolbarmenu .acytoolbar_spamtest{
	background-color: #51a351;
}

.acytoolbarmenu .acytoolbar_spamtest:hover, .acytoolbarmenu .acytoolbar_spamtest{
	padding: 0px 20px;
}

.acytoolbarmenu .acytoolbar_edit:hover, .acytoolbarmenu .acytoolbar_copy:hover{
	background-color: #63728d;
}

.acytoolbarmenu .acytoolbar_cancel:hover, .acytoolbarmenu .acytoolbar_delete:hover{
	background-color: #d75c55;
}

.acyallcontent{
	min-height: 700px;
}


.acytoolbarmenu.acyaffix{
	width: 100%;
	position: fixed;
	top: 30px;
	right: 0px;
	z-index: 9;
}

.m .acytoolbarmenu.acyaffix{
	top: 0px;
	margin-right: 11px;
	width: auto;
	left: 11px;
}

.acytoolbarmenu .acytoolbar_divider{
	border-left: 1px solid #b1c7ea;
	margin: 0px 10px;
}

.iconsonly .acyaffix .acytoolbartitle{
	padding-left: 90px;
}

.acyaffix .acytoolbartitle{
	padding-left: 270px;
}

.wrapper.closed .acyaffix .acytoolbartitle{
	padding-left: 50px;
}

#acymenu_leftside.acyaffix{
	position: fixed;
	top: 30px;
	z-index: 12;
}

.m #acymenu_leftside.acyaffix{
	top: 0px;
	left: 10px;
}

.container-fluid.container-main{
	padding: 0;
}

#system-debug{
	z-index: 50;
	position: relative;
	margin: 0 !important;
	background-color: white;
	border: 1px dashed silver;
	padding: 10px;
}

.roundsubscrib{
	height: 16px;
	width: 16px;
	border-radius: 20px;
	float: left;
	margin: 3px;
}

.roundsubscrib.roundunsub{
	height: 12px;
	width: 12px;
	border: 2px solid;
	background-color: transparent !important;
}

.roundsubscrib.rounddisp{
	margin: 0px 10px
}

.roundsubscrib.roundconf{
	background-image: url(../images/wait_dot.png);
}

.acymailing_user_avatar, #pictureinput #thumbpreview{
	border-radius: 100px;
	width: 52px;
	height: 52px;
}

.subscriber_filter{
	text-align: left;
}

.inputVal #field_avatar{
	margin: 10px 0px
}

.inputVal .fileuploaded{
	display: block;
}

.inputVal .fileuploaded a{
	margin-left: 10px;
}

#travatar .inputVal img{
	float: left;
	margin-right: 20px;
	border-radius: 100px;
}

#importlists .rounddisp, #exportlists .rounddisp{
	margin-right: 10px;
}

#import_mode_container{
	padding-right: 90px;
}

#import_mode{
	float: none;
	width: 100%;
}

#import_options, #importlists{
	width: 42%;
	min-width: 480px;
}

#import_options .acyblockoptions{
	width: 90%
}

#zohocrm .acyblockoptions .acyblockoptions{
	width: 85%;
}

#importlists #lists_choice{
	width: 100%;
}

#fieldListing.acymailing_table thead th{
	padding: 10px 5px;
	vertical-align: bottom;
}

#fieldListing .frontendfields, #fieldListing .backendfields{
	background-color: #728fbd;
}

#fieldListing .frontendfields{
	border-right: 1px solid #c9d5e5;
}

.acymailing_manage_customfield .acyblockoptions{
	display: block;
	float: none;
}

#newsletterLeftColumn{
	float: left;
	width: 65%;
	min-width: 600px;
}

#newsletterRightColumn{
	float: left;
	width: 25%;
}

.acyblock_newsletter{
	width: 90%;
}

.acynewsletterlisting .acystatsbutton .acyicon-statistic, .acynewsletterlisting .acyabtestbutton .acyicon-ABtesting, .acymailing_table .acyicon-statistic, .acymailing_table .acyicon-schedule{
	color: #54719f;
	font-size: 16px;
}

.acynewsletterlisting .acystatsbutton .acyicon-statistic:hover, .acynewsletterlisting .acyabtestbutton .acyicon-ABtesting:hover, .acymailing_table .acyicon-statistic:hover{
	color: #54719f;
}

#lists_choice .roundsubscrib, #receiversinfo .roundsubscrib{
	margin-right: 15px;
}

#acypreview_resize{
	margin-bottom: 10px;
}

#htmlfieldset .acyblock_newsletter .acyblocktitle{
	float: left;
	margin-bottom: 0px;
}

#templateListing .template_thumbnail{
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 4px;
	box-shadow: 1px 1px 4px #dddddd;
	padding: 8px;
}

.templateManagement .acytabsystem{
	margin: 0px !important;
	width: 600px;
}

.acymailing_table{
	width: 100%;
	border-collapse: collapse;
}

.acymailing_table th.titlebox, .acymailing_table th.titleid, .acymailing_table th.titlenum{
	text-align: center;
	white-space: nowrap;
	width: 30px;
}

.acymailing_table th.titletoggle{
	text-align: center;
	width: 65px;
}

.acymailing_table th.titlesender, .acymailing_table th.titledate, .acymailing_table th.titlelist{
	text-align: center;
	white-space: nowrap;
	width: 150px;
}

.acymailing_table tr:hover{
	background-color: #f3f7fc;
}

.acymailing_table td{
	padding: 10px 5px;
	border-bottom: 1px solid #eee;
	color: #666;
	font-size: 13px;
}

.acymailing_table .order{
	text-align: center;
}

.acymailing_table tbody tr, .acymailing_table thead tr{
	background-color: #fff;
}

.acymailing_table thead:not(.calendar-header) tr, .acymailing_table thead:not(.calendar-header) tr:hover{
	background-color: #91acd7;
	color: #fff;
	font-style: normal;
	font-weight: bold;
	text-transform: uppercase;
}

.acymailing_table thead th{
	padding: 5px 5px;
	font-style: normal;
	font-weight: bold;
	font-size: 12px;
}

.acymailing_table tbody a:not(.acymailing_button_grey),
.acymailing_table tbody a:link:not(.acymailing_button_grey),
.acymailing_table tbody a:visited:not(.acymailing_button_grey){
	color: #4c6da2;
	border: none;
	font-weight: bold;
}

.acymailing_table tbody a:hover{
	color: #6680aa;
	text-decoration: underline;
}

.acymailing_table thead a, .acymailing_table thead a:hover, .acymailing_table thead a:link{
	color: #fff;
	font-style: normal;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
}

.acymailing_table_options .acyicon-search{
	background-color: #ffffff;
	border-radius: 25px;
	color: #51a351;
	display: block;
	font-size: 14px;
	padding: 6px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2) inset
}

.acymailing_table_options button:hover .acyicon-search{
	background-color: #51a351;
	color: #ffffff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3) inset
}

.acymailing_table_options .acyicon-cancel{
	background-color: #ffffff;
	border-radius: 25px;
	color: #d75c55;
	display: block;
	font-size: 14px;
	padding: 6px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2) inset
}

.acymailing_table_options button:hover .acyicon-cancel{
	background-color: #d75c55;
	color: #ffffff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3) inset
}

.acymailing_table_options{
	border-spacing: 0px;
}

.acymailing_table_options tbody tr{
	background-color: #c9d5e5;
	height: 50px;
}

.acymailing_table_options td{
	padding-right: 15px;
}

.acymailing_table tr{
	background-color: #fff;
}

#filter_status_chzn, #filter_lists_chzn{
	margin-right: 10px;
}

.acymailing_table_options .chzn-container-single .chzn-single{
	background-image: none;
	border: none;
	background-color: #fff;
	color: #666;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}

.acymailing_table_options .filter-search{
	color: #666;
	border-radius: 4px;
	border: none;
	white-space: nowrap;
}

.acymailing_table_options .filter-search input{
	border: none;
	padding: 4px 15px;
}

.acymailing_table_options .filter-search button{
	cursor: pointer;
}

.tablegroup_options{
	text-align: right;
}

.tablegroup_options *{
	text-align: left;
}

.acymailing_table_options #subscriberfilter input{
	padding: 4px 15px;
}

.acymailing_table_options{
	width: 100%;
}

.acymailing_table_options .btn{
	background-color: #c9d5e5;
	background-image: none;
	border: medium none;
	border-radius: 25px;
	box-shadow: none;
	font-size: 11px;
	margin: 2px;
	padding: 0px;
}

.acymailing_table_options .btn:hover{
	background-color: #c9d5e5;
}

.acymailing_table_options #subscriberfilter, .acymailing_table_options #search{
	margin-left: 15px;
	margin-bottom: 0px;
}

.acymailing_table_options .btn .icon-remove{
	background-color: #fff;
	border-radius: 20px;
	color: #d75c55;
	margin: 0;
	padding: 7px 6px 5px 6px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.4) inset;
	font-size: 11px;
}

.acymailing_table_options .btn:hover .icon-remove{
	background-color: #d75c55;
	color: #fff;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.4);
}

.acymailing_table_options .btn .icon-search{
	background-color: #fff;
	border-radius: 20px;
	color: #51a351;
	margin: 6px;
	padding: 6px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.4) inset;
}

.acymailing_table_options .btn:hover .icon-search{
	background-color: #51a351;
	color: #fff;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.4);
}

.acymailing_table .icon-unpublish::before{
	color: #d75c55 !important;
	font-size: 16px;
}

.acymailing_table td.acykey{
	width: 25%;
}

.acymailing_table .acykey label{
	font-weight: bold;
}

.acykey label, .acykey{
	font-size: 13px !important;
	font-weight: normal;
	color: #555555;
}

#acy_content .acymailing_table_options .chzn-search input[type="text"]{
	margin: 10px 0px;
	height: 25px;
}

#acy_content .acymailing_table a.acyicon-apply{
	color: #5ca85c;
	font-size: 16px;
}

#acy_content .acymailing_table a.acyicon-cancel{
	background-color: #d75c55;
	border-radius: 25px;
	color: #ffffff;
	font-size: 13px;
	font-weight: normal;
	padding: 2px 2px 2px 3px;
}

#acy_content .acymailing_table a.acyicon-cancel:hover{
	text-decoration: none;
	background-color: #c54942;
}

#acy_content .acymailing_table a.acyicon-apply:hover{
	text-decoration: none;
	color: #3e843e;
}

#acy_content #alllists span input, #acy_content #alllists span label{
	float: none;
	display: inline-block;
}

#acy_selectChart label{
	display: inline;
}

#acy_content #acy_selectChart input[type="radio"]{
	margin: 0 5px 3px 10px;
}

.selectChart, .selectChart input{
	cursor: pointer;
}

.acystatsummary ul, .acypopularlinks ul{
	margin: 0px;
}

.acystatsummary li, .acypopularlinks li{
	list-style-type: none;
	margin: 15px 0;
	padding-bottom: 5px;
	border-bottom: 1px solid #eee
}

.acystatsummary a .statnumber{
	font-size: 16px
}

.acyblockoptions{
	background-color: #fff;
	padding: 30px;
	margin: 15px;
	border: 1px solid #eee;
	border-bottom: 3px solid #eee;
	border-radius: 5px;
	display: inline-block;
	float: left;
}

.onelineblockoptions{
	margin: 15px 0px 15px 0px;
	background-color: #fff;
	padding: 30px;
	border: 1px solid #eee;
	border-bottom: 3px solid #eee;
	border-radius: 5px;
}

.acyblockoptions:hover{
	box-shadow: 1px 1px 6px #eee;
}

.acyblocktitle{
	text-transform: uppercase;
	font-weight: bold;
	display: block;
	margin-bottom: 20px;
	color: #4c6da2;
	font-size: 12px;
}

#mailer_method_config{
	margin-left: 20px;
	margin-top: 20px;
}

#confirmemail .btn{
	margin: 8px 0px;
}

#page-queue .alert{
	position: inherit;
	margin: 10px 0px;
}

#acy_content div.current{
	border: none;
	border-top: 1px solid #ddd;
}

#acy_content dl.tabs dt{
	padding: 10px !important;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	border: none;
	background-color: #fff;
	color: #4c6da2;
	margin-left: 6px;
	font-size: 14px;
}

#acy_content dl.tabs{
	margin: 10px 0px 0px 10px
}

#acy_content dl.tabs dt.open{
	background-color: #728fbd;
	color: #fff;
}

ul.acynavigationtabs.nav.nav-tabs{
    background-color: white;
    padding: 10px 15px 0px 15px !important;
    margin: 0 !important;
}

.acynavigationtabs li{
    display: inline-block;
    margin-bottom: 0;
}


#page-acl .acymailing_smalltable td.checkfield{
	text-align: center;
}

.acymailing_smalltable{
	width: 100%;
	border-collapse: collapse;
	margin: 10px 0px;
}

.acymailing_smalltable tr:hover{
	background-color: #f3f7fc;
}

.acymailing_smalltable td{
	padding: 5px;
	border-bottom: 1px solid #eee;
	color: #666;
	font-size: 13px;
}

.acymailing_smalltable tbody tr, .acymailing_smalltable thead tr{
	background-color: #fff;
}

.acymailing_smalltable thead tr, .acymailing_smalltable thead tr:hover{
	background-color: #91acd7;
	color: #fff;
	font-style: normal;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
}

.acymailing_smalltable thead th{
	padding: 4px;
}

.acymailing_table .acyicon-delete{
	color: #d75c55;
}

.acymailing_table .acyicon-delete:hover{
	color: #bb4039;
}

.acymailing_table .pagination a{
	font-style: normal;
	font-size: 11px;
	color: #91acd7;
}

.acymailing_table .pagination-list{
	background-color: #fff;
}

.acymailing_table .pagination ul{
	padding: 4px;
	border-radius: 10px;
	border: 1px solid #eee;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
	margin-left: -4px;
}

.acymailing_table .pagination-list .icon-last, .acymailing_table .pagination-list .icon-next, .acymailing_table .pagination-list .icon-previous, .acymailing_table .pagination-list .icon-first{
	margin: 0px;
}

.acymailing_table .pagination ul > li > a:focus, .acymailing_table .pagination ul > .active > a, .acymailing_table .pagination ul > .active > span{
	background-color: #91acd7;
	border: none;
	border-radius: 20px;
	color: #fff;
}

.acymailing_table .pagination ul > li > a, .acymailing_table .pagination ul > li > span{
	padding: 1px 6px 0px 6px;
}

.acymailing_table .pagination ul > li > a, .acymailing_table .pagination ul > li > span{
	border: none;
}

.acymailing_table .pagination ul > li > a:hover{
	background-color: transparent;
	color: #3c5174;
}

.acymailing_table .pagination .active a:hover{
	background-color: #3c5174;
}

.acymailing_table .chzn-container-single .chzn-single{
	border: 1px solid #eee;
	color: #666;
	background-color: #fff;
	margin-top: 5px;
	background-image: none;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}

.acymailing_table tfoot tr, .acymailing_table tfoot td, .acymailing_table tfoot tr:hover, .acymailing_table tfoot td:hover{
	background-color: #f8f8f8;
	border: none;
}

body.com_acymailing .wrapper #content{
	margin-top: 10px;
}

body.com_acymailing .nav-tabs+.tab-content{
	border: none;
}


.acytabsystem ul.nav-tabs{
	padding: 0px !important;
	margin: 0px 0px 9px 0px !important;
	list-style-type: none !important;
	box-shadow: none;
	border: none;
	border-bottom: 1px solid #ddd;
}

.nav-tabs{
	border-bottom: 1px solid #ddd;
	list-style: none;
}

#acy_content .nav-tabs > li{
	float: left;
	margin-bottom: 0px;
}

.nav-tabs:before, .nav-tabs:after{
	display: table;
	content: "";
	line-height: 0;
}

.nav-tabs:after{
	clear: both;
}

.nav-tabs > li > a{
	padding: 8px 12px;
	margin-right: 2px;
	line-height: 18px;
	border: 1px solid transparent;
	border-radius: 4px 4px 0 0;
	text-decoration: none;
}

.acytabsystem .nav > li > a:hover, #template_css.nav > li > a:hover{
	background-color: #b1c7ea !important;
	color: #fff;
	border-color: #b1c7ea #b1c7ea #dddddd;
	text-decoration: none;
}

.acytabsystem .nav-tabs > .active > a, .acytabsystem .nav-tabs > .active > a:hover, .acytabsystem .nav-tabs > .active > a:focus, #template_css.nav-tabs > .active > a, #template_css.nav-tabs > .active > a:hover, #template_css.nav-tabs > .active > a:focus{
	border: 1px solid #728fbd;
	color: #fff;
	background-color: #4c6da2;
}

.acytabsystem .nav-tabs > li > a{
	background-color: #fff;
}

.acytabsystem .tab-content .tab-pane, #template_css .tab-content .tab-pane{
	display: none;
}

.acytabsystem .tab-content .tab-pane.active, #template_css .tab-content .tab-pane.active{
	display: block;
}

.acytabsystem .nav > li > a {
	display: block;
}

#template_css.nav-tabs > li > a{
	background-color: #fff;
	border: 1px solid #eee;
	border-bottom: 1px solid #ddd;
}

#acy_content input[type="radio"], #acy_content input[type="checkbox"]{
	margin: 0px 10px;
}

#acy_content #allfilters input[type="checkbox"]{
	float: none;
}

#acy_content #allfilters label{
	display: inline-block;
}

.m #page-subscription input[type="checkbox"], .m #config_interface input[type="checkbox"]{
	float: none;
}

.paramlist .acykey, .admintable .acykey{
	padding-right: 20px;
}

.body-overlayed #sbox-window{
	padding: 0px;
}

#dashboard_mainview h1{
	color: #666;
	text-transform: uppercase;
	font-size: 18px;
	font-weight: normal;
}

#dashboard_mainview{
	color: #505050;
	font-family: arial;
	font-size: 12px;
}

#dashboard_mainview h1{
	font-size: 16px;
	margin: 0px;
	padding: 0px;
}

#dashboard_mainview h2{
	font-size: 16px;
	font-weight: normal;
	color: #666;
	margin: 0px;
	margin-bottom: 5px;
	padding: 0px;
}

#dashboard_mainview .acydashboard_content{
	font-weight: normal;
	font-size: 12px;
	text-align: center;
}

#dashboard_mainstat h1, #dashboard_mainstat h2{
	text-align: right;
}

#dashboard_mainstat .circle{
	display: inline-block;
	margin: 10px 20px;
}

#dashboard_mainstat .circle.stat_lists{
	margin: 0px 30px;
}

#dashboard_progress{
	padding: 40px 20px;
	margin: 30px 0px;
	border-top: 2px solid #eee;
}

#dashboard_progress h1, #dashboard_progress h2{
	text-align: left;
}

#dashboard_progress a:link, #dashboard_progress a:visited{
	color: #666;
}

#acy_stepbystep{
	text-align: center;
}

#acy_stepbystep form{
	margin: 20px 0px
}

.acydashboard_progress_steps{
	max-width: 990px;
	margin: auto;
}

.acydashboard_progress_steps a, .acydashboard_progress_steps a:hover{
	color: #666;
}

.acydashboard_progress_block{
	float: left;
	margin: 20px;
	width: 195px;
	padding: 5px;
	border: 1px solid #f8f8f8;
	border-radius: 4px;
	cursor: pointer;
}

.acydashboard_progress_block:hover{
	box-shadow: 0px 2px 4px #ddd;
}

.step_info{
	background-color: #f1f1f1;
	padding: 15px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
	min-height: 120px;
	border-bottom: 2px solid #e1e1e1;
}

.step_image{
	padding: 15px;
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
}

.acydashboard_step1 .step_image{
	background: url(../images/dashboard/step_list.png) no-repeat center top #dde281;
	height: 60px;
	transition: background 0.6s ease 0s;
	border-bottom: 2px solid #c9ce67;
}

.acydashboard_step1:hover .step_image{
	background: url(../images/dashboard/step_list.png) no-repeat center bottom #dde281;
	height: 60px;
	transition: background 0.6s ease 0s;
}

.acydashboard_step2 .step_image{
	background: url(../images/dashboard/step_contacts.png) no-repeat center top #adccea;
	height: 60px;
	transition: background 0.6s ease 0s;
	border-bottom: 2px solid #95b7d7;
}

.acydashboard_step2:hover .step_image{
	background: url(../images/dashboard/step_contacts.png) no-repeat center bottom #adccea;
	height: 60px;
	transition: background 0.6s ease 0s;
}

.acydashboard_step3 .step_image{
	background: url(../images/dashboard/step_newsletter.png) no-repeat center top #fbdf93;
	height: 60px;
	transition: background 0.6s ease 0s;
	border-bottom: 2px solid #ebce81;
}

.acydashboard_step3:hover .step_image{
	background: url(../images/dashboard/step_newsletter.png) no-repeat center bottom #fbdf93;
	height: 60px;
	transition: background 0.6s ease 0s;
}

.acydashboard_step4 .step_image{
	background: url(../images/dashboard/step_sendprocess.png) no-repeat center top #b6e3e6;
	height: 60px;
	transition: background 0.6s ease 0s;
	border-bottom: 2px solid #a5d5d8;
}

.acydashboard_step4:hover .step_image{
	background: url(../images/dashboard/step_sendprocess.png) no-repeat center bottom #b6e3e6;
	height: 60px;
	transition: background 0.6s ease 0s;
}

.step_title{
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 10px;
	display: block;
	text-transform: uppercase;
}

.acydashboard_step1 .step_title{
	color: #a7ac51;
}

.acydashboard_step2 .step_title{
	color: #699fd2;
}

.acydashboard_step3 .step_title{
	color: #e9bf4f;
}

.acydashboard_step4 .step_title{
	color: #5eb1b6;
}

#acy_stepbystep{
	display: block;
	clear: both;
}

.acydashboard_progressbar{
	border-radius: 5px;
	max-width: 990px;
	text-align: center;
	margin: auto;
}

.acydashboard_progressbar_colors{
	background-color: #f4f4f4;
	padding: 2px;
}

.acydashboard_progressbar .acydashboard_progress1{
	border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
}

.acydashboard_progressbar .acydashboard_progress1 span{
	background-color: #dde281;
	height: 3px;
	float: left;
	display: inline-block;
}

.acydashboard_progressbar .acydashboard_progress2{
	border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
}

.acydashboard_progressbar .acydashboard_progress2 span{
	background-color: #adccea;
	height: 3px;
	float: left;
	display: inline-block;
}

.acydashboard_progressbar .acydashboard_progress3{
	border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
}

.acydashboard_progressbar .acydashboard_progress3 span{
	background-color: #fbdf93;
	height: 3px;
	float: left;
	display: inline-block;
}

.acydashboard_progressbar .acydashboard_progress4{
	border-bottom-right-radius: 5px;
	border-top-right-radius: 5px;
}

.acydashboard_progressbar .acydashboard_progress4 span{
	background-color: #b6e3e6;
	height: 3px;
	float: left;
	display: inline-block;
}

.acydashboard_progressbar span.acystepdone{
	width: 100%;
	-webkit-animation: stepcomplete 2s ease-out 1;
	-moz-animation: stepcomplete 2s ease-out 1;
	-ms-animation: stepcomplete 2s ease-out 1;
	-o-animation: stepcomplete 2s ease-out 1;
	animation: stepcomplete 2s ease-out 1;

}

@keyframes stepcomplete{
	0%{
		width: 0;
	}
	100%{
		width: 100%;
	}
}

.acydashboard_progressbar .acydashboard_plane1.acystepdone{
	background: url(../images/dashboard/plane1.png) no-repeat center;
}

.acydashboard_progressbar .acydashboard_plane2.acystepdone{
	background: url(../images/dashboard/plane2.png) no-repeat center;
}

.acydashboard_progressbar .acydashboard_plane3.acystepdone{
	background: url(../images/dashboard/plane3.png) no-repeat center;
}

.acydashboard_progressbar .acydashboard_plane4.acystepdone{
	background: url(../images/dashboard/plane4.png) no-repeat center;
}

.acydashboard_progress1.acystepdone, .acydashboard_progress2.acystepdone, .acydashboard_progress3.acystepdone, .acydashboard_progress4.acystepdone{
	opacity: 1;
}

#dashboard_mainstat h1.acy_graphtitle{
	background-color: #95afd8;
	border-radius: 4px;
	color: #ffffff;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 15px;
	padding: 9px;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	line-height: 14px;
}

#acyallcontent.iconsonly .acy_stepbystep_newsletter .subtitle{
	display: inline
}

.acy_stepbystep_newsletter{
	margin-top: 20px;
	display: block
}

#acy_stepbystep .acymailing_button{
	display: inline;
	float: none;
	margin: auto;
	margin-top: 10px;
	background-image: none;
	background-color: #4c6da2;
	color: white;
}

#acy_stepbystep .acymailing_button:hover{
	background-color: #b1c7ea;
	transition: background 0.3s ease
}

#acy_stepbystep #user_name, #acy_stepbystep #user_email{
	background-color: #f5f5f5;
	border: 1px solid #dddddd;
	border-bottom: 2px solid #f1f1f1;
	box-shadow: none;
	margin: 0 4px;
	padding: 6px;
	transition: background 0.3s ease;
}

#acy_stepbystep #user_name:hover, #acy_stepbystep #user_email:hover{
	background-color: #fff;
}


.acycircles{
	margin-bottom: 20px;
}

.acyprogress{
	display: block;
	margin: 0 auto;
	overflow: hidden;
	transform: rotate(-90deg) rotateX(180deg);
}

.acyprogress circle{
	stroke-dashoffset: 0;
	transition: stroke-dashoffset 1s ease;
	stroke-width: 9px;
}

.acyprogress .bar{
	cursor: pointer;
	stroke: #e5e5e5;
}

.progressdiv{
	position: relative;
}

.progressdiv:after{
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 30px;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	content: attr(data-title);
}

.circle_title{
	color: #787878;
	position: relative;
	top: -65px;
}

.circle_more_stat{
	color: #fff;
	background-color: #b1c7ea;
	padding: 10px 20px;
	border-radius: 4px;
	transition: background 0.3s ease;
}

.circle_more_stat:hover, .circle_more_stat:active, .circle_more_stat:focus{
	background-color: #4c6da2;
	color: #fff;
	text-decoration: none;
	transition: background 0.3s ease;
}

.circle_informations{
	display: block;
}

.acydashboard_content .circle_informations span{
	border-radius: 50px;
	display: inline-block;
	height: 8px;
	width: 8px;
	margin-right: 5px;
}

.stats_blue_point{
	background-color: #93bfeb;
}

.stats_green_point{
	background-color: #c9c472;
}

.stats_darkblue_point{
	background-color: #7c95ad;
}

.stats_grey_point{
	background-color: #d6d6d6;
	margin: 0 5px 0 20px;
}

.progressdiv::after{
	color: #999;
}

.stat_subscribers .progressdiv::after{
	color: #adccea;
}

.stat_lists .progressdiv::after{
	color: #c9c472;
}

.stat_newsletters .progressdiv::after{
	color: #7c95ad;
}

#liststats, #statsqueue{
	margin: auto;
	position: relative;
	top: -30px;
}

#statsusers{
	margin: auto;
	position: relative;
	top: -30px;
}

.stat_subscribers{
	border-right: 1px solid #eee;
	border-left: 1px solid #eee;
	padding: 0px 40px;
}

.stat_newsletters{
	border-right: 1px solid #eee;
	border-left: 1px solid #eee;
	padding: 0px 40px;
}

@keyframes deploy{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

.acygraph #userStatisticDetails, .acygraph #listStatisticDetails, .acygraph #newsletterStatisticDetails, .acymailing_deploy{
	animation-name: deploy;
	animation-duration: 2s;
	overflow: hidden;
}

.acygraph svg{
	overflow: visible !important;
}

h1.acy_graphtitle:after{
	border-color: #95afd8 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
	border-style: solid;
	border-width: 8px 8px 0;
	content: "";
	height: 0;
	margin-right: -7px;
	position: absolute;
	right: 50%;
	top: 32px;
}


@keyframes deployslide{
	from{
		max-height: 0px;
	}
	to{
		max-height: 450px;
	}
}

@keyframes retractslide{
	from{
		max-height: 450px;
	}
	to{
		max-height: 0px;
		display: none;
	}
}

.slide_close{
	animation: retractslide 1s forwards;
	overflow: hidden;
	background-color: #fff;
	height: 350px;
	box-shadow: 0px 1px 5px #eee;
	padding: 5px;
	margin-bottom: 20px;
}

.slide_open{
	animation: deployslide 2s forwards;
	overflow: hidden;
	background-color: #fff;
	height: 350px;
	box-shadow: 0px 1px 5px #eee;
	padding: 5px;
	margin-bottom: 20px;
}

.contentpane h1.title{
	font-size: 12px !important;
}


.acymailing_button{
	background-color: #4c6da2;
	color: #fff;
	text-shadow: none;
	padding: 8px 15px;
	border-radius: 4px;
	border: none;
	border-bottom: 1px solid #4f6c99;
	background-image: none;
	transition: background 0.3s ease;
	font-size: 14px;
	display: inline-block;
	cursor: pointer;
}

.acymailing_button:hover, .acymailing_button:focus, .acytoolbarmenu button:focus{
	background-color: #b1c7ea;
	color: #fff;
	text-decoration: none;
	transition: background 0.3s ease;
	border: none;
}

.acymailing_button:hover, .acymailing_button:focus{
	border-bottom: 1px solid #95afd8;
}

.acymailing_button_delete{
	background-color: #d75c55;
	color: #fff;
	border-bottom: 1px solid #d75c55;
}

.acymailing_button_delete:hover, .acymailing_button_delete:focus{
	background-color: #f58e88;
	color: #fff;
	border-bottom: 1px solid #d75c55;
}

a.acyupload.acymailing_button_grey{
	color: #000;
}

.acymailing_button_grey{
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	background-color: #f5f5f5;
	background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
	background-repeat: repeat-x;
	border-color: #bbbbbb #bbbbbb #a2a2a2;
	border-image: none;
	border-radius: 4px;
	border-style: solid;
	border-width: 1px;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
	color: #333333;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	line-height: 18px;
	margin: 3px 0px;
	padding: 4px 12px;
	text-align: center;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
	vertical-align: middle;
}

.acyupload.acymailing_button_grey{
	margin-left: 10px;
	margin-bottom: 5px
}

.acymailing_button_grey:hover, .acymailing_button_grey:focus{
	background-position: 0 -15px;
	color: #333333;
	text-decoration: none;
	transition: background-position 0.1s linear 0s;
}

.acymailing_button_grey:hover, .acymailing_button_grey:focus, .acymailing_button_grey:active, .acymailing_button_grey.active, .acymailing_button_grey.disabled, .acymailing_button_grey[disabled]{
	background-color: #e6e6e6;
	color: #333333;
}


ul.buttonOptions{
	background-color: #5d7bab;
	box-shadow: 0 5px 6px #516890 inset;
	border-bottom-right-radius: 4px !important;
	border-bottom-left-radius: 4px !important;
	list-style: none;
	padding-bottom: 2px;
	padding-left: 0px;
	min-width: 120px;
}

.acytoolbar_save .buttonOptions li{
	text-align: center;
	display: block;
	background-color: transparent;
	padding: 5px 10px;
	border-bottom-right-radius: 4px !important;
	border-bottom-left-radius: 4px !important;
}

.buttonOptions li i{
	display: none;
}

.acytoolbarmenu .subbuttonactions .buttonOptions span{
	font-size: 13px;
}

.buttonOptions .acyicon-apply{
	font-size: 14px;
	margin: 0 10px 0 0;
}

.buttonOptions .acyicon-apply, .buttonOptions .acyicon-copy, .buttonOptions .acyicon-saveastmpl{
	font-size: 14px;
	margin: 0px 5px;
	padding-right: 8px;
}

.buttonOptions .acyicon-new{
	font-size: 16px;
	padding-right: 5px;
}

.acytoolbarmenu .buttonOptions .acytoolbar_apply, .acytoolbarmenu .buttonOptions .acytoolbar_new, .acytoolbarmenu .buttonOptions .acytoolbar_saveastmpl, .acytoolbarmenu .buttonOptions .acytoolbar_copy{
	background-color: transparent;
	text-transform: none;
	color: #a5c6e8;
	font-weight: normal;
	font-size: 16px;
	list-style-type: none;
	line-height: 14px;
	border-bottom-right-radius: 4px !important;
	border-bottom-left-radius: 4px !important;
	display: inline-block;
	min-width: 100%;
}

.acytoolbarmenu button, .acytoolbarmenu span{
	font-size: 12px;
	background-image: none;
}

.subbuttonactions{
	display: inline-block !important;
}

.subbuttonactions:hover .acytoolbar_save{
	background-color: #51a351;
}

.subbuttonactions:hover .acybuttongroup_save{
	background-color: #419141;
}

.subbuttonactions:hover .acybuttongroup_save:hover{
	box-shadow: 0px 3px 5px #2c752c inset
}

.acytoolbar_hover_display button{
	box-shadow: none;
	text-align: left;
	padding: 0 15px;
}

.acytoolbar_hover_display button span{
	margin: 0 !important;
}

.acytoolbar_hover_display{
	position: absolute;
	right: -50%;
	top: 40px;
}

.acytoolbarmenu .acyicon-up, .acytoolbarmenu .acyicon-down{
	color: #fff;
	font-size: 20px;
	padding: 0px !important;
}

.acytoolbarmenu .buttonOptions button:hover{
	background-color: transparent;
	text-transform: none;
	color: #fff;
}

.acytoolbar_hover:hover .acytoolbar_hover_display{
	display: block;
}

.acytoolbar_hover{
	position: relative;
	display: inline-block;
	height: 31px;
	vertical-align: top;
	padding-top: 9px;
}

.acytoolbar_hover_display{
	display: none;
}

.acymailing_campaigns_listing .acystatsbutton .acyicon-statistic{
	font-size: 14px;
	color: #8eb0dd;
}

.acymailing_campaigns_listing .acystatsbutton .acyicon-statistic:hover{
	color: #6680aa;
}

.acymailing_campaigns_listing .acyblockoptions{
	float: none;
	display: block;
	margin-top: 10px;
}

.container-title .page-title a{
	color: #fff;
}

.acymailing_campaigns_listing .acyicon-new{
	padding-right: 5px;
	margin-right: 5px;
	border-right: 1px solid #ddd;
	font-size: 16px;
}


.acymailing_table .titleorder{
	width: 18px
}

.acymailing_table .titleorder i{
	display: inline;
}

.donotprint input:not([type='checkbox']):not([type='radio']){
	padding-right: 40px !important;
}

.donotprint .acyicon-refresh{
	position: relative;
	right: 26px;
	color: #fff;
	font-size: 16px;
	top: 4px;
}

#acy_exportchartlegend .acyicon-export{
	margin-left: 15px;
}

#acy_exportchartlegend.acymailing_button{
	margin-top: 15px;
}


#acy_content textarea, #acy_content input[type="text"], #acy_content input[type="password"], #acy_content input[type="datetime"], #acy_content input[type="datetime-local"], #acy_content input[type="date"], #acy_content input[type="month"], #acy_content input[type="time"], #acy_content input[type="week"], #acy_content input[type="number"], #acy_content input[type="email"], #acy_content input[type="url"], #acy_content input[type="search"], #acy_content input[type="tel"], #acy_content input[type="color"], #acy_content select, #acy_content .uneditable-input, .acymailing_table_options #category{
	background-color: #fff;
	border: 1px solid #ccc;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-webkit-transition: border linear .2s, box-shadow linear .2s;
	-moz-transition: border linear .2s, box-shadow linear .2s;
	-o-transition: border linear .2s, box-shadow linear .2s;
	transition: border linear .2s, box-shadow linear .2s;
	display: inline-block;
	min-height: 18px;
	padding: 4px 6px;
	font-size: 13px;
	line-height: 18px;
	color: #555;
	border-radius: 5px;
	vertical-align: middle;
	margin-bottom: 0px;
}

#acy_content select, .acymailing_table_options #category{
	height: 28px;
}

#acy_content input.required{
	background-color: #fff;
}


#toolbar-box{
	display: none;
}

#element-box .m{
	border: none;
	background-color: transparent;
}

#element-box, div#element-box div.m{
	padding: 0px !important;
	margin: 0px !important;
}

#allfilters .plugarea, #allactions .plugarea{
	padding: 10px 0px;
}

#allfilters .inputbox, #allactions .inputbox, .subscriber_filter select{
	padding: 5px 0px;
	border-radius: 4px;
	border: 1px solid #ddd;
	color: #666;
}

#acy_content #allfilters select, #acy_content #allactions select{
	margin: 5px 0px
}

#acyallcontent div.current label, #acyallcontent div.current span.faux-label{
	display: inline;
	float: none;
}

#acy_content input[type="radio"]{
	float: none;
}

#acy_content label{
	display: inline-block;
}


#content-box .border .padding{
	padding: 0px !important;
}

#content-box #element-box .t{
	display: none;
}

.acytoolbartitle{
	font-size: 14px !important;
	color: #fff;
	text-align: left;
	font-weight: bold;
	margin-top: 10px;
	white-space: nowrap;
	text-overflow:ellipsis;
	overflow: hidden;
	max-width:1px;
}

.titleorder img{
	display: none;
}

.m .titleorder a:first-child:before{
	content: "\e602";
	font-size: 16px;
	color: #fff;
	font-family: "acyicon";
	font-style: normal;
	font-variant: normal;
	font-weight: bold;
	line-height: 1;
	text-transform: none;
	margin: 0px 10px;
}

.m .titleorder a:last-child:before{
	content: "\e620";
	font-size: 14px;
	color: #fff;
	font-family: "acyicon";
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	line-height: 1;
	text-transform: none;
	margin: 0px 10px;
}

.m th.title img{
	margin-left: 5px;
	max-width: 10px;
}

.m .statsubjectsenddate img{
	display: none
}

.m .statsubjectsenddate:before{
	content: "\e602";
	font-size: 16px;
	color: #fff;
	font-family: "acyicon";
	font-style: normal;
	font-variant: normal;
	font-weight: bold;
	line-height: 1;
	text-transform: none;
	margin: 0px 10px;
}

.checkcontent label{
	display: inline;
}

.acymailing_table thead a.saveorder, .acymailing_table thead a.saveorder:hover, .acymailing_table thead a.saveorder:link{
	background-image: none;
	width: 25px;
}

div.acytagpopup .familymenu a{
	background: #eee;
	background: -moz-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #eeeeee));
	background: -webkit-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: -o-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: -ms-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
	background: linear-gradient(to bottom, #ffffff 0%, #eeeeee 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
	border: 1px solid #ddd;
	border-radius: 3px;
	color: #555;
	display: block;
	float: left;
	font-size: 12px;
	margin-bottom: 4px;
	margin-right: 4px;
	padding: 5px 10px;
	text-decoration: none;
	white-space: nowrap;
	text-shadow: 0 -1px 0 rgba(255, 255, 255, 1);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
}

div.acytagpopup .familymenu a:hover, div.acytagpopup .familymenu a.selected{
	background: #95afd8;
	background: -moz-linear-gradient(top, #95afd8 0%, #728fbd 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #95afd8), color-stop(100%, #728fbd));
	background: -webkit-linear-gradient(top, #95afd8 0%, #728fbd 100%);
	background: -o-linear-gradient(top, #95afd8 0%, #728fbd 100%);
	background: -ms-linear-gradient(top, #95afd8 0%, #728fbd 100%);
	background: linear-gradient(to bottom, #95afd8 0%, #728fbd 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#95afd8', endColorstr='#728fbd', GradientType=0);
	border: 1px solid #728fbd;
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
}

#inserttagdiv input{
	margin-bottom: 0px;
}

#acy_content #plugarea label{
	display: inline;
	float: none;
}

#acy_content td.acytdcheckbox{
	width: 35px;
	background-image: url(../images/checkbox.png);
	background-repeat: no-repeat;
	background-position: 14px 8px;
}

#acy_content #lists_choice td.acytdcheckbox{
	width: 25px;
	min-width: 25px;
}

#acy_content tr:hover td.acytdcheckbox{
	background-position: -56px 8px;
}

#acy_content tr.selectedrow td.acytdcheckbox, #acy_content tr.acy_list_checked td.acytdcheckbox{
	background-position: -126px 8px;
}

#lists_choice.acymailing_table tr{
	cursor: pointer;
}

.acymailing_table tr.acy_list_checked{
	background-color: #f3f7fc;
}

div.acytagpopup table.acymailing_table tr.selectedrow td, div.acytagpopup table.adminlist tr.selectedrow td{
	background-color: #FDE2BA;
}

.acytagpopup .acymailing_button{
	padding: 4px 8px;
}

.acytagpopup #inserttagdiv{
	margin: 15px 0px;
}

.acytagpopup #inserttagdiv #tagstring{
	margin-bottom: 4px;
	padding: 5px;
}

.contentpane{
	padding: 0px !important;
}

#dateDetails{
	background-color: #f5f5f5;
	background-image: linear-gradient(to bottom, #fff, #eee);
	border: 1px solid #ddd;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 3px #fff inset, 1px 2px 3px #ddd;
	opacity: 1;
	padding: 7px 12px 12px 12px;
	position: fixed;
}

#filters_block, #actions_block, #filterinfo, #filteredUsers, #selectedUsers, #existing_filters{
	float: none;
	display: block;
}

#filteredUsers #filteredUsersTable{
	width: 100%;
}

#filters_block .acyfilterarea, #actions_block .acyfilterarea{
	margin-top: 5px;
}

.acyautofiltertriggers{
	clear: both;
}

div.acyfilterarea{
	border-left: 2px solid #b1c7ea;
	margin-left: 10px;
	padding: 10px 5px 0px 10px;
	clear: both;
}

.acy_filter_mail #filtersblock input, .acy_filter_mail #filtersblock select{
	max-width: 100%;
}

#executed_actions_block div.acyfilterarea{
	margin: 10px 0px 10px 10px;
	padding: 10px 5px 10px 10px;
}

#actionlisting td{
	text-align: center;
}

#acy_content input[type=checkbox], #wysija input, #wysija select{
	padding: 0px;
}

div#wysija{
	background: url(../images/editorback.png) no-repeat;
	height: 25px;
	width: 150px;
	padding: 7px 12px;
}

#wysija span{
	width: 15px;
	height: 16px;
	display: inline-block;
	background: url(../images/typo.png) no-repeat;
	cursor: pointer;
	vertical-align: middle;
}

#wysija span.ielement{
	background-position: -19px 0px;
}

#wysija span.uelement{
	background-position: -38px 0px;
}

#wysija span.belementselected{
	background-position: 0px -29px;
}

#wysija span.ielementselected{
	background-position: -19px -29px;
}

#wysija span.uelementselected{
	background-position: -38px -29px;
}

#acy_content .order .uparrow, #acy_content .order .downarrow{
	width: 12px;
	height: 12px;
}

@media screen and (max-width: 1050px){
	.acyaffix .acytoolbarmenu_menu button, .acyaffix-top .acytoolbarmenu_menu button{
		padding: 0 5px;
	}

	.acyaffix .acytoolbarmenu_menu .acytoolbar_hover, .acyaffix-top .acytoolbarmenu_menu .acytoolbar_hover{
		display: none;
	}

	.acyaffix .acytoolbarmenu_menu button span, .acyaffix-top .acytoolbarmenu_menu button span{
		display: none;
	}

	.acyaffix .acytoolbarmenu_menu button i, .acyaffix-top .acytoolbarmenu_menu button i{
		margin: 0;
	}

	.acyaffix .acytoolbartitle, .acyaffix-top .acytoolbartitle{
		display: none;
	}
}

.acyplugformat .formatbox{
	width: 235px;
	position: absolute;
	padding: 12px 20px;
	border: 1px solid #CCC;
	box-shadow: 1px 1px 5px #CCC;
	background-color: white;
	border-radius: 4px;
	z-index: 3;
}

.acyplugformat .acybuttonformat{
	background-image: url("../images/article_format.png");
	background-repeat: no-repeat;
	width: 46px;
	height: 26px;
	display: inline-block;
	margin: 5px;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
	border: 1px solid #bbb;
	border-radius: 4px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	transition: background-position .1s linear;
	padding: 0;
}

.acyplugformat .acyokbutton{
	background: linear-gradient(to bottom, #62c462, #51a351) !important;
	color: #fff !important;
	text-shadow: none;
	float: right;
	margin: 5px 8px;
	line-height: 26px;
}

.respuserinfo fieldset input, .respuserinfo fieldset select, .respuserinfo fieldset img, .respuserinfo fieldset textarea, .respuserinfo fieldset button{
	float: none;
}

.respuserinfo fieldset legend{
	font-weight: bold;
	display: block;
	margin-bottom: 20px;
	color: #4c6da2;
	font-size: 12px;
}

.respuserinfo .acy_onefield{
	margin-bottom: 20px;
}

.respuserinfo .acy_onefield label{
	margin-bottom: 5px;
	margin-right: 10px;
}

.respuserinfo .acykey label{
	float: left;
}

#mapGeoloc_div{
	text-align: center;
	width: 650px;
	margin: 20px auto;
	display: block;
}

.onlyprint{
	display: none
}

.acymailing_table .hasTip{
	border-bottom: 1px dotted #ddd;
}

.acy_filter_mail #filtersblock{
	float: none;
	display: block;
	margin-top: 40px;
}

.acy_filter_mail #filtersblock{
	padding: 20px;
	margin: 30px 0px
}


span.onload{
	background-image: url(../images/spinner.gif);
	background-repeat: no-repeat;
	background-position: left;
	padding: 2px 20px;
}

span.onload.spinner2{
	background-image: url(../images/spinner2.gif);
}

#acy_content span.loading, #acy_content span.spanloading{
	padding: 2px 0;
	display: inline;
}

div.onload{
	background-image: url(../images/spinner.gif);
	background-repeat: no-repeat;
	width: 19px;
	height: 19px;
	float: left;
	margin-left: 3px;
}

#acy_content .abtesting_actions input{
	float: left;
}

.current .paramlist_value label{
	float: none;
	display: inline-block;
}

#newsletter_preview_area #iframepreview{
	display: block;
	margin: 95px auto 0 auto;
	transition: width 1s ease;
}

#config_mailer_methodfieldset .acyblockoptions{
	float: left;
}

#config_mailer_methodfieldset .acyblockoptions:nth-child(2){
	margin-left: 20px;
}

#indexfollow input, #indexfollow label{
	float: left;
	display: inline;
}

#acy_content div.current input, #acy_content div.current select{
	float: none;
	margin-bottom: 0px;
	clear: none;
}

#acy_content .clr{
	display: block;
	clear: both;
}

.customfields_pane{
	float: right;
	cursor: pointer;
	box-sizing: border-box;
	text-align: center;
	font-size: 13px;
	text-transform: uppercase;
	display: inline-block;
	width: 50%;
	height: 100%;
	color: white;
	line-height: 40px;
	-webkit-transition: background-color 0.2s;
	-moz-transition: background-color 0.2s;
	-ms-transition: background-color 0.2s;
	-o-transition: background-color 0.2s;
	transition: background-color 0.2s;
	background-color: #B7CEF2 !important;
	font-weight: 600;
	border: 0 !important;
}

.customfields_pane:first-of-type{
	border-radius: 0;
	border-top-right-radius: 10px;
}

.customfields_pane:last-of-type{
	border-radius: 0;
	border-top-left-radius: 10px;
}

.customfields_pane.active, .customfields_pane:hover{
	background-color: #7F99C3 !important;
}

#acy_content .acy_onefield input[type="radio"], #acy_content .acy_onefield input[type="checkbox"]{
	float: none;
	display: inline-block;
	margin: 0 5px
}

#acy_content .acy_onefield label{
	display: inline-block !important
}

span.acy_stat_date{
	margin-top: 5px;
	display: block;
}

.searchtext{
	background-color: rgb(255, 255, 102);
	color: black;
	font-weight: bold;
}

.acymaincontent_action #actionsarea{
	margin-top: 10px;
}

.acymaincontent_action #actionsarea select{
	margin-top: 5px;
}

.tree{
	position: absolute;
	left: 0;
	right: 0;
	background-color: white;
	-webkit-box-shadow: 0 4px 8px #d7d7d7;
	-moz-box-shadow: 0 4px 8px #d7d7d7;
	box-shadow: 0 4px 8px #d7d7d7;
	z-index: 2;
}

.tree li{
	list-style: none;
}

.tree ul{
	margin-left: 10px;
}

.tree > ul{
	margin: 15px 0;
}

.tree-child-item .tree-child-title{
	cursor: pointer;
	font-size: 15px;
	color: #545454;
}

.tree-icon{
	padding-right: 5px;
	padding-left: 5px;
	font-size: 15px;
	color: #6b6c5a;

}

.tree-child-item.tree-empty .tree-icon:before{
	opacity: 0;
}

.tree-child-item .tree-icon:before{
	text-decoration: none;
	content: '\25bc';
	padding: 0 5px;
}

.tree-child-item.tree-closed .tree-icon, .tree-child-item.tree-closed .tree-icon:before{
	content: '\25b6';
	color: #aeaf98;
}

.tree-closed .acyicon-folder{
	font-size: 12px;
}

.tree-closed .tree-icon:before{
	font-size: 16px;
}

.tree-icon:before{
	font-size: 12px;
}

.tree-current > span,
.tree-child-item:hover > span{
	color: #08c !important;
}

.tree-child-item.tree-closed ul{
	height: 0;
	-webkit-transform: scaleY(0);
	-moz-transform: scaleY(0);
	-ms-transform: scaleY(0);
	-o-transform: scaleY(0);
	transform: scaleY(0);
}

.tree-child-item ul{
	height: auto;
	overflow: hidden;
	-webkit-transform: scaleY(1);
	-moz-transform: scaleY(1);
	-ms-transform: scaleY(1);
	-o-transform: scaleY(1);
	transform: scaleY(1);
	-webkit-transition: transform 0.5s;
	-moz-transition: transform 0.5s;
	-ms-transition: transform 0.5s;
	-o-transition: transform 0.5s;
	transition: transform 0.5s;
}

.acytable_userinfo{
	float: left;
	margin-right: 40px;
}

.acytable_userinfo td{
	height: 28px;
}

.acytable_userinfo .controls fieldset.radio{
	padding-top: 0px;
}

.acytable_userinfo td.acykey label{
	margin-bottom: 0px;
}

.acymaincontent_stats #statfilter{
	text-align: left;
}

#displayPict .acy_attachment_delete{
	height: 24px;
	width: 24px;
	vertical-align: top;
	position: absolute;
	right: 15px;
	top: 15px;
	z-index: 990;
}

.acy_attachment_delete{
	cursor: pointer;
}

#confirmBoxAttach{
	width: 370px;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #d6d6d6;
	padding: 5px;
	border-radius: 5px;
	box-shadow: 1px 1px 5px #dddddd;
	-moz-box-shadow: 1px 1px 5px #dddddd;
	-webkit-box-shadow: 1px 1px 5px #dddddd;
	position: absolute;
	left: 234px;
	top: 150px;
	z-index: 999;
}

#acy_popup_content{
	background-color: #fff;
	padding: 20px;
	text-align: center;
	color: #706f6f;
}

.acy_folder_name{
	color: #5e93c0
}

#acy_media_browser .drag-resize:hover{
	cursor: nw-resize;
}

#acy_media_browser #image-edition{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../images/grid.png);
	top: 0;
}

#acy_media_browser #image-edition.hidden-edition{
	display: none;
}

#acy_media_browser #image-edition .image-edition-toolbar{
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	padding: 0px 25px;
	background-color: #ECECEC;
	border-left: solid 1px #DCDCDC;
	width: 190px;
}

#acy_media_browser #image-edition .image-edition-toolbar *{
	margin-bottom: 5px;
}

.acymailing_active_button{
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
	background-color: #e6e6e6;
	background-image: none;
}

.acydashboard_specialcontent{
	margin-top: 30px;
}

#tagfieldcontainer{
	display: inline-block;
	position: relative;
	width: 250px;
}

#tagul{
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	margin: 0px;
	padding: 0px;
	border: 1px solid #aaa;
	width: 250px;
	background-color: white;
	border-radius: 3px;
	border: 1px solid #cccccc;
}

.acymailing_table_options #tagul{
	border-radius: 5px;
}

#tagul li{
	list-style: none;
	float: left;
}

#tagul li.tagchoice{
	position: relative;
	margin: 1px 0px 1px 2px;
	padding: 3px 20px 3px 5px;
	border: 1px solid #aaa;
	border-radius: 3px;
	background-color: #e4e4e4;
	background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
	line-height: 13px;
}

#tagul li.tagchoice a.choice-close{
	position: absolute;
	top: 0px;
	width: 20px;
	height: 20px;
	background-image: url("../images/closecross.png");
	cursor: pointer;
}

#tagul #searchbartag{
	border: none;
	box-shadow: none;
	min-width: 175px;
}

#tagul .searchtag{
	height: 21px;
	padding-bottom: 2px;
	margin-top: -2px;
}

#existingtags{
	position: absolute;
	z-index: 1060;
	border: 1px solid #aaa;
	border-top: 0;
	background: #fff;
	box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
	width: 248px;
}
#existingtags ul{
	margin: 0px;
	padding: 0px;
}

#existingtags ul li{
	list-style: none;
	padding: 5px 6px;
	cursor: pointer;
}

#existingtags ul li:hover, #existingtags ul li:focus{
	background-color: #3875d7;
	background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
	color: #fff;
}

.acymailing_table_options #tagfilter{
	vertical-align: top;
}

.onelineblockoptions #tagfilter{
	vertical-align: middle;
}

#clicks_overview a{
	position: relative;
}

.overviewbubble{
	font-weight: normal;
	color: white;
	width: 22px;
	height: 22px;
	position: absolute;
	text-align: center;
	top: -10px;
	left: -10px;
	border-radius: 50%;
	line-height: 24px;
	font-size: 10px;
	border: 2px solid rgba(255,255,255,0.5);
	transform: scale(0);

	animation: bubbleappear 1s 1 1s forwards;
}

@keyframes bubbleappear {
	0%{
		transform: scale(0);
	}100%{
		transform: scale(1);
	}
}

.installacysms #meter {
	background: #555;
	border-radius: 16px;
}

.installacysms #meter > div {
	margin: 8px 10px;
	height: 45px;
	position: relative;
}

.installacysms #progressbar {
	border-radius: 20px;
	background-color: rgb(43,194,83);
	box-shadow:
			inset 0 2px 9px  rgba(255,255,255,0.3),
			inset 0 -2px 6px rgba(0,0,0,0.4);
	width: 0%;
	position: absolute;
	margin: 8px 0px;
	top: 0;
	left: 0;
	bottom: 14px;
	right: 0;
	background-image: linear-gradient(
			-45deg,
			rgba(255, 255, 255, .2) 25%,
			transparent 25%,
			transparent 50%,
			rgba(255, 255, 255, .2) 50%,
			rgba(255, 255, 255, .2) 75%,
			transparent 75%,
			transparent
	);
	background-size: 50px 50px;
	animation: progress 2s linear infinite;
	transition: 2s ease;
}

.installacysms #information{
	color: white;
	position: absolute;
	left: 1px;
	top: 26px;
}

.installacysms #information a{
	color:#ffac15;
	text-decoration:none;
}

.installacysms #postinstall a {
	color: white;
	text-decoration: none;
}

.installacysms .myacymailingarea{
	padding: 6px 0px 0px 0px;
}

@keyframes progress {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: 50px 50px;
	}
}

.subbuttonactions:hover .acytoolbar_compare{
	background-color: #5d7bab;
	box-shadow: 0 5px 6px #516890 inset;
	color: #a5c6e8;
	width: 100%;
}

.subbuttonactions:hover .acytoolbar_compare:hover{
	color: #fff;
}

.acybuttongroup_addcompare .acytoolbar_hover_display{
	z-index: 1;
}

.subbuttonactions:hover .acybuttongroup_addcompare{
	background-color: #94b3e4;
}

.subbuttonactions:hover .acybuttongroup_addcompare:hover{
	background-color: #5d7bab;
	box-shadow: 0 5px 6px #516890 inset;
}

.columnclassname {
	text-overflow: ellipsis;
	max-width: 350px;
	overflow: hidden;
}

.icon-16-refuse{
	 background-image: url(../images/icons/icon-16-refuse.png);
	 background-repeat: no-repeat;
	 width: 16px !important;
	 height: 16px !important;
	 float: left;
	 margin: 3px;
}

.acypagination li{
	display: inline-block;
	width: 40px;
	height: 30px;
	line-height: 30px;
	border: 1px solid #ddd;
	border-left-width: 0;
	font-family: 'acyicon';
}

.acypagination li.selectedPage{
	width: 200px;
}

.acypagination li input{
	width: 35px;
}

.acypagination li:first-child{
	border-left-width: 1px;
	border-radius: 3px 0px 0px 3px;
}

.acypagination li:last-child{
	border-radius: 0px 3px 3px 0px;
}

.acypagination_counter, .acypagination{
	text-align: center;
	margin-left: 0;
}

.acypagination li span {
	cursor: pointer;
	display: block;
	line-height: 30px;
	height: 100%;
}

.acypagination li span.acypaginactive{
	opacity: 0.5;
	cursor: default;
}

.acypagination li span:not(.acypaginactive):hover{
	background-color: #e8e8e8;
}

.acypagination .selectedPage #acypagination{
	vertical-align: baseline;
}

.deleteFilter{
	cursor: pointer;
	margin-left: 10px;
	width: 20px;
}
css/module_default_square_black.css000060400000012214152455614210013554 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");


.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	margin-right: 10px!important;
		padding: 4px 10px !important;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 )!important;  }


.acymailing_module .inputbox:hover{
	border:1px solid #ddd !important;
	border-bottom:1px solid #999!important;
box-shadow: 0 0 3px 2px #eee!important;
-moz-box-shadow: 0 0 3px 2px #eee !important;
-webkit-box-shadow: 0 0 3px 2px #eee !important;
}

.acymailing_module .inputbox:focus{
	border:1px solid #bbb !important;
	background-color:#f5f5f5 !important;
	box-shadow: 0 0 3px 2px #eee!important;
-moz-box-shadow: 0 0 3px 2px #eee !important;
-webkit-box-shadow: 0 0 3px 2px #eee !important;}




.acysubbuttons input.button, .acysubbuttons .button, .acysubbuttons button.validate, .acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited {
	color:#666 !important;
	border:1px solid #ddd !important;
	padding: 3px !important;
	text-shadow:1px 1px 1px #fff !important;
	margin-right:5px !important;
	background-color:#CCC !important;

background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ) !important; }

.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
		color:#000 !important;
	background-color:#f5f5f5 !important;
background-image: linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -o-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -moz-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
background-image: -ms-linear-gradient(bottom, rgb(255,255,255) 57%, rgb(238,237,237) 86%) !important;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb', endColorstr='#ffffff',GradientType=0 ) !important; 
box-shadow: 0 0 3px 2px #eee!important;
-moz-box-shadow: 0 0 3px 2px #eee !important;
-webkit-box-shadow: 0 0 3px 2px #eee !important;
}



.acymailing_module_form td{
	padding-bottom:0px;}


.acymailing_module .acyfield_html {
	display:inline-block;
	padding-right:10px !important;}


.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited{
	text-decoration:none !important;
	display:inline-block !important;
}

.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}

.acymailing_module_form .acymailing_form a:link{
	background-color:transparent;
	color:#000;
	text-decoration:none;}

.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter:none !important;}


.acymailing_module .invalid{
border:1px solid #999 !important;}
css/module_default_box_blue.css000060400000001143152455614210012716 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_box_black.css");

	
.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#79adb2 !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#79adb2!important;}
css/module_default_basic_raspberry.css000060400000001651152455614210014275 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_basic_black.css");



.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#B90041 !important;
	background-color:#fff !important;
	border:1px solid #ccc !important;
	border-right:1px solid #999 !important;
	border-bottom:1px solid #999 !important;
}



.acymailing_module .acymailing_module_form .acymailing_lists a:hover, .acymailing_module .acymailing_module_form .acymailing_lists a:active{
	color:#B90041!important;}
	
.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#B90041!important;}

css/component_default_square_sand.css000060400000003447152455614210014152 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_square_black.css");




#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#aca489 !important;
}

	

#acyarchivelisting .contentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#aca489;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#777059;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#aca489;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#777059;}
	
	
#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ece9e0;}
#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e8e4d6;}


#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f2f0e8;}
#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e8e4d6;}
	

#acyarchiveview .contentheading{
	color:#aca489;}



#acylistslisting .componentheading{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acylistslisting .list_name a{
    color:#aca489;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#aca489;
}

div.acymailing_list:hover{
	background-color:#f2f0e8;}



#acymodifyform legend{
	color:#777059;
	border-bottom:1px solid #777059;
}

#acyusersubscription .list_name{
    color: #aca489;
}
	

#unsubpage .unsubintro{
	color:#aca489;
	border-bottom: 1px solid #aca489;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #aca489;
    color: #aca489;
}



css/backend_custom.css000060400000000341152455614210011026 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.6.1
 * @author     acyba.com
 * @copyright  (C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */


css/component_default_shadow_red.css000060400000005667152455614210013772 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_shadow_black.css");



#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button {
color:#fff !important;
background-color:#730028 !important;
background-image: linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -o-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -moz-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -webkit-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;
background-image: -ms-linear-gradient(bottom, #770000 21%, #bc1f00 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #770000 0%,#bc1f00 100%);   background: radial-gradient(top, ellipse cover, #770000 0%,#bc1f00 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#BC1F00', endColorstr='#770000',GradientType=0 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
    color:#fff !important;
	background-color:#bc1f00 !important;
background-image: linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -o-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -moz-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -webkit-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;
background-image: -ms-linear-gradient(bottom, #b00303 21%, #ee0000 58%) !important;

  background: -ms-linear-gradient(top, ellipse cover, #b00303 0%,#ee0000 100%);   background: radial-gradient(top, ellipse cover, #b00303 0%,#ee0000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ee0000', endColorstr='#b00303',GradientType=0 ) !important; }



#acyarchivelisting .contentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#bc1f00;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#bc1f00;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#bc1f00;
}


#acyarchiveview .contentheading{
	color:#bc1f00;}
	
	

#acylistslisting .componentheading{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acylistslisting .list_name a{
    color:#bc1f00;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#bc1f00;
}



#acymodifyform legend{
	color:#770000;
	border-bottom:1px solid #770000;
}

#acyusersubscription .list_name{
    color: #bc1f00;
}

	

#unsubpage .unsubintro{
	color:#bc1f00;
	border-bottom: 1px solid #bc1f00;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #bc1f00;
    color: #bc1f00;
}

css/component_default_basic_blue.css000060400000003616152455614210013733 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_basic_black.css");

	
#acymodifyform .button:hover, #unsubbutton_div .button:hover, #acyarchivelisting .button:hover {
    color:#5a99ab;}


#acyarchivelisting .contentheading{
	color:#5a99ab;
	border-bottom:1px solid #5a99ab;
}

#acyarchivelisting .contentpane .contentdescription{
	color:#8db9d8;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#5a99ab;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#5a99ab;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#5a99ab;
}


#acyarchivelisting .contentpane tbody .sectiontableentry1{
	background-color:#ecf2f5;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	background-color:#e3e9ec;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	background-color:#f4f8f9;
	border-bottom:1px solid #fff;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	background-color:#e3e9ec;
}



#acyarchiveview .contentheading{
	color:#5A99AB;}
	
	

#acylistslisting .componentheading{
	color:#5A99AB;
	border-bottom:1px solid #5A99AB;
}

#acylistslisting .list_name a{
    color:#8DB9D8;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#5A99AB;
}

div.acymailing_list:hover{
	background-color :#f4f8f9;
}


#acymodifyform legend{
	color:#5A99AB;
	border-bottom:1px solid #5A99AB;
}

#acyusersubscription .list_name{
    color: #8DB9D8;
}

#acyusersubscription th{
	background-color:#f4f8f9;}


#unsubpage .unsubintro{
	color:#5A99AB;
	border-bottom: 1px solid #5A99AB;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #5A99AB;
    color: #5A99AB;
}

css/component_default_radial_black.css000060400000023150152455614210014226 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default.css");




#acyarchivelisting .inputbox, #acyuserinfo .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-radius:5px !important;
	-moz-border-radius:5px !important;
	margin-right: 10px!important;
	padding: 3px !important;
	background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ) !important; }


#acyarchivelisting .inputbox:hover, #acyuserinfo .inputbox:hover{
	border:1px solid #ccc !important;
	border-bottom:1px solid #999 !important;
	-moz-box-shadow: inset 0 0 3px 3px #ddd !important;
	-webkit-box-shadow: inset 0 0 3px 3px #ddd !important;
}

#acyarchivelisting .inputbox:focus, #acyuserinfo .inputbox:focus{
	border:1px solid  #999 !important;}




#acyarchivelisting .button, #acymodifyform .button, #unsubbutton_div .button{
color:#fff !important;
	border:1px solid #666 !important;
	-moz-border-radius:5px !important;
	padding: 3px !important;
	text-shadow:1px 1px 1px #666 !important;
	margin-right:5px !important;
	background-color:#CCC !important;

	background-image: radial-gradient(top, #e7e7e7  21%, #666 58%) !important;
	background-image: -o-radial-gradient(top, #e7e7e7 21%, #666 58%) !important;
	background-image: -moz-radial-gradient(top, #e7e7e7 21%, #666 58%) !important;
	background-image: -webkit-radial-gradient(top, #e7e7e7 21%, #666 58%) !important;
	background-image: -ms-radial-gradient(top, #e7e7e7 21%, #666 58%) !important;

	background: -ms-radial-gradient(top, ellipse cover, #e7e7e7 0%,#666 100%); 	background: radial-gradient(top, ellipse cover, #e7e7e7 0%,#666 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e7e7e7', endColorstr='#666',GradientType=1 ) !important; }

#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover{
	color:#fff !important;
	border:1px solid #999999 !important;
	-moz-border-radius:5px !important;
	padding: 3px !important;
	text-shadow:1px 1px 1px #666 !important;
	margin-right:5px !important;
	background-color:#CCC !important;

	background-image: radial-gradient(top, #f5f5f5  21%, #999999 58%) !important;
	background-image: -o-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;
	background-image: -moz-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;
	background-image: -webkit-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;
	background-image: -ms-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;

	background: -ms-radial-gradient(top, ellipse cover, #f5f5f5 0%,#999999 100%); 	background: radial-gradient(top, ellipse cover, #f5f5f5 0%,#999999 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#999999',GradientType=1 ) !important; }




#acyarchivelisting table, #acyarchivelisting tr, #acyarchivelisting td {
	border:0px !important;}

#acyarchivelisting .contentheading{
	color:#000;
	font-size:16px;
	font-weight:bold;
	border-bottom:1px dotted #000;
	padding-bottom:4px;
}

#acyarchivelisting .contentpane form{
	background-color: #FFFFFF;
		border-style: solid;
	border-color:#ccc;
		border-width: 1px;
		padding: 10px;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#666;
	font-weight:bold;
	padding-top:10px;
	padding-bottom:10px;
}

#acyarchivelisting .acynewbutton a:hover, #acyarchivelisting .acynewbutton a:focus{
	background-color:transparent;
	color:#cf5402;
}

#acyarchivelisting .sectiontableheader{
	color:#333;
	padding-top:25px;}

#acyarchivelisting .contentpane thead{
	border-bottom:1px solid #ccc;
	height:30px;
}

#acyarchivelisting .contentpane tbody{
	color:#333;
}

#acyarchivelisting .sectiontableheader a{
	color:#333;
	text-decoration:none;
	background-color:transparent;
	font-weight:bold;
	font-size:12px;
}

#acyarchivelisting .sectiontableheader a:hover{
	background-color:transparent;
	color:#666;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1{
	text-align:center;
	height:30px;
	background-color:#eeeded;
	border-bottom:1px solid #fff !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2{
	text-align:center;
	height:30px;
	background-color:#f5f5f5;
	border-bottom:1px solid #fff !important;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2:hover{
	text-align:center;
	height:30px;
	background-color:#e6e6e6;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a{
	text-decoration:none;
	color:#666;
	background-color:transparent;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#000;
	background-color:transparent;
	text-decoration:underline;
}


#acylistslisting .componentheading{
	color:#000;
	font-weight:bold;
	border-bottom:1px dotted #000;
	margin-bottom:10px;
	font-weight:bold;
	font-size:16px;
	padding-bottom:4px;
}

#acylistslisting .list_name a{
	background-color: transparent;
		color:#666;
		cursor: pointer;
		font-size: 12px;
		font-weight: bold;
		text-decoration: none;
	padding-left:10px;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	text-decoration:underline;
	background-color:transparent;
	color:#666;
}


#acylistslisting .list_description{
	color:#333;
	padding:0px;
	padding-left:10px;
}

#acylistslisting p{
	line-height: 15px;
		margin: 3px 0;}


div.acymailing_list:hover{
	background-color :#F5f5f5;
}

#acylistslisting .contentpane thead td{
	padding-top:20px;
}

#acylistslisting div.acymailing_list{
		border:none;
	border-bottom:1px solid #ccc;
		margin: 0px;
		padding-top: 10px;
}


#acyusersubscription th{
	color:#666;
	padding: 4px 5px;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%);
border:1px solid #ccc;}


#acyusersubscription tr{
	border-bottom:1px solid #ccc !important;}

#acyusersubscription .acystatus{
	padding-top:20px;
	padding-bottom: 25px;
}


#acymodifyform .adminform{
	color:#666;
	text-align:left;
	margin-bottom:20px;
}

#acymodifyform fieldset{
	padding:0px;
}


#acyuserinfo{
	background-color:#fff;
	border:1px solid #ccc;
}

#acyuserinfo tr, #acyuserinfo td{
	border:none;}

#acyuserinfo td{
	padding-bottom:4px !important;
	padding-top:4px !important;}


#acyuserinfo select{
	border:1px solid #dcc2b2;}

#acyuserinfo .key{
	color:#666;
	font-weight:bold;
	font-size:11px;
	padding-left:20px;
}

#acyusersubscription{
	background-color:#FFF;
	border:1px solid #ccc;
}

#acyusersubscription td{
	border:none;}

#acymodifyform legend{
	color:#000;
	font-size:16px;
	font-weight:bold;
	padding:0px;
	border-bottom:1px dotted #000;
	margin-bottom:20px;
	padding-bottom:4px;
}

#acyuserinfo input{
	margin:0 5px;
}

#acyusersubscription .list_name{
	border-bottom: 1px solid #dddddd;
		color: #666;
		font-size: 12px;
		font-weight: bold;
		margin: 0px;
		padding-top: 20px;
		text-align: left;
}

#acyusersubscription .list_description{
	text-align:left;
	font-size:12px;
	color:#333;
	padding:0px;
	padding-top:5px;
}

#acymodifyform .acymodifybutton{
	text-align:center;
}


#unsubpage{
padding: 20px 20px 40px;
font-size:11px;
border:1px solid #ccc;}

#unsubpage .unsubsurvey, #unsubpage .unsubintro{
	padding:0px;}

#unsubpage input{
	margin-right:5px;}

#unsubpage .unsubintro{
	font-weight:bold;
	color:#000;
	font-size:12px;
	padding:0px;
	border-bottom: 1px dotted #000;
	padding-bottom:4px;
	margin-bottom:10px;}

#unsubpage .unsuboptions{
	padding:0px;}



#unsubpage .unsubsurveytext{
		border-bottom: 1px dotted #000;
		color: #000;
		display: block;
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 10px;
		margin-top: 30px;
		padding-bottom: 4px;
}

#unsubpage .unsuboptions div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}

#unsubpage .unsubsurvey div{
	font-size: 11px;
		margin-top: 6px;
	font-weight:normal;
}


#unsubpage .unsubsurvey textarea{
	margin-top:15px;
	border:1px solid #ccc;
	width:100%;
	margin-bottom: 10px;
	background-color:#fff;
}

#unsubpage .unsubsurvey textarea:hover{
	border:1px solid #aaa;
	border-right:1px solid #999;
	border-bottom:1px solid #999;
}


#unsubpage .input{
	padding-right:10px;
}

#unsubbutton_div{
	text-align:center;
}

#acyarchiveview{
	border:1px solid #ccc;
	padding:10px;}

#acyarchiveview .contentheading{
	font-weight:bold;
	color:#000;
	font-size:16px;}


#acyuserinfo .invalid{
border:1px solid #999 !important;}


css/module_default_radial_black.css000060400000007760152455614210013522 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default.css");



.acymailing_module .inputbox{
	color:#666 !important;
	border:1px solid #ddd !important;
	border-radius:5px !important;
	-moz-border-radius:5px !important;
	margin-right: 10px!important;
		padding: 3px !important;
background-image: linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -o-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -moz-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -webkit-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
background-image: -ms-linear-gradient(bottom, rgb(235,235,235) 21%, rgb(255,255,255) 58%) !important;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 ) !important;  	background: radial-gradient(top, ellipse cover, #e7e7e7 0%,#666 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e7e7e7', endColorstr='#666',GradientType=1 ) !important; }

.acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
	color:#fff !important;
	border:1px solid #999999 !important;
	-moz-border-radius:5px !important;
	padding: 3px !important;
	text-shadow:1px 1px 1px #666 !important;
	margin-right:5px !important;
	background-color:#CCC !important;

background-image: radial-gradient(top, #f5f5f5  21%, #999999 58%) !important;
background-image: -o-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;
background-image: -moz-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;
background-image: -webkit-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;
background-image: -ms-radial-gradient(top, #f5f5f5 21%, #999999 58%) !important;

	background: -ms-radial-gradient(top, ellipse cover, #f5f5f5 0%,#999999 100%); 	background: radial-gradient(top, ellipse cover, #f5f5f5 0%,#999999 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#999999',GradientType=1 ) !important; }


.acymailing_module_form td{
	padding-bottom:0px;}


.acymailing_module .acyfield_html {
	display:inline-block;
	padding-right:10px !important;}



.acymailing_module .acymailing_mootoolsbutton p{
	text-align:left;}

.acymailing_module a.acymailing_togglemodule{
	display:inline;
		font-size: 13px;
		font-weight: bold;}


.acymailing_mootoolsbutton a:link, .acymailing_mootoolsbutton a:visited{
	text-decoration:none !important;
	display:inline-block !important;}

.acymailing_module table.acymailing_form {
	margin:0px;}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}


.acymailing_form {
	margin:0px;}

.acymailing_form label{
	margin-right:10px;
	}

.acymailing_module .acymailing_module_form td{
	padding-bottom:8px;}



.acymailing_module .acymailing_module_form .acymailing_lists a:link, .acymailing_module .acymailing_module_form .acymailing_lists a:visited{
	color:#000;
	text-decoration:none;}

.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#666!important;
	text-decoration:underline !important;
	background-color:transparent !important;}

.acymailing_module .acymailing_module_form .acymailing_lists .acymailing_checkbox{
	margin-right:10px;}


.acymailing_module_form .acymailing_form a:link{
	background-color:transparent;
	color:#000;
	text-decoration:none;}


.acymailing_module .acyfield_html input{
	margin-right:10px;
	margin-left:10px;
	border:none !important;
	background:none !important;
	filter:none !important;}

.acymailing_form .checkbox{
	border: none !important;
	background:none !important;
	filter: none !important;}

.acymailing_module .invalid{
border:1px solid #999 !important;}


css/module_default.css000060400000004253152455614210011044 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

.acymailing_form .grecaptcha-badge{
	display: none;
}

div.acymailing_module, .acymailing_module div{
	padding: 0 !important;
	margin: 0 !important;
	border-style:none !important;
}

table.acymailing_form{
	margin:auto;
	border:0px !important;
}

a.acymailing_togglemodule{
	display : block;
	font-size:16px;
}

.acymailing_mootoolsbutton p{
	text-align:center;
}

.acysubbuttons{
	text-align:center;
}

img.captchaimagemodule{
	border:1px solid #dddddd;
	float: left;
}

.captchakeymodule .captchafield{
	margin-top:3px;
	margin-left:2px;
}

.acymailing_fulldiv tr, .acymailing_fulldiv td{
	border:0px;
}

.acymailing_module_form select {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.acymailing_module_form td {
	padding-bottom: 5px;
	vertical-align:top;
}

div.acymailing_module_error {
	color: #400;
	background-color: #fdd;
	padding: 1em !important;
	margin-bottom:10px;
}

div.acymailing_module_success {
	color: #130;
	background-color: #dfc;
	padding: 1em !important;
	z-index: 10;
	margin-bottom:10px;
}

.acymailing_module_form .acymailing_introtext{
	 padding-bottom:10px;
	 display:block;
}

.refreshCaptchaModule{
	background-image:url(../images/refresh.png);
	width:16px;
	height:16px;
	display:block;
	float:left;
	cursor:pointer;
}

.acymailing_module fieldset{
	border: solid 1px #ccc;
	padding: 5px;
}
.category_warning{
	color: red;
}

.hide {
	display: none;
}

.slide_open{
	animation: deployslide 0.5s forwards;
	overflow: hidden;
}

@keyframes deployslide{
	from{
		max-height: 0px;
	}
	to{
		max-height: 800px;
	}
}

@keyframes retractslide{
	from{
		max-height: 800px;
	}
	to{
		max-height: 0px;
		display: none;
	}
}

.slide_close{
	animation: retractslide 0.5s forwards;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0px 1px 5px #eee;
	padding: 5px;
	margin-bottom: 20px;
}

.slide_open{
	animation: deployslide 0.5s forwards;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0px 1px 5px #eee;
	padding: 5px;
	margin-bottom: 20px;
}
css/component_default_square_raspberry.css000060400000002600152455614210015224 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("component_default_square_black.css");




#acyarchivelisting .button:hover, #acymodifyform .button:hover, #unsubbutton_div .button:hover {
    color:#B90041 !important;
}

	

#acyarchivelisting .contentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}


#acyarchivelisting .contentpane .contentdescription{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry1 a:hover{
	color:#b90041;
}

#acyarchivelisting .contentpane tbody .sectiontableentry2 a:hover{
	color:#b90041;
}

#acyarchivelisting .sectiontableheader a:hover{
	color:#59001F;}


#acyarchiveview .contentheading{
	color:#b90041;}



#acylistslisting .componentheading{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acylistslisting .list_name a{
    color:#B90041;
}

#acylistslisting .list_name a:hover, #acylistslisting .list_name a:focus {
	color:#b90041;
}



#acymodifyform legend{
	color:#59001F;
	border-bottom:1px solid #59001F;
}

#acyusersubscription .list_name{
    color: #B90041;
}
	

#unsubpage .unsubintro{
	color:#b90041;
	border-bottom: 1px solid #b90041;
}

#unsubpage .unsubsurveytext{
    border-bottom: 1px solid #b90041;
    color: #b90041;
}



css/module_default_picture_blue.css000060400000006023152455614210013603 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */


.acymailing_module_form .inputbox{
	padding-right:35px;
	color:#666;
	height:21px;
	border:none;
	background-color:transparent;
	padding-left:15px;
	background: url(../images/blue/more.png) no-repeat right top;
	margin-bottom:5px;
	}
	
.acymailing_module_form .inputbox:hover{
	background: url(../images/blue/more.png) no-repeat right bottom;
	}
	
.acymailing_module_form .inputbox:focus{
	border:none;
	}

.acymailing_module_form .acyfield_email .inputbox{
	background: url(../images/blue/mail.png) no-repeat right top;
	}
	
.acymailing_module_form .acyfield_email .inputbox:hover{
	background: url(../images/blue/mail.png) no-repeat right bottom;
	}

.acymailing_module_form .acyfield_name .inputbox{
	background: url(../images/blue/name.png) no-repeat right top;
	}

.acymailing_module_form .acyfield_name .inputbox:hover{
	background: url(../images/blue/name.png) no-repeat right bottom;
	}
	


.acysubbuttons input.subbutton{
	background: url(../images/blue/subscription.png) no-repeat right top;
	margin-bottom:5px;
	margin-top:5px
	}
	
.acysubbuttons input.subbutton:hover{
	background: url(../images/blue/subscription.png) no-repeat right bottom;
	margin-bottom:5px;
	margin-top:5px
	}

.acysubbuttons input.unsubbutton{
	background: url(../images/blue/unsubscription.png) no-repeat right top;
	margin-bottom:5px;
	margin-top:5px
	}
	
.acysubbuttons input.unsubbutton:hover{
	background: url(../images/blue/unsubscription.png) no-repeat right bottom;
	margin-bottom:5px;
	margin-top:5px
	}
	
.acysubbuttons input.button{
	border:none;
	color:#666;
	padding-right:60px;
	padding-left:15px;
	height:21px;
	cursor:pointer;
}

.acysubbuttons input.button:hover{
	color:#0099CC;}
	
	
div.acymailing_module, .acymailing_module div{
	padding: 0 !important;
	margin: 0 !important;
}


a.acymailing_togglemodule{
	display : block;
	font-size:16px;
}

.acymailing_mootoolsbutton p{
	text-align:center;
}

img.captchaimagemodule{
	border:1px solid #dddddd;
	float: left;
}

.captchakeymodule .captchafield{
	margin-top:3px;
	margin-left:2px;
}

.acymailing_fulldiv tr, .acymailing_fulldiv td{
	border:0px;
}



.acymailing_module_form td {
	padding:3px;
	}

.acymailing_module_form a:link, .acymailing_module_form a:visited{
	color:#666;
	background-color:transparent;}

.acymailing_module_form a:hover, .acymailing_module_form a:active{
	background-color:transparent !important;
	color:#0099CC !important;
	text-decoration:underline !important;}

.acymailing_form p{
	margin: 0px;
	padding: 2px;
	}

.acyfield_html label{
	padding-left:5px;
	padding-right:5px;
	}

.acymailing_mootoolsbutton a.acymailing_togglemodule{
	color:#09C;
	text-decoration: none;
	background: url(../images/blue/arrow.png) no-repeat left;
	height:25px;
	border-bottom:1px solid #09C;
	}

.acymailing_mootoolsbutton a.acyactive{
	background: url(../images/blue/arrow2.png) no-repeat left;
	}

css/wponlyplugin.css000060400000001056152455614210010620 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

#adminmenumain, #wpadminbar, #wpfooter{
    display: none;
}

#wpcontent{
    margin-left: 0px;
}

#wpbody {
    position: absolute !important;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

html.wp-toolbar{
    padding-top: 0px !important;
}

#wpbody {
    padding-top: 0px;
}

#wpbody-content {
    padding-bottom: 0px;
}
css/module_default_square_blue.css000060400000001150152455614210013424 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

@import url("module_default_square_black.css");




.acysubbuttons input.button:hover, .acysubbuttons .button:hover, .acysubbuttons button.validate:hover, .acymailing_mootoolsbutton a:hover, .acymailing_mootoolsbutton a:active {
    color:#5a99af !important;
}



.acymailing_module form a:hover, .acymailing_module form a:active, .acymailing_module form a:focus{
	color:#5a99af!important;
}
import/index.html000060400000000054152455614210010053 0ustar00<html><body bgcolor="#FFFFFF"></body></html>import/error_import_566be18fb6c77.csv000060400000000112152455614210013310 0ustar00email;name;confirmed;enabled
alda@kunstenopstraat;Overijssel op Straat;1;1import/.htaccess000060400000000036152455614210007654 0ustar00Order deny,allow
Deny from alljs/acymailing_module.js000060400000034110152455614210011200 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

var task, formName;

function submitacymailingform(newtask, newformName) {
	task = newtask;
	formName = newformName;

	var recaptchaid = 'acymailing-captcha';
	if(newformName) recaptchaid = newformName+'-captcha';

	var invisibleRecaptcha = document.querySelector('#'+recaptchaid+'[class="g-recaptcha"]');
	if(invisibleRecaptcha && typeof grecaptcha == "object"){

		var grcID = invisibleRecaptcha.getAttribute('grcID');

		if(!grcID) {
			grcID = grecaptcha.render(recaptchaid, {
				'sitekey': invisibleRecaptcha.getAttribute("data-sitekey"),
				'callback': 'acySubmitSubForm',
				'size': 'invisible',
				'expired-callback': 'resetRecaptcha'
			});

			invisibleRecaptcha.setAttribute('grcID', grcID);
		}

		var response = grecaptcha.getResponse(grcID);
		if(response){
			return acySubmitSubForm();
		}else{
			grecaptcha.execute(grcID);
			return false;
		}
	}else{
		return acySubmitSubForm();
	}
}

function resetRecaptcha(){
	var recaptchaid = 'acymailing-captcha';
	if(formName) recaptchaid = formName+'-captcha';

	var invisibleRecaptcha = document.querySelector('#'+recaptchaid+'[class="g-recaptcha"]');
	if(!invisibleRecaptcha) return;

	var grcID = invisibleRecaptcha.getAttribute('grcID');
	grecaptcha.reset(grcID);
}

function acySubmitSubForm(){
	var varform = document[formName];
	if(typeof acymailingModule != 'undefined') {
		var filterEmail = acymailingModule['emailRegex'];
	}else{
		var filterEmail = /\@/i;
	}

	if(!varform.elements){
		if(varform[0].elements['user[email]'] && varform[0].elements['user[email]'].value && filterEmail.test(varform[0].elements['user[email]'].value)){
			varform = varform[0];
		}else{
			varform = varform[varform.length - 1];
		}
	}

	if(task != 'optout'){
		nameField = varform.elements['user[name]'];
		if(nameField && typeof acymailingModule != 'undefined' && (((typeof acymailingModule['level'] == 'undefined' || acymailingModule['level'] != 'enterprise') && ((nameField.value == acymailingModule['NAMECAPTION'] || (typeof acymailingModule['excludeValues' + formName] != 'undefined' && typeof acymailingModule['excludeValues' + formName]['name'] != 'undefined' && nameField.value == acymailingModule['excludeValues' + formName]['name'])) || nameField.value.replace(/ /g, "").length < 2)) || (typeof acymailingModule['level'] != 'undefined' && acymailingModule['level'] == 'enterprise' && typeof acymailingModule['reqFields' + formName] != 'undefined' && acymailingModule['reqFields' + formName].indexOf('name') >= 0 && ((nameField.value == acymailingModule['NAMECAPTION'] || (typeof acymailingModule['excludeValues' + formName] != 'undefined' && typeof acymailingModule['excludeValues' + formName]['name'] != 'undefined' && nameField.value == acymailingModule['excludeValues' + formName]['name'])) || nameField.value.replace(/ /g, "").length < 2)))){
			alert(acymailingModule['NAME_MISSING']);
			nameField.className = nameField.className + ' invalid';
			return false;
		}
	}

	var emailField = varform.elements['user[email]'];
	if(emailField){
		if(typeof acymailingModule == 'undefined' || emailField.value != acymailingModule['EMAILCAPTION']) emailField.value = emailField.value.replace(/ /g, "");
		if(!emailField || (typeof acymailingModule != 'undefined' && (emailField.value == acymailingModule['EMAILCAPTION'] || (typeof acymailingModule['excludeValues' + formName] != 'undefined' && typeof acymailingModule['excludeValues' + formName]['email'] != 'undefined' && emailField.value == acymailingModule['excludeValues' + formName]['email']))) || !filterEmail.test(emailField.value)){
			if(typeof acymailingModule != 'undefined'){
				alert(acymailingModule['VALID_EMAIL']);
			}
			emailField.className = emailField.className + ' invalid';
			return false;
		}
	}

	if(varform.elements['hiddenlists'].value.length < 1){
		var listschecked = false;
		var alllists = varform.elements['subscription[]'];
		if(alllists && (typeof alllists.value == 'undefined' || alllists.value.length == 0)){
			for(b = 0; b < alllists.length; b++){
				if(alllists[b].checked) listschecked = true;
			}
			if(!listschecked){
				alert(acymailingModule['NO_LIST_SELECTED']);
				return false;
			}
		}
	}

	if(task != 'optout' && typeof acymailingModule != 'undefined'){
		if(typeof acymailingModule['reqFields' + formName] != 'undefined' && acymailingModule['reqFields' + formName].length > 0){

			for(var i = 0; i < acymailingModule['reqFields' + formName].length; i++){
				elementName = 'user[' + acymailingModule['reqFields' + formName][i] + ']';
				elementToCheck = varform.elements[elementName];
				if(elementToCheck){
					var isValid = false;
					if(typeof elementToCheck.value != 'undefined'){
						if(elementToCheck.value == ' ' && typeof varform[elementName + '[]'] != 'undefined'){
							if(varform[elementName + '[]'].checked){
								isValid = true;
							}else{
								for(var a = 0; a < varform[elementName + '[]'].length; a++){
									if((varform[elementName + '[]'][a].checked || varform[elementName + '[]'][a].selected) && varform[elementName + '[]'][a].value.length > 0) isValid = true;
								}
							}
						}else{
							if(elementToCheck.value.replace(/ /g, "").length > 0){
								if(typeof acymailingModule['excludeValues' + formName] == 'undefined' || typeof acymailingModule['excludeValues' + formName][acymailingModule['reqFields' + formName][i]] == 'undefined' || acymailingModule['excludeValues' + formName][acymailingModule['reqFields' + formName][i]] != elementToCheck.value) isValid = true;
							}
						}
					}else{
						for(var a = 0; a < elementToCheck.length; a++){
							if(elementToCheck[a].checked && elementToCheck[a].value.length > 0) isValid = true;
						}
					}
					if((elementToCheck.length >= 1 && (elementToCheck[0].parentElement.parentElement.style.display == 'none' || elementToCheck[0].parentElement.parentElement.parentElement.style.display == 'none')) || (typeof elementToCheck.length == 'undefined' && (elementToCheck.parentElement.parentElement.style.display == 'none' || elementToCheck.parentElement.parentElement.parentElement.style.display == 'none'))){
						isValid = true;
					}
					if(!isValid){
						elementToCheck.className = elementToCheck.className + ' invalid';
						alert(acymailingModule['validFields' + formName][i]);
						return false;
					}
				}else{
					if((varform.elements[elementName + '[day]'] && varform.elements[elementName + '[day]'].value < 1) || (varform.elements[elementName + '[month]'] && varform.elements[elementName + '[month]'].value < 1) || (varform.elements[elementName + '[year]'] && varform.elements[elementName + '[year]'].value < 1902)){
						if(varform.elements[elementName + '[day]'] && varform.elements[elementName + '[day]'].value < 1) varform.elements[elementName + '[day]'].className = varform.elements[elementName + '[day]'].className + ' invalid';
						if(varform.elements[elementName + '[month]'] && varform.elements[elementName + '[month]'].value < 1) varform.elements[elementName + '[month]'].className = varform.elements[elementName + '[month]'].className + ' invalid';
						if(varform.elements[elementName + '[year]'] && varform.elements[elementName + '[year]'].value < 1902) varform.elements[elementName + '[year]'].className = varform.elements[elementName + '[year]'].className + ' invalid';
						alert(acymailingModule['validFields' + formName][i]);
						return false;
					}

					if((varform.elements[elementName + '[country]'] && varform.elements[elementName + '[country]'].value < 1) || (varform.elements[elementName + '[num]'] && (varform.elements[elementName + '[num]'].value < 3 || (typeof acymailingModule['excludeValues' + formName] != 'undefined' && typeof acymailingModule['excludeValues' + formName][acymailingModule['reqFields' + formName][i]] != 'undefined' && acymailingModule['excludeValues' + formName][acymailingModule['reqFields' + formName][i]] == varform.elements[elementName + '[num]'].value)))){
						if((varform.elements[elementName + '[country]'] && varform.elements[elementName + '[country]'].parentElement.parentElement.style.display != 'none') || (varform.elements[elementName + '[num]'] && varform.elements[elementName + '[num]'].parentElement.parentElement.style.display != 'none')){
							if(varform.elements[elementName + '[country]'] && varform.elements[elementName + '[country]'].value < 1) varform.elements[elementName + '[country]'].className = varform.elements[elementName + '[country]'].className + ' invalid';
							if(varform.elements[elementName + '[num]'] && (varform.elements[elementName + '[num]'].value < 3 || (typeof acymailingModule['excludeValues' + formName] != 'undefined' && typeof acymailingModule['excludeValues' + formName][acymailingModule['reqFields' + formName][i]] != 'undefined' && acymailingModule['excludeValues' + formName][acymailingModule['reqFields' + formName][i]] == varform.elements[elementName + '[num]'].value))) varform.elements[elementName + '[num]'].className = varform.elements[elementName + '[num]'].className + ' invalid';
							alert(acymailingModule['validFields' + formName][i]);
							return false;
						}
					}
				}
			}
		}

		if(typeof acymailingModule != 'undefined' && typeof acymailingModule['checkFields' + formName] != 'undefined' && acymailingModule['checkFields' + formName].length > 0){
			for(var i = 0; i < acymailingModule['checkFields' + formName].length; i++){
				elementName = 'user[' + acymailingModule['checkFields' + formName][i] + ']';
				elementtypeToCheck = acymailingModule['checkFieldsType' + formName][i];
				elementToCheck = varform.elements[elementName].value;
				if(typeof acymailingModule['excludeValues' + formName] != 'undefined'){
					var excludedValues = acymailingModule['excludeValues' + formName][acymailingModule['checkFields' + formName][i]];
					if(typeof excludedValues != 'undefined' && elementToCheck == excludedValues){
						continue;
					}
				}
				switch(elementtypeToCheck){
					case 'number':
						myregexp = new RegExp('^[0-9]*$');
						break;
					case 'letter':
						myregexp = new RegExp('^[A-Za-z\u00C0-\u017F ]*$');
						break;
					case 'letnum':
						myregexp = new RegExp('^[0-9a-zA-Z\u00C0-\u017F ]*$');
						break;
					case 'regexp':
						myregexp = new RegExp(acymailingModule['checkFieldsRegexp' + formName][i]);
						break;
				}
				if(!myregexp.test(elementToCheck)){
					alert(acymailingModule['validCheckFields' + formName][i]);
					return false;
				}
			}
		}
	}

	var captchaField = varform.elements['acycaptcha'];
	if(captchaField){
		if(captchaField.value.length < 1){
			if(typeof acymailingModule != 'undefined'){
				alert(acymailingModule['CAPTCHA_MISSING']);
			}
			captchaField.className = captchaField.className + ' invalid';
			return false;
		}
	}

	if(task != 'optout'){
		var termsandconditions = varform.terms;
		if(termsandconditions && !termsandconditions.checked){
			if(typeof acymailingModule != 'undefined'){
				alert(acymailingModule['ACCEPT_TERMS']);
			}
			termsandconditions.className = termsandconditions.className + ' invalid';
			return false;
		}

		if(typeof acymailingModule != 'undefined' && typeof acymailingModule['excludeValues' + formName] != 'undefined'){
			for(var fieldName in acymailingModule['excludeValues' + formName]){
				if(!acymailingModule['excludeValues' + formName].hasOwnProperty(fieldName)) continue;
				if(!varform.elements['user[' + fieldName + ']'] || varform.elements['user[' + fieldName + ']'].value != acymailingModule['excludeValues' + formName][fieldName]) continue;

				varform.elements['user[' + fieldName + ']'].value = '';
			}
		}
	}

	if(typeof ga != 'undefined' && task != 'optout'){
		ga('send', 'pageview', 'subscribe');
	}else if(typeof ga != 'undefined'){
		ga('send', 'pageview', 'unsubscribe');
	}

	taskField = varform.task;
	taskField.value = task;

	if(!varform.elements['ajax'] || !varform.elements['ajax'].value || varform.elements['ajax'].value == '0'){
		varform.submit();
		return false;
	}

	var form = document.getElementById(formName);

	var formData = new FormData(form);
	form.className += ' acymailing_module_loading';
	form.style.filter = "alpha(opacity=50)";
	form.style.opacity = "0.5";

	var xhr = new XMLHttpRequest();
	xhr.open('POST', form.action);
	xhr.onload = function(){
		var message = 'Ajax Request Failure';
		var type = 'error';

		if (xhr.status === 200){
			var response = JSON.parse(xhr.responseText);
			message = response.message;
			type = response.type;
		}
		acymailingDisplayAjaxResponse(decodeURIComponent(message), type, formName);
	};
	xhr.send(formData);

	return false;
}

function acymailingDisplayAjaxResponse(message, type, formName){
	var toggleButton = document.getElementById('acymailing_togglemodule_' + formName);

	if(toggleButton && toggleButton.className.indexOf('acyactive') > -1){
		var wrapper = toggleButton.parentElement.parentElement.childNodes[1];
		wrapper.style.height = '';
	}

	var responseContainer = document.querySelectorAll('#acymailing_fulldiv_' + formName + ' .responseContainer')[0];

	if(typeof responseContainer == 'undefined'){
		responseContainer = document.createElement('div');
		var fulldiv = document.getElementById('acymailing_fulldiv_' + formName);

		if(fulldiv.firstChild){
			fulldiv.insertBefore(responseContainer, fulldiv.firstChild);
		}else{
			fulldiv.appendChild(responseContainer);
		}
		
		oldContainerHeight = '0px';
	}else{
		oldContainerHeight = responseContainer.style.height;
	}

	responseContainer.className = 'responseContainer';

	var form = document.getElementById(formName);

	var elclass = form.className;
	var rmclass = 'acymailing_module_loading';
	var res = elclass.replace(' '+rmclass, '', elclass);
	if(res == elclass) res = elclass.replace(rmclass+' ', '', elclass);
	if(res == elclass) res = elclass.replace(rmclass, '', elclass);
	form.className = res;

	responseContainer.innerHTML = message;

	if(type == 'success'){
		responseContainer.className += ' acymailing_module_success';
	}else{
		responseContainer.className += ' acymailing_module_error';
		form.style.opacity = "1";
	}

	newContainerHeight = responseContainer.style.height;

	form.style.display = 'none';
	responseContainer.className += ' slide_open';
}


js/acymailing.js000060400000047644152455614210007653 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

function checkChangeForm(){
	var varform = document['adminForm'];
	nameField = varform.elements['data[subscriber][name]'];
	if(nameField && typeof acymailingModule != 'undefined' && (((typeof acymailingModule['level'] == 'undefined' || acymailingModule['level'] != 'enterprise') && (nameField.value == acymailingModule['NAMECAPTION'] || nameField.value.replace(/ /g, "").length < 2)) || (typeof acymailingModule['level'] != 'undefined' && acymailingModule['level'] == 'enterprise' && typeof acymailingModule['reqFieldsComp'] != 'undefined' && acymailingModule['reqFieldsComp'].indexOf('name') >= 0 && (nameField.value == acymailingModule['NAMECAPTION'] || nameField.value.replace(/ /g, "").length < 2)))){
		alert(acymailingModule['NAME_MISSING']);
		nameField.className = nameField.className + ' invalid';
		return false;
	}

	var emailField = varform.elements['data[subscriber][email]'];
	if(emailField){
		if(typeof acymailingModule == 'undefined' || emailField.value != acymailingModule['EMAILCAPTION']) emailField.value = emailField.value.replace(/ /g, "");
		if(typeof acymailingModule != 'undefined') {
			var filter = acymailingModule['emailRegex'];
		}else{
			var filter = /\@/i;
		}
		if(!emailField || (typeof acymailingModule != 'undefined' && emailField.value == acymailingModule['EMAILCAPTION']) || !filter.test(emailField.value)){
			if(typeof acymailingModule != 'undefined'){
				alert(acymailingModule['VALID_EMAIL']);
			}
			emailField.className = emailField.className + ' invalid';
			return false;
		}
	}

	if(typeof acymailingModule != 'undefined' && typeof acymailingModule['reqFieldsComp'] != 'undefined' && acymailingModule['reqFieldsComp'].length > 0){
		for(var i = 0; i < acymailingModule['reqFieldsComp'].length; i++){
			elementName = 'data[subscriber][' + acymailingModule['reqFieldsComp'][i] + ']';
			elementToCheck = varform.elements[elementName];
			if(elementToCheck){
				var isValid = false;
				if(typeof elementToCheck.value != 'undefined'){
					if(elementToCheck.value == ' ' && typeof varform[elementName + '[]'] != 'undefined'){
						if(varform[elementName + '[]'].checked){
							isValid = true;
						}else{
							for(var a = 0; a < varform[elementName + '[]'].length; a++){
								if((varform[elementName + '[]'][a].checked || varform[elementName + '[]'][a].selected) && varform[elementName + '[]'][a].value.length > 0) isValid = true;
							}
						}
					}else{
						if(elementToCheck.value.replace(/ /g, "").length > 0) isValid = true;
					}
				}else{
					for(var a = 0; a < elementToCheck.length; a++){
						if(elementToCheck[a].checked && elementToCheck[a].value.length > 0) isValid = true;
					}
				}
				if((elementToCheck.length >= 1 && (elementToCheck[0].parentElement.parentElement.style.display == 'none' || elementToCheck[0].parentElement.parentElement.parentElement.style.display == 'none')) || (typeof elementToCheck.length == 'undefined' && (elementToCheck.parentElement.parentElement.style.display == 'none' || elementToCheck.parentElement.parentElement.parentElement.style.display == 'none'))){
					isValid = true;
				}
				if(!isValid){
					elementToCheck.className = elementToCheck.className + ' invalid';
					alert(acymailingModule['validFieldsComp'][i]);
					return false;
				}
			}else{
				if((varform.elements[elementName + '[day]'] && varform.elements[elementName + '[day]'].value < 1) || (varform.elements[elementName + '[month]'] && varform.elements[elementName + '[month]'].value < 1) || (varform.elements[elementName + '[year]'] && varform.elements[elementName + '[year]'].value < 1902)){
					if(varform.elements[elementName + '[day]'] && varform.elements[elementName + '[day]'].value < 1) varform.elements[elementName + '[day]'].className = varform.elements[elementName + '[day]'].className + ' invalid';
					if(varform.elements[elementName + '[month]'] && varform.elements[elementName + '[month]'].value < 1) varform.elements[elementName + '[month]'].className = varform.elements[elementName + '[month]'].className + ' invalid';
					if(varform.elements[elementName + '[year]'] && varform.elements[elementName + '[year]'].value < 1902) varform.elements[elementName + '[year]'].className = varform.elements[elementName + '[year]'].className + ' invalid';
					alert(acymailingModule['validFieldsComp'][i]);
					return false;
				}

				if((varform.elements[elementName + '[country]'] && varform.elements[elementName + '[country]'].value < 1) || (varform.elements[elementName + '[num]'] && varform.elements[elementName + '[num]'].value < 3)){
					if((varform.elements[elementName + '[country]'] && varform.elements[elementName + '[country]'].parentElement.parentElement.style.display != 'none') || (varform.elements[elementName + '[num]'] && varform.elements[elementName + '[num]'].parentElement.parentElement.style.display != 'none')){
						if(varform.elements[elementName + '[country]'] && varform.elements[elementName + '[country]'].value < 1) varform.elements[elementName + '[country]'].className = varform.elements[elementName + '[country]'].className + ' invalid';
						if(varform.elements[elementName + '[num]'] && varform.elements[elementName + '[num]'].value < 3) varform.elements[elementName + '[num]'].className = varform.elements[elementName + '[num]'].className + ' invalid';
						alert(acymailingModule['validFieldsComp'][i]);
						return false;
					}
				}
			}
		}
	}

	if(typeof acymailingModule != 'undefined' && typeof acymailingModule['checkFields'] != 'undefined' && acymailingModule['checkFields'].length > 0){
		for(var i = 0; i < acymailingModule['checkFields'].length; i++){
			elementName = 'data[subscriber][' + acymailingModule['checkFields'][i] + ']';
			elementtypeToCheck = acymailingModule['checkFieldsType'][i];
			elementToCheck = varform.elements[elementName].value;
			switch(elementtypeToCheck){
				case 'number':
					myregexp = new RegExp('^[0-9]*$');
					break;
				case 'letter':
					myregexp = new RegExp('^[A-Za-z\u00C0-\u017F ]*$');
					break;
				case 'letnum':
					myregexp = new RegExp('^[0-9a-zA-Z\u00C0-\u017F ]*$');
					break;
				case 'regexp':
					myregexp = new RegExp(acymailingModule['checkFieldsRegexp'][i]);
					break;
			}
			if(!myregexp.test(elementToCheck)){
				alert(acymailingModule['validCheckFields'][i]);
				return false;
			}
		}
	}

	var captchaField = varform.elements['acycaptcha'];
	if(captchaField){
		if(captchaField.value.length < 1){
			if(typeof acymailingModule != 'undefined'){
				alert(acymailingModule['CAPTCHA_MISSING']);
			}
			captchaField.className = captchaField.className + ' invalid';
			return false;
		}
	}
	return true;
}

(function(){
	function preventDefault(){
		this.returnValue = false;
	}

	function stopPropagation(){
		this.cancelBubble = true;
	}

	var Oby = {
		version: 20120930, ajaxEvents: {},

		hasClass: function(o, n){
			if(o.className == '') return false;
			var reg = new RegExp("(^|\\s+)" + n + "(\\s+|$)");
			return reg.test(o.className);
		}, addClass: function(o, n){
			if(!this.hasClass(o, n)){
				if(o.className == ''){
					o.className = n;
				}else{
					o.className += ' ' + n;
				}
			}
		}, trim: function(s){
			return (s ? '' + s : '').replace(/^\s*|\s*$/g, '');
		}, removeClass: function(e, c){
			var t = this;
			if(t.hasClass(e, c)){
				var cn = ' ' + e.className + ' ';
				e.className = t.trim(cn.replace(' ' + c + ' ', ''));
			}
		}, addEvent: function(d, e, f){
			if(d.attachEvent){
				d.attachEvent('on' + e, f);
			}else if(d.addEventListener){
				d.addEventListener(e, f, false);
			}else{
				d['on' + e] = f;
			}
			return f;
		}, removeEvent: function(d, e, f){
			try{
				if(d.detachEvent){
					d.detachEvent('on' + e, f);
				}else if(d.removeEventListener){
					d.removeEventListener(e, f, false);
				}else{
					d['on' + e] = null;
				}
			}catch(e){
			}
		}, cancelEvent: function(e){
			if(!e){
				e = window.event;
				if(!e){
					return false;
				}
			}
			if(e.stopPropagation){
				e.stopPropagation();
			}else{
				e.cancelBubble = true;
			}
			if(e.preventDefault){
				e.preventDefault();
			}else{
				e.returnValue = false;
			}
			return false;
		}, evalJSON: function(text, secure){
			if(typeof(text) != "string" || !text.length) return null;
			if(secure && !(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(text.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, ''))) return null;
			return eval('(' + text + ')');
		}, getXHR: function(){
			var xhr = null, w = window;
			if(w.XMLHttpRequest || w.ActiveXObject){
				if(w.ActiveXObject){
					try{
						xhr = new ActiveXObject("Microsoft.XMLHTTP");
					}catch(e){
					}
				}else{
					xhr = new w.XMLHttpRequest();
				}
			}
			return xhr;
		}, xRequest: function(url, options, cb, cbError){
			var t = this, xhr = t.getXHR();
			if(!options) options = {};
			if(!cb){
				cb = function(){
				};
			}
			options.mode = options.mode || 'GET';
			options.update = options.update || false;
			xhr.onreadystatechange = function(){
				if(xhr.readyState == 4){
					if(xhr.status == 200 || (xhr.status == 0 && xhr.responseText > 0) || !cbError){
						if(cb){
							cb(xhr, options.params);
						}
						if(options.update){
							t.updateElem(options.update, xhr.responseText);
						}
					}else{
						cbError(xhr, options.params);
					}
				}
			};
			xhr.open(options.mode, url, true);
			if(options.mode.toUpperCase() == 'POST'){
				xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			}
			xhr.send(options.data);
		}, getFormData: function(target){
			var d = document, ret = '';
			if(typeof(target) == 'string'){
				target = d.getElementById(target);
			}
			if(target === undefined){
				target = d;
			}
			var typelist = ['input', 'select', 'textarea'];
			for(var t in typelist){
				t = typelist[t];
				var inputs = target.getElementsByTagName(t);
				for(var i = inputs.length - 1; i >= 0; i--){
					if(inputs[i].name && !inputs[i].disabled){
						var evalue = inputs[i].value, etype = '';
						if(t == 'input'){
							etype = inputs[i].type.toLowerCase();
						}
						if(etype == 'radio' && !inputs[i].checked){
							evalue = null;
						}
						if((etype != 'file' && etype != 'submit') && evalue != null){
							if(ret != '') ret += '&';
							ret += encodeURI(inputs[i].name) + '=' + encodeURIComponent(evalue);
						}
					}
				}
			}
			return ret;
		}, updateElem: function(elem, data){
			var d = document, scripts = '';
			if(typeof(elem) == 'string'){
				elem = d.getElementById(elem);
			}
			var text = data.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi, function(all, code){
				scripts += code + '\n';
				return '';
			});
			elem.innerHTML = text;
			if(scripts != ''){
				var script = d.createElement('script');
				script.setAttribute('type', 'text/javascript');
				script.text = scripts;
				d.head.appendChild(script);
				d.head.removeChild(script);
			}
		}
	};

	var acymailing = {
		submitFct: null,
		submitBox: function(data){
			var t = this, d = document, w = window;
			if(t.submitFct){
				try{
					t.submitFct(data);
				}catch(err){
				}
			}
			t.closeBox();
		}, deleteId: function(id){
			var t = this, d = document, el = id;
			if(typeof(id) == "string"){
				el = d.getElementById(id);
			}
			if(!el){
				return;
			}
			el.parentNode.removeChild(el);
		}, dup: function(tplName, htmlblocks, id, extraData, appendTo){
			var d = document, tplElem = d.getElementById(tplName), container = tplElem.parentNode;
			if(!tplElem) return;
			elem = tplElem.cloneNode(true);
			if(!appendTo){
				container.insertBefore(elem, tplElem);
			}else{
				if(typeof(appendTo) == "string"){
					appendTo = d.getElementById(appendTo);
				}
				appendTo.appendChild(elem);
			}
			elem.style.display = "";
			elem.id = '';
			if(id){
				elem.id = id;
			}
			for(var k in htmlblocks){
				elem.innerHTML = elem.innerHTML.replace(new RegExp("{" + k + "}", "g"), htmlblocks[k]);
				elem.innerHTML = elem.innerHTML.replace(new RegExp("%7B" + k + "%7D", "g"), htmlblocks[k]);
			}
			if(extraData){
				for(var k in extraData){
					elem.innerHTML = elem.innerHTML.replace(new RegExp('{' + k + '}', 'g'), extraData[k]);
					elem.innerHTML = elem.innerHTML.replace(new RegExp('%7B' + k + '%7D', 'g'), extraData[k]);
				}
			}
		}, deleteRow: function(id){
			var t = this, d = document, el = id;
			if(typeof(id) == "string"){
				el = d.getElementById(id);
			}else{
				while(el != null && el.tagName.toLowerCase() != 'tr'){
					el = el.parentNode;
				}
			}
			if(!el){
				return;
			}
			var table = el.parentNode;
			table.removeChild(el);
			if(table.tagName.toLowerCase() == 'tbody'){
				table = table.parentNode;
			}
			t.cleanTableRows(table);
			return;
		}, dupRow: function(tplName, htmlblocks, id, extraData){
			var d = document, tplLine = d.getElementById(tplName), tableUser = tplLine.parentNode;
			if(!tplLine) return;
			trLine = tplLine.cloneNode(true);
			tableUser.appendChild(trLine);
			trLine.style.display = "";
			trLine.id = "";
			if(id){
				trLine.id = id;
			}
			for(var i = tplLine.cells.length - 1; i >= 0; i--){
				if(trLine.cells[i]){
					for(var k in htmlblocks){
						trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp("{" + k + "}", "g"), htmlblocks[k]);
						trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp("%7B" + k + "%7D", "g"), htmlblocks[k]);
					}
					if(extraData){
						for(var k in extraData){
							trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp('{' + k + '}', 'g'), extraData[k]);
							trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp('%7B' + k + '%7D', 'g'), extraData[k]);
						}
					}
				}
			}
			if(tplLine.className == "row0") tplLine.className = "row1";else if(tplLine.className == "row1") tplLine.className = "row0";
		}, cleanTableRows: function(id){
			var d = document, el = id;
			if(typeof(id) == "string"){
				el = d.getElementById(id);
			}
			if(el == null || el.tagName.toLowerCase() != 'table'){
				return;
			}

			var k = 0, c = '', line = null, lines = el.getElementsByTagName('tr');
			for(var i = 0; i < lines.length; i++){
				line = lines[i];
				if(line.style.display != "none"){
					c = ' ' + line.className + ' ';
					if(c.indexOf(' row0 ') >= 0 || c.indexOf(' row1 ') >= 0){
						line.className = c.replace(' row' + (1 - k) + ' ', ' row' + k + ' ').replace(/^\s*|\s*$/g, '');
						k = 1 - k;
					}
				}
			}
		}, checkRow: function(id){
			var t = this, d = document, el = id;
			if(typeof(id) == "string"){
				el = d.getElementById(id);
			}
			if(el == null || el.tagName.toLowerCase() != 'input'){
				return;
			}
			if(this.clicked){
				this.clicked = null;
				t.isChecked(el);
				return;
			}
			el.checked = !el.checked;
			t.isChecked(el);
		}, isChecked: function(id, cancel){
			var d = document, el = id;
			if(typeof(id) == "string"){
				el = d.getElementById(id);
			}
			if(el == null || el.tagName.toLowerCase() != 'input'){
				return;
			}
			if(el.form.boxchecked){
				if(el.checked){
					el.form.boxchecked.value++;
				}else{
					el.form.boxchecked.value--;
				}
			}
		}, checkAll: function(checkbox, stub){
			stub = stub || 'cb';
			if(checkbox.form){
				var cb = checkbox.form, c = 0;
				for(var i = 0, n = cb.elements.length; i < n; i++){
					var e = cb.elements[i];
					if(e.type == checkbox.type){
						if((stub && e.id.indexOf(stub) == 0) || !stub){
							e.checked = checkbox.checked;
							c += (e.checked == true ? 1 : 0);
						}
					}
				}
				if(cb.boxchecked){
					cb.boxchecked.value = c;
				}
				return true;
			}
			return false;
		}, submitbutton: function(pressbutton) {
			acymailing.submitform(pressbutton);
		}, submitform: function(task, form, extra){
			var d = document;
			if(typeof form == 'string'){
				var f = d.getElementById(form);
				if(!f){
					f = d.getElementByName(form);
				}
				if(!f){
					return true;
				}
				form = f;
			}

			if (!form) {
				form = document.getElementById('adminForm');
			}

			if(task){
				form.task.value = task;
			}
			if(typeof form.onsubmit == 'function'){
				form.onsubmit();
			}
			form.submit();
			return false;
		}, get: function(elem, target){
			window.Oby.xRequest(elem.getAttribute('href'), {update: target});
			return false;
		}, form: function(elem, target){
			var data = window.Oby.getFormData(target);
			window.Oby.xRequest(elem.getAttribute('href'), {update: target, mode: 'POST', data: data});
			return false;
		}, tabSelect: function(m, c, id){
			var d = document, sub = null;
			if(typeof m == 'string'){
				m = d.getElementById(m);
			}
			if(typeof id == 'string'){
				id = d.getElementById(id);
			}
			sub = m.getElementsByTagName('div');
			for(var i = sub.length - 1; i >= 0; i--){
				if(sub[i].getAttribute('class') == c){
					sub[i].style.display = 'none';
				}
			}
			id.style.display = '';
		}, getOffset: function(el){
			var x = 0, y = 0;
			while(el && !isNaN(el.offsetLeft) && !isNaN(el.offsetTop)){
				x += el.offsetLeft - el.scrollLeft;
				y += el.offsetTop - el.scrollTop;
				el = el.offsetParent;
			}
			return {top: y, left: x};
		},
		openpopup: function(url, width, height){
			if(document.getElementById('acymailingpopupshadow') !== null) return;
			var shadow = document.createElement('div');
			shadow.id = 'acymailingpopupshadow';
			shadow.onclick = function(){ acymailing.closeBox(); };
			document.getElementsByTagName('body')[0].appendChild(shadow);

			var closecross = document.createElement('div');
			closecross.id = 'closepop';
			closecross.onclick = function(){ acymailing.closeBox(); };

			var iframe = document.createElement('iframe');
			iframe.src = url;

			var container = document.createElement('div');
			container.id = 'acymailingpopup';
			
			if(width == 0){
				container.style.width = '82%';
				container.style.height = '84%';
				container.style.left = (window.innerWidth*9/100)+'px';
				container.style.top = (window.innerHeight*2/25)+'px';
			}else {
				container.style.width = width + 'px';
				container.style.height = height + 'px';
				container.style.left = ((window.innerWidth - width) / 2)+'px';
				container.style.top = ((window.innerHeight - height) / 2)+'px';
			}

			document.getElementsByTagName('body')[0].appendChild(shadow);
			container.appendChild(closecross);
			container.appendChild(iframe);
			document.getElementsByTagName('body')[0].appendChild(container);
		},
		closeBox: function(parent) {
			var d = document;
			if(parent){
				d = window.parent.document;
			}
			try {
				var popup = d.getElementById('acymailingpopup');
				popup.parentNode.removeChild(popup);
				var shadow = d.getElementById('acymailingpopupshadow');
				shadow.parentNode.removeChild(shadow);
			} catch(err) {}
		},
		tableOrdering: function(order, dir, task){
			var form = document.adminForm;

			form.filter_order.value = order;
			form.filter_order_Dir.value = dir;
			acymailing.submitform(task, form);
		},
		setOnclickPopup: function(element, url, width, height){
			elem = document.getElementById(element);

			elem.removeAttribute("onclick");
			elem.onclick = function(){
				acymailing.openpopup(url, width, height); return false;
			};
		}
	};
	
	if((typeof(window.Oby) == 'undefined') || window.Oby.version < Oby.version){
		window.Oby = Oby;
		window.obscurelighty = Oby;
	}
	window.acymailing = acymailing;
})();

document.addEventListener('DOMContentLoaded', function(){
	var tooltips = document.querySelectorAll(".acymailingtooltip");
	for (var i = 0; i < tooltips.length; i++) {
		tooltips[i].addEventListener("mouseover", function (event) {
			var tooltiptext = this.getElementsByClassName("acymailingtooltiptext")[0];

			if(this.parentElement.className == 'overviewbubble') {
				tooltiptext.style.width = "140px";
				tooltiptext.style.top = "-50px";
				tooltiptext.style.left = "-65px";
			}else{
				var newTop = event.clientY - tooltiptext.clientHeight - 5;
				if(newTop < 0) newTop = 0;

				var newleft = event.clientX - tooltiptext.clientWidth/2;
				if(newleft < 0) newleft = 0;
				tooltiptext.style.top = newTop + "px";
				tooltiptext.style.left = newleft + "px";
			}
		});
	}
});
js/acytoolbar.js000060400000004714152455614210007664 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

(function(){
	var topMenu, leftMenu, initialTopMenuAcyaffix;
	var affixOption = function(){
		var element;
		var topValue = 0;
		var elementsFixed = [];
		var elementsToAffix = [];
		var scroll = window.scrollY || document.documentElement.scrollTop;

		elementsFixed = elementsFixed.concat(_convertToArray(document.getElementsByClassName('navbar-fixed-top')));
		elementsFixed = elementsFixed.concat(_convertToArray(document.getElementsByClassName('affix')));

		for(var i = 0; i < elementsFixed.length; i++){
			if(!hasClassName(elementsFixed[i].className, 'navbar-fixed-top') && !hasClassName(elementsFixed[i].className, 'affix')) continue;
			element = elementsFixed[i].getBoundingClientRect();
			topValue += element.bottom;
		}


		elementsToAffix = elementsToAffix.concat(_convertToArray(document.getElementsByClassName('acyaffix-top')));
		elementsToAffix = elementsToAffix.concat(_convertToArray(document.getElementsByClassName('acyaffix')));

		for(var i = 0; i < elementsToAffix.length; i++){
			element = elementsToAffix[i].getBoundingClientRect();
			if(element.top <= topValue && scroll != 0){
				element = elementsToAffix[i];
				element.className = element.className.replace('acyaffix-top', 'acyaffix');
				element.style.top = topValue + 'px';
			}
			if(scroll == 0 || scroll < initialTopMenuAcyaffix - topValue){
				element = elementsToAffix[i];
				if(element.className.indexOf('acyaffix-top') == -1){
					element.className = element.className.replace('acyaffix', 'acyaffix-top');
				}
				element.style.top = 0;
			}
		}
	};

	document.addEventListener("DOMContentLoaded", function(){
		topMenu = document.getElementById('acymenu_top');
		leftMenu = document.getElementById('acymenu_leftside');
		initialTopMenuAcyaffix = topMenu.getBoundingClientRect().top;

		var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;

		if(width > 900){
			affixOption();
			window.addEventListener("scroll", function(){ affixOption(); });
		}

	});

	function _convertToArray(collection){
		return [].slice.call(collection);
	}

	function hasClassName(classNames, className){
		var classes = classNames.split(' ');
		for(var i = 0; i < classes.length; i++){
			if(classes[i] == className) return true;
		}
		return false;
	}
})();
js/jquery/jquery-1.9.1.min.js000060400000265177152455614210011625 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

var oldjQuery = (window.jQuery) ? jQuery.noConflict() : null;

(function(e,t){var n,r,i=typeof t,o=e.document,a=e.location,s=e.jQuery,u=e.$,l={},c=[],p="1.9.1",f=c.concat,d=c.push,h=c.slice,g=c.indexOf,m=l.toString,y=l.hasOwnProperty,v=p.trim,b=function(e,t){return new b.fn.init(e,t,r)},x=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,w=/\S+/g,T=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,k=/^[\],:{}\s]*$/,E=/(?:^|:|,)(?:\s*\[)+/g,S=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,A=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,j=/^-ms-/,D=/-([\da-z])/gi,L=function(e,t){return t.toUpperCase()},H=function(e){(o.addEventListener||"load"===e.type||"complete"===o.readyState)&&(q(),b.ready())},q=function(){o.addEventListener?(o.removeEventListener("DOMContentLoaded",H,!1),e.removeEventListener("load",H,!1)):(o.detachEvent("onreadystatechange",H),e.detachEvent("onload",H))};b.fn=b.prototype={jquery:p,constructor:b,init:function(e,n,r){var i,a;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof b?n[0]:n,b.merge(this,b.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:o,!0)),C.test(i[1])&&b.isPlainObject(n))for(i in n)b.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(a=o.getElementById(i[2]),a&&a.parentNode){if(a.id!==i[2])return r.find(e);this.length=1,this[0]=a}return this.context=o,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):b.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),b.makeArray(e,this))},selector:"",length:0,size:function(){return this.length},toArray:function(){return h.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=b.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return b.each(this,e,t)},ready:function(e){return b.ready.promise().done(e),this},slice:function(){return this.pushStack(h.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(b.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:d,sort:[].sort,splice:[].splice},b.fn.init.prototype=b.fn,b.extend=b.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},u=1,l=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},u=2),"object"==typeof s||b.isFunction(s)||(s={}),l===u&&(s=this,--u);l>u;u++)if(null!=(o=arguments[u]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(b.isPlainObject(r)||(n=b.isArray(r)))?(n?(n=!1,a=e&&b.isArray(e)?e:[]):a=e&&b.isPlainObject(e)?e:{},s[i]=b.extend(c,a,r)):r!==t&&(s[i]=r));return s},b.extend({noConflict:function(t){return e.$===b&&(e.$=u),t&&e.jQuery===b&&(e.jQuery=s),b},isReady:!1,readyWait:1,holdReady:function(e){e?b.readyWait++:b.ready(!0)},ready:function(e){if(e===!0?!--b.readyWait:!b.isReady){if(!o.body)return setTimeout(b.ready);b.isReady=!0,e!==!0&&--b.readyWait>0||(n.resolveWith(o,[b]),b.fn.trigger&&b(o).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===b.type(e)},isArray:Array.isArray||function(e){return"array"===b.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[m.call(e)]||"object":typeof e},isPlainObject:function(e){if(!e||"object"!==b.type(e)||e.nodeType||b.isWindow(e))return!1;try{if(e.constructor&&!y.call(e,"constructor")&&!y.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||y.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||o;var r=C.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=b.buildFragment([e],t,i),i&&b(i).remove(),b.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=b.trim(n),n&&k.test(n.replace(S,"@").replace(A,"]").replace(E,"")))?Function("return "+n)():(b.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||b.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&b.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(j,"ms-").replace(D,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:v&&!v.call("\ufeff\u00a0")?function(e){return null==e?"":v.call(e)}:function(e){return null==e?"":(e+"").replace(T,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?b.merge(n,"string"==typeof e?[e]:e):d.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(g)return g.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return f.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),b.isFunction(e)?(r=h.call(arguments,2),i=function(){return e.apply(n||this,r.concat(h.call(arguments)))},i.guid=e.guid=e.guid||b.guid++,i):t},access:function(e,n,r,i,o,a,s){var u=0,l=e.length,c=null==r;if("object"===b.type(r)){o=!0;for(u in r)b.access(e,n,u,r[u],!0,a,s)}else if(i!==t&&(o=!0,b.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(b(e),n)})),n))for(;l>u;u++)n(e[u],r,s?i:i.call(e[u],u,n(e[u],r)));return o?e:c?n.call(e):l?n(e[0],r):a},now:function(){return(new Date).getTime()}}),b.ready.promise=function(t){if(!n)if(n=b.Deferred(),"complete"===o.readyState)setTimeout(b.ready);else if(o.addEventListener)o.addEventListener("DOMContentLoaded",H,!1),e.addEventListener("load",H,!1);else{o.attachEvent("onreadystatechange",H),e.attachEvent("onload",H);var r=!1;try{r=null==e.frameElement&&o.documentElement}catch(i){}r&&r.doScroll&&function a(){if(!b.isReady){try{r.doScroll("left")}catch(e){return setTimeout(a,50)}q(),b.ready()}}()}return n.promise(t)},b.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){l["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=b.type(e);return b.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=b(o);var _={};function F(e){var t=_[e]={};return b.each(e.match(w)||[],function(e,n){t[n]=!0}),t}b.Callbacks=function(e){e="string"==typeof e?_[e]||F(e):b.extend({},e);var n,r,i,o,a,s,u=[],l=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=u.length,n=!0;u&&o>a;a++)if(u[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,u&&(l?l.length&&c(l.shift()):r?u=[]:p.disable())},p={add:function(){if(u){var t=u.length;(function i(t){b.each(t,function(t,n){var r=b.type(n);"function"===r?e.unique&&p.has(n)||u.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=u.length:r&&(s=t,c(r))}return this},remove:function(){return u&&b.each(arguments,function(e,t){var r;while((r=b.inArray(t,u,r))>-1)u.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?b.inArray(e,u)>-1:!(!u||!u.length)},empty:function(){return u=[],this},disable:function(){return u=l=r=t,this},disabled:function(){return!u},lock:function(){return l=t,r||p.disable(),this},locked:function(){return!l},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],!u||i&&!l||(n?l.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},b.extend({Deferred:function(e){var t=[["resolve","done",b.Callbacks("once memory"),"resolved"],["reject","fail",b.Callbacks("once memory"),"rejected"],["notify","progress",b.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return b.Deferred(function(n){b.each(t,function(t,o){var a=o[0],s=b.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&b.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?b.extend(e,r):r}},i={};return r.pipe=r.then,b.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=h.call(arguments),r=n.length,i=1!==r||e&&b.isFunction(e.promise)?r:0,o=1===i?e:b.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?h.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,u,l;if(r>1)for(s=Array(r),u=Array(r),l=Array(r);r>t;t++)n[t]&&b.isFunction(n[t].promise)?n[t].promise().done(a(t,l,n)).fail(o.reject).progress(a(t,u,s)):--i;return i||o.resolveWith(l,n),o.promise()}}),b.support=function(){var t,n,r,a,s,u,l,c,p,f,d=o.createElement("div");if(d.setAttribute("className","t"),d.innerHTML="  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",n=d.getElementsByTagName("*"),r=d.getElementsByTagName("a")[0],!n||!r||!n.length)return{};s=o.createElement("select"),l=s.appendChild(o.createElement("option")),a=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={getSetAttribute:"t"!==d.className,leadingWhitespace:3===d.firstChild.nodeType,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:"/a"===r.getAttribute("href"),opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:!!a.value,optSelected:l.selected,enctype:!!o.createElement("form").enctype,html5Clone:"<:nav></:nav>"!==o.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===o.compatMode,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},a.checked=!0,t.noCloneChecked=a.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!l.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}a=o.createElement("input"),a.setAttribute("value",""),t.input=""===a.getAttribute("value"),a.value="t",a.setAttribute("type","radio"),t.radioValue="t"===a.value,a.setAttribute("checked","t"),a.setAttribute("name","t"),u=o.createDocumentFragment(),u.appendChild(a),t.appendChecked=a.checked,t.checkClone=u.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;return d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip,b(function(){var n,r,a,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",u=o.getElementsByTagName("body")[0];u&&(n=o.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",u.appendChild(n).appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",a=d.getElementsByTagName("td"),a[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===a[0].offsetHeight,a[0].style.display="",a[1].style.display="none",t.reliableHiddenOffsets=p&&0===a[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=4===d.offsetWidth,t.doesNotIncludeMarginInBodyOffset=1!==u.offsetTop,e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(o.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="<div></div>",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(u.style.zoom=1)),u.removeChild(n),n=d=a=r=null)}),n=s=u=l=r=a=null,t}();var O=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,B=/([A-Z])/g;function P(e,n,r,i){if(b.acceptData(e)){var o,a,s=b.expando,u="string"==typeof n,l=e.nodeType,p=l?b.cache:e,f=l?e[s]:e[s]&&s;if(f&&p[f]&&(i||p[f].data)||!u||r!==t)return f||(l?e[s]=f=c.pop()||b.guid++:f=s),p[f]||(p[f]={},l||(p[f].toJSON=b.noop)),("object"==typeof n||"function"==typeof n)&&(i?p[f]=b.extend(p[f],n):p[f].data=b.extend(p[f].data,n)),o=p[f],i||(o.data||(o.data={}),o=o.data),r!==t&&(o[b.camelCase(n)]=r),u?(a=o[n],null==a&&(a=o[b.camelCase(n)])):a=o,a}}function R(e,t,n){if(b.acceptData(e)){var r,i,o,a=e.nodeType,s=a?b.cache:e,u=a?e[b.expando]:b.expando;if(s[u]){if(t&&(o=n?s[u]:s[u].data)){b.isArray(t)?t=t.concat(b.map(t,b.camelCase)):t in o?t=[t]:(t=b.camelCase(t),t=t in o?[t]:t.split(" "));for(r=0,i=t.length;i>r;r++)delete o[t[r]];if(!(n?$:b.isEmptyObject)(o))return}(n||(delete s[u].data,$(s[u])))&&(a?b.cleanData([e],!0):b.support.deleteExpando||s!=s.window?delete s[u]:s[u]=null)}}}b.extend({cache:{},expando:"jQuery"+(p+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?b.cache[e[b.expando]]:e[b.expando],!!e&&!$(e)},data:function(e,t,n){return P(e,t,n)},removeData:function(e,t){return R(e,t)},_data:function(e,t,n){return P(e,t,n,!0)},_removeData:function(e,t){return R(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&b.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),b.fn.extend({data:function(e,n){var r,i,o=this[0],a=0,s=null;if(e===t){if(this.length&&(s=b.data(o),1===o.nodeType&&!b._data(o,"parsedAttrs"))){for(r=o.attributes;r.length>a;a++)i=r[a].name,i.indexOf("data-")||(i=b.camelCase(i.slice(5)),W(o,i,s[i]));b._data(o,"parsedAttrs",!0)}return s}return"object"==typeof e?this.each(function(){b.data(this,e)}):b.access(this,function(n){return n===t?o?W(o,e,b.data(o,e)):null:(this.each(function(){b.data(this,e,n)}),t)},null,n,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function W(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(B,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:O.test(r)?b.parseJSON(r):r}catch(o){}b.data(e,n,r)}else r=t}return r}function $(e){var t;for(t in e)if(("data"!==t||!b.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}b.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=b._data(e,n),r&&(!i||b.isArray(r)?i=b._data(e,n,b.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=b.queue(e,t),r=n.length,i=n.shift(),o=b._queueHooks(e,t),a=function(){b.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),o.cur=i,i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return b._data(e,n)||b._data(e,n,{empty:b.Callbacks("once memory").add(function(){b._removeData(e,t+"queue"),b._removeData(e,n)})})}}),b.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?b.queue(this[0],e):n===t?this:this.each(function(){var t=b.queue(this,e,n);b._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&b.dequeue(this,e)})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(e,t){return e=b.fx?b.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=b.Deferred(),a=this,s=this.length,u=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=b._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(u));return u(),o.promise(n)}});var I,z,X=/[\t\r\n]/g,U=/\r/g,V=/^(?:input|select|textarea|button|object)$/i,Y=/^(?:a|area)$/i,J=/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,G=/^(?:checked|selected)$/i,Q=b.support.getSetAttribute,K=b.support.input;b.fn.extend({attr:function(e,t){return b.access(this,b.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,t){return b.access(this,b.prop,e,t,arguments.length>1)},removeProp:function(e){return e=b.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,u="string"==typeof e&&e;if(b.isFunction(e))return this.each(function(t){b(this).addClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(w)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(X," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=b.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,u=0===arguments.length||"string"==typeof e&&e;if(b.isFunction(e))return this.each(function(t){b(this).removeClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(w)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(X," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?b.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e,r="boolean"==typeof t;return b.isFunction(e)?this.each(function(n){b(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var o,a=0,s=b(this),u=t,l=e.match(w)||[];while(o=l[a++])u=r?u:!s.hasClass(o),s[u?"addClass":"removeClass"](o)}else(n===i||"boolean"===n)&&(this.className&&b._data(this,"__className__",this.className),this.className=this.className||e===!1?"":b._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(X," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=b.isFunction(e),this.each(function(n){var o,a=b(this);1===this.nodeType&&(o=i?e.call(this,n,a.val()):e,null==o?o="":"number"==typeof o?o+="":b.isArray(o)&&(o=b.map(o,function(e){return null==e?"":e+""})),r=b.valHooks[this.type]||b.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=b.valHooks[o.type]||b.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(U,""):null==n?"":n)}}}),b.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,u=0>i?s:o?i:0;for(;s>u;u++)if(n=r[u],!(!n.selected&&u!==i||(b.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&b.nodeName(n.parentNode,"optgroup"))){if(t=b(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n=b.makeArray(t);return b(e).find("option").each(function(){this.selected=b.inArray(b(this).val(),n)>=0}),n.length||(e.selectedIndex=-1),n}}},attr:function(e,n,r){var o,a,s,u=e.nodeType;if(e&&3!==u&&8!==u&&2!==u)return typeof e.getAttribute===i?b.prop(e,n,r):(a=1!==u||!b.isXMLDoc(e),a&&(n=n.toLowerCase(),o=b.attrHooks[n]||(J.test(n)?z:I)),r===t?o&&a&&"get"in o&&null!==(s=o.get(e,n))?s:(typeof e.getAttribute!==i&&(s=e.getAttribute(n)),null==s?t:s):null!==r?o&&a&&"set"in o&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r):(b.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(w);if(o&&1===e.nodeType)while(n=o[i++])r=b.propFix[n]||n,J.test(n)?!Q&&G.test(n)?e[b.camelCase("default-"+n)]=e[r]=!1:e[r]=!1:b.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!b.support.radioValue&&"radio"===t&&b.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!b.isXMLDoc(e),a&&(n=b.propFix[n]||n,o=b.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var n=e.getAttributeNode("tabindex");return n&&n.specified?parseInt(n.value,10):V.test(e.nodeName)||Y.test(e.nodeName)&&e.href?0:t}}}}),z={get:function(e,n){var r=b.prop(e,n),i="boolean"==typeof r&&e.getAttribute(n),o="boolean"==typeof r?K&&Q?null!=i:G.test(n)?e[b.camelCase("default-"+n)]:!!i:e.getAttributeNode(n);return o&&o.value!==!1?n.toLowerCase():t},set:function(e,t,n){return t===!1?b.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&b.propFix[n]||n,n):e[b.camelCase("default-"+n)]=e[n]=!0,n}},K&&Q||(b.attrHooks.value={get:function(e,n){var r=e.getAttributeNode(n);return b.nodeName(e,"input")?e.defaultValue:r&&r.specified?r.value:t},set:function(e,n,r){return b.nodeName(e,"input")?(e.defaultValue=n,t):I&&I.set(e,n,r)}}),Q||(I=b.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&("id"===n||"name"===n||"coords"===n?""!==r.value:r.specified)?r.value:t},set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},b.attrHooks.contenteditable={get:I.get,set:function(e,t,n){I.set(e,""===t?!1:t,n)}},b.each(["width","height"],function(e,n){b.attrHooks[n]=b.extend(b.attrHooks[n],{set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}})})),b.support.hrefNormalized||(b.each(["href","src","width","height"],function(e,n){b.attrHooks[n]=b.extend(b.attrHooks[n],{get:function(e){var r=e.getAttribute(n,2);return null==r?t:r}})}),b.each(["href","src"],function(e,t){b.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}})),b.support.style||(b.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),b.support.optSelected||(b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}})),b.support.enctype||(b.propFix.enctype="encoding"),b.support.checkOn||b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return null===e.getAttribute("value")?"on":e.value}}}),b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,n){return b.isArray(n)?e.checked=b.inArray(b(e).val(),n)>=0:t}})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}b.event={global:{},add:function(e,n,r,o,a){var s,u,l,c,p,f,d,h,g,m,y,v=b._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=b.guid++),(u=v.events)||(u=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof b===i||e&&b.event.triggered===e.type?t:b.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(w)||[""],l=n.length;while(l--)s=rt.exec(n[l])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),p=b.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=b.event.special[g]||{},d=b.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&b.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=u[g])||(h=u[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),b.event.global[g]=!0;e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,p,f,d,h,g,m=b.hasData(e)&&b._data(e);if(m&&(c=m.events)){t=(t||"").match(w)||[""],l=t.length;while(l--)if(s=rt.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=b.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),u=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));u&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||b.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)b.event.remove(e,d+t[l],n,r,!0);b.isEmptyObject(c)&&(delete m.handle,b._removeData(e,"events"))}},trigger:function(n,r,i,a){var s,u,l,c,p,f,d,h=[i||o],g=y.call(n,"type")?n.type:n,m=y.call(n,"namespace")?n.namespace.split("."):[];if(l=f=i=i||o,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+b.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),u=0>g.indexOf(":")&&"on"+g,n=n[b.expando]?n:new b.Event(g,"object"==typeof n&&n),n.isTrigger=!0,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:b.makeArray(r,[n]),p=b.event.special[g]||{},a||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!a&&!p.noBubble&&!b.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(l=l.parentNode);l;l=l.parentNode)h.push(l),f=l;f===(i.ownerDocument||o)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((l=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(b._data(l,"events")||{})[n.type]&&b._data(l,"handle"),s&&s.apply(l,r),s=u&&l[u],s&&b.acceptData(l)&&s.apply&&s.apply(l,r)===!1&&n.preventDefault();if(n.type=g,!(a||n.isDefaultPrevented()||p._default&&p._default.apply(i.ownerDocument,r)!==!1||"click"===g&&b.nodeName(i,"a")||!b.acceptData(i)||!u||!i[g]||b.isWindow(i))){f=i[u],f&&(i[u]=null),b.event.triggered=g;try{i[g]()}catch(v){}b.event.triggered=t,f&&(i[u]=f)}return n.result}},dispatch:function(e){e=b.event.fix(e);var n,r,i,o,a,s=[],u=h.call(arguments),l=(b._data(this,"events")||{})[e.type]||[],c=b.event.special[e.type]||{};if(u[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=b.event.handlers.call(this,e,l),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((b.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,u),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],u=n.delegateCount,l=e.target;if(u&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!=this;l=l.parentNode||this)if(1===l.nodeType&&(l.disabled!==!0||"click"!==e.type)){for(o=[],a=0;u>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?b(r,this).index(l)>=0:b.find(r,this,null,[l]).length),o[r]&&o.push(i);o.length&&s.push({elem:l,handlers:o})}return n.length>u&&s.push({elem:this,handlers:n.slice(u)}),s},fix:function(e){if(e[b.expando])return e;var t,n,r,i=e.type,a=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new b.Event(a),t=r.length;while(t--)n=r[t],e[n]=a[n];return e.target||(e.target=a.srcElement||o),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,a):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,a,s=n.button,u=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||o,a=i.documentElement,r=i.body,e.pageX=n.clientX+(a&&a.scrollLeft||r&&r.scrollLeft||0)-(a&&a.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(a&&a.scrollTop||r&&r.scrollTop||0)-(a&&a.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&u&&(e.relatedTarget=u===e.target?n.toElement:u),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},click:{trigger:function(){return b.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t}},focus:{trigger:function(){if(this!==o.activeElement&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===o.activeElement&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=b.extend(new b.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?b.event.trigger(i,null,t):b.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},b.removeEvent=o.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},b.Event=function(e,n){return this instanceof b.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&b.extend(this,n),this.timeStamp=e&&e.timeStamp||b.now(),this[b.expando]=!0,t):new b.Event(e,n)},b.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){b.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;
return(!i||i!==r&&!b.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),b.support.submitBubbles||(b.event.special.submit={setup:function(){return b.nodeName(this,"form")?!1:(b.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=b.nodeName(n,"input")||b.nodeName(n,"button")?n.form:t;r&&!b._data(r,"submitBubbles")&&(b.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),b._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&b.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return b.nodeName(this,"form")?!1:(b.event.remove(this,"._submit"),t)}}),b.support.changeBubbles||(b.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(b.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),b.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),b.event.simulate("change",this,e,!0)})),!1):(b.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!b._data(t,"changeBubbles")&&(b.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||b.event.simulate("change",this.parentNode,e,!0)}),b._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return b.event.remove(this,"._change"),!Z.test(this.nodeName)}}),b.support.focusinBubbles||b.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){b.event.simulate(t,e.target,b.event.fix(e),!0)};b.event.special[t]={setup:function(){0===n++&&o.addEventListener(e,r,!0)},teardown:function(){0===--n&&o.removeEventListener(e,r,!0)}}}),b.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return b().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=b.guid++)),this.each(function(){b.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,b(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){b.event.remove(this,e,r,n)})},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},trigger:function(e,t){return this.each(function(){b.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?b.event.trigger(e,n,r,!0):t}}),function(e,t){var n,r,i,o,a,s,u,l,c,p,f,d,h,g,m,y,v,x="sizzle"+-new Date,w=e.document,T={},N=0,C=0,k=it(),E=it(),S=it(),A=typeof t,j=1<<31,D=[],L=D.pop,H=D.push,q=D.slice,M=D.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},_="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",O=F.replace("w","w#"),B="([*^$|!~]?=)",P="\\["+_+"*("+F+")"+_+"*(?:"+B+_+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+O+")|)|)"+_+"*\\]",R=":("+F+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+P.replace(3,8)+")*)|.*)\\)|)",W=RegExp("^"+_+"+|((?:^|[^\\\\])(?:\\\\.)*)"+_+"+$","g"),$=RegExp("^"+_+"*,"+_+"*"),I=RegExp("^"+_+"*([\\x20\\t\\r\\n\\f>+~])"+_+"*"),z=RegExp(R),X=RegExp("^"+O+"$"),U={ID:RegExp("^#("+F+")"),CLASS:RegExp("^\\.("+F+")"),NAME:RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:RegExp("^("+F.replace("w","w*")+")"),ATTR:RegExp("^"+P),PSEUDO:RegExp("^"+R),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+_+"*(even|odd|(([+-]|)(\\d*)n|)"+_+"*(?:([+-]|)"+_+"*(\\d+)|))"+_+"*\\)|)","i"),needsContext:RegExp("^"+_+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+_+"*((?:-\\d)?\\d*)"+_+"*\\)|)(?=[^-]|$)","i")},V=/[\x20\t\r\n\f]*[+~]/,Y=/^[^{]+\{\s*\[native code/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,G=/^(?:input|select|textarea|button)$/i,Q=/^h\d$/i,K=/'|\\/g,Z=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,et=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,tt=function(e,t){var n="0x"+t-65536;return n!==n?t:0>n?String.fromCharCode(n+65536):String.fromCharCode(55296|n>>10,56320|1023&n)};try{q.call(w.documentElement.childNodes,0)[0].nodeType}catch(nt){q=function(e){var t,n=[];while(t=this[e++])n.push(t);return n}}function rt(e){return Y.test(e+"")}function it(){var e,t=[];return e=function(n,r){return t.push(n+=" ")>i.cacheLength&&delete e[t.shift()],e[n]=r}}function ot(e){return e[x]=!0,e}function at(e){var t=p.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}}function st(e,t,n,r){var i,o,a,s,u,l,f,g,m,v;if((t?t.ownerDocument||t:w)!==p&&c(t),t=t||p,n=n||[],!e||"string"!=typeof e)return n;if(1!==(s=t.nodeType)&&9!==s)return[];if(!d&&!r){if(i=J.exec(e))if(a=i[1]){if(9===s){if(o=t.getElementById(a),!o||!o.parentNode)return n;if(o.id===a)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(a))&&y(t,o)&&o.id===a)return n.push(o),n}else{if(i[2])return H.apply(n,q.call(t.getElementsByTagName(e),0)),n;if((a=i[3])&&T.getByClassName&&t.getElementsByClassName)return H.apply(n,q.call(t.getElementsByClassName(a),0)),n}if(T.qsa&&!h.test(e)){if(f=!0,g=x,m=t,v=9===s&&e,1===s&&"object"!==t.nodeName.toLowerCase()){l=ft(e),(f=t.getAttribute("id"))?g=f.replace(K,"\\$&"):t.setAttribute("id",g),g="[id='"+g+"'] ",u=l.length;while(u--)l[u]=g+dt(l[u]);m=V.test(e)&&t.parentNode||t,v=l.join(",")}if(v)try{return H.apply(n,q.call(m.querySelectorAll(v),0)),n}catch(b){}finally{f||t.removeAttribute("id")}}}return wt(e.replace(W,"$1"),t,n,r)}a=st.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},c=st.setDocument=function(e){var n=e?e.ownerDocument||e:w;return n!==p&&9===n.nodeType&&n.documentElement?(p=n,f=n.documentElement,d=a(n),T.tagNameNoComments=at(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),T.attributes=at(function(e){e.innerHTML="<select></select>";var t=typeof e.lastChild.getAttribute("multiple");return"boolean"!==t&&"string"!==t}),T.getByClassName=at(function(e){return e.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",e.getElementsByClassName&&e.getElementsByClassName("e").length?(e.lastChild.className="e",2===e.getElementsByClassName("e").length):!1}),T.getByName=at(function(e){e.id=x+0,e.innerHTML="<a name='"+x+"'></a><div name='"+x+"'></div>",f.insertBefore(e,f.firstChild);var t=n.getElementsByName&&n.getElementsByName(x).length===2+n.getElementsByName(x+0).length;return T.getIdNotName=!n.getElementById(x),f.removeChild(e),t}),i.attrHandle=at(function(e){return e.innerHTML="<a href='#'></a>",e.firstChild&&typeof e.firstChild.getAttribute!==A&&"#"===e.firstChild.getAttribute("href")})?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},T.getIdNotName?(i.find.ID=function(e,t){if(typeof t.getElementById!==A&&!d){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},i.filter.ID=function(e){var t=e.replace(et,tt);return function(e){return e.getAttribute("id")===t}}):(i.find.ID=function(e,n){if(typeof n.getElementById!==A&&!d){var r=n.getElementById(e);return r?r.id===e||typeof r.getAttributeNode!==A&&r.getAttributeNode("id").value===e?[r]:t:[]}},i.filter.ID=function(e){var t=e.replace(et,tt);return function(e){var n=typeof e.getAttributeNode!==A&&e.getAttributeNode("id");return n&&n.value===t}}),i.find.TAG=T.tagNameNoComments?function(e,n){return typeof n.getElementsByTagName!==A?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},i.find.NAME=T.getByName&&function(e,n){return typeof n.getElementsByName!==A?n.getElementsByName(name):t},i.find.CLASS=T.getByClassName&&function(e,n){return typeof n.getElementsByClassName===A||d?t:n.getElementsByClassName(e)},g=[],h=[":focus"],(T.qsa=rt(n.querySelectorAll))&&(at(function(e){e.innerHTML="<select><option selected=''></option></select>",e.querySelectorAll("[selected]").length||h.push("\\["+_+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||h.push(":checked")}),at(function(e){e.innerHTML="<input type='hidden' i=''/>",e.querySelectorAll("[i^='']").length&&h.push("[*^$]="+_+"*(?:\"\"|'')"),e.querySelectorAll(":enabled").length||h.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),h.push(",.*:")})),(T.matchesSelector=rt(m=f.matchesSelector||f.mozMatchesSelector||f.webkitMatchesSelector||f.oMatchesSelector||f.msMatchesSelector))&&at(function(e){T.disconnectedMatch=m.call(e,"div"),m.call(e,"[s!='']:x"),g.push("!=",R)}),h=RegExp(h.join("|")),g=RegExp(g.join("|")),y=rt(f.contains)||f.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},v=f.compareDocumentPosition?function(e,t){var r;return e===t?(u=!0,0):(r=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t))?1&r||e.parentNode&&11===e.parentNode.nodeType?e===n||y(w,e)?-1:t===n||y(w,t)?1:0:4&r?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return u=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:0;if(o===a)return ut(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?ut(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},u=!1,[0,0].sort(v),T.detectDuplicates=u,p):p},st.matches=function(e,t){return st(e,null,null,t)},st.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&c(e),t=t.replace(Z,"='$1']"),!(!T.matchesSelector||d||g&&g.test(t)||h.test(t)))try{var n=m.call(e,t);if(n||T.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return st(t,p,null,[e]).length>0},st.contains=function(e,t){return(e.ownerDocument||e)!==p&&c(e),y(e,t)},st.attr=function(e,t){var n;return(e.ownerDocument||e)!==p&&c(e),d||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):d||T.attributes?e.getAttribute(t):((n=e.getAttributeNode(t))||e.getAttribute(t))&&e[t]===!0?t:n&&n.specified?n.value:null},st.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},st.uniqueSort=function(e){var t,n=[],r=1,i=0;if(u=!T.detectDuplicates,e.sort(v),u){for(;t=e[r];r++)t===e[r-1]&&(i=n.push(r));while(i--)e.splice(n[i],1)}return e};function ut(e,t){var n=t&&e,r=n&&(~t.sourceIndex||j)-(~e.sourceIndex||j);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function lt(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function ct(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pt(e){return ot(function(t){return t=+t,ot(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}o=st.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=o(t);return n},i=st.selectors={cacheLength:50,createPseudo:ot,match:U,find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(et,tt),e[3]=(e[4]||e[5]||"").replace(et,tt),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||st.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&st.error(e[0]),e},PSEUDO:function(e){var t,n=!e[5]&&e[2];return U.CHILD.test(e[0])?null:(e[4]?e[2]=e[4]:n&&z.test(n)&&(t=ft(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){return"*"===e?function(){return!0}:(e=e.replace(et,tt).toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[e+" "];return t||(t=RegExp("(^|"+_+")"+e+"("+_+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==A&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=st.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!u&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[x]||(m[x]={}),l=c[e]||[],d=l[0]===N&&l[1],f=l[0]===N&&l[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[N,d,f];break}}else if(v&&(l=(t[x]||(t[x]={}))[e])&&l[0]===N)f=l[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[x]||(p[x]={}))[e]=[N,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||st.error("unsupported pseudo: "+e);return r[x]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?ot(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=M.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:ot(function(e){var t=[],n=[],r=s(e.replace(W,"$1"));return r[x]?ot(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:ot(function(e){return function(t){return st(e,t).length>0}}),contains:ot(function(e){return function(t){return(t.textContent||t.innerText||o(t)).indexOf(e)>-1}}),lang:ot(function(e){return X.test(e||"")||st.error("unsupported lang: "+e),e=e.replace(et,tt).toLowerCase(),function(t){var n;do if(n=d?t.getAttribute("xml:lang")||t.getAttribute("lang"):t.lang)return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===f},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!i.pseudos.empty(e)},header:function(e){return Q.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:pt(function(){return[0]}),last:pt(function(e,t){return[t-1]}),eq:pt(function(e,t,n){return[0>n?n+t:n]}),even:pt(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:pt(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:pt(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:pt(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}};for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})i.pseudos[n]=lt(n);for(n in{submit:!0,reset:!0})i.pseudos[n]=ct(n);function ft(e,t){var n,r,o,a,s,u,l,c=E[e+" "];if(c)return t?0:c.slice(0);s=e,u=[],l=i.preFilter;while(s){(!n||(r=$.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),u.push(o=[])),n=!1,(r=I.exec(s))&&(n=r.shift(),o.push({value:n,type:r[0].replace(W," ")}),s=s.slice(n.length));for(a in i.filter)!(r=U[a].exec(s))||l[a]&&!(r=l[a](r))||(n=r.shift(),o.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?st.error(e):E(e,u).slice(0)}function dt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function ht(e,t,n){var i=t.dir,o=n&&"parentNode"===i,a=C++;return t.first?function(t,n,r){while(t=t[i])if(1===t.nodeType||o)return e(t,n,r)}:function(t,n,s){var u,l,c,p=N+" "+a;if(s){while(t=t[i])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[i])if(1===t.nodeType||o)if(c=t[x]||(t[x]={}),(l=c[i])&&l[0]===p){if((u=l[1])===!0||u===r)return u===!0}else if(l=c[i]=[p],l[1]=e(t,n,s)||r,l[1]===!0)return!0}}function gt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function mt(e,t,n,r,i){var o,a=[],s=0,u=e.length,l=null!=t;for(;u>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),l&&t.push(s));return a}function yt(e,t,n,r,i,o){return r&&!r[x]&&(r=yt(r)),i&&!i[x]&&(i=yt(i,o)),ot(function(o,a,s,u){var l,c,p,f=[],d=[],h=a.length,g=o||xt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:mt(g,f,e,s,u),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,u),r){l=mt(y,d),r(l,[],s,u),c=l.length;while(c--)(p=l[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){l=[],c=y.length;while(c--)(p=y[c])&&l.push(m[c]=p);i(null,y=[],l,u)}c=y.length;while(c--)(p=y[c])&&(l=i?M.call(o,p):f[c])>-1&&(o[l]=!(a[l]=p))}}else y=mt(y===a?y.splice(h,y.length):y),i?i(null,a,y,u):H.apply(a,y)})}function vt(e){var t,n,r,o=e.length,a=i.relative[e[0].type],s=a||i.relative[" "],u=a?1:0,c=ht(function(e){return e===t},s,!0),p=ht(function(e){return M.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;o>u;u++)if(n=i.relative[e[u].type])f=[ht(gt(f),n)];else{if(n=i.filter[e[u].type].apply(null,e[u].matches),n[x]){for(r=++u;o>r;r++)if(i.relative[e[r].type])break;return yt(u>1&&gt(f),u>1&&dt(e.slice(0,u-1)).replace(W,"$1"),n,r>u&&vt(e.slice(u,r)),o>r&&vt(e=e.slice(r)),o>r&&dt(e))}f.push(n)}return gt(f)}function bt(e,t){var n=0,o=t.length>0,a=e.length>0,s=function(s,u,c,f,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,T=l,C=s||a&&i.find.TAG("*",d&&u.parentNode||u),k=N+=null==T?1:Math.random()||.1;for(w&&(l=u!==p&&u,r=n);null!=(h=C[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,u,c)){f.push(h);break}w&&(N=k,r=++n)}o&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,o&&b!==v){g=0;while(m=t[g++])m(x,y,u,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=L.call(f));y=mt(y)}H.apply(f,y),w&&!s&&y.length>0&&v+t.length>1&&st.uniqueSort(f)}return w&&(N=k,l=T),x};return o?ot(s):s}s=st.compile=function(e,t){var n,r=[],i=[],o=S[e+" "];if(!o){t||(t=ft(e)),n=t.length;while(n--)o=vt(t[n]),o[x]?r.push(o):i.push(o);o=S(e,bt(i,r))}return o};function xt(e,t,n){var r=0,i=t.length;for(;i>r;r++)st(e,t[r],n);return n}function wt(e,t,n,r){var o,a,u,l,c,p=ft(e);if(!r&&1===p.length){if(a=p[0]=p[0].slice(0),a.length>2&&"ID"===(u=a[0]).type&&9===t.nodeType&&!d&&i.relative[a[1].type]){if(t=i.find.ID(u.matches[0].replace(et,tt),t)[0],!t)return n;e=e.slice(a.shift().value.length)}o=U.needsContext.test(e)?0:a.length;while(o--){if(u=a[o],i.relative[l=u.type])break;if((c=i.find[l])&&(r=c(u.matches[0].replace(et,tt),V.test(a[0].type)&&t.parentNode||t))){if(a.splice(o,1),e=r.length&&dt(a),!e)return H.apply(n,q.call(r,0)),n;break}}}return s(e,p)(r,t,d,n,V.test(e)),n}i.pseudos.nth=i.pseudos.eq;function Tt(){}i.filters=Tt.prototype=i.pseudos,i.setFilters=new Tt,c(),st.attr=b.attr,b.find=st,b.expr=st.selectors,b.expr[":"]=b.expr.pseudos,b.unique=st.uniqueSort,b.text=st.getText,b.isXMLDoc=st.isXML,b.contains=st.contains}(e);var at=/Until$/,st=/^(?:parents|prev(?:Until|All))/,ut=/^.[^:#\[\.,]*$/,lt=b.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};b.fn.extend({find:function(e){var t,n,r,i=this.length;if("string"!=typeof e)return r=this,this.pushStack(b(e).filter(function(){for(t=0;i>t;t++)if(b.contains(r[t],this))return!0}));for(n=[],t=0;i>t;t++)b.find(e,this[t],n);return n=this.pushStack(i>1?b.unique(n):n),n.selector=(this.selector?this.selector+" ":"")+e,n},has:function(e){var t,n=b(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(b.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e,!1))},filter:function(e){return this.pushStack(ft(this,e,!0))},is:function(e){return!!e&&("string"==typeof e?lt.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,o=[],a=lt.test(e)||"string"!=typeof e?b(e,t||this.context):0;for(;i>r;r++){n=this[r];while(n&&n.ownerDocument&&n!==t&&11!==n.nodeType){if(a?a.index(n)>-1:b.find.matchesSelector(n,e)){o.push(n);break}n=n.parentNode}}return this.pushStack(o.length>1?b.unique(o):o)},index:function(e){return e?"string"==typeof e?b.inArray(this[0],b(e)):b.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?b(e,t):b.makeArray(e&&e.nodeType?[e]:e),r=b.merge(this.get(),n);return this.pushStack(b.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),b.fn.andSelf=b.fn.addBack;function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}b.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(e,t,n){return b.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(e,t,n){return b.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return b.dir(e,"previousSibling",n)},siblings:function(e){return b.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.merge([],e.childNodes)}},function(e,t){b.fn[e]=function(n,r){var i=b.map(this,t,n);return at.test(e)||(r=n),r&&"string"==typeof r&&(i=b.filter(r,i)),i=this.length>1&&!ct[e]?b.unique(i):i,this.length>1&&st.test(e)&&(i=i.reverse()),this.pushStack(i)}}),b.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),1===t.length?b.find.matchesSelector(t[0],e)?[t[0]]:[]:b.find.matches(e,t)},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!b(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(t=t||0,b.isFunction(t))return b.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return b.grep(e,function(e){return e===t===n});if("string"==typeof t){var r=b.grep(e,function(e){return 1===e.nodeType});if(ut.test(t))return b.filter(t,r,!n);t=b.filter(t,r)}return b.grep(e,function(e){return b.inArray(e,t)>=0===n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/<tbody/i,wt=/<|&#?\w+;/,Tt=/<(?:script|style|link)/i,Nt=/^(?:checkbox|radio)$/i,Ct=/checked\s*(?:[^=]|=\s*.checked.)/i,kt=/^$|\/(?:java|ecma)script/i,Et=/^true\/(.*)/,St=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,At={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:b.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},jt=dt(o),Dt=jt.appendChild(o.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,b.fn.extend({text:function(e){return b.access(this,function(e){return e===t?b.text(this):this.empty().append((this[0]&&this[0].ownerDocument||o).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(b.isFunction(e))return this.each(function(t){b(this).wrapAll(e.call(this,t))});if(this[0]){var t=b(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return b.isFunction(e)?this.each(function(t){b(this).wrapInner(e.call(this,t))}):this.each(function(){var t=b(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=b.isFunction(e);return this.each(function(n){b(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){b.nodeName(this,"body")||b(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.insertBefore(e,this.firstChild)})},before:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=0;for(;null!=(n=this[r]);r++)(!e||b.filter(e,[n]).length>0)&&(t||1!==n.nodeType||b.cleanData(Ot(n)),n.parentNode&&(t&&b.contains(n.ownerDocument,n)&&Mt(Ot(n,"script")),n.parentNode.removeChild(n)));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&b.cleanData(Ot(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&b.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return b.clone(this,e,t)})},html:function(e){return b.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!b.support.htmlSerialize&&mt.test(e)||!b.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(b.cleanData(Ot(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(e){var t=b.isFunction(e);return t||"string"==typeof e||(e=b(e).not(this).detach()),this.domManip([e],!0,function(e){var t=this.nextSibling,n=this.parentNode;n&&(b(this).remove(),n.insertBefore(e,t))})},detach:function(e){return this.remove(e,!0)},domManip:function(e,n,r){e=f.apply([],e);var i,o,a,s,u,l,c=0,p=this.length,d=this,h=p-1,g=e[0],m=b.isFunction(g);if(m||!(1>=p||"string"!=typeof g||b.support.checkClone)&&Ct.test(g))return this.each(function(i){var o=d.eq(i);m&&(e[0]=g.call(this,i,n?o.html():t)),o.domManip(e,n,r)});if(p&&(l=b.buildFragment(e,this[0].ownerDocument,!1,this),i=l.firstChild,1===l.childNodes.length&&(l=i),i)){for(n=n&&b.nodeName(i,"tr"),s=b.map(Ot(l,"script"),Ht),a=s.length;p>c;c++)o=l,c!==h&&(o=b.clone(o,!0,!0),a&&b.merge(s,Ot(o,"script"))),r.call(n&&b.nodeName(this[c],"table")?Lt(this[c],"tbody"):this[c],o,c);if(a)for(u=s[s.length-1].ownerDocument,b.map(s,qt),c=0;a>c;c++)o=s[c],kt.test(o.type||"")&&!b._data(o,"globalEval")&&b.contains(u,o)&&(o.src?b.ajax({url:o.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):b.globalEval((o.text||o.textContent||o.innerHTML||"").replace(St,"")));l=i=null}return this}});function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function Ht(e){var t=e.getAttributeNode("type");return e.type=(t&&t.specified)+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function Mt(e,t){var n,r=0;for(;null!=(n=e[r]);r++)b._data(n,"globalEval",!t||b._data(t[r],"globalEval"))}function _t(e,t){if(1===t.nodeType&&b.hasData(e)){var n,r,i,o=b._data(e),a=b._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)b.event.add(t,n,s[n][r])}a.data&&(a.data=b.extend({},a.data))}}function Ft(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!b.support.noCloneEvent&&t[b.expando]){i=b._data(t);for(r in i.events)b.removeEvent(t,r,i.handle);t.removeAttribute(b.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),b.support.html5Clone&&e.innerHTML&&!b.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Nt.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){b.fn[e]=function(e){var n,r=0,i=[],o=b(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),b(o[r])[t](n),d.apply(i,n.get());return this.pushStack(i)}});function Ot(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||b.nodeName(o,n)?s.push(o):b.merge(s,Ot(o,n));return n===t||n&&b.nodeName(e,n)?b.merge([e],s):s}function Bt(e){Nt.test(e.type)&&(e.defaultChecked=e.checked)}b.extend({clone:function(e,t,n){var r,i,o,a,s,u=b.contains(e.ownerDocument,e);if(b.support.html5Clone||b.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(b.support.noCloneEvent&&b.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||b.isXMLDoc(e)))for(r=Ot(o),s=Ot(e),a=0;null!=(i=s[a]);++a)r[a]&&Ft(i,r[a]);if(t)if(n)for(s=s||Ot(e),r=r||Ot(o),a=0;null!=(i=s[a]);a++)_t(i,r[a]);else _t(e,o);return r=Ot(o,"script"),r.length>0&&Mt(r,!u&&Ot(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,u,l,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===b.type(o))b.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),u=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[u]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!b.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!b.support.tbody){o="table"!==u||xt.test(o)?"<table>"!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)b.nodeName(l=o.childNodes[i],"tbody")&&!l.childNodes.length&&o.removeChild(l)
}b.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),b.support.appendChecked||b.grep(Ot(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===b.inArray(o,r))&&(a=b.contains(o.ownerDocument,o),s=Ot(f.appendChild(o),"script"),a&&Mt(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,u=b.expando,l=b.cache,p=b.support.deleteExpando,f=b.event.special;for(;null!=(n=e[s]);s++)if((t||b.acceptData(n))&&(o=n[u],a=o&&l[o])){if(a.events)for(r in a.events)f[r]?b.event.remove(n,r):b.removeEvent(n,r,a.handle);l[o]&&(delete l[o],p?delete n[u]:typeof n.removeAttribute!==i?n.removeAttribute(u):n[u]=null,c.push(o))}}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+x+")(.*)$","i"),Yt=RegExp("^("+x+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+x+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===b.css(e,"display")||!b.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=b._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=b._data(r,"olddisplay",un(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&b._data(r,"olddisplay",i?n:b.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}b.fn.extend({css:function(e,n){return b.access(this,function(e,n,r){var i,o,a={},s=0;if(b.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=b.css(e,n[s],!1,o);return a}return r!==t?b.style(e,n,r):b.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){var t="boolean"==typeof e;return this.each(function(){(t?e:nn(this))?b(this).show():b(this).hide()})}}),b.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,u=b.camelCase(n),l=e.style;if(n=b.cssProps[u]||(b.cssProps[u]=tn(l,u)),s=b.cssHooks[n]||b.cssHooks[u],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:l[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(b.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||b.cssNumber[u]||(r+="px"),b.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(l[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{l[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,u=b.camelCase(n);return n=b.cssProps[u]||(b.cssProps[u]=tn(e.style,u)),s=b.cssHooks[n]||b.cssHooks[u],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||b.isNumeric(o)?o||0:a):a},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),u=s?s.getPropertyValue(n)||s[n]:t,l=e.style;return s&&(""!==u||b.contains(e.ownerDocument,e)||(u=b.style(e,n)),Yt.test(u)&&Ut.test(n)&&(i=l.width,o=l.minWidth,a=l.maxWidth,l.minWidth=l.maxWidth=l.width=u,u=s.width,l.width=i,l.minWidth=o,l.maxWidth=a)),u}):o.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),u=s?s[n]:t,l=e.style;return null==u&&l&&l[n]&&(u=l[n]),Yt.test(u)&&!zt.test(n)&&(i=l.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),l.left="fontSize"===n?"1em":u,u=l.pixelLeft+"px",l.left=i,a&&(o.left=a)),""===u?"auto":u});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=b.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=b.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=b.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=b.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=b.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=b.support.boxSizing&&"border-box"===b.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(b.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function un(e){var t=o,n=Gt[e];return n||(n=ln(e,t),"none"!==n&&n||(Pt=(Pt||b("<iframe frameborder='0' width='0' height='0'/>").css("cssText","display:block !important")).appendTo(t.documentElement),t=(Pt[0].contentWindow||Pt[0].contentDocument).document,t.write("<!doctype html><html><body>"),t.close(),n=ln(e,t),Pt.detach()),Gt[e]=n),n}function ln(e,t){var n=b(t.createElement(e)).appendTo(t.body),r=b.css(n[0],"display");return n.remove(),r}b.each(["height","width"],function(e,n){b.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&Xt.test(b.css(e,"display"))?b.swap(e,Qt,function(){return sn(e,n,i)}):sn(e,n,i):t},set:function(e,t,r){var i=r&&Rt(e);return on(e,t,r?an(e,n,r,b.support.boxSizing&&"border-box"===b.css(e,"boxSizing",!1,i),i):0)}}}),b.support.opacity||(b.cssHooks.opacity={get:function(e,t){return It.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=b.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===b.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),b(function(){b.support.reliableMarginRight||(b.cssHooks.marginRight={get:function(e,n){return n?b.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!b.support.pixelPosition&&b.fn.position&&b.each(["top","left"],function(e,n){b.cssHooks[n]={get:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?b(e).position()[n]+"px":r):t}}})}),b.expr&&b.expr.filters&&(b.expr.filters.hidden=function(e){return 0>=e.offsetWidth&&0>=e.offsetHeight||!b.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||b.css(e,"display"))},b.expr.filters.visible=function(e){return!b.expr.filters.hidden(e)}),b.each({margin:"",padding:"",border:"Width"},function(e,t){b.cssHooks[e+t]={expand:function(n){var r=0,i={},o="string"==typeof n?n.split(" "):[n];for(;4>r;r++)i[e+Zt[r]+t]=o[r]||o[r-2]||o[0];return i}},Ut.test(e)||(b.cssHooks[e+t].set=on)});var cn=/%20/g,pn=/\[\]$/,fn=/\r?\n/g,dn=/^(?:submit|button|image|reset|file)$/i,hn=/^(?:input|select|textarea|keygen)/i;b.fn.extend({serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=b.prop(this,"elements");return e?b.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!b(this).is(":disabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Nt.test(e))}).map(function(e,t){var n=b(this).val();return null==n?null:b.isArray(n)?b.map(n,function(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.replace(fn,"\r\n")}}).get()}}),b.param=function(e,n){var r,i=[],o=function(e,t){t=b.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=b.ajaxSettings&&b.ajaxSettings.traditional),b.isArray(e)||e.jquery&&!b.isPlainObject(e))b.each(e,function(){o(this.name,this.value)});else for(r in e)gn(r,e[r],n,o);return i.join("&").replace(cn,"+")};function gn(e,t,n,r){var i;if(b.isArray(t))b.each(t,function(t,i){n||pn.test(e)?r(e,i):gn(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==b.type(t))r(e,t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}b.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){b.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),b.fn.hover=function(e,t){return this.mouseenter(e).mouseleave(t||e)};var mn,yn,vn=b.now(),bn=/\?/,xn=/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Nn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Cn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=b.fn.load,An={},jn={},Dn="*/".concat("*");try{yn=a.href}catch(Ln){yn=o.createElement("a"),yn.href="",yn=yn.href}mn=En.exec(yn.toLowerCase())||[];function Hn(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(w)||[];if(b.isFunction(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function qn(e,n,r,i){var o={},a=e===jn;function s(u){var l;return o[u]=!0,b.each(e[u]||[],function(e,u){var c=u(n,r,i);return"string"!=typeof c||a||o[c]?a?!(l=c):t:(n.dataTypes.unshift(c),s(c),!1)}),l}return s(n.dataTypes[0])||!o["*"]&&s("*")}function Mn(e,n){var r,i,o=b.ajaxSettings.flatOptions||{};for(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&b.extend(!0,e,r),e}b.fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments);var i,o,a,s=this,u=e.indexOf(" ");return u>=0&&(i=e.slice(u,e.length),e=e.slice(0,u)),b.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&b.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.html(i?b("<div>").append(b.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},b.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){b.fn[t]=function(e){return this.on(t,e)}}),b.each(["get","post"],function(e,n){b[n]=function(e,r,i,o){return b.isFunction(r)&&(o=o||i,i=r,r=t),b.ajax({url:e,type:n,dataType:o,data:r,success:i})}}),b.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Nn.test(mn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Mn(Mn(e,b.ajaxSettings),t):Mn(b.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,u,l,c,p=b.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?b(f):b.event,h=b.Deferred(),g=b.Callbacks("once memory"),m=p.statusCode||{},y={},v={},x=0,T="canceled",N={readyState:0,getResponseHeader:function(e){var t;if(2===x){if(!c){c={};while(t=Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return x||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>x)for(t in e)m[t]=[m[t],e[t]];else N.always(e[N.status]);return this},abort:function(e){var t=e||T;return l&&l.abort(t),k(0,t),this}};if(h.promise(N).complete=g.add,N.success=N.done,N.error=N.fail,p.url=((e||p.url||yn)+"").replace(xn,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=b.trim(p.dataType||"*").toLowerCase().match(w)||[""],null==p.crossDomain&&(r=En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[3]||("http:"===r[1]?80:443))==(mn[3]||("http:"===mn[1]?80:443)))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=b.param(p.data,p.traditional)),qn(An,p,n,N),2===x)return N;u=p.global,u&&0===b.active++&&b.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Cn.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn++)),p.ifModified&&(b.lastModified[o]&&N.setRequestHeader("If-Modified-Since",b.lastModified[o]),b.etag[o]&&N.setRequestHeader("If-None-Match",b.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&N.setRequestHeader("Content-Type",p.contentType),N.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":""):p.accepts["*"]);for(i in p.headers)N.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,N,p)===!1||2===x))return N.abort();T="abort";for(i in{success:1,error:1,complete:1})N[i](p[i]);if(l=qn(jn,p,n,N)){N.readyState=1,u&&d.trigger("ajaxSend",[N,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){N.abort("timeout")},p.timeout));try{x=1,l.send(y,k)}catch(C){if(!(2>x))throw C;k(-1,C)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,C=n;2!==x&&(x=2,s&&clearTimeout(s),l=t,a=i||"",N.readyState=e>0?4:0,r&&(w=_n(p,N,r)),e>=200&&300>e||304===e?(p.ifModified&&(T=N.getResponseHeader("Last-Modified"),T&&(b.lastModified[o]=T),T=N.getResponseHeader("etag"),T&&(b.etag[o]=T)),204===e?(c=!0,C="nocontent"):304===e?(c=!0,C="notmodified"):(c=Fn(p,w),C=c.state,y=c.data,v=c.error,c=!v)):(v=C,(e||!C)&&(C="error",0>e&&(e=0))),N.status=e,N.statusText=(n||C)+"",c?h.resolveWith(f,[y,C,N]):h.rejectWith(f,[N,C,v]),N.statusCode(m),m=t,u&&d.trigger(c?"ajaxSuccess":"ajaxError",[N,p,c?y:v]),g.fireWith(f,[N,C]),u&&(d.trigger("ajaxComplete",[N,p]),--b.active||b.event.trigger("ajaxStop")))}return N},getScript:function(e,n){return b.get(e,t,n,"script")},getJSON:function(e,t,n){return b.get(e,t,n,"json")}});function _n(e,n,r){var i,o,a,s,u=e.contents,l=e.dataTypes,c=e.responseFields;for(s in c)s in r&&(n[c[s]]=r[s]);while("*"===l[0])l.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in u)if(u[s]&&u[s].test(o)){l.unshift(s);break}if(l[0]in r)a=l[0];else{for(s in r){if(!l[0]||e.converters[s+" "+l[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==l[0]&&l.unshift(a),r[a]):t}function Fn(e,t){var n,r,i,o,a={},s=0,u=e.dataTypes.slice(),l=u[0];if(e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u[1])for(i in e.converters)a[i.toLowerCase()]=e.converters[i];for(;r=u[++s];)if("*"!==r){if("*"!==l&&l!==r){if(i=a[l+" "+r]||a["* "+r],!i)for(n in a)if(o=n.split(" "),o[1]===r&&(i=a[l+" "+o[0]]||a["* "+o[0]])){i===!0?i=a[n]:a[n]!==!0&&(r=o[0],u.splice(s--,0,r));break}if(i!==!0)if(i&&e["throws"])t=i(t);else try{t=i(t)}catch(c){return{state:"parsererror",error:i?c:"No conversion from "+l+" to "+r}}}l=r}return{state:"success",data:t}}b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return b.globalEval(e),e}}}),b.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),b.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=o.head||b("head")[0]||o.documentElement;return{send:function(t,i){n=o.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var On=[],Bn=/(=)\?(?=&|$)|\?\?/;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=On.pop()||b.expando+"_"+vn++;return this[e]=!0,e}}),b.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,u=n.jsonp!==!1&&(Bn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Bn.test(n.data)&&"data");return u||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=b.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,u?n[u]=n[u].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||b.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,On.push(o)),s&&b.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){var e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catch(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}b.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=b.ajaxSettings.xhr(),b.support.cors=!!Rn&&"withCredentials"in Rn,Rn=b.support.ajax=!!Rn,Rn&&b.ajaxTransport(function(n){if(!n.crossDomain||b.support.cors){var r;return{send:function(i,o){var a,s,u=n.xhr();if(n.username?u.open(n.type,n.url,n.async,n.username,n.password):u.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)u[s]=n.xhrFields[s];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)u.setRequestHeader(s,i[s])}catch(l){}u.send(n.hasContent&&n.data||null),r=function(e,i){var s,l,c,p;try{if(r&&(i||4===u.readyState))if(r=t,a&&(u.onreadystatechange=b.noop,$n&&delete Pn[a]),i)4!==u.readyState&&u.abort();else{p={},s=u.status,l=u.getAllResponseHeaders(),"string"==typeof u.responseText&&(p.text=u.responseText);try{c=u.statusText}catch(f){c=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)}p&&o(s,c,p,l)},n.async?4===u.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},b(e).unload($n)),Pn[a]=r),u.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+x+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n,r,i=this.createTween(e,t),o=Yn.exec(t),a=i.cur(),s=+a||0,u=1,l=20;if(o){if(n=+o[2],r=o[3]||(b.cssNumber[e]?"":"px"),"px"!==r&&s){s=b.css(i.elem,e,!0)||n||1;do u=u||".5",s/=u,b.style(i.elem,e,s+r);while(u!==(u=i.cur()/a)&&1!==u&&--l)}i.unit=r,i.start=s,i.end=o[1]?s+(o[1]+1)*n:n}return i}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=b.now()}function Zn(e,t){b.each(t,function(t,n){var r=(Qn[t]||[]).concat(Qn["*"]),i=0,o=r.length;for(;o>i;i++)if(r[i].call(e,t,n))return})}function er(e,t,n){var r,i,o=0,a=Gn.length,s=b.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;for(;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:b.extend({},t),opts:b.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=b.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),c=l.props;for(tr(c,l.opts.specialEasing);a>o;o++)if(r=Gn[o].call(l,e,c,l.opts))return r;return Zn(l,c),b.isFunction(l.opts.start)&&l.opts.start.call(e,l),b.fx.timer(b.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function tr(e,t){var n,r,i,o,a;for(i in e)if(r=b.camelCase(i),o=t[r],n=e[i],b.isArray(n)&&(o=n[1],n=e[i]=n[0]),i!==r&&(e[r]=n,delete e[i]),a=b.cssHooks[r],a&&"expand"in a){n=a.expand(n),delete e[r];for(i in n)i in e||(e[i]=n[i],t[i]=o)}else t[r]=o}b.Animation=b.extend(er,{tweener:function(e,t){b.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n].unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e,t,n){var r,i,o,a,s,u,l,c,p,f=this,d=e.style,h={},g=[],m=e.nodeType&&nn(e);n.queue||(c=b._queueHooks(e,"fx"),null==c.unqueued&&(c.unqueued=0,p=c.empty.fire,c.empty.fire=function(){c.unqueued||p()}),c.unqueued++,f.always(function(){f.always(function(){c.unqueued--,b.queue(e,"fx").length||c.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[d.overflow,d.overflowX,d.overflowY],"inline"===b.css(e,"display")&&"none"===b.css(e,"float")&&(b.support.inlineBlockNeedsLayout&&"inline"!==un(e.nodeName)?d.zoom=1:d.display="inline-block")),n.overflow&&(d.overflow="hidden",b.support.shrinkWrapBlocks||f.always(function(){d.overflow=n.overflow[0],d.overflowX=n.overflow[1],d.overflowY=n.overflow[2]}));for(i in t)if(a=t[i],Vn.exec(a)){if(delete t[i],u=u||"toggle"===a,a===(m?"hide":"show"))continue;g.push(i)}if(o=g.length){s=b._data(e,"fxshow")||b._data(e,"fxshow",{}),"hidden"in s&&(m=s.hidden),u&&(s.hidden=!m),m?b(e).show():f.done(function(){b(e).hide()}),f.done(function(){var t;b._removeData(e,"fxshow");for(t in h)b.style(e,t,h[t])});for(i=0;o>i;i++)r=g[i],l=f.createTween(r,m?s[r]:0),h[r]=s[r]||b.style(e,r),r in s||(s[r]=l.start,m&&(l.end=l.start,l.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}b.Tween=rr,rr.prototype={constructor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(b.cssNumber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHooks[this.prop];return this.pos=t=this.options.duration?b.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.prototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=b.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){b.fx.step[e.prop]?b.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[b.cssProps[e.prop]]||b.cssHooks[e.prop])?b.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHooks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},b.each(["toggle","show","hide"],function(e,t){var n=b.fn[t];b.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),b.fn.extend({fadeTo:function(e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=b.isEmptyObject(e),o=b.speed(t,n,r),a=function(){var t=er(this,b.extend({},e),o);a.finish=function(){t.stop(!0)},(i||b._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=b.timers,a=b._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&b.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=b._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=b.timers,a=r?r.length:0;for(n.finish=!0,b.queue(this,e,[]),i&&i.cur&&i.cur.finish&&i.cur.finish.call(this),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}b.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){b.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),b.speed=function(e,t,n){var r=e&&"object"==typeof e?b.extend({},e):{complete:n||!n&&t||b.isFunction(e)&&e,duration:e,easing:n&&t||t&&!b.isFunction(t)&&t};return r.duration=b.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in b.fx.speeds?b.fx.speeds[r.duration]:b.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){b.isFunction(r.old)&&r.old.call(this),r.queue&&b.dequeue(this,r.queue)},r},b.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},b.timers=[],b.fx=rr.prototype.init,b.fx.tick=function(){var e,n=b.timers,r=0;for(Xn=b.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||b.fx.stop(),Xn=t},b.fx.timer=function(e){e()&&b.timers.push(e)&&b.fx.start()},b.fx.interval=13,b.fx.start=function(){Un||(Un=setInterval(b.fx.tick,b.fx.interval))},b.fx.stop=function(){clearInterval(Un),Un=null},b.fx.speeds={slow:600,fast:200,_default:400},b.fx.step={},b.expr&&b.expr.filters&&(b.expr.filters.animated=function(e){return b.grep(b.timers,function(t){return e===t.elem}).length}),b.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){b.offset.setOffset(this,e,t)});var n,r,o={top:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,b.contains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=or(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},b.offset={setOffset:function(e,t,n){var r=b.css(e,"position");"static"===r&&(e.style.position="relative");var i=b(e),o=i.offset(),a=b.css(e,"top"),s=b.css(e,"left"),u=("absolute"===r||"fixed"===r)&&b.inArray("auto",[a,s])>-1,l={},c={},p,f;u?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),b.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(l.top=t.top-o.top+p),null!=t.left&&(l.left=t.left-o.left+f),"using"in t?t.using.call(e,l):i.css(l)}},b.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===b.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),b.nodeName(e[0],"html")||(n=e.offset()),n.top+=b.css(e[0],"borderTopWidth",!0),n.left+=b.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-b.css(r,"marginTop",!0),left:t.left-n.left-b.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.documentElement;while(e&&!b.nodeName(e,"html")&&"static"===b.css(e,"position"))e=e.offsetParent;return e||o.documentElement})}}),b.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);b.fn[e]=function(i){return b.access(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?b(a).scrollLeft():o,r?o:b(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return b.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}b.each({Height:"height",Width:"width"},function(e,n){b.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){b.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return b.access(this,function(n,r,i){var o;return b.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?b.css(n,r,s):b.style(n,r,i,s)},n,a?i:t,a,null)}})}),e.jQuery=e.$=b,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return b})})(window);
js/jquery/jquery-ui.min.js000060400000260420152455614210011556 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */


(function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e(jQuery)})(function(e){function t(t,s){var a,n,r,o=t.nodeName.toLowerCase();return"area"===o?(a=t.parentNode,n=a.name,t.href&&n&&"map"===a.nodeName.toLowerCase()?(r=e("img[usemap='#"+n+"']")[0],!!r&&i(r)):!1):(/input|select|textarea|button|object/.test(o)?!t.disabled:"a"===o?t.href||s:s)&&i(t)}function i(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}e.ui=e.ui||{},e.extend(e.ui,{version:"1.11.2",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({scrollParent:function(t){var i=this.css("position"),s="absolute"===i,a=t?/(auto|scroll|hidden)/:/(auto|scroll)/,n=this.parents().filter(function(){var t=e(this);return s&&"static"===t.css("position")?!1:a.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==i&&n.length?n:e(this[0].ownerDocument||document)},uniqueId:function(){var e=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++e)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,s){return!!e.data(t,s[3])},focusable:function(i){return t(i,!isNaN(e.attr(i,"tabindex")))},tabbable:function(i){var s=e.attr(i,"tabindex"),a=isNaN(s);return(a||s>=0)&&t(i,!a)}}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(t,i){function s(t,i,s,n){return e.each(a,function(){i-=parseFloat(e.css(t,"padding"+this))||0,s&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),n&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var a="Width"===i?["Left","Right"]:["Top","Bottom"],n=i.toLowerCase(),r={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+i]=function(t){return void 0===t?r["inner"+i].call(this):this.each(function(){e(this).css(n,s(this,t)+"px")})},e.fn["outer"+i]=function(t,a){return"number"!=typeof t?r["outer"+i].call(this,t):this.each(function(){e(this).css(n,s(this,t,!0,a)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.fn.extend({focus:function(t){return function(i,s){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),s&&s.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),disableSelection:function(){var e="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(e+".ui-disableSelection",function(e){e.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(t){if(void 0!==t)return this.css("zIndex",t);if(this.length)for(var i,s,a=e(this[0]);a.length&&a[0]!==document;){if(i=a.css("position"),("absolute"===i||"relative"===i||"fixed"===i)&&(s=parseInt(a.css("zIndex"),10),!isNaN(s)&&0!==s))return s;a=a.parent()}return 0}}),e.ui.plugin={add:function(t,i,s){var a,n=e.ui[t].prototype;for(a in s)n.plugins[a]=n.plugins[a]||[],n.plugins[a].push([i,s[a]])},call:function(e,t,i,s){var a,n=e.plugins[t];if(n&&(s||e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType))for(a=0;n.length>a;a++)e.options[n[a][0]]&&n[a][1].apply(e.element,i)}};var s=0,a=Array.prototype.slice;e.cleanData=function(t){return function(i){var s,a,n;for(n=0;null!=(a=i[n]);n++)try{s=e._data(a,"events"),s&&s.remove&&e(a).triggerHandler("remove")}catch(r){}t(i)}}(e.cleanData),e.widget=function(t,i,s){var a,n,r,o,h={},l=t.split(".")[0];return t=t.split(".")[1],a=l+"-"+t,s||(s=i,i=e.Widget),e.expr[":"][a.toLowerCase()]=function(t){return!!e.data(t,a)},e[l]=e[l]||{},n=e[l][t],r=e[l][t]=function(e,t){return this._createWidget?(arguments.length&&this._createWidget(e,t),void 0):new r(e,t)},e.extend(r,n,{version:s.version,_proto:e.extend({},s),_childConstructors:[]}),o=new i,o.options=e.widget.extend({},o.options),e.each(s,function(t,s){return e.isFunction(s)?(h[t]=function(){var e=function(){return i.prototype[t].apply(this,arguments)},a=function(e){return i.prototype[t].apply(this,e)};return function(){var t,i=this._super,n=this._superApply;return this._super=e,this._superApply=a,t=s.apply(this,arguments),this._super=i,this._superApply=n,t}}(),void 0):(h[t]=s,void 0)}),r.prototype=e.widget.extend(o,{widgetEventPrefix:n?o.widgetEventPrefix||t:t},h,{constructor:r,namespace:l,widgetName:t,widgetFullName:a}),n?(e.each(n._childConstructors,function(t,i){var s=i.prototype;e.widget(s.namespace+"."+s.widgetName,r,i._proto)}),delete n._childConstructors):i._childConstructors.push(r),e.widget.bridge(t,r),r},e.widget.extend=function(t){for(var i,s,n=a.call(arguments,1),r=0,o=n.length;o>r;r++)for(i in n[r])s=n[r][i],n[r].hasOwnProperty(i)&&void 0!==s&&(t[i]=e.isPlainObject(s)?e.isPlainObject(t[i])?e.widget.extend({},t[i],s):e.widget.extend({},s):s);return t},e.widget.bridge=function(t,i){var s=i.prototype.widgetFullName||t;e.fn[t]=function(n){var r="string"==typeof n,o=a.call(arguments,1),h=this;return n=!r&&o.length?e.widget.extend.apply(null,[n].concat(o)):n,r?this.each(function(){var i,a=e.data(this,s);return"instance"===n?(h=a,!1):a?e.isFunction(a[n])&&"_"!==n.charAt(0)?(i=a[n].apply(a,o),i!==a&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):e.error("no such method '"+n+"' for "+t+" widget instance"):e.error("cannot call methods on "+t+" prior to initialization; "+"attempted to call method '"+n+"'")}):this.each(function(){var t=e.data(this,s);t?(t.option(n||{}),t._init&&t._init()):e.data(this,s,new i(n,this))}),h}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,i){i=e(i||this.defaultElement||this)[0],this.element=e(i),this.uuid=s++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=e(),this.hoverable=e(),this.focusable=e(),i!==this&&(e.data(i,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===i&&this.destroy()}}),this.document=e(i.style?i.ownerDocument:i.document||i),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(t,i){var s,a,n,r=t;if(0===arguments.length)return e.widget.extend({},this.options);if("string"==typeof t)if(r={},s=t.split("."),t=s.shift(),s.length){for(a=r[t]=e.widget.extend({},this.options[t]),n=0;s.length-1>n;n++)a[s[n]]=a[s[n]]||{},a=a[s[n]];if(t=s.pop(),1===arguments.length)return void 0===a[t]?null:a[t];a[t]=i}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];r[t]=i}return this._setOptions(r),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,"disabled"===e&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!t),t&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(t,i,s){var a,n=this;"boolean"!=typeof t&&(s=i,i=t,t=!1),s?(i=a=e(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,a=this.widget()),e.each(s,function(s,r){function o(){return t||n.options.disabled!==!0&&!e(this).hasClass("ui-state-disabled")?("string"==typeof r?n[r]:r).apply(n,arguments):void 0}"string"!=typeof r&&(o.guid=r.guid=r.guid||o.guid||e.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+n.eventNamespace,u=h[2];u?a.delegate(u,l,o):i.bind(l,o)})},_off:function(t,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.unbind(i).undelegate(i),this.bindings=e(this.bindings.not(t).get()),this.focusable=e(this.focusable.not(t).get()),this.hoverable=e(this.hoverable.not(t).get())},_delay:function(e,t){function i(){return("string"==typeof e?s[e]:e).apply(s,arguments)}var s=this;return setTimeout(i,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,s){var a,n,r=this.options[t];if(s=s||{},i=e.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],n=i.originalEvent)for(a in n)a in i||(i[a]=n[a]);return this.element.trigger(i,s),!(e.isFunction(r)&&r.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,i){e.Widget.prototype["_"+t]=function(s,a,n){"string"==typeof a&&(a={effect:a});var r,o=a?a===!0||"number"==typeof a?i:a.effect||i:t;a=a||{},"number"==typeof a&&(a={duration:a}),r=!e.isEmptyObject(a),a.complete=n,a.delay&&s.delay(a.delay),r&&e.effects&&e.effects.effect[o]?s[t](a):o!==t&&s[o]?s[o](a.duration,a.easing,n):s.queue(function(i){e(this)[t](),n&&n.call(s[0]),i()})}}),e.widget;var n=!1;e(document).mouseup(function(){n=!1}),e.widget("ui.mouse",{version:"1.11.2",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(i){return!0===e.data(i.target,t.widgetName+".preventClickEvent")?(e.removeData(i.target,t.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var i=this,s=1===t.which,a="string"==typeof this.options.cancel&&t.target.nodeName?e(t.target).closest(this.options.cancel).length:!1;return s&&!a&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(t)!==!1,!this._mouseStarted)?(t.preventDefault(),!0):(!0===e.data(t.target,this.widgetName+".preventClickEvent")&&e.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return i._mouseMove(e)},this._mouseUpDelegate=function(e){return i._mouseUp(e)},this.document.bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(t){if(this._mouseMoved){if(e.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button)return this._mouseUp(t);if(!t.which)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){return this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),n=!1,!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),function(){function t(e,t,i){return[parseFloat(e[0])*(p.test(e[0])?t/100:1),parseFloat(e[1])*(p.test(e[1])?i/100:1)]}function i(t,i){return parseInt(e.css(t,i),10)||0}function s(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var a,n,r=Math.max,o=Math.abs,h=Math.round,l=/left|center|right/,u=/top|center|bottom/,d=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,p=/%$/,m=e.fn.position;e.position={scrollbarWidth:function(){if(void 0!==a)return a;var t,i,s=e("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),n=s.children()[0];return e("body").append(s),t=n.offsetWidth,s.css("overflow","scroll"),i=n.offsetWidth,t===i&&(i=s[0].clientWidth),s.remove(),a=t-i},getScrollInfo:function(t){var i=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),s=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),a="scroll"===i||"auto"===i&&t.width<t.element[0].scrollWidth,n="scroll"===s||"auto"===s&&t.height<t.element[0].scrollHeight;return{width:n?e.position.scrollbarWidth():0,height:a?e.position.scrollbarWidth():0}},getWithinInfo:function(t){var i=e(t||window),s=e.isWindow(i[0]),a=!!i[0]&&9===i[0].nodeType;return{element:i,isWindow:s,isDocument:a,offset:i.offset()||{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:s||a?i.width():i.outerWidth(),height:s||a?i.height():i.outerHeight()}}},e.fn.position=function(a){if(!a||!a.of)return m.apply(this,arguments);a=e.extend({},a);var p,f,g,v,y,b,_=e(a.of),x=e.position.getWithinInfo(a.within),w=e.position.getScrollInfo(x),k=(a.collision||"flip").split(" "),T={};return b=s(_),_[0].preventDefault&&(a.at="left top"),f=b.width,g=b.height,v=b.offset,y=e.extend({},v),e.each(["my","at"],function(){var e,t,i=(a[this]||"").split(" ");1===i.length&&(i=l.test(i[0])?i.concat(["center"]):u.test(i[0])?["center"].concat(i):["center","center"]),i[0]=l.test(i[0])?i[0]:"center",i[1]=u.test(i[1])?i[1]:"center",e=d.exec(i[0]),t=d.exec(i[1]),T[this]=[e?e[0]:0,t?t[0]:0],a[this]=[c.exec(i[0])[0],c.exec(i[1])[0]]}),1===k.length&&(k[1]=k[0]),"right"===a.at[0]?y.left+=f:"center"===a.at[0]&&(y.left+=f/2),"bottom"===a.at[1]?y.top+=g:"center"===a.at[1]&&(y.top+=g/2),p=t(T.at,f,g),y.left+=p[0],y.top+=p[1],this.each(function(){var s,l,u=e(this),d=u.outerWidth(),c=u.outerHeight(),m=i(this,"marginLeft"),b=i(this,"marginTop"),S=d+m+i(this,"marginRight")+w.width,D=c+b+i(this,"marginBottom")+w.height,N=e.extend({},y),M=t(T.my,u.outerWidth(),u.outerHeight());"right"===a.my[0]?N.left-=d:"center"===a.my[0]&&(N.left-=d/2),"bottom"===a.my[1]?N.top-=c:"center"===a.my[1]&&(N.top-=c/2),N.left+=M[0],N.top+=M[1],n||(N.left=h(N.left),N.top=h(N.top)),s={marginLeft:m,marginTop:b},e.each(["left","top"],function(t,i){e.ui.position[k[t]]&&e.ui.position[k[t]][i](N,{targetWidth:f,targetHeight:g,elemWidth:d,elemHeight:c,collisionPosition:s,collisionWidth:S,collisionHeight:D,offset:[p[0]+M[0],p[1]+M[1]],my:a.my,at:a.at,within:x,elem:u})}),a.using&&(l=function(e){var t=v.left-N.left,i=t+f-d,s=v.top-N.top,n=s+g-c,h={target:{element:_,left:v.left,top:v.top,width:f,height:g},element:{element:u,left:N.left,top:N.top,width:d,height:c},horizontal:0>i?"left":t>0?"right":"center",vertical:0>n?"top":s>0?"bottom":"middle"};d>f&&f>o(t+i)&&(h.horizontal="center"),c>g&&g>o(s+n)&&(h.vertical="middle"),h.important=r(o(t),o(i))>r(o(s),o(n))?"horizontal":"vertical",a.using.call(this,e,h)}),u.offset(e.extend(N,{using:l}))})},e.ui.position={fit:{left:function(e,t){var i,s=t.within,a=s.isWindow?s.scrollLeft:s.offset.left,n=s.width,o=e.left-t.collisionPosition.marginLeft,h=a-o,l=o+t.collisionWidth-n-a;t.collisionWidth>n?h>0&&0>=l?(i=e.left+h+t.collisionWidth-n-a,e.left+=h-i):e.left=l>0&&0>=h?a:h>l?a+n-t.collisionWidth:a:h>0?e.left+=h:l>0?e.left-=l:e.left=r(e.left-o,e.left)},top:function(e,t){var i,s=t.within,a=s.isWindow?s.scrollTop:s.offset.top,n=t.within.height,o=e.top-t.collisionPosition.marginTop,h=a-o,l=o+t.collisionHeight-n-a;t.collisionHeight>n?h>0&&0>=l?(i=e.top+h+t.collisionHeight-n-a,e.top+=h-i):e.top=l>0&&0>=h?a:h>l?a+n-t.collisionHeight:a:h>0?e.top+=h:l>0?e.top-=l:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var i,s,a=t.within,n=a.offset.left+a.scrollLeft,r=a.width,h=a.isWindow?a.scrollLeft:a.offset.left,l=e.left-t.collisionPosition.marginLeft,u=l-h,d=l+t.collisionWidth-r-h,c="left"===t.my[0]?-t.elemWidth:"right"===t.my[0]?t.elemWidth:0,p="left"===t.at[0]?t.targetWidth:"right"===t.at[0]?-t.targetWidth:0,m=-2*t.offset[0];0>u?(i=e.left+c+p+m+t.collisionWidth-r-n,(0>i||o(u)>i)&&(e.left+=c+p+m)):d>0&&(s=e.left-t.collisionPosition.marginLeft+c+p+m-h,(s>0||d>o(s))&&(e.left+=c+p+m))},top:function(e,t){var i,s,a=t.within,n=a.offset.top+a.scrollTop,r=a.height,h=a.isWindow?a.scrollTop:a.offset.top,l=e.top-t.collisionPosition.marginTop,u=l-h,d=l+t.collisionHeight-r-h,c="top"===t.my[1],p=c?-t.elemHeight:"bottom"===t.my[1]?t.elemHeight:0,m="top"===t.at[1]?t.targetHeight:"bottom"===t.at[1]?-t.targetHeight:0,f=-2*t.offset[1];0>u?(s=e.top+p+m+f+t.collisionHeight-r-n,e.top+p+m+f>u&&(0>s||o(u)>s)&&(e.top+=p+m+f)):d>0&&(i=e.top-t.collisionPosition.marginTop+p+m+f-h,e.top+p+m+f>d&&(i>0||d>o(i))&&(e.top+=p+m+f))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,s,a,r,o=document.getElementsByTagName("body")[0],h=document.createElement("div");t=document.createElement(o?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},o&&e.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(r in s)t.style[r]=s[r];t.appendChild(h),i=o||document.documentElement,i.insertBefore(t,i.firstChild),h.style.cssText="position: absolute; left: 10.7432222px;",a=e(h).offset().left,n=a>10&&11>a,t.innerHTML="",i.removeChild(t)}()}(),e.ui.position,e.widget("ui.draggable",e.ui.mouse,{version:"1.11.2",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._setHandleClassName(),this._mouseInit()},_setOption:function(e,t){this._super(e,t),"handle"===e&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(t){var i=this.options;return this._blurActiveElement(t),this.helper||i.disabled||e(t.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(t),this.handle?(this._blockFrames(i.iframeFix===!0?"iframe":i.iframeFix),!0):!1)},_blockFrames:function(t){this.iframeBlocks=this.document.find(t).map(function(){var t=e(this);return e("<div>").css("position","absolute").appendTo(t.parent()).outerWidth(t.outerWidth()).outerHeight(t.outerHeight()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(t){var i=this.document[0];if(this.handleElement.is(t.target))try{i.activeElement&&"body"!==i.activeElement.nodeName.toLowerCase()&&e(i.activeElement).blur()}catch(s){}},_mouseStart:function(t){var i=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===e(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(t),this.originalPosition=this.position=this._generatePosition(t,!1),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._normalizeRightBottom(),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_refreshOffsets:function(e){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:e.pageX-this.offset.left,top:e.pageY-this.offset.top}},_mouseDrag:function(t,i){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(t,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",t,s)===!1)return this._mouseUp({}),!1;this.position=s.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var i=this,s=!1;return e.ui.ddmanager&&!this.options.dropBehaviour&&(s=e.ui.ddmanager.drop(this,t)),this.dropped&&(s=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",t)!==!1&&i._clear()}):this._trigger("stop",t)!==!1&&this._clear(),!1},_mouseUp:function(t){return this._unblockFrames(),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),this.handleElement.is(t.target)&&this.element.focus(),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){return this.options.handle?!!e(t.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this.handleElement.addClass("ui-draggable-handle")},_removeHandleClassName:function(){this.handleElement.removeClass("ui-draggable-handle")},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper),a=s?e(i.helper.apply(this.element[0],[t])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return a.parents("body").length||a.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s&&a[0]===this.element[0]&&this._setPositionRelative(),a[0]===this.element[0]||/(fixed|absolute)/.test(a.css("position"))||a.css("position","absolute"),a},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_isRootNode:function(e){return/(html|body)/i.test(e.tagName)||e===this.document[0]},_getParentOffset:function(){var t=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var e=this.element.position(),t=this._isRootNode(this.scrollParent[0]);return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+(t?0:this.scrollParent.scrollTop()),left:e.left-(parseInt(this.helper.css("left"),10)||0)+(t?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,a=this.options,n=this.document[0];return this.relativeContainer=null,a.containment?"window"===a.containment?(this.containment=[e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,e(window).scrollLeft()+e(window).width()-this.helperProportions.width-this.margins.left,e(window).scrollTop()+(e(window).height()||n.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===a.containment?(this.containment=[0,0,e(n).width()-this.helperProportions.width-this.margins.left,(e(n).height()||n.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):a.containment.constructor===Array?(this.containment=a.containment,void 0):("parent"===a.containment&&(a.containment=this.helper[0].parentNode),i=e(a.containment),s=i[0],s&&(t=/(scroll|auto)/.test(i.css("overflow")),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(t?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(t?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=i),void 0):(this.containment=null,void 0)},_convertPositionTo:function(e,t){t||(t=this.position);var i="absolute"===e?1:-1,s=this._isRootNode(this.scrollParent[0]);return{top:t.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:s?0:this.offset.scroll.top)*i,left:t.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:s?0:this.offset.scroll.left)*i}},_generatePosition:function(e,t){var i,s,a,n,r=this.options,o=this._isRootNode(this.scrollParent[0]),h=e.pageX,l=e.pageY;return o&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),t&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,e.pageX-this.offset.click.left<i[0]&&(h=i[0]+this.offset.click.left),e.pageY-this.offset.click.top<i[1]&&(l=i[1]+this.offset.click.top),e.pageX-this.offset.click.left>i[2]&&(h=i[2]+this.offset.click.left),e.pageY-this.offset.click.top>i[3]&&(l=i[3]+this.offset.click.top)),r.grid&&(a=r.grid[1]?this.originalPageY+Math.round((l-this.originalPageY)/r.grid[1])*r.grid[1]:this.originalPageY,l=i?a-this.offset.click.top>=i[1]||a-this.offset.click.top>i[3]?a:a-this.offset.click.top>=i[1]?a-r.grid[1]:a+r.grid[1]:a,n=r.grid[0]?this.originalPageX+Math.round((h-this.originalPageX)/r.grid[0])*r.grid[0]:this.originalPageX,h=i?n-this.offset.click.left>=i[0]||n-this.offset.click.left>i[2]?n:n-this.offset.click.left>=i[0]?n-r.grid[0]:n+r.grid[0]:n),"y"===r.axis&&(h=this.originalPageX),"x"===r.axis&&(l=this.originalPageY)),{top:l-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:o?0:this.offset.scroll.top),left:h-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:o?0:this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_normalizeRightBottom:function(){"y"!==this.options.axis&&"auto"!==this.helper.css("right")&&(this.helper.width(this.helper.width()),this.helper.css("right","auto")),"x"!==this.options.axis&&"auto"!==this.helper.css("bottom")&&(this.helper.height(this.helper.height()),this.helper.css("bottom","auto"))},_trigger:function(t,i,s){return s=s||this._uiHash(),e.ui.plugin.call(this,t,[i,s,this],!0),/^(drag|start|stop)/.test(t)&&(this.positionAbs=this._convertPositionTo("absolute"),s.offset=this.positionAbs),e.Widget.prototype._trigger.call(this,t,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),e.ui.plugin.add("draggable","connectToSortable",{start:function(t,i,s){var a=e.extend({},i,{item:s.element});s.sortables=[],e(s.options.connectToSortable).each(function(){var i=e(this).sortable("instance");i&&!i.options.disabled&&(s.sortables.push(i),i.refreshPositions(),i._trigger("activate",t,a))})},stop:function(t,i,s){var a=e.extend({},i,{item:s.element});s.cancelHelperRemoval=!1,e.each(s.sortables,function(){var e=this;e.isOver?(e.isOver=0,s.cancelHelperRemoval=!0,e.cancelHelperRemoval=!1,e._storedCSS={position:e.placeholder.css("position"),top:e.placeholder.css("top"),left:e.placeholder.css("left")},e._mouseStop(t),e.options.helper=e.options._helper):(e.cancelHelperRemoval=!0,e._trigger("deactivate",t,a))})},drag:function(t,i,s){e.each(s.sortables,function(){var a=!1,n=this;n.positionAbs=s.positionAbs,n.helperProportions=s.helperProportions,n.offset.click=s.offset.click,n._intersectsWith(n.containerCache)&&(a=!0,e.each(s.sortables,function(){return this.positionAbs=s.positionAbs,this.helperProportions=s.helperProportions,this.offset.click=s.offset.click,this!==n&&this._intersectsWith(this.containerCache)&&e.contains(n.element[0],this.element[0])&&(a=!1),a
})),a?(n.isOver||(n.isOver=1,n.currentItem=i.helper.appendTo(n.element).data("ui-sortable-item",!0),n.options._helper=n.options.helper,n.options.helper=function(){return i.helper[0]},t.target=n.currentItem[0],n._mouseCapture(t,!0),n._mouseStart(t,!0,!0),n.offset.click.top=s.offset.click.top,n.offset.click.left=s.offset.click.left,n.offset.parent.left-=s.offset.parent.left-n.offset.parent.left,n.offset.parent.top-=s.offset.parent.top-n.offset.parent.top,s._trigger("toSortable",t),s.dropped=n.element,e.each(s.sortables,function(){this.refreshPositions()}),s.currentItem=s.element,n.fromOutside=s),n.currentItem&&(n._mouseDrag(t),i.position=n.position)):n.isOver&&(n.isOver=0,n.cancelHelperRemoval=!0,n.options._revert=n.options.revert,n.options.revert=!1,n._trigger("out",t,n._uiHash(n)),n._mouseStop(t,!0),n.options.revert=n.options._revert,n.options.helper=n.options._helper,n.placeholder&&n.placeholder.remove(),s._refreshOffsets(t),i.position=s._generatePosition(t,!0),s._trigger("fromSortable",t),s.dropped=!1,e.each(s.sortables,function(){this.refreshPositions()}))})}}),e.ui.plugin.add("draggable","cursor",{start:function(t,i,s){var a=e("body"),n=s.options;a.css("cursor")&&(n._cursor=a.css("cursor")),a.css("cursor",n.cursor)},stop:function(t,i,s){var a=s.options;a._cursor&&e("body").css("cursor",a._cursor)}}),e.ui.plugin.add("draggable","opacity",{start:function(t,i,s){var a=e(i.helper),n=s.options;a.css("opacity")&&(n._opacity=a.css("opacity")),a.css("opacity",n.opacity)},stop:function(t,i,s){var a=s.options;a._opacity&&e(i.helper).css("opacity",a._opacity)}}),e.ui.plugin.add("draggable","scroll",{start:function(e,t,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1)),i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(t,i,s){var a=s.options,n=!1,r=s.scrollParentNotHidden[0],o=s.document[0];r!==o&&"HTML"!==r.tagName?(a.axis&&"x"===a.axis||(s.overflowOffset.top+r.offsetHeight-t.pageY<a.scrollSensitivity?r.scrollTop=n=r.scrollTop+a.scrollSpeed:t.pageY-s.overflowOffset.top<a.scrollSensitivity&&(r.scrollTop=n=r.scrollTop-a.scrollSpeed)),a.axis&&"y"===a.axis||(s.overflowOffset.left+r.offsetWidth-t.pageX<a.scrollSensitivity?r.scrollLeft=n=r.scrollLeft+a.scrollSpeed:t.pageX-s.overflowOffset.left<a.scrollSensitivity&&(r.scrollLeft=n=r.scrollLeft-a.scrollSpeed))):(a.axis&&"x"===a.axis||(t.pageY-e(o).scrollTop()<a.scrollSensitivity?n=e(o).scrollTop(e(o).scrollTop()-a.scrollSpeed):e(window).height()-(t.pageY-e(o).scrollTop())<a.scrollSensitivity&&(n=e(o).scrollTop(e(o).scrollTop()+a.scrollSpeed))),a.axis&&"y"===a.axis||(t.pageX-e(o).scrollLeft()<a.scrollSensitivity?n=e(o).scrollLeft(e(o).scrollLeft()-a.scrollSpeed):e(window).width()-(t.pageX-e(o).scrollLeft())<a.scrollSensitivity&&(n=e(o).scrollLeft(e(o).scrollLeft()+a.scrollSpeed)))),n!==!1&&e.ui.ddmanager&&!a.dropBehaviour&&e.ui.ddmanager.prepareOffsets(s,t)}}),e.ui.plugin.add("draggable","snap",{start:function(t,i,s){var a=s.options;s.snapElements=[],e(a.snap.constructor!==String?a.snap.items||":data(ui-draggable)":a.snap).each(function(){var t=e(this),i=t.offset();this!==s.element[0]&&s.snapElements.push({item:this,width:t.outerWidth(),height:t.outerHeight(),top:i.top,left:i.left})})},drag:function(t,i,s){var a,n,r,o,h,l,u,d,c,p,m=s.options,f=m.snapTolerance,g=i.offset.left,v=g+s.helperProportions.width,y=i.offset.top,b=y+s.helperProportions.height;for(c=s.snapElements.length-1;c>=0;c--)h=s.snapElements[c].left-s.margins.left,l=h+s.snapElements[c].width,u=s.snapElements[c].top-s.margins.top,d=u+s.snapElements[c].height,h-f>v||g>l+f||u-f>b||y>d+f||!e.contains(s.snapElements[c].item.ownerDocument,s.snapElements[c].item)?(s.snapElements[c].snapping&&s.options.snap.release&&s.options.snap.release.call(s.element,t,e.extend(s._uiHash(),{snapItem:s.snapElements[c].item})),s.snapElements[c].snapping=!1):("inner"!==m.snapMode&&(a=f>=Math.abs(u-b),n=f>=Math.abs(d-y),r=f>=Math.abs(h-v),o=f>=Math.abs(l-g),a&&(i.position.top=s._convertPositionTo("relative",{top:u-s.helperProportions.height,left:0}).top),n&&(i.position.top=s._convertPositionTo("relative",{top:d,left:0}).top),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h-s.helperProportions.width}).left),o&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l}).left)),p=a||n||r||o,"outer"!==m.snapMode&&(a=f>=Math.abs(u-y),n=f>=Math.abs(d-b),r=f>=Math.abs(h-g),o=f>=Math.abs(l-v),a&&(i.position.top=s._convertPositionTo("relative",{top:u,left:0}).top),n&&(i.position.top=s._convertPositionTo("relative",{top:d-s.helperProportions.height,left:0}).top),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h}).left),o&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l-s.helperProportions.width}).left)),!s.snapElements[c].snapping&&(a||n||r||o||p)&&s.options.snap.snap&&s.options.snap.snap.call(s.element,t,e.extend(s._uiHash(),{snapItem:s.snapElements[c].item})),s.snapElements[c].snapping=a||n||r||o||p)}}),e.ui.plugin.add("draggable","stack",{start:function(t,i,s){var a,n=s.options,r=e.makeArray(e(n.stack)).sort(function(t,i){return(parseInt(e(t).css("zIndex"),10)||0)-(parseInt(e(i).css("zIndex"),10)||0)});r.length&&(a=parseInt(e(r[0]).css("zIndex"),10)||0,e(r).each(function(t){e(this).css("zIndex",a+t)}),this.css("zIndex",a+r.length))}}),e.ui.plugin.add("draggable","zIndex",{start:function(t,i,s){var a=e(i.helper),n=s.options;a.css("zIndex")&&(n._zIndex=a.css("zIndex")),a.css("zIndex",n.zIndex)},stop:function(t,i,s){var a=s.options;a._zIndex&&e(i.helper).css("zIndex",a._zIndex)}}),e.ui.draggable,e.widget("ui.droppable",{version:"1.11.2",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var t,i=this.options,s=i.accept;this.isover=!1,this.isout=!0,this.accept=e.isFunction(s)?s:function(e){return e.is(s)},this.proportions=function(){return arguments.length?(t=arguments[0],void 0):t?t:t={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}},this._addToManager(i.scope),i.addClasses&&this.element.addClass("ui-droppable")},_addToManager:function(t){e.ui.ddmanager.droppables[t]=e.ui.ddmanager.droppables[t]||[],e.ui.ddmanager.droppables[t].push(this)},_splice:function(e){for(var t=0;e.length>t;t++)e[t]===this&&e.splice(t,1)},_destroy:function(){var t=e.ui.ddmanager.droppables[this.options.scope];this._splice(t),this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(t,i){if("accept"===t)this.accept=e.isFunction(i)?i:function(e){return e.is(i)};else if("scope"===t){var s=e.ui.ddmanager.droppables[this.options.scope];this._splice(s),this._addToManager(i)}this._super(t,i)},_activate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),i&&this._trigger("activate",t,this.ui(i))},_deactivate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),i&&this._trigger("deactivate",t,this.ui(i))},_over:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",t,this.ui(i)))},_out:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",t,this.ui(i)))},_drop:function(t,i){var s=i||e.ui.ddmanager.current,a=!1;return s&&(s.currentItem||s.element)[0]!==this.element[0]?(this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var i=e(this).droppable("instance");return i.options.greedy&&!i.options.disabled&&i.options.scope===s.options.scope&&i.accept.call(i.element[0],s.currentItem||s.element)&&e.ui.intersect(s,e.extend(i,{offset:i.element.offset()}),i.options.tolerance,t)?(a=!0,!1):void 0}),a?!1:this.accept.call(this.element[0],s.currentItem||s.element)?(this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",t,this.ui(s)),this.element):!1):!1},ui:function(e){return{draggable:e.currentItem||e.element,helper:e.helper,position:e.position,offset:e.positionAbs}}}),e.ui.intersect=function(){function e(e,t,i){return e>=t&&t+i>e}return function(t,i,s,a){if(!i.offset)return!1;var n=(t.positionAbs||t.position.absolute).left+t.margins.left,r=(t.positionAbs||t.position.absolute).top+t.margins.top,o=n+t.helperProportions.width,h=r+t.helperProportions.height,l=i.offset.left,u=i.offset.top,d=l+i.proportions().width,c=u+i.proportions().height;switch(s){case"fit":return n>=l&&d>=o&&r>=u&&c>=h;case"intersect":return n+t.helperProportions.width/2>l&&d>o-t.helperProportions.width/2&&r+t.helperProportions.height/2>u&&c>h-t.helperProportions.height/2;case"pointer":return e(a.pageY,u,i.proportions().height)&&e(a.pageX,l,i.proportions().width);case"touch":return(r>=u&&c>=r||h>=u&&c>=h||u>r&&h>c)&&(n>=l&&d>=n||o>=l&&d>=o||l>n&&o>d);default:return!1}}}(),e.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(t,i){var s,a,n=e.ui.ddmanager.droppables[t.options.scope]||[],r=i?i.type:null,o=(t.currentItem||t.element).find(":data(ui-droppable)").addBack();e:for(s=0;n.length>s;s++)if(!(n[s].options.disabled||t&&!n[s].accept.call(n[s].element[0],t.currentItem||t.element))){for(a=0;o.length>a;a++)if(o[a]===n[s].element[0]){n[s].proportions().height=0;continue e}n[s].visible="none"!==n[s].element.css("display"),n[s].visible&&("mousedown"===r&&n[s]._activate.call(n[s],i),n[s].offset=n[s].element.offset(),n[s].proportions({width:n[s].element[0].offsetWidth,height:n[s].element[0].offsetHeight}))}},drop:function(t,i){var s=!1;return e.each((e.ui.ddmanager.droppables[t.options.scope]||[]).slice(),function(){this.options&&(!this.options.disabled&&this.visible&&e.ui.intersect(t,this,this.options.tolerance,i)&&(s=this._drop.call(this,i)||s),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],t.currentItem||t.element)&&(this.isout=!0,this.isover=!1,this._deactivate.call(this,i)))}),s},dragStart:function(t,i){t.element.parentsUntil("body").bind("scroll.droppable",function(){t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)})},drag:function(t,i){t.options.refreshPositions&&e.ui.ddmanager.prepareOffsets(t,i),e.each(e.ui.ddmanager.droppables[t.options.scope]||[],function(){if(!this.options.disabled&&!this.greedyChild&&this.visible){var s,a,n,r=e.ui.intersect(t,this,this.options.tolerance,i),o=!r&&this.isover?"isout":r&&!this.isover?"isover":null;o&&(this.options.greedy&&(a=this.options.scope,n=this.element.parents(":data(ui-droppable)").filter(function(){return e(this).droppable("instance").options.scope===a}),n.length&&(s=e(n[0]).droppable("instance"),s.greedyChild="isover"===o)),s&&"isover"===o&&(s.isover=!1,s.isout=!0,s._out.call(s,i)),this[o]=!0,this["isout"===o?"isover":"isout"]=!1,this["isover"===o?"_over":"_out"].call(this,i),s&&"isout"===o&&(s.isout=!1,s.isover=!0,s._over.call(s,i)))}})},dragStop:function(t,i){t.element.parentsUntil("body").unbind("scroll.droppable"),t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)}},e.ui.droppable,e.widget("ui.resizable",e.ui.mouse,{version:"1.11.2",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(e){return parseInt(e,10)||0},_isNumber:function(e){return!isNaN(parseInt(e,10))},_hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",a=!1;return t[s]>0?!0:(t[s]=1,a=t[s]>0,t[s]=0,a)},_create:function(){var t,i,s,a,n,r=this,o=this.options;if(this.element.addClass("ui-resizable"),e.extend(this,{_aspectRatio:!!o.aspectRatio,aspectRatio:o.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:o.helper||o.ghost||o.animate?o.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(e("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=o.handles||(e(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),t=this.handles.split(","),this.handles={},i=0;t.length>i;i++)s=e.trim(t[i]),n="ui-resizable-"+s,a=e("<div class='ui-resizable-handle "+n+"'></div>"),a.css({zIndex:o.zIndex}),"se"===s&&a.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(a);this._renderAxis=function(t){var i,s,a,n;t=t||this.element;for(i in this.handles)this.handles[i].constructor===String&&(this.handles[i]=this.element.children(this.handles[i]).first().show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(s=e(this.handles[i],this.element),n=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),a=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),t.css(a,n),this._proportionallyResize()),e(this.handles[i]).length},this._renderAxis(this.element),this._handles=e(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){r.resizing||(this.className&&(a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=a&&a[1]?a[1]:"se")}),o.autoHide&&(this._handles.hide(),e(this.element).addClass("ui-resizable-autohide").mouseenter(function(){o.disabled||(e(this).removeClass("ui-resizable-autohide"),r._handles.show())}).mouseleave(function(){o.disabled||r.resizing||(e(this).addClass("ui-resizable-autohide"),r._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var t,i=function(t){e(t).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),t=this.element,this.originalElement.css({position:t.css("position"),width:t.outerWidth(),height:t.outerHeight(),top:t.css("top"),left:t.css("left")}).insertAfter(t),t.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(t){var i,s,a=!1;for(i in this.handles)s=e(this.handles[i])[0],(s===t.target||e.contains(s,t.target))&&(a=!0);return!this.options.disabled&&a},_mouseStart:function(t){var i,s,a,n=this.options,r=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),n.containment&&(i+=e(n.containment).scrollLeft()||0,s+=e(n.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:r.width(),height:r.height()},this.originalSize=this._helper?{width:r.outerWidth(),height:r.outerHeight()}:{width:r.width(),height:r.height()},this.sizeDiff={width:r.outerWidth()-r.width(),height:r.outerHeight()-r.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof n.aspectRatio?n.aspectRatio:this.originalSize.width/this.originalSize.height||1,a=e(".ui-resizable-"+this.axis).css("cursor"),e("body").css("cursor","auto"===a?this.axis+"-resize":a),r.addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var i,s,a=this.originalMousePosition,n=this.axis,r=t.pageX-a.left||0,o=t.pageY-a.top||0,h=this._change[n];return this._updatePrevProperties(),h?(i=h.apply(this,[t,r,o]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(i=this._updateRatio(i,t)),i=this._respectSize(i,t),this._updateCache(i),this._propagate("resize",t),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),e.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(t){this.resizing=!1;var i,s,a,n,r,o,h,l=this.options,u=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),a=s&&this._hasScroll(i[0],"left")?0:u.sizeDiff.height,n=s?0:u.sizeDiff.width,r={width:u.helper.width()-n,height:u.helper.height()-a},o=parseInt(u.element.css("left"),10)+(u.position.left-u.originalPosition.left)||null,h=parseInt(u.element.css("top"),10)+(u.position.top-u.originalPosition.top)||null,l.animate||this.element.css(e.extend(r,{top:h,left:o})),u.helper.height(u.size.height),u.helper.width(u.size.width),this._helper&&!l.animate&&this._proportionallyResize()),e("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var e={};return this.position.top!==this.prevPosition.top&&(e.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(e.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(e.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(e.height=this.size.height+"px"),this.helper.css(e),e},_updateVirtualBoundaries:function(e){var t,i,s,a,n,r=this.options;n={minWidth:this._isNumber(r.minWidth)?r.minWidth:0,maxWidth:this._isNumber(r.maxWidth)?r.maxWidth:1/0,minHeight:this._isNumber(r.minHeight)?r.minHeight:0,maxHeight:this._isNumber(r.maxHeight)?r.maxHeight:1/0},(this._aspectRatio||e)&&(t=n.minHeight*this.aspectRatio,s=n.minWidth/this.aspectRatio,i=n.maxHeight*this.aspectRatio,a=n.maxWidth/this.aspectRatio,t>n.minWidth&&(n.minWidth=t),s>n.minHeight&&(n.minHeight=s),n.maxWidth>i&&(n.maxWidth=i),n.maxHeight>a&&(n.maxHeight=a)),this._vBoundaries=n},_updateCache:function(e){this.offset=this.helper.offset(),this._isNumber(e.left)&&(this.position.left=e.left),this._isNumber(e.top)&&(this.position.top=e.top),this._isNumber(e.height)&&(this.size.height=e.height),this._isNumber(e.width)&&(this.size.width=e.width)},_updateRatio:function(e){var t=this.position,i=this.size,s=this.axis;return this._isNumber(e.height)?e.width=e.height*this.aspectRatio:this._isNumber(e.width)&&(e.height=e.width/this.aspectRatio),"sw"===s&&(e.left=t.left+(i.width-e.width),e.top=null),"nw"===s&&(e.top=t.top+(i.height-e.height),e.left=t.left+(i.width-e.width)),e},_respectSize:function(e){var t=this._vBoundaries,i=this.axis,s=this._isNumber(e.width)&&t.maxWidth&&t.maxWidth<e.width,a=this._isNumber(e.height)&&t.maxHeight&&t.maxHeight<e.height,n=this._isNumber(e.width)&&t.minWidth&&t.minWidth>e.width,r=this._isNumber(e.height)&&t.minHeight&&t.minHeight>e.height,o=this.originalPosition.left+this.originalSize.width,h=this.position.top+this.size.height,l=/sw|nw|w/.test(i),u=/nw|ne|n/.test(i);return n&&(e.width=t.minWidth),r&&(e.height=t.minHeight),s&&(e.width=t.maxWidth),a&&(e.height=t.maxHeight),n&&l&&(e.left=o-t.minWidth),s&&l&&(e.left=o-t.maxWidth),r&&u&&(e.top=h-t.minHeight),a&&u&&(e.top=h-t.maxHeight),e.width||e.height||e.left||!e.top?e.width||e.height||e.top||!e.left||(e.left=null):e.top=null,e},_getPaddingPlusBorderDimensions:function(e){for(var t=0,i=[],s=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],a=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];4>t;t++)i[t]=parseInt(s[t],10)||0,i[t]+=parseInt(a[t],10)||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var e,t=0,i=this.helper||this.element;this._proportionallyResizeElements.length>t;t++)e=this._proportionallyResizeElements[t],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(e)),e.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,i=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||e("<div style='overflow:hidden;'></div>"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(e,t){return{width:this.originalSize.width+t}},w:function(e,t){var i=this.originalSize,s=this.originalPosition;return{left:s.left+t,width:i.width-t}},n:function(e,t,i){var s=this.originalSize,a=this.originalPosition;return{top:a.top+i,height:s.height-i}},s:function(e,t,i){return{height:this.originalSize.height+i}},se:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},sw:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,i,s]))},ne:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},nw:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,i,s]))}},_propagate:function(t,i){e.ui.plugin.call(this,t,[i,this.ui()]),"resize"!==t&&this._trigger(t,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),e.ui.plugin.add("resizable","animate",{stop:function(t){var i=e(this).resizable("instance"),s=i.options,a=i._proportionallyResizeElements,n=a.length&&/textarea/i.test(a[0].nodeName),r=n&&i._hasScroll(a[0],"left")?0:i.sizeDiff.height,o=n?0:i.sizeDiff.width,h={width:i.size.width-o,height:i.size.height-r},l=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,u=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(e.extend(h,u&&l?{top:u,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};a&&a.length&&e(a[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",t)}})}}),e.ui.plugin.add("resizable","containment",{start:function(){var t,i,s,a,n,r,o,h=e(this).resizable("instance"),l=h.options,u=h.element,d=l.containment,c=d instanceof e?d.get(0):/parent/.test(d)?u.parent().get(0):d;c&&(h.containerElement=e(c),/document/.test(d)||d===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}):(t=e(c),i=[],e(["Top","Right","Left","Bottom"]).each(function(e,s){i[e]=h._num(t.css("padding"+s))}),h.containerOffset=t.offset(),h.containerPosition=t.position(),h.containerSize={height:t.innerHeight()-i[3],width:t.innerWidth()-i[1]},s=h.containerOffset,a=h.containerSize.height,n=h.containerSize.width,r=h._hasScroll(c,"left")?c.scrollWidth:n,o=h._hasScroll(c)?c.scrollHeight:a,h.parentData={element:c,left:s.left,top:s.top,width:r,height:o}))},resize:function(t){var i,s,a,n,r=e(this).resizable("instance"),o=r.options,h=r.containerOffset,l=r.position,u=r._aspectRatio||t.shiftKey,d={top:0,left:0},c=r.containerElement,p=!0;c[0]!==document&&/static/.test(c.css("position"))&&(d=h),l.left<(r._helper?h.left:0)&&(r.size.width=r.size.width+(r._helper?r.position.left-h.left:r.position.left-d.left),u&&(r.size.height=r.size.width/r.aspectRatio,p=!1),r.position.left=o.helper?h.left:0),l.top<(r._helper?h.top:0)&&(r.size.height=r.size.height+(r._helper?r.position.top-h.top:r.position.top),u&&(r.size.width=r.size.height*r.aspectRatio,p=!1),r.position.top=r._helper?h.top:0),a=r.containerElement.get(0)===r.element.parent().get(0),n=/relative|absolute/.test(r.containerElement.css("position")),a&&n?(r.offset.left=r.parentData.left+r.position.left,r.offset.top=r.parentData.top+r.position.top):(r.offset.left=r.element.offset().left,r.offset.top=r.element.offset().top),i=Math.abs(r.sizeDiff.width+(r._helper?r.offset.left-d.left:r.offset.left-h.left)),s=Math.abs(r.sizeDiff.height+(r._helper?r.offset.top-d.top:r.offset.top-h.top)),i+r.size.width>=r.parentData.width&&(r.size.width=r.parentData.width-i,u&&(r.size.height=r.size.width/r.aspectRatio,p=!1)),s+r.size.height>=r.parentData.height&&(r.size.height=r.parentData.height-s,u&&(r.size.width=r.size.height*r.aspectRatio,p=!1)),p||(r.position.left=r.prevPosition.left,r.position.top=r.prevPosition.top,r.size.width=r.prevSize.width,r.size.height=r.prevSize.height)},stop:function(){var t=e(this).resizable("instance"),i=t.options,s=t.containerOffset,a=t.containerPosition,n=t.containerElement,r=e(t.helper),o=r.offset(),h=r.outerWidth()-t.sizeDiff.width,l=r.outerHeight()-t.sizeDiff.height;t._helper&&!i.animate&&/relative/.test(n.css("position"))&&e(this).css({left:o.left-a.left-s.left,width:h,height:l}),t._helper&&!i.animate&&/static/.test(n.css("position"))&&e(this).css({left:o.left-a.left-s.left,width:h,height:l})}}),e.ui.plugin.add("resizable","alsoResize",{start:function(){var t=e(this).resizable("instance"),i=t.options,s=function(t){e(t).each(function(){var t=e(this);t.data("ui-resizable-alsoresize",{width:parseInt(t.width(),10),height:parseInt(t.height(),10),left:parseInt(t.css("left"),10),top:parseInt(t.css("top"),10)})})};"object"!=typeof i.alsoResize||i.alsoResize.parentNode?s(i.alsoResize):i.alsoResize.length?(i.alsoResize=i.alsoResize[0],s(i.alsoResize)):e.each(i.alsoResize,function(e){s(e)})},resize:function(t,i){var s=e(this).resizable("instance"),a=s.options,n=s.originalSize,r=s.originalPosition,o={height:s.size.height-n.height||0,width:s.size.width-n.width||0,top:s.position.top-r.top||0,left:s.position.left-r.left||0},h=function(t,s){e(t).each(function(){var t=e(this),a=e(this).data("ui-resizable-alsoresize"),n={},r=s&&s.length?s:t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(e,t){var i=(a[t]||0)+(o[t]||0);i&&i>=0&&(n[t]=i||null)}),t.css(n)})};"object"!=typeof a.alsoResize||a.alsoResize.nodeType?h(a.alsoResize):e.each(a.alsoResize,function(e,t){h(e,t)})},stop:function(){e(this).removeData("resizable-alsoresize")}}),e.ui.plugin.add("resizable","ghost",{start:function(){var t=e(this).resizable("instance"),i=t.options,s=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:""),t.ghost.appendTo(t.helper)},resize:function(){var t=e(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=e(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),e.ui.plugin.add("resizable","grid",{resize:function(){var t,i=e(this).resizable("instance"),s=i.options,a=i.size,n=i.originalSize,r=i.originalPosition,o=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,u=h[1]||1,d=Math.round((a.width-n.width)/l)*l,c=Math.round((a.height-n.height)/u)*u,p=n.width+d,m=n.height+c,f=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&m>s.maxHeight,v=s.minWidth&&s.minWidth>p,y=s.minHeight&&s.minHeight>m;s.grid=h,v&&(p+=l),y&&(m+=u),f&&(p-=l),g&&(m-=u),/^(se|s|e)$/.test(o)?(i.size.width=p,i.size.height=m):/^(ne)$/.test(o)?(i.size.width=p,i.size.height=m,i.position.top=r.top-c):/^(sw)$/.test(o)?(i.size.width=p,i.size.height=m,i.position.left=r.left-d):((0>=m-u||0>=p-l)&&(t=i._getPaddingPlusBorderDimensions(this)),m-u>0?(i.size.height=m,i.position.top=r.top-c):(m=u-t.height,i.size.height=m,i.position.top=r.top+n.height-m),p-l>0?(i.size.width=p,i.position.left=r.left-d):(p=u-t.height,i.size.width=p,i.position.left=r.left+n.width-p))}}),e.ui.resizable,e.widget("ui.selectable",e.ui.mouse,{version:"1.11.2",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var t,i=this;this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){t=e(i.options.filter,i.element[0]),t.addClass("ui-selectee"),t.each(function(){var t=e(this),i=t.offset();e.data(this,"selectable-item",{element:this,$element:t,left:i.left,top:i.top,right:i.left+t.outerWidth(),bottom:i.top+t.outerHeight(),startselected:!1,selected:t.hasClass("ui-selected"),selecting:t.hasClass("ui-selecting"),unselecting:t.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=t.addClass("ui-selectee"),this._mouseInit(),this.helper=e("<div class='ui-selectable-helper'></div>")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(t){var i=this,s=this.options;this.opos=[t.pageX,t.pageY],this.options.disabled||(this.selectees=e(s.filter,this.element[0]),this._trigger("start",t),e(s.appendTo).append(this.helper),this.helper.css({left:t.pageX,top:t.pageY,width:0,height:0}),s.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var s=e.data(this,"selectable-item");s.startselected=!0,t.metaKey||t.ctrlKey||(s.$element.removeClass("ui-selected"),s.selected=!1,s.$element.addClass("ui-unselecting"),s.unselecting=!0,i._trigger("unselecting",t,{unselecting:s.element}))}),e(t.target).parents().addBack().each(function(){var s,a=e.data(this,"selectable-item");return a?(s=!t.metaKey&&!t.ctrlKey||!a.$element.hasClass("ui-selected"),a.$element.removeClass(s?"ui-unselecting":"ui-selected").addClass(s?"ui-selecting":"ui-unselecting"),a.unselecting=!s,a.selecting=s,a.selected=s,s?i._trigger("selecting",t,{selecting:a.element}):i._trigger("unselecting",t,{unselecting:a.element}),!1):void 0}))},_mouseDrag:function(t){if(this.dragged=!0,!this.options.disabled){var i,s=this,a=this.options,n=this.opos[0],r=this.opos[1],o=t.pageX,h=t.pageY;return n>o&&(i=o,o=n,n=i),r>h&&(i=h,h=r,r=i),this.helper.css({left:n,top:r,width:o-n,height:h-r}),this.selectees.each(function(){var i=e.data(this,"selectable-item"),l=!1;
i&&i.element!==s.element[0]&&("touch"===a.tolerance?l=!(i.left>o||n>i.right||i.top>h||r>i.bottom):"fit"===a.tolerance&&(l=i.left>n&&o>i.right&&i.top>r&&h>i.bottom),l?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,s._trigger("selecting",t,{selecting:i.element}))):(i.selecting&&((t.metaKey||t.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),s._trigger("unselecting",t,{unselecting:i.element}))),i.selected&&(t.metaKey||t.ctrlKey||i.startselected||(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,s._trigger("unselecting",t,{unselecting:i.element})))))}),!1}},_mouseStop:function(t){var i=this;return this.dragged=!1,e(".ui-unselecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-unselecting"),s.unselecting=!1,s.startselected=!1,i._trigger("unselected",t,{unselected:s.element})}),e(".ui-selecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-selecting").addClass("ui-selected"),s.selecting=!1,s.selected=!0,s.startselected=!0,i._trigger("selected",t,{selected:s.element})}),this._trigger("stop",t),this.helper.remove(),!1}}),e.widget("ui.sortable",e.ui.mouse,{version:"1.11.2",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_isOverAxis:function(e,t,i){return e>=t&&t+i>e},_isFloating:function(e){return/left|right/.test(e.css("float"))||/inline|table-cell/.test(e.css("display"))},_create:function(){var e=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?"x"===e.axis||this._isFloating(this.items[0].item):!1,this.offset=this.element.offset(),this._mouseInit(),this._setHandleClassName(),this.ready=!0},_setOption:function(e,t){this._super(e,t),"handle"===e&&this._setHandleClassName()},_setHandleClassName:function(){this.element.find(".ui-sortable-handle").removeClass("ui-sortable-handle"),e.each(this.items,function(){(this.instance.options.handle?this.item.find(this.instance.options.handle):this.item).addClass("ui-sortable-handle")})},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").find(".ui-sortable-handle").removeClass("ui-sortable-handle"),this._mouseDestroy();for(var e=this.items.length-1;e>=0;e--)this.items[e].item.removeData(this.widgetName+"-item");return this},_mouseCapture:function(t,i){var s=null,a=!1,n=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(t),e(t.target).parents().each(function(){return e.data(this,n.widgetName+"-item")===n?(s=e(this),!1):void 0}),e.data(t.target,n.widgetName+"-item")===n&&(s=e(t.target)),s?!this.options.handle||i||(e(this.options.handle,s).find("*").addBack().each(function(){this===t.target&&(a=!0)}),a)?(this.currentItem=s,this._removeCurrentsFromItems(),!0):!1:!1)},_mouseStart:function(t,i,s){var a,n,r=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,r.cursorAt&&this._adjustOffsetFromHelper(r.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),r.containment&&this._setContainment(),r.cursor&&"auto"!==r.cursor&&(n=this.document.find("body"),this.storedCursor=n.css("cursor"),n.css("cursor",r.cursor),this.storedStylesheet=e("<style>*{ cursor: "+r.cursor+" !important; }</style>").appendTo(n)),r.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",r.opacity)),r.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",r.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!s)for(a=this.containers.length-1;a>=0;a--)this.containers[a]._trigger("activate",t,this._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!r.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){var i,s,a,n,r=this.options,o=!1;for(this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY<r.scrollSensitivity?this.scrollParent[0].scrollTop=o=this.scrollParent[0].scrollTop+r.scrollSpeed:t.pageY-this.overflowOffset.top<r.scrollSensitivity&&(this.scrollParent[0].scrollTop=o=this.scrollParent[0].scrollTop-r.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-t.pageX<r.scrollSensitivity?this.scrollParent[0].scrollLeft=o=this.scrollParent[0].scrollLeft+r.scrollSpeed:t.pageX-this.overflowOffset.left<r.scrollSensitivity&&(this.scrollParent[0].scrollLeft=o=this.scrollParent[0].scrollLeft-r.scrollSpeed)):(t.pageY-e(document).scrollTop()<r.scrollSensitivity?o=e(document).scrollTop(e(document).scrollTop()-r.scrollSpeed):e(window).height()-(t.pageY-e(document).scrollTop())<r.scrollSensitivity&&(o=e(document).scrollTop(e(document).scrollTop()+r.scrollSpeed)),t.pageX-e(document).scrollLeft()<r.scrollSensitivity?o=e(document).scrollLeft(e(document).scrollLeft()-r.scrollSpeed):e(window).width()-(t.pageX-e(document).scrollLeft())<r.scrollSensitivity&&(o=e(document).scrollLeft(e(document).scrollLeft()+r.scrollSpeed))),o!==!1&&e.ui.ddmanager&&!r.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t)),this.positionAbs=this._convertPositionTo("absolute"),this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),i=this.items.length-1;i>=0;i--)if(s=this.items[i],a=s.item[0],n=this._intersectsWithPointer(s),n&&s.instance===this.currentContainer&&a!==this.currentItem[0]&&this.placeholder[1===n?"next":"prev"]()[0]!==a&&!e.contains(this.placeholder[0],a)&&("semi-dynamic"===this.options.type?!e.contains(this.element[0],a):!0)){if(this.direction=1===n?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,i){if(t){if(e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t),this.options.revert){var s=this,a=this.placeholder.offset(),n=this.options.axis,r={};n&&"x"!==n||(r.left=a.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)),n&&"y"!==n||(r.top=a.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,e(this.helper).animate(r,parseInt(this.options.revert,10)||500,function(){s._clear(t)})}else this._clear(t,i);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},e(i).each(function(){var i=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[\-=_](.+)/);i&&s.push((t.key||i[1]+"[]")+"="+(t.key&&t.expression?i[1]:i[2]))}),!s.length&&t.key&&s.push(t.key+"="),s.join("&")},toArray:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},i.each(function(){s.push(e(t.item||this).attr(t.attribute||"id")||"")}),s},_intersectsWith:function(e){var t=this.positionAbs.left,i=t+this.helperProportions.width,s=this.positionAbs.top,a=s+this.helperProportions.height,n=e.left,r=n+e.width,o=e.top,h=o+e.height,l=this.offset.click.top,u=this.offset.click.left,d="x"===this.options.axis||s+l>o&&h>s+l,c="y"===this.options.axis||t+u>n&&r>t+u,p=d&&c;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>e[this.floating?"width":"height"]?p:t+this.helperProportions.width/2>n&&r>i-this.helperProportions.width/2&&s+this.helperProportions.height/2>o&&h>a-this.helperProportions.height/2},_intersectsWithPointer:function(e){var t="x"===this.options.axis||this._isOverAxis(this.positionAbs.top+this.offset.click.top,e.top,e.height),i="y"===this.options.axis||this._isOverAxis(this.positionAbs.left+this.offset.click.left,e.left,e.width),s=t&&i,a=this._getDragVerticalDirection(),n=this._getDragHorizontalDirection();return s?this.floating?n&&"right"===n||"down"===a?2:1:a&&("down"===a?2:1):!1},_intersectsWithSides:function(e){var t=this._isOverAxis(this.positionAbs.top+this.offset.click.top,e.top+e.height/2,e.height),i=this._isOverAxis(this.positionAbs.left+this.offset.click.left,e.left+e.width/2,e.width),s=this._getDragVerticalDirection(),a=this._getDragHorizontalDirection();return this.floating&&a?"right"===a&&i||"left"===a&&!i:s&&("down"===s&&t||"up"===s&&!t)},_getDragVerticalDirection:function(){var e=this.positionAbs.top-this.lastPositionAbs.top;return 0!==e&&(e>0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return 0!==e&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this._setHandleClassName(),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor===String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){function i(){o.push(this)}var s,a,n,r,o=[],h=[],l=this._connectWith();if(l&&t)for(s=l.length-1;s>=0;s--)for(n=e(l[s]),a=n.length-1;a>=0;a--)r=e.data(n[a],this.widgetFullName),r&&r!==this&&!r.options.disabled&&h.push([e.isFunction(r.options.items)?r.options.items.call(r.element):e(r.options.items,r.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),r]);for(h.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),s=h.length-1;s>=0;s--)h[s][0].each(i);return e(o)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=e.grep(this.items,function(e){for(var i=0;t.length>i;i++)if(t[i]===e.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[],this.containers=[this];var i,s,a,n,r,o,h,l,u=this.items,d=[[e.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):e(this.options.items,this.element),this]],c=this._connectWith();if(c&&this.ready)for(i=c.length-1;i>=0;i--)for(a=e(c[i]),s=a.length-1;s>=0;s--)n=e.data(a[s],this.widgetFullName),n&&n!==this&&!n.options.disabled&&(d.push([e.isFunction(n.options.items)?n.options.items.call(n.element[0],t,{item:this.currentItem}):e(n.options.items,n.element),n]),this.containers.push(n));for(i=d.length-1;i>=0;i--)for(r=d[i][1],o=d[i][0],s=0,l=o.length;l>s;s++)h=e(o[s]),h.data(this.widgetName+"-item",r),u.push({item:h,instance:r,width:0,height:0,left:0,top:0})},refreshPositions:function(t){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var i,s,a,n;for(i=this.items.length-1;i>=0;i--)s=this.items[i],s.instance!==this.currentContainer&&this.currentContainer&&s.item[0]!==this.currentItem[0]||(a=this.options.toleranceElement?e(this.options.toleranceElement,s.item):s.item,t||(s.width=a.outerWidth(),s.height=a.outerHeight()),n=a.offset(),s.left=n.left,s.top=n.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(i=this.containers.length-1;i>=0;i--)n=this.containers[i].element.offset(),this.containers[i].containerCache.left=n.left,this.containers[i].containerCache.top=n.top,this.containers[i].containerCache.width=this.containers[i].element.outerWidth(),this.containers[i].containerCache.height=this.containers[i].element.outerHeight();return this},_createPlaceholder:function(t){t=t||this;var i,s=t.options;s.placeholder&&s.placeholder.constructor!==String||(i=s.placeholder,s.placeholder={element:function(){var s=t.currentItem[0].nodeName.toLowerCase(),a=e("<"+s+">",t.document[0]).addClass(i||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===s?t.currentItem.children().each(function(){e("<td>&#160;</td>",t.document[0]).attr("colspan",e(this).attr("colspan")||1).appendTo(a)}):"img"===s&&a.attr("src",t.currentItem.attr("src")),i||a.css("visibility","hidden"),a},update:function(e,a){(!i||s.forcePlaceholderSize)&&(a.height()||a.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),a.width()||a.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10)))}}),t.placeholder=e(s.placeholder.element.call(t.element,t.currentItem)),t.currentItem.after(t.placeholder),s.placeholder.update(t,t.placeholder)},_contactContainers:function(t){var i,s,a,n,r,o,h,l,u,d,c=null,p=null;for(i=this.containers.length-1;i>=0;i--)if(!e.contains(this.currentItem[0],this.containers[i].element[0]))if(this._intersectsWith(this.containers[i].containerCache)){if(c&&e.contains(this.containers[i].element[0],c.element[0]))continue;c=this.containers[i],p=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0);if(c)if(1===this.containers.length)this.containers[p].containerCache.over||(this.containers[p]._trigger("over",t,this._uiHash(this)),this.containers[p].containerCache.over=1);else{for(a=1e4,n=null,u=c.floating||this._isFloating(this.currentItem),r=u?"left":"top",o=u?"width":"height",d=u?"clientX":"clientY",s=this.items.length-1;s>=0;s--)e.contains(this.containers[p].element[0],this.items[s].item[0])&&this.items[s].item[0]!==this.currentItem[0]&&(h=this.items[s].item.offset()[r],l=!1,t[d]-h>this.items[s][o]/2&&(l=!0),a>Math.abs(t[d]-h)&&(a=Math.abs(t[d]-h),n=this.items[s],this.direction=l?"up":"down"));if(!n&&!this.options.dropOnEmpty)return;if(this.currentContainer===this.containers[p])return this.currentContainer.containerCache.over||(this.containers[p]._trigger("over",t,this._uiHash()),this.currentContainer.containerCache.over=1),void 0;n?this._rearrange(t,n,null,!0):this._rearrange(t,null,this.containers[p].element,!0),this._trigger("change",t,this._uiHash()),this.containers[p]._trigger("change",t,this._uiHash(this)),this.currentContainer=this.containers[p],this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[p]._trigger("over",t,this._uiHash(this)),this.containers[p].containerCache.over=1}},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper)?e(i.helper.apply(this.element[0],[t,this.currentItem])):"clone"===i.helper?this.currentItem.clone():this.currentItem;return s.parents("body").length||e("parent"!==i.appendTo?i.appendTo:this.currentItem[0].parentNode)[0].appendChild(s[0]),s[0]===this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(!s[0].style.width||i.forceHelperSize)&&s.width(this.currentItem.width()),(!s[0].style.height||i.forceHelperSize)&&s.height(this.currentItem.height()),s},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&e.ui.ie)&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,a=this.options;"parent"===a.containment&&(a.containment=this.helper[0].parentNode),("document"===a.containment||"window"===a.containment)&&(this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,e("document"===a.containment?document:window).width()-this.helperProportions.width-this.margins.left,(e("document"===a.containment?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]),/^(document|window|parent)$/.test(a.containment)||(t=e(a.containment)[0],i=e(a.containment).offset(),s="hidden"!==e(t).css("overflow"),this.containment=[i.left+(parseInt(e(t).css("borderLeftWidth"),10)||0)+(parseInt(e(t).css("paddingLeft"),10)||0)-this.margins.left,i.top+(parseInt(e(t).css("borderTopWidth"),10)||0)+(parseInt(e(t).css("paddingTop"),10)||0)-this.margins.top,i.left+(s?Math.max(t.scrollWidth,t.offsetWidth):t.offsetWidth)-(parseInt(e(t).css("borderLeftWidth"),10)||0)-(parseInt(e(t).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,i.top+(s?Math.max(t.scrollHeight,t.offsetHeight):t.offsetHeight)-(parseInt(e(t).css("borderTopWidth"),10)||0)-(parseInt(e(t).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top])},_convertPositionTo:function(t,i){i||(i=this.position);var s="absolute"===t?1:-1,a="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,n=/(html|body)/i.test(a[0].tagName);return{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():n?0:a.scrollTop())*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():n?0:a.scrollLeft())*s}},_generatePosition:function(t){var i,s,a=this.options,n=t.pageX,r=t.pageY,o="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,h=/(html|body)/i.test(o[0].tagName);return"relative"!==this.cssPosition||this.scrollParent[0]!==document&&this.scrollParent[0]!==this.offsetParent[0]||(this.offset.relative=this._getRelativeOffset()),this.originalPosition&&(this.containment&&(t.pageX-this.offset.click.left<this.containment[0]&&(n=this.containment[0]+this.offset.click.left),t.pageY-this.offset.click.top<this.containment[1]&&(r=this.containment[1]+this.offset.click.top),t.pageX-this.offset.click.left>this.containment[2]&&(n=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(r=this.containment[3]+this.offset.click.top)),a.grid&&(i=this.originalPageY+Math.round((r-this.originalPageY)/a.grid[1])*a.grid[1],r=this.containment?i-this.offset.click.top>=this.containment[1]&&i-this.offset.click.top<=this.containment[3]?i:i-this.offset.click.top>=this.containment[1]?i-a.grid[1]:i+a.grid[1]:i,s=this.originalPageX+Math.round((n-this.originalPageX)/a.grid[0])*a.grid[0],n=this.containment?s-this.offset.click.left>=this.containment[0]&&s-this.offset.click.left<=this.containment[2]?s:s-this.offset.click.left>=this.containment[0]?s-a.grid[0]:s+a.grid[0]:s)),{top:r-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():h?0:o.scrollTop()),left:n-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():h?0:o.scrollLeft())}},_rearrange:function(e,t,i,s){i?i[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?t.item[0]:t.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var a=this.counter;this._delay(function(){a===this.counter&&this.refreshPositions(!s)})},_clear:function(e,t){function i(e,t,i){return function(s){i._trigger(e,s,t._uiHash(t))}}this.reverting=!1;var s,a=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(s in this._storedCSS)("auto"===this._storedCSS[s]||"static"===this._storedCSS[s])&&(this._storedCSS[s]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!t&&a.push(function(e){this._trigger("receive",e,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||t||a.push(function(e){this._trigger("update",e,this._uiHash())}),this!==this.currentContainer&&(t||(a.push(function(e){this._trigger("remove",e,this._uiHash())}),a.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),a.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer)))),s=this.containers.length-1;s>=0;s--)t||a.push(i("deactivate",this,this.containers[s])),this.containers[s].containerCache.over&&(a.push(i("out",this,this.containers[s])),this.containers[s].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,t||this._trigger("beforeStop",e,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.cancelHelperRemoval||(this.helper[0]!==this.currentItem[0]&&this.helper.remove(),this.helper=null),!t){for(s=0;a.length>s;s++)a[s].call(this,e);this._trigger("stop",e,this._uiHash())}return this.fromOutside=!1,!this.cancelHelperRemoval},_trigger:function(){e.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var i=t||this;return{helper:i.helper,placeholder:i.placeholder||e([]),position:i.position,originalPosition:i.originalPosition,offset:i.positionAbs,item:i.currentItem,sender:t?t.element:null}}})});

var acyJquery = jQuery.noConflict();
if(oldjQuery) window.jQuery = oldjQuery;
js/jquery/index.html000060400000000054152455614210010474 0ustar00<html><body bgcolor="#FFFFFF"></body></html>js/acymailing_compat.js000060400000017003152455614210011200 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.7.0
 * @author     acyba.com
 * @copyright  (C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

var acymailing_js = {
		currentBox: null,
		submitFct: null,
		submitBox: function(data) {
			var t = this, d = document, w = window;
			if( t.submitFct ) {
				try {
					t.submitFct(data);
				} catch(err) {}
			}
			t.closeBox();
		},
		deleteId: function(id) {
			var t = this, d = document, el = id;
			if( typeof(id) == "string") {
				el = d.getElementById(id);
			}
			if(!el)
				return;
			el.parentNode.removeChild(el);
		},
		dup: function(tplName, htmlblocks, id, extraData, appendTo) {
			var d = document, tplElem = d.getElementById(tplName),
					container = tplElem.parentNode;
			if(!tplElem) return;
			elem = tplElem.cloneNode(true);
			if(!appendTo) {
				container.insertBefore(elem, tplElem);
			} else {
				if(typeof(appendTo) == "string")
					appendTo = d.getElementById(appendTo);
				appendTo.appendChild(elem);
			}
			elem.style.display = "";
			elem.id = '';
			if(id)
				elem.id = id;
			for(var k in htmlblocks) {
				elem.innerHTML = elem.innerHTML.replace(new RegExp("{"+k+"}","g"), htmlblocks[k]);
				elem.innerHTML = elem.innerHTML.replace(new RegExp("%7B"+k+"%7D","g"), htmlblocks[k]);
			}
			if(extraData) {
				for(var k in extraData) {
					elem.innerHTML = elem.innerHTML.replace(new RegExp('{'+k+'}','g'), extraData[k]);
					elem.innerHTML = elem.innerHTML.replace(new RegExp('%7B'+k+'%7D','g'), extraData[k]);
				}
			}
		},
		deleteRow: function(id) {
			var t = this, d = document, el = id;
			if( typeof(id) == "string") {
				el = d.getElementById(id);
			} else {
				while(el != null && el.tagName.toLowerCase() != 'tr') {
					el = el.parentNode;
				}
			}
			if(!el)
				return;
			var table = el.parentNode;
			table.removeChild(el);
			if( table.tagName.toLowerCase() == 'tbody' )
				table = table.parentNode;
			t.cleanTableRows(table);
			return;
		},
		dupRow: function(tplName, htmlblocks, id, extraData) {
			var d = document, tplLine = d.getElementById(tplName),
					tableUser = tplLine.parentNode;
			if(!tplLine) return;
			trLine = tplLine.cloneNode(true);
			tableUser.appendChild(trLine);
			trLine.style.display = "";
			trLine.id = "";
			if(id)
				trLine.id = id;
			for(var i = tplLine.cells.length - 1; i >= 0; i--) {
				if(trLine.cells[i]) {
					for(var k in htmlblocks) {
						trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp("{"+k+"}","g"), htmlblocks[k]);
						trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp("%7B"+k+"%7D","g"), htmlblocks[k]);
					}
					if(extraData) {
						for(var k in extraData) {
							trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp('{'+k+'}','g'), extraData[k]);
							trLine.cells[i].innerHTML = trLine.cells[i].innerHTML.replace(new RegExp('%7B'+k+'%7D','g'), extraData[k]);
						}
					}
				}
			}
			if(tplLine.className == "row0") tplLine.className = "row1";
			else if(tplLine.className == "row1") tplLine.className = "row0";
		},
		cleanTableRows: function(id) {
			var d = document, el = id;
			if(typeof(id) == "string")
				el = d.getElementById(id);
			if(el == null || el.tagName.toLowerCase() != 'table')
				return;

			var k = 0, c = '', line = null, lines = el.getElementsByTagName('tr');
			for(var i = 0; i < lines.length; i++) {
				line = lines[i];
				if( line.style.display != "none") {
					c = ' '+line.className+' ';
					if( c.indexOf(' row0 ') >= 0 || c.indexOf(' row1 ') >= 0 ) {
						line.className = c.replace(' row'+(1-k)+' ', ' row'+k+' ').replace(/^\s*|\s*$/g, '');
						k = 1 - k;
					}
				}
			}
		},
		checkRow: function(id) {
			var t = this, d = document, el = id;
			if(typeof(id) == "string")
				el = d.getElementById(id);
			if(el == null || el.tagName.toLowerCase() != 'input')
				return;
			if(this.clicked) {
				this.clicked = null;
				t.isChecked(el);
				return;
			}
			el.checked = !el.checked;
			t.isChecked(el);
		},
		isChecked: function(id,cancel) {
			var d = document, el = id;
			if(typeof(id) == "string")
				el = d.getElementById(id);
			if(el.form.boxchecked) {
				if(el.checked)
					el.form.boxchecked.value++;
				else
					el.form.boxchecked.value--;
			}
		},
		checkAll: function(checkbox, stub) {
			stub = stub || 'cb';
			if(checkbox.form) {
				var cb = checkbox.form, c = 0;
				for(var i = 0, n = cb.elements.length; i < n; i++) {
					var e = cb.elements[i];
					if (e.type == checkbox.type) {
						if ((stub && e.id.indexOf(stub) == 0) || !stub) {
							e.checked = checkbox.checked;
							c += (e.checked == true ? 1 : 0);
						}
					}
				}
				if (cb.boxchecked) {
					cb.boxchecked.value = c;
				}
				return true;
			}
			return false;
		},
		submitform: function(task, form, extra) {
			var d = document;
			if(typeof form == 'string') {
				var f = d.getElementById(form);
				if(!f)
					f = d.getElementByName(form);
				if(!f)
					return true;
				form = f;
			}
			if(task) {
				form.task.value = task;
			}
			if(typeof form.onsubmit == 'function')
				form.onsubmit();
			form.submit();
			return false;
		},
		get: function(elem, target) {
			window.Oby.xRequest(elem.getAttribute('href'), {update: target});
			return false;
		},
		form: function(elem, target) {
			var data = window.Oby.getFormData(target);
			window.Oby.xRequest(elem.getAttribute('href'), {update: target, mode: 'POST', data: data});
			return false;
		},
		openBox: function(elem, url, jqmodal) {
			var w = window;
			if(typeof(elem) == "string")
				elem = document.getElementById(elem);
			if(!elem)
				return false;
			try {
				if(jqmodal === undefined || typeof(jQuery) == "undefined")
					jqmodal = false;
				if(!jqmodal && w.SqueezeBox !== undefined) {
					if(url !== undefined) {
						elem.href = url;
					}
					if(w.SqueezeBox.open !== undefined){
						SqueezeBox.open(elem, {parse: 'rel'});
					}else if(w.SqueezeBox.fromElement !== undefined){
						SqueezeBox.fromElement(elem);
					}
				} else {
					var id = elem.getAttribute('id');
					this.currentBox = id;
					jQuery('#modal-' + id).modal('show');
					if(url) {
						if(document.getElementById('modal-' + id + '-container'))
							jQuery('#modal-' + id + '-container').find('iframe').attr('src', url);
						else
							jQuery('#modal-' + id).find('iframe').attr('src', url);
					}
				}
			} catch(e) {}
			return false;
		},
		closeBox: function(parent) {
			var d = document, w = window;
			if(parent) {
				d = window.parent.document;
				w = window.parent;
			}
			try {
				var e = d.getElementById('sbox-window');
				if(e && typeof(e.close) != "undefined") {
					e.close();
				}else if(typeof(w.jQuery) != "undefined" && w.jQuery('div.modal.in') && w.jQuery('div.modal.in').hasClass('in')){
					w.jQuery('div.modal.in').modal('hide');
				}else if(w.SqueezeBox !== undefined) {
					w.SqueezeBox.close();
				}
			} catch(err) {}
		},
		tabSelect: function(m,c,id) {
			var d = document, sub = null;
			if(typeof m == 'string')
				m = d.getElementById(m);
			if(typeof id == 'string')
				id = d.getElementById(id);
			sub = m.getElementsByTagName('div');
			for(var i = sub.length - 1; i >= 0; i--) {
				if(sub[i].getAttribute('class') == c) {
					sub[i].style.display = 'none';
				}
			}
			id.style.display = '';
		},
		getOffset: function(el) {
			var x = 0, y = 0;
			while(el && !isNaN( el.offsetLeft ) && !isNaN( el.offsetTop )) {
				x += el.offsetLeft - el.scrollLeft;
				y += el.offsetTop - el.scrollTop;
				el = el.offsetParent;
			}
			return { top: y, left: x };
		}
	};
js/acyeditor.js000060400000237107152455614210007514 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */


var largeurMenuInline = 524;
var hauteurEditeurMin = 500;

var acyeditor_fullmode = false;
var acyeditor_listmode = false;
var acyeditor_templatemode = false;
var acyeditor_articlemode = false;
var typeCtrl;
var rangeIE;
var debutSelection;
var finSelection;
var rangeIE2;
var anchorNodeIE;
var realstylesheetpath;
var isJoomla2_5 = false;
var isJoomla3 = false;
var isBack = false;
var isTagAllowed = false;
var tooltipTemplateDelete;
var tooltipTemplateText;
var tooltipTemplatePicture;
var tooltipShowAreas;
var templateShown = false;
var urlAcyeditor;
var boutonTags = "toolbar-tag";
var boutonMediaBrowser = "toolbar-popup-Acymediabrowser";
var acyVersion = "5.9.6";
var pasteType = "plain";
var acyEnterMode = "br";
var urlSite = "";
var titleBtnMore = "";
var txtSup = "";
var titleSup = "";
var titleEd = "";
var titleBtnDupliAfter = "";
var defaultText = "Write your text here";
var inlineSource = 1;
var zoneActionActive;
var confirmInitAreas = "";
var tooltipInitAreas = "";
var tooltipTemplateSortable = "";
var ckFileVersion = "";
var confirmDeleteBtnTxt = "";
var confirmCancelBtnTxt = "";
var idDivShared = "editorSpace";
var picker;

var initIE = false;
function Initialisation(id, type, urlBase, urlAdminBase, cssUrl, forceComplet, modeList, modeTemplate, modeArticle, joomla2_5, joomla3, back, tagAllowed, texteSuppression, titleSuppression, titleEdition, titleTemplateDelete, titleTemplateText, titleTemplatePicture, titleShowAreas, ckEditorFileVersion){
	txtSup = texteSuppression;
	titleSup = titleSuppression;
	titleEd = titleEdition;

	initIE = false;
	acyJquery.noConflict();
	editor = undefined;
	realstylesheetpath = cssUrl;
	isJoomla2_5 = joomla2_5;
	isJoomla3 = joomla3;
	isBack = (back == 1);
	isTagAllowed = (tagAllowed == 1);
	typeCtrl = type;
	acyeditor_listmode = modeList;
	acyeditor_templatemode = modeTemplate;
	acyeditor_articlemode = modeArticle;
	tooltipTemplateDelete = titleTemplateDelete;
	tooltipTemplateText = titleTemplateText;
	tooltipTemplatePicture = titleTemplatePicture;
	tooltipShowAreas = titleShowAreas;
	urlAcyeditor = "plugins/editors/acyeditor/acyeditor/";
	ckFileVersion = ckEditorFileVersion;

	if(!isJoomla2_5 && !isJoomla3){
		urlAcyeditor = "plugins/editors/acyeditor/";
	}
	if(!isBack){
		boutonTags = "acybuttontag";
		boutonMediaBrowser = "acybuttonmediabrowser";
	}

	var popupMediaBrowserContainer = parent.document.getElementById(boutonMediaBrowser);
	var popupTagContainer = parent.document.getElementById(boutonTags);

	if(isBrowserIE7() || isBrowserIE8()){

		if(popupTagContainer != null
		 && popupTagContainer != undefined
		 && popupTagContainer.children[0] != null
		 && popupTagContainer.children[0] != undefined){
			popupTagContainer.children[0].addEventListener("click", function (){ IeCursorFix(true); });
		}

		if(popupMediaBrowserContainer != null
		 && popupMediaBrowserContainer != undefined
		 && popupMediaBrowserContainer.children[0] != null
		 && popupMediaBrowserContainer.children[0] != undefined){
			popupMediaBrowserContainer.children[0].addEventListener("click", function (){ IeCursorFix(true); });
		}
	}else{

		if(popupTagContainer != null
		 && popupTagContainer != undefined
		 && popupTagContainer.children[0] != null
		 && popupTagContainer.children[0] != undefined){
			popupTagContainer.children[0].addEventListener("click", function (){ IeCursorFix(); });
		}

		if(popupMediaBrowserContainer != null
		 && popupMediaBrowserContainer != undefined
		 && popupMediaBrowserContainer.children[0] != null
		 && popupMediaBrowserContainer.children[0] != undefined){
			popupMediaBrowserContainer.children[0].addEventListener("click", function (){ IeCursorFix(); });
		}
	}

	qs = document.location.search.split("+").join(" ");
	var params = {},
			tokens,
			re = /[?&]?([^=]+)=([^&]*)/g;

	while (tokens = re.exec(qs)){
			params[decodeURIComponent(tokens[1])] = decodeURIComponent(tokens[2]);
	}

	if(params['tmpl']){
		if(params['tmpl']=='component')
			var inPopup = true;
	}


	if(acyJquery('#AcyLienImage')[0] == null || acyJquery('#AcyLienImage')[0] == undefined){
		var lienImage = document.createElement("a");
		lienImage.id = "AcyLienImage";
		if(inPopup)
				endUrl='&inpopup=true';
		lienImage.href = "index.php?option=com_acymailing&tmpl=component&ctrl=editor&task=browse&e_name=ACY_NAME_AREA&image_zone=true" + endUrl;
		if(!isBack){
			lienImage.href = "index.php?option=com_acymailing&tmpl=component&ctrl=fronteditor&task=browse&e_name=ACY_NAME_AREA&image_zone=true" + endUrl;
		}
		lienImage.onclick = function(){ acymailing.openpopup(lienImage.href,850,600); return false; };
		if(inPopup)
			lienImage.onclick = function(){ acymailing.openpopup(lienImage.href,700,460); return false; };
		lienImage.style.display = "none";

		document.body.appendChild(lienImage);
	}
	if(acyJquery('#AcyLienTag')[0] == null || acyJquery('#AcyLienTag')[0] == undefined){
		var lienTag = document.createElement("a");
		lienTag.id = "AcyLienTag";
		lienTag.href = "index.php?option=com_acymailing&ctrl=tag&task=tag&tmpl=component&type=" + typeCtrl;
		if(!isBack){
			lienTag.href = urlBase + "index.php?option=com_acymailing&ctrl=fronttag&task=tag&tmpl=component&type=" + typeCtrl;
		}
		lienTag.onclick = function(){ acymailing.openpopup(lienTag.href,780,550); return false; };
		lienTag.style.display = "none";
		document.body.appendChild(lienTag);
	}

	if(acyJquery('#AcyLienMediaBrowser')[0] == null || acyJquery('#AcyLienMediaBrowser')[0] == undefined){
			var lienMediaBrowser = document.createElement("a");
			lienMediaBrowser.id = "AcyLienMediaBrowser";
			var endUrl='';
			if(inPopup)
				endUrl='&inpopup=true';
			lienMediaBrowser.href = "index.php?option=com_acymailing&tmpl=component&ctrl=editor&task=browse&e_name=ACY_NAME_AREA" + endUrl;
			if(!isBack){
				lienMediaBrowser.href = urlBase + "index.php?option=com_acymailing&tmpl=component&ctrl=fronteditor&task=browse&e_name=ACY_NAME_AREA" + endUrl;
			}

			lienMediaBrowser.onclick = function(){ acymailing.openpopup(lienMediaBrowser.href,850,600); return false; };
			if(inPopup)
				lienMediaBrowser.onclick = function(){ acymailing.openpopup(lienMediaBrowser.href,700,460); return false; };

			lienMediaBrowser.style.display = "none";
			document.body.appendChild(lienMediaBrowser);
	}

	var idIframe = id + "_ifr";
	var textArea = acyJquery('#' + id)[0];
	var divParent = acyJquery('#' + idIframe)[0];

	if(divParent != null && divParent != undefined){
		divParent.outerHTML = "";
	}

	divParent = document.createElement("div");
	divParent.style.width = textArea.style.width;
	divParent.style.height = textArea.style.height;
	divParent.id = idIframe;
	divParent.innerHTML = textArea.value;
	textArea.parentElement.appendChild(divParent);

	var acyedition = (acyJquery('#' + idIframe).find(".acyeditor_delete").length > 0
					 || acyJquery('#' + idIframe).find(".acyeditor_text").length > 0
					 || acyJquery('#' + idIframe).find(".acyeditor_picture").length > 0);

	if(acyedition && forceComplet != 1){
		acyeditor_fullmode = false;
		var iframe = document.createElement("iframe");

		if(isBrowserIE())
			iframe.src = "";

		iframe.frameBorder = '0';
		divParent.parentElement.appendChild(iframe);

		var code = divParent.innerHTML;
		var width = divParent.style.width;
		var height = divParent.style.height;
		divParent.outerHTML = "";
		iframe.id = idIframe;

		iframe.onload = function(){
			if(isBrowserIE() && !initIE){
				initIE = true;
				var markup = '<!DOCTYPE html><html></html>';
				iframe.contentWindow.document.open();
				iframe.contentWindow.document.write(markup);
				iframe.contentWindow.document.close();
			}
				ChargementIframe(iframe, urlBase, code, width, height, id, texteSuppression, titleSuppression, titleEdition, urlAdminBase, realstylesheetpath);
		};

		if(!isBrowserIE())
			iframe.src ="";
	}else{
		acyeditor_fullmode = true;

		var hauteur = acyJquery('#' + idIframe).height() - 70 + "px";
		var largeur = "100%";

		var code = divParent.innerHTML;
		divParent.innerHTML = "<textarea id='edition_en_cours' style='width:100%;height:100%'></textarea>";
		if(acyeditor_articlemode){
			largeur = acyJquery(".adminform").width() + "px";
			hauteur = "150px";
		}
		if(acyeditor_listmode){
			largeur = acyJquery(".adminform").width() - 65 + "px";
			hauteur = "127px";
		}

		var extraPluginsCKEditor = 'resize';
		var toolbarGroupsCKEditor = [
				{ name: 'tools' },
				{ name: 'mode' },
				{ name: 'undo' },
				{ name: 'links' }];


		extraPluginsCKEditor += ',acymediabrowser';

		if(!acyeditor_listmode && isTagAllowed){
			extraPluginsCKEditor += ',addtag';
			if(emojis) {
				extraPluginsCKEditor += ',smiley';
				toolbarGroupsCKEditor.push({name: 'insert', groups: ["acymediabrowser", "addtag", "smiley"]});
			}else{
				toolbarGroupsCKEditor.push({name: 'insert', groups: ["acymediabrowser", "addtag"]});
			}
		}else{
			if(emojis) {
				extraPluginsCKEditor += ',smiley';
				toolbarGroupsCKEditor.push({ name: 'insert', groups: [ "acymediabrowser", "smiley" ]});
			}else{
				toolbarGroupsCKEditor.push({ name: 'insert', groups: [ "acymediabrowser" ]});
			}
		}
		toolbarGroupsCKEditor.push({ name: 'basicstyles',   groups: [ 'basicstyles', 'cleanup' ] },
									{ name: 'colors' },
									{ name: 'paragraph',   groups: [ 'list', 'indent' ] },
									{ name: 'align' },
									{ name: 'styles' });
		if(acyeditor_templatemode){
			extraPluginsCKEditor += ',templatemode';
			toolbarGroupsCKEditor.push({ name: 'templatemode', groups: [ "textarea", "picturearea", "deletearea", "-", "showarea" ]});
		}

		if(pasteType == 'plain'){
			pastePlain = true;
			pasteWordSimple = false;
		}else if(pasteType == 'simpleStyle'){
			pastePlain = false;
			pasteWordSimple = true;
		}

		if(acyEnterMode == 'p'){
			enterM = CKEDITOR.ENTER_P;
		}else if(acyEnterMode == 'div'){
			enterM = CKEDITOR.ENTER_DIV;
		}else{
			enterM = CKEDITOR.ENTER_BR;
		}

		extraPluginsCKEditor += ',codemirror';
		var codemirrorOptions = {
			showFormatButton: false,
			showCommentButton: false,
			showUncommentButton: false,
			showAutoCompleteButton: false
		};

		editor = CKEDITOR.replace("edition_en_cours",{
			toolbarGroups : toolbarGroupsCKEditor,
			height : hauteur,
			width : largeur,
			baseHref : urlBase,
			filebrowserImageUploadUrl : urlBase + urlAcyeditor + 'kcfinder/upload.php?type=images',
			removeButtons: 'Cut,Copy,Paste,Blockquote,HorizontalRule,SpecialChar,Symbol',
			removePlugins: 'liststyle,tabletools,image,forms,sourcedialog,contextmenu',
			sharedSpaces: { top: idDivShared },
			extraPlugins: extraPluginsCKEditor,
			forcePasteAsPlainText: pastePlain,
			pasteFromWordRemoveFontStyles: pasteWordSimple,
			codemirror: codemirrorOptions,
			enterMode: enterM
		});

		if(cssUrl != null){ editor.config.contentsCss = urlBase + cssUrl; }

		editor.setData(code);
		editor.on('instanceReady',function(e){
			var iframe = acyJquery('#edition_en_cours')[0].parentElement.getElementsByTagName('iframe')[0];
			editor.on('paste', function(e){ IeCursorFix(); });
			iframe.contentWindow.document.body.onkeyup = function (){ IeCursorFix(); };
			iframe.contentWindow.document.body.onclick = function (){ IeCursorFix(); };
			rangeIE = undefined;
			IeCursorFix();

			if(realstylesheetpath == null || realstylesheetpath == undefined || realstylesheetpath == ""){
				var headEditor = iframe.contentWindow.document;
				headEditor = headEditor.head || headEditor;
				var linkCss = headEditor.getElementsByTagName("link")[0];
				acyJquery(linkCss).removeAttr("href");
			}else{
				var headEditor = iframe.contentWindow.document;
				headEditor = headEditor.head || headEditor;
				var linkCss = headEditor.getElementsByTagName("link")[0];
				SetStyleSheetEnBoucle(linkCss, urlBase, realstylesheetpath, Date.now());
			}

			ShowTemplateCss(true);

			editor.on('selectionChange', function(e){ IeCursorFix(); });

			editor.on('mode',function(e){
				var iframe = acyJquery('#' + id)[0].parentElement.getElementsByTagName("iframe")[0];
				if(iframe != undefined){
					var headEditor = iframe.contentWindow.document;
					headEditor = headEditor.head || headEditor;
					var linkCss = headEditor.getElementsByTagName("link")[0];
					if(realstylesheetpath != null && realstylesheetpath != undefined && realstylesheetpath != ""){
						SetStyleSheetEnBoucle(linkCss, urlBase, realstylesheetpath, Date.now());
					}else{
						acyJquery(linkCss).removeAttr("href");
					}
					if(acyeditor_templatemode){
						ShowTemplateCss(templateShown);
						SetStateForSelection();
					}
				}
				var textarea = acyJquery('#cke_edition_en_cours .cke_inner .cke_contents textarea')[0];
				if(textarea != undefined){
					textarea.title = "";
					textarea.parentElement.style.paddingRight = "5px";
				}
			});

			var editorBody = acyJquery('#' + id + '_ifr')[0];
			if(editorBody != undefined){
				editorBody.style.width = "100%";
				if(acyeditor_articlemode && isJoomla3){
					editorBody.style.marginBottom = "27px";
				}
			}

			setTimeout(function(){
				acyJquery("body")[0].onresize = function(e){
					acyJquery("#cke_edition_en_cours")[0].style.width = "10px";
					acyJquery("#cke_edition_en_cours")[0].style.width = acyJquery("#edition_en_cours")[0].parentElement.clientWidth - 10 + "px";
				};
			}, 500);

			acyJquery("#edition_en_cours")[0].parentElement.style.height = "";
		});

		var listeForms = document.getElementsByTagName('form');
		for (indexForm = 0; indexForm < listeForms.length; ++indexForm){
			listeForms[indexForm].onsubmit = function (){ OnSubmit(id); };
		}
	}

	CKEDITOR.on('instanceCreated', function(ev){
		var editor = ev.editor;

		editor.on('pluginsLoaded', function(){

			if(!CKEDITOR.dialog.exists('myDialog')){
				var href = document.location.href.split('/');
				href.pop();
				href.push('assets/my_dialog.js');
				href = href.join('/');

				CKEDITOR.dialog.add('myDialog', href);
			}

			editor.addCommand('myDialogCmd', new CKEDITOR.dialogCommand('myDialog'));

			editor.ui.add('MyButton', CKEDITOR.UI_BUTTON, {
				label: 'My Dialog',
				command: 'myDialogCmd'
			});
		});
	});
}

function ChargementIframe(iframe, urlBase, code, width, height, id, texteSuppression, titleSuppression, titleEdition, urlAdminBase, stylesheetpath){
	iframe.contentWindow.document.body.innerHTML = code;
	iframe.frameborder = "0";
	iframe.allowtransparency = "true";
	iframe.style.width = width;
	iframe.style.height = height;
	var header = acyJquery('#' + iframe.id).contents().find("head")[0];
	var base1 = document.createElement("base");
	base1.href = urlBase;
	header.appendChild(base1);
	var script1 = document.createElement("script");
	script1.type = "text/javascript";
	script1.src = urlBase + urlAcyeditor + "ckeditor/ckeditor.js?v=" + ckFileVersion;
	header.appendChild(script1);
	var link1 = document.createElement("link");
	var link2 = document.createElement("link");
	link1.type = "text/css"; link2.type = "text/css";
	link1.rel = "stylesheet"; link2.rel = "stylesheet";
	link1.href = urlBase + urlAcyeditor + "css/acyeditor.css?v=" + acyVersion;
	if(stylesheetpath != null && stylesheetpath != undefined && stylesheetpath != ""){
		link2.href = urlBase + stylesheetpath + "?time=" + Date.now();
	}
	link2.id = "acy_template_css";
	header.appendChild(link1); header.appendChild(link2);

	InitContent(id, texteSuppression, titleSuppression, titleEdition, urlAdminBase);

	var containerEditor = '<div id="'+idDivShared+'" class="acyeditor_sharedspace" style="z-index:9999; position:fixed; left:0; right:0; top:0; box-shadow: 0px 2px 10px rgba(98, 98, 98, 0.51);"></div><div class="acyeditor_sharedspace" style="padding-bottom:80px;"></div>';
	acyJquery(iframe).contents().find('body').prepend(containerEditor);
}

function InitContent(id, texteSuppression, titleSuppression, titleEdition, urlAdminBase){
	var idIframe = id + "_ifr";

	CreationDesZones(id, texteSuppression, titleSuppression, titleEdition, urlAdminBase);
	SetEditablesElements(id);

	SetImagesId(id);

	document.getElementsByTagName('body')[0].onclick = function (e){ CheckDeselection(id, e); hideActionButtons(id, e, 'outside', false);};

	var listeForms = document.getElementsByTagName('form');
	for (indexForm = 0; indexForm < listeForms.length; ++indexForm){
		listeForms[indexForm].onsubmit = function (){ CheckDeselection(id); };
	}
	acyJquery('#' + idIframe)[0].contentWindow.document.onclick = function (e){ CheckDeselection(id, e); hideActionButtons(id, e, 'editor', false); };

	setTimeout(function(){
		ResizeIframe(id);
	}, 100);

	if(isBrowserIE()){
		acyJquery('#' + idIframe).contents().find(".acyeditor_picture").hover(
			function (){
				if(acyJquery(this)[0].className.indexOf("acyeditor_enedition") < 0){
					acyJquery(this).addClass('acyeditor_editablehover');
					acyJquery(this).find(".acyeditor_zoneeditionsuppression").addClass('acyeditor_zoneeditionsuppressionhover');
				}
			},
			function(){
				acyJquery(this).removeClass('acyeditor_editablehover');
				acyJquery(this).find(".acyeditor_zoneeditionsuppression").removeClass('acyeditor_zoneeditionsuppressionhover');
			}
		);
		acyJquery('#' + idIframe).contents().find(".acyeditor_text").hover(
			function (){
				if(acyJquery(this)[0].className.indexOf("acyeditor_enedition") < 0){
					acyJquery(this).addClass('acyeditor_editablehover');
					acyJquery(this).find(".acyeditor_zoneeditionsuppression").addClass('acyeditor_zoneeditionsuppressionhover');
				}
			},
			function(){
				acyJquery(this).removeClass('acyeditor_editablehover');
				acyJquery(this).find(".acyeditor_zoneeditionsuppression").removeClass('acyeditor_zoneeditionsuppressionhover');
			}
		);
		acyJquery('#' + idIframe).contents().find(".acyeditor_delete").hover(
			function (){
				if(acyJquery(this)[0].className.indexOf("acyeditor_enedition") < 0){
					acyJquery(this).find(".acyeditor_zoneeditionsuppression").addClass('acyeditor_zoneeditionsuppressionhover');
				}
			},
			function(){
				acyJquery(this).find(".acyeditor_zoneeditionsuppression").removeClass('acyeditor_zoneeditionsuppressionhover');
			}
		);
	}
}

function getPreviousSelection(){
	var id = 'editor_body';
	try{
		var acyframe = acyJquery('#' + id, window.parent.document)[0].parentElement.getElementsByTagName('iframe')[0];
	}catch(err){
		var acyframe = acyJquery('#editor_body_ifr')[0];
	}
	var previousSelection = {}, sel = acyframe.contentWindow.getSelection();
	for(var k in sel){
		if(typeof(sel[k]) != 'function')
			previousSelection[k] = sel[k];
	}
	previousSelection.range_0 = sel.getRangeAt(0);

	return previousSelection;
}

function insertImageTag(tag,previousSelection){
	try{
		jInsertEditorText(tag,'edition_en_cours',previousSelection);
		return true;
	}catch(err){
		try{
			jInsertEditorText(tag,'editor_body',previousSelection);
			return true;
		}catch(err){
			alert('Your editor does not enable AcyMailing to automatically insert the tag, please copy/paste it manually in your Newsletter');
			return false;
		}
	}
}

function getSelectedHTML(editor){
	var id = acyJquery('#htmlfieldset')[0] != null ? acyJquery('#htmlfieldset')[0].getElementsByTagName("textarea")[0].id : "edition_en_cours";
	var element = GetElement(id, editor)[0];
	if(element == null || element == undefined){
		element = $(editor);
	}
	return element.innerHTML;
}

function jInsertEditorText(text, editor, previousSelection){
	var id = acyJquery('#htmlfieldset')[0] != null ? acyJquery('#htmlfieldset')[0].getElementsByTagName("textarea")[0].id : "edition_en_cours";
	var element = GetElement(id, editor)[0];
	if(element == null || element == undefined){
		element = document.getElementById(editor);
	}
	insertAtCursor(element, text,previousSelection);
}

function insertAtCursor(myField, myValue, previousSelection){

	var id = acyJquery('#htmlfieldset')[0] != null ? acyJquery('#htmlfieldset')[0].getElementsByTagName("textarea")[0].id : "edition_en_cours";

	if(myField.className.indexOf("acyeditor_picture") >= 0){
		GetElement(id, myField.id).removeClass('acyeditor_picture');
		var zone = GetElement(id, "ZoneEditionSuppression_" + myField.id);
		if(zone[0] != null && zone[0] != undefined){
			EffaceZone(zone[0]);
			zone.remove();
		}
		if(myValue == undefined){
			myValue = "";
		}


		var width = 0;
		if(myField.width >0){
			width = myField.width;
		}else if(myField.style.width > 0){
			width = myField.style.width;
		}else{
			width = myField.clientWidth;
		}

		myField.innerHTML = myValue;
		var images = myField.getElementsByTagName("img");

		for (indexImage = 0; indexImage < images.length; ++indexImage){
			if(images[indexImage].width > width){
				images[indexImage].width = width;
				images[indexImage].height = images[indexImage].clientHeight;
			}
		}
		if(zone[0] != null && zone[0] != undefined){
			myField.appendChild(zone[0]);
		}

		AdapteTaille(id, zone);
		GetElement(id, myField.id).addClass('acyeditor_picture');
		Sauvegarde(id);
		ResizeIframe(id);
	}else{
		try{
			var acyframe = acyJquery('#' + id)[0].parentElement.getElementsByTagName("iframe")[0];
		}catch(err){
			var acyframe = acyJquery('#editor_body_ifr')[0];
		}
		if(acyframe != null
		 && acyframe != undefined
		 && acyframe.contentWindow != null
		 && acyframe.contentWindow != undefined
		 && acyframe.contentWindow.getSelection){

			var sel = acyframe.contentWindow.getSelection();

			try{
				range = sel.getRangeAt(0);
			}catch(err){
				try{
					range = previousSelection.range_0;
				}catch(err2){
					range = false;
				}
			}
			if(sel.anchorNode == null && previousSelection){
				range = previousSelection.range_0;
				var sel = previousSelection;
			}

			var newNode = acyframe.contentWindow.document.createElement("div");
			newNode.innerHTML = myValue;
			if(isBrowserIE()
			 && rangeIE != undefined){
				rangeIE.deleteContents();
				while (newNode.childNodes.length > 0){
					rangeIE.insertNode(newNode.childNodes[newNode.childNodes.length - 1]);
				}
				if(editor != null && editor != undefined){
					editor.fire('saveSnapshot');
				}
			}else if(isEnEdition(sel.anchorNode) && range && sel.rangeCount){
				range.deleteContents();
				while (newNode.childNodes.length > 0){
					range.insertNode(newNode.childNodes[newNode.childNodes.length - 1]);
				}
				if(editor != null && editor != undefined){
					editor.fire('saveSnapshot');
				}
			}else{
				AjoutTagDansSujet(myValue);
			}
		}else if(acyframe != null
				&& acyframe != undefined
				&& acyframe.contentWindow.document != null
				&& acyframe.contentWindow.document != undefined
				&& acyframe.contentWindow.document.selection
				&& isBrowserIE()
				&& rangeIE != undefined
				&& rangeIE.parentElement
				&& isInForm(id, rangeIE.parentElement())){
			if(isJoomla3
			 && (isBrowserIE7() || isBrowserIE8())
			 && debutSelection >= 0 && finSelection >= 0
			 && (acyframe.contentWindow.document.selection.createRange().parentElement
				&& isInForm(id, acyframe.contentWindow.document.selection.createRange().parentElement())
			 	|| !acyeditor_fullmode)
			&& rangeIE.text.length != ""){
				rangeIE.moveStart('character', debutSelection);
				rangeIE.moveEnd('character', -finSelection);
			}
			try{
				rangeIE.pasteHTML(myValue);
			}
			catch (e){
				rangeIE.text = myValue;
			}
			if(editor != null && editor != undefined){
				editor.fire('saveSnapshot');
			}
		}else{
			AjoutTagDansSujet(myValue);
		}
	}
}

function AjoutTagDansSujet(myValue){
	var subjectObj = acyJquery("#subject");
	if(subjectObj.prop("tagName").toLowerCase() == "span"){
		subjectObj.html(subjectObj.html() + myValue);
	}else{
		subjectObj.val(subjectObj.val() + myValue);
	}
}

function isEnEdition(element){
	var enedition = true;
	if(acyeditor_fullmode == false){
		enedition = false;
		var parent = element;
		while (parent != null && parent != undefined){
			if(parent.className != null && parent.className != undefined && parent.className.indexOf("acyeditor_enedition") >= 0){
				enedition = true;
			}
			parent = parent.parentElement || parent.parentNode;
		}
	}
	return enedition;
}

function isInForm(id, element){
	var inForm = false;
	var parent = element;
	var idForm = acyJquery("#" + id)[0].parentElement.id;
	var acyframe = acyJquery("#" + id + "_ifr")[0].contentWindow;
	if(acyframe == undefined){
		acyframe = acyJquery(".cke_wysiwyg_frame")[0].contentWindow;
	}
	while (parent != null && parent != undefined){
		if(parent.id == idForm
		 || acyframe != undefined
		 && (parent.id != "" && acyframe.document.getElementById(parent.id) != null
			|| parent.className != undefined && parent.className.indexOf("cke_editable") >= 0)){
			inForm = true;
		}
		parent = parent.parentElement || parent.parentNode;
	}
	return inForm;
}

function isBrowserIE(){
	return (navigator.appName=="Microsoft Internet Explorer" || navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0);
}

function isBrowserIE7(){
	return (navigator.appName=="Microsoft Internet Explorer" &&
			navigator.appVersion.indexOf("MSIE 7.0") >= 0);
}

function isBrowserIE8(){
	return (navigator.appName=="Microsoft Internet Explorer" &&
			navigator.appVersion.indexOf("MSIE 8.0") >= 0);
}

function IeCursorFix(avecPosition){
	debutSelection = -1;
	finSelection = -1;
	if(isBrowserIE()){
		var id = acyJquery('#htmlfieldset')[0] != null ? acyJquery('#htmlfieldset')[0].getElementsByTagName("textarea")[0].id : "edition_en_cours";
		try{
			var acyframe = acyJquery('#' + id)[0].parentElement.getElementsByTagName("iframe")[0];
		}catch(err){
			var acyframe = acyJquery('#editor_body_ifr')[0];
		}
		if(acyframe != null
		 && acyframe != undefined
		 && acyframe.contentWindow != null
		 && acyframe.contentWindow != undefined
		 && acyframe.contentWindow.getSelection){
			rangeIE = undefined;
			var sel = acyframe.contentWindow.getSelection();
			if(isEnEdition(sel.anchorNode) && sel.getRangeAt && sel.rangeCount){
				rangeIE = sel.getRangeAt(0);
			}
		}else if(acyframe != null
				&& acyframe != undefined
				&& acyframe.contentWindow.document != null
				&& acyframe.contentWindow.document != undefined
				&& acyframe.contentWindow.document.selection){
			if(acyframe.contentWindow.document.selection.createRange().parentElement){
				anchorNodeIE = acyframe.contentWindow.document.selection.createRange().parentElement();
			}
			if(avecPosition
			 || rangeIE == undefined
			 || acyframe.contentWindow.document.selection.createRange().parentElement
			 && isEnEdition(acyframe.contentWindow.document.selection.createRange().parentElement())){
				var nouvelleSelection = acyframe.contentWindow.document.selection;
				var bonElement = (nouvelleSelection.type != "Control");
				if((rangeIE == undefined
					|| !avecPosition
					|| rangeIE.text != nouvelleSelection.createRange().text)
				 && bonElement){
					rangeIE = nouvelleSelection.createRange();
					rangeIE2 = nouvelleSelection.createRange();
				}

				if(isJoomla3 && bonElement && avecPosition && (isBrowserIE7() || isBrowserIE8())){
					var textComplet = rangeIE.parentElement().innerText;
					if(textComplet.length > rangeIE.text.length){
						for (indexDebut = 0; indexDebut < textComplet.length; ++indexDebut){
							rangeIE2.moveToBookmark(rangeIE.getBookmark());
							var longueurInitiale = rangeIE2.text.length;
							rangeIE2.moveStart('character', -indexDebut);
							var longueurIntermediaire = rangeIE2.text.length;
							var indexFin = textComplet.length - rangeIE2.text.length;
							rangeIE2.moveEnd('character', indexFin);
							if(rangeIE2.text.length > textComplet.length){
								rangeIE2.moveEnd('character', -(rangeIE2.text.length - textComplet.length));
							}
							if(rangeIE2.text.length < textComplet.length){
								rangeIE2.moveEnd('character', -(textComplet.length - rangeIE2.text.length));
							}
							var longueurFinale = rangeIE2.text.length;
							if(rangeIE2.text == textComplet){
								debutSelection = indexDebut;
								finSelection = indexFin;

								indexDebut = textComplet.length + 1;
							}
						}
					}else{
						debutSelection = 0;
						finSelection = 0;
					}
				}
			}
		}else{
			rangeIE = undefined;
		}
	}
	return true;
}

function setEditorStylesheet(id, stylesheeturl, stylesheetpath){
	realstylesheetpath = stylesheetpath;
	rangeIE = undefined;
	var idIframe = id + "_ifr";
	var linkCss = GetElement(id, "acy_template_css")[0];
	if(editor != undefined){
		editor.config.contentsCss = urlSite+stylesheetpath;
	}
	if(linkCss == undefined){
		if(editor != undefined){
			editor.on('instanceReady',function(){
				var iframe = acyJquery('#' + id)[0].parentElement.getElementsByTagName("iframe")[0];
				if(iframe != undefined){
					var headEditor = iframe.contentWindow.document;
					headEditor = headEditor.head || headEditor;
					var base = headEditor.getElementsByTagName("base")[0];
					linkCss = headEditor.getElementsByTagName("link")[0];
					SetStyleSheetEnBoucle(linkCss, base.href, stylesheetpath, Date.now());
				}
			});
		}
	}else if(stylesheetpath != null && stylesheetpath != undefined && stylesheetpath != ""){
		linkCss.href = linkCss.baseURI + stylesheetpath + "?time=" + Date.now();
	}
}

function SetStyleSheetEnBoucle(linkCss, urlBase, stylesheetpath, date){
	SetStyleSheet(linkCss, urlBase, stylesheetpath, date);
	setTimeout(function(){
		SetStyleSheet(linkCss, urlBase, stylesheetpath, date);
	}, 200);
	setTimeout(function(){
		SetStyleSheet(linkCss, urlBase, stylesheetpath, date);
	}, 500);
	setTimeout(function(){
		SetStyleSheet(linkCss, urlBase, stylesheetpath, date);
	}, 1500);
}
function SetStyleSheet(linkCss, urlBase, stylesheetpath, date){
	if(stylesheetpath.indexOf("template_0.css")<0){
		linkCss.href = urlBase+stylesheetpath+"?time=" + date;
	}
}

function ResizeIframe(id){
	if(acyeditor_listmode){
		var iframe = acyJquery('#' + id)[0].parentElement.getElementsByTagName("iframe")[0];
		var textarea = acyJquery('#edition_en_cours')[0];
		if(iframe != undefined && textarea != undefined){
			var innerHeight = iframe.contentWindow.document.body.clientHeight;
			if(innerHeight < hauteurEditeurMin){
				innerHeight = hauteurEditeurMin;
			}
			iframe.parentElement.style.height = innerHeight + 90 + "px";
			textarea.parentElement.style.height = "";
			var editorBody = acyJquery('#' + id + '_ifr')[0];
			editorBody.style.width = "100%";
		}
	}else{
		var iframe = acyJquery('#' + id)[0].parentElement.getElementsByTagName("iframe")[0];
		var editorBody = acyJquery('#' + id + '_ifr')[0];
		var htmlfieldset = acyJquery('#htmlfieldset')[0];
		if(iframe != undefined && editorBody != undefined && htmlfieldset != undefined){

			editorBody.style.width = "100%";

			if(acyeditor_fullmode){
				var innerHeight = iframe.contentWindow.document.body.clientHeight;
				if(innerHeight < hauteurEditeurMin){
					innerHeight = hauteurEditeurMin;
				}
				iframe.parentElement.style.height = innerHeight + 90 + "px";
				editorBody.style.height = "";
				htmlfieldset.style.height = "";

			}else{
				var innerHeight = iframe.contentWindow.document.body.children[0].clientHeight;
				if(innerHeight < hauteurEditeurMin){
					innerHeight = hauteurEditeurMin;
				}
				editorBody.style.height = innerHeight + 80 + "px";
				htmlfieldset.style.height = "";
			}
		}
	}
}

function OnSubmit(id){
	if(acyeditor_templatemode){
		SetTitleTemplate(true);
	}

	acyJquery('#' + id)[0].value = (editor != null && editor != undefined) ? editor.getData() : "";
}

function SetEditablesElements(id){
	var idIframe = id + "_ifr";
	var elements = acyJquery('#' + idIframe)[0].contentWindow.document.body.getElementsByTagName('*');
	for (i = 0; i < elements.length; ++i){
		var element = elements[i];
		if(element.className.indexOf("acyeditor_text") >= 0
		 && element.onclick == null){
			if(element.id == null || element.id == '' || element.id == undefined){
				element.id = GetNewId(id);
			}
			SetOnClick(id, element);
		}
	}
}

function SetImagesId(id){
	var idIframe = id + "_ifr";
	var elements = acyJquery('#' + idIframe)[0].contentWindow.document.body.getElementsByTagName('img');
	for (indexImagesId = 0; indexImagesId < elements.length; ++indexImagesId){
		var element = elements[indexImagesId];
		if(element.id == null || element.id == '' || element.id == undefined){
			element.outerHTML = element.outerHTML.replace("<img ", "<img id=\"" + GetNewId(id) + "\" ");
		}else{
			element.outerHTML = element.outerHTML;
		}
	}
}

function CreationDesZones(id, texteSuppression, titleSuppression, titleEdition, urlBase){
	var idIframe = id + "_ifr";
	var elementsZones = acyJquery('#' + idIframe)[0].contentWindow.document.body.getElementsByTagName('*');

	CreateSortableAreas(id);

	for (indexZone = 0; indexZone < elementsZones.length; ++indexZone){
		var elementZone = elementsZones[indexZone];
		CreationZone(id, elementZone, texteSuppression, titleSuppression, titleEdition, urlBase);
	}
}

function CreateSortableAreas(id){
	try{
		var idIframe = id + "_ifr";
		var test = acyJquery('#' + idIframe)[0].contentWindow.document.body;
		if(acyJquery(test).find(".acyeditor_sortable").length <= 0){ return; }
		acyJquery(test).find(".acyeditor_sortable").sortable({
			revert: true,
			scroll: false,
			cursor: 'move',
			handle: '.acyeditor_btnmove',
			placeholder: "placeholder", // class added on drop area
			stop: function(event, ui){
				hideActionButtons(id, null, 'noClick', false);
				InitContent(id, txtSup, titleSup, titleEd, urlSite);
				Sauvegarde(id);
				ResizeIframe(id);
			}
		});
	} catch(err){
		alert('Error can\'t add sortable areas: '+err);
	}
}


function CreationZone(id, element , texteSuppression, titleSuppression, titleEdition, urlBase){
	if(acyJquery(element).hasClass("acyeditor_delete")
	 || acyJquery(element).hasClass("acyeditor_text")
	 || acyJquery(element).hasClass("acyeditor_picture")){
		if(element.id == null || element.id == '' || element.id == undefined){
			element.id = GetNewId(id);
		}

		if(element.tagName == "TR"){
			if(acyJquery(element).hasClass("acyeditor_delete")){
				var elementTDEditables = acyJquery(element).find("td:not(td.acyeditor_text), td:not(td.acyeditor_picture)");
				if(elementTDEditables.length == 0){
					elementTDEditables = element.children;
				}
				for (j = 0; j < elementTDEditables.length; ++j){
					var sousElementsTD = elementTDEditables[j];
					if(sousElementsTD.tagName == "TD"){
						if(sousElementsTD.id == null || sousElementsTD.id == '' || sousElementsTD.id == undefined){
							sousElementsTD.id = GetNewId(id);
						}

						GetElement(id, sousElementsTD.id).addClass("acyeditor_delete");
						CreationZone(id, sousElementsTD , texteSuppression, titleSuppression, titleEdition, urlBase);
						GetElement(id, sousElementsTD.id).removeClass("acyeditor_delete");
					}
				}
			}
		}else if(acyJquery(element).find(".acyeditor_delete").length
				 + acyJquery(element).find(".acyeditor_text").length
				 + acyJquery(element).find(".acyeditor_picture").length == 0){
			if(Existe(id, "ZoneEditionSuppression_" + element.id) == false && acyJquery(element).closest('table').hasClass('actionbutton') == false){
				var zone = document.createElement("div");
				zone.id = "ZoneEditionSuppression_" + element.id;
				zone.style.position = "absolute";
				element.appendChild(zone);
				GetElement(id, zone.id).addClass('acyeditor_zoneeditionsuppression');
				if(acyJquery(element).hasClass("acyeditor_text")
				 || acyJquery(element).hasClass("acyeditor_picture")){
					if(acyJquery(element).hasClass('acyeditor_picture')){
						zone.onclick = function (){
							if(!acyJquery(element).hasClass('nepasediter')){
								acyJquery('#AcyLienImage')[0].href = acyJquery('#AcyLienImage')[0].href.replace('ACY_NAME_AREA', element.id);
								FireClick(acyJquery('#AcyLienImage')[0]);
								acyJquery('#AcyLienImage')[0].href = acyJquery('#AcyLienImage')[0].href.replace(element.id, 'ACY_NAME_AREA');
							}else if(!isBrowserIE()){
								acyJquery(element).removeClass('nepasediter');
							}
						};
						if(isBrowserIE()){
							zone.parentElement.onclick = function (){
								if(!acyJquery(element).hasClass('nepasediter')){
									acyJquery('#AcyLienImage')[0].href = acyJquery('#AcyLienImage')[0].href.replace('ACY_NAME_AREA', element.id);
									FireClick(acyJquery('#AcyLienImage')[0]);
									acyJquery('#AcyLienImage')[0].href = acyJquery('#AcyLienImage')[0].href.replace(element.id, 'ACY_NAME_AREA');
								}else{
									acyJquery(element).removeClass('nepasediter');
								}
							};
						}
					}

					var zoneBoutonEdition = document.createElement("div");
					zoneBoutonEdition.id = "zone_bouton_edition_" + zone.id;
					zoneBoutonEdition.style.position = "absolute";
					zone.appendChild(zoneBoutonEdition);
					acyJquery(zoneBoutonEdition).addClass("acyeditor_zoneboutonedition");
					var boutonEdition = document.createElement("div");
					boutonEdition.id = "BoutonEdition_" + element.id;
					boutonEdition.title = titleEdition;
					zoneBoutonEdition.appendChild(boutonEdition);
					if(acyJquery(element).hasClass('acyeditor_picture')){
						acyJquery(boutonEdition).addClass("acyeditor_editpicture");
					}else{
						acyJquery(boutonEdition).addClass("acyeditor_edittext");
					}
				}
				if(acyJquery(element).hasClass("acyeditor_delete")){
					var zoneBoutonSuppression = document.createElement("div");
					zoneBoutonSuppression.id = "zone_bouton_suppression_" + zone.id;
					zoneBoutonSuppression.style.position = "absolute";
					zone.appendChild(zoneBoutonSuppression);
					acyJquery(zoneBoutonSuppression).addClass("acyeditor_zoneeditdelete");
					var boutonSuppression = document.createElement("div");
					boutonSuppression.id = "BoutonSuppression_" + element.id;
					boutonSuppression.title = titleSuppression;
					boutonSuppression.onclick = function (){
						confirmSuppression(id, element, boutonSuppression, texteSuppression);
					};
					zoneBoutonSuppression.appendChild(boutonSuppression);
					zone.onmousemove = function(e){ CheckToujoursAuDessus(id, e); };
					GetElement(id, boutonSuppression.id).addClass("acyeditor_editdelete");

					CreateZoneMore(zone, element, id, zoneBoutonSuppression);
				}

				SetMouseOver(id, zone);
				AdapteTaille(id, zone);
			}
		}else{
			GetElement(id, element.id).removeClass("acyeditor_delete");
			GetElement(id, element.id).removeClass("acyeditor_text");
			GetElement(id, element.id).removeClass("acyeditor_picture");
		}
	}
}

function CreateZoneMore(zone, element, id, zoneBoutonSuppression){
	if(acyJquery(zoneBoutonSuppression).closest('.acyeditor_sortable').length > 0){
		var btnMove = document.createElement("div");
		btnMove.id = "BoutonMove_" + element.id;
		btnMove.title = 'Move';
		btnMove.className = "acyeditor_btnmove";
		zoneBoutonSuppression.appendChild(btnMove);
	}

	var btnPlus = document.createElement("div");
	btnPlus.id = "BoutonPlus_" + element.id;
	btnPlus.title = titleBtnDupliAfter; //titleBtnMore;
	btnPlus.className = "acyeditor_btnplus";
	acyJquery(btnPlus).on('click', function (evt){
		var zoneBody = acyJquery('#' + id + "_ifr")[0].contentWindow.document.body.getElementsByTagName('*');
		acyJquery(zoneBody).find('.acyeditor_text').addClass('nepasediter');
		acyJquery(zoneBody).find('.acyeditor_picture').addClass('nepasediter');

		try{
			GetElement(id, btnPlus.parentElement.parentElement.parentElement.parentElement.id).children().addClass('noOpacity');
		} catch(err){
			GetElement(id, btnPlus.parentElement.parentElement.parentElement.id).addClass('noOpacity');
		}

		zoneActionActive = btnPlus;

			acyJquery(zoneBoutonSuppression).closest('acyeditor_delete').addClass('nepasediter');
			elem = acyJquery(zoneBoutonSuppression).closest('.acyeditor_delete');
			elemCopy = elem.clone();
			acyJquery(elemCopy).find('.acyeditor_zoneeditionsuppression').remove();

			elemCopy[0].id = "";
			elementsZones = acyJquery(elemCopy).find('*');
			for (var indexZone = 0; indexZone < elementsZones.length; ++indexZone){
				elementsZones[indexZone].id = "";
			}
			acyJquery(elem).after(elemCopy);
			InitContent(id, txtSup, titleSup, titleEd, urlSite);
			Sauvegarde(id);
			ResizeIframe(id);

	});
	zoneBoutonSuppression.appendChild(btnPlus);

	var lineTr = acyJquery(zoneBoutonSuppression).closest('tr');
	if(lineTr.length != 0){
		var btnMore = document.createElement("div");
		btnMore.id = "BoutonMore_" + element.id;
		btnMore.title = titleBtnMore; //titleBtnMore;
		btnMore.className = "acyeditor_btnmore";
		acyJquery(btnMore).on('click', function (evt){
			var zoneBody = acyJquery('#' + id + "_ifr")[0].contentWindow.document.body.getElementsByTagName('*');
			acyJquery(zoneBody).find('.acyeditor_text').addClass('nepasediter');
			acyJquery(zoneBody).find('.acyeditor_picture').addClass('nepasediter');
			acyJquery(zoneBoutonSuppression).closest('acyeditor_delete').addClass('nepasediter');
			addActionsButtons(id, zoneBoutonSuppression, evt);
		});
		zoneBoutonSuppression.appendChild(btnMore);
	}
}

var blockHide = false;
function addActionsButtons(id, zoneBoutonSuppression, evt){
	var zoneBody = acyJquery('#' + id + "_ifr")[0].contentWindow.document.body;
	var iframe = acyJquery('#' + id + "_ifr")[0];
	hideActionButtons(id, null, 'noClick', true);
	acyJquery(zoneBody.childNodes).addClass("acyeditor_disable");
	var zoneFade = document.createElement("div");
	zoneFade.style.position = "absolute";
	zoneFade.className = "acyeditor_mask";
	zoneFade.style.width = zoneBody.clientWidth + "px";
	zoneFade.style.height = zoneBody.clientHeight + "px";

	var isColorPickEnabled = acyJquery('.colorpicker');
	zoneFade.onclick = function(){ if(!blockHide && isColorPickEnabled.length == 0){ hideAll(id); }};
	zoneFade.id = "zoneFade";

	var zoneAction = document.createElement("div");
	zoneAction.style.position = "absolute";
	zoneAction.className = "acyeditor_action";
	zoneAction.id = "zoneAction";
	blockHide = true;
	if(evt != null && evt != undefined){
		if(evt.clientX + 142 <= iframe.clientWidth){
			zoneAction.style.left = evt.clientX - 50 + "px";
		}else{
			zoneAction.style.left = iframe.clientWidth - 142 + "px";
		}
		if(evt.layerY != undefined && evt.layerY > 0 && evt.layerY != evt.clientY){
			decaY = evt.layerY;
		}else if(evt.offsetY != undefined){
			decaY = evt.offsetY;
		}else{
			decaY = 0;
		}

		var scrollValue = acyJquery(iframe).contents().find('body').scrollTop();
		zoneAction.style.top = scrollValue + evt.clientY - decaY + "px";
	}


	var lineTr = acyJquery(zoneBoutonSuppression).closest('tr');
	if(lineTr.length != 0){
		var legendBground = document.createElement("p");
		acyJquery(legendBground).text(bgroundColorTxt + ':');
		legendBground.id = 'legendBground';
		var colorSelectorContainer = document.createElement("span");
		colorSelectorContainer.id = "colorSelectorContainer";
		var colorSelector = document.createElement("div");
		colorSelector.id = "colorSelector";
		var colorSelectorInput = document.createElement("input");
		colorSelectorInput.id = "colorSelectorInput";
		var colorStr = acyJquery(lineTr).find('td').css('background-color');
		acyJquery(colorSelector).css('background-color', '#' + rgb2hex(colorStr));

		var options = {
			color: rgb2hex(colorStr)
		};


		colorSelectorInput.value = '#' + rgb2hex(colorStr);
		picker = acyJquery(colorSelectorContainer).colorpicker(options);

		acyJquery('#' + id + "_ifr").contents().find('body').on('click', function(){
			picker.colorpicker('hide');
		});

		acyJquery(colorSelectorInput).on('change', function(){
			picker.colorpicker('setValue', colorSelectorInput.value);
		});

		picker.on('changeColor.colorpicker', function(event){
			blockHide = true;
			var elem = acyJquery(zoneBoutonSuppression).closest('.acyeditor_delete');
			var rgbObject = event.color.toRGB();
			var rgbString = 'rgb(' + rgbObject.r + ', ' + rgbObject.g + ', ' + rgbObject.b + ')';

			acyJquery(elem).find('td').css('background-color', event.color.toHex());
			acyJquery(colorSelector).css('background-color', event.color.toHex());
			colorSelectorInput.value = event.color.toHex();
			InitContent(id, txtSup, titleSup, titleEd, urlSite);
			Sauvegarde(id);
			ResizeIframe(id);

			var styleInline = acyJquery(elem).find('td').attr('style');
			styleInline = styleInline.replace(rgbString, event.color.toHex());
			acyJquery(elem).find('td').attr('style', styleInline);
		});

		picker.on('showPicker.colorpicker', function(event){
			var iframe = acyJquery('#' + id + "_ifr");
			var scrollValue = acyJquery(iframe).contents().find('body').scrollTop();
			var offsetParent = iframe.offset();
			var offsetButton = acyJquery(iframe[0].contentWindow.document.body).find('#colorSelector').offset();
			var widthColorpicker = acyJquery('.colorpicker').width()-25;
			acyJquery('.colorpicker').css('top', Number(offsetParent.top	-scrollValue+offsetButton.top+40) + 'px');
			acyJquery('.colorpicker').css('left', Number(offsetParent.left+offsetButton.left-widthColorpicker) + 'px');
		});

		zoneAction.appendChild(legendBground);
		colorSelectorContainer.appendChild(colorSelectorInput);
		colorSelectorContainer.appendChild(colorSelector);
		zoneAction.appendChild(colorSelectorContainer);
	}
	var closeButton = document.createElement('div');
	closeButton.id = 'closeButton';
	closeButton.className = 'acyeditor_closebutton';
	acyJquery(closeButton).on('click', function (evt){
		hideColorPicker();
		hideAll(id);
		InitContent(id, txtSup, titleSup, titleEd, urlSite);
		Sauvegarde(id);
		ResizeIframe(id);
		});
	zoneAction.appendChild(closeButton);


	zoneFade.appendChild(zoneAction);
	zoneBody.appendChild(zoneFade);
}

function hideColorPicker(){
	var pickers = acyJquery('.colorpicker');
	for (var i = 0; i < pickers.length; i++){
		pickers[i].style.display = 'none';
	}
}
function rgb2hex(rgb){
	rgb = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i);
	return (rgb && rgb.length === 4) ? ("0" + parseInt(rgb[1],10).toString(16)).slice(-2) +
	("0" + parseInt(rgb[2],10).toString(16)).slice(-2) +
	("0" + parseInt(rgb[3],10).toString(16)).slice(-2) : '';
}

function duplicateZone(id, zoneCopy, action){
	acyJquery(zoneCopy).closest('acyeditor_delete').addClass('nepasediter');
	elem = acyJquery(zoneCopy).closest('.acyeditor_delete');
	elemCopy = elem.clone();
	acyJquery(elemCopy).find('.acyeditor_zoneeditionsuppression').remove();

	elemCopy[0].id = "";
	elementsZones = acyJquery(elemCopy).find('*');
	for (indexZone = 0; indexZone < elementsZones.length; ++indexZone){
		elementsZones[indexZone].id = "";
	}

	if(action == 'before'){
		acyJquery(elem).before(elemCopy);
	}else{
		acyJquery(elem).after(elemCopy);
	}

	hideActionButtons(id, null, 'noClick', false);
	InitContent(id, txtSup, titleSup, titleEd, urlSite);
}

function hideAll(id){
	if(acyJquery('#' + id + "_ifr")[0].tagName !== "IFRAME"){
		var zoneBody = acyJquery('#' + id + "_ifr")[0].getElementsByTagName('IFRAME')[0].contentWindow.document.body;
	}else{
		var zoneBody = acyJquery('#' + id + "_ifr")[0].contentWindow.document.body;
	}
	acyJquery(zoneBody).children('.acyeditor_disable').removeClass('acyeditor_disable');
	var zoneGlob = zoneBody.getElementsByTagName('*');
	acyJquery(zoneGlob).remove('.acyeditor_mask');
}

function hideActionButtons(id, e, zoneClick, protectEditor){
	if(e && ((e.srcElement && acyJquery(e.srcElement).closest('.colorpicker').length > 0) || (e.target && acyJquery(e.target).closest('.colorpicker').length > 0))) return;
	var canHide = false;
	if(zoneClick == 'editor'){
		if(e != null && e != undefined){
			srcEvent = e.srcElement ? e.srcElement : (e.target ? e.target : e);
			parentDelete = acyJquery(srcEvent).closest('.acyeditor_delete');
			if(parentDelete == null || parentDelete == undefined){
				canHide == true;
			}else if(zoneActionActive != null){
				childActive = acyJquery(parentDelete).find('#' + zoneActionActive.id);
				if(childActive[0] == null || childActive[0] == undefined) canHide = true;
			}
		}else{
			canHide = true;
		}
	}

	if(zoneClick == 'outside' || zoneClick == 'noClick' || canHide){
		if(acyJquery('#' + id + "_ifr")[0].tagName !== "IFRAME"){
			zoneBody = acyJquery('#' + id + "_ifr")[0].getElementsByTagName('IFRAME')[0].contentWindow.document.body;
		}else{
			zoneBody = acyJquery('#' + id + "_ifr")[0].contentWindow.document.body;
		}
		acyJquery(zoneBody).children('.acyeditor_disable').removeClass('acyeditor_disable');
		var zoneGlob = zoneBody.getElementsByTagName('*');
		acyJquery('.acyeditor_action').remove();
		acyJquery(zoneGlob).find('.noOpacity').removeClass('noOpacity');
		if(protectEditor == false) acyJquery(zoneGlob).find('.nepasediter').removeClass('nepasediter');
	}
	if(zoneClick == 'outside') hideAll(id);
}

function FireClick(itemElement, arretRecursif){
	if(isBrowserIE7() || isBrowserIE8()){
		var popupTagContainer = parent.document.getElementById(boutonTags);
		var popupMediaBrowserContainer = parent.document.getElementById(boutonMediaBrowser);
		if(popupTagContainer != null
		 && popupTagContainer != undefined
		 && popupTagContainer.children[0] != null
		 && popupTagContainer.children[0] != undefined){
			popupTagContainer.children[0].onclick = function (){ IeCursorFix(); };
		}

		if(popupMediaBrowserContainer != null
		 && popupMediaBrowserContainer != undefined
		 && popupMediaBrowserContainer.children[0] != null
		 && popupMediaBrowserContainer.children[0] != undefined){
			popupMediaBrowserContainer.children[0].onclick = function (){ IeCursorFix(); };
		}

	}
	try{
		itemElement.click();
	}
	catch (err){
		try{
			var ev = new Event({type: "click", target: itemElement, srcElement: itemElement});
			itemElement.fireEvent("click", ev);
		}
		catch (err2){
			itemElement.fireEvent("click");
		}
	}

	if((isBrowserIE7() || isBrowserIE8()) && isJoomla3 && arretRecursif != true && itemElement.id != "AcyLienImage"){
		setTimeout(function(){
			IeCursorFix();
			SetIgnoreDeselection();
			FireClick(itemElement, true);
		}, 100);
	}else if(isBrowserIE7() || isBrowserIE8()){
		popupTagContainer = parent.document.getElementById(boutonTags);
		popupMediaBrowserContainer = parent.document.getElementById(boutonMediaBrowser);
		if(popupTagContainer != null
		 && popupTagContainer != undefined
		 && popupTagContainer.children[0] != null
		 && popupTagContainer.children[0] != undefined){
			popupTagContainer.children[0].onclick = function (){ IeCursorFix(true); };
		}

		if(popupMediaBrowserContainer != null
		 && popupMediaBrowserContainer != undefined
		 && popupMediaBrowserContainer.children[0] != null
		 && popupMediaBrowserContainer.children[0] != undefined){
			popupMediaBrowserContainer.children[0].onclick = function (){ IeCursorFix(true); };
		}
	}
}

function CheckToujoursAuDessus(id, e){

	var iframe = acyJquery('#' + id + '_ifr');

	e = e || iframe[0].contentWindow.event;
	var target = e.currentTarget || e.srcElement;
	var parent = GetElement(id, target.parentElement.id);
	var leftElement = parent.offset().left;
	var topElement = parent.offset().top;
	var widthElement = parent.outerWidth();
	var heightElement = parent.outerHeight();

	if(e.pageX < leftElement
	 || e.pageX > leftElement + widthElement
	 || e.pageY < topElement
	 || e.pageY > topElement + heightElement){
		EffaceZone(target);
	}
}

function EffaceZone(zone){
	if(zone != null && zone != undefined){
		var enfants = zone.getElementsByTagName("*");
		for (i = 0; i < enfants.length; ++i){
			enfants[i].style.display = "none";
		}
		zone.style.width = "0px";
		zone.style.height = "0px";
		zone.style.borderStyle = "hidden";
	}
}
function confirmSuppression(id, element, boutonSuppression, texteSuppression){
	GetElement(id, boutonSuppression.parentElement.parentElement.parentElement.id).addClass('nepasediter');

	var zoneBody = acyJquery('#' + id + "_ifr")[0].contentWindow.document.body;
	var zoneFade = document.createElement("div");
	zoneFade.style.position = "absolute";
	zoneFade.className = "acyeditor_mask";
	zoneFade.style.width = acyJquery('#htmlfieldset').width() - 20 + "px";
	zoneFade.style.height = acyJquery('#htmlfieldset').height() - 20 + "px";
	zoneFade.id = "zoneFade";

	var offsettop = acyJquery(boutonSuppression).offset().top;
	var offsetleft = acyJquery(boutonSuppression).offset().left - 400;

	var confirmBox = document.createElement('div');
	confirmBox.id = 'confirmBox';
	confirmBox.className = 'confirmBox';
	confirmBox.style.top = offsettop + 'px';
	confirmBox.style.left = offsetleft + 'px';
	var confirmContent = document.createElement('div');
	confirmContent.id = 'acy_popup_content';
	var confirmTxt = document.createElement('span');
	confirmTxt.id = 'confirmTxt';
	confirmTxt.className = 'confirmTxt';
	confirmTxt.innerHTML = texteSuppression+'<br />';
	var confirmOk = document.createElement('button');
	confirmOk.id = 'confirmOk';
	confirmOk.className = 'confirmOk';
	confirmOk.innerHTML = confirmDeleteBtnTxt;
	confirmOk.onclick = function(){
		Suppression(id, element, boutonSuppression, texteSuppression);
		acyJquery(zoneFade).remove();
	};
	var confirmCancel = document.createElement('button');
	confirmCancel.id = 'confirmCancel';
	confirmCancel.className = 'confirmCancel';
	confirmCancel.innerHTML = confirmCancelBtnTxt;
	confirmCancel.onclick = function(){
		acyJquery(zoneFade).remove();
	};
	confirmContent.appendChild(confirmTxt);
	confirmContent.appendChild(confirmOk);
	confirmContent.appendChild(confirmCancel);
	confirmBox.appendChild(confirmContent);

	zoneFade.appendChild(confirmBox);
	zoneBody.appendChild(zoneFade);
}

function Suppression(id, element, boutonSuppression, texteSuppression){
	var idParent = boutonSuppression.parentElement.parentElement.id;
	if(element.tagName == "TD"){
		var parentTR = element;
		while (parentTR != null
			&& parentTR != undefined
			&& (parentTR.tagName != "TR"
			 || !acyJquery(parentTR).hasClass("acyeditor_delete"))){
			parentTR = parentTR.parentElement;
		}
		if(parentTR != null && parentTR != undefined){
			parentTR.parentElement.removeChild(parentTR);
		}
	}else{
		element.parentElement.removeChild(element);
	}
	Sauvegarde(id);
	ResizeIframe(id);
}

function SetMouseOver(id, zone){
	zone.parentElement.onmouseover = function(){ AdapteTaille(id, zone);};
}

function AdapteTaille(id, zone){
	if(zone != null && zone.parentElement != null){
		zone.style.display = "";

		zone.style.width = "0px";
		zone.style.height = "0px";

		var parentZone = zone.parentElement;
		if(parentZone.tagName == "TD"){
			var parentTR = parentZone;
			while (parentTR != null
				&& parentTR != undefined
				&& (parentTR.tagName != "TR"
				 || !acyJquery(parentTR).hasClass("acyeditor_delete"))){
				parentTR = parentTR.parentElement;
			}
			if(parentTR != null && parentTR != undefined){
				parentZone = parentTR;
				var zonesTaille = acyJquery(parentZone).find(".acyeditor_zoneeditionsuppression");
				for (indexZoneTaille = 0; indexZoneTaille < zonesTaille.length; ++indexZoneTaille){
					if(zonesTaille[indexZoneTaille].id != zone.id){
						zonesTaille[indexZoneTaille].style.display = "none";
					}
				}
			}
		}

		var parent = GetElement(id, parentZone.id);
		var left = parent.offset().left;
		var top = parent.offset().top;
		var widthZone = (parent.outerWidth() - 2);
		var heightZone = (parent.outerHeight());

		if(widthZone >= 0){
			zone.style.width = widthZone + "px";
		}
		if(heightZone >= 0){
			zone.style.height = heightZone + "px";
		}
		zone.style.left = left + "px";
		zone.style.top = top + "px";

		var enfants = zone.getElementsByTagName("*");
		for (i = 0; i < enfants.length; ++i){
			enfants[i].style.display = "block";
			if(enfants[i].tagName == "A"){
				enfants[i].style.width = widthZone;
				enfants[i].style.height = heightZone;
			}
		}

		zone.style.borderStyle = "";

		var zoneBoutonEdition = null;
		try{
			zoneBoutonEdition = acyJquery(zone).find(".acyeditor_zoneboutonedition")[0];
		}
		catch (err){
			var enfantsZone = zone.children;
			for (indexEnfantZone = 0; indexEnfantZone < enfantsZone.length; ++indexEnfantZone){
				if(acyJquery(enfantsZone[indexEnfantZone]).hasClass("acyeditor_zoneboutonedition")){
					zoneBoutonEdition = enfantsZone[indexEnfantZone];
				}
			}
		}
		if(zoneBoutonEdition != null && zoneBoutonEdition != undefined){
			var parentReel = GetElement(id, zone.parentElement.id);
			var leftReel = parentReel.offset().left - left;
			var topReel = parentReel.offset().top - top;
			var widthZoneReel = (parentReel.outerWidth() - 2);
			var heightZoneReel = (parentReel.outerHeight() - 2);

			if(widthZoneReel >= 0){
				zoneBoutonEdition.style.width = widthZoneReel + "px";
			}
			if(heightZoneReel >= 0){
				zoneBoutonEdition.style.height = heightZoneReel + "px";
			}
			zoneBoutonEdition.style.left = leftReel + "px";
			zoneBoutonEdition.style.top = topReel + "px";
		}
	}
}

function GetNewId(id){
	for (i = 1; i < 1000; ++i){
		var identifiant = "zone_" + i;
		if(Existe(id, identifiant) == false){
			return identifiant;
		}
	}
	return null;
}

function Existe(id, itemId){
	if(itemId == null || itemId == undefined || itemId == '') return false;
	var idIframe = id + "_ifr";
	var element = undefined;
	var element2 = undefined;
	try{
		element = document.getElementById(itemId);
	}
	catch (err){
	}
	try{
		element2 = acyJquery('#' + idIframe)[0].contentWindow.document.getElementById(itemId);
	}
	catch (err2){
	}

	return (element != null && element != undefined || element2 != null && element2 != undefined);
}

function GetElement(id, itemId){
	var idIframe = id + "_ifr";
	return acyJquery('#' + idIframe).contents().find('#' + itemId);
}

function SetOnClick(id, element){
	element.onclick = function(e){ ClickTemplateCKEditor(id, element.id, e);};
	if(isBrowserIE()){
		element.onmousedown = null;
	}
}

var editor;
function ClickTemplateCKEditor(id, idElement, e){
	var idIframe = id + "_ifr";
	ignoreDeselection = false;
	CheckDeselection(id, e)
	var elementToEditJQ = GetElement(id, idElement);
	var elementToEdit = elementToEditJQ[0];
	if(elementToEdit != undefined){
		if(elementToEdit.className.indexOf('nepasediter') < 0){
			var okPourEdition = true;
			var editionEnCours = GetElement(id, 'edition_en_cours');
			if(editionEnCours[0] != null && editionEnCours[0] != undefined){
				if(editor != null && editor != undefined){
					editor.destroy();
					editor = null;
				}
				var editionEnCoursParentJQ = GetElement(id, editionEnCours[0].parentElement.id);
				editionEnCoursParentJQ.removeClass('acyeditor_enedition');
				editionEnCoursParentJQ.addClass('acyeditor_text');
				SetOnClick(id, editionEnCoursParentJQ[0]);
				editionEnCours[0].outerHTML = editionEnCours[0].innerHTML;
				okPourEdition = false;
			}

			if(okPourEdition){
				var zone = GetElement(id, "ZoneEditionSuppression_" + elementToEdit.id);

				elementToEditJQ.removeClass('acyeditor_editablehover');
				zone.removeClass('acyeditor_zoneeditionsuppressionhover');

				if(zone[0] != null && zone[0] != undefined){
					zone.detach();
				}
				var code = elementToEdit.innerHTML;

				var iframeCKEDITOR = acyJquery('#' + idIframe)[0].contentWindow.CKEDITOR;

				var headerIFrame = acyJquery('#' + idIframe)[0].contentWindow.document;
				headerIFrame = headerIFrame.head || headerIFrame;
				var urlBase = headerIFrame.getElementsByTagName("base")[0].href;

				var borderSize = 1;
				var left = elementToEditJQ.css("padding-left");
				var right = elementToEditJQ.css("padding-right");
				var top = elementToEditJQ.css("padding-top");
				var bottom = elementToEditJQ.css("padding-bottom");
				var leftPad = (elementToEditJQ.css("padding-left").replace("px", "") - borderSize);
				var rightPad = (elementToEditJQ.css("padding-right").replace("px", "") - borderSize);
				var topPad = (elementToEditJQ.css("padding-top").replace("px", "") - borderSize);
				var bottomPad = (elementToEditJQ.css("padding-bottom").replace("px", "") - borderSize);
				leftPad = leftPad < 0 ? 0 : leftPad;
				rightPad = rightPad < 0 ? 0 : rightPad;
				topPad = topPad < 0 ? 0 : topPad;
				bottomPad = bottomPad < 0 ? 0 : bottomPad;
				elementToEdit.innerHTML = "<div id='edition_en_cours' contenteditable='true' style='border:solid " + borderSize + "px orange;padding:" + topPad + "px " + rightPad + "px " + bottomPad + "px " + leftPad + "px;margin:-" + top + " -" + right + " -" + bottom + " -" + left + ";color:inherit;background:inherit;font:inherit;text-indent:inherit;text-decoration:inherit;text-transform:inherit;text-justify:inherit;text-kashida-space:inherit;text-overflow:inherit;text-shadow:inherit;text-underline-position:inherit;unicode-bidi:inherit;word-spacing:inherit;writing-mode:inherit;word-break:inherit;word-wrap:inherit;zoom:inherit;marker-offset:inherit;marks:inherit;quotes:inherit;table-layout:inherit;text-align-last:inherit;text-autospace:inherit;outline:inherit;overflow:inherit;min-height:inherit;max-height:inherit;line-break:inherit;letter-spacing:inherit;layout-flow:inherit;layout-grid:inherit;line-height:inherit;white-space:inherit;text-align:inherit;direction:inherit;list-style:inherit;float:inherit;ime-mode:inherit;layer-background-color:inherit;layer-background-image:inherit;filter:inherit;behavior:inherit;position:inherit;clear:inherit;clip:inherit;cursor:inherit;vertical-align:inherit'>" + code + "</div><div id='bottom' style='width:" + largeurMenuInline + "px;position:absolute'></div>";
				iframeCKEDITOR.disableAutoInline = true;

				var toolbarGroupsCKEditor = [{name: 'mode'},
					{name: 'undo'},
					{name: 'links'}];

				var extraPluginsCKEditor = '';
				extraPluginsCKEditor += ',acymediabrowser';

				if(!acyeditor_listmode && isTagAllowed){
					extraPluginsCKEditor += ',addtag';
					if(emojis) {
						extraPluginsCKEditor += ',smiley';
						toolbarGroupsCKEditor.push({name: 'insert', groups: ["acymediabrowser", "addtag", "smiley"]});
					}else{
						toolbarGroupsCKEditor.push({name: 'insert', groups: ["acymediabrowser", "addtag"]});
					}
				}else{
					if(emojis) {
						extraPluginsCKEditor += ',smiley';
						toolbarGroupsCKEditor.push({ name: 'insert', groups: [ "acymediabrowser", "smiley" ]});
					}else{
						toolbarGroupsCKEditor.push({ name: 'insert', groups: [ "acymediabrowser" ]});
					}
				}

				toolbarGroupsCKEditor.push({name: 'basicstyles'},
					{name: 'colors'},
					'/',
					{name: 'paragraph', groups: ['list', 'indent', 'blocks']},
					{name: 'align'},
					{name: 'styles'});
				if(acyeditor_templatemode){
					toolbarGroupsCKEditor.push({name: 'templatemode', groups: ["textarea", "picturearea", "deletearea", "-", "showarea"]});
				}
				var elementEditor = GetElement(id, "edition_en_cours")[0];
				var xEditor = elementEditor.offsetLeft;
				var yEditor = elementEditor.offsetTop;
				var parentOffset = elementEditor.offsetParent;
				while (parentOffset != null && parentOffset != undefined){
					xEditor = xEditor + parentOffset.offsetLeft;
					yEditor = yEditor + parentOffset.offsetTop;
					parentOffset = parentOffset.offsetParent;
				}
				var largeurEditor = elementEditor.clientWidth;
				var newX = ((largeurEditor - largeurMenuInline) / 2);
				var newX = ((largeurEditor - largeurMenuInline) / 2);

				GetElement(id, 'bottom')[0].style.marginLeft = newX + "px";
				GetElement(id, 'bottom')[0].style.marginTop = (((GetElement(id, 'edition_en_cours').css("margin-bottom").replace("px", "") - 1) + 1) * -1) + "px";

				var topValue = "";
				if(yEditor < 70){
					topValue = "bottom";
				}

				var pluginToRemove = '';
				if(inlineSource == 0) pluginToRemove += ',sourcedialog';

				if(pasteType == 'plain'){
					pastePlain = true;
					pasteWordSimple = false;
				}else if(pasteType == 'simpleStyle'){
					pastePlain = false;
					pasteWordSimple = true;
				}

				if(acyEnterMode == 'p'){
					enterM = CKEDITOR.ENTER_P;
				}else if(acyEnterMode == 'div'){
					enterM = CKEDITOR.ENTER_DIV;
				}else{
					enterM = CKEDITOR.ENTER_BR;
				}

				extraPluginsCKEditor += ',codemirror';
				var codemirrorOptions = {
					showFormatButton: false,
					showCommentButton: false,
					showUncommentButton: false,
					showAutoCompleteButton: false
				};

				editor = iframeCKEDITOR.inline('edition_en_cours', {
					toolbarGroups: toolbarGroupsCKEditor,
					removeButtons: 'Cut,Copy,Paste,Blockquote,RemoveFormat,Subscript,Superscript,Table,HorizontalRule,SpecialChar,Symbol,Source',
					removePlugins: 'liststyle,tabletools,image,forms,sourcearea,resize'+pluginToRemove,
					filebrowserImageUploadUrl : urlBase + urlAcyeditor + 'kcfinder/upload.php?type=images',
					extraPlugins: extraPluginsCKEditor,
					sharedSpaces: { top: idDivShared },
					forcePasteAsPlainText: pastePlain,
					pasteFromWordRemoveFontStyles: pasteWordSimple,
					codemirror: codemirrorOptions,
					enterMode: enterM
				});

				var currentIframe = document.getElementById('editor_body_ifr');
				var editorOnScreen = function (){
					var iframe = currentIframe;
					var scrollIframe = acyJquery(iframe).contents().find('body').scrollTop();

					var topPosition = iframe.getBoundingClientRect().top;

					if(topPosition < 70){
						var newTop = (70 - topPosition) + scrollIframe;
						var editorSpace = iframe.contentDocument.getElementById('editorSpace');
						editorSpace.style.position = 'absolute';
						editorSpace.style.top = newTop + 'px';
					} else {
						var editorSpace = iframe.contentDocument.getElementById('editorSpace');
						editorSpace.style.position = 'fixed';
						editorSpace.style.top = 0 + 'px';
					}
				};
				acyJquery(window).on('scroll', function(e){editorOnScreen()});
				acyJquery(acyJquery(currentIframe).contents()).on('scroll', function(e){editorOnScreen()});

				editor.on('dialogShow', function (e){
					var iframe = acyJquery('#editor_body_ifr');
					var toolbar = iframe.contents().find('#cke_edition_en_cours');
					var iFrameSize;
					var position;
					var newPosition;
					var popupSize;

					position = Number(toolbar.offset().top);
					iFrameSize = Number(iframe.height());
					popupSize = Number(e.data.getSize().height);

					if(position + popupSize <= iFrameSize) newPosition = position;
					else newPosition = position - (position + popupSize - iFrameSize);

					e.data.move(e.data.getPosition().x, newPosition, true);
				});

				editor.on('instanceReady',function(){
					var zoneEdition = GetElement(id, "edition_en_cours");
					zoneEdition[0].title = "";

					editor.on('change',function(e){ CleanEditorContent(id, e); IeCursorFix(); });
					GetElement(id, "edition_en_cours")[0].onkeyup = function (){ IeCursorFix(); };
					GetElement(id, "edition_en_cours")[0].onclick = function (){ IeCursorFix(); };
					rangeIE = undefined;
					IeCursorFix();

					editor.on('selectionChange', function(e){ IeCursorFix(); });
					editor.on('change', function(e){ ResizeIframe(id); });
					editor.focus();
					editorOnScreen();

					var iframe = acyJquery('#editor_body_ifr');
					var toolbar = iframe.contents().find('#cke_edition_en_cours');
					var iframeEditionWidth = window.document.getElementById(idIframe).clientWidth;
					if(toolbar.offset().left < 0){
						if((xEditor + newX) < 0){
							toolbar.css('left', '0px');
						}else{
						   var newLeftToolbar = xEditor + newX;
							toolbar.css('left', newLeftToolbar + 'px');
						}
					}else if((toolbar.offset().left + largeurMenuInline) > iframeEditionWidth){
						var newLeftToolbar = iframeEditionWidth - largeurMenuInline;
						toolbar.css('left', newLeftToolbar + 'px');
						var bottomZone = iframe.contents().find('#bottom');
						bottomZone.css('left', newLeftToolbar + 'px');
						bottomZone.css('margin-left', '0px');
					}
				});

				if(zone[0] != null && zone[0] != undefined){
					elementToEdit.appendChild(zone[0]);
				}
				elementToEditJQ.removeClass('acyeditor_text');
				setTimeout(function(){
					elementToEditJQ.addClass('acyeditor_enedition');

					var inlineMenu = GetElement(id, "cke_edition_en_cours")[0];
					if(inlineMenu != undefined && inlineMenu != null){
						inlineMenu.onclick = function(){ IgnoreDeselection(id); };
						if(isBrowserIE()){
							inlineMenu.onmousedown = function (e){ IgnoreDeselection(id) };
						}
					}
				}, 200);

				elementToEdit.onclick = function (e){ IgnoreDeselection(id) };
				if(isBrowserIE()){
					elementToEdit.onmousedown = function (e){ IgnoreDeselection(id) };
				}
			}
		}else{
			elementToEditJQ.removeClass('nepasediter');
		}
	}
}

var ignoreDeselection = false;
function IgnoreDeselection(id)
{
	ignoreDeselection = true;

	setTimeout(function(){
		var popups = acyJquery('#' + id + '_ifr').contents().find('.cke_editor_edition_en_cours_dialog');
		if(popups != undefined && popups != null){
			for (indexPopup = 0; indexPopup < popups.length; ++ indexPopup){
				if(popups[indexPopup].style.display != "none"){
					popups[indexPopup].onclick = function (){ IgnoreDeselection(id); };
				}
			}
		}
	}, 200);
}

function SetIgnoreDeselection()
{
	ignoreDeselection = true;
}

function CheckDeselection(id, e){
	var idIframe = id + "_ifr";
	var div = document.getElementsByTagName('body')[0];
	if(e != null && e != undefined){
		div = e.srcElement? e.srcElement : (e.target ? e.target : e);
	}

	var parentElement = div;
	var acyeditor_enedition = false;
	while (parentElement != null && parentElement != undefined){
		if((parentElement.className && parentElement.className.indexOf('acyeditor_enedition') >= 0)
			|| parentElement.id == boutonTags
			|| parentElement.id == "AcyLienMediaBrowser"
			|| ClickSurPopup(parentElement)){
			acyeditor_enedition = true;
		}
		if(parentElement.parentElement == null && parentElement.tagName != "HTML"){
			acyeditor_enedition = true;
		}
		parentElement = parentElement.parentElement;
	}
	if(!acyeditor_enedition){
		ValidationModifications(id);
	}else{
		ignoreDeselection = false;
	}
}

function ClickSurPopup(element){
	return ((element.className  && (element.className.indexOf('cke_dialog_body') >= 0
		 || element.className.indexOf('cke_dialog_background_cover') >= 0))
		 || element.id == 'cke_edition_en_cours');
}

function CleanEditorContent(id, e){
	var idIframe = id + "_ifr";
	var code = (editor != null && editor != undefined) ? editor.getData() : "";
	var fauxDiv = acyJquery('#' + idIframe)[0].contentWindow.document.createElement("div");
	fauxDiv.innerHTML = code;
	var enfantsFauxDiv = fauxDiv.getElementsByTagName("*");
	for (indexEnfantsFauxDiv = 0; indexEnfantsFauxDiv < enfantsFauxDiv.length; ++indexEnfantsFauxDiv){
		if(enfantsFauxDiv[indexEnfantsFauxDiv].className != ""){
			acyJquery(enfantsFauxDiv[indexEnfantsFauxDiv]).removeClass("acyeditor_delete");
			acyJquery(enfantsFauxDiv[indexEnfantsFauxDiv]).removeClass("acyeditor_picture");
			acyJquery(enfantsFauxDiv[indexEnfantsFauxDiv]).removeClass("acyeditor_text");
			acyJquery(enfantsFauxDiv[indexEnfantsFauxDiv]).removeClass("acyeditor_sortable");
			if(acyJquery(enfantsFauxDiv[indexEnfantsFauxDiv]).hasClass("acyeditor_zoneeditionsuppression")){
				enfantsFauxDiv[indexEnfantsFauxDiv].outerHTML = "";
			}
		}
		if(enfantsFauxDiv[indexEnfantsFauxDiv] && Existe(id, enfantsFauxDiv[indexEnfantsFauxDiv].id)){
			enfantsFauxDiv[indexEnfantsFauxDiv].removeAttribute("id");
		}
	}

	if(fauxDiv.innerHTML != code){
		editor.setData(fauxDiv.innerHTML, {internal: true });
	}
}

function ValidationModifications(id){
	if(ignoreDeselection == false){
		if(!isJoomla3
		 || !(isBrowserIE7() || isBrowserIE8())){
			rangeIE = undefined;
		}
		var idIframe = id + "_ifr";
		var elementJQ = acyJquery('#' + idIframe).contents().find('.acyeditor_enedition');
		var element = elementJQ[0];
		if(element != null && element != undefined){
			var popup = false;
			var popups = acyJquery('#' + idIframe).contents().find('.cke_editor_edition_en_cours_dialog');
			if(popups != undefined && popups != null){
				for (indexPopup = 0; indexPopup < popups.length; ++ indexPopup){
					if(popups[indexPopup].style.display != "none"){
						popup = true;
					}
				}
			}
			if(popup == false){
				var code = "";
				if(editor != null && editor != undefined){
					code = editor.getData();
					editor.destroy();
					editor = null;
					var zone = GetElement(id, "ZoneEditionSuppression_" + element.id);
					if(zone != null && zone != undefined){
						zone.detach();
					}
					element.innerHTML = code;
					if(zone[0] != null && zone[0] != undefined){
						element.appendChild(zone[0]);
					}
				}
				elementJQ.removeClass('acyeditor_enedition');
				elementJQ.addClass('acyeditor_text');
				SetOnClick(id, element);
				AdapteTaille(id, zone);

				Sauvegarde(id);

				acyJquery(window).unbind('scroll');

			}
		}
	}else{
		ignoreDeselection = false;
	}
}

function Sauvegarde(id)
{
	var idIframe = id + "_ifr";
	var newNoeud = acyJquery('#' + idIframe)[0].contentWindow.document.body.cloneNode(true);
	var elements = newNoeud.getElementsByTagName('*');
	for (i = 0; i < elements.length; ++i){
		if(acyJquery(elements[i]).hasClass("acyeditor_zoneeditionsuppression") || acyJquery(elements[i]).hasClass("acyeditor_action") || acyJquery(elements[i]).hasClass("acyeditor_mask")){
			elements[i].outerHTML = "";
			i = i - 1;
		}
	}
	acyJquery('#' + id)[0].value = newNoeud.innerHTML;
}



function SetTitleTemplate(onlyRemove){
	if(acyeditor_templatemode){
		var iframe = acyJquery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];
		iframe = acyJquery(iframe);

		if(iframe[0] != undefined){
			var allZones = iframe[0].contentWindow.document.getElementsByTagName("*");
			for (indexZone = 0; indexZone < allZones.length; ++indexZone){
				acyJquery(allZones[indexZone]).removeAttr("title");
			}

			if(onlyRemove != true){
				var zonesDelete = iframe.contents().find(".acyeditor_delete");
				for (indexZone = 0; indexZone < zonesDelete.length; ++indexZone){
					zonesDelete[indexZone].title = tooltipTemplateDelete;
					if(isBrowserIE()){
						var children = zonesDelete[indexZone].getElementsByTagName("*");
						for (indexchild = 0; indexchild < children.length; ++indexchild){
							children[indexchild].title = zonesDelete[indexZone].title;
						}
					}
				}
				var zonesTexte = iframe.contents().find(".acyeditor_text");
				for (indexZone = 0; indexZone < zonesTexte.length; ++indexZone){
					zonesTexte[indexZone].title = tooltipTemplateText;
					if(isParentSupprimable(zonesTexte[indexZone])){
						zonesTexte[indexZone].title = tooltipTemplateText + "\r\n" + tooltipTemplateDelete;
					}
					if(isBrowserIE()){
						var children = zonesTexte[indexZone].getElementsByTagName("*");
						for (indexchild = 0; indexchild < children.length; ++indexchild){
							children[indexchild].title = zonesTexte[indexZone].title;
						}
					}
				}
				var zonesPicture = iframe.contents().find(".acyeditor_picture");
				for (indexZone = 0; indexZone < zonesPicture.length; ++indexZone){
					zonesPicture[indexZone].title = tooltipTemplatePicture;
					if(isParentSupprimable(zonesPicture[indexZone])){
						zonesPicture[indexZone].title = tooltipTemplatePicture + "\r\n" + tooltipTemplateDelete;
					}
					if(isBrowserIE()){
						var children = zonesPicture[indexZone].getElementsByTagName("*");
						for (indexchild = 0; indexchild < children.length; ++indexchild){
							children[indexchild].title = zonesPicture[indexZone].title;
						}
					}
				}
			}
		}
	}
}

function SetStateForSelection(){
	if(acyeditor_templatemode){
		var alltemplatebuttons = acyJquery(".boutontemplate_text");
		for (indexTemplateButton = 0;indexTemplateButton < alltemplatebuttons.length; ++indexTemplateButton){
			SetStateForSelectionForClasse(acyJquery(alltemplatebuttons[indexTemplateButton]), "acyeditor_text");
		}
		alltemplatebuttons = acyJquery(".boutontemplate_picture");
		for (indexTemplateButton = 0;indexTemplateButton < alltemplatebuttons.length; ++indexTemplateButton){
			SetStateForSelectionForClasse(acyJquery(alltemplatebuttons[indexTemplateButton]), "acyeditor_picture");
		}
		alltemplatebuttons = acyJquery(".boutontemplate_delete");
		for (indexTemplateButton = 0;indexTemplateButton < alltemplatebuttons.length; ++indexTemplateButton){
			SetStateForSelectionForClasse(acyJquery(alltemplatebuttons[indexTemplateButton]), "acyeditor_delete");
		}
		alltemplatebuttons = acyJquery(".boutontemplate_sortable");
		for (indexTemplateButton = 0;indexTemplateButton < alltemplatebuttons.length; ++indexTemplateButton){
			SetStateForSelectionForClasse(acyJquery(alltemplatebuttons[indexTemplateButton]), "acyeditor_sortable");
		}
	}
}

function SetStateForSelectionForClasse(item, classe){
	var acyframe = acyJquery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];
	var node = null;
	if(isBrowserIE()){
		node = GetParentForClass(anchorNodeIE, classe);
	}else if(acyframe != null
			&& acyframe != undefined
			&& acyframe.contentWindow != null
			&& acyframe.contentWindow != undefined
			&& acyframe.contentWindow.getSelection){
		var sel = acyframe.contentWindow.getSelection();
		if(sel.anchorNode){
			node = GetParentForClass(sel.anchorNode, classe);
		}
	}

	item.removeClass("cke_button_on");
	item.removeClass("cke_button_off");
	if(node != null && node != undefined){
		item.removeClass("cke_button_disabled");
		if(acyJquery(node).hasClass(classe)){
			item.addClass("cke_button_on");
		}else{
			item.addClass("cke_button_off");
		}
		if(classe == 'acyeditor_sortable'){
			if(acyJquery(node).closest('tbody.acyeditor_sortable').length>0){
				item.addClass("cke_button_on");
			}else{
				item.addClass("cke_button_off");
			}
		}
	}else if(!item.hasClass("cke_button_disabled")){
		item.addClass("cke_button_disabled");
	}
}

function GetParentForClass(item, classe){
	var parent = item;
	while (parent != null && parent != undefined){
		var elementModifiables = acyJquery(parent).find(".acyeditor_delete, .acyeditor_text, .acyeditor_picture").length;
		if(acyJquery(parent).find(".acyeditor_delete, .acyeditor_text, .acyeditor_picture").length > 0){
			var tdEditableTotaux = acyJquery(parent).find("td.acyeditor_text, td.acyeditor_picture").length;
			var tdEditable = acyJquery(parent).find("table td.acyeditor_text, table td.acyeditor_picture").length;
			if(parent.tagName != "TR"
			 || classe != "acyeditor_delete"
			 || elementModifiables != tdEditableTotaux
			 || tdEditable != 0){
				parent = null;
			}
		}
		if(parent != null
		 && (parent.tagName == "DIV"
			|| parent.tagName == "TABLE"
			|| parent.tagName == "TR"
			&& classe == "acyeditor_delete"
			|| parent.tagName == "TD"
			&& classe != "acyeditor_delete")){
			var vraiParent = parent != null ? parent.parentElement || parent.parentNode : null;
			while (vraiParent != null && vraiParent != undefined){
				if(parent.tagName == "TD"
				 && vraiParent.tagName == "TR"
				 && acyJquery(vraiParent).hasClass("acyeditor_delete")){
					return parent;
				}
				if(acyJquery(vraiParent).hasClass("acyeditor_delete")
				 || acyJquery(vraiParent).hasClass("acyeditor_text")
				 || acyJquery(vraiParent).hasClass("acyeditor_picture")){
					return vraiParent;
				}
				vraiParent = vraiParent != null ? vraiParent.parentElement || vraiParent.parentNode : null;
			}

			return parent;
		}
		parent = parent != null ? parent.parentElement || parent.parentNode : null;
	}
	return parent;
}

function isParentSupprimable(element){
	var supprimable = false;
	var parent = element;
	while (parent != null && parent != undefined){
		if(parent.className != null && parent.className != undefined && parent.className.indexOf("acyeditor_delete") >= 0){
			supprimable = true;
		}
		parent = parent.parentElement || parent.parentNode;
	}
	return supprimable;
}

function AddRemoveTemplateCss(){
	if(acyeditor_templatemode){
		ShowTemplateCss(!IsTemplateCssShown());
	}
}

function IsTemplateCssShown(){
	if(acyeditor_templatemode){
		var boutonShow = acyJquery(".boutontemplate_show")[0];
		if(boutonShow != null
		 && boutonShow != undefined
		 && boutonShow.className != null
		 && boutonShow.className != undefined
		 && boutonShow.className.indexOf("cke_button_on") >= 0){
			return true;
		}
	}
	return false;
}

function ShowTemplateCss(show){
	if(acyeditor_templatemode){
		var iframe = acyJquery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];
		iframe = acyJquery(iframe);
		var boutonShow = acyJquery(".boutontemplate_show")[0];
		templateShown = show;

		if(!show){
			var link = iframe.contents().find("#AcyTemplateCss")[0];
			if(link != null
			 && link != undefined){
				acyJquery(link).remove();
			}
			SetTitleTemplate(true);

			acyJquery(boutonShow).removeClass("cke_button_on");
			acyJquery(boutonShow).addClass("cke_button_off");
		}else{
			var headEditor = iframe[0].contentWindow.document;
			headEditor = headEditor.head || headEditor;
			var base = headEditor.getElementsByTagName("base")[0];
			var link1 = document.createElement("link");
			link1.type = "text/css";
			link1.rel = "stylesheet";
			link1.id = "AcyTemplateCss";
			link1.href = base.href + urlAcyeditor + "css/acyeditor_template.css?v=" + acyVersion;
			headEditor.appendChild(link1);
			SetTitleTemplate();

			acyJquery(boutonShow).removeClass("cke_button_off");
			acyJquery(boutonShow).addClass("cke_button_on");
		}
	}
}

function AcyGetData(){
	for(var myField in CKEDITOR.instances){
		return CKEDITOR.instances[myField].getData();
	}

	var iframe = jQuery('#editor_body_ifr');
	if(iframe) return iframe.contents().find("body").html();
}
js/colorpicker/index.html000060400000000054152455614210011471 0ustar00<html><body bgcolor="#FFFFFF"></body></html>js/colorpicker/images/slider.png000060400000000473152455614210012736 0ustar00�PNG


IHDRL}8vgAMA��7��tEXtSoftwareAdobe ImageReadyq�e<�IDATx���;�0�PP��8��b����(���C�~JF[��q�R,��ڬ[�^����ֵy�>�Y����1�(
�B�P(
�/���9���r˽Ź %Q(
�B�P(�+�b�B�P(
�B��V�9W�7J��]��(
�B�P(�ҕX@�P(
�B�P�*���}/DI
�B�P(J��c�s�KvTK,�w+[�2"��IEND�B`�js/colorpicker/images/colorpicker_hsb_b.png000060400000002111152455614210015114 0ustar00�PNG


IHDR>B�C�	pHYs�� cHRMz-�����RqE�f9!�'�V�IDATx��{HA��;wz�^(�,|���$>�E"I�W�A D��= (��RY�E�T���H
F�8-�����{���폵m��no�Fw�cv�73ߛ����gO5��bw�C��R�,2�#�Q:dw��b�qH'����
(�H��apHW��n)Mд�h��-ͪ�B��
Y��Q:q�K4ܴ�l���)��n��
��1QU8
��$�ʷ�[u�|9;'���X��	`X�#[(c��Ԃ��̬����wm��1���*ܖ�=:mx�w�ÇJ3R��hz��(*���ia���V鼪\C���S����-����."�6���^UU��NL���0���S����7h^�u��L
�k#�Y����9����d��WHg}�LEy�!�v�_4�o�_���������5+�+�)�eʲ��K#�I�e����$� �cpJ_Μ�Y���L��O���5"��u9�#?�v���Y/�p�{�&q�TTV�%'.,,�,l���ӧm��2�P��t���H����F��ü�J��L�Y����c��_Ig�`�@��HAJ�S����*��􋯲����t���J�G��Ĕm�:���6���F&�ŠQ��������P��7���y���@�|LD��cw�Ȓ ��ۣ�Bw����v���Z�U*վ��5�.TU�o����CzpDw�O����@���@�����$����0��$���!" O�	q1&˨�	Pf�ٝ2%]�o[�D���#_"@�H�D�ñ�%j�F�D@�	S*Ш���I�l��"I>�\<)�D$)k"���r�\�P~��ce�0Wk�\�>Ε��~�"�,Ӛ��ޕ�%�aΝ>�n�{�"���;
���={�_)k"�������&a�|��z�-������[�|�
��(C"0d�����c5��(R:A�ͺl���7���H���R��IEND�B`�js/colorpicker/images/colorpicker_rgb_b.png000060400000001760152455614210015123 0ustar00�PNG


IHDR>B�C�	pHYs�� cHRMz-�����RqE�f9!�'�VvIDATx��kHA��vg�z}P�Yx���]J�)�H�"��oՇ!
D�A=>He�aVTPA�)0C���qZ��U�w�C�����ڲ�]��7C;̇ٹٛ��;�S��=>�[�&j���KMI��>��a���.u�h5�苁@t߮ې&�طIQ*tF�*2���f�m4T��"�N�
�6ڒ�>��؜�o�hk}��>Fjt�\�-��C�J~�幺��@`��i:���i�p�‚_Rt�����>
���!� �w���Ө��YΚ���j��Zˀ����M:�=82�,�#�8=�T���/�9]��Ô/Cg#�B�>>ky�t�q{�=V��~��z��o�CӔeC+W��3V�$�޹ٙA���}�r!β�)/[8����Bj�籏-ٹ�l���[��SU]�����,X��s�.O�FH/�nؘ��Q����?
E�"M=޹��4b��0�DI�ҾM�hW��:���D
���i�k�>�zzj2���l5��C����^�G%%+4�Hh�wI����'$����!�6ڲ�l_ZJ��7��֪P(����]HUZdx�7=:# uY�,��F@6����l��h������2e#����d�m�c5�,.�Q#��;�s��w�kH�z�#�t,�F���p5T\<�GE�(�yp��H�|�;\x	Ii#���s��1��s��=���s��хڣ\����J��u�O�;�5�w��9y�k\��#!��[M/��=}�߉����@���Z���j�+��ɫ�t���+	]#W�sD�����~�cj�$��!���Ŋ����_g�B����IEND�B`�js/colorpicker/images/hue-horizontal.png000060400000005425152455614210014426 0ustar00�PNG


IHDRd(��
DiCCPICC ProfileH
��wT����l/�]�"e齷�.�H�&
��KY�e�7D"��V$(b�h(+�X�	"JF�����;'��N�w>�}��w���(!a�@�P"��f��'0�D�6p����(�h��@_63u��_�-�Z�[�3���C�+K���;?��r!�Y��L�D���)c#c1� ʪ2N����|bO�<�G����͓q��|������|�o���%���ez6���"�%|n:��(S�ёl��@��}�)_��_��	;G�D,HK�0��&Lgg3���ŗH,�9�L���d�d�8�%|�fYP�Ֆ���������-������d����2�ϞA��/ڗ�/ZN-�)�6[�h);h[���/��>�h��{�yI�HD.VV����>�RV���:|��{��<K�y�k���r�Y���ܜ����+�p�L����UZ_�a�O�B�t��4��B�@"�2¿���*~�khu=�(���k���I܃�@��B����=�i�QF����a�2���1e2;2�ɕ��d��	���t���0�8W�	|A� ,\�����`
(%`���^P@8�Ip\W�5p�C`<��5�� Q!�iC�d� w�
�"�x(J���Z��J�r��5@�C'�s�e��
C����;�)0ք
a+�{��p4�N��K�Bx3\��G�V�|�	���) d��� a#aH�����H1R��"MHҍ\G��	�-��a��+&3��,ƬĔb�1�0��.�u�0f�K�j`Ͱ.�@l6
��-�Vb�-�؛�Q�k��p�x\n��׌;��Ǎ��x����s�|~'��~?�C �	�?BAHXK�$&�&�3D�хF��ˈu�bq�8CR$��HѤ�R��t�t��L&뒝�dy5��|�|�<L~KQ��RؔD����r�r�r��J�R=�	T	u3��z����F�&g)(Ǔ[%W#�*7 �\�(o �%�H~�|��q�>�	���[���R�F� ”"M�F1L1[�T��e�'Jx%C%_%�R����J#4��GcӸ�u�:��(G7��3�%����Ie%e{����S�C�a�dd1����T4U�T�*�T�TT�U�z��U�U�Uo��Sc���e�mUkS{��Q7U�P�Wߣ~A}b}����9���Հ5L5"5�i��ј�����i��<�9������Ъ�:�5�M�v�hWh��~�Tfz1��U�.椎�N��Tg�N�Ό���|ݵ�ͺ�Hz,�T�
�N�I}m�P���w
�,�t��ӆF������-5j4�oL5�0^l\k|�g�2�4�mr�6u0M7�1�3���f��ͱ���B�Z�A���E�E�Ű%�2�r�e��s+}���V�V�������(�٬����Ԗk[c{Îj�g�ʮ��=�~��m�C���N��N�b�&�q'}�d�]N�,:+�Uʺ�u�v^�|��������o�����]��5�˟[7w�M׍��mȝ���}�Cǃ�Q���Sϓ�Y�9�e��u�빷��ػ�{���^�>�����*����}�����7����l6 8`k�`�f 7�!p2�)hEPW0%8*�:�Q�i�8�#
�z��<ἶ0�-�A�Q���#p�5�#m"�GvGѢ��G����.��7�x�t~g�|LbLC�t�Oly�P�U܊�����|BLB}�����&:$%�Zh��`��Eꋲ�J�O�$O�&�&N~�	��r�RSv�Lr���g<O^o���/珥����>IsKۖ6��^�>!`�/22�fLg�e̜͊�j�&d'g�*	3�]9Z99�"3Q�hh����'��\(wan����L�H����y�y5yo�c�(z��.ٴdl���o�a�q�u.�Y�f��
��WB+SVv��[U�jt���CkHk2���zm��W�b�uj�.Y￾�H�H\4��u�ލ�������6���W|�ĺ���})���76�T}3�9uso�cٞ-�-�-��zl=T�X��|d[��
fEqū�I�/W�W��A�!�1TRվS疝�ӫo�x�4��صi��n��=�{��j�-�n�`���[k
k+��x\S�-�ۆz������E�jpjh8�q��n�6�I<r�;��ڛ,��73�K���ңO�O��ֱ�c��YǛ~0�aW���j]�:ٖ�6���"�Dg�kGˏ�?<�s���ӤӅ�g�,=3uVtv�\ڹ�Τ�{�������|��E��绽��\r�t���WXWڮ:^m�q�i��᧖^���>���k��:���8w����7�ޜw���[��n�n?��u��ݼ�3�V���/~�����ڟM~nr:5�3��(�ѽ�ȳ_ry?Z����rL{��퓓�~�מ.x:�L�lf��W�_w=7~��o���L�M��������˃��_uN�O=|��zf���ڛCoYo��ž���_���C���g�gg����`	pHYs��wIDAT�P�
�0�� ">@���A�E��h�2Q�C��6i�7��+�ZP
*�EP�?��A�I�Y`�I=
�o����#u���	m�:-�^��&D�2�vKϔ_�i�}Ϩa���A�{��:�:��IEND�B`�js/colorpicker/images/colorpicker_overlay.png000060400000024163152455614210015533 0ustar00�PNG


IHDR��<q�	pHYs�� cHRMz-�����RqE�f9!�'�V'�IDATx��}ˎ�H��'��O�;��8�n��]ݕY���=�%����G��	 �N:��(TU36w�/3��f�03���=��;�����~�6w/�W=�x��1����/��Ǣ��?����w��Z��ݽ����ݿ}����/���cf�k��yO�l@" �NԳz����1������yvq���	������羭��ێ���x<�������w���������O?�_��W��{�z|�I�ـ�s�^<��/\�o���N?�o23�������9?v<����o��v�׏}v�l;��k�|>�|�������n���n7��������������O?�d߾}�/��~h�ffm�ဵ�V���玁
�=���*�}�\<���m>����y�G�7�FrV@��t����|Zm��ǣ=��~���v󏏏������[���_�?�����~���x<ڗ�ʉ��'o
�l��r���D�֎�B�Y������6xlj��[km�[k��[�=E�#R��s~шR;�|�P}�۞�g���n;�ׯ_�_������/��/��ׯ_�|�X00)��&g!��'^I�M�a$
�����FA�9��A�0��c��N�6����1����{��`rw{<X�|>}�v����f��}����o�����_��ׯ��o�Y�}
��"m�"[��Ơ��;������DT��.V�x$���.`"�4ԙ��l��0B��߾�6��{?"5�~������G���h���}�������v���(RT��g"N�H�*��|� ����ZÓ�5Ë#z��GPf�r׊����xF,�Q�����v5@5�ۮ�����n����߿��~��}||��~���n��=�ffZcU�5�d+�-�눎<H *�NQ��D^�K�G�"!�u�/�K��f`���D���A�#za�T�k�����,pD,����o߾
!o?~��������B�\�/Ѥ8�>�t�I�(�)@�1[!������������`�u�k��&��d{;�aې�Lh������]S���@��*�ҷo���Ƕ�,�P�O�ZHRs�e�8�82�ޏGQ��=ff�X�������5p�t�ð$]u��a:DKa誝�l���=�϶G�v��ۮ�NT��?>>��LJ=���x�9bM��,J������"ꋲ1�G�|y�sax$Е4h�)�@6n�T�^"1b#��
����s�d�
-��@�j�Gd��}�Vv��~����
St�}�}�����w{<G��h��Q��*TK"Oh��좗��v�����Ӷ�MFzP��5sS�Ȁ�J.hn�7�Q��@C a&��WuP�n�nXv�����n�f��qd�>�}g<�l+�rHApB��w���V�Ĝ(�� m��y�.p�����.2-�c�'��` 
Z���(��jiD)ܶ!���ȵ�Qhi������^U�'WЭ��鲢�hԗ��B^�u��X�����N���9���L��F���yl{>��ލpD��	�t������G�~��}�am�A���ܽ��p��
(-�x�K�4��2��2%�ڶ�"�iT�@�}���F�F�"�a�2���F&xh�����Y�6"�0��n���4k�k�
�h�E� �EŔ�'��2NU�'"�JG=+�2x��CJB����L�-��U�u� ��糹{�[_���w
�n����G�C[�v���㱡E1>c����P�'ODm���E82�h�(̃�E��Q�K�:	E�38��r�o?aK�U�R贳wH��=w��n�gv�mGGO3�ӈU�`�Xf!о��������6p�L���U��m��9eyG$��&��N;���kX
���uw;�`
=����k��;,3�XQ	�R��,"	cRQ!�)O��)@����3��1�&g��4�ɻ�lLOI���d۾�@��+w}�g�f�X{�r���v��|h*���_T�4L�ݡ���kG��[����? ���8#�Ho�5�_�w�O�1,n�s��9��)���1��x�H���]C
��9���a3�#���[?x,V�;+\|��)5��������ђP�ɑOR+�L8JBC���1a\�1�t��uA�܈g�#�	�ĻC̠����N����x����چ��#�6�8�[�Gd�8S�L_)�[=�����>�@�IE}L�D/�dZ2H&��Eܣ��ln"5"-np��F��ζSZC��f.�:P��l��@����ڧ�аU`��]�\Y-P����b����XD�.�9�O�u������X7����5�6a1t0EdR����3{�c����b��lXƹD,��*-& ����	�y@��vn�����-���LX�썢ՠx鼣݀�
�g�86�=�O7����w�����n%��в�D�
�g�5�0d%�T�RJD�"�;�Aq�j��Y��p����V��^���d��8*�Z�@� Zu(� TH�x�6R��ms�t#J�N��l7�"V5Z8<q�#�5u�@S��P�(#�*Bg�S�7z���aL\ �D�뤫:Lv8m����N���~�󎴈%p폒��O�!۔���r?Ȳ��|X`G\�������D6AiFB����'��hnP|�%{
s�^XXv���|�
���N��C�t���U0�8�g��R84�N��j=0��v���i��M�k�C�UuY�ԥ�"�	m��a��	�=���>���T$�腦(D�Fkc*�#
RacZܩ�-���pS�f�ᙍ����J:E�j�%�E49�L��Y!�'},��p������@@�Jc��@��� ?�A7<*]��5�t48��cB����,U��-�`�3���ל3*�8��M�<�#09�H���]�����;e��Ơ��!
��wJ�}+�*����7�f�g y2�!r�#�D�πv��ٞ�RN��M4����|��
߇Zꤹ�y�PP����9b���X�@��%�����E��d�KDc�8�dQ�А��ȧ�P�x�����-�
w0cI��y�P�p�g�ǧȆ�rІ ��-3�
��E�8��R$ps�E�VMQ��3-e��oA����T�h�
B�c	�c���@���z<�
�B@�吕��i׋��o���
K`"1	�W(ς�x<�@�KwL�J<�=��N�I���_����@?&��Qc96�
�Bz6�Kl���jRk��ԗ�1b��L�c�h�zG�z�Ƶ�H^��W��B�-�����:E/��^�ҡ�}2A��"'*<(
#����"��ʓ!z\W�Th�aE[*��Id5^@�m�Ǯ��Y�rǸ�X��� ���eC\�1Џ�h8���MQ!f������A6���e*3�ͳ�	�����ߝ��_i�
LM��ɅQ{�ƭ�#�p�QYQ4��*�E��1�m:��6t��:�~Fd":D�w�n�v#��ìG�l{��G+�X�nSǁQLE=W�-�2@�l��A��z�R�m����h8�(��N��������/�n'Kt��4ee h鼾����at�EKJ�`���'�ECF�lZ��p�h�E��ٮ4V���%��'�+���,���!-����=���/�28z
�I��]�j:լw*�<�Gh,~���KE��(ϕ�N�K1��C�O�
&Y��>�-8�']6>o\;��M�$�)�T��s�5�|P�Ǿ`-�FF��.��`�K1�q=�X���L�'����)Z��p�M�1�l#��:��ha�������V`%��r���1���-�R!;�{A��y�Hg@o��Z
^ +D��~,SV��
�n8�)D&����h����q��mI�-1�^�͠�"W�K�0�\��)]ҟRB?������*� X�m�P&Ӗ�F���G�A���(=-��qS7O�R�<3k�Fs
G�_&��}hI���*5Mt0��2�h!w%��~��}hU ���'��2��5v�wW�a�)���w�I7:��z܏�XР�¨}f���Ӛ�C�W�;j��/Sӟ�x�F>��FEh���D�TD��ͭ2�)rC F,#?
��Fm����c��X���[�)�J��ªa�lR
��|Iwx,�G݂�>K(2+�\��w��DGe�Epй�텓�ԇ�9fw�q���o@<���+[��&�S�y���o.V�Jg	�Ղ�:���3��v"a4�4D	��ĥ�"�=�	t���++�?���:i����嗒Ɗ"�,�]�h#�.��q�R�V�z�Df�4��ų��~g �����_JC��͖�(��o��ċ�?0�rU�%�U�b!���q�fU�˥�=˨QD3~=r�MѢz��e[�B����s�$a`��g����85�m^\��[�
��6n���'&��K�����eQ	���B��ډ��r׉�N�-�a�qQ
��(²H��DԊ���
�LP�e����6�z�g�l!3T�~�@g�!�L�p%��mKT&xq�	8����؆��.Zv����B��N�w��wvij�?��")�t2Xt�(Mh0��i�k��*�D�L��pו����J��~�קcPM����p1J�|��ײ¤�8�F��d��ɢ�該E��b���)�b@�8Lw��$̐9�O2�솓>"Q��{�Uo6A�NEg��O9�X��΢Rd+g=����dLŇ�2|,�271���u��XLbf�)+B�#�mF��O�����t|��]|��� �;􈱏��;���R;�J7j���>�����yf��� ��B����QD ��<�#�`�7A��,��>�g�b�r�۳Yb(�!+OŻ�J	(egFwB�](�#�j+N"]4�>�=a?�@��㠮�n�����oՋ%����D�|Js�ֆ��Zk�0J��ڦ��<�͕�l	��|��b�5�w�%�{d �;�����Dֈ�}�hE�N�nJ7�~��"(W+�^�U�D�V��ɱ�br�b_T��h��rDwJ�� ���&��_I�������@fsԼ5����_��x�m�fS-�yc*Ã�+'�����NL�\-c4�b+�ڠ>7�Ґ�,�MQ!��,����NY������x<� �-�XK!\p6�5g�(@N��(Z�:8w���-���1Ȯpe0�/w�����uМQ��tZ��0�~n�Uc2Fkf�F=@�k�E5���0sY�OL�p�$�*ۦPd-��Dq*�=V��Ș�2�S�%{��=���	���~��f�(���ΞP��D{E̳w������M�jL�8E���qvJ�Ǚ��ԹɈ�~�_e+�ь4�%�TC�l{EO������6�{u0?�0Bی�5
�bE?��Զ2�V�V
՜'�;�XɶhMv�Hc��~
��5�&�B����&:�`�{�P�G*�#^�^�j?�(1�7E�*�E���x�>��%�̢�d��ĊW�)�Q��`�8�� ��Ep�_)+��%���(�3xO�В��j^�"Z���-��҉��q��v>�2R�T��4��|�-�0!u�+T�@���%�Qa����xʒ������Me��p��-0_�M��-1 �YOD��e��F��7���]�8�-�iw��l�2��6��H'ꑖ,Y�u�j����3�wU�F�_L���&<fe/y��ӞQe�
�"t
�Œ~*S�Z���?18-�J&X}���`�e�2�X�i/�(J�356���.�Ok��V�����F(�O��P�G�w(��΅���Wy�ٕݨ3!W��
��h�0�����Kt/KY
6J:aV8�h��Q��Y��T;�Xa�k�r�W��S�$�(2f ��f`/�U�+�B�zO�d���;�yM�#��l7$�x�(Ri�����4�3$�eډV=.�� �-j��`V�N*V�
\u5�?g#o�ĉ��7���
oN��9��RTr��l`?��Ra$h+�*x.�f��t����:����&/�KL�P�/S�g�-�za*�$�x�YB-�.��R��&��q��'��l=��=&S]��&GDuœ
+��H1�G�:
�t1�X�me�u��p��d����9��d��	,/X�
�4b�MD��{�yI�P�n�;��V#�'kh}f�R����*UR��F�I����nVt��(%�tYR�dj�Yc}2�JK�>��:;~��M�w�M�(�]-�X�UO�ǐ��%`������j!�i��B*���ꕩ�dC�Ya�_"��y���?�I�Y�BV�ylaVX�l�w)+��#V� ;8�(ȟ�Wk�'����&��+Y����`F��3"�hFlϫM&̎!��g�&@���fT�sX+	�3�K�N��|Mh���7�hq��x��uE��O�z�� Ц&a&�
��r0��#T�
�͟i)5���k����N�
�����M���^^�2=�֢�MO2Ė	v1�T�a�zE�O(�o�b�`�tX+�s�TdkB�7�X�b!D�'h��k��fٜ�[�U�lE�&f�dV��	���EQw�O�ξ)-4Z4Ϗ�Zq�i�ZxT�vI�y�>40>�ܧ����"U�"�I�i+�D'>���z[�6'��W:(�4�DHh�e�h�HmM��1ۘ"eO���7a��I�Z�X��zۣ��6Y�-j9��X�(�K,�i�tqP����7��2U�fžu���R��Aj)�\�
���U��W����ļ�6�e�� BJ�4)V��6�t2�b*z�^t�΂�wJ����A�=���v�e-�Wg�>OfXK��NT�9a��=�>�4+)LPZ��/YetQr�h益^��w����WT��X3A��f�(�6�d�9k:Z=&Zbe�ЫcbI��SY��R�$d�*�<e�&Q�iʅ�m���Q�w�瓜N,-�q�W�z�QǢ�Z�z*g�,d&
��9�|�h�˹`-��U;2�����
������kfk7$��m3�fW��dDÅɯ���,]�F�L
DS�x�R�.���@�^G;g���J��Z���5���_(	��8Oуh�p�_Ф�l!��c�{DϢYvO�Sv&tXD�
%�)Sm��E�� #Tm2ao�tyJ^�E���,p��[d'���B������G<����yc*���5.&����*�ú�.�N���Mp��欹X̟R�ly�dA��|�
��2���w|����螏!��V@i
V֜wFz�t%�@�3��l.���}E�d���,�yT
j�ꘒD�_���X��zQ��%
�ƾ�X
�
e���]�d�h2�E���L�pE?�>�y��ѨS�����EM��}Z��eǝ�d��z�Pq��H_5��j�H�!g�����#Q*{�YD��Ƿ�Mo(`��{/�y���@�:�.�ɨ�d1�J�t�}�qߡN�������,-��71W����O��<�곓I!a�gn�?'��ﭘi�p|ȶ�C�,�6��&�k��U�JѬ|/53(�
-��G��٬���$_�^��.Sn{E�MZ�\]P�B�G�Z��J����V�eBPg�d	(�+�Q����ی����D�Db�ה�?��!-��e SQ���7ZcE��Bs�55Hg'M%	0�����-GQ�)}eĪ�@�2[i;�!�@��'� �VDP9he*�k�V(YdjI�Xpn�d�/�����+m�\$�y��-"��@EdR��g]�}�
S�8�Gݤ.����W��:Ӌae���m�?��
�eV�ߣD�4�XIʀ������0/����PFyr��х���/��_h��Syy���tX�ӂw�پ!eV��Jɕ��J�E'��.���k*��2�7j�.��(����E�@���g|"+��a�
g6�D?��W�6Ŭ-�@፞"A��%��0ZK��W�dt2D'"��.�l`����+��l-�J��o��W,��+�lE�M�HQ��U5��'��
�t�^�
{�̬e+�2Z4���_�&F���4��^����+HdG��^���&\w|�6�;�u=�5����=�J����z�������E��`�̙��>�F�r���"���l
���#��DGU谪�T.�%��ʺ]�M�h��,J{��0KQM}{!�:�ƒ�W�_��PHeL��p�M�Q���U�Z:�8g�|a��-���)3�+����Ӷf�V�����[���.�,���MZTA�T�-/�dbo�j݄�q��aAy2c��MR�D�l2EҤ���i�}f���)jܣ�����1��+~^�K�,�t)�R`�8��~<��������)5.�E�9�����x
=�Y����P��b|�W(�{Р�N'+b��m��auֱP�_�W{`�)�	�W5��F�Y��$�_)���=3oy��||�9��t2���"`XD��Kg�T#Ҥ�d�$[a2oa���@�zQD4i3�U���e�3���6�dz�eBޮ�<Xt��&4e%:[��C\�>
*!H��}�e1�1��|�L��" -(�_�u����dK��%�/Pn����8�-Qq��T8I�/Ae����"M�&�&�/�G�3�:V��O����#u2�(ri*L��Y�����}��ϙb+`+g��M���-�2�X��ݐ
�Qk&�+Wz���+ؽxRձ�z������XV�*�|a�Px�Sa�E�Y��3Z�P�������g� �
�K_�%F�hW�|J�����#�}e@���
�_�����f����xi��u�&+��uC�V�OG)8�J�����8���U�M��>�=	0��fc ��<��,�i`³�f����T�ZxU�\8QK't!�J�D�H\���.+)����l@�\��"�b�dWځ^��޸H8��Qh!BթpS��V"Bpu�/��V(��}�`	������2$��c*\LC3:{gP�NiJ������@�]t�Z�@����T z���\��5=��R��{��!�|��Iy%b�V��=�գ��)����;Sd9�´��Up-��g
�*�^y>�g_�/]�o�]K��X�K�McU��QW��{f���"�(L��|���lN�hsq˶7:�X�.x��� 
��k�w�f�M2�}h��lQ�칭R�*(�z�'w�0K�<�2�b��U>Wz���PUw�������MѤ��*W[�*MN���W�X*������ը��S�J�:-n�Ԧ��T}M|�W�Sy
�%j�M���Dp���t|*₶�����\��h��,�T8��)�@+��/_4+�\��b7�i�Z8��'=;q�;�����YuP���juLVAN�^5��<Vƫͼ�҈�
��Q&g�0 �Z~��Ty_������<��W*�]�#eV��m���vq׳m�6c�]|�a����m��'�x�|�9���$RD�d�M�D�e�+���O"Pd	�Ve�\�q�����joQ�SI���OٖxN+����fQ�N�U�`(��zw�*W�96��.^h�c���L�5��7�]0��Rz��\��d:�
�ϸ.�x2���U�g¥}^k+z��"wj�V'F,�
��>�]�?��U9a�h�)�x����˱
��`�L-j��X�O�*�y�V.·�j�+�ݱ�������+����
@�yO,��֬�o�XFh{�x��
��+'�j���W�ȗ�j���һ�l�9~�V������7�gH���ᕈ�IѰ,Z����WZ��r�@���>���Łm+��d|>=��@z�sg�j_�
�W�+I�����W�1�����l3?�}��������HW��K������~>��_�o�x=)��{zIEND�B`�js/colorpicker/images/saturation.png000060400000021161152455614210013642 0ustar00�PNG


IHDRddp�T	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F�IDATx��]ے�r,`�~v����C����jg�M�Eq��,�#+|����*de]t������mf�̬�o3�^J������Xo���n⚞�Wmo���7/�kb9�O�C/���=����c�����{�{�Ϻ�}Y��,K�駟�k���?�g/�у�/Bς�J)^�	E�0���])t�kp��=:l�B��6��F�}��c��Yキ�Z�۶�u]˺���|����������'��_������:��T���"SH�0^��ԅvA�;�@:��;����NJõ>������W�+��W3��{h��zݶ�[ke]ײm[Y׵.�b�����7������_}��?�a�?��֚᧔Pܽ�Y|��b��q	�[J��
�S�眯��w�_I��LNBv����"���~s�:�B�/�x齗m�zk�o�f뺖����������a������ʧO��o��f�>}�eY�~PH(�������(��"b�iv�ղ�`A������<��6�@9��
���{(�[k�m�����j���eY��x<���ݾ~��ooo���g��?��ׯ�m�,��P��EO�8(�C�{�|���~#t8棥#
�wS�(���K�ޭ�歵]I�Zk�_�m��|�PH{{��_���/_��o�ʟ�Y�����d����<��PD���]y��T.��*t�K�}g
�Q�(| ��{
��B�\a�]�ՆB�|ں��|>�������|��;}�V�|�R���˲,���!'���a[�(H9�8b�����V�h�Nʭ�!A�"R�����6��^Zk���Dա۶ͷm+۶��,KY�ŗe����<{{{���w[��ܽ�nۖ"$ALIL�
�Iز3�B�z���}��LS%��0@�N⭵��+
������ۗey}<m(�>��,K_��=���ku��8�x�
>���+��2Uܽ~�bn!���CQc_Dձ}pSь�@����w���.n��!�,�d�eY�,aʬ���>�؎V���)�$G��~��($��B���3E�G	�qNo���n�B!�Qw�e�?�Z|��=�Oq���Z�Bz�gH���(�r��09x/FŽHpW�f�L�k<G-9���][۶
QsPF(��DJ�eY<�}]W[�����C�Ñ������p�#��@�k�h@��V8H�#�p��} �bf�a��B�,�݃ć"��׮��˻{X˲��|��m]�@�o�f��v�L������r�4#�SC�u����oI�?D��N�����C�!tF�PJ,!��V����h��u�m�^Ȅ��0F0Y�3W��S�&�
$��P�W*�c�
Lj)�K
eRX	�D
zS��B�3�TE0HQy��	(������
��d)A����!c�w(�D��7RdEg�$@�=x���*0-��se��q�����mu]��!���x��׀�G�K��y�:dW��;���K�@l��/�R����Dߑ��)�)%��LVG� vR��V߶�e$C%L�n�n*�2d0j2w6��9�Ba�=u�:�Jkmw>�0�D}H� �0�BvBGbWH	��ܖ��������C�H^�	b��F�5�}��{\�(���+Eሔ=i䍂o�V�ї���+�>�"�����h���M��}L�NR��"fK�̥�\4���|�(t�ئ��B�\����Jٶ-SͬL�*
����YKpK���Jk
����R����Z���±A�5c�k�
4[*8d^�;�+�
')�v�iIMU��K$���3dd)��I�B�%+�$�D�	�O��Be��F����b�����'ha"W�p�!���C^�		�0?�{pC ���!'�:P���c��@L�#��r��W6Y%Q�$9�
�,���� �$	O��T.ED����b�Xﭵ��<$�5�Gz��Nن2C�)�/�!%���mr�>'�$Qwf�L!E!cx�aN)0E�!d��GUb��������ycf�*I]-�"�����ڑ�Z;�:�l�vcD�}�6*9B�N�:S�P
�4�@��������`�=6��{կI�R'�E��O8������mP'��Φ*Z:"!�c!BƷ�5D���)RO����(�R�����&\aIa�	�H<�>Ib�}��B�a��UD	�p��<�p��X���^V�Q�
!Ďx�pw�v�"g�(�p��_;+:�R�8G�΂����I�	ї�+����}R޻��hf/B8���,Qt�Lr�M�#��9*�N%X.�vQx�l�@	�i9���{P �CO�pe��V��X�IM֌г~�X'�Vn1��]xU���(tT�<vd��2��E35�u�=��w�y"l��؃*���6,��90Th�pcO�y80T
�!����@#3<RN��s���;�"��33�œ!a(;[G��`e~gRT5P���`Kgs����\jjq.^�M�
+L% ƨ�(�eGya���;�g�QF�^���u	F�s�J��(�V�IhT
D�b\�/�T�@d�ya������қ�چ�.P�Aw�e�=�^�J6f揉_��Ȏq�r6mnj��(b��1L݉;�����D������!������.�tQU�݄U��,��w@�|�P����c��+�N�N���"�S�8�Yf�*���%�0[����*n� ���٤9�T�C���:^�q-㼃�dOP>[<���3L�#gOP!��పz�s��~r������)�@��Y�<Dn�dz����q	�Xs73�%xm�A��^�Q��ܩ
�����0-�PK)����%dp<���[�(,a��3�3�8H2�@)(8��i�.��I��Wh,cG����P�m�<�J�
���IL�i	9�h��U��
�����&�ΊS���\�#��ߕ�!z��PyJh��{֋ĩ������:tj�o��E�:�|2Y�q���^"�0�E�x��4��E!�Q��{�&��l��2�ܙ��y��^SG�
�gAAS�B�g2�(�"p�;�cهh��!�_o_(�$����C~�`�7=eo���8.��x=�%l�
�&l�%��	�ҡA9pJ(�3��E�ĉl�|q����=t*�&
��n5�Y"�s^
A7���}��p���+/KD霵��UAb�L�d-N*B)�������fd_�,,
�>������0N9��R^�xYF�F��'��Y�3�Bj��>��x����=�A�%��Jr"�w���H�������cP��vA�BYq��:��1>�h�x%�N�a�t�5E�%�y�A�iJ|�8}�-��i��� )
�"+�0��@@nP1ġi�����$8!��K���$�/Nq@NG�uo�!���Q�'��%�^�4�5rmR6�&��.��#
M*��d�k4�B�F�4��8�N�V�Po�!���q����T؎�Ԯ��~'���
�(�*O�9����F���+��H(jdT�³��,H���Թ�^VO��H���)&84%x�M�#��3Vշ7-<ѶJ*"�8m��9U$"���e�i�L���-�M�C��<5�)��+f7��z+I��E朷�D!~���
T^�D�,-�؍�J�S��L!���B�������89���k�o�D8�L�*g~��!@�P8$�*�)@�A3�8��rHr�7E���1J�>_�Q!u��ҧ�!2��t��08��4ߩ�'i{KRI�l;�>��9���x3�RJ�Ys���岣�:��rQI<
]��\qƄ[�+Pܯ���e�q��qRP�L�ۘ�p���N*�/s}f��ڷs���bRT��eƘB8'N���>!L���pw��]�CЭ������e)ra��.�K�4do��!�w�J	�g뇱�@�l���Ի��z�J�d�u�S�r�]��Ν+f�P���%��vo�@v����K�Qńn����A)/Y�C�"r(<���I����f
Q��OK�f��9���c��]��C&B%dW��@p�
TQ����r�A��:���.	�WzY��cr���t�0q��R���%r�j��]�uӖ�}�<�HR�A��+�2۫����ɮeE*��k�)4�N��\'Y�=Й��� ��9N}�L�C���v`�L.sH(.�@NM�e%��@j��M$7Ꮼ��*�RU8�;<>SL����%0F�TQ�h���ʣp�]�*W5�@`�"�%�c��)�qe	f\��C�U	;)�ީ��TO5��R�4Ur�;�zB��ĩ�{Jk�l��iz/��Hn�Zr�-����T��F�g����D��+����oHfڌ�ɑa�(2j����|��3��2�b�W���D��]ܪ�Q3�P�����Ǿ�x9�Tw��U@�<R�	RO��9��'5v�k�9�{��2�"��U@F���;ۯ���&T5��[�Łz*��ui=D ��D*E�p�Y�mq*��7��)d��KL!C ��h��k3T�1,g����r�g�Y|��[lꮎςS?�tZf<W$�h`Q����*��M8��2��q�Rȡ�{���)����w����2N�}��>j�M�rB
��dN���OUOL,
Ԝ9d6�0��{��h�W�ɂT����l��T'/�/Φ�f��wcY��cD�����(Ar�?v��YYJ�j~��OSd�u��2�(��sf8y��r��r��D�
��1I�����g)�$u�)z�NO�I�>�2N�Y�~O����aF�x8�K�����Y�(�w(������ĭv��\8	���S��i��
}���	��TbB~W�Kp�����+�g�%�l����l��R�2{<6P��Q�����=^2/+}x2_Yؕy�{��Մ�
�Մ��|W��"�QRج�Ч���\�����π-M$Q��w�C8���hdJ3S�z�;�P�*��N5>y�Ԅ%Bx$/�)������P�4=�[+��b���RͬL�S�ϒ��?�W�L���SÇ���I@�;yP��B@��ai"�55Y�fR���^��@�c�m��f��G�E����8�d%
Ax�y]	���$^Z��y��\�ri�c��l�p�\n�pŌGl�!}���(_"!�׷�ҋ-�N�iW�T x9����:rtd.kj��b�	Z2[m��LE�[�P�6�@�fc	SD(��T�
Z�������<�(,�qN���%^�fi�.�^/�&�Fw�@!��bfJX`X��z]Lֹe[�)�t����85�����FS��`B>�6K�e3�M�L���R�y�r!�T���#��t��8�u)���~|se�~p�w\�*&S&F�g�)a����}�g�x�Ug���d����x�2�	��E��c���L�g*lf>	���Ι��y�+���N�P�r51J��0vEpU1SMb\�1�/P���93�d�mۉw�#ۛ=<��gȑ�P�47�@�)H=U*�Vm"v:'y.��ljW�y5 �LZ�?rY۶M$���P%
)'�OQq-�w3�3g��ܟ<��b8{�;�.�O�Q�"?(�T�7{��	����R���__!�ċyF�٢Z�E�,w��7[~� �L~�/��o<�K/�R�Vh���#�	Bn=9%}f���������2�OsP�b�����;#���Rl!���z_��q���۫Z��>���n&�;ϐ(�c�[�����{
���E���'����~��~;���k����D�_�`�?/f������<IEND�B`�js/colorpicker/images/select.png000060400000001006152455614210012724 0ustar00�PNG


IHDR$$���	pHYs�� cHRMz-�����RqE�f9!�'�V�IDATx��J�@E�K�*Ԥ-���q�_�•��ʅ_Խ+���A	�ibAM���`[�iZȅ�<�̙��Kr����-�h���;�@ "�q��Q�"`$"�c
E�`��(sM�p	��2�'0.�7��Z�Dk}�ͤ�(����$I��T������ֆ��)��1p��x[�H���$���
TsI��Vϭ�qp<�B�Z�?�_}b`��X�Q�
S	T�@%P	Tm;���\���c�@<<>��n�~��9@�*PκOf��
4��C�W迌E}f�Ƙ�ʹRI�~��ݮ�*?�h�H$�]��f��4�.�(Wń
'���
8ZS�p����6ˇN�c"��Na�<4*&�:���ֺ
�Dd�2ć����<�/y�ķPdIEND�B`�js/colorpicker/images/index.html000060400000000054152455614210012736 0ustar00<html><body bgcolor="#FFFFFF"></body></html>js/colorpicker/images/blank.gif000060400000000061152455614210012515 0ustar00GIF89a��������!�,T;js/colorpicker/images/colorpicker_rgb_r.png000060400000001772152455614210015146 0ustar00�PNG


IHDR>B�C�	pHYs�� cHRMz-�����RqE�f9!�'�V�IDATx��]HA��vg�ӳ�#/1���<?�.̊D
|{,��D���#{�|�L+�PJ������!
AB8(���N/�<�L����a�c������3���;?������,�KN�Z$�epqɩLOC�63�@ �l,t�gH�\ƌ���uU�V��ǿO3Rq7a�b��������J��r
H2�XL�C�u5'��VI��ޞ.��LD���}�h�{��X���(g[Ɩ�����S5�ͮ-�q�<���U�U�&P��|�l��&�~��b����x?�n���L'O��Y�
ˇU��QsA����|���u������75])�S�&~$j�҉���X�{�V�^m~߫�ׯ�,�vLLN��ө��ʐ�9MI2�Pa�Xժ̊#��m��ə�m�D*�I�,ܵ��;��cUe�
e�>�X����臌f愹pQ���}�>O��D,�ן'(O����O:=3�&wǬ}���R�R6�	:�n�����t��_�|�>�r�N#��@<��qvW�@����~U�d��c�Ϲ�͎z�R�6���B���y#��Ǒ1V�v�Y4�u,q��7�F�7\1l��F ����F�7���F�m�I#�Ve�F`���l��x�������~���
��s��8D���1�X���j�Մq�:��c�����XG��8D��E�2y�R��QF"M����MmX�`47��jqZp��������4U��#@ЦiK����5puI�?w����}�������g�^:{<t��F��?�|�p����]#@�/Iݏ^F��`\��k���9h�Ƨ��ğ�!�*:�1�:g��`ͧR����Sz��>�IEND�B`�js/colorpicker/images/colorpicker_hex.png000060400000001062152455614210014627 0ustar00�PNG


IHDRH,I�i\	pHYs�� cHRMz-�����RqE�f9!�'�V�IDATx���KAǿ����L"<E�a!:������;<B�!���P�`F
�+mc��m�����i��v����f��7��Tkw�P�bш��t3ӊ�5�Z&��3��|i�#x2c��ا�{Pj~�U��UQ�E�_{����Ṋ���}O��� �]j&�f����2�ws<�2YwQJ��50�B��#$���1�R�P*x0�Fp��ڌ�SˏU)�w�?t`�vrbZ��Y��>��<�x�Y�,��Wȃ
��o��G��'�|�
3܊uߔ��@��3�`�����&6���C�X4������7���%q��hZ�K�����J��N$ˋ�0�*���*���k�Ri��ʬ8����j�J�T�����-�R��J@��3�`�T�tj���U� �%�J�����=w��X$,ݫIEND�B`�js/colorpicker/images/colorpicker_rgb_g.png000060400000002055152455614210015126 0ustar00�PNG


IHDR>B�C�	pHYs�� cHRMz-�����RqE�f9!�'�V�IDATx��]HSa��ǜ�����u�(�D�$�7A7vXY�iid	Yx!�i���eA�R�t	� !I�����#77���;];7�B;�x^����y����y���������6����`��!'}n^C���v����	�z��l�o��c���:�Qƣ��J?8�?0��	��x$?�o�1pP���}�h�C��ӧNܟ����݇�N1\Kg���Hv�N����iڋ�]���ʎiu��&n��!�h�L��j�T:�jWJ<dg�~�dg��|ئY\ZҪ���X��f���92|gsCMHP I�L׫�$��(�����8vv�u�O�b"ef�uxt��f�/;W�L��ʖ�<�~�SkGt�F�U6�rt��b�[��%�J�L�r�D�Iq��E2�ט�O�P�=xb_Y����"f�5�[�A1a�K_5�����N�;�������DQq�Bi���~|�KLKN�^��R0���#S��u�_�O�[}�tQ��R�Z^ޝ���T���ն����z���!�_���&����7�OC���?M��f�����t�c#5��8���cs��~U��RT���̜9�a�`bfN�'+9�}C@K�����ҕ
�@^N&G��{�" ���{"�����@" ��I�{��$���lC"&�R͠x��͡�yJz��^�~�&�Ё\�'P��a�p,�I�P%��Ղ��u��P%�3V[u����q^����@Meѕ�� 8��v�����VW2N^��Mk��:��"Jyh����40�,[��)�����-O]a�A�5�>�׷���q��F��^'4�w���%��#���K'���#��D���Α�D`b��fWݛ�fGU:�yZu����D"�=���)�TIEND�B`�js/colorpicker/images/colorpicker_indic.gif000060400000000126152455614210015112 0ustar00GIF89a#	���Θ�����!�,#	'L��˝�q��h��\E�m�f�86!xN�S~�k�L�P�;js/colorpicker/images/colorpicker_background.png000060400000003574152455614210016174 0ustar00�PNG


IHDRd�8��	pHYs�� cHRMz-�����RqE�f9!�'�VIDATx����ow���qv�v%J�kpH� 'ĉ#B��
	��p�ąn��)�D�R	�
�B�(T����&]{8t�����g6��}iyl볳/}5;����4��$W��O���i�'IUU����j��$�K�eN/�~�w��:,6�1�˱�hp����1&�e��&�dNK�8ɟ��.�<�V�4�I�[��?x���g�>52�%8sf��7_�����˃$�]l��7��G�p~3�^�`jK������}��V�������|~(�K�����܂x}`4edA@�
4<��O����?����ڬs}w'�'�����a������\����~�3s����,�,��$w�=���N㇏��7L��$9q�����/{�������$��~�����;�z�������3l�S��yU���T+��k�˞3sY�)(�t�I��[fx�!ȃ*�~�H�̊'i:�_!��� �J�A�2��A�2��AAA���d�BA��Q�])�!����AAA�c� #�P�Q�}�‘"�Џ� #� � ��R2�e%Y��"�Џ� #Ȱ:A�#��Ղ� CF�"�Џ� #�P�Z�d(�Q���a}$�2�cj}� � � C�D�d(�,�OA�"L_b��6��Lr���ܷ6ks9�\����0�䮏Ӻ��s��D��p.VȬ��K\!��n��k�s95Af���n��ƈ Cw��|�ddV�$>�	A�"̒T�o�A�~LAAAAF��� � � � � #� � ��yA���\e�222�,�222+�.7�:2���Zr�a�;Pdz2�s2�d�0dZFF� Cj#@��c#@�A�A��e�� CjAF��cAF�A�A��e�n�l;2B�[!2��A+ddd�3J��a���:�{�1"���X�dX� � CF��"�ЏZ�d(�X�d(Ùy��z��2�db�� C��� Cfq��Ŭ�A�LA��Y!o#��� �ʘ��
�/#��M��2a*�222�̒T�o�A��VȂ� C&�� �22�̌A�rV� �P�� �`��-�t{c�2B�[!2��2�V� ��\��� h`�2�a=�u�@�d��8NX � � � �2�d�02�06Zj#@����'�0dZjAF���t�_ۑ"�Џ� #� � � �2���. �P@��AAF�A�[AA����堞!���� 2���A�2�=M�:�3�(2�=�Z"#� � ��\�]�� � � � #� � ��yA�zC�
cD�A�d�V�/#��M�3�d(�,I�a��d��T�dddd� � � � � �2fb2�a�no�UF� C?��� � � C�D�dx�����3}6�Zs�[�V���<(>�[�u�&�u���[����9��J>�h/o���^��s��x"(?��wwr�ރ��������Ή��η_K��|���)���,��?���Fn޸fr��07�{� ���D�  �������l0d�K�w0�p��$OZ�?.6\\lxk��7~�׿���f�4�K+�nmzR5Ms%ɍņ�$�N�8��,GI�L�$O�R%I�4?L�iF/�AUU>^���L^|�
��{[5M���J�sq�+�ei��%yTU���ʜ�MR��IEND�B`�js/colorpicker/images/alpha.png000060400000006307152455614210012543 0ustar00�PNG


IHDR
d�̡�	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F�IDATxڬW�u!	
H�P��N�EJ�\v�@H ���ޕG�A#!$��Tb��C��؃��`���H�>��ˀl��1�S��~8��!r�-#�В����h�w���PW�\�0�!��}�pti+��{WS35�,1ϣ&��C�� �}&$?m�W+L�D�X��inC����ױ�� F=S��
n
]Hs]2�B�a��T�Z�au�4��kz�=״�����p
���꼤��5�������lsI�Ly�PLu�|�3%0!^�L�3S;xGTǒ�3�$P;�Ÿ�֖C�c���z2u����|33��KͶ�zt-�b[�}5�{f��a���3z(���F��T;���9�f��l��5t'XFR��
<�f�Пdo�hrq�6��gpG���
�@Ҭ��ⓙ��5E���,L3�Ӫ���4�͖+�N�R�Zg��:�M-������.��r��L+�F!�j&��P"f&�A����v^�\��p�<a������
�YHIEND�B`�js/colorpicker/images/colorpicker_select.gif000060400000000116152455614210015302 0ustar00GIF89a�������!�,��h�X�F��Y��}����%pZt<P�(F;js/colorpicker/images/alpha-horizontal.png000060400000007063152455614210014732 0ustar00�PNG


IHDRd
B�~
DiCCPICC ProfileH
��wT����l/�]�"e齷�.�H�&
��KY�e�7D"��V$(b�h(+�X�	"JF�����;'��N�w>�}��w���(!a�@�P"��f��'0�D�6p����(�h��@_63u��_�-�Z�[�3���C�+K���;?��r!�Y��L�D���)c#c1� ʪ2N����|bO�<�G����͓q��|������|�o���%���ez6���"�%|n:��(S�ёl��@��}�)_��_��	;G�D,HK�0��&Lgg3���ŗH,�9�L���d�d�8�%|�fYP�Ֆ���������-������d����2�ϞA��/ڗ�/ZN-�)�6[�h);h[���/��>�h��{�yI�HD.VV����>�RV���:|��{��<K�y�k���r�Y���ܜ����+�p�L����UZ_�a�O�B�t��4��B�@"�2¿���*~�khu=�(���k���I܃�@��B����=�i�QF����a�2���1e2;2�ɕ��d��	���t���0�8W�	|A� ,\�����`
(%`���^P@8�Ip\W�5p�C`<��5�� Q!�iC�d� w�
�"�x(J���Z��J�r��5@�C'�s�e��
C����;�)0ք
a+�{��p4�N��K�Bx3\��G�V�|�	���) d��� a#aH�����H1R��"MHҍ\G��	�-��a��+&3��,ƬĔb�1�0��.�u�0f�K�j`Ͱ.�@l6
��-�Vb�-�؛�Q�k��p�x\n��׌;��Ǎ��x����s�|~'��~?�C �	�?BAHXK�$&�&�3D�хF��ˈu�bq�8CR$��HѤ�R��t�t��L&뒝�dy5��|�|�<L~KQ��RؔD����r�r�r��J�R=�	T	u3��z����F�&g)(Ǔ[%W#�*7 �\�(o �%�H~�|��q�>�	���[���R�F� ”"M�F1L1[�T��e�'Jx%C%_%�R����J#4��GcӸ�u�:��(G7��3�%����Ie%e{����S�C�a�dd1����T4U�T�*�T�TT�U�z��U�U�Uo��Sc���e�mUkS{��Q7U�P�Wߣ~A}b}����9���Հ5L5"5�i��ј�����i��<�9������Ъ�:�5�M�v�hWh��~�Tfz1��U�.椎�N��Tg�N�Ό���|ݵ�ͺ�Hz,�T�
�N�I}m�P���w
�,�t��ӆF������-5j4�oL5�0^l\k|�g�2�4�mr�6u0M7�1�3���f��ͱ���B�Z�A���E�E�Ű%�2�r�e��s+}���V�V�������(�٬����Ԗk[c{Îj�g�ʮ��=�~��m�C���N��N�b�&�q'}�d�]N�,:+�Uʺ�u�v^�|��������o�����]��5�˟[7w�M׍��mȝ���}�Cǃ�Q���Sϓ�Y�9�e��u�빷��ػ�{���^�>�����*����}�����7����l6 8`k�`�f 7�!p2�)hEPW0%8*�:�Q�i�8�#
�z��<ἶ0�-�A�Q���#p�5�#m"�GvGѢ��G����.��7�x�t~g�|LbLC�t�Oly�P�U܊�����|BLB}�����&:$%�Zh��`��Eꋲ�J�O�$O�&�&N~�	��r�RSv�Lr���g<O^o���/珥����>IsKۖ6��^�>!`�/22�fLg�e̜͊�j�&d'g�*	3�]9Z99�"3Q�hh����'��\(wan����L�H����y�y5yo�c�(z��.ٴdl���o�a�q�u.�Y�f��
��WB+SVv��[U�jt���CkHk2���zm��W�b�uj�.Y￾�H�H\4��u�ލ�������6���W|�ĺ���})���76�T}3�9uso�cٞ-�-�-��zl=T�X��|d[��
fEqū�I�/W�W��A�!�1TRվS疝�ӫo�x�4��صi��n��=�{��j�-�n�`���[k
k+��x\S�-�ۆz������E�jpjh8�q��n�6�I<r�;��ڛ,��73�K���ңO�O��ֱ�c��YǛ~0�aW���j]�:ٖ�6���"�Dg�kGˏ�?<�s���ӤӅ�g�,=3uVtv�\ڹ�Τ�{�������|��E��绽��\r�t���WXWڮ:^m�q�i��᧖^���>���k��:���8w����7�ޜw���[��n�n?��u��ݼ�3�V���/~�����ڟM~nr:5�3��(�ѽ�ȳ_ry?Z����rL{��퓓�~�מ.x:�L�lf��W�_w=7~��o���L�M��������˃��_uN�O=|��zf���ڛCoYo��ž���_���C���g�gg����`	pHYs���IDATH
��IN�:E�<	$�X݄
�	V�&X��0B	$ �N}_��H?R^��6��i޸,���yss3M��nj'?ooo���y�����s��v���Q�����L���#�O��<N�q����]�#&���al�y��tvvVq�wp�%���nxᷣ��/��{�W�᭾Zx���}W���c�r���V׶�4�)���k
�n���<�b,c,L\�?1��65�7=�/~P7�ō�z(�B��ɉ�{�^m]E�������ܿ~�\]]�2~~~6#6�
�x`aųE���>��{�a�T����Q��!���uq{�{�r#U?��KXϧ���J?Y��Y��mú/�q�+
�*��*|h�~�G��}���Ʊ�tn.�d�ਟ0�kߞ���gC�\O�,7hr�OH|cXk��F��������<�NOަ��ǽ�o�7��5���k0r����u�'ȇ�����������C<
�����>^\\�͖���!��<������94b�S��{cS�K�3<9���fr���
/��!��Y<ldr�	�9�/�e��Sc�%.>})�Q����%���;��CZ�<�Ѧ���\�L�O�qwWO�����������Y��k�����\ƪ�d�
W����Z���9n;?���M�l��>��U�,�:!�ooo������̿��j��O����Ɇi��}q`e3G�8Vu��-��(�Jg��̯�7�*�F�/�|%}Cj1^?+�=!p�)��I�W��-
_����c��
%"��;sB�~.��p��)�Z�p�SM|���=��7Ak�6���䋜U2��V��pb��L�!L�8��D\bnZ�j1�L�ZL�n=L���u�'��#��J��žD�IEND�B`�js/colorpicker/images/colorpicker_submit.png000060400000001745152455614210015356 0ustar00�PNG


IHDR,�7ߧ	pHYs�� cHRMz-�����RqE�f9!�'�VkIDATx���o�dƟׯ�ĉ���F�-EaK����A�KӺ��l7\��
��2�&6:iRA��-�JW5ݔ�~�i;�'�.�.Hk�G�ͱ���9���D�XҰ�}^�X�:B�=[�g�X�ea�0󟷈�'fgf<KS�;qT$O
�O����}��݂L���k����o�+ߜ	�G({Proo��
�|a���蛻/W*��*�ߘ8�}1��y1� �UC���ȩN�|�˙��8r�/YH$�����k9P	���zjP,��/_Z�nl.��9v�!��h&sw�o_���
4?�x�-@���@dϖ�O�F����؃hZ�n{ef��]%�_��AV�'Q�����R�,�V�?�%�^e0i��S�j�*���$��!ހNy���r%^T:�'�2��2�*p�(��e�5l�jgcg�z�]%'��e�!@a�V��@�!��xzs��ѰO34�����,�5�4�"X�Ȳ�XHh��^�z�w$���܏��	�:�H
$	d�(68��6��v��U�����~��j.�+���A�@H�����╋�}ǻ�9��Y8?z����ϯ�����.��R�)k�����}r��sgw߷w���w!�Pʰ��[�{z:�,�s�n�FBC/���
�4-ǥ^7���<�Ա��a�oV۲,��QM�lm�0L�|l^����}��7���/�l�E6_(�4�ܞ-&������N��B�a��&�la⧱+mD�M�c��-�'�F�,������ۓ���k�scM��	
}�F;�w�N�����b�X,�a�R��F��ȿD�,>H����v��"�IEND�B`�js/colorpicker/images/hue.png000060400000005634152455614210012241 0ustar00�PNG


IHDRd�N�7	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F�IDATx�L�M+D��v��N"K�X��G�d'�l5���Ԍ)�<.Y���e1�b(��芦���8#q+�ŗw� ��BKM�5�R�?�[bU�b�BV�v�K�F�vJ�t8�a�G�'y"7dDN�Y1���3�O�d��e�BX	�a7��~쨶��Q8��>��|�rG�ș2Qf���]�� K|.6�=lj����IEND�B`�js/colorpicker/images/colorpicker_hsb_h.png000060400000001712152455614210015130 0ustar00�PNG


IHDR>B�C�	pHYs�� cHRMz-�����RqE�f9!�'�VPIDATx��]HA���3{���)h"��w�� A�C��D>�$���كP/%!D�`AB�D�C>B!� �E��E���yz��nsm{{�]����gf�fo~�ٙ�13_|��m�-��6�ڮ(/�=�}�$I@a`���B�{�؋m��㢘߿�<���ץ�T�M��T,�)=��<~������f�.�g)ItI�5��.-��4�;qq�]=Fot�\�ǝ�d�X���'��<!dY���}6�v8��Fc��+T
.�hr�OyԳc`Y&�Ɂ��l������0�0G��\�o��R���O٦���g��
䴊F�,�p˪�S��L�{�����	h�CV@�?ŕP�:�t��Ĵ'=�Ë� I�XDL$dy7�S�Oy\2�Ĵ7��h� T�DŽi��ᬫ^���Z.�w�U*a���]�-�#�����\���ڏ���6
m���p$��Q`tI�g-B���R��N�}�Vt{������
 HzeE��'��R�>2�6�]�'�t%k�����9դ���iL#`#�wd7It��F�4�0���4C�cT�ښ*��A#PYQ�i��f�����2�u~��e�����k´~౹t�q��Yh5���ք�p�V#����`���s㲺�J�[�"MQ�i*F@3F�UOFwW+tw�"U����[����D�{�S`8�6��{��i\#�Iׯ���݇��oY��x}K^ߒ�h�舎)��ߐU�l��tfK��_�U���o�u�q��z$��x��1�P�0��77G���o��z�)F���<�k�_9��9�t����IEND�B`�js/colorpicker/images/colorpicker_hsb_s.png000060400000002220152455614210015136 0ustar00�PNG


IHDR>B�C�	pHYs�� cHRMz-�����RqE�f9!�'�VIDATx��mHSQǟ�{6ݚ��X1��-{�T�
#(���
?A/� d�E��!��a���R}H�("!2�UV[V7�����9�vo���潊r����pv�3��Ξ=�9�i�v;�q a>^DZ|��q\bb��G��\�x����R
@0�z4DK����o��yR���nN�����N���q�:5]�'�������eـ.�<߲e}!��)\a¬���e٢�����g�ך�6��.��2cQdt�z}���nwyyynn.;�ibz�.0��8��}����J����I��������8:�
Oh��RUU���5/-o٢��WS�����P��uuX�Ќ���46�M����������v�ܳ*7=�appH�
c0��8Q �����yaZZYY��{�J6oo��jF�һ
�4-����ixUZZZ���>�As�fR%�K8��gGG�^"3�L����jj���}(���u�⌆i<�Wo?�56�M���eY��t2�|aފ�t���^W���)��11r����C���|���`2��t��ƣp)5��>M��8��>��!T:��#���=M��I��"8�~]�ҍF�̵�X��q3�v��\R���L�sg�B}.WVF����]Q"�."��]Qe˗�*H�d*����3J�D�"����a�*%�\������뤈�T�X�\��(7��QZZZ\\��@e�nL�,���M�ʋ�-�'m흪$�fS���D`vR�'�Q㵚u�O�P"��y�G�e���Kh��Pc�Xr��V�S+��b�Jt�	�:	D��)�Dӡq��^�KD�D��>'��3Gw���W%̩�W�؁�/4��hE?ӳ�����1��f�PR���}�H|m��z�������o�T�ߎ'�.ߌ�D�h<.Z��ȃ����&H��^�
����%ڑG���ݰr���G�D��s$��{�Ljק�Z�ˈ*�G��!�]���g9�'
��k�IEND�B`�js/colorpicker/css/index.html000060400000000054152455614210012261 0ustar00<html><body bgcolor="#FFFFFF"></body></html>js/colorpicker/css/colorpicker.css000060400000010526152455614210013317 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */


.colorpicker{
	position: absolute;
	background-color: white;
	border: solid 1px #c4c4c4;
	min-width: 120px !important;
	padding: 5px !important;
}

.colorpicker-alpha{
	display: none !important;
}

.colorpicker-saturation{
	float: left;
	width: 100px;
	height: 100px;
	cursor: crosshair;
	background-image: url("../images/saturation.png")
}

.colorpicker-saturation i{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 5px;
	height: 5px;
	margin: -4px 0 0 -4px;
	border: 1px solid #000;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px
}

.colorpicker-saturation i b{
	display: block;
	width: 5px;
	height: 5px;
	border: 1px solid #fff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px
}

.colorpicker-hue, .colorpicker-alpha{
	float: left;
	width: 15px;
	height: 100px;
	margin-bottom: 4px;
	margin-left: 4px;
	cursor: row-resize
}

.colorpicker-hue i, .colorpicker-alpha i{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 1px;
	margin-top: -1px;
	background: #000;
	border-top: 1px solid #fff
}

.colorpicker-hue{
	background-image: url("../images/hue.png")
}

.colorpicker-alpha{
	display: none;
	background-image: url("../images/alpha.png")
}

.colorpicker-saturation, .colorpicker-hue, .colorpicker-alpha{
	background-size: contain
}

.colorpicker{
	top: 0;
	left: 0;
	z-index: 2500;
	min-width: 130px;
	padding: 4px;
	margin-top: 1px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	*zoom: 1
}

.colorpicker:before, .colorpicker:after{
	display: table;
	line-height: 0;
	content: ""
}

.colorpicker:after{
	clear: both
}

.colorpicker:before{
	position: absolute;
	top: -7px;
	left: 6px;
	display: inline-block;
	border-right: 7px solid transparent;
	border-bottom: 7px solid #ccc;
	border-left: 7px solid transparent;
	border-bottom-color: rgba(0, 0, 0, 0.2);
	content: ''
}

.colorpicker:after{
	position: absolute;
	top: -6px;
	left: 7px;
	display: inline-block;
	border-right: 6px solid transparent;
	border-bottom: 6px solid #fff;
	border-left: 6px solid transparent;
	content: ''
}

.colorpicker div{
	position: relative
}

.colorpicker.colorpicker-with-alpha{
	min-width: 140px
}

.colorpicker.colorpicker-with-alpha .colorpicker-alpha{
	display: block
}

.colorpicker-color{
	height: 10px;
	margin-top: 5px;
	clear: both;
	background-image: url("../images/alpha.png");
	background-position: 0 100%
}

.colorpicker-color div{
	height: 10px
}

.colorpicker-selectors{
	display: none;
	height: 10px;
	margin-top: 5px;
	clear: both
}

.colorpicker-selectors i{
	float: left;
	width: 10px;
	height: 10px;
	cursor: pointer
}

.colorpicker-selectors i + i{
	margin-left: 3px
}

.colorpicker-element .input-group-addon i, .colorpicker-element .add-on i{
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: text-top;
	cursor: pointer
}

.colorpicker.colorpicker-inline{
	position: relative;
	z-index: auto;
	display: inline-block;
	float: none
}

.colorpicker.colorpicker-horizontal{
	width: 110px;
	height: auto;
	min-width: 110px
}

.colorpicker.colorpicker-horizontal .colorpicker-saturation{
	margin-bottom: 4px
}

.colorpicker.colorpicker-horizontal .colorpicker-color{
	width: 100px
}

.colorpicker.colorpicker-horizontal .colorpicker-hue, .colorpicker.colorpicker-horizontal .colorpicker-alpha{
	float: left;
	width: 100px;
	height: 15px;
	margin-bottom: 4px;
	margin-left: 0;
	cursor: col-resize
}

.colorpicker.colorpicker-horizontal .colorpicker-hue i, .colorpicker.colorpicker-horizontal .colorpicker-alpha i{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 1px;
	height: 15px;
	margin-top: 0;
	background: #fff;
	border: 0
}

.colorpicker.colorpicker-horizontal .colorpicker-hue{
	background-image: url("../images/hue-horizontal.png")
}

.colorpicker.colorpicker-horizontal .colorpicker-alpha{
	background-image: url("../images/alpha-horizontal.png")
}

.colorpicker.colorpicker-hidden{
	display: none
}

.colorpicker.colorpicker-visible{
	display: block
}

.colorpicker-inline.colorpicker-visible{
	display: inline-block
}

.colorpicker-right:before{
	right: 6px;
	left: auto
}

.colorpicker-right:after{
	right: 7px;
	left: auto
}
js/colorpicker/js/index.html000060400000000054152455614210012105 0ustar00<html><body bgcolor="#FFFFFF"></body></html>js/colorpicker/js/colorpicker.js000060400000052626152455614210012776 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

!function(a){
	"use strict";
	"object" == typeof exports ? module.exports = a(window.jQuery) : "function" == typeof define && define.amd ? define(["jquery"], a) : window.jQuery && !window.jQuery.fn.colorpicker && a(window.jQuery)
}(function(a){
	"use strict";
	var b = function(b, c){
		this.value = {h: 0, s: 0, b: 0, a: 1}, this.origFormat = null, c && a.extend(this.colors, c), b && (void 0 !== b.toLowerCase ? (b += "", this.setColor(b)) : void 0 !== b.h && (this.value = b))
	};
	b.prototype = {
		constructor: b,
		colors: {
			aliceblue: "#f0f8ff",
			antiquewhite: "#faebd7",
			aqua: "#00ffff",
			aquamarine: "#7fffd4",
			azure: "#f0ffff",
			beige: "#f5f5dc",
			bisque: "#ffe4c4",
			black: "#000000",
			blanchedalmond: "#ffebcd",
			blue: "#0000ff",
			blueviolet: "#8a2be2",
			brown: "#a52a2a",
			burlywood: "#deb887",
			cadetblue: "#5f9ea0",
			chartreuse: "#7fff00",
			chocolate: "#d2691e",
			coral: "#ff7f50",
			cornflowerblue: "#6495ed",
			cornsilk: "#fff8dc",
			crimson: "#dc143c",
			cyan: "#00ffff",
			darkblue: "#00008b",
			darkcyan: "#008b8b",
			darkgoldenrod: "#b8860b",
			darkgray: "#a9a9a9",
			darkgreen: "#006400",
			darkkhaki: "#bdb76b",
			darkmagenta: "#8b008b",
			darkolivegreen: "#556b2f",
			darkorange: "#ff8c00",
			darkorchid: "#9932cc",
			darkred: "#8b0000",
			darksalmon: "#e9967a",
			darkseagreen: "#8fbc8f",
			darkslateblue: "#483d8b",
			darkslategray: "#2f4f4f",
			darkturquoise: "#00ced1",
			darkviolet: "#9400d3",
			deeppink: "#ff1493",
			deepskyblue: "#00bfff",
			dimgray: "#696969",
			dodgerblue: "#1e90ff",
			firebrick: "#b22222",
			floralwhite: "#fffaf0",
			forestgreen: "#228b22",
			fuchsia: "#ff00ff",
			gainsboro: "#dcdcdc",
			ghostwhite: "#f8f8ff",
			gold: "#ffd700",
			goldenrod: "#daa520",
			gray: "#808080",
			green: "#008000",
			greenyellow: "#adff2f",
			honeydew: "#f0fff0",
			hotpink: "#ff69b4",
			indianred: "#cd5c5c",
			indigo: "#4b0082",
			ivory: "#fffff0",
			khaki: "#f0e68c",
			lavender: "#e6e6fa",
			lavenderblush: "#fff0f5",
			lawngreen: "#7cfc00",
			lemonchiffon: "#fffacd",
			lightblue: "#add8e6",
			lightcoral: "#f08080",
			lightcyan: "#e0ffff",
			lightgoldenrodyellow: "#fafad2",
			lightgrey: "#d3d3d3",
			lightgreen: "#90ee90",
			lightpink: "#ffb6c1",
			lightsalmon: "#ffa07a",
			lightseagreen: "#20b2aa",
			lightskyblue: "#87cefa",
			lightslategray: "#778899",
			lightsteelblue: "#b0c4de",
			lightyellow: "#ffffe0",
			lime: "#00ff00",
			limegreen: "#32cd32",
			linen: "#faf0e6",
			magenta: "#ff00ff",
			maroon: "#800000",
			mediumaquamarine: "#66cdaa",
			mediumblue: "#0000cd",
			mediumorchid: "#ba55d3",
			mediumpurple: "#9370d8",
			mediumseagreen: "#3cb371",
			mediumslateblue: "#7b68ee",
			mediumspringgreen: "#00fa9a",
			mediumturquoise: "#48d1cc",
			mediumvioletred: "#c71585",
			midnightblue: "#191970",
			mintcream: "#f5fffa",
			mistyrose: "#ffe4e1",
			moccasin: "#ffe4b5",
			navajowhite: "#ffdead",
			navy: "#000080",
			oldlace: "#fdf5e6",
			olive: "#808000",
			olivedrab: "#6b8e23",
			orange: "#ffa500",
			orangered: "#ff4500",
			orchid: "#da70d6",
			palegoldenrod: "#eee8aa",
			palegreen: "#98fb98",
			paleturquoise: "#afeeee",
			palevioletred: "#d87093",
			papayawhip: "#ffefd5",
			peachpuff: "#ffdab9",
			peru: "#cd853f",
			pink: "#ffc0cb",
			plum: "#dda0dd",
			powderblue: "#b0e0e6",
			purple: "#800080",
			red: "#ff0000",
			rosybrown: "#bc8f8f",
			royalblue: "#4169e1",
			saddlebrown: "#8b4513",
			salmon: "#fa8072",
			sandybrown: "#f4a460",
			seagreen: "#2e8b57",
			seashell: "#fff5ee",
			sienna: "#a0522d",
			silver: "#c0c0c0",
			skyblue: "#87ceeb",
			slateblue: "#6a5acd",
			slategray: "#708090",
			snow: "#fffafa",
			springgreen: "#00ff7f",
			steelblue: "#4682b4",
			tan: "#d2b48c",
			teal: "#008080",
			thistle: "#d8bfd8",
			tomato: "#ff6347",
			turquoise: "#40e0d0",
			violet: "#ee82ee",
			wheat: "#f5deb3",
			white: "#ffffff",
			whitesmoke: "#f5f5f5",
			yellow: "#ffff00",
			yellowgreen: "#9acd32",
			transparent: "transparent"
		},
		_sanitizeNumber: function(a){
			return "number" == typeof a ? a : isNaN(a) || null === a || "" === a || void 0 === a ? 1 : void 0 !== a.toLowerCase ? parseFloat(a) : 1
		},
		isTransparent: function(a){
			return a ? (a = a.toLowerCase().trim(), "transparent" === a || a.match(/#?00000000/) || a.match(/(rgba|hsla)\(0,0,0,0?\.?0\)/)) : !1
		},
		rgbaIsTransparent: function(a){
			return 0 === a.r && 0 === a.g && 0 === a.b && 0 === a.a
		},
		setColor: function(a){
			a = a.toLowerCase().trim(), a && (this.isTransparent(a) ? this.value = {h: 0, s: 0, b: 0, a: 0} : this.value = this.stringToHSB(a) || {h: 0, s: 0, b: 0, a: 1})
		},
		stringToHSB: function(b){
			b = b.toLowerCase();
			var c;
			"undefined" != typeof this.colors[b] && (b = this.colors[b], c = "alias");
			var d = this, e = !1;
			return a.each(this.stringParsers, function(a, f){
				var g = f.re.exec(b), h = g && f.parse.apply(d, [g]), i = c || f.format || "rgba";
				return h ? (e = i.match(/hsla?/) ? d.RGBtoHSB.apply(d, d.HSLtoRGB.apply(d, h)) : d.RGBtoHSB.apply(d, h), d.origFormat = i, !1) : !0
			}), e
		},
		setHue: function(a){
			this.value.h = 1 - a
		},
		setSaturation: function(a){
			this.value.s = a
		},
		setBrightness: function(a){
			this.value.b = 1 - a
		},
		setAlpha: function(a){
			this.value.a = parseInt(100 * (1 - a), 10) / 100
		},
		toRGB: function(a, b, c, d){
			a || (a = this.value.h, b = this.value.s, c = this.value.b), a *= 360;
			var e, f, g, h, i;
			return a = a % 360 / 60, i = c * b, h = i * (1 - Math.abs(a % 2 - 1)), e = f = g = c - i, a = ~~a, e += [i, h, 0, 0, h, i][a], f += [h, i, i, h, 0, 0][a], g += [0, 0, h, i, i, h][a], {r: Math.round(255 * e), g: Math.round(255 * f), b: Math.round(255 * g), a: d || this.value.a}
		},
		toHex: function(a, b, c, d){
			var e = this.toRGB(a, b, c, d);
			return this.rgbaIsTransparent(e) ? "transparent" : "#" + (1 << 24 | parseInt(e.r) << 16 | parseInt(e.g) << 8 | parseInt(e.b)).toString(16).substr(1)
		},
		toHSL: function(a, b, c, d){
			a = a || this.value.h, b = b || this.value.s, c = c || this.value.b, d = d || this.value.a;
			var e = a, f = (2 - b) * c, g = b * c;
			return g /= f > 0 && 1 >= f ? f : 2 - f, f /= 2, g > 1 && (g = 1), {h: isNaN(e) ? 0 : e, s: isNaN(g) ? 0 : g, l: isNaN(f) ? 0 : f, a: isNaN(d) ? 0 : d}
		},
		toAlias: function(a, b, c, d){
			var e = this.toHex(a, b, c, d);
			for(var f in this.colors)if(this.colors[f] === e)return f;
			return !1
		},
		RGBtoHSB: function(a, b, c, d){
			a /= 255, b /= 255, c /= 255;
			var e, f, g, h;
			return g = Math.max(a, b, c), h = g - Math.min(a, b, c), e = 0 === h ? null : g === a ? (b - c) / h : g === b ? (c - a) / h + 2 : (a - b) / h + 4, e = (e + 360) % 6 * 60 / 360, f = 0 === h ? 0 : h / g, {h: this._sanitizeNumber(e), s: f, b: g, a: this._sanitizeNumber(d)}
		},
		HueToRGB: function(a, b, c){
			return 0 > c ? c += 1 : c > 1 && (c -= 1), 1 > 6 * c ? a + (b - a) * c * 6 : 1 > 2 * c ? b : 2 > 3 * c ? a + (b - a) * (2 / 3 - c) * 6 : a
		},
		HSLtoRGB: function(a, b, c, d){
			0 > b && (b = 0);
			var e;
			e = .5 >= c ? c * (1 + b) : c + b - c * b;
			var f = 2 * c - e, g = a + 1 / 3, h = a, i = a - 1 / 3, j = Math.round(255 * this.HueToRGB(f, e, g)), k = Math.round(255 * this.HueToRGB(f, e, h)), l = Math.round(255 * this.HueToRGB(f, e, i));
			return [j, k, l, this._sanitizeNumber(d)]
		},
		toString: function(a){
			a = a || "rgba";
			var b = !1;
			switch(a){
				case"rgb":
					return b = this.toRGB(), this.rgbaIsTransparent(b) ? "transparent" : "rgb(" + b.r + "," + b.g + "," + b.b + ")";
				case"rgba":
					return b = this.toRGB(), "rgba(" + b.r + "," + b.g + "," + b.b + "," + b.a + ")";
				case"hsl":
					return b = this.toHSL(), "hsl(" + Math.round(360 * b.h) + "," + Math.round(100 * b.s) + "%," + Math.round(100 * b.l) + "%)";
				case"hsla":
					return b = this.toHSL(), "hsla(" + Math.round(360 * b.h) + "," + Math.round(100 * b.s) + "%," + Math.round(100 * b.l) + "%," + b.a + ")";
				case"hex":
					return this.toHex();
				case"alias":
					return this.toAlias() || this.toHex();
				default:
					return b
			}
		},
		stringParsers: [{
			re: /rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*?\)/, format: "rgb", parse: function(a){
				return [a[1], a[2], a[3], 1]
			}
		}, {
			re: /rgb\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*?\)/, format: "rgb", parse: function(a){
				return [2.55 * a[1], 2.55 * a[2], 2.55 * a[3], 1]
			}
		}, {
			re: /rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/, format: "rgba", parse: function(a){
				return [a[1], a[2], a[3], a[4]]
			}
		}, {
			re: /rgba\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/, format: "rgba", parse: function(a){
				return [2.55 * a[1], 2.55 * a[2], 2.55 * a[3], a[4]]
			}
		}, {
			re: /hsl\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*?\)/, format: "hsl", parse: function(a){
				return [a[1] / 360, a[2] / 100, a[3] / 100, a[4]]
			}
		}, {
			re: /hsla\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/, format: "hsla", parse: function(a){
				return [a[1] / 360, a[2] / 100, a[3] / 100, a[4]]
			}
		}, {
			re: /#?([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/, format: "hex", parse: function(a){
				return [parseInt(a[1], 16), parseInt(a[2], 16), parseInt(a[3], 16), 1]
			}
		}, {
			re: /#?([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/, format: "hex", parse: function(a){
				return [parseInt(a[1] + a[1], 16), parseInt(a[2] + a[2], 16), parseInt(a[3] + a[3], 16), 1]
			}
		}],
		colorNameToHex: function(a){
			return "undefined" != typeof this.colors[a.toLowerCase()] ? this.colors[a.toLowerCase()] : !1
		}
	};
	var c = {horizontal: !1, inline: !1, color: !1, format: !1, input: "input", container: !1, component: ".add-on, .input-group-addon", sliders: {saturation: {maxLeft: 100, maxTop: 100, callLeft: "setSaturation", callTop: "setBrightness"}, hue: {maxLeft: 0, maxTop: 100, callLeft: !1, callTop: "setHue"}, alpha: {maxLeft: 0, maxTop: 100, callLeft: !1, callTop: "setAlpha"}}, slidersHorz: {saturation: {maxLeft: 100, maxTop: 100, callLeft: "setSaturation", callTop: "setBrightness"}, hue: {maxLeft: 100, maxTop: 0, callLeft: "setHue", callTop: !1}, alpha: {maxLeft: 100, maxTop: 0, callLeft: "setAlpha", callTop: !1}}, template: '<div class="colorpicker dropdown-menu"><div class="colorpicker-saturation"><i><b></b></i></div><div class="colorpicker-hue"><i></i></div><div class="colorpicker-alpha"><i></i></div><div class="colorpicker-color"><div /></div><div class="colorpicker-selectors"></div></div>', align: "right", customClass: null, colorSelectors: null}, d = function(d, e){
		if(this.element = a(d).addClass("colorpicker-element"), this.options = a.extend(!0, {}, c, this.element.data(), e), this.component = this.options.component, this.component = this.component !== !1 ? this.element.find(this.component) : !1, this.component && 0 === this.component.length && (this.component = !1), this.container = this.options.container === !0 ? this.element : this.options.container, this.container = this.container !== !1 ? a(this.container) : !1, this.input = this.element.is("input") ? this.element : this.options.input ? this.element.find(this.options.input) : !1, this.input && 0 === this.input.length && (this.input = !1), this.color = new b(this.options.color !== !1 ? this.options.color : this.getValue(), this.options.colorSelectors), this.format = this.options.format !== !1 ? this.options.format : this.color.origFormat, this.picker = a(this.options.template), this.options.customClass && this.picker.addClass(this.options.customClass), this.options.inline ? this.picker.addClass("colorpicker-inline colorpicker-visible") : this.picker.addClass("colorpicker-hidden"), this.options.horizontal && this.picker.addClass("colorpicker-horizontal"), ("rgba" === this.format || "hsla" === this.format || this.options.format === !1) && this.picker.addClass("colorpicker-with-alpha"), "right" === this.options.align && this.picker.addClass("colorpicker-right"), this.options.colorSelectors){
			var f = this;
			a.each(this.options.colorSelectors, function(b, c){
				var d = a("<i />").css("background-color", c).data("class", b);
				d.click(function(){
					f.setValue(a(this).css("background-color"))
				}), f.picker.find(".colorpicker-selectors").append(d)
			}), this.picker.find(".colorpicker-selectors").show()
		}
		this.picker.on("mousedown.colorpicker touchstart.colorpicker", a.proxy(this.mousedown, this)), this.picker.appendTo(this.container ? this.container : a("body")), this.input !== !1 && (this.input.on({"keyup.colorpicker": a.proxy(this.keyup, this)}), this.input.on({"change.colorpicker": a.proxy(this.change, this)}), this.component === !1 && this.element.on({"focus.colorpicker": a.proxy(this.show, this)}), this.options.inline === !1 && this.element.on({"focusout.colorpicker": a.proxy(this.hide, this)})), this.component !== !1 && this.component.on({"click.colorpicker": a.proxy(this.show, this)}), this.input === !1 && this.component === !1 && this.element.on({"click.colorpicker": a.proxy(this.show, this)}), this.input !== !1 && this.component !== !1 && "color" === this.input.attr("type") && this.input.on({"click.colorpicker": a.proxy(this.show, this), "focus.colorpicker": a.proxy(this.show, this)}), this.update(), a(a.proxy(function(){
			this.element.trigger("create")
		}, this))
	};
	d.Color = b, d.prototype = {
		constructor: d, destroy: function(){
			this.picker.remove(), this.element.removeData("colorpicker").off(".colorpicker"), this.input !== !1 && this.input.off(".colorpicker"), this.component !== !1 && this.component.off(".colorpicker"), this.element.removeClass("colorpicker-element"), this.element.trigger({type: "destroy"})
		}, reposition: function(){
			if(this.options.inline !== !1 || this.options.container)return !1;
			var a = this.container && this.container[0] !== document.body ? "position" : "offset", b = this.component || this.element, c = b[a]();
			"right" === this.options.align && (c.left -= this.picker.outerWidth() - b.outerWidth()), this.picker.css({top: c.top + b.outerHeight(), left: c.left})
		}, show: function(b){
			return this.isDisabled() ? !1 : (this.picker.addClass("colorpicker-visible").removeClass("colorpicker-hidden"), this.reposition(), a(window).on("resize.colorpicker", a.proxy(this.reposition, this)), !b || this.hasInput() && "color" !== this.input.attr("type") || b.stopPropagation && b.preventDefault && (b.stopPropagation(), b.preventDefault()), this.options.inline === !1 && a(window.document).on({"mousedown.colorpicker": a.proxy(this.hide, this)}), void this.element.trigger({type: "showPicker", color: this.color}))
		}, hide: function(){
			this.picker.addClass("colorpicker-hidden").removeClass("colorpicker-visible"), a(window).off("resize.colorpicker", this.reposition), a(document).off({"mousedown.colorpicker": this.hide}), this.update(), this.element.trigger({type: "hidePicker", color: this.color})
		}, updateData: function(a){
			return a = a || this.color.toString(this.format), this.element.data("color", a), a
		}, updateInput: function(a){
			if(a = a || this.color.toString(this.format), this.input !== !1){
				if(this.options.colorSelectors){
					var c = new b(a, this.options.colorSelectors), d = c.toAlias();
					"undefined" != typeof this.options.colorSelectors[d] && (a = d)
				}
				this.input.prop("value", a)
			}
			return a
		}, updatePicker: function(a){
			void 0 !== a && (this.color = new b(a, this.options.colorSelectors));
			var c = this.options.horizontal === !1 ? this.options.sliders : this.options.slidersHorz, d = this.picker.find("i");
			return 0 !== d.length ? (this.options.horizontal === !1 ? (c = this.options.sliders, d.eq(1).css("top", c.hue.maxTop * (1 - this.color.value.h)).end().eq(2).css("top", c.alpha.maxTop * (1 - this.color.value.a))) : (c = this.options.slidersHorz, d.eq(1).css("left", c.hue.maxLeft * (1 - this.color.value.h)).end().eq(2).css("left", c.alpha.maxLeft * (1 - this.color.value.a))), d.eq(0).css({top: c.saturation.maxTop - this.color.value.b * c.saturation.maxTop, left: this.color.value.s * c.saturation.maxLeft}), this.picker.find(".colorpicker-saturation").css("backgroundColor", this.color.toHex(this.color.value.h, 1, 1, 1)), this.picker.find(".colorpicker-alpha").css("backgroundColor", this.color.toHex()), this.picker.find(".colorpicker-color, .colorpicker-color div").css("backgroundColor", this.color.toString(this.format)), a) : void 0
		}, updateComponent: function(a){
			if(a = a || this.color.toString(this.format), this.component !== !1){
				var b = this.component.find("i").eq(0);
				b.length > 0 ? b.css({backgroundColor: a}) : this.component.css({backgroundColor: a})
			}
			return a
		}, update: function(a){
			var b;
			return (this.getValue(!1) !== !1 || a === !0) && (b = this.updateComponent(), this.updateInput(b), this.updateData(b), this.updatePicker()), b
		}, setValue: function(a){
			this.color = new b(a, this.options.colorSelectors), this.update(!0), this.element.trigger({type: "changeColor", color: this.color, value: a})
		}, getValue: function(a){
			a = void 0 === a ? "#000000" : a;
			var b;
			return b = this.hasInput() ? this.input.val() : this.element.data("color"), (void 0 === b || "" === b || null === b) && (b = a), b
		}, hasInput: function(){
			return this.input !== !1
		}, isDisabled: function(){
			return this.hasInput() ? this.input.prop("disabled") === !0 : !1
		}, disable: function(){
			return this.hasInput() ? (this.input.prop("disabled", !0), this.element.trigger({type: "disable", color: this.color, value: this.getValue()}), !0) : !1
		}, enable: function(){
			return this.hasInput() ? (this.input.prop("disabled", !1), this.element.trigger({type: "enable", color: this.color, value: this.getValue()}), !0) : !1
		}, currentSlider: null, mousePointer: {left: 0, top: 0}, mousedown: function(b){
			b.pageX || b.pageY || !b.originalEvent || (b.pageX = b.originalEvent.touches[0].pageX, b.pageY = b.originalEvent.touches[0].pageY), b.stopPropagation(), b.preventDefault();
			var c = a(b.target), d = c.closest("div"), e = this.options.horizontal ? this.options.slidersHorz : this.options.sliders;
			if(!d.is(".colorpicker")){
				if(d.is(".colorpicker-saturation")){
					this.currentSlider = a.extend({}, e.saturation);
				}else if(d.is(".colorpicker-hue")){
					this.currentSlider = a.extend({}, e.hue);
				}else{
					if(!d.is(".colorpicker-alpha"))return !1;
					this.currentSlider = a.extend({}, e.alpha)
				}
				var f = d.offset();
				this.currentSlider.guide = d.find("i")[0].style, this.currentSlider.left = b.pageX - f.left, this.currentSlider.top = b.pageY - f.top, this.mousePointer = {left: b.pageX, top: b.pageY}, a(document).on({"mousemove.colorpicker": a.proxy(this.mousemove, this), "touchmove.colorpicker": a.proxy(this.mousemove, this), "mouseup.colorpicker": a.proxy(this.mouseup, this), "touchend.colorpicker": a.proxy(this.mouseup, this)}).trigger("mousemove")
			}
			return !1
		}, mousemove: function(a){
			a.pageX || a.pageY || !a.originalEvent || (a.pageX = a.originalEvent.touches[0].pageX, a.pageY = a.originalEvent.touches[0].pageY), a.stopPropagation(), a.preventDefault();
			var b = Math.max(0, Math.min(this.currentSlider.maxLeft, this.currentSlider.left + ((a.pageX || this.mousePointer.left) - this.mousePointer.left))), c = Math.max(0, Math.min(this.currentSlider.maxTop, this.currentSlider.top + ((a.pageY || this.mousePointer.top) - this.mousePointer.top)));
			return this.currentSlider.guide.left = b + "px", this.currentSlider.guide.top = c + "px", this.currentSlider.callLeft && this.color[this.currentSlider.callLeft].call(this.color, b / this.currentSlider.maxLeft), this.currentSlider.callTop && this.color[this.currentSlider.callTop].call(this.color, c / this.currentSlider.maxTop), "setAlpha" === this.currentSlider.callTop && this.options.format === !1 && (1 !== this.color.value.a ? (this.format = "rgba", this.color.origFormat = "rgba") : (this.format = "hex", this.color.origFormat = "hex")), this.update(!0), this.element.trigger({type: "changeColor", color: this.color}), !1
		}, mouseup: function(b){
			return b.stopPropagation(), b.preventDefault(), a(document).off({"mousemove.colorpicker": this.mousemove, "touchmove.colorpicker": this.mousemove, "mouseup.colorpicker": this.mouseup, "touchend.colorpicker": this.mouseup}), !1
		}, change: function(a){
			this.keyup(a)
		}, keyup: function(a){
			38 === a.keyCode ? (this.color.value.a < 1 && (this.color.value.a = Math.round(100 * (this.color.value.a + .01)) / 100), this.update(!0)) : 40 === a.keyCode ? (this.color.value.a > 0 && (this.color.value.a = Math.round(100 * (this.color.value.a - .01)) / 100), this.update(!0)) : (this.color = new b(this.input.val(), this.options.colorSelectors), this.color.origFormat && this.options.format === !1 && (this.format = this.color.origFormat), this.getValue(!1) !== !1 && (this.updateData(), this.updateComponent(), this.updatePicker())), this.element.trigger({type: "changeColor", color: this.color, value: this.input.val()})
		}
	}, a.colorpicker = d, a.fn.colorpicker = function(b){
		var c, e = arguments, f = this.each(function(){
			var f = a(this), g = f.data("colorpicker"), h = "object" == typeof b ? b : {};
			g || "string" == typeof b ? "string" == typeof b && (c = g[b].apply(g, Array.prototype.slice.call(e, 1))) : f.data("colorpicker", new d(this, h))
		});
		return "getValue" === b ? c : f
	}, a.fn.colorpicker.constructor = d
});
js/datepicker.js000060400000035651152455614210007644 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

!function(e,t){"use strict";var n;if("object"==typeof exports){try{n=require("moment")}catch(e){}module.exports=t(n)}else"function"==typeof define&&define.amd?define(function(e){try{n=e("moment")}catch(e){}return t(n)}):e.Pikaday=t(e.moment)}(this,function(e){"use strict";var t=!!window.addEventListener,n=window.document,a=window.setTimeout,i=function(e,n,a,i){t?e.addEventListener(n,a,!!i):e.attachEvent("on"+n,a)},s=function(e,n,a,i){t?e.removeEventListener(n,a,!!i):e.detachEvent("on"+n,a)},o=function(e,t,a){var i;n.createEvent?((i=n.createEvent("HTMLEvents")).initEvent(t,!0,!1),i=D(i,a),e.dispatchEvent(i)):n.createEventObject&&(i=n.createEventObject(),i=D(i,a),e.fireEvent("on"+t,i))},r=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},h=function(e,t){return-1!==(" "+e.className+" ").indexOf(" "+t+" ")},l=function(e,t){h(e,t)||(e.className=""===e.className?t:e.className+" "+t)},d=function(e,t){e.className=r((" "+e.className+" ").replace(" "+t+" "," "))},u=function(e){return/Array/.test(Object.prototype.toString.call(e))},c=function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())},f=function(e){var t=e.getDay();return 0===t||6===t},g=function(e){return e%4==0&&e%100!=0||e%400==0},m=function(e,t){return[31,g(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},p=function(e){c(e)&&e.setHours(0,0,0,0)},y=function(e,t){return e.getTime()===t.getTime()},D=function(e,t,n){var a,i;for(a in t)(i=void 0!==e[a])&&"object"==typeof t[a]&&null!==t[a]&&void 0===t[a].nodeName?c(t[a])?n&&(e[a]=new Date(t[a].getTime())):u(t[a])?n&&(e[a]=t[a].slice(0)):e[a]=D({},t[a],n):!n&&i||(e[a]=t[a]);return e},_=function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e},v={field:null,bound:void 0,position:"bottom left",reposition:!0,format:"%Y-%m-%d",defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:"",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:"left",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:"Previous Month",nextMonth:"Next Month",months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null},b=function(e,t,n){for(t+=e.firstDay;t>=7;)t-=7;return n?e.i18n.weekdays[t].substr(0,3):e.i18n.weekdays[t]},w=function(e){var t=[],n="false";if(e.isEmpty){if(!e.showDaysInNextAndPreviousMonths)return'<td class="is-empty"></td>';t.push("is-outside-current-month")}return e.isDisabled&&t.push("is-disabled"),e.isToday&&t.push("is-today"),e.isSelected&&(t.push("is-selected"),n="true"),e.hasEvent&&t.push("has-event"),e.isInRange&&t.push("is-inrange"),e.isStartRange&&t.push("is-startrange"),e.isEndRange&&t.push("is-endrange"),'<td data-day="'+e.day+'" class="'+t.join(" ")+'" aria-selected="'+n+'"><button class="pika-button pika-day" type="button" data-pika-year="'+e.year+'" data-pika-month="'+e.month+'" data-pika-day="'+e.day+'">'+e.day+"</button></td>"},M=function(e,t,n){var a=new Date(n,0,1);return'<td class="pika-week">'+Math.ceil(((new Date(n,t,e)-a)/864e5+a.getDay()+1)/7)+"</td>"},k=function(e,t,n,a){return'<tr class="pika-row'+(n?" pick-whole-week":"")+(a?" is-selected":"")+'">'+(t?e.reverse():e).join("")+"</tr>"},x=function(e){return"<tbody>"+e.join("")+"</tbody>"},R=function(e){var t,n=[];for(e.showWeekNumber&&n.push("<th></th>"),t=0;t<7;t++)n.push('<th scope="col"><abbr title="'+b(e,t)+'">'+b(e,t,!0)+"</abbr></th>");return"<thead><tr>"+(e.isRTL?n.reverse():n).join("")+"</tr></thead>"},N=function(e,t,n,a,i,s){var o,r,h,l,d,c=e._o,f=n===c.minYear,g=n===c.maxYear,m='<div id="'+s+'" class="pika-title" role="heading" aria-live="assertive">',p=!0,y=!0;for(h=[],o=0;o<12;o++)h.push('<option value="'+(n===i?o-t:12+o-t)+'"'+(o===a?' selected="selected"':"")+(f&&o<c.minMonth||g&&o>c.maxMonth?'disabled="disabled"':"")+">"+c.i18n.months[o]+"</option>");for(l='<div class="pika-label">'+c.i18n.months[a]+'<select class="pika-select pika-select-month" tabindex="-1">'+h.join("")+"</select></div>",u(c.yearRange)?(o=c.yearRange[0],r=c.yearRange[1]+1):(o=n-c.yearRange,r=1+n+c.yearRange),h=[];o<r&&o<=c.maxYear;o++)o>=c.minYear&&h.push('<option value="'+o+'"'+(o===n?' selected="selected"':"")+">"+o+"</option>");return d='<div class="pika-label">'+n+c.yearSuffix+'<select class="pika-select pika-select-year" tabindex="-1">'+h.join("")+"</select></div>",c.showMonthAfterYear?m+=d+l:m+=l+d,f&&(0===a||c.minMonth>=a)&&(p=!1),g&&(11===a||c.maxMonth<=a)&&(y=!1),0===t&&(m+='<button class="pika-prev'+(p?"":" is-disabled")+'" type="button">'+c.i18n.previousMonth+"</button>"),t===e._o.numberOfMonths-1&&(m+='<button class="pika-next'+(y?"":" is-disabled")+'" type="button">'+c.i18n.nextMonth+"</button>"),m+="</div>"},C=function(e,t,n){return'<table cellpadding="0" cellspacing="0" class="pika-table" role="grid" aria-labelledby="'+n+'">'+R(e)+x(t)+"</table>"},E=function(e){var s=this,o=s.config(e);s._onMouseDown=function(e){if(s._v){var t=(e=e||window.event).target||e.srcElement;if(t)if(h(t,"is-disabled")||(!h(t,"pika-button")||h(t,"is-empty")||h(t.parentNode,"is-disabled")?h(t,"pika-prev")?s.prevMonth():h(t,"pika-next")&&s.nextMonth():(s.setDate(new Date(t.getAttribute("data-pika-year"),t.getAttribute("data-pika-month"),t.getAttribute("data-pika-day"))),o.bound&&a(function(){s.hide(),o.blurFieldOnSelect&&o.field&&o.field.blur()},100))),h(t,"pika-select"))s._c=!0;else{if(!e.preventDefault)return e.returnValue=!1,!1;e.preventDefault()}}},s._onChange=function(e){var t=(e=e||window.event).target||e.srcElement;t&&(h(t,"pika-select-month")?s.gotoMonth(t.value):h(t,"pika-select-year")&&s.gotoYear(t.value))},s._onKeyChange=function(e){if(e=e||window.event,s.isVisible())switch(e.keyCode){case 13:case 27:o.field&&o.field.blur();break;case 37:e.preventDefault(),s.adjustDate("subtract",1);break;case 38:s.adjustDate("subtract",7);break;case 39:s.adjustDate("add",1);break;case 40:s.adjustDate("add",7)}},s._onInputChange=function(e){var t;e.firedBy!==s&&(t=new Date(Date.parse(o.field.value)),c(t)&&s.setDate(t),s._v||s.show())},s._onInputFocus=function(){s.show()},s._onInputClick=function(){s.show()},s._onInputBlur=function(){var e=n.activeElement;do{if(h(e,"pika-single"))return}while(e=e.parentNode);s._c||(s._b=a(function(){s.hide()},50)),s._c=!1},s._onClick=function(e){var n=(e=e||window.event).target||e.srcElement,a=n;if(n){!t&&h(n,"pika-select")&&(n.onchange||(n.setAttribute("onchange","return;"),i(n,"change",s._onChange)));do{if(h(a,"pika-single")||a===o.trigger)return}while(a=a.parentNode);s._v&&n!==o.trigger&&a!==o.trigger&&s.hide()}},s.el=n.createElement("div"),s.el.className="pika-single"+(o.isRTL?" is-rtl":"")+(o.theme?" "+o.theme:""),i(s.el,"mousedown",s._onMouseDown,!0),i(s.el,"touchend",s._onMouseDown,!0),i(s.el,"change",s._onChange),i(n,"keydown",s._onKeyChange),o.field&&(o.container?o.container.appendChild(s.el):o.bound?n.body.appendChild(s.el):o.field.parentNode.insertBefore(s.el,o.field.nextSibling),i(o.field,"change",s._onInputChange),o.defaultDate||(o.defaultDate=new Date(Date.parse(o.field.value)),o.setDefaultDate=!0));var r=o.defaultDate;c(r)?o.setDefaultDate?s.setDate(r,!0):s.gotoDate(r):s.gotoDate(new Date),o.bound?(this.hide(),s.el.className+=" is-bound",i(o.trigger,"click",s._onInputClick),i(o.trigger,"focus",s._onInputFocus),i(o.trigger,"blur",s._onInputBlur)):this.show()};return E.prototype={config:function(e){this._o||(this._o=D({},v,!0));var t=D(this._o,e,!0);t.isRTL=!!t.isRTL,t.field=t.field&&t.field.nodeName?t.field:null,t.theme="string"==typeof t.theme&&t.theme?t.theme:null,t.bound=!!(void 0!==t.bound?t.field&&t.bound:t.field),t.trigger=t.trigger&&t.trigger.nodeName?t.trigger:t.field,t.disableWeekends=!!t.disableWeekends,t.disableDayFn="function"==typeof t.disableDayFn?t.disableDayFn:null;var n=parseInt(t.numberOfMonths,10)||1;if(t.numberOfMonths=n>4?4:n,c(t.minDate)||(t.minDate=!1),c(t.maxDate)||(t.maxDate=!1),t.minDate&&t.maxDate&&t.maxDate<t.minDate&&(t.maxDate=t.minDate=!1),t.minDate&&this.setMinDate(t.minDate),t.maxDate&&this.setMaxDate(t.maxDate),u(t.yearRange)){var a=(new Date).getFullYear()-10;t.yearRange[0]=parseInt(t.yearRange[0],10)||a,t.yearRange[1]=parseInt(t.yearRange[1],10)||a}else t.yearRange=Math.abs(parseInt(t.yearRange,10))||v.yearRange,t.yearRange>100&&(t.yearRange=100);return t},toString:function(e){var t="";return c(this._d)&&(t=this._o.format.replace("%Y",this._d.getFullYear()).replace("%m",this._d.getMonth()+1).replace("%d",this._d.getDate()).replace("%H",this._d.getHours()).replace("%M",this._d.getMinutes()).replace("%s",this._d.getSeconds())),t},getMoment:function(){return null},setMoment:function(e,t){},getDate:function(){return c(this._d)?new Date(this._d.getTime()):null},setDate:function(e,t){if(!e)return this._d=null,this._o.field&&(this._o.field.value="",o(this._o.field,"change",{firedBy:this})),this.draw();if("string"==typeof e&&(e=new Date(Date.parse(e))),c(e)){var n=this._o.minDate,a=this._o.maxDate;c(n)&&e<n?e=n:c(a)&&e>a&&(e=a),this._d=new Date(e.getTime()),p(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),o(this._o.field,"change",{firedBy:this})),t||"function"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(e){var t=!0;if(c(e)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),a=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),i=e.getTime();a.setMonth(a.getMonth()+1),a.setDate(a.getDate()-1),t=i<n.getTime()||a.getTime()<i}t&&(this.calendars=[{month:e.getMonth(),year:e.getFullYear()}],"right"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(e,t){var n,a=this.getDate()||new Date,i=24*parseInt(t)*60*60*1e3;"add"===e?n=new Date(a.valueOf()+i):"subtract"===e&&(n=new Date(a.valueOf()-i)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=_(this.calendars[0]);for(var e=1;e<this._o.numberOfMonths;e++)this.calendars[e]=_({month:this.calendars[0].month+e,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(e){isNaN(e)||(this.calendars[0].month=parseInt(e,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(e){isNaN(e)||(this.calendars[0].year=parseInt(e,10),this.adjustCalendars())},setMinDate:function(e){e instanceof Date?(p(e),this._o.minDate=e,this._o.minYear=e.getFullYear(),this._o.minMonth=e.getMonth()):(this._o.minDate=v.minDate,this._o.minYear=v.minYear,this._o.minMonth=v.minMonth,this._o.startRange=v.startRange),this.draw()},setMaxDate:function(e){e instanceof Date?(p(e),this._o.maxDate=e,this._o.maxYear=e.getFullYear(),this._o.maxMonth=e.getMonth()):(this._o.maxDate=v.maxDate,this._o.maxYear=v.maxYear,this._o.maxMonth=v.maxMonth,this._o.endRange=v.endRange),this.draw()},setStartRange:function(e){this._o.startRange=e},setEndRange:function(e){this._o.endRange=e},draw:function(e){if(this._v||e){var t,n=this._o,i=n.minYear,s=n.maxYear,o=n.minMonth,r=n.maxMonth,h="";this._y<=i&&(this._y=i,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=s&&(this._y=s,!isNaN(r)&&this._m>r&&(this._m=r)),t="pika-title-"+Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)h+='<div class="pika-lendar">'+N(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,t)+this.render(this.calendars[l].year,this.calendars[l].month,t)+"</div>";this.el.innerHTML=h,n.bound&&"hidden"!==n.field.type&&a(function(){n.trigger.focus()},1),"function"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute("aria-label","Use the arrow keys to pick a date")}},adjustPosition:function(){var e,t,a,i,s,o,r,h,l,d;if(!this._o.container){if(this.el.style.position="absolute",e=this._o.trigger,t=e,a=this.el.offsetWidth,i=this.el.offsetHeight,s=window.innerWidth||n.documentElement.clientWidth,o=window.innerHeight||n.documentElement.clientHeight,r=window.pageYOffset||n.body.scrollTop||n.documentElement.scrollTop,"function"==typeof e.getBoundingClientRect)h=(d=e.getBoundingClientRect()).left+window.pageXOffset,l=d.bottom+window.pageYOffset;else for(h=t.offsetLeft,l=t.offsetTop+t.offsetHeight;t=t.offsetParent;)h+=t.offsetLeft,l+=t.offsetTop;(this._o.reposition&&h+a>s||this._o.position.indexOf("right")>-1&&h-a+e.offsetWidth>0)&&(h=h-a+e.offsetWidth),(this._o.reposition&&l+i>o+r||this._o.position.indexOf("top")>-1&&l-i-e.offsetHeight>0)&&(l=l-i-e.offsetHeight),this.el.style.left=h+"px",this.el.style.top=l+"px"}},render:function(e,t,n){var a=this._o,i=new Date,s=m(e,t),o=new Date(e,t,1).getDay(),r=[],h=[];p(i),a.firstDay>0&&(o-=a.firstDay)<0&&(o+=7);for(var l=0===t?11:t-1,d=11===t?0:t+1,u=0===t?e-1:e,g=11===t?e+1:e,D=m(u,l),_=s+o,v=_;v>7;)v-=7;_+=7-v;for(var b=!1,x=0,R=0;x<_;x++){var N=new Date(e,t,x-o+1),E=!!c(this._d)&&y(N,this._d),T=y(N,i),Y=-1!==a.events.indexOf(N.toDateString()),O=x<o||x>=s+o,j=x-o+1,I=t,S=e,W=a.startRange&&y(a.startRange,N),F=a.endRange&&y(a.endRange,N),A=a.startRange&&a.endRange&&a.startRange<N&&N<a.endRange,L=a.minDate&&N<a.minDate||a.maxDate&&N>a.maxDate||a.disableWeekends&&f(N)||a.disableDayFn&&a.disableDayFn(N);O&&(x<o?(j=D+j,I=l,S=u):(j-=s,I=d,S=g));var H={day:j,month:I,year:S,hasEvent:Y,isSelected:E,isToday:T,isDisabled:L,isEmpty:O,isStartRange:W,isEndRange:F,isInRange:A,showDaysInNextAndPreviousMonths:a.showDaysInNextAndPreviousMonths};a.pickWholeWeek&&E&&(b=!0),h.push(w(H)),7==++R&&(a.showWeekNumber&&h.unshift(M(x-o,t,e)),r.push(k(h,a.isRTL,a.pickWholeWeek,b)),h=[],R=0,b=!1)}return C(a,r,n)},isVisible:function(){return this._v},show:function(){this.isVisible()||(this._v=!0,this.draw(),this._o.bound&&(i(n,"click",this._onClick),this.adjustPosition()),d(this.el,"is-hidden"),"function"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var e=this._v;!1!==e&&(this._o.bound&&s(n,"click",this._onClick),this.el.style.position="static",this.el.style.left="auto",this.el.style.top="auto",l(this.el,"is-hidden"),this._v=!1,void 0!==e&&"function"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){this.hide(),s(this.el,"mousedown",this._onMouseDown,!0),s(this.el,"touchend",this._onMouseDown,!0),s(this.el,"change",this._onChange),this._o.field&&(s(this._o.field,"change",this._onInputChange),this._o.bound&&(s(this._o.trigger,"click",this._onInputClick),s(this._o.trigger,"focus",this._onInputFocus),s(this._o.trigger,"blur",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},E});
js/index.html000060400000000054152455614210007155 0ustar00<html><body bgcolor="#FFFFFF"></body></html>js/sortable.js000060400000036305152455614210007341 0ustar00/**
 * @package    AcyMailing for Joomla!
 * @version    5.9.6
 * @author     acyba.com
 * @copyright  (C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license    GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

!function(t){"use strict";"function"==typeof define&&define.amd?define(t):"undefined"!=typeof module&&void 0!==module.exports?module.exports=t():window.Sortable=t()}(function(){"use strict";function t(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be HTMLElement, and not "+{}.toString.call(t);this.el=t,this.options=e=_({},e),t[V]=this;var n={group:Math.random(),sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,draggable:/[uo]l/i.test(t.nodeName)?"li":">*",ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0}};for(var i in n)!(i in e)&&(e[i]=n[i]);at(e);for(var o in this)"_"===o.charAt(0)&&"function"==typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!e.forceFallback&&K,r(t,"mousedown",this._onTapStart),r(t,"touchstart",this._onTapStart),r(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(r(t,"dragover",this),r(t,"dragenter",this)),ot.push(this._onDragOver),e.store&&"function"===e.store.get&&this.sort(e.store.get(this))}function e(t,e){"clone"!==t.lastPullMode&&(e=!0),S&&S.state!==e&&(l(S,"display",e?"none":""),e||S.state&&(t.options.group.revertClone?(E.insertBefore(S,x),t._animate(w,S)):E.insertBefore(S,w)),S.state=e)}function n(t,e,n){if(t){n=n||z;do{if(">*"===e&&t.parentNode===n||m(t,e))return t}while(t=i(t))}return null}function i(t){var e=t.host;return e&&e.nodeType?e:t.parentNode}function o(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.preventDefault()}function r(t,e,n){t.addEventListener(e,n,J)}function a(t,e,n){t.removeEventListener(e,n,J)}function s(t,e,n){if(t)if(t.classList)t.classList[n?"add":"remove"](e);else{var i=(" "+t.className+" ").replace(H," ").replace(" "+e+" "," ");t.className=(i+(n?" "+e:"")).replace(H," ")}}function l(t,e,n){var i=t&&t.style;if(i){if(void 0===n)return z.defaultView&&z.defaultView.getComputedStyle?n=z.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in i||(e="-webkit-"+e),i[e]=n+("string"==typeof n?"":"px")}}function c(t,e,n){if(t){var i=t.getElementsByTagName(e),o=0,r=i.length;if(n)for(;o<r;o++)n(i[o],o);return i}return[]}function d(t,e,n,i,o,r,a){t=t||e[V];var s=z.createEvent("Event"),l=t.options,c="on"+n.charAt(0).toUpperCase()+n.substr(1);s.initEvent(n,!0,!0),s.to=e,s.from=o||e,s.item=i||e,s.clone=S,s.oldIndex=r,s.newIndex=a,e.dispatchEvent(s),l[c]&&l[c].call(t,s)}function h(t,e,n,i,o,r,a,s){var l,c,d=t[V],h=d.options.onMove;return(l=z.createEvent("Event")).initEvent("move",!0,!0),l.to=e,l.from=t,l.dragged=n,l.draggedRect=i,l.related=o||e,l.relatedRect=r||e.getBoundingClientRect(),l.willInsertAfter=s,t.dispatchEvent(l),h&&(c=h.call(d,l,a)),c}function u(t){t.draggable=!1}function f(){tt=!1}function p(t,e){var n=t.lastElementChild.getBoundingClientRect();return e.clientY-(n.top+n.height)>5||e.clientX-(n.left+n.width)>5}function g(t){for(var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,i=0;n--;)i+=e.charCodeAt(n);return i.toString(36)}function v(t,e){var n=0;if(!t||!t.parentNode)return-1;for(;t&&(t=t.previousElementSibling);)"TEMPLATE"===t.nodeName.toUpperCase()||">*"!==e&&!m(t,e)||n++;return n}function m(t,e){if(t){var n=(e=e.split(".")).shift().toUpperCase(),i=new RegExp("\\s("+e.join("|")+")(?=\\s)","g");return!(""!==n&&t.nodeName.toUpperCase()!=n||e.length&&((" "+t.className+" ").match(i)||[]).length!=e.length)}return!1}function b(t,e){var n,i;return function(){void 0===n&&(n=arguments,i=this,setTimeout(function(){1===n.length?t.call(i,n[0]):t.apply(i,n),n=void 0},e))}}function _(t,e){if(t&&e)for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function D(t){return Q?Q(t).clone(!0)[0]:Z&&Z.dom?Z.dom(t).cloneNode(!0):t.cloneNode(!0)}function y(t){for(var e=t.getElementsByTagName("input"),n=e.length;n--;){var i=e[n];i.checked&&it.push(i)}}if("undefined"==typeof window||!window.document)return function(){throw new Error("Sortable.js requires a window with a document")};var w,T,C,S,E,x,N,k,B,Y,O,X,A,M,P,R,I,L,F,U,j={},H=/\s+/g,W=/left|right|inline/,V="Sortable"+(new Date).getTime(),q=window,z=q.document,G=q.parseInt,Q=q.jQuery||q.Zepto,Z=q.Polymer,J=!1,K=!!("draggable"in z.createElement("div")),$=function(t){return!navigator.userAgent.match(/Trident.*rv[ :]?11\./)&&(t=z.createElement("x"),t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents)}(),tt=!1,et=Math.abs,nt=Math.min,it=[],ot=[],rt=b(function(t,e,n){if(n&&e.scroll){var i,o,r,a,s,l,c=n[V],d=e.scrollSensitivity,h=e.scrollSpeed,u=t.clientX,f=t.clientY,p=window.innerWidth,g=window.innerHeight;if(B!==n&&(k=e.scroll,B=n,Y=e.scrollFn,!0===k)){k=n;do{if(k.offsetWidth<k.scrollWidth||k.offsetHeight<k.scrollHeight)break}while(k=k.parentNode)}k&&(i=k,o=k.getBoundingClientRect(),r=(et(o.right-u)<=d)-(et(o.left-u)<=d),a=(et(o.bottom-f)<=d)-(et(o.top-f)<=d)),r||a||(a=(g-f<=d)-(f<=d),((r=(p-u<=d)-(u<=d))||a)&&(i=q)),j.vx===r&&j.vy===a&&j.el===i||(j.el=i,j.vx=r,j.vy=a,clearInterval(j.pid),i&&(j.pid=setInterval(function(){if(l=a?a*h:0,s=r?r*h:0,"function"==typeof Y)return Y.call(c,s,l,t);i===q?q.scrollTo(q.pageXOffset+s,q.pageYOffset+l):(i.scrollTop+=l,i.scrollLeft+=s)},24)))}},30),at=function(t){function e(t,e){return void 0!==t&&!0!==t||(t=n.name),"function"==typeof t?t:function(n,i){var o=i.options.group.name;return e?t:t&&(t.join?t.indexOf(o)>-1:o==t)}}var n={},i=t.group;i&&"object"==typeof i||(i={name:i}),n.name=i.name,n.checkPull=e(i.pull,!0),n.checkPut=e(i.put),n.revertClone=i.revertClone,t.group=n};t.prototype={constructor:t,_onTapStart:function(t){var e,i=this,o=this.el,r=this.options,a=r.preventOnFilter,s=t.type,l=t.touches&&t.touches[0],c=(l||t).target,h=t.target.shadowRoot&&t.path&&t.path[0]||c,u=r.filter;if(y(o),!w&&!(/mousedown|pointerdown/.test(s)&&0!==t.button||r.disabled)&&(c=n(c,r.draggable,o))&&N!==c){if(e=v(c,r.draggable),"function"==typeof u){if(u.call(this,t,c,this))return d(i,h,"filter",c,o,e),void(a&&t.preventDefault())}else if(u&&(u=u.split(",").some(function(t){if(t=n(h,t.trim(),o))return d(i,t,"filter",c,o,e),!0})))return void(a&&t.preventDefault());r.handle&&!n(h,r.handle,o)||this._prepareDragStart(t,l,c,e)}},_prepareDragStart:function(t,e,n,i){var o,a=this,l=a.el,h=a.options,f=l.ownerDocument;n&&!w&&n.parentNode===l&&(L=t,E=l,T=(w=n).parentNode,x=w.nextSibling,N=n,R=h.group,M=i,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,w.style["will-change"]="transform",o=function(){a._disableDelayedDrag(),w.draggable=a.nativeDraggable,s(w,h.chosenClass,!0),a._triggerDragStart(t,e),d(a,E,"choose",w,E,M)},h.ignore.split(",").forEach(function(t){c(w,t.trim(),u)}),r(f,"mouseup",a._onDrop),r(f,"touchend",a._onDrop),r(f,"touchcancel",a._onDrop),r(f,"pointercancel",a._onDrop),r(f,"selectstart",a),h.delay?(r(f,"mouseup",a._disableDelayedDrag),r(f,"touchend",a._disableDelayedDrag),r(f,"touchcancel",a._disableDelayedDrag),r(f,"mousemove",a._disableDelayedDrag),r(f,"touchmove",a._disableDelayedDrag),r(f,"pointermove",a._disableDelayedDrag),a._dragStartTimer=setTimeout(o,h.delay)):o())},_disableDelayedDrag:function(){var t=this.el.ownerDocument;clearTimeout(this._dragStartTimer),a(t,"mouseup",this._disableDelayedDrag),a(t,"touchend",this._disableDelayedDrag),a(t,"touchcancel",this._disableDelayedDrag),a(t,"mousemove",this._disableDelayedDrag),a(t,"touchmove",this._disableDelayedDrag),a(t,"pointermove",this._disableDelayedDrag)},_triggerDragStart:function(t,e){(e=e||("touch"==t.pointerType?t:null))?(L={target:w,clientX:e.clientX,clientY:e.clientY},this._onDragStart(L,"touch")):this.nativeDraggable?(r(w,"dragend",this),r(E,"dragstart",this._onDragStart)):this._onDragStart(L,!0);try{z.selection?setTimeout(function(){z.selection.empty()}):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(){if(E&&w){var e=this.options;s(w,e.ghostClass,!0),s(w,e.dragClass,!1),t.active=this,d(this,E,"start",w,E,M)}else this._nulling()},_emulateDragOver:function(){if(F){if(this._lastX===F.clientX&&this._lastY===F.clientY)return;this._lastX=F.clientX,this._lastY=F.clientY,$||l(C,"display","none");var t=z.elementFromPoint(F.clientX,F.clientY),e=t,n=ot.length;if(e)do{if(e[V]){for(;n--;)ot[n]({clientX:F.clientX,clientY:F.clientY,target:t,rootEl:e});break}t=e}while(e=e.parentNode);$||l(C,"display","")}},_onTouchMove:function(e){if(L){var n=this.options,i=n.fallbackTolerance,o=n.fallbackOffset,r=e.touches?e.touches[0]:e,a=r.clientX-L.clientX+o.x,s=r.clientY-L.clientY+o.y,c=e.touches?"translate3d("+a+"px,"+s+"px,0)":"translate("+a+"px,"+s+"px)";if(!t.active){if(i&&nt(et(r.clientX-this._lastX),et(r.clientY-this._lastY))<i)return;this._dragStarted()}this._appendGhost(),U=!0,F=r,l(C,"webkitTransform",c),l(C,"mozTransform",c),l(C,"msTransform",c),l(C,"transform",c),e.preventDefault()}},_appendGhost:function(){if(!C){var t,e=w.getBoundingClientRect(),n=l(w),i=this.options;s(C=w.cloneNode(!0),i.ghostClass,!1),s(C,i.fallbackClass,!0),s(C,i.dragClass,!0),l(C,"top",e.top-G(n.marginTop,10)),l(C,"left",e.left-G(n.marginLeft,10)),l(C,"width",e.width),l(C,"height",e.height),l(C,"opacity","0.8"),l(C,"position","fixed"),l(C,"zIndex","100000"),l(C,"pointerEvents","none"),i.fallbackOnBody&&z.body.appendChild(C)||E.appendChild(C),t=C.getBoundingClientRect(),l(C,"width",2*e.width-t.width),l(C,"height",2*e.height-t.height)}},_onDragStart:function(t,e){var n=t.dataTransfer,i=this.options;this._offUpEvents(),R.checkPull(this,this,w,t)&&((S=D(w)).draggable=!1,S.style["will-change"]="",l(S,"display","none"),s(S,this.options.chosenClass,!1),E.insertBefore(S,w),d(this,E,"clone",w)),s(w,i.dragClass,!0),e?("touch"===e?(r(z,"touchmove",this._onTouchMove),r(z,"touchend",this._onDrop),r(z,"touchcancel",this._onDrop),r(z,"pointermove",this._onTouchMove),r(z,"pointerup",this._onDrop)):(r(z,"mousemove",this._onTouchMove),r(z,"mouseup",this._onDrop)),this._loopId=setInterval(this._emulateDragOver,50)):(n&&(n.effectAllowed="move",i.setData&&i.setData.call(this,n,w)),r(z,"drop",this),setTimeout(this._dragStarted,0))},_onDragOver:function(i){var o,r,a,s,c=this.el,d=this.options,u=d.group,g=t.active,v=R===u,m=!1,b=d.sort;if(void 0!==i.preventDefault&&(i.preventDefault(),!d.dragoverBubble&&i.stopPropagation()),!w.animated&&(U=!0,g&&!d.disabled&&(v?b||(s=!E.contains(w)):I===this||(g.lastPullMode=R.checkPull(this,g,w,i))&&u.checkPut(this,g,w,i))&&(void 0===i.rootEl||i.rootEl===this.el))){if(rt(i,d,this.el),tt)return;if(o=n(i.target,d.draggable,c),r=w.getBoundingClientRect(),I!==this&&(I=this,m=!0),s)return e(g,!0),T=E,void(S||x?E.insertBefore(w,S||x):b||E.appendChild(w));if(0===c.children.length||c.children[0]===C||c===i.target&&p(c,i)){if(0!==c.children.length&&c.children[0]!==C&&c===i.target&&(o=c.lastElementChild),o){if(o.animated)return;a=o.getBoundingClientRect()}e(g,v),!1!==h(E,c,w,r,o,a,i)&&(w.contains(c)||(c.appendChild(w),T=c),this._animate(r,w),o&&this._animate(a,o))}else if(o&&!o.animated&&o!==w&&void 0!==o.parentNode[V]){O!==o&&(O=o,X=l(o),A=l(o.parentNode));var _=(a=o.getBoundingClientRect()).right-a.left,D=a.bottom-a.top,y=W.test(X.cssFloat+X.display)||"flex"==A.display&&0===A["flex-direction"].indexOf("row"),N=o.offsetWidth>w.offsetWidth,k=o.offsetHeight>w.offsetHeight,B=(y?(i.clientX-a.left)/_:(i.clientY-a.top)/D)>.5,Y=o.nextElementSibling,M=!1;if(y){var P=w.offsetTop,L=o.offsetTop;M=P===L?o.previousElementSibling===w&&!N||B&&N:o.previousElementSibling===w||w.previousElementSibling===o?(i.clientY-a.top)/D>.5:L>P}else m||(M=Y!==w&&!k||B&&k);var F=h(E,c,w,r,o,a,i,M);!1!==F&&(1!==F&&-1!==F||(M=1===F),tt=!0,setTimeout(f,30),e(g,v),w.contains(c)||(M&&!Y?c.appendChild(w):o.parentNode.insertBefore(w,M?Y:o)),T=w.parentNode,this._animate(r,w),this._animate(a,o))}}},_animate:function(t,e){var n=this.options.animation;if(n){var i=e.getBoundingClientRect();1===t.nodeType&&(t=t.getBoundingClientRect()),l(e,"transition","none"),l(e,"transform","translate3d("+(t.left-i.left)+"px,"+(t.top-i.top)+"px,0)"),e.offsetWidth,l(e,"transition","all "+n+"ms"),l(e,"transform","translate3d(0,0,0)"),clearTimeout(e.animated),e.animated=setTimeout(function(){l(e,"transition",""),l(e,"transform",""),e.animated=!1},n)}},_offUpEvents:function(){var t=this.el.ownerDocument;a(z,"touchmove",this._onTouchMove),a(z,"pointermove",this._onTouchMove),a(t,"mouseup",this._onDrop),a(t,"touchend",this._onDrop),a(t,"pointerup",this._onDrop),a(t,"touchcancel",this._onDrop),a(t,"pointercancel",this._onDrop),a(t,"selectstart",this)},_onDrop:function(e){var n=this.el,i=this.options;clearInterval(this._loopId),clearInterval(j.pid),clearTimeout(this._dragStartTimer),a(z,"mousemove",this._onTouchMove),this.nativeDraggable&&(a(z,"drop",this),a(n,"dragstart",this._onDragStart)),this._offUpEvents(),e&&(U&&(e.preventDefault(),!i.dropBubble&&e.stopPropagation()),C&&C.parentNode&&C.parentNode.removeChild(C),E!==T&&"clone"===t.active.lastPullMode||S&&S.parentNode&&S.parentNode.removeChild(S),w&&(this.nativeDraggable&&a(w,"dragend",this),u(w),w.style["will-change"]="",s(w,this.options.ghostClass,!1),s(w,this.options.chosenClass,!1),d(this,E,"unchoose",w,E,M),E!==T?(P=v(w,i.draggable))>=0&&(d(null,T,"add",w,E,M,P),d(this,E,"remove",w,E,M,P),d(null,T,"sort",w,E,M,P),d(this,E,"sort",w,E,M,P)):w.nextSibling!==x&&(P=v(w,i.draggable))>=0&&(d(this,E,"update",w,E,M,P),d(this,E,"sort",w,E,M,P)),t.active&&(null!=P&&-1!==P||(P=M),d(this,E,"end",w,E,M,P),this.save()))),this._nulling()},_nulling:function(){E=w=T=C=x=S=N=k=B=L=F=U=P=O=X=I=R=t.active=null,it.forEach(function(t){t.checked=!0}),it.length=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragover":case"dragenter":w&&(this._onDragOver(t),o(t));break;case"selectstart":t.preventDefault()}},toArray:function(){for(var t,e=[],i=this.el.children,o=0,r=i.length,a=this.options;o<r;o++)n(t=i[o],a.draggable,this.el)&&e.push("cid["+o+"]="+t.getAttribute(a.dataIdAttr)||g(t));return e},sort:function(t){var e={},i=this.el;this.toArray().forEach(function(t,o){var r=i.children[o];n(r,this.options.draggable,i)&&(e[t]=r)},this),t.forEach(function(t){e[t]&&(i.removeChild(e[t]),i.appendChild(e[t]))})},save:function(){var t=this.options.store;t&&t.set(this)},closest:function(t,e){return n(t,e||this.options.draggable,this.el)},option:function(t,e){var n=this.options;if(void 0===e)return n[t];n[t]=e,"group"===t&&at(n)},destroy:function(){var t=this.el;t[V]=null,a(t,"mousedown",this._onTapStart),a(t,"touchstart",this._onTapStart),a(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(a(t,"dragover",this),a(t,"dragenter",this)),Array.prototype.forEach.call(t.querySelectorAll("[draggable]"),function(t){t.removeAttribute("draggable")}),ot.splice(ot.indexOf(this._onDragOver),1),this._onDrop(),this.el=t=null}},r(z,"touchmove",function(e){t.active&&e.preventDefault()});try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){J={capture:!1,passive:!1}}}))}catch(t){}return t.utils={on:r,off:a,css:l,find:c,is:function(t,e){return!!n(t,e,t)},extend:_,throttle:b,closest:n,toggleClass:s,clone:D,index:v},t.create=function(e,n){return new t(e,n)},t.version="1.6.1",t});
images/warning.png000060400000001373152455614210010171 0ustar00�PNG


IHDR�agAMA��|�Q� cHRMz%������u0�`:�o�_�F	pHYs��~�tEXtSoftwarePaint.NET v3.5.6Ѓ�ZLIDAT8O��]H�Q��9���W�7Y�e%��E�.I�Jo4�������bB�@
-��0�0)�5�[���$A�\��nOG���5<�����<Q�QUD���ֲ������~ê��Ln��~��Ą�5K���5�z� ��p`:�Mk\��Z�O3��{[6�jr�1|e�Ը�F;��OO�^ʄ�\���c-����W�~&��̐~���T����y#���ۂ���u�g��鑿Ӏ��t�fuP>��iU�nq�P鼩��Q-��)Pf����k��]2��x���i�����՛�5~���L'A~�F�>���W��}���˫��}�:�e�zتD8΋��T�Y^$�sK��̈J؄�Z-��*��W���d������,�N�g<�j�?-j-T��*`��A��@'�C��RlF`�C`<�1��vrE��rC��x��N�\kL��0��M�;M�o� ���TԕR���ٙy9��z}��|�MԷg3Y�It�m�¢a����ùd�PF�r3�ݛM
F
3`k���Qb�5�+�_�9�D''IEND�B`�images/video.png000060400000007536152455614210007641 0ustar00�PNG


IHDR���8�hgAMA���asRGB���{PLTE����������������������������n����Ҝ�Ȣ��v�����j��Z��e����𱱲��������������پ����������HSa������GGF+++qrsbbb�������/��tRNS�Y��tIDATx�흉z�:��nm�T@8��+<YX���@l�/�
G��e!����-�_��5hi�@(��P�
@�(PS�@aY����+'#QB�@ay�
�$���пP��'�N3�0+/��	$	�i�(�W��
�"7nP\U�
�p�0��p"�(���
�4�i���V|�q���@Q��w��P�Q��Y��#F��b�\S�@�_5G�DY�;�@��S����/�W&05XO��-�����j�<5x[4�b^�]�bC����%f"
�*0�7�Z�>�ŵ����"ນK�0��:��U��zO��W�M!�C��5�n�A�R`[��N	�UQXt
�9)p�?��v�E8Ȼ�(=��yo�<m�yQU9&r���y�w�)�@�M���o.ux�S`	M�̐�̵���Q�$8q�p履�;��dQ^U�z]+�JpBb�	�;����9YS�&$l=@$%�F@`�)��#�ypOA���ZL�-�#���Yz�mн���H�|{�z
:��.uu&8,z�N�,��P`�AZM��'�TLu�ıB@�perN�	�[[)�;%�d\��=����ZU�P�9d#A��V�$A	�t�.�;k�HD�,O��^V)%���e�8��M���@���T%��j�o���+���d��UĄ=f���4�3��! �Eo�5����Q쬟P�PV.�юoN��lG��Q�#�	(J \?�,��႞�E��R(n44Qa��.٥	v�:ʼ��
I�Ng��n7g�Նɺ�@�ӄ<�8�%H�Է�)���(m�2��7꜄��w�%܊ս�r�%+Dd��(�<M��"���W�hS�ND9��~��{M	ЦP��@ዕ�x^�����Vġ�}'QHz��I���C����*���k����;��BP�g*�\��1��������1���%���L�*
��-�
L�r����-��͒꜏0��l�p�TbH!
s����������<�0�ʚ��UWR(��HsS�,�P��L��)iV��pE�]�D!i�:a>��+O#-M')V�Ft%E��6
��*o5
e݇[���QE�.�'�iE4��R�x�-�E�:0PX2�K6�P�6�e�R�\���|�(\i�\6�������\��;C),z�vy�^T(�����"WT䑞���4��Uq��]S��pb`H5�J�ǥpUh��v�h��„�}I�Nc����$��wW�i�r�d�ItE���� z~�D�c%Iuk�j����-�����z��߸��?T�4Q!./�^PU)m����Yd��jIh��:JNƾF�����R��/<��]o��|�z���7�ٱ4镑�1������%�Z�"�w�
�B�����F�&(�rI;+]d��W]�Pnƃ4�
ŝ*����� ������~U���2UA��`i�r�ɵo�������J�+-ę�rʇi���x����T^eL4������r:U7]��i�j����T�u^X�jޝ���;��=�:
t�3i�=f)�7u���~;���p�7�2ۨDS��{_Ļ�}t
�v�{]��2���*�쬛����3(�?����C�4����F�Q�(�2��P
@(P0Q��,����^x�����>b�`�౼�����҇l�v��}/���2g.�-�^0xa>��/̧��^X�l�g�/�����<A��m�p����)������}((L�����\����w:�F)|L� �l/Q��ˤ}Z'��%H��DBk���;e���Spױ��r.�03�hw�����E�e�|�K1���޴�€�
�B��3�e�y���yOB�g����֫O#M.���X�ˏ���hOh�!��%?H������[(�@�W�ϰ� �(�j��2��w�a~7-e���4�sGz�7ڽ��o�͚3��
3���o=r�׶��Q��J����H�c����G%y�	\�G2���I��XP��DWfH4��rت:5�_��Q�H_[��X��O�K �(��[���»��s�1t�i �:�C��@�S��E{^`,�V}��w�V���Tzi�}}�
>�>^�7u�U�L�����ur)�jQ��8Н����o��a�f���4�%�?�3�F{�x�7�/�x;�31�?�?{����0�bȐDa*vخ�N�����i#����^������uf�6)�ȡ�����O��,��>�ǴY{�����	\�Χ.+|`!x�4�g���K�Gb�
VzA��0��?
u�W5�/������0ⅉZ˟�I�w��$���_�P�)���n|fϣ���R�����ګ���.
h�fx�?r`��(�Qhrgߜ��Q"(>�=�3��K��a�B��U@��M�vqo,N�#���W�"%�;oxڛ��߿3��:����:;�۲l�7���w�n��h�l������x^O�P�

��1��Ie� ��IG�5��L�O��%VRX-��捈}���|Bd�?q�����m�_2���Gl'���
4��7�$$/l���0��FR�
����7�/�$񐗤�{׻�-"����DM��1*���(�Qhs����E���m� �\�Utn}��II�v�߱��y�W�`��d����Y��+[(�Z{l�x��K������|(��v��dڲe�B\N��ֿ�GfP
#��5/�7Ja�#6PX-(�O9~pOFa�C��#���h�%/��^�������`��۬z/������^�#^8n�б�^0x��CC=���^��D:v�6_�WJ�
F
4L,���%#,��7�����@a��L��U5P0R�y3��˜���)��쟺�1
3
(3gq���K��B�pX�²�l�*�^��-�`V�8��^0�A�e�_�`2�g�}~w�W�>�%�π���� �4�"q0Ϙq�/����a��g	�!(y.�S��U�|�(X ������n�̚����13O��nZ�2�1���NW����NU����QA22����SPO|��ҩ/ͅ��}%����:���d�
��A.�u:��^t��HTg�Sw\’(���'��Is�zi�7��#�h~�ϥ����K�LqBܗE4�C� ��
�hj����'`n��N��	JG�/�%Rc�D�Co��P 5%R��[��q�T�Y�L�=R=k�~l��t�lgKU��[2E�ZUڪbVu��L�A��ɳ�(�������je1p��ߖi'��M:�-8���B��z�|�H>��.���@�VB�d��3��g������z6
�<��������-�_�d�_�$��aJn)&!t�#_*�"�?멼0��H�q�VZ�Ha�h`cB����fc^Xئ��H�nN���R�Km�9��h���K3���H�Ҋ�A��R�*c%��O���\�j^=��[����ؑ�@K(P
 ��/��~�]��b"2,�IEND�B`�images/linkedin.png000060400000001172152455614210010316 0ustar00�PNG


IHDR�abKGD�������	pHYsHHF�k>IDAT8˥�;kQ�wfv�$NvI�JҬ��b�X�ic��h-����`�g,| ����>H4��,�͝�N&3�e1c��b�?����yp��Oܣ�/@����
���\�0Ap��ų'9���'YWd�CĀՎ���x��N��ͺ�O2<+8:��	<�,�Ʊ}��ǽ�K��+�w�;�-��#��� P��{0��"p@\b�_w�̯d���Iֺ$k
Z�����\:�NA;��n��S,,or��#5��oV�qj���3��[�T�i�L�B�u���t���H2�����C�L
��n]��-Z��t�r��'�ܚge�`zj)30����t@�a�`q9��GIg|]���˴���81��ܢu)��%��Z�2�
q/��?-@�\7���[�I�A^l�E&�<Dtu�%�#4<��!P��=�Y�4�g�-�BQp�=L3Ȥ`�C�HtѕY�$c099P�����.��1�>ۃR�[e4_�����6����<�/��<����IEND�B`�images/article_format.png000060400000010673152455614210011522 0ustar00�PNG


IHDR_6�iNtEXtSoftwareAdobe ImageReadyq�e<fiTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmpMM:OriginalDocumentID="xmp.did:99EBA9616E13E511A14FCE5F5AC04308" xmpMM:DocumentID="xmp.did:C6EE31DC14C011E59887F20FBC26FF0D" xmpMM:InstanceID="xmp.iid:C6EE31DB14C011E59887F20FBC26FF0D" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:9AEBA9616E13E511A14FCE5F5AC04308" stRef:documentID="xmp.did:99EBA9616E13E511A14FCE5F5AC04308"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�v@}
�IDATx��ytT��3[6�F$$d�@�X��%f���5�V��-�t�u�i�т�j=���R�JD@%"��Ĭ$�N�L�����NǙ���[���?漼�������ޛ��b�c!G
@0@0@0@0@0@0%R�`�Z�|[00�d7A�`{%�������!!!a��� ]��$ D-V�^��{����0�}�-�f�B� ��˅`�� �2�L���I�
O[y�ÐT_9?_�N0\��׎7��wS���=��퓾��P��P
��Љ�%������~ϐQ�w�&��^�h`��ùi4kġn�<o̙:�a�N�����mvԽ�~��Լ�2�B��c1�O<A#,nNz�[
�88�C��ķl�h��H�R��9�+�n4m��j�[�����}���r��
c�&�zm+Q���j8�Hʂ�(��E�ѢgYI���I�������VVV��a,[����;�;N�\/'�9[&U*笶T>:>3c�7Y����γQIK]�:��`0(4�إ�I���t[�y�6�8��0�+�Z�C���Z-��7��P�N6ȃzz �g�9C�ɧzw4�侜V�V�翌L,�I.2Y��Ʈ]�X�~�z��:t��K�.���>$nvx�d��~3/�Y(--eyȺu�8��O>a��%K�TGll�[S�y�V<^0��V�^o��L�M�ErΖ�/~����"x������Z�z��z��i��T�ؤ9OO]V9!kx���肱q�FA{
�q+�OB<�Rp���� �0�����y�Y��&AQ3���o=����-��B=��u
�<_9���;�`R_L���}r���;w�<�{���b?s|b��t��˩%��VRRB��-^���Ly�!#���8�;/lœԂw�2���a

�϶3�9����S�1[�	����~�288Ha�­)wD�$���"|ӛ}s���"M��y;|�0��B�(,,$o�nu�ۯ�'��f������{��X�����SO���Z��������1� �[R�g.k׮���E������mJ��9:��[3�5k�P�oEEE~�0�5o�V��V"m50Y`�C���'
���c``��g�"*y����&6gp�0<�߭�j=���u�b+�[un�A��]��r0��o|J�G��d�ƭ:طo7�����u�d鸰]}�σ��fa&O���F.�=�É���.U����Z�~�[�L������g����:n
��̥���Ou���S7��Sȏ�O�8̔)�7jj�qJ�a��f6w�Ԩ�˃�U=��Y�6�800�80�8�����M�j��~�f���c���ɫ�Z�t:���i4��!""��7nܐx)����p�d�+�R�U��͛��j�չ^�Eݴ+@�L����uY���9¨�����Yqd=��5�o��Z��,|ihh�d2y0�����ז����q�_�Al~��5��ѣGY���;:y�S����l�ed򞵢T���2�>�t���H��8��v��Lb�6]���j��*=o�N�Gj1"j��ymTT��yt�R,Al���5��7�@޸�nm���?�5A��:j_�4��D��\�G;h�a�c��n�;[͆��kL�����?'!�'.���uℸ��Ioo�����`�?��)�
�ь���B��rss)_.�g�N��)��<��f�wđ�'Np�����د	Q�վ�Zb
�.ԓ<�'�n3f�$��zϵVl���U�s�n�nO_��'�������Ѣ6�K�b	bCl���kD'o�3��n7[:3�O�;W�<��~��)y;L������	��Q�|ۈx����xt��|�-)��Qp�ۯ<!6�����J�ظ�Z��c�Ft�F?�a�����9����Y�*:~��'���`��$䷑�|m�������ɫ�&-K�(�ɕ��#bYYYI6qq����Ĉ�$.m
K����F0bccE��e'g��c�Ft�&�0�pn�Ѫ��h��_U��~� I0�}��,J�/Lb��/6����M�5�6<~1�L�"��{�K��������|���loY@�z����魢���������)t�`2�%�#      e�[�ېp      ���)b���<�Я3>�����#�:��-)p࿸4
:�y�jg�s���C�]gm0w{��7;P��
�����lM�/ΚX���c
V	'��tü)D0��o~Q�7�=��p�9��7���V
��ЉM"��?�`�|�M1N=�����I�ϼ]���L��
Ԓ˰�*�AgO̸ �d!5.����W6�h�0��8���p��2�i2H�foqU=�Z��
3�2ٴ������V��Ag��i���&eЦ�W#_ϛ cǑo��rRc6妽��W��^�m����uș�����NE�#��.H?ߦ�t��h��a0A��:8l*����5�%�[˾"J�"D-��1�?�M-������W�$F
�`/w"���|�G�^�w�����c�z�y��[��_z���Y�|�u�v�b��8��0o�[�o�9צq��%�u�H���!o^��U�t��gV��o���:�o����s���LSϧu�:���0����7�͞��?G!�yz��dal�y+י@�<!"�,D��*�O�̝m�~Ou[e}���K\p3e8�[+o�/2Q��
�D-�z��d�V�7̛���}5W���D�a`>��BC޼�08 ���5I=8��4C�祻d�}�֘���V;'�I2�N���/[�j��AD)`Jv����˙2Ʃ�Fdh��l�8o��ly��I�3��� 'w���h�9��*��Iޢ���?�[��o���a������ߐ7����{W���8rE>�ؽ�� ���9�����!�L�q�jq����v����+[��w��\�v�k��:�Y��=�He�%DL��g'3kN5�|T�fs$�෤(�v��ņ�2�&�1�a��R>l����P)�f��?� �]!������S������`#�<0W��ɴ�ސⶖ}�yCg.~��1U��;��̀�N^��R.o��r.�!68383G�@��^<P�y���Z=�γ��!ti��*/���S"CD�p�%�?��ڲ��f�@�a�}N6t�i�7�>C00�Cl�
�~�h�U��?���uH���9��fx�\�^��'G�@0@0@0@0@0@0��	0�?	�R�
UIEND�B`�images/spinner.gif000060400000003041152455614210010155 0ustar00GIF89a�?


%%%666DDDLLLTTT[[[dddlllttt{{{������������������������������������������������������������������������������������������������������������������������������������������������������������!�NETSCAPE2.0!�?,�����n
��RC�~o�Y-1����J��eF�$�v1_oa��SFr��29?,	8:BS".J#EJ')C-W7"#
,W6C.&>K,�C9!;K 6?>$�'75-8)�+b1)#/(?5)�?:>!?!4W1/? >8�K>�?$�:IBA!�?,
X��p��$zD�+��!=�3�����~/�T))@B�X�r
��C	Ȅ����	w6D(>IB$0�B1�D3,�?:%�A!�?,Q��pXi�B��c~6CY[@~�g#�l���A������PT:ȆE�~'�F�D2:C<7
>B.%HMC"3�1WBA!�?,

O����L�H�,�M?ܢ��U2?
4B0%Y���*@~7�j��P�/D�~���<I�G��.
�j�?HA!�?,Z�����	���T�� �#���6��%����%,�V$G��0 =ݣ� ����][ 
w-w"{?>JH).{?(<{�?A!�?,P��o�Y	�_);^d��O�X�ʱ8"��$�
g�r�)�12��D��b8
?*=B1f.�f6^A!�?,

O��p��ňB,C�w�ȅ���FU!�2�d�2��1A�H�ߢ�x�$-������ 
@~-X=?	?(D�0D
	=?NCA!�?,
V��pH̸��S
ɼ�>�SH�T.��YB8dDA��6����
)h��B�	d���+�h	?	?,C"+?=2"C=a�<?:DA!�?,Q��p��
�X��?��XS�'��HL!�� 6Ԥ�Ӱ~�_�H)@�Z�J �?
0P'??
>5qG>7BOGA!�?,

N��0�	�BE�p !�C�zZS+�䞞_�`�����~�ꩠ�8V�H�(?4G.M??6zG_?HA!�?,
U����3��ȟ�!B�_��vѣ��u �SV1 FY�꓾M
ݘ�]>�Z�X*�X
"/I8??PG/)??8i$>?A!�?,S����W��W���O�\~AWP�~(�9�Fñ6�j�s�|�G��
!
5!'7?&*?0)#C:?!C1/? A;images/smallexport.png000060400000004770152455614210011102 0ustar00�PNG


IHDR)'�ja�tEXtSoftwareAdobe ImageReadyq�e<	�IDATxڬXklTi~�}���2m�S`K镋
�ڬ��"�5H�1��?����$&��h�����D�a�(Z�fSX�K�B�B[J/K;��\�9s��}眙���g�e�ܾy��}���A僃�d���Dbpl\�x�w�ĉ��t���N�qx8�[�0�8����‚ �---���>��j�2�<�…�gϞ����sP�$~�I(�l6�#�(X^^�����KM�%��O��P���?~����0�M�˨^��4�m�m�繙���;�.��Y����6��Ν;�@�Ћh�
B[�#��AQ< I2��D���3�ܻw��F�祥�+���Wɻ@
d&��SE&���QR;���e��Q ������E!�W�������t㧯�$�v4
�����'�u|���%� {�����$$K\kk돗S��P0�Ϋ2�2�����T���Q�J�~�jkk���	�Bp��-���g߹~����w�ps��-���2BIYX%l�@�e�DA���D=?��ɟo	$��g��Ypͨ\z�-�����Tmb�Z��#[f�_���)���;)� %���!A` )�"J�:W.��$�C����<�DZ�͕b��>�:笫����+�Q��= m`%�vS�R nZ�^���x�)
:���6�# �^��mH�&�q�rE$"�ejΡ���ݻC000mmmp��i�л�Es�J�|�X��c��8q0G#V(�c��i gR��=b�[*0V����I���Pd-�[U��pV&�-���i;�J`���Sn��a�0�˯L�EG�-`Rs��~����-4Z.�5���.i��z��*����)�Fl�����"���e�~>UQs,EK>o�v��v��:�7�T"nsۅ��S��>�1A+�k2iQ188�tH����$���TL�:Fy�K��#oƓ��hϠO�"�O�YY7��zտX�y�]�SSSp��Е��@�ǯ��>���i�
�<��GO���j��3б{��PK_Ksu�[�6��)s�a��E��_M�0{po�p��y�����y�Ch�F��ë��4$rCpc�򍡿��Si�
E�ej&t���43�y|��򲮹pN��"/w����qXZZ���Q���g�]G0����i0�I�=y
>���|�j���`vv���PB#�}5�wŎ�A��q�3AEs�$7��U6��O3K0�'�~�WXX�c�[CC��q�w!�J�E�ZόvtŎ4�T�k�;p��mژ7��rlB!<��z��ad�k�L�*����F���z���&瞼f��N�S�p�K�x��Yy�ؤR���Ci��F�d=������H&��9
�=kKI@]��g|������$E��0�	�6��j&�&~#����6lsS�)6/�O�Ÿ�Nϵ��N4ۼ#��:���
���*f��Z,u"VZ�A�zB�Nx9��ب {VS���y���GS���މ3�h"[���b�2����� CGG�+Y���c�B*���'O2������y��
6`���Mo���w�nBM��ْ���F-����<_�/�[�bU�EY�����()��T��h\�t	�0��S<^8w���U�3u��sr�<��y��1\`�*�f
`8��]��
+��|B�IL6쩭As$/�Ɍ K������$�����[J.�6-d�p�jb�[N�\�R� QT����2���� ".`�)�</��~*��'�ݵ���g��tޠJ2�\y����{>��7��V(�<�j\��g	H<oB:�)L��H}��ҬK��A
бk�������Snzᙡ�i�#�t�&�
Ҙ��W�^��#Q��G����|^�d�k��u���BfUs&�2ܸ�[���!�i��v��hءׂ�9�潰���H��B,;�̾@8j�Bu��ʋ~>|8p�ԩ3~���sV&$�&B��Ue����@[8&�<):fnN��Io����k3�R��A��`��ý��� O�ʼn��"���7+6�J[��7�P��? �9���w0��[���b|�ch��d�j^�DSl�l��������o�}��2�^���b!��G�qa9s�}ɖ�h���Yl}σ��]?>�����l�W�@��|/�����.�,�%�'���0��N�K��� �ڇ07Yo���r�����ף�{ǚ�O��/�|�8L�Zы)8�
�%�:����H������q'Wo��8�)�Bif�����i�b������$�}�4
��Ql{P�7U�`ӱ?W��#�O�F���"����z��f�U<V�")&Q�w>~9ܕ�.6�\������'8�s��j�
�z��N��"�; j����
�G�>}r�y�&ۥb��� �/�	W�J��DzIEND�B`�images/printshare.png000060400000000725152455614210010703 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<wIDATxڔ�KK�@�of&i�G-mA|`+.tWA��;R\��;�b�>@��译�ҭ��\H}&M�d̍���R�,��r��3��8�P�T@��-��+K��=��߮/�Ҵ�X��4��.'(!��O�)T������iq��i�$"�딡/����88��,)�u!��)ŽQb�8֛����=0J@Wթ�S��M7�^�fҠ%U8�9�\��d�_c�|��O�B����t���S�<�Rd��dhI���s8$��M�m��JCX�<��#94�I
Ql�쭯5o�]����$�s�VK�?�n!;bֻ
;�����yMM��a��-Ȥ̭����DL���U��Y����K��Pj�9^�6IEND�B`�images/editor/delete.png000060400000002177152455614210011257 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:2DB953D5B06C11E49B42CCAB3AC66869" xmpMM:DocumentID="xmp.did:2DB953D6B06C11E49B42CCAB3AC66869"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:2DB953D3B06C11E49B42CCAB3AC66869" stRef:documentID="xmp.did:2DB953D4B06C11E49B42CCAB3AC66869"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��r�IDATx�ܔ�
�0��S�?u��:D��9z��=F=G�^�keɦ�����}�6�����	ў!�1�}�ޜ���n:�-��yktX�5T*%Ճ	
�gY��)M��wm'3P��QZi��B�*�E���3MoRb�����)���FI�Ek��}��ď�(V�(�c3�(1J��(mlR5ؚ�QM��|��a�j\C���{���l�d
�=����b�8�e�k��A����L/�E��U��IEND�B`�images/editor/icon-16-initareas.png000060400000002267152455614210013146 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:A2C712F5B11311E4AF56AD73ED75A287" xmpMM:DocumentID="xmp.did:A2C712F6B11311E4AF56AD73ED75A287"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:A2C712F3B11311E4AF56AD73ED75A287" stRef:documentID="xmp.did:A2C712F4B11311E4AF56AD73ED75A287"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�-��+IDATxڌ�AJC1��$�J�"�<���.D�@��3�{��;o�	\�B� <�Gp#�*�iR�BR���̛�?�̼�{oڶ5)�V���^C��#���t�4VN�����d��؅PG�B�(�g* Q7�ϰ�H�;����u<��b:jB۳���^Q��#=�f���%��Ϧ�
$v$�RqxN�o+�i?�x��-���p^/�`���Ob�}�cx��*[�0Ӂ"Ԫ^b�S>B|
�H�9m�3�؜�l}�n��*�o+�AS*V�~��|5A���%i�.��y���&Y;�`0��w�m�IEND�B`�images/editor/popup_delete_hover.png000060400000002212152455614210013673 0ustar00�PNG


IHDR2=50tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:25F50BB44AFB11E5872CC6FFBA9ABBBE" xmpMM:DocumentID="xmp.did:25F50BB54AFB11E5872CC6FFBA9ABBBE"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:25F50BB24AFB11E5872CC6FFBA9ABBBE" stRef:documentID="xmp.did:25F50BB34AFB11E5872CC6FFBA9ABBBE"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�J��IDATxڄ�?O1��<"EO�4��q#�¤�&I�nQYHL`�s@�s^��<J~ɧ-�s��3�9�����o���n�����4cL5x�N��,
����2��w�a
=~ƹ���
�(I�ˈ�;HL�ŶvN�~鬾�q�3�1�Q���"3�u���Uկj����~[�m0^/�0l�����᙮�[��B�8����87�7��o��
w��#|b���6��ُM�}�o��IEND�B`�images/editor/icon-16-show.png000060400000000503152455614210012136 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATxڤ��
�0E}�a
z( �2d���ـ�Q�\@�T�t�!�C�IH���߳�>��$����ᗏ�	W��뺫��u͒�4
<�cB�U�0G��/@���f��+����6�uc�� @J��9��m�^Q0�sێY��r�!��M�P��qZt�z�i�Q)4�>�'ܒ�� ��3p�L����$�ʚ�!
�n�`�O-&�}-/�Z_�r5ᣳIEND�B`�images/editor/index.html000060400000000054152455614210011274 0ustar00<html><body bgcolor="#FFFFFF"></body></html>images/editor/icon-16-delete.png000060400000002173152455614210012425 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:422C85B4B11311E4A310992F9CB44B06" xmpMM:DocumentID="xmp.did:422C85B5B11311E4A310992F9CB44B06"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:422C85B2B11311E4A310992F9CB44B06" stRef:documentID="xmp.did:422C85B3B11311E4A310992F9CB44B06"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>F\A��IDATx�b���?022�iVVV~..�@Z$R��@ Ȁ@�踹�YVSS���544�cSˈ���������"""�~�b����5 W1�y���Ǐ`q�k��eAv
Pp�� ����d.�۷o3�L�
@^(**{
�Gpss3<�� >���e���8��� y��
���G�\PB�?�|���A���^tES�����	� K�%*��kďxIEND�B`�images/editor/icon-16-edittext.png000060400000002354152455614210013016 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:6197968EB11411E48FC2AC0B24C24080" xmpMM:DocumentID="xmp.did:6197968FB11411E48FC2AC0B24C24080"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:6197968CB11411E48FC2AC0B24C24080" stRef:documentID="xmp.did:6197968DB11411E48FC2AC0B24C24080"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>o�&q`IDATx�b���?%�������߿�r���gdd`cc{���w&-�>,$$t	���p!́���_�~Uy��9�w���5�_PP��ٳg����w���U�Ç\ 	F�@��bbb��N�eeee`bb��f�~~��@�G�`͒���"""`nnnŋ/����>&p͢�����RRRmmmw�6�4)b"V���4C{{�e�f[�f\`���2�fl^G�ϟ?U����/��5%v�Ƃ��L90��8p����S$r6L3L#�
8}�
nBf껧�����{�u���J\^����)����֫w��ޑ����g߾����x�^�� ��4�g�}IEND�B`�images/editor/icon-16-editpicture.png000060400000002353152455614210013504 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:03A2AB7BB11411E4BAB1E423029C47CE" xmpMM:DocumentID="xmp.did:03A2AB7CB11411E4BAB1E423029C47CE"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:03A2AB79B11411E4BAB1E423029C47CE" stRef:documentID="xmp.did:03A2AB7AB11411E4BAB1E423029C47CE"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>J��d_IDATx�b���?%���B�c�gcc#Jӯ_�>|���b���õk�fc���V�
����櫨�������ɡc�Z����߿�4�	@�0		��b�\\\�����բxbbb�;����	�,&&vh��?�///njkk� �t	X������� ��ϟy�x��߿�
j*:�P�EEE/FFF]�!@q��?�
�4��AFFF�p''��n:�
(jA�A� 6+++�+��$�6])���a���H��0�f�%0�aH!(�YXX�@�01�O�,g.��3H�d��̌S#\L`�n���{u�^�	�=7��}��w4HIEND�B`�images/editor/popup_delete.png000060400000002231152455614210012471 0ustar00�PNG


IHDR2=50tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:1B686E6A4AFB11E5A199A66C9913D4EE" xmpMM:DocumentID="xmp.did:1B686E6B4AFB11E5A199A66C9913D4EE"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:1B686E684AFB11E5A199A66C9913D4EE" stRef:documentID="xmp.did:1B686E694AFB11E5A199A66C9913D4EE"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��Ol
IDATxڄ�?NBA�q�A""J�J"�;`��W �
��P�yc#�X���ĂF-5�W,��w�݄�I>쾙a��8�}l���K
����~��`Zw��i\�U�`|YC�Z�	�q���mj5{�B���p���zm�Oh��#|c�H��؎��@=5���UM�^��g��+��W9U�G����H�e������9�g���3�s#lv�a�@Wg?�S�5V~�y�)^�r��u�c	Mݿ��pro(b�glii��?�?rF0��IEND�B`�images/editor/popup_cancel.png000060400000002156152455614210012462 0ustar00�PNG


IHDR��w&tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:FE3E210C4AFA11E5BC2FB3422BD422F9" xmpMM:DocumentID="xmp.did:FE3E210D4AFA11E5BC2FB3422BD422F9"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:FE3E210A4AFA11E5BC2FB3422BD422F9" stRef:documentID="xmp.did:FE3E210B4AFA11E5BC2FB3422BD422F9"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��;o�IDATx�bL�ߦ������(�Lc@��R�@�$��
�%&�)�S��{X��z ΄��|ҭ@\
�#�]����	�@N��9 6B�O:��je'�$v$E?�x"Pa9�W�pH�!)�T��0!)����Pq�b��ː�pJ��ePy��Ӏt.�i��H���Ŗw�AA���(�h"R�����w�x6P!r�1@����.�2L� �IEND�B`�images/editor/sourcedialog.png000060400000001374152455614210012473 0ustar00�PNG


IHDR�abKGD�������	pHYs
�
�B(�xIDAT8ˍ��jTA��3s37{���aI�!,��T���R$�n�Ϡ>��������ws�ź�;�"�Y����)Ι�����(Ȳ�<�YXX`�b����3	!���=c��{�sNEdnYk{+++�Z-�$ADf���6�:��<�����$�Z���c9;;c< "lmm�+��hAU{u]SUu]c�V.//QUb�כNNN
�;��fs_Dz�fk�́�B I��Z�scH���UU��;kmOD�+�����m�<gii���"Ƙre������u}3Dk-Y�M�[��n��lll�>onn&@��)Ƙ`r�,//#"�s�`oo�E]ׯ��z��v����~����.`"�pgg�Q��5>\\\|ɲ�g��y<�����1������1�e�ө�o��}ww�6ƼVU���4�H����
B�9�Ӈ<��VU��#�����5 �uT�@D�I�U�p�܍nKUL�C��$��h4BU�?4��1���eY��#ͫ�,	!��z)�oe@%tEXtdate:create2013-07-04T17:03:03+02:00M��x%tEXtdate:modify2013-07-04T17:03:03+02:00<��tEXtSoftwarewww.inkscape.org��<IEND�B`�images/editor/icon-16-mediabrowser.png000060400000000753152455614210013650 0ustar00�PNG


IHDR�abKGD�������	pHYs��tIME�8���MxIDAT8�œ?�a�����O��u7���B@ld����~�+r�"�'H�"�s� b%�D�.(
ﻓf�́Db����w�g�y�wH����$IPU�/�1�v��E�ND~���-�,;��z�������A`�f���b��9�N�50���@UoU�IUoOԼ>���n�h4Ω���<��}��sl�����]�W��}M��z0��g ���G<�+��0�G��M�Z��T*�Oi���ֲ����Z��MD�F��ȮV���f�x<�]���|>��j��v1Ơ�8��f�a�^�\.��by�I�Ļݎ<��( �2�<�@᝗V�km��d�*�
#=30�ni�K��7�`��)��8IEND�B`�images/editor/popup_cancel_hover.png000060400000001762152455614210013667 0ustar00�PNG


IHDR��w&tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:090B06934AFB11E5A67AED1359B9D3AA" xmpMM:DocumentID="xmp.did:090B06944AFB11E5A67AED1359B9D3AA"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:090B06914AFB11E5A67AED1359B9D3AA" stRef:documentID="xmp.did:090B06924AFB11E5A67AED1359B9D3AA"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>n���fIDATx�b����6��Y@̀ς�k�8�#�4��䞃��G-@�	���4�	�hg� yd+;����Pqt� |M�Edy�L&��$�I�Lt�
��ˇ�}IEND�B`�images/editor/icon-16-sortable.png000060400000002154152455614210012775 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:548F8F27B11611E4A81DF13E2C8B797C" xmpMM:DocumentID="xmp.did:548F8F28B11611E4A81DF13E2C8B797C"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:548F8F25B11611E4A81DF13E2C8B797C" stRef:documentID="xmp.did:548F8F26B11611E4A81DF13E2C8B797C"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�Rݣ�IDATx�b���?%����ed�|HEBi�\���Ai�x���!�B.`b~(M� ��45Zhjv �	#,��	��ϟ?CmV���
ğ�X����j��'ND�����0��ap
������4��"N5,X
�S�7���w		�h\jX���ƙ�D4�����q����6fYk0MVR>���MX1�&;7���\�cT�XIEND�B`�images/google_plusshare.png000060400000001300152455614210012054 0ustar00�PNG


IHDR�a�IDATxڥ��OAǿ;��s`���NM��;�4�X(�6G��R���l��1���v�k��H��p��h�0���̜��3�&���>�}�,���kǵ/�a�]W�1b���9;����ģ�O�h
T��iǥ�l��er\�.t]Ë�'ģ_�a'�Cb�-1M��|S��_���J._�cgc��z�!I�P|��pЎ�Q�$����=��U�������`�
�,j@u�[�YR��Q!��Ņ�&`�Bd8�QӉ�GF@瘟����!|�_z�d���Вq]N�mS�Z��}�t�C�P@*%�!2I��r�lg�`$�=����,�(�� e$��0"�P)W�����H�H���(:;�K����c�Rs�ww177��dDX^~o}}�$���J8v�(9`�i5MG���b���A�_��b==g�
����r����-��k�R�.�֭��u�X���Տ���]宛�Ԧ���<19��0~�&ڙ8��1{
mm��4H�36l�Ӟarb�:�p��+t�
�DC}�9H�O��d��ul�?k�x���n
�m�H5�4Q�csc『�fO\��i��b�9zf����E@{�p?���~�w�?�_n
 �|BIEND�B`�images/grid.png000060400000002575152455614210007456 0ustar00�PNG


IHDR��u���sRGB���gAMA���a	pHYs���+IDATx^��]K�y��O���e����'A��-�(*E�Ԟ�%���k
��I�j�����kJ�~?ϲ,�y�<�J��\.����c/��{j4�;�V���l��ɉ�l{mm�������S<�g����k*
�ü�nO��L&��j�f�A�t:�#?������k���}G�Qʼ����W�}E{�J�gs#fG�kme�ǀ�A�� E`�"0H�R)��A�� E`�"0H�R)��A�� E`�"0H�R)�Tf7��죣�⑟��mn�l�i�^����fsK�^/�V�!�O�E�T*�/������G����;��{�\.�ѳ���i���c�M��g�Y*�F����xڗ?i6�����~�v��#?�v�d<�,�0�����EL�Lc�F��Q�6��!E`�"0H�R)��A�� E`�"0H�R)��A�� E`�"0H�R)��A�� �E�ر�?ы�7��|>�=~�ew�V����}�3�OZ����u��'�l�f�)��<1;r߸�pR)��A�� E`�"0H�R)��A�� E`�"0H�R)��A�� E`�"0H�R��]�}6;b~����}~qq�~��.꼼��z��z���>>>���+ם�Ŷ�'va���MԾ6׎�l�Zx���nV�·�����p�����oOOO��]��O�n�x�g�Xl�7������w4���>�1?j�CܗEB�� E`�"0H�R)��A�� E`�"0H�R)��A�� E`�"0H�R)��A��:�r�?�����i��O���+����;
��)l�p8L����;ۋm�)���S��p{;Ծ6���!�����f�r����-U���'���n�Z�����z�N���n�����v�+���-n����k3vl�\r]Nj���i�v�]#fG�ks�W$�R)��A�� E`�"0H�R)��A�� E`�"0H�R)��A�� E`�"0H�R��]�}6���N��67bv侥^��ۅ�vmf>��J�����t�j���Ϋ�j{��\.��E�ksg�Y*��[n�"L&��u�d<
���t�G~캎�p��`�����)�><�Ͼ�#�G\�167bv�q?�� �R)�TfGi��A�� E`�"0H�R)��A�� E`�"0H�2�7\�d�.@%�ٍ�?~��A�� E` �݆�@��,>��_���?l��IEND�B`�images/index.html000060400000000054152455614210010006 0ustar00<html><body bgcolor="#FFFFFF"></body></html>images/arrow.png000060400000000531152455614210007651 0ustar00�PNG


IHDR		��6�tEXtSoftwareAdobe ImageReadyq�e<�IDATx�b�.���������g�b�0���- �@Bq�G��h�b	���XE�����/� ������`ޗw�ִ�3�5�ph���06@�
�&1�#@�(����?'������귀���������W��mC�\�ŕ��e��8�ĝ�/~~�8qۤ��5M޻�x���d���?�e���ם����۱h"�?�~0|���㷏�dv�*��ad�F�_?l���Ү9%�`���Ӟ5IEND�B`�images/schedule.png000060400000001552152455614210010317 0ustar00�PNG


IHDR�asRGB���gAMA���a	pHYs���o�dtEXtSoftwarePaint.NET v3.5.6Ѓ�Z�IDAT8Ou��Kq��z����"|I�APA`�D�zIS3*M
KM�4�R��"��-��K^����:�Z�jn�řݝ��ogvm4�����w��|����6����C?�;UG�i�{���ccΉ���'D��N?���09h�iܖ�g*-9V}��������ű�����*��q����Yͭc�/R��T�4�!z���Ґ��8���L{�
��9L�e��JuXN��m���0f�U�]
��a����x�1p��KQr6Ab[ 9����|ۛv����xR}N�(�T����Vp�KK?a�L���\+|�G0�&�3a�U�r�mj�%���^�<Q!� �|���^�1XG=������?��Y1�C�wII�V��ZѤ�C�P؅J`,����S�U>�F���4�k2OC7�c?�a�f��4@��&w
�D�u3�]>a�x��3�&�g�`vI��ºl��r��
*�&y��\�&��[Q��������D��0��
$���]F���k&�|'l6��A�l��r�	4�_��j�B���Ѱ���`�w���2#�X���;��.x<F�G-�ӛP'e+��7��
��t�߶q-!(��睢����`�t7���ѥ��\Pg�g�W
&,�
U��z�k9��kh�����~�k�9�3���`<N�
��,ͻ��ݑI�׷j��d`]��IEND�B`�images/preview_icons.png000060400000021222152455614210011373 0ustar00�PNG


IHDRJ:�|ptEXtSoftwareAdobe ImageReadyq�e<"4IDATx��	tU��_�&�"
�l������(����>�����,�"***��2��Q�(����2�Ot����*H¾H d#��<��K������b�s�tWuUu�o�w��^ZIIIVqq�6m��s�NUZZ��W�U���[��jڴ����B��v/�Ym�1��Ia��(���Y;`����5j�4h���/�w�ء�mۦ�7o>0;;{���v��Uc0Ha��*�Q��K���)�S��:�k�K�q����E�i^���ͭq$�={���zH���0��s<X]q�)>J��~վ�ޤI�A��jժ�*++Kz��ի���AM���w�U�f��-��CO>������ڵkW�p���:�W�0JD��}!n�������+�0h� 5o޼�7�ݻ���?�����|�o�H�i��؇ў���'�؈��:2e$\�w﮾��;GA$�D�%�|��￯-�x�	k�/��JOOO� �ʾV����C�����Qo�yN ǜ~��=��3���!C�矯�~�i��h	~�=���+W�c�I'��F����$N��������0����.����Y�f�E�U��[nI*6~��$8���:Tmܸ1|lʔ)����>}�޿��{5��u�]��� �W~�I"���V�g��C�h������D	���k~�U���1�� +����~��ӧ�~�0z׮]u����ի�����aÆ�O<Q�5*b�K�0Hù�'�<����kl(�AHV6�~,���г�>�;< �\��Ν�$���7u�y��,̃�7�|S�)x��}���k���p�333=ݣ��Xm޼�zʒ�5a�պu�7���}[��߶m[�8�a��!>��p��0[2�g��]���|m~��IYYY��ٯ����;u�f̘��M�6iA@gB`�s�9�;a�M�K�̒�M<���:7\��ɓ'k�e�8p�[�nj�ȑ�������
�^	���_ES��!��~��GO��СC���/�Wޟ�n�s���U߻���8��^�X��^{��X�M���4�M�'S�޽[m߾�<쫯��t/�ƍӖ���q������z����}�`9!@���>�Ħ*,J���}�P��o��\u�hvvv��x�J}.�x`����EQQ�3f����7�p��=87HA��6k����џ�L� ,�_:�'������yv`��GQ����],ƻ�[Ǡĥ��q�!>�b��,Nm�B^�����[�~���c!0��/�O0�ʭ*l����|/mw�M�D�.]�1{��{Gt�ߪ�#���w�~3��l��H�5N�b����~�mu�h�@ڀ�r��g��!r�lܶ�w��g_�
�T�F-UAQ��4oR�����*݉�����a�	 :X�t��t�d�cIZx�ꜰ��8�����>ަM�8��s�'
�8ذU56�H�a]{�q�i�'���HvaY�WbMV��kQ��N�<�)�x���‰1� �Jr��I���Bh����/nm��#
o@�;�%�\�rrr�;��OⶨMKr�+õ�l\����QK�>����ϭ�s1�bB^4��yr��S���/T8��+�Tj�i���N�0��1/:�?���Z�~�_l8�g������&DI�PU`�}^���橧���JIV��$��/��#Ѹ$+�|��a��?>�IlEL����!���b��y��
�F�3^L�0�޸ބ���R���DX"3�Hb�z�埥���g?{V��7^�˪�-��ܨ
J
�A��̌Lլa3�Lߓ^���\+2P^L�H�9���0��f��f�'���h	2#,���nVf�ؘ�e�^����xq����N<�^���
SĂ��"DALBL�J	�`5b�sL��8���s����NF|��~���^�`�����m�_��jܸ�vé%��?K7.U�^�~��>g�Z�}��i�M�BR�*G�rM�X��9���k�Z�)^"��ڕcb]xMd�	03D�o߾�����(�&���#EƂ��db�̬��>;���l��v\����L�c2G>M���L!u�ԫ"$�NA�N�8Qծ];愞�3�?���kԯ�����W�^z�#���eX�$Y��ό�3T�:
T�Zu��=t�P���]IH���;�Hq�X��H��B�U�0X�z�6�)�]�jU�u >E�b������<�l��+|��qa/6�1�C4-{�wjL���I�LF�\���+ؘ��;�f���3'SJ��v��G��A={���1���h�	�B�?�����r �u�]�h���$�\�$�d�cXn(Y�IJ��⦷o�>����Dyֵk���'���}n�w�85�jK�U�Vmu@�T��Z*#=CIb�{��D��G+�Ǖr��H:�[o���g$@l2�ԩS�B�L^�:2aQhΜ9Zp.^�8!ß�~�o�� ��`3v���y��F�a\�`3m�4-�ab�8�(lb�%��
Ӫ~�嗵�ND���p6�숵q.��]΍��
�����"�(N�!�Gj|Q�;w�I���BPRzu�UW����`����͇�6l�dv!��s�-�4M�=c������,��B�tKHE���\��z�O������7�|sk��*���c����"���1�+VT`�X�\4��UX����#*���0t�=�E�b)6��O6ɮ�t�ż�DyH������$!�tvjv��!0ɜ�B7R[c�#�]�t���W�$�0i�$��@�h��O9�JI0�E���#{�,�H� ,Mb�uP����\�?|Pmؾ!,$ˊ�<Չ�"�&�<�N��ͤ.
F��1�gΜ��1~�I�K��{"n‹:蠃�֭[�pA;E�s��'��y�_\K�/Be�R�j��o1J7�a�DJJ�d@�c�=��N,J�%t��.�^�#���2��1'��pFL�߲�hn{�6G�s����}�ӌE��G����r�™j�q�T��R��m�zLB��ŭ�W�@���2>;�0�WR��1�Ѯ��D ���aL��s"��_lą6�A�P�B0],%�I&B!"�x >���˼��X�N��	-Sh����&�\>��s�ՓAб��ے!�ŋ��4D�P��n&�x*.���=޵_�~�#�~�sD�K
K�=��i���UP��'�-�΋��'.�����`���^��7�w\k�3����������+u�M�\�!��w�4D�Ǵ(�|y[�lI*��O\���F��z��?ć��׿�O�
|d&�z�:���~��	�F��dD�̮P��'�V�.�3frHbk�԰�(�G "h!��>�De��F�*�;�8�ى��jᎇ"ԯ_?��N�/��v4Ve"��o�;c?���7���C��N��B$�+|�w*�k���7���A%��o�qk[�h�,!�x+"Ґà��D1�6�,l�[J|h�e�]�.������"L+<��cI&�)T�U�g������'���b�t9�9S�>�w�3��D����vCi�����q�DX��+Ĕ����cQUgAiάV�����1{PDA��M��!�D�Q؉d��D:�K�:�HDؿG������n�2nj��"���cKN��N�Da����{�W��@���7�K�"�:vb�Xyƭ�(V�?�|��M��Q��1'A&�i�,��u�Q��*�Fv�$S��%��Ҿ�ŋ��Ц����4�cǎ�j>�N_�0H46�r�J��^����V���/�riʖ/_���>RJ���̄Y޶m�;���=ec,�]c0H6R��{棚�[M�k������,,,���;^��JT��=<��C�ܙ��Z�Qk�Rؤ�Ja|�Ҫ�T)JQ�RT])=A�R���e�R���e�R���e�R���e�R���e�R���e�R���T
���f��iӦY�̲?�2&��>�6m:033�P(���u5	�6)�R߾4�a�_�~�L����!A�δUL�ټy���ٳ�\�k׮0�A��C��	��/Vl�w�H�Q��b側���r�2�I�8Mf���i�~nnn9�X�d�6�1�~�av�b4׼%��Kk7�|cƛhtpf-5�Usգ�o�r��~��H���4b*8����O�L�\��da����D���y%0�=Ik�4�_l�4iR�ؒ
[Ք5����T
C�p{t��t�U�uk$�4�#1ٰ9o�W~
rEJC뉽�|(�hĒːyS��Y𽚳n[�]xȁj�	�+gm^�� �y��蕘Ï{��}�a�(��M$���F�J?ؘJ�g.�m��N9�7^?\���mWf׎�g�pp���/Ŋ��$K7lQ%Q:�����[�zG5k���xI�����W~���D���&0�BNK��_l/P��gE�9�%�早����{b��C�2K��5k����0��A�WU���^xA�cb�r�¸t�Ҥa�2^�b�[s	�q�Ʃo��F/��3��-b��W����$A���KV��r6�C��U��TA/?	F��Uy ���xȭ�J�&(8��z,G˶l�2�V��G�;?+2�;Bf8p�?����#��X�fS��
LC��C3�A8�|�l�X��
J�r�_�|Q�k.?�kTA�g���gD���,���3YkA�w%Q���b��G/�۬�X������~��:pA�G��OB�g���*0`@�	J���I]��\�߹��"EL_g��,g�j�XEXL�u��K
�@��"��q�	�Bf�5���|,�K���[Uf����T�X�`bR]KI춎��,�x�u�g�zj��=c��~��<.x>\�����K�al��YT����Eи�,��Y���3DZr�E��e�p/���Ci�2�����wm�H|�_�G5��Ja�_"���A���ʓ^�ʯ�
ܢ�m��.y�qQ���e�U�Kխ[7-��$J'�������S��"G�R���x��S<݋Dǽ?�Ԗ61ޑ>�
W���,Y��`��#7k&Q���ٴ�@mZ�B�~'�N��x-A{Yc�����ٰnJ倀Dq�+� 09��Xm�s�:��EĂ࣭�~Q���Sd�,�¤�zvI�k�t�\`'��H�[�j_��N�y�Z��Fc�kFܠ
X���}Ce�o��8�ߡV\�_���I��S��Ԥ��--,�3V\�xH�Na�Sj��h7��Ը�lRJ1y�d������w�<���}}j�%`
t?m7v�R�E�$�����Qݬ�,':��$dA)�	�~��r��\;>v�`f=ͅ��}8)�X,"�<��bA�� (͎ȳ��~x ����d�n���W�l�i}�`��`[��E��M(�	P����'���Ċ���Ax�r?!�^wZV869#G�mFLE-0P���w��/V���B��7��>��!�J^v^^��ht��\Uv�1�^��索^�޽��L,֥ 'V�&��!�GzQUȖ62�����?էOU��H���Ą*��]�8ac_}��f��7o�>�ү�o�Q�뮻N��6��}iQ'hG�F��ES��ɝ���;��az��qAq\{�<�
��y��R�<��Cn8��)$�][����&���B��W�<t�}��4j�(���/��w�J��>��>�%�	���W_X����d�z�&����>ӆ���~�����D���7(u���Y�q�Z1h�^l,GQ҅���=�r�#�v$�J,��GM��Ŋs������\���؟�G���ѴH"-�m��v9BM��uT,H"�GaQ�ڑ�wY���C�"a#�,	+���&t��������&��.�=�
�kk���Y����n�-��Z�&	_q^�x�Kr�`�E,���\�%�*���c�̈?��s�zP��>���zIj�.��I�!V1p�Άq#�Nj�S�C�
�:u
����F�I�[~w�l�~;r�4�Ә1��	Y�b�ć(�"QGN���6W�;��q���2j��ł�\�qP'w h׻w�6�Y�z��%,�`���5ۛlW��Q�.%:����ŋd�8aO]�M��m�O������������<�Wy[S�(x�"�$9(��0�h,\%n�('e��-�ͳ�X�B��!,y2�:�l�g��9״��Oj�ZV�?זf{��&�]˃�J������x3P&c9%��)h#�k�����-^�N�p�zs�2uv��Q<�<G�� ��H�)�4�TƧ���q��2����'N��8]��]��G�c^�7�r*��Bcǎ���̙��;#F�����n�+�Z[II"����F8|��lH
��<�h��Բ��~��+)E�҇�9�-����qj�����anŭ��.�%>���2��x�	]#�֒�S�Lњ�_�~��SOU,� 1bT��^���t�V�p�:OX{�DO���F64���?�-v�С��NP]t���ƦrIVEk�r�hd��\$�p��O>�C�Q|�嗺�C]�vU���mX'`w(�*�fΜ�cp�z�r��A���	?�|e^c&�����S��|��	|�e�9X���?�A
JQd�'�̶�xp$v���=�;Ԛ+�T�$m���W�Tk.�T�z�y��[6����_��R%��U�����R�4���&���;wnXh._�\�I��$Fp�f:	��cQN/'��G�e4lS��C�"Q �-�� �`�l�m�R�F�/h\�C�����WGq�>�Ais:7Lj�� H/��B��q���$P����P(N�ȑ{׮����i��>�o���:���u2��&
ZL���X�R��n�5t���!���1I�u˖{X��ݪh�f�ːKU��^s�QF�5D��c����WM�:U�4��5Iys��`��_y�]g�X�2�Q������t�
��1�^<�Q:ac��@D���;w�ی%%��6�X�b�^,$,�X�	���n�x�#XA��s3fL�
R/��L(aQ��iX;����ob%��?��G�'zn��
�a!s�1��`���Z���8qb#��?�
�����WP��jo���G�}�>��1K�J-�,U�!�{�:�~��h��#�����fq�#c��[�w,#J?��5���D�ނ�-e���I�v��ϼZ麬P�*�LS�8ؕZ��Цy ؘב��	m�K	^d5/�\3�$6�b�^,��|T�؅R�Z@�I	SL�>][����MD����Ռ�?�s�{��5E�jWq��tê�Ϊ�B��>��/��n-GK�D������I��W��|�]��'�����ƀ�KH�n�:[�SEBDA�a�����{�����$6�l�7�qzZ�o�@J >	�B�����!��2���T$�Ǿd҂�h~��K�v+$^/6(,��o�9l)�6"0��]"��M��Ҽ�뼂�y~�z��b&�L�P�kH�l�<Xq|�&ԡC=�l"�]۩ck��n�lI~�2W}��FU�v��Bg�o��5��\8�i#��1WS$:����3U[��p�?��n���(C3�=�'���V�QP��웋��^�u�L�:��o��d��U%�;C]):3�)j�8Cq�0�������.8.�r��X(�����J�ڮ ܜ�&	b�C�&:<		�3i�$}=֦6�
ʽ��|�¹e{�+)Ԍ�4ϝ�.XЦE)��۵k�f̘�7�O"��ݦ>���I �s�Tֻ�m�V��)����ڂ�4���h��&���/�];���?~�0���t��x}{倜k�����u�
�{�庮��WV8^�Ӎ�q�%��
aP)$�-��2��M��;�#|=�D�!�$��RU�䆍�>���n�a�*�W�d����a�^7�jґ�U/��@���u���|7=�#�
�;1J]:��P�D	JF�h���Lm��7Yv��Z�f�*,�ױ�կ�C=�ZT�]P29�i]��Nǜ,�D�_Js�
3��/:�S�JDŽ	L�ҥ�kC`|�N�!�����Y>cgR�
�Hۙ��[ay��;>N��N�(�3P�3N
>'�=D-���hi���
�@�
�����ZVӹ�W����b��\�%�hc8��+;�)7�@M��mx|XJ��i�\�Y�.�0q�^�����D���X�ɾV�}&y����6/�RP�@i_H����b��B������Ӏ����y!0@C�)[2(��H��/6�,07#��9����_�P�3.ND,�/V�D�8`��[�f�oWc�
�5~"�4�T�ijҾ�{l۶m�Ѣn�Uw��c���j��������Ξ��z��e�V��
�S��?b�#K$��bc]�l)�=��VxI$[�h�+�0�tb���P}�Yk-���ZU�f��A۶m�YV�t��o��f<#K�絈)X%sɋ��O�z0òe�{�MǎI�g���a]o��e˖��"�f	��Gv�ڴi3?���+F�>�Yu�����Qv�x�IEND�B`�images/closecross.png000060400000002227152455614210010702 0ustar00�PNG


IHDR��
gAMA���abKGD�������	pHYs���v|�	vpAg�;*�iIDAT8�͔]S[EƟ�=�$����\�%`�Sۡ�omqZ
�E	^xU��O��p�/}	5
a�R�Ԓ�P��ZI�	9'-�{�Hy�}��}f����<��.v؈��@`` ОOā}�59v��0��M�R��ۅ��&_�,�J����5aW*l�ъ@N�KG����Y4!4��Qks[��r#���ss���{��k�>�;�,,̣Z��w��Gv���bW����3"����2���S���p8��|����]Y�^��o
@�!��*ۚ��Q�
�����lo?9�ZL/��#U(�.������_���a�TW_��\<�2)� 2Aw�i�P$�R�ԩ�k����>��*B]]A��������3�$��9��+<�˩���p__���3op3c� ��~}���~�55N����;���R
G��я�N�X2��D�	�3�Z\L�746D;:;j���kҩ��s+v��V�qε�DRF"CȤ!3�{�H)!��T
�e�X,�s˲!���JH!����#����
����x�ñ@0�Ms��]�陔���D��k��TlZ)%�"�D��i�X]�C�J���{c�`�����d8���~v2��;�����x��W_��2����`�-&g��&�H�3����O|>�T�i��3E�&��F��H%��e3�s^Y�uV.�	���h�B)5��֖�m[#Rp:�յ�s=�󷖗W�(z<V*��H�`xp_�ln�����]uB���t���ΟS�e��H=;Yl�AdC�`b�&,��+��Eu�F����7��*�'l�f�lV��:�ё�#�a(A���ݍbf`����+��ֿ��P�_�%tEXtdate:create2014-12-04T15:03:04+01:00���%tEXtdate:modify2014-12-04T15:03:04+01:00���StEXtpng:bit-depth-written��,�tEXtSoftwarepaint.net 4.0.2���IEND�B`�images/typo.png000060400000003742152455614210007521 0ustar00�PNG


IHDR5,�?�#tEXtSoftwareAdobe ImageReadyq�e<�IDATx��XLSW�}R�€
�!S2D4c�,&B��c1nuq��8c��3D7u�
���0ds.s�.���*�	BAi��n�k�_�%�i��d���9��=�?��?�sA`�X��,�̄���u�:�E�eH�����@� ��-���!s Q9�����IXߊ ��@�"1�����d2��z�Q��Y������kjj��o�=y6��`0t�I�Ç�O�:�[�!�ʱo���F-|�~s:��|�{"!/"bHأG��"�H,�JE..."�Lf���8E������@�`��h_@@��D"q�M�={����p�
j��T-�O�8!����ɺ ����N7{�l�P(���L8��p�����R__o&�ƍ���FKjj*STT��۷xEa�ƍ�a���������ʆٱc�i���8�x��Y�P�^�hѢ��Ǐ���![�ɓ'�����RRR�yyy:�5������2 �'a���3�Q2""",Z�����s�v��;v옌~�	ӽ{���9r133�z�<��.�S��8������O�jXXUUU�x4=%l��B5�����ĉYYY��뙨�(����ډ�-Q�޼yS�xzzZjkkk�����AYuP������(5�Y�5�T�s���	�P���ڰaSRRb���a222�����n7�LQ�M��_�zUk&����������p��xxxH�c�O����N���=�m�'b������b֬Yc}�s����*����b5�,�UVVR�����������6���
���_�A(��D�Q�<��L4��y����Xg0�Z6#�=l��(�-�P���`/^l�p�f��9O��`_�ؾ}��)@�%�֭�Q���4Q�
�+�p���f#��	Y�'O�ln�����M^���h�l��ǛU*�6;;{e�ѻ��R�%''G���7�12׋�����8��h�؆�+
ż��ʈ)�"�vA��.�]�r����N�U��ӧO�["�-"��uQ�V��Rq`Hq5��u����$#��P�����Q�5>>>Z�>c��D�;4������`J�雚��`�/޿���tj(a�sx��aw�Ԍ��:ȧ��s�עdc�����S�}}}�FGGk�9
t��6L�Ĵ��H�6����A�hgY�hǡ�����\��qe�},E��T*�s><��J��������J�(v����|�:�^�2�q�D?��lҤI����;�K%LX�g�4U ��K�.�Xq:�@�mTTT��n
��a��|P������`@_5]�v��)!#��񗀈�C���*���L=J߇�ʙ!d^�1
j�(�QP��FA����C��K������'���[/f����I/f�3���eE��
�1c;�9J#��)m�{z��47�$EO{�v���W�8�[|}bx�V
��I]���í۔�ں�����M�9�M�̊�[n��K\6�o�)�	�y%���sʊ�"20w��[��
��v��:�������K�Q}�?�����ߞ�ύ���
���"2f��YPه��yI����(�6~�ΚI�emvB��ك��e
��W4T	��% T�T�n��͑�t����aQ�G�Ev��5�蹺�B��!D>����iNg��K��lq�6�Z����K������)��>�h��u�~�k��'*}���y�����ض��)a�i���=E,��Pf�p�Y� 9���(�{>����۲���;�f�y��|�IŃ�G���x�Q;$����7�G����ܣ�S���/ �k�G���޵�˃%���K�ᬟp���bIEND�B`�images/checkbox.png000060400000002624152455614210010312 0ustar00�PNG


IHDR��-<tEXtSoftwareAdobe ImageReadyq�e<6IDATx��mL[U��ޖRh�8�����fdȔ�a2q&���,&Dn�-:�����}��H�3�,#L1f�%f�ĩ8#�̉y�bpA*u�����)��@��>x�?yJ﹧�r~�y9���%k�DV%��"�����EP�����
2x�IS�+���?Y����{]8t���C�T6f���|kk�
�7n��^���p~)���w]�-H²d��R�RZZ����%��~�q��|>|�c����*O�ײ��\/)�K].L&S�I���GNN�TÆ�S-p��''!^��V�F�x��_ODQ�RI�%��R�1/!V�'�^�ݕ������zq�%��㸨�za6���IE�5)u�o}!��s���K�t)��*��?��I�/:�YYY�7�����Ϋ���A�y��dɼ��H�P(���N�����j��v��eWax��(�@�z�������%�`3%��J��F=x�X�w��i^�v;e� ꚇ�;˲���k"j�\2S,
�d��/�·#)��RِуF��j,ө1hr�h4#��A�/H�/���`ÿ�O5T���Vm(�s8�q�"��I*<Y*��fQ����������"�g@TH��uE����T!��:SǔoF&"��I`�DP�I�/����)([�Cˀu_��
/��HA���u��<<S���x�U��,r���軳
CJs�aj�m�"�Q;�0�RJ����R�'JKo�RAr~a����J�Z����΁_qyl-��V��-C0�O���`[��!����d	d/��YKȪi^�X
#;7
)��z�J=�rV�k�y��$I/N������Jm�{����w���Q{�3��.��R���W=#�kНd��r�x���X������81�^�g�-��t�)���NpӘ�A5���u��n]���}h8߇}��h�؏q�+2��,[�o/~c�h4����쬘���`�|5+XOZTT�&
�ѿ%MHH@zz�d���[`���^b4�+�$�0/^��K�38�I/Ҡ���1i����T8i�Sd��|G��,j��ƴŊ��]Ռb�`�l$�]��_��n�mAE����8�@�����roFy�j���1�(�d�ɨ�‹b4��r������5W�_���T�|�a*��x~�t)Tpg#�kŔ��|�'������jm�=�@g�e|P������Z�n�T`>�TWWύ��d-����w<��+��/d��>��������h�&^{{��U����/Ԣ0�'e��IEND�B`�images/facebookshare.png000060400000000543152455614210011316 0ustar00�PNG


IHDR��h6tEXtSoftwareAdobe ImageReadyq�e<IDATx�bL�Z{�k›�(Pu��!�o<��.�z������$Hÿ������BNJ =�TD��N��������
p�@T��Ɇ�Xl��N�Z����`�p)ff�������ayo8"d:C�dd�J�P
�1���W�� l����`~���ߟ��5�խ��&��`e�O���G���P���G,�R���m��?\�b0���������d��H��r@��~�i�X��7@����>`t/IEND�B`�images/icons/icon-48-process.png000060400000011241152455614210012467 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<CIDATxڴZ	t��~��K�������%�P��EK��9ZF��U�*#��J:�*C��l�����E6i+(��-�������6���4IQ����{�/�������:DA�J�C��>�4\�V1�l��~��OIIy*??�>MU�S�O�WWw�oس��CKS�|���0��5z��:p1UU��0���YII`�X�}��+_��̀` �����7
���OH�ɓ'CÅ�j��(��t:��,7�VUUBǏ),˟y�^(--��n�=�ꫮMS��m� ��B�c�1 �ȲL��h����\t��lff溕+W>3gN)Z����j�����~��G	˗/�!)9	�p�	���7�̨�<�;gΜ���������#ug�<�w����Y���0�^�u�\���ᰳ������Q���]Շ�R�������5�L��,|�Ǐ?�p:�˖��TFFfy���<q�x��7�gϝ{�ֻ�!D�Q�Zcb�����}��9��PD1l6�U%	,\h)+��؊�M�Q��ҘĐ�1����3�\}�WPPii��瀩����Y�--h'C��瀆��tBNv6 ����]�v=�dɒ�+++mt]D/��V����s�d'���:Y���db�c�(</���Fۂ�`8�J���+����&%H \������P��E�F���9�
:Hh���3���{��m�߯������Wѹ��9��G��D(�����d��܊y���IcVB����U��Y4��i�	�L6�xid�hnQ
9p�����9R1��v;D��
!\�Y4mڿ_��ŷL����a��p�Z�v���r'0A�;�aG�h�j������CV\���w�K� ��d�΋�
a=���h�*9��p:7/�5k���y��G�͉H�~'&&bU�p�)��WO�Mo���F�$╄�x}��0u!�dS!��O��]�,k��k�MMM-}n�{�cH��&r��|yy��G]U�������Q�3g��sU���:\kH�T�?��z�����
�R*Ⱥ��#AV���@��@��#���۶���voB��D��v���wkjN�&''#jX��E�灁9�x��Mf��bXb^!O�ݓ�����l��ekA��F�Ԅ<X�Y^��됗�{GMM͖�*d4a{GǦW_y��_�VXP8���455-
�Q�480_����- �X�:�:������b�7���C_w�����ďE���T�w)�壐 �z���G�Y��f>��c~v0���C�L�A~���켊\h�#N�c��=����BCq,��������s�.�U`�5������܃C�X
a��}�=��M
�ZEI�C�Hs�A��u��|7d$e��`��	q	qp>p��FN|�%3�#F@8�������v�՗_�t���wz��\b�S���CC@߰�>7'牊y骢��C
�;�aєEP}�v�v�-��@v|6h�{�{�T�)�
<,�[��zNQ8����-�?ۿU:���tzҤI�������o/%o��2�v�ȗ4XU�
j]�P�Q[�[�ar@X
?v�C�A��R(�1y6��c���B��!B457�]	���ڢGy��)YY�$�h�Gj�*C�5�,��f.����Jr�r`�
�ae�J��1A�K���Y�fH�J�s,\/Z��ƸVRr+"i�v�%A�fNN��O=��

��碹��r7T�E^���6p�]��g8��+���1Us�)��^���ΝOx<g.���"�[;j
G�����a���GYV��ׅ5��Rg�]dMf!��%�%P�X���oT�����F������tΜ9����΁�ax��%|�P_�*vY�w�\ق ����v�3�Lɿ����Pu}�'(Q��:��4'a��lA�����\�$ 4]Vc��Z�����ݷ����2�����i2������a^^�9\,\ǟ��p��hlh�5�3g͒���v�[���tm�������X��***6 Gi����k�T;z�����OV�u&q:Z�s���Ò$�$��1si��
�h%� ����Q�>X��ӳѭd~E�j��Zx�����pGF�FD*�/X��ǟxb>�����wǎ��=��9|����ɖ]��צ���WT�7�t_�B���2�A�0E�
��c��¯������޽�y��z�r7F:\�aw�����S
�7:w���x���L��5k�<�}/����hnj*:u�f�WF�����{�h�?H��{�}��\s
O� ڱ!׌����xj��ǣ��m�[��Ź�yw��ug��w
�~�d����y�.[��������	57�ԣDym�����8���|�u��

m$�]}}��������Ai3�g�?�p
�ﴱ��_�t�{w�X���wbX<��֚�p�4�{

I2�Ϟ}�f�IB����zWSsSNѽ�O�c��cc�������ݽ���Ѻ�ϟ��;�nE�,�]������h7���d���-�>�A\])�{߽ג�Q��r��o>���Vk�-ѩ��g�~�…K�RS�z�ohx��&�����-r~{]]�i��M��"{I���._��U�fS�N�)�M��I����Q�(����#�`��q7`g�\�饟����HMVt<�bߛi������<�ˁoT�0�LE=���Za��$���t��>���"�pF
��"Y�*�|�f�uUՅ͛7��|�vq��t�`T��5�$�-D����Fo(�cBc���7G��GZ�kL@o��L��|h�8hW���BgGg;N
�_KiL�3��p!�̺y^��,^�8��5D�eg]~x�D'�A��� ��pVq���+��aI�	��D�a;
�ذa�'{�<~��7R>,���lycp:Q�`�;�����|�8�PI�BR��`���R_
t�6Ci�ThR-��n�Zo:0P�w�mk���14���v‡ɘ��&*m�e*B{�d;��c��X[rRb��{��Yl�<7b�H��1�m�Jn�����W,�k��.��.�x�n��o��(��s"<.v&8l�])��"Q�j�jٞ��)ZZ[���w��g���W@�Eӊ��i��=q03�I6	:�
�5vL-L�#a�k��0ŒX��Θfee���h�[�ϝ;wH�x���X��;Yh�{�,�s��y*D�8��ܰ���E!q��1�MDrJ���ٙQV6�?��s�u�����3.X�)�E��<��l3��K
a����+1h_�;4�m�m��7���OOY��:2�0A!X�b��z��)�)@� ~�K:�?�"�mDn�l6�eUGV��H��"��ٹ�pgA<�%��6��ݷo��MMORR��Ç-<�	`��@R�|�m
@��Ң��22��xnb(D1�[R��===D
����"��H�H���b��)1`@F���CM�O���j=���cH����E%�MM磂;�;�;	1]����6"��U�oU���)�8L ڏ!䙒��&7'7���wvu1�@{��CMP��F�d�tz���0)1�DOO/�L	y�	��Q%G���M�]�1=��p��w�tu��������ɓ_Agg���W�W=��|�G�0�1i���[[C'N���o��%�wCAhk���� -�F<�\WF��r�1�D�[S�b�
��V��CGWs�[o�i8p�����m�zʿ;�/_���ҫ�l~k�ǻ�Ϟ5k�3�>�:�j�֖�x����u5Bb��ʰ��n\�4l�%ɆqZ�����_��/`1]��*�O�47�c�3�[��ɼ%+������7D�E-in����	�*��"�@��S�	B8�u:�=�e�k�//������j�完�*���=���cK!�/�f�Q�`�#?-�FqqA^Ks{[W�m���Go\�2V]1�MV�t3DZ����vw$'����C�T=��P�BC�o-��;��^�hX�LA�gF�(0
@iyI��c���)>�&&��B�|<pj,&���u�{<ݹ6[�+>~��7PU%A5%��B!��
�/d����"J�# p��/���9��K!,`C�&��'�|���͚ʵ��;T��L��8��q����b�(x��!M�;�4�Ӑ����]Y��w���MhO�l��aٟ���$�R
4�l4Z�ذ�^F�5��IA�5MPp^��ϣ��pp����C5�6�|AFz=�H��
��:��^�c���6�>q�f��*2Ȩ�Š,�a�O����F����dt%�F��0���E�M�E��
������@��IB��M�5�����/����n �P�!�}A����˲>�����/�	O0��a-@�9Ŀݫ�A5(�� ׃��IΈVAv�%�`@�L�Q�0l@b/Qv�WQ
�a�F#r���U+-7�i�t��t�p�X'0��a��V"y��)z�W�4��W��$�'IEND�B`�images/icons/icon-48-newsletter.png000060400000004563152455614210013216 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<	IDATx��ZKo����ٝ}�\�ć,R�L!��0�X��� ��r0$�XHl�5����Or���!�)Vǎ`I�eP4EơMR|�svfg�S�=��%�䮹"�#����{���ꫯ{ĔR�4_���[�U��+׮];������?b��z���o�lS��J1�%����t�j�꭯���s���8���0;;���W�N{���2Ņ�MϤ�e	,�aH��w��[�w�}�U*��D�� �r��?91���eb�k�	�d,�l*$��qxG�PB2��+W^����baii�e�qNG��]0�7+�ac�V9>10�o�b�������>��>䇧ᕟ���7�|�_YYy���4-J��X}rV��,l㺝q)���v����q;o�PN������͛7�����Q�c8N(�
ۥE�.��Y(D���Dsc%�u5�F�0T0y>
C���att�_���[�n�lll�c��+@FL%У��,�i�f05k�[h���.D+@ʦ���� �E�3�1v�ƍ��J��[[��B�P�ѕ�{��!얿4n�Z��{VfQza�խ�s!�E;X����߾� ��u!����{�Ν;���
3�G+@��8y���5�..#�ԣ m�My��U�4P����qʻRCu&�¶`ll�j�ƿ>����Jމ�Y��]p��;�G�B�� �2$x�����YƬ���Iq6	�D�IC��&�х� ���U���ƥSpR�?�+��5Lp�vE]p��3	3�����z�t��^�X�8��
nm(�B�M
X�� ��(g���P#�	�^��X��!��נ�s�r��e� �T!*�fz�h���J'su��*��Ĕ��2�0�=�H���GEC���MA*��.���z�����#����D�
)c]t���~
��%�
`ih�:v�hbb���CȟjS�pJ�u&0���.#5{���VjЕ$����.���p��bĶmO�k�u*A�	���B���=1%���h3��ԺG�P=����٬��c&�j��^sX�������:��P�V�ǔ�����q�^�@|���������������CnBBԸ�J<
.������+�fh5���6������+���H~�q�/�U\�d��T��B����gp�/W,�<>�YwhhHo�=z�;$�� s���
�Ix��厑�E�5��[��Ok���U�~����-@
7��+)���U�|
�H!-1F0lT@�I��n���i�M*�VA���6��;�!L�#s�G� B��b�Y�#S�@ds]|2T`��\�憣���3H��3��ATB]��#���M
kA���+:A�$S?�.��*B�ߟK�������䃀�X���@��p�G8�mAR����`�쏡�'
�C��:��333mQȲ��f�Ɔ.�G(�(}`0���>j/�
]�a����I���iA&���%	�#�������y�L���b%�q=�!�j�e|(�B�(��!�?�/b��=�C����LMK8w^j���j5)��,~T[��/\����j�g�:ۧw9�l!�	�v �i�)��X��2�
a��1�q
'�1��9�G�H&���9ln0�c��iE;?���V����C	�O���t�@;%����-λ���!t|v�ԹTd�஀g�3��^F-
p�ϳm]�##
��|��C�銵��*�"T���R��^|�X��g~~�����N�&r�z����s}(/���Mӗ�x;�%�-w석I:VV�</��>
��C�B���g�~�Y��Z-�z�,�^X	�ҕ��w�f8	�8"��Zù��x_�=90��P��l�b�����]�,s��}�H$2O*��)�k���V.k�r�ĭEϗ��qpC�BL��:�jnX��2!��d���{ݻ�؏mZ��M����s��EB�>r001��g&]���y�,��*e΁щ���Z�j-�J���%��b)��t�@$*�C�Dt��n�Z�v��*�m]�6Or��alñm�X�'�BI\�-5z����OM��G�U�F_�+I�F��h��T2�:�G� P���Gc���#����QA*��(%ڻ�JfL4g��"���ᮏ�o��:
e1h|���r�6'�$_	��
�ՠ;VB�K��(�5㐄N��<���W�xZ��^��@߾�K�15&��b��O�87��GӬ�^ô�KnCK|:�N���w��	0�<3GԾpIEND�B`�images/icons/icon-32-spamtest.png000060400000002544152455614210012650 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<IDATx��WKoU���#u�H��N�d��H$X�邈,��P�E%$D�.������cA�Ć�JH,��JP�w���Ď�;3�s3wr=�j@�p���s�����8��8�ʡ���������@	ih�������������F�m糝���j���h4Ni��W��*�m�X,�t:=0<<\��3�X ��[�
ת,.����8::/_��ˠxpp�BSSS�B���5/�֚}��&�cvv[[�X��wlnn�Z�
��_��+3XE�6��
���i$�I�I����]��ݯau~��;(n!_����u<{���ᾊ������xrr�h�c������l6ŞG@�K��kO`�����3J#�16v�f���X^^��:,� �i
"�[�F"\,Q*�>���E�RA�^�B"���>HFm����CT�'��F>�	���1:Z���XZZ��ʊ�A94�
��=7*�yH�)��TOm�f��$1{���>�z���~����H��CCC»����eOf�u8f�[>c`YQ�pΆ��cz���ktb;-l��d�[D�.�<���	�r9�Z-��q��C�-�f`V���<adh�N�����1��j�*�*?�u����d2�`ÝNG���3a~W����A"z�����;\)t_̽��G��_��͖��3Z&%�&��2W�� �����
����u����'�@��(
�E8X$�l4Z
QF��}rr"*���922"�9�9L�@@x͓���s����&�$�+�^�x��g>�P$��1[�ߔx�e��``L�R�W���ښ{Wڈ�\K��@�K$#o�ɲ�,���?��be��a�9,��1ɞ_CJ7�҈?D���J��)��!{%۬*���%&�
�	3>gG�$\䙖G2�҉�0�€����e��R�p0�T��e������?	SH�b ��i4jdT�2.˨W7����\�`��f�a�=RC��z.6^G�Y&k�2͞��'���*��)��d�k��3��>{���~��T�$�f��x����d��^�5����	����ӻ�0]���&;?���	��F�t
Z��irm��S^5� g�,
۽�}�%�qIv�s�jn��i\Ný�i��{`�U%��QCb*2 G!�zk(�ԟ���^S~�;
Y($�j�"��#�~�u�g����䆧���Q���:=@���z$`�V���yIV_�K���C�K����AͱҢREIEND�B`�images/icons/icon-32-unschedule.png000060400000004665152455614210013155 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<	WIDATxڜWk�]U��y��ΝGg��0��2Ҥ�b�J��Ј�(�?`$
�?�`x��G1A�i�bK�U���US-�v�-m�3ә�yܹ�����Lg�S
�d�s�>������C���p]w��y�k��P�����;5���jQ&9w��x�=�} ���0������	��PUU,/o�4��������6�����!�����V����/�B����o]%���Z��+N}��\���?9.&�2���N�f�@WW���Z�D"�ջ_\\�ʵv����p8�\[[�	]�H�v��4}n\\�j�{�x����P�5- ?��{���L&I����gjr��L[[o�tI��{Aˠ[�!�p�q$IW��D^��W�^@�%��x<�\F�L�����[ni��j��3��!��^v}3Z\ұ����B��dTT+����&��MLL|߲��+��Z�ö�E�\DS#��m���z	^�sPC=ݛ��A*�mXu��&�F�d*C���S@�,��=J��������B�$�G�Z���mp����g2�TaaSm�,�x&(�%�K�ܾA��@}��Y��׬?~fT��T�r���b4�V�w�؞��bcrh
ʋ:r�oo�
�{��=@ Mo&1_2�$!��8e�caDu6��廅r��hla�\��A+�%�	�w?-��Ĥ}���k��e:!��C��E{P�&�A>+�'p��i�h�.,�H��A�U��o(���e�=����?��蕍jʵ�h����Cb�_G�T�|vwt�h	��rK�i�c��˴TB�л�"/�Q*��������
c�����S2_�<���V/և�l�L
}}�I�+������C����N�ۉp�04������D�~�V.	E��M�Nk��*���<���i(ܭC3j&���{��K/���/qv�6l�[迥�F��/��}P��>�� �V�Z%��ɞ���Q,:L����l�::Й��V����I{�l5��r����E� ��㋲��Va�{�҇1��}�'N�WŎe��/��M7A=�K�#�پZ�	A�JR�HsBH�_
ʺ�yNR^�l߽{�}�RY�^:pw

�t��FG�{��޷�����9�7�{�ݭl���U��V/<��j�_
�1��#U���V3�~����B�⫏>��� ���l���|h��h~�h��ixR���d}z�B`��Eư�-[6_`$�Ư�}{yQ��&J�2F�g��ε8%�f�u���U\k�7�դc�t
�d��~;xC{��Q.G�^ÿf�h�l���#�,�:x(����W�gO���2�*��0=]\S����:�d����م�ފ|wT�]�Ȗr�6K0S�E�ZKB֊;��!�%i�y�j	N�D}z�WRx�M�R)ĺ��0?��B����(��6Y�l�,3��a��P�d��B��H$�P�����,��۞|!��# �-��Q�JRyuF*;̟��^L�b�2=�SK�K�8o�:�.���"5 �5Dn�nxs�h߽��%���&�zv�B��,�f00�1j��b���4�Tr���x���%�{C}흝8����$����,B8̿�+��",:�ML��:R�]�@ql�^v���K<e�>T�
نR9Ks�"�n�|�����E��1�o>��ǯ��trK�o�W�����;+О�.�j�Pt{a��1A&������c���;��Љ�m9ֈ��B�%���f�IV�P�yO���k*����iy���o�͇4��x�<�.
��b��:��Y呑��aI ��
���D�-�?�XK���F�'�*��IH��)�!���W�PpiT���r,���M� zዜ���G;2�����kG�����>
V����6�9GG2*��Tʄ3��2k���^9�?����S?yE8�N���T*w��1O꒑�d!�!-��"O:SI}S8��h��P"�%�|��ݻͺ�S��`[Ԉt�Y�J<;���Ճ��Kя�=���u\OՄ�0w�Z��ˋ�L�jmۭrΒ $�vI���t&ؗ�]�mD	��bDQ�s͢��5�A/�K��\‰�Bn��Vj�b�U��LI)UJ�.U���Pe;�'�`dO����s��d�n3p<W~+�V�f
é,����ϊ��+1Z �Kє����Nl�d�%��2U�t��/��;7m�k�G
�tꔪmzU���FӮq�)R�kNF\Ȗ�P�U�&�8�/`"����R
Q�MG���������Ӫꩊ����fp\ײ%�]�\E8��d��F�?Ii�H�d��IEND�B`�images/icons/icon-32-save.png000060400000003105152455614210011740 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATx��WK�U>���=�d�a��$J0lt����_�q㒅������q�#j\�,DI�*a�����޷��ܪ�����XX�;Uu������Y���<4zɇ1~s���qr���֛Ǐ�f�)e�R��4�#M�Z&SDM�F����s!�$I�T
\'2�ǛOd�ߗK�je��}���q���:3�z��A��r�I���J+����ec����]��F�V�[�^="*����+��
�4�$
���2��<�4mz���yJ���0E��6��>!۱5���� zd�Zlh�FY���]��:t]S��i
�?�/����8�`�l�J��V*G
�l�8�����U3�Z�u��()N���m��nm�'!V�(
)I"2-�� �<��|���]��5i�>H:(����`~�.64(��}@&Aqx,//�F#�y#r��"��aG�6���;���y4�d��.�@����H�]b���"�iBQ��2�܂��<RH
 (�E��^�|����{EDن N���P ��=�'.���Uz�=�fo
�P�t�0�� 
��)6�������a6��<�)��ϸ
�t#DQ�9��Ĝ&�$Qaj0���a���0�T�C$ٚ�(�J�RDh������3k(�.N"�)�9WVf�t Rb��u:7��n)"��Y��Yס�*��Ŋ�%X>���y��N&������:*��6}��d1����Z���PXԲM��!׎�3�ۭV�V�����ͣ��p!�t�#���B�sc~4�h'�/3�<O���֓E
	1�<��v�u:w�9��߇��ƙ/e��I˒��th}}C�
M4���)
��f�(��&#�ˡ][[���M���eh�G�O��3�>�H?��35[-D4�g�Z���/(C��!�m���X�{�.]�~]y[�7���'TZBx��b�[���-�u���9C��|�ۙJ@�C�NuE>�!��C
�����wJ��,3��T�r\<߂v�*�PƹL�r44BվPDԄ��lH��)5݂Y��֋-�'��6����mlJ�f���:`\��}�l��`V0Y�6�V�y���B��d4��^������4L�k�(��Z���&U���V����1�Ɔ�R���.R\��VY#��!�j���p�Y�U����K�q*�<n�ZC�W	��Q盻�o�~��W�+�'Q���i����!�.�s�$���ڊѢ�R��������&��WJ�����ﱣ�ཹ��2�n���?>i//��y`��ÿ�Ԗj�J����mYK�������p[�>R�G�Lu�(��7o\���߳0�2!v1���5H�($�@Xuh��k���0N8&�]Hq^V1_C?�$�t!�u��+(�u����ƣ�[O6��z�?�D"f���w&؜�����xl>.�����?3��@"T�XIEND�B`�images/icons/icon-48-acymailing.png000060400000005542152455614210013135 0ustar00�PNG


IHDR00W��gAMA���a cHRMz&�����u0�`:�p��Q<	pHYs��(J�tEXtSoftwarePaint.NET v3.5.6Ѓ�Z
�IDAThC�il�ilj?C��8�?��h�`�4Ab0�"A�8U�a	�@)kX�	KX3h��!���-���N�~��.t�ݡ-]����s��۲E��7y����<���?�{�I�&�	
Lh`\
L�2��3f��̙3��dΜ9�s�Ν�p������t��V�X��U�V��]�v�
vmܸ�ȦM�>ڶm��۷o۵k�g�w�	

M۷o_��+�:G��+��>�dɒo;v�jdd��۷o����ݻw%%%E���%++Krrr��RPP %%%RZZ*���RYY)UUUR]]-�����������Fijj���fs}�ƍ����{Uǜw��ᰆ����Ay��<y��3����/}}}���kF������#������%�=������)����޹|��_�Q+W����D�q8RVV&F�\s��f�3�k{O-UXXh,`�]�p�B��7�ȑ#᭭��r�=�ݻ'yyy�z�)%��u���,5\�C�@�����w��٬�3�:����Pr����ӦM��� Ա~���h���F�*4�c�bݸ\-P__/�mm��J
�ۜ�7ta��m�Ӫ�RTTd|*:�NQ�W_|-���F�ZeE��.Zf�^�P �*��#���0�W�����8#<
t����2�ŋ�@#�#�_��Fxc~�f�e,ǹ���Չ8��`�:�ǩ�Y��@K���ɖ-[Bw�ܹN�|�̙3�N��ܼy�q�i�����*Κݜu�)�فepl�((����d@id�N�b��)�5�ʲ레��(ќ�'� 41������3�7C�� �uX�{�	@�5a­;�>�y�E8�Ƃ��7s��~(�9�;{�l���O���I&Ԩ��=|v�-�Y�4�� ��x�	������`��Jd"�Z��A&�f���[gϞ�|��>}�[�P\�D�P�&�\����4��0�
��K��6�`�!�2�VH|�=-ȡa�1��ܹ3���ϟ��rk�c�51f���6C�h3n_�qBD�-�g@r�RZ�.�}��.q�����!M�M�z�ľ����z���#|���˵<�昴��L�D30�C�$@Mk�]��l����)E|��f
��I3v�:����T?������N*�2���Q�|bb��ٳ'�b�֭��"�Z�'~���
ʳ\�tP!X�9�>�5���l�
���M�kq�Ƿ�ʕ�P���u+˥#Z���kA�Ȍ���^�{A'��~
:?�.]��`C�o�-��w	qD23�qv�<�^f8�J���)9�w%�]Pf�W9�4Kj�R��TUU:ڽ���R�I�g�A"�S
�@p�*��`�'��ڬ�E����JJ�����A����K�AC�7��8x���,:�e3Fpb?���d�=,��~ɛD�Ĕt���;r9��qS��%9>A����&HqB��T:��Зsnn��Y��I�����t���F�`���m���w��P�����+&^�;� ��D��&��q]�n��N�����ҴL��`��S�\�҆s�u[����:o���=��r���7�;�Ȣ}�ȍ��{����@���3���<7Oz����^Lb8q���[�n��m�Z�΄��x+{�0�M�Γ�M���D�/�)ɹR��.��,���S%;p��߻�����-z��ѣQh D�����סRf~��{(Y��:R��J~�S�2�� h�d�(��C�\3�cu��|`tJ֜lk|��@��襤$INVGs^�
�!4�u46�$&=_n�HBv�4�?��_�$�I�:piz�f�F�@��5�����a��l��D(0��J�-�9۷��g��%_��b�0��d�q,[��{Zww �}]44b������r|����ޑ�F<�	�a��Vo!!!��f͚5Y��R̎3�Q�X�.Bf�5(�F�8�1:9��n�P��lm"�*�Z���s���#8�&9�@������E#K��4�B�	Ϟ��R��w|�@�w�޿��퍳�4���9,��4ә�###�\{;6�8�?'�U�x����l#�T��8|���|��ɿ����h����C�ێ��d��"����Z�;�{w?�z��=���q>h$
�X"�j�&A�qB��K�Mؘ�e���n[�8*��(�=����v���fn�ڷ)���FȞ6#{;��,�"@���w5�V^𕾼�Q�3O+���ϟ����1NS[S+�tt!K%����dKߘ|wW�6�x�^Mc�c"8��5�����k�|I���m�Ǽ{���X@�A��v;��;ꘞ����0��D�;v���Gt���OqL��v"�%ܯ�~A�)6��^���M�'l@g���l��L�8����	$,–�َ��E)K���X�m؃n��/E�&��9���C���?P��0@ww�_y���8/�xg\J�x0��=�&S���gh���~-�i:�p��hJ�OD�����3Ó��l�~ѳ���i �׵q�A�7/��A4N�ԯ:��@#�W��Ȃ{�L�g�������پ����>f�Z��/��v^[lllkLL��9T�f��ՠ2E����j�x`B���倉K,�dIEND�B`�images/icons/icon-32-tag.png000060400000003370152455614210011561 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATx��WYlTe>��fmg�{��N;�V @Z�ER�/(F��1�hbx0�'k��I�O�!����D��CK��N˔��δ�ٗ����NZ����MN�.�����e��˃�����h�F��Ū��Y<�бLF�^�D\A�9������+�?lB�ϭ[�t�㩖4M�����?��B�EQ��g��o�L����Uo-\X#)��p�aӦ�o�\�eY)���j5հ�B��p����(*lذ���sa{d�Y9�Ng�l��L��U
O=D�i�X��~���1@�@*��D�;)%�sY�����{,V)H�֬y�
�Q�6tYQ;B�����0-+-���$��]��
�vW���
�1[����*�r�wm��D0Y,w,b;ol|���,�@Ue=5��X�A�ۦ&����HF	�L&W4�s05�h�^ݸ�d2mc�����E�
�]��Gb�$:0Pt488��022Ng)�\��_�f�s���3��%FI�h8�;�v��fH&3��f�/v��U���a�҅�uuU�X��K�Њ_�0�E���� O� `X&�u
���*��p�ܼt��V���d��dѦ�[�B�(q@#]�=�0��\p��p��y0�Mz�Xj��8`ժ��F݃�����+m�D�
N���s���l��;�B{����]Ǫi�u����k�<W+kd� �v�m�$	��K�{}>��r�󛟅cǾC
�5�����ꃀ����0k
(ȟ\�fP�|Ggߧ�H�\ݤSp��)l^3T�X�l�bŢVԅ'��$��@Z+.���*`����m}}����/������9*��T(�h��][��{�����љ�"��%�b|<w8�e�f8q�$��i�
˸��$+�TP`~}.Tp�]��dd�UA��tt�J$�l�`���� �"���Ph�b��ߏ�k�%���{}��l�f�`x8p`hh�+>--Oc�vC08��n�!E�e55������͚��A"�B<��A�t�s��.z��巧ÑiQ����F��PZj���B�ʲ�K��kQ��0}��u��6���1�O_�	�S�)��x�t�j>�J��{����%�E��M_�
kN����B44�w{��L�gnV^���o��Zs��?���K�-x��re� V��ǹ6�ʢsU/��
u�4������pd���	%2kF��cB�h ��������8����;�M3]1�3SMׁ��L3��q�a��$ݧ��~�Bf��t�5�p���k��Xh47/F�q�v����4�W�(�Mh�u1������ч�d��$�"&��O������X*R����Hw$���#��*�q
b1�IS���f0���Y����ux�#�cZ"�o{y�e%kb==�Е��g�Q�p*�#q�J�rQ��%K�`��%�<Wh)*�f�%J�.I��	�`ĵ"��S�d���X��P�KQ��g�1�t:���c�h"�M�T�<�n�T�	9�ɨ�0���Pel`9�9'��Xy`�vG��(�y}T��)��,k����Qv.c�\)@��,k����B��+l"�RH���JX�Z�F��5:SE.Y}`�AՋ�����v49��eIEND�B`�images/icons/icon-48-acyexport.png000060400000007117152455614210013036 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<
�IDATx��Z[l�y�ϙ��޸䊤$^d��JT�V�M��Fa H��v�"~�Cї��O}�k������ik�1P�N�((LɊ$S�hZo�����v�gfV˫(�mt8��3g��|����83�
�?�8:f��;y���II�0MGL#���I�&ez4,�S5Z�HI"!pm2�8&��>Bж�^g�6�X?���Y,�����;:��刊�Q�E�E,�I���{�`��?�Q�Z-n�ۼD��/)ǡ��0-X�
ˎ��n�{_ڹyC����H,�Du���������/H���ߏ�
���ҹY�ҬH�N�aLQx�2F]i^�E�@��aZ�*|'Vʇˈ�5Xj���2Q-Å�|:���� �ea�<#���¿���0��:y,�����ye��I���
�yg�l��Y*~�h��=~�s���}),�mD��y�u�XCp,`��H�F�c����_���\.7�)Ha�F�S�焴ma:l8ޏ���=��z/�������8�o��4����w�z�j[5z�6���1zb�$]��0Ү�O'��sh��"��0��n������7-�z$�HedAH�'������F�IӞ�$�{g��Įm�=��S/�r���,0��&��S4��A���ھ��zlb�D5G���S�Հ������h6t����B��k׮� �k?Õah�`J�0�b^�G�U�w�X�R9ǘ��/=�R�TJ=[� ��%�4w���m�uCA뭀���G��c}IR$G���a��Y'^��矯�j��ܺu�_�À���Ej��Q1'��J�'�20��{ADS�C�?y�*C
���j�~v�][j"FLX��B�M�����w�g�Lؗ_~���>��O[��te�=�0�i����fv�c�@v!S\��?v�����!���R�~��2-�����a�������2xP��:��3ϼ��G�@�۠ى<�rŪ�4��^�6�uj�o8�q���N_<S��熨�
q�/?ܠ�b��c��K���
&����z��#
��_�x���W��Ceb�`��p���B;R�y����Vms�������a�/������"x���4Rv鏞���mB�` !�����&�;99I�W�қo���e%q��;w�VWW���l~ ��%�95F�'�����XK�(���t����5K���2���;���{�պ1���{tbģ.��J�4
-s\	~��/�ҥKڢ,�9�b�e�ǯ��sx�/�
j�G��yz��9*�|�)��>����X��/�Gz�!g
��w)�{D�>��Ǡؿ��u6�ҙ���rvvV�=+��e˳����څxr<��<�O�{83s�&�&YP�x�`!���q����̚_����M��Y��O?����S�t�l����Ny-U�H�g��0&5g��]�P�e��u�z02w�S ���{���J��E9Z��<Y��#�$��b;�7��ǖ�3�9Q����aC��;���v���׸��aOP�Jڅ��:8ywդ5�.�&9��t=�Me�D�&��,}�D�@*S���q}�f��sL>��\�-Qľʹ�;�4\��G��GW�V�ArH�R�T��g�ơ����h��te%��8H!dFm$��ؔ��3�ͺ���L�#y�v�@�q�}?V�.39�2r�=j�ʜ=11�;�Ӈ�k|�!�y�Ub�(%E�K�ۍ�yw���g(�:`��V����qw$��������
�����)��F���?�o#�����q/�?��)@a��{���R�������.��4���*S&�B�̫�l�C���߽KU�4Q�^���Yӓą��Y����=-���C���Km��N4��ْ�O׻4dETv�f��###	q�83V��}��_�D��2��fV�����v�fG=����8=���2�)�����n6)�ϩ�3��4O% ���xx����&}u�����Q_>�B?����XY��@��<� ��G*�w[B�g�r�wo�X�S.�D`w��g�GJ�,<z�}����a=�O�F��␋ALe:'1�T�,Y�82k���&}�b�O:8��nާNd�BCCCz�7j�&�nhj���ʄ����D_`zl*�7�C8B���5Y���!]r���:J���ؠ8��*�J�V���{p�Dy%��;2)�g}B)�PёZ�J�]��Q�Nj�T�T��:r�d6�o3���.m�>`�-�<ψINt̳h����p�M��;�<��
��h-7}���s��B�<�>~�e�O6;dA�E�L�.,�Z�r�.��J��+�v�
��K�`��M6��q�z�#/%�
b������N�7���e�`j��\'�A0�N���H�D�A��?��-�/
��|�FНf_��Z-Zɪ�R���-�p���Pi�Zu
�-r#�8=�CI�4W���TI3V#� la����7�%�Q�֓{ם�!C�ޢ<\f(��T(UQ�:��㰈%���@ZD��>����Z��@
�/��{5Xۼc�@���FKЉ�U
.u�-���yS����ۑSSST(��}>J��mk���Ǐ΅?�����X���Q=w�UT�Vm�fO���Kc�c]�-y�'��:{A2��a ���x�������O'[*q��CY�;^���lE��\��\�=Ъ;ߛ�|��-�%
������'��7M��>u&�����s�u�֮R���J��%]��M���Y]��p�އ��;�ч^,��[6h�A43�P%�ӥ�����.d���ud2�۶v��ji�Hk������B���N���E���h��/~����N}�J�,�����Q�怽�Q�n0�檅Xh�DL�=�@�V۷#{a��+�u�� ��#�~3P�t�ݺQ�Q�����BZ�q͢F]��)�)Bg��;2�c�u�b��H��T7�R�c�{��>(�;��]%؄YG�߮�gr��0��'{�ۑ��+%���;�۰mi[�tm��p^ĹQV������?�����M�a"��Zu����n��V��=���4ԅ������j�h�K���ɲ݋7n܄�}�����
�pޞ���G43[|�0��N;jn5�{�f���
�:�p͔Rd�͟��b��׋�F[�U�ۻ�W^y}�0���x���.��c\�e�ȶgu1��I�3uJ�����yy(ݓNΓ�Ɋg�r��s��
�n�����[��Vc�	�M?�;�f�a�rɴd.�C��,�pMC‹b�0�c�[�Sp�"��ו�
��
:��YE?�&,���1
�H�Zh!X��>���(�A��0�
?�@�C?�A����
ƀ�At~/ns{��@*!
����b������c�����%
��]�����y	��OA��rĂ3"кJ����H���۫q&z��TYN��$~�}A�IEND�B`�images/icons/icon-16-add.png000060400000001152152455614210011534 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<IDATx�tS=oA���3Q�DHVd
)t4t��P��������KE�o@�E����B@"�b+raپ��a��/�Yi�1����3�\���B�^7��5.�a��;��	Ve�
��~w~��UR@X�K�����_�L�����@.����&Y{�v��>DE���7K��/�	����~n7󚃶|������2��<tj�e1�	�=Pp��\��-�r�]E�О�b��������]�,
s�wB�y����_���7���zy!@t�T�`�&-J�`c%K�u�b"x���-!dsȭ�
��YZV5-TP�Z�1Y�`�cOf���r<)?�>�0�-�KPkA���E���$}M���	
����gZ�_e���8��'p:è{�������d���p�,�4`�M���Y	�����O �J�ޏdvV��sި��/�ۑ�ݩ�y �����`d�1ְ�.�n@��2�8�f;�����aɴ5�ķ~��'�%R�ۆ�:gIEND�B`�images/icons/icon-32-replacetag.png000060400000003433152455614210013115 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATx��WilTU>o���t:]g�-�B[(]BK����1�`��5	�-�
1��`b"� �Q~@�$���,��t��ҙN��a�7o��;-;�J��I���w�9�w�c!�4Oy�w���n�0@��ii)+��3�|��anb�c���ݟ?u�� ����ؓ���
E������m��I�e�l
8��.))�6~A�(
F��K+k�,����7(�'
�b������n�(�����P\�o]�����qM�A�5C�e��������B�z��`�\����[����d�]�Q����$I�o?�_m���] �&�AYYaRq�o��1V��b�5�����Q�K���P6���xt�Z���Y�#���4!/�|��{���$0�<X���s@Ya �E�J��y�EzM�1�@Q�f�	���Y1�6h�
�~�����'��6��tn�O/��I�bn$�����ƛ8��T�h�G<��V8s������(�ʲ��ڠE9Y�ͽn�*I`�q:{6i�!��CT���	��m�H��jMD@�>lEq��P�>iC�Y�)y���JL��S��,��7�6����غu'=z��g�*+����9��)I)n�����v
fge�"V����^HII����x��
+��>��5]��J0����il����b���}}�jիPW�dgg‘#�9A��K߶X�/�#�	m�n8�N����P�TU"���N_za��e�33Ȁ8v�$��8̙3ZZڡ��H@��s�|��x&�T��"0�v�j�2�HO�k��s��J����
����f̈́�A�5.R��sr20����G��!����a���?t��JNN&Jr	�����L&(��L1������+�Š���G"����ȹs��(׾�U1

�p��˨�<��v{*SZ2g�ʡi�Ez�My$c�+��X����v�g*�����c؋���a��`��`:�͟5/;���<�{�I���:w@��Ў�p��#Y�i		f8v�$��\���7�A%Ù��W��⻓i�w��24�!Y�U���CC�×ھ���]�
�����?PE
,X�"
���ߡiF!�q�Βw�PQo#�9ںc��:�{�Ƕ��t�eeڞ��*]��ൕ���\�\��(�����0�;�6������u�$l�a�i��3X�z�
j���ڤd���"1S`��������x-�ZT��r �\�m{F��o
hn�2V�4l�>hm���)��8r���ko0�_l�`�%a�8�hqm�p��b�w`T���p�5p� �'p�}��B:�z?�u��̙vLؼ�����pZ�=��'��-�l|�c}шP\.�S�_�Ҷ%�uC�788Ȗ�֫�B!y1��N��/�&��[t�$�s%�C<M�	47x����=5K��oD���o��s��m|��n��`w0�at`Jt�����ݑ!ZM����r����#�yM%Z���uy�=C�Xw��p8,�MN�*���CU�3��w��C�
i:1�|=!A��1�D"a%��E�P�P�ǰ��_n{�1f4���D��j��F�pT��1a� c���F��l��!R=bX���CS�����%xROt��풁�$�{ƃ>�`���MC<0�IEND�B`�images/icons/icon-14-acyabtesting.png000060400000002135152455614210013461 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:C7B18FA72F8D11E4B3BFB1AAC588938B" xmpMM:DocumentID="xmp.did:C7B18FA82F8D11E4B3BFB1AAC588938B"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:C7B18FA52F8D11E4B3BFB1AAC588938B" stRef:documentID="xmp.did:C7B18FA62F8D11E4B3BFB1AAC588938B"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�F��IDATx�b���?2`eD�~�z���@���7h#��
�1��
���b3�qY���b?~b��+���Pl���7;+#;�w/������g�b`cae���f@���7�>��"�������
Ƃ8����o>I�C{�;�-����lª���1|}��'C��Ғ�85=}~���#��b`��&ld>@�u�j�\ HIEND�B`�images/icons/icon-48-stats.png000060400000010223152455614210012146 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<5IDATx��Ykl�u>��k��].I��HI�\ٱk Q�(�&�#)�Z�A4@'
��N
ԍ�y45��n�-�6�
��c�E��v?#+��ؒm��HJ�����y�{��;3$%R�l-t��wgg�s�w�sνL)E?�/N?�7�e�'�޹��"=�a��ܜ/��)���s-���x�QJy_�U�M��܉Q_��4��)�g�A[ʄpN���=
�*9vy[��K
x;^x�4��B�;�� �ǥP�p%SK5zm�e;dY�lۛgL|C)����p���=�V#@�G�IIMyG��Q�Ûj����a7�-���X�:0Ʀ�&���&"<����"�n!�Ƒ�PKKO�/
h���a�~���m�F%8�]g��[��$	Ͻ�x�T�%�C��0E�'!���Hg�qI��0��b��c�u�%I�~)�݈�d��*,�b��`�|��G��0�0L(��1b3e6P�K���\�<�5Fy�%�����\����7xȽ�� 6� M���9E��]F"�n���~��"�9�����#��왳��tG�9z��վ�b����s½U\!���0��)xy5����R��w�umZ[]���_�3��(q9�J�J�	?9��D�n(Z�/X{ޯ𴷤B���o��'D��OAS�+��d����`pۀ4;;Osgh��0�ᐄ�v��5������z�D�l^��9�����E"����0��k'i��j@9���;�\.��v>'J�qd�m[�.�	�?w���ɇ#bx$��79��M혶(%��-!�ܢ�S��]8Qqo�
屓��dT
����ڣ#���{}����CB:=;��=��f<����)�9���w���/�Ɖ0�����p$?�h��dW ����7�v�.�q?�tm9��y�p�|25�V�7���e���4�O�^�p�R)��H�vN� ϵ�[���]���k�$�;\���M�K� $x^J��݊hO�!:��m���.Կ��yysB_�B�a����cZ"u�rxB_�}Zi�P�T"��h���v;T��P�V��=��Ѩ�׆�Q���x�O���M��{r�!:�4xfT]'2t
'�*����@%�F�S�ݿ�sa+�Ԇ�'��\&c�ڤ-A�r�T��ު9�}�F����S;�x.h�|kx�eE�)�Ʀ:d�����g��;�"�:˶tA��004t02J�����>Ƭ�W����Q$>G�/���
�1EPf��d�����(�c#����7a��9�>�`�0�R�ln3.a��R%$�@��&��1�72*nc@v��;���@
��򸹡2��D��� zh��9p}|j�꓋��ĢŹ�=�}�\��m�UwS�m
���$�Q9ƶK�,�"�0�=�
h��.F�����RG���"H���2��$�ξ��^�ų�*U9�4\�UD'�L�fu�*���$y�xWm����\�.��b+u6
Sֿ�ZM
P������9�u*�HY0l>��S�%��vie1��ɒ���>�Ȩk��XE���&X60�6\K�3J�[
�z�w�unn����M��[�	j�GJ!y#K�jӢ}�
}E�s�2�å�&
r���)BR�\h�L�F�u��
�N7�����Y���2jo$�i�jW�2�l��M����p��[(7��v�*���VfT�)**�mj-D�p*$���9]�Z�V-R���E�x^G��ؕ����[
{3@��tjb�G�{����B~�o����O�P�֦AIJN5���;�1��9��詬Pm�E��ig=���ݤ�$�5�525�mg�y{]WO�b�t\��C�Ad�Ҩ�Z��)3��&��ȴi��2��X�F�	�(+_!0�1,�ϗ(d͇9��^�J�KU�=�Dj�,o�\ӈ���a
��j�F����X�T�J-hkmj�A.)Jk��2��˘��
Z��g�&����9�n��7�eϵ��k�@y��F�o���J�5O��I��.���+-�p�L�XF
���.-R�)��bE[����`��ȗ܉?S*9)d��c�ګ�\I��8�b�>�9�)�YR�ݧ!.�Yr��Ӡ���Ċg�}}v������
�܀W�]'��s.�*�e�e�Ԧ�;���;�mך�;�m�a@{����m��*�]�yK�F9T�sT�>F�Zv}�u�P(R��DB�g�d�l�$͹�tn<����Y�ќ�5x]$����!q?J�꫌�Zu6$����~��
~i�oS՚�z�1Z[�@Q˧a@C�;����'�R<����x��0+kP�0\gہ'����؊J^�Y�j���jv�U�\>3	N�c�*c�9I;��P����H�@t�qϧ�lt�N��Ne3-���f<1\���V:�GO�Ԟ��{�W%�����!��_�(����ޣ䟟�t��'�Y������4�S��M�4J�׀-˅�*��y�b��&a��7^�8~�o��Q��p�Mh-/m����/^����6��~DV�F�q�b��K�}
�]b��NM��@����օ4m\�u�u�{��6+=x����Ν�?�������~y�M�-��y�S{��1�8(�k$}h5�__iE�R��D�7�^;y���}�!H\�m���2�Xp�y��^�r�{��
2���7��j�^x�=�����_1i�n�:И���O<�@��k����F?V�rP$�����ě��-�aG10�)U�.���<�/\{]��qOcl|�f��D1i�RA�`X�܏�����{�=a
���Q*�[)d�+J�-/}~Z�/\^!�]����fwBq��Q�	V%�¨:1&*#�g��϶~MIY5��X6)r�Һ=ў׫��̺��g�?��6��҆�q�܊�~j�������3��bZ.{�!�I\p���'��c�|O�.S��,Dg�����D�����b�U���Y�J
�*�#�-�q�h`"�֕T*�)�n	P�ճ����8���zո�"ݜ-_���K�����Nt��l��Ab(d��7؈\7��w��Qf��-#Qa%�@���*'��m&����*�h�އ�w�j��B
�`R-З�oȵ�^��x�4�q����z7;�|16ɸ֎蕗�t�ǫ��3��0�7`�
O#���sM[�4ʽ��ع7q�'�mʽ2�V�?�]ҡ���L1��Ipqr�x��_�ۀ�O����/�V}/S�t��`u8==u����~b�t�GwM'�������I�R
�uъ$��u�w#���~��#_g��G����9(��˿2z�^��Cy(Sm��d�"���Ӊ����O���t����A_�]���~y��%�ЪR����b�T�f��.)�r�%�3I��Ak�o�*���`�����b7a�{-:�y�O��_ ��X��kά���ʬƨgz���e3��2�f�����u�COd�����o��U" ����Q��9>�5�p��
#�=��x}o�أ�g�ct�����C�й:�t��n��-����WF����DU�	�}�O�PqBяB��$=�Y��VG��og��R,����o�nyK�#
B���P�ƛtbmb!q+7|���66[X�6�z�l��r����������2=��H
�P���d��-t;�b�_Im���%�:�1����M����/L��^aQ	��)�!�������X�($7���\�Ǵ8p�6� �mf�O�T�2��}�σ�3�E��Y���Rn��q�_­!��Z�ѻn��k�-����u{�ة�x�����^v]V����(fk��)z�5,���骥���h
�<J0'�@%�>�cĈ�Cj,d�v��߿��z�ы���ON!�O���'m�c���,7���{�s��2\�'p��Y*[B�1&W�!�o�İ��c�r����.��M[(װG��R'h�^m�}�ʱ"g�t�i#c9O����ȅ4}4��2K6R�W�kR9*=���A)Et�']a���G��WA��(�IEND�B`�images/icons/icon-16-stats.png000060400000002650152455614210012146 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:B1F4264C68D911E5BCEBA19EB90A187F" xmpMM:DocumentID="xmp.did:B1F4264D68D911E5BCEBA19EB90A187F"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:B1F4264A68D911E5BCEBA19EB90A187F" stRef:documentID="xmp.did:B1F4264B68D911E5BCEBA19EB90A187F"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>C-�zIDATx�b���?%���W�n ā@��ׁ������Y-#�R���}��{���$��y߿x���ӷ�|P�C@\4�8L=��Y�o%<�����Dg��	�f������n��0�r����/�ˉs�K�7�R�
O����Aޛ
4D��;O>����ûO?-����C�9����)/��h'����A�MD6 ��ͷ�l�W6�_E���ǯ?�\�Av��"u&����ɋ��ʅ!ǂ��߿�����[���` �	��z�@�g@,+%�e��ŗ7��m����c���/�H��~���?"{᭱�(~-���s�bd���|Ӹ��3��ـAvrr@A�X�'��N]�H���	I���a��z ���`n �N5m��W|Q��	�Zh�=%ڂR��O�/�,���?>����G����<��,�ڢف����=���,���G���&$^a>v6
�oF�B��]�7/��B3�k��x3��w�)�����~���%IEND�B`�images/icons/icon-16-acynew.png000060400000002001152455614210012264 0ustar00�PNG


IHDRh��tEXtSoftwareAdobe ImageReadyq�e<�IDATx�b`��շ�A4�  8�O8��ҳ��̉������W�e]��g	�Vm���33ç�Q��X��� &#C\�~��&_�f���� W��?0Ԝ��Q͎���o��?^3\{��@1¬5���ބCN�O��e��X4o��T�����1���a;��a`)8q��aN�'�s��gpВa���3�w�w����������6Ù�Lʢ|����dex�hy ��Gƶ��շ��s�H0$L��u���ս��w��<f�y�ǁ�r��g�b���ΐ%��p��/#��/kCLw����w�~fx����TV�!(���I����k�,@���ΰk����(�ƶD]�ss/3<������?2hv=f`��VP��á�m`f����%�~Q1��?3�0�c8q�Ç��yj2?q�oF�Y�$�8�1�g�aؑ��`� ��K��i"
���Q�Tg�@�&Tj4$��j1m�)I��4Q���]�I�6W,��)	V65�%�n�m)uJ[f:��T�$���7�����yy��/>�����WE��!�;���j��y��ׯb�J�S����H.�?.�Q<Ґ/�Pj
�h���L2�!iL��6��~}��*��P,�b,fû�wLKdz��
گ��[ܺ�O�����o&-?���ݸ���+v���[��/H�8��sp�g��~�Dž�!���|��
��N�Ʃ����m�kW@{�RA�D���U��M�G�e.u]g؝	������ѹ�`���3i|N�d�e�'K��lY���h��a��
�D�"�"��R>As��dcs��e�G�
Q|q5SJ�8��`x
�A����S�����N���t��%�]),~�0IEND�B`�images/icons/icon-14-color-spamtest.png000060400000001234152455614210013757 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<>IDATx�b���?Ccc#�w��3��&0��(���������+J�����3��8r�����<إ�Xyy؅��1022�|���Oʓ������Qu�G�z�F1�Ü����6�y�|*ʟ@�Ov�������g�ի�@!=�8#ȩK���y��H��1XL�;/:��Ƽ��ܲ�����@꾿x����Ä����m�Ԭ:�A-1�P�#HL��O�QB�0P�����A#=��BK���APz!ԥ*�<<B�z)�����;�%!���[�?K9;%�ps��5@X#���������h��$/���Ik�g~5U[����]���QT�ן�_�~��Dפ��tQu�,�?_�0
����,,����04AB]l������@���S����㇛�|��7440�g��_*.����C�� �ƃ�5�����ұ�\�ƍf��W�)�jx�BA�?XSr���Z�xƕ��I�n�d�N���o�3sr��Pg���e���T�S��()�a���[�m���a(T�8�jJ��M�bIEND�B`�images/icons/icon-16-refuse.png000060400000002046152455614210012300 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�,Skh[e�.�K�&=�nڲvuN,�[��*�"��`�o ���C����G�tEu���J�.�mmZ/!�Ү]Ҥɚ�$9�999�t{�����>���}?؅i�r����
k����1MJ�#�A��t���=K�es�,w��.� L�|xel�w�W
Y����+��T��Y��Ӡ��F�pt��Y��U�v	0�����޽r�w`�ž<�Ok�[%� �hl��J��W������}ϼhV4Q����M|v��52�	��+�#UVʕ�Z�e�,m���|׉�B��;�7��7��`N�v��?��Ӹ�p8�������
;�ޭd�|�:� ���r;k�����,�-g^�o
���Y�9n��R��1/��qI3?z�L����qE�p����h
3�	tgC�֗�K�P�?(~la���;���I�wKB��uJ�?y��fS�����		SM3��%���t�7�$6�)Os	r���tE�9oςx�f��~���u�S.��@࿍ſ�~�qC�Z�e"ҳ,DZ����(�7��R�!\��Ӄ�XH�[�/F��m�w�h�$kD�v�cF6)�eg	A��6����:�M��N/Ħ�ybt��f���4�*$k)�+��Ɩ[j<X���٬�6������J��g���7�x����m^^y�m$�y|��R`��
��p0��$Y�u���ְ�mm�L�s��ᤵNc'�ny!�^pv����:1:=��xL@���{�Z��rԚ��3rqZ�����;ā�q�U7C�zxz.��dOf��]O'����߲fM�X��>6�����a"�&���9o���j-ܸv��e���?s�Ss��T�@M=;��~��L"���
��r	�
�����ț��e��H��D
�҃#��ꫥXd�"K��mw���wj�z�Y��{5>:��K��#��IEND�B`�images/icons/icon-32-delete.png000060400000003530152455614210012246 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATxڔWKoW�c��vbB�&�@B
IhR��@lذc�ؔUJ���*�,(BU�l�B"���,H��By��A⼟��؉�}�>�6I�t5���s���{��Bj'c`` smm���Q��_�kQ ����tcZ�a�l6�?.��HMM��x<�q�)**Z�g���ׯ'N�8i�f�����en�PhSqmx�'�H������)533�v��5r��?������_��իWk���o�޽�dGG�:s�:|��ZYYVKK�f�kg�a�xs�n��g�`@=~�xs~~��zgvvv�~ojj�qxx�G?�x�+++�;v����̓���-�
�r��ÜJJ2�e��4M�!=�J9��ZX��ޡ����鼼����R��`��oLsrr����xΝ;�hK�㕗/_�

�srrJ���D��n(�+�'W��)ṱ���y�ҥ������F���y3x�V���v����_�p�,�%.�>�纺�^���C6�]�\N�dmm]��!j�[`$	�80���ՁWL��N7��kl����E�\�x�,a
\.�8(
����� �|μ&%%Ad!� ��VOJJ�AZ\�gϞ�ã������w��@�ggg����ꡁ�}��9���-��W�.��L@�|�A(���ӯ\�r��������O���nu��]WYYYթS�R��LD��/ة�(
UJU�TWVV>>G�4s���j���.��&��M(�G�=?p�����t{OO�#�lm��p�w�#�#^�
����%���H6ī����sڅ��(�k׮��#YYY��ϟ����� ���N8���I��pP:L	Y ��7�AU)�_����$�\O��;w|�/_NKK�:tH�MC��F1i����t�LA�D��������}3�z�wzz�����T��p'4�8�=r,�/((PǏW{��A�Z`Utl^���"FO'|�I ���w�\�3//���:����`o�O�*`=�z���vN���Zጐ����󊾡 Z�����0��tm��i�I%
1*:�5����~�� e[�Q�G L!v������N1�B��M:�@��b
�lr��=}�ts[�oߞG�� љ���e�Ҙb�F�u�G�;�=�6��..�y�
Hڮ8�=W���za)r������`~�y�p��E4B!�^�����Y��A����w�(�L��ّ3�*�=B�h@��VF��)I�2j����]�?����0`�Y��!����t��x�h��Ѱ��T���
pttt�ɓ'��R@Ǚ\��%��3���D�¨ǂ�
`
΅�bu&��[����p=:�(S ���H1H;�c��B��`ߐ�h�"��D[���Kt�����a�����D���8ei@�C��h�Θ[iL�|$�@���d`���B��}ڍ��-0�_[[������`������X�dkk�744���)lsbbb�޽{��޽{*:
r�CHt�2m�ߍ�������ƐW~Õc�F�������8-hhh�PII�ǖ��^*ED�����͛7[�={��" |X؆[~u�B �9D�>4�oii9����y��@yԢ3>x/,,Կ�
�<x�kss�
��85���Tz�O�T�Q�O��+**���B�x���B,,�����ފ��p8��~c���`�ϭ�L��s@66,'��܇�[^�^ډ��ݚ�Ra��IEND�B`�images/icons/icon-48-acyabtesting.png000060400000014156152455614210013476 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:C6E838192F7C11E4BE4ABB9A615B0DC3" xmpMM:DocumentID="xmp.did:C6E8381A2F7C11E4BE4ABB9A615B0DC3"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:C6E838172F7C11E4BE4ABB9A615B0DC3" stRef:documentID="xmp.did:C6E838182F7C11E4BE4ABB9A615B0DC3"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>x�X��IDATxڬZi��y=���o�}�,�
��@",�[��NbW�eS���?�+�)l';��.JN%N�+v9��?�`��@�X	�%$�Fh���hַ�{�wνo�H�$�N�t�=�����S�$��e��_}V�8�eY�e�󚓞�O�^�FQ5
�rE�l.[����r�z~�{��{!GG��;���a��U4�.\ד�.��ؾ��o>��^~�I(�&;�o���_o6��p�&|�+Q�9*;���,��RVU��I���*j�s�®´�d^��7��y�:�t
�iҒ&ҩ4MǙ3g䍊�B�u�0x�n�R�V(ti�L6��ߨ���)�#_B���j);�hZ��Q�#�B��S9$|a���6#��T.�ݦ�yn�k6|�/�^u����4��2
�I>-��-)EQ2��ں��L+��u���zM���
s8e���v�{`p�W�#�0��w���AL��U(<g�l�̬
�##����5ð5��#��+��CH�b�
T6�۬���gv����E��o+#_l��Ǻ�:��i;g��=v:�ʴ�Aôz�ݼ5ggrf:͗�ih�Ňu0�i�������Ds�$^��P�,A��.U�4Q�Y*��I%�T„�6�sif��lhTX�,����^�bt�M�������~Ks-+P���˭w�kg�a�!��QL�G�<L6�����W��G<�Q��4\�AА�:���<��d�D]�n�k�Qq�	�Ԕ�����U���@MiP,
1��S���s���<rdqaq��0_Bq�iwٙ�Q���_��\���H��C�.��TȐ)��k:2r"�s�0:}�$�%N�C���oQ���H5��9���4�7+w�Q���?q�s���\V�V��c?������u�9C�ԥ���
���<�/6��/n2��}�6���&JgKЖФ=W�-���J�/�Q�wT��l�z���]s���j�[�=�T� s��@��H���y]h��^�q�Ph�GDk���iз�:|૟������7�r^�C��sD�����JW$J�S��?bBdž�w�;<?7���wQoY/<�4j^�@�Y��-sK�/Ђ�L
��*L]��}Gz)��~�V�Vѹn+v\�mE�+s*�p�5^�Ac�9U��Q��|A�
RI�He�$�̩I��>��7�	��96v����T��\�Wk�B.�{�����p���"$�KG�ȑˤ��MVJ�
Sg���љ_���o�V��R���Lp�fM3Xct�E�B���Ck�|v{�@�W �� j:T�K!�|n��<	Qha�m�:�ƫ�KI���شi=�����(Z,^:���<f������G�S-�	�YL%�ה��Xw��f�!T
�4ߥ�y��Kt���&�,������#�q>&1���^{�o��?LH�;=�#PT�A�Q���R�����M'B�EETj�{V�X�D��ݝ����G��u'iY]]Y6��C_�WiA���s�{�03iܶ~����"+@J�p�;?�K�0�Z䄨���_�
~����SR�����Pz.���s���XS�a��
�<ҙ,��2m-�����ifV�L�X"�V^��C=��͟χ����駏�Oފ��7‹UD�"�e|�H�e�U����"�cg�o��T��h�rh����R
�eti���zc�e&� ��F�I(< � H3U`��<6dl�q�J�>�ϟ���؛8��(νp��:@�ف"
9�K
_��"�C a8z����ٖ,�,�~P��Zf�|��p�4b��Y���9l�0�R�*�1ʜ`�f���J��v�%TЫ.��W-X��(��P�9�����|����N@Iu��N5��V!s��	4�{����D��1���~�+��3UL�1<2,_(�'
i5&���JY��
�ip>��f��RF-�㥿�r#]�D�����ۮ�0��e`w���ݎc?:��Nc��,dd^�:��k0ut���|����*U�QEO�:ttqrƽ�AANLfa�q�����S����Y|b��CM�,h����y*�*p��Ilb�-9!��":6�b��Β�X��̶O?���u+k�C�
g�,ñ�k��֔�<Yt�
�"�K��E|����ç�ϱ��o�š�U�›xu�����U���롢��y�T�̋%aeW�HE3�ea�=�qy<��#��w&��׾�M�X,[�U��N�}��
(l�dO���1j�EB|���5Sm�m6�J����m�E�wl|NR���ɿ���u��`�u�Rp�����
",}��>�Q'H0l�n؀U<'�`��="@#&�_��Z�Y �f3EF�s�lԪ�|@�Eޗ��DԸ/=(�^���t�v����i4�����b�Hx���]�Tc������nu|��Ą�$)� �-�WX��"��Лw�n�W]�Z ��h83L��iZ����O��G�qy��~~{O���1�t�&YI-+͂����.r��,��@��U���Y<2-���m��M� ��u��<��%���ޞbS.�r�A�ԝ�6�g	o{�������Q��g���L��-V��NC�u�n�h�Vz%n-�����#������S��V��U��m�lV�ҕV�X�Z�f�I���/@g�y�HjU'BQ6�XLg�̉d��g'�f���r�>�|<8��8vp&�M���zK{���2)�m��M��7����Oxʶ3g�(3# `†��"x<V�Lu���9坋�R��B��f��(���ѵ<����s���+����q,�P�f����0C
�9/C��(p�O�9���֝y[�ٞ!QW�I����`��ͬ8U�A��2�EW����_�m��o}E��Z��
I�D�Kl�g�D�y
/��&N��^e`�V"�!%�QבsY�ւT����r���XyO��wq�ͷa������$-���I��N�p��:s�.��t�C*�3b�v‹��&����?�G�ڠ";B�����%�p��"7�V�qU��w?��?{JΧ����Gȕ�R�n�:���vK��Q4��C��Rq�k��&w��a�'q��&�ng��
.~���@�u�k2x~�2PWl��z�<��;���~Ƽ��9�1�n����P'�H;	-	��
&]E��쌎�z=}�K�B��#���]\y=�|��a�ZK�k���ױ��~��i9{�a�r��+p�ҊjE�?Ü
D(=���J�\֮��Y�A�?���.tv�.O\u��i�����H���_{]u[_gs�ӧq�L�˟��������R�����#�k��@gWK�t:%�K�~��O��6�^��x�3�z[a�W葝ڥ��Wߕ�)8W\����+���+�u�F���c�/�*y��Hq�-DX��@��"Z�J�{���܏���`+tfq�{�g8r�i��,��)�sD����v��xS�y�ޭ�ptj��C 
ĩ�'��yN��	�K!�}�I���FYx`�=G"��VC����]_\��L9�P���(+�hfLf���ʡ�$��ڗ�F��`'��
3�.��൸���lz��쉅�De78�ꛠ!�߸���A?���E-��ջ(:_d����ӳՍ���֐.��\*�2Q�
Æ��v�մ�d��
�r1�כ��B̎-�V\��;u3x�.W6���0�K�ڢ:f�{�/��
?ˢ�Ť���D�(��B6�]�~�Uђ����T"��+��t�׼|�4-L��;�\d�������a��L� :���x�8q�D�D�Š�u�
#�/��To�]E�u�������[mI�L�Aת���ڥ?�tˠ�C
�a[�"s
��lLe�7��KE����Eg'�Ŧ�m:��
����_�ѱ�bռ*�r!k�.R�A�z�=��޾
	�K	ȝZf�y;�=v�!�D�2%OQI���T��(w�T*�*��8�%
<��T�X��\��d���;¨�<RR���}�ݲ�ֿ��׾h����O�U7*5W�����--��d�#̤��V��
4��L�L��f��j����RP�ˀS��c�!ǚv�g|��T��D�<ދБ��TF�ʹL��ߛ��3�,�.<�II��怓����y�����J�Z�c�6C�:�4gy_���߿K7��Y�Q�!��l���~an��_��g�u@����_Zi�3�-�#����wj�~'���?`�=(zT�8����q>����􏗘/ߟ��
J&:�a�4æev��	g1�!���d�Δ���}/��;��T:�3���ʜ99�=6.ע�fK�L!b�E��&��}����?���y���g��0��bva�:�N�y��5�ytu��
߻���*�M�I�Wo����ޏ��~�}7_���k�W�j�}�����=�,}��UM;�П��~��<���b����s���o�y�s�w�ݫ��?�GG^_��B=�~���4p�*�/;��%5����é<�ु*FR�ʻ>��]��y�m�;�߷w�Qz�v;c���g]L���O9>���'������y��F�꬐=l�z���~�z͋��VJ�+-\u�DW~eC�"LN�.�ѭ���zGO�x�=���zˬ�uvee�c�%12�t:�ո�:��w�WD����(��@p��9�}o$��̋.��ؾ[��6��@��3ߩ#�4ҥ�^��й��
������t��Z�C�	��+��u��O��\u:�n�R�XWŷ�]�5�������lֳR��aY�4�)]Q�;%�!�B�W@,onz^ک�"P\.עZ��4�5��HF���)>�}"֎�D���{7M�L�4���F����# ��2�
��g9c<�@*�ڹ��Bf��Fr�A_sԐ!��\��b�#�L&�dY/
��&�S:��%�$<"��.T�7E�����I:�F#�{��p��<񃌘^I��8dy�4X������|K�RZ]nTSN�A���P�$�[a�ʖ
;0���*�f��򳍦��(bA��5�4
Ŵ,�_�RV���Aڶ�0D�>�񄨨�[~�"�c�C4b9@u��C��� M,^��*#I�[�$^�z#����7�f��ȵ?���^io�ƣk�uj�d(�ia�2�:�P9��D��>�e����m�%ERKy��?��A���{5�_@�<�_f�-j�X~Y��}�>ط��,
A����'G��D�IEND�B`�images/icons/icon-16-bounces.png000060400000001740152455614210012445 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATxڌS[hU�������dgf/I6��Ħ��F�DC[���J�#ї�KZ|P��I|�>b�T���F�ڒZ�i7I�ɶ$k�l����fw�6g<	x}�s����q�t�SS_��l?��|�ӍB�GjYY����u�=��'���ࣷ�|�/<ˁUa��d��oB`R�r���)0-�h�6�*�l(ò9l�ePT����t�n"5���̈bbp�#�٥����a�*����ƫ'.�{�G7�%���*�@�vm]Hy]b��G��B{���ġ���
�|�ԮP����Ў��͉h�`�&�����+���T�vw�+���p�P��N�M����'�z�Xj=��>5=�ʵ��a$��9����?<����q��O��xΧ9�|����}�;�?V;��fRi3�x�e�#9�x.�z�̩�7����|w_�^���:���N�eYf\Y^�@]_4>���\.wm[��#�Z����	6b�X?ρ@�d8���y��d1r�.��Gв�nU�
�
�x(����/}?���k�6��5�t
�Y�P.y=��C{�T?;��k���p��c���D�uJ���l�D	�$a%�l4
�(��A�˨U���vx4���t������G�
i�H$�ä�=�|.Ǥ��v�nE�&6��a�(�9dA�MMΞkn�Mg�Y]Ole��v5ӄ�tB�T�L��P�̳�ѫ�^[���r�Z���_M����9�z�hSKK��(м^�
5���WVV�2�>Q4�!$����`$��jw�bgla����:���p�+�zf:��O���[�J��X��)�G��unw�)sdss���/X�7�gi2�t��EK�r�(�x��̉�Ȣ��2%Q�J�Xs�R�%o�!�e?{�n�_RIEND�B`�images/icons/icon-32-share.png000060400000004603152455614210012110 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<	%IDATx��Wkl����y�ή����6�c�1�	�JT�>"B��HiP�T���RS��ZU�m��i�D�ԪEiCI�6(%�Pj������������@��?�ѱ�zwg�9��w˂ ��yI��/Y�<���aٲe`�ͻ���]��qP��+����7K\{���`���m.d]��5+�p�z#Q���^���:��/��(--E{{�M�@7Ɓ�z����C��U���g�2����PP�G�3������=��&%�b�f�$͏��K
oۡ�ʎ���]z���s\�K�F��t���/Un�#�6b1��#+�&�n g��L
���s�
�J�D�|����4XJ�Ŏ���c�UT잜�=f?j�|c���J��³]Ǻ(�&���5�~`ppN�A�����D����S��.-�}�-��*JVޏunپ�� �~���ڝG�֯i�ˁ�ɽ2� �%��Y� Po�@�zY�u:�W���[�߻�Q�"�`�	����Ɗh+�p��ǩ�aI�q���G�>��ɯ��^�\b(�-ܷ��������eY�e3�{���5�;*ۚNïX�`*
$�Cz�dƉ
={��5�����Z��nbx|P"����lMQ��\�5 96�|�:�C�zU��(���֥�'��[�E��c/�&J�}}H���W(��(��raY���v��Me�NI����U����GS��udFXVP
�4L��ᷴ�A`����wz�U���5�ݘ>�1�/����+^w�y?1�E�4#�]�,��u�Z\��UI^�y���ݷ��AڽNe:^�C�W�A3�]�CH�6 ;܈)�4F%\�:�A��3ș��
��f������8��&��
��[��^IJT5┞��*ɱk����ظ��$�NSv���0��L���
w��Z*��.��-�GD��0���ñ�]e#��k�CJK�	ލ���X��eQ��A$���C��9L���Σ�u%/V�Z��Z�kOD�ޠ����s0�__�x�w(�E�ҍ<�!��ҴX��ߋ��i�l�N�wԟ�t��]mw#YY���.�	lL����X�"b�|���
�l�cB�
Z�J6�.�y~zʪ�\o�ܘ0A��e��k����əy+��NN���=�p������8�\=��.�:�GSҦ¡�k:�D�ɔ����%�Y���(����HWo��r�*��1��juۺ6�[K�;<?<&&�)���(4*��?aH� |�_u���$Ln��͆@0"H!vsgz�݃���Z�o��W}�YS��j)C��S@����K2!��R*��=94&h��/����M)0W�f��BoϠ�B׀�ǵu�O>�Bk�-C�r	�e����]��2��L�� :!#�EO�ejn4�ը6�A��(a��� 6sz�U�A�?��{ӛ�$󙶥��=}�����g`3U����sX� �2�]s�v���N�nn�0�\ڰfuk��K�TBV�����X1#��'���6��(љ=��:�^�;���W�U�[�ٶ�L�]�G�SY��S����ֱ
+��O�����jl=?N�R�����_�[���-��O�{b�\|#�&S�@���&އ���8+��=��|���{ᝏ�n�[k�E�c�xn�}�ϘC!�`D4zօA�{D�J���!Z��_�eGo8+<�y!�H(Ԑ�j�~=�FƸ�j�!ˋțǐ/NP����qy�ҡ�nc��(�Q�:L����B߰�Lс���}�*��*ƈ�aDT�(���B4;��V�+J�`��x|�&8�Ij�,�D�e�H��:9I�h�M�it��S��ЅOC��u�qq�B�$�;�#���,��&\�N��Yr)�lR�Ծ��dF�)_��K�H@�R�g��M��SCR���r){\��D��	��Z�-�f&*IbJ@J����C�tm�
�)���a����{͎�шKń$�[�
\ո��Jj]<.�D����N��
�e�i�U�����a�3�5�0��^`�)M�Eѱ��\�K+l0'�#��M�Pd^�w},�-���ruI���VJӤR*JW��9��!����\�"J3��Q�ϣ`{.!G�$��&\84�IJ}��ȳgV6cQ���� 0:-�X��D���B,(D���VR�٩�ZG �۲"ٮ�Y�훎�;��[�iܟ;ܨ����D�p����LO�$�?�X0�r|f֠�S�"�_��]�T�:W5��-�3���?�	=��d@mIEND�B`�images/icons/icon-32-acytemplate.png000060400000005645152455614210013325 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<GIDATxڌWYl\���n���ǻ=cǎ�8!H�!I��Т�RS��(�K�*Qч�J��B�<���*���"T���[�$�b{f��س��=�q�V�z�_�s��g��s��ԩShiiA<Gww7b���"TU���(
�V����ȤӪ?x��X,�8��f'�Ng���
������hooG45�w�\�B�P�T���mؼ���?�Z��
mNo�7�|O�}����� ����$I��J�.Ƕ��%Q�H���FY��b��9�#�)
�>����o�>����H���C|�������#�c���X�S�Z�Y��W���?U*�����M�jl�?��{J�E:��6}btd�D_o�PMTq%��;g��- �΢G͢�c_�2��7�@�xṽG꼫�g`���+�g�yD�����r:��L�&�0]��WM&���%�C����=#O�9hw��p���+	�C�FD4]@�RDW%��>?Ę�/^~��8��D|i	��jd�u�ޱ�����C~}��@I�"�IW>x��W��ˊ����_>r��ӻ{{:���K�1L���V��&�É���*?�!�ϣ@ђT3�^2[Q#��!d�zEC%�C����~�K��熺��{��m�#?H��o��$I�D�"�y���p
���3�sU��I(�MX�:K�v'�W�G2��BFǰ��ptzq��g���GH�����rl�l�e�
�>D�B�k���HO]����84�c�3��7^{�cJEYZ\\�cd#��`Lrl&�p�K����9�� �y�ɇ���>`��V��\��C��¾�<��(S�d��#6��إ�H^����6Ql��./�oߍQ����<3??��D\�������C��a�@�:16Ԇр�J&�d�(�(U
pZ�`1��^��&L�&Hf
��r�`<_�P��z;��&b����|8�O@<�j���ɓ?Y[[{Wܻw�V(�ԇ�~䮡v�Et��.��Q�g�&/vu�nm��u.g3��A�Z]C�T���Oe���P�(}�n4����cP{Zк�e�哨�����mY<p�2��z���w��;l��J&K�H�U�>lJ+�b��w��q���Y���߼�w�ZC)���H���)&��=�,�pa
B���C{�ʦ���fcF�fg��ݵ�;�D+Q
��IE2����r���f��
�DǐpV�@�Q���T��L^'��������&�I
��|��'N��6�g9��35͸f6���4�E1��Z�p���z��*Ha�!(���B�+��^T+jV��I���S>�#��ґ'��Ag8��7b ��^��T*e<ö��7/�+Ydx��X��d�6)�hyh%��]�T�
%䃢��x��ۇ午F�y���A#�y�� �F�L���o��~#�q����p?�9>L�� L�;܅�.}��J$W%6��saa����dLa����P6��:�������
��[����N�\,�6�Y�~�Z�XG���Ā�	�݂�`�3JAj�����̜;|��x��h+PJr�L�*��_�6��z���Bױ=��/���(D��[��T��^4�ٌL�� 5��@��7�92n�ӎb�b���@|�O�3�)tv�x���~��gơS��}�Œ�I�RF�P���u��¬��4)S�wj���&�������=��H�"��9u;�S�ձ�_�>X/T�)d^]3��,aϘ����B1xz[ |(�K��f\��\!F��<0z
�����?�
^��$�G2dX"%T�y|�Nhy�.���)_~G��x��2׷1��/p���x��q��WP���Xghh)0moIA�����?��j]'j	��A4��~�6<z�%磈~<Go+\��H��
���:��"RK�.���k�07�I�
�>�Za:K�,�:"���cg��G��r��e�ukk��y��¡�)�4��P�Ƹ�8v��$�J,>�x�;��Q�c����'�w���U�MA2��Z��imO>z�p%�����9�i�5�5�O,�mhW?d�3P�b����Ai#ʽׅ��=�`iku���<O�`�̤f������'&ٕ��NWr��ݪ�ʲbgf�J��r���ŊA4z�!�f��c��(�� R�v����_..��Fؖ�x�� ���ɜtQ������gf/R���~�87p� 7(^�w�g�e���~��)��Fm��Ȫ���Ÿ���:E�^��>�	bk���)�#��ω4��(
�z.Wv��m'r�"6#��7(�A7�F455a7zQ�7aPF~��3<+8T�qmb�_���rY3���~��ԱD+1cuq��������Opi�2mD��T��ڂ��N�/ ��&A3R�j�)�T��.,//�#[��e�W�9��8r��4��i��ҋ�j�,����{��фD��L��A�A�Z�X����܄V�\'��F��(�XZ
�G"��L\"ue
�;D�,جV��p*m�*5�T�ݪ	֦&5`�(�ӷ�a��
��\�`�.�/��Fq��:��]n;I��F�����X���kv��Z��D�,#Q�p�������{|�J��%w�-�[�l��*~�Q�� *4*pn,|fh7
 �s�e�R�Y*������5���*)���iž�^]�u���9<y��r�$�ZȒ�����6�eSѪ�K�B�P�t]X�鏁��n��AI}�7-a��jz�\�uM��V+i���W���j��B�n�&��"C�t��i���N�$j�t�r�	J}��OS�[�@,ҩ�S�tIt��kTS���
y'R�4޺Ey�%��<&Ʃ��IEND�B`�images/icons/icon-16-filter.png000060400000006761152455614210012304 0ustar00�PNG


IHDR�a	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�FIDATx�d�Mh\e���߽��t�)Mlu�c�m"XЍ�ѕEAJQ��-��ҍ.D]�u�B*��.JQ(H4N46L�7�$�If2���{?�#�����q�‡H)�m'9���{v'<6�����[~��<rt���w�ҡ��n��F���Y�#�C����Ɛ	�d@z�L�,��ܻ����ŭO�j;W��ť�Z�Tj����uqx$��R&����y%9��MV�/U�W�2�+�PJaZ��=w}��͟��!�����!�\�PCf���'��F�����׺�}>ռw+�
<�c�2E�G��^���Y-^���Ĺ����,]1�zk�Ue՘��_#jn7Õ_?�j
@<��a`RJ��l"o.�;��e�V/�4�|�:*���8H���R��dx��q��}D�v�Ԕ��l���T���J�R�7��m�5++��f�	@��u�~�r9�@�Tk��P�f���*��V�1u���tw�z ��Z����i@�LX��!����c1�7�1���M~�>���	T*�){�T
�J�T6ʏ�w�D������g3}�C�v�wv[Q!{;Z����^�U������8���cDq��
���S�=�Tu��{=j��^�8A�����u�䅋�CCO�� �Dh?�u=��E�R�L��]�v�N�ͶSB|����߭/��J�TJZB t�Hkű��N��·�#�
[6���͆LF�N�:N�J� $�"�ȗR�B(��&�BW��/@0rK�IEND�B`�images/icons/icon-32-copy.png000060400000003404152455614210011756 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATx�ė�oG�����q�8	� BPP��T�T�B�*��rh��T����pj�QU�B�G�
DOU JA%�$��IH�����73��MA�0����ݙ�>�}o��9��F�57r���$L�<:66�
��a$���I�Ht83L3�}��0�����B��+��'B\�t�� d��c*�=37�]:�Q�&�I�1��G8Y$�b�0
!���9�N�}��m�0V�h�+`�a�"|�P8�;���UИ;�
l�{@z'
Rdx��a�������?+���HU��x�b,�iв8�:,�n����@g6��o���^�L':�22u�1�4
^X���s����##���jq'�$a
�<��:>>1q����2�Vwwwagg�A�AM�`r��:;h��I[݈?���qPh	�	~q�)$�q�2���s_΢��\�~�#tl�E
us�!A&5�ǾF��r��R,��qLymm��(�2���	��NՇ�gϞv�k׮}�?�c�@*�h��2x^�0ᄅBw�!�HcԄDy^;�T�բ
ݹ��`���G��~~~�<�;���R�vA�5��KF�HF�@$*LŢ�TrPIl��lA�?������=zԅ�<s�P_��G�����q�t,�V���P3���x,�W�-�I�2�D/�~��&5��*����DlI�h���~��B��r5y����a�u[�*�5!\:5!�
��8�ۀ|>��6�ooo���H�cd��"�b�����
�5�\�c�}�Oe⊍�fC���^db�o��b�)cR�I%L�hb� �i�^ЎO4a=c�D(�4M+�LC�*��g�{핉�ف"v��a��Ոe��K�)��R��*3g�
Ys)o���g�m>�)W(��S��{���[ݗvq�ɘ�,Ĩa���@�Z�̚cX�KU!��C�*�"й�z,���ix֚�#�
+ζJbbo��`_��W�[��LD�O�	N�CyTw�|�� �_�D��s�J���eШ�a���?�I*V�j�H����m��Y�S#�%�YX����K�����2����3��4hD��T�ru�Z�b7�"Ҕ�L�|C��.��K+{���=%�mY��AՆ%'Z
X_�``���
�J%XYYC��Z{���t��3�����n�� �ξ�Ih�Vzk`[�Г����n�
L�X�Qἱ-k����M�ŒaX������Z9#�������B��KNA��Z=Q�D�`����P,��у�fbY֋��f@;�8n/h�D$�OMUcʺAԑDh
�H2�4�THL��!�L���hS=�Œ�b�k�
hTY��"I�	�>N��6�3��xw�>|h�xaa��N�I�||"�ۤ�Lk'�֜��>9_[�~��Rf�
/�8��3��Z��?]�IR�G�(�N�	�:�Ï'>n'��D�g�f-1�/3ύ�a�=/�9��OQʼntZ�f�̉T�>rh����g�%�թ��qɹ*u�{
�ol�S3=��-=�r�I{?q�[��a�����eki˦}L��H&�t�b���?:��4�Z=��SK����.������	��4纼�T�"�c���md<,�1S2!D�G5|�j�1���:��Y��hM$�w�ߴ0/$�!�+��٦�9�IEND�B`�images/icons/icon-16-acyabtesting.png000060400000002700152455614210013461 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:73B459732F8211E48F6CD33325408BA9" xmpMM:DocumentID="xmp.did:73B459742F8211E48F6CD33325408BA9"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:73B459712F8211E48F6CD33325408BA9" stRef:documentID="xmp.did:73B459722F8211E48F6CD33325408BA9"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�H�4IDATx�b���?6p���h��B��#x5�k�a`1����!m�Π������P���h*�=wof`�����N���������٫�B|�
�p�&�b���$�o�����&��4���/��\cX��
�%`���ю1g�?1������`q���LLg.�a0Qa����˗��&�������SpW��Bđ]�4���n�dx��'��K�!������b��fp��pk�e�8L��������?�`XT�Й��p��S�����ˊ���,BB�EQ6?~|g��?���W��:
�f؃��ܾz����r�&�~��77�X�'3�F00�pcOl����n�c�?����͓����ll��b���
CgCïo�~G�W��#����w�`�����8���+++��g/N]�à�$ǐSV���M����*!��/?z����Y��@�!��n:����h�̻/�����X���D���_F���D���Y16���poE�贅QQQ{@˖-�K�3����uIEND�B`�images/icons/icon-32-import.png000060400000003713152455614210012321 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<mIDATxڬW�oW����l�\�#[S�MV�[��T��J��/� �H E<�~��
(T��x4A<�� �PhZ\��ig�f��ٙ��s��lv��J�}|�3w���;g���3�k���
}]B�m�6T[J��A�`A�_���[7���ܲ����.��m����#�N�V�A�!��p]����ʡ�"5Rޡ��&)�h~�
E{[tp���kE��\�W��!��M�t`�CZ5��E�z�J�gwf[��*<��Ali"`��󟤤��:Fk�8��$9����V�_l�퟼k���{���WB6;��T)�0c�ڄ�B��y�������/A1�P�ii�l<`��#� :���z�,.����H�Xʧ�rVFpRBJ/�"�v|_�;w�kW+��8/��VH�5��#=dl���e<���G���:�������0�@ ���
'Ξ=�X[[�Ѱ�䒢kG@|k��&ű��!�� ��=	"2���;����ǟ���}���/�`�%F�o�d@"��
3�i̕rp�<�3.�H\�wg��R�=\�~����\�@|{ff���.���'(���V�}L�<�@��Ocyo^B}g;$����j���fa%�%�cIuC�`�U*8)�B�!Nxtee�<�"�,V)�X!����]���G���q�;A�J�N�u{����b¼7u�
(1>>��C����о0	#��=�$���I2�ck�Z5��;ܯ�s`~~.�(�J(���)
�4�!M��I>P�&)>M��z�$S������t��arH��dġ኱H�������ME�/D����o2,恭j���L7�8!��-�1#��F� mK�팠L��)��yK����	�#�]u?O��Iǹa���){)
�nnHk��.�L��
�Dږ�_�J�~iwL��b&��F��z���	�擉�I��hO�>c���Z������*>qdm?�w���KLN8`� !�C��gn�I�ܹu���*2�n��֊�3�m!��؟����
�=���1���w�!��H�W�Q��2�G��Sutg�zӧ��C�0�����H���(*�s�7���*G|���v3���/���->~� �>p�ٌ���J_�4f�x�}�4Q �P�`�<`��q@k4��()2���|�~Ȩ���y'~�{����pߡ���)a"�!�����/��W��{���傊զ��(�����|��ܳg�?��&V�.��;��&)�.���D>��.�Ё2��Q�u�45�r�<P����H1�;X�����k���,v-T6/���P*x���?b:f�fHzx A�o��t�O2�3�dsd(���-��<����~r����&�Kpc�s&�,ݧH��%9��2� �X��]~�]�Ì[�a�g���VI��.W�r�C����ze�+{������?�c~�?��-�³��ll
PW(�|LM�h��������K!v3a�4)C�Jvll`/+�z9���;�MC���;(��}�^�$������$�fhǵ�ET�d�P
����Kc�%O�r,��5ܲ�0���:~���R8T:�{�De3�[M7�3~��3�7mL:hx���|q2�JeJ�S:�����w�yg"Wpf���~'�p�'�rya��
��d��R�ɉ�{K�
��ڵ�F�l�@��Dh��%�\�%a����9ur,���@��y��<�v���g�b~�03Rݴ�<���HE:��v��_�A��b�;!�����r����R���v��Lٶt-K�wX�n3��%e�]���(��I+��>)�P�VQ�B׳��T�_5`���IEND�B`�images/icons/icon-32-acypreview.png000060400000003545152455614210013170 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<IDATx��W[LTW���c�say�4�h������j�6M�G?lc�֚��c�Џ���~CB�5�+�b5F��"H��d``��ѽϝ;���G��r�ܳ�Y{��7�0x�M����ѣG�b�f��---�J�%��tN���:��b���`�MӤ�񉫾Uߏ�`�1Ư��ŋy/�����������v�2@�M�h��:>0��i�~��L�p��GQ�)��� q��DZM�� hnw8Rd�{�..Q�6e0bw%��1���ZV^~�֭���$Moll���ߑ`�OpYA�a|�&<���䀍5d'b�I-C�`��/��h��j@�R
�z}w�ƍ�"O�i`DQ����i�q8�ㅊ��oM�fp�d@X�B(����B?ttt|��^�&�"T�
�����
	7�8� 3wsV��U<��E��STܲgϞoGFF>��$�.8�k2�vÁ�/Pd�1@����yg�����C����2��2'�����M�9+;�`\�(���I�DTS@�+�|Ȗ��e04}B�5Ԍ����v%���g��� v~Iժy���FP��h�Q?��HA^T�qs��w/�rG2:�Ev�;�
4�[	i3U·PJ��,�K�-Jn(,,DD6=OpR
�(I099	��}��8N��O	��Llǎ}���'�o�mmmՒØX��h��|�M�qz�u��AII	TU!��� ���@gg���ަ���pz翗������᭮�1�����߇��)hhh�y<HII�lQ������<�߻w����pR
</��LB��r����P\\̍'�*++��
���@jj*�����R;�jH�j�$I�<Nb��#�������


��v�}r��=��e���y_YY	�����}.���s`#��rN{f����9�z�PVVF�|>7L�JŤō�P	���
��k'F��*�9����<�Y/+l��]Ͱ���3Q�Z30���ܐ�"$�8�1i#vB�vt���+b(
���0� ����7w#_��3햨%��2N�X=�+v8�䁈~T�qC�=��T�V�lI��h�E	H�-�(��Z �@�y7H���4'�{�a�;�h�(�o@C
R��b�(��!�$1`�<2J'��UNN=~�	@4��X�,!�3��xr�M]"HX��#!���UNwoo/����8�VO����en�2466ҫK�>Hw~vyB��gGhmm
���a��\a52^TT�#ݵk��СC����E�P#|�…�.--��'f���s�X�w��td��E%)	�"z��R}MM
Wv{{;r=X� ���#���,����O�™3g��|�&
�O���!3CV�4KFv*$h�d���rssa||����	�|O���P�����﫫�����S�N��u:X��D��뢲�sVPIEb��,��322x(��d���0~�鷎s����#ǯ\�…K�8{����ɓiȀ��r�y�9��W2��]J���D��r�X�gf�g�x6`�9�gՌ�X�2J<�O-�����Hhfvaq_�b[��G�|�1Ab��Y����ȶ�fw�.�CȖd=O��S�E�$1���%����Mtf݂ə�ÄAWX�!U��*�{����k��*M�d�tT��~�;�j4l�k���h��k,�5S�"�HqGb�0b{��
�oZGͨCc���x���KQ96�D�����#�=����eIEND�B`�images/icons/icon-32-acyexport.png000060400000004216152455614210013024 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<0IDATxڜWI�\W��_ի����mw��v<��M �c�"V���6!9~;K�ʞ
+6�DA�d��'�I�ۨG���5�z߽��衒���uu���9��w�s3��p��?Ӭ�ٙo��e
Ms5�N4�mk�	̈́ne1�Ed�5D€��$I�B~K���0����]۶�iv��yY����Dw��f#:g�ts�������GQ�^�Gbh� ��}�K��u
A�-t㷚�U4ӽ��lj�U����ӫ��}��–W���T��^�lĽX�Y^���(/�?孶��u���^ �MF3�u^�׬̢��W�ݗΟ��t���f�\�o��v��
_�~��W/�F5o���(�D&�#DA��������׿�n���UH�r��a�R�2����{17�]<97��7�_�X�gq��N�N�;qg��P�p�x
9ϕ�C�BB����s��?��;wnЈ%�|��]�K�Dӭ�(�h��^,�Œ�c��ĥs_�D�G���`nz�~���4ԅ�-�R�oJ�t*fb{��^�NOO�֭[0K�e�3`W@�(�iX�q"����&�4�.���_9�V/�[7���o�2�,��ZNӂi�3Ibt:���O^�r���l�yI�}! �8g���i�	�Uk/.�_�������54
ln�Q�	|���M��7ql��SSB�+j�$�X]]E�^�a�3{.�5޹��X(B'�q|�
S�{&&�_\XX�(	f�C�ua�.�E�n����F#Hp�a�j6�#���^�"��+��IN�f�h��>[�C�HH}�Ө�K8v���<�0�
��h6Q��TD��e
nƄ��\n�o��\�bvzJ�Q�%(�Jh@�P;4]K�1�s�#
q�[ ��R��C�"�1��P�h@,��w��������4�!����(�™`����}
�7@ cj�@y�4&K�TiD�Ă�	�[��௟7������t��˽�0wz��hCZ.�G�+QхʔZ��w�`*n�1~��%�9\��Cy��51ϖ�1�}��Ne�Y�td2����OPiZ�nBFMq����jW�pW_��Ij�aLBd��J׽�J��堦3�6w�D�]�������6��g�x�B5��q�Qd�
Tx��H��H��)8e�K�J/'xT"?u����WC2�Q{$�#8��62���)����z��"K��E�X�!���"��&=
5�1���h���q@0��Ǡ��ƏU�UD��B�-CG�YP�Y��?/���ײ�'
+�OD��y*�4b�B�e��'��Cd�֩�&���|�B��0�R=�Y(�L�r���N�W!��4<Y�z��1sx
]��>&s�8c�
yV�#�U^l�M�,G2�z-oJ���4?Ȁy��D�yPoS�5�� ��B��|���XŅI��4�R$�Q�l�	E#m���A��-G�2У6�O���/<UD-��Gh���>qG]�ׁ}a�DžA�j��K�9{�A��eX<�!0U��Q������)�4@�Y'��Q�������Г���Usc.Kp	�c��Ved�Ze��%qٌ�o�5G��J��}F<h{{���L#�o��_��C�_^^T�a���}(����m3�E+���!����h�Z���J1��om|E��dB 3�-����Ż���s��On�8�lHȒ�7R����K�<Pqp'=L�k1���*�����`ܿ�b|�K��r�Ac����I�P��Q��լ�w	!9��`n���e��',WU>�E�P�F�$C ���69ok���)�_d�r9��˛��{�u3�JM�����$���z@3����|̒�N���9y���m��V�������㯳eҜ�g���9�/����f��$��h��uaq�
����BF3������݋���D8	e�(a_�0+c?N�:{ӍV#X������8s�un*�MS#_��1Yk��!lC6/�
�\%��εZ�3}/M�>�����I�(�{a��4*�˜š��aȕ�`?�*�t��IEND�B`�images/icons/icon-16-acyconfig.png000060400000003033152455614210012746 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:BF171F5C68D911E5AD2ED4C39FE8A7DF" xmpMM:DocumentID="xmp.did:BF171F5D68D911E5AD2ED4C39FE8A7DF"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:BF171F5A68D911E5AD2ED4C39FE8A7DF" stRef:documentID="xmp.did:BF171F5B68D911E5AD2ED4C39FE8A7DF"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>t�!�IDATx�b���?:�*��ʁ�wn�r9WR�@�(�$Ƅ�y�λM:������$x��ރį�{�i�.�����k��=Kw3V�<;ٷb�߈���1(���Z���b�����c��S@4�@�,!�s/�y����?�_��>�\v�(uj�'';K����/�����} >3��w�s/��Ngx�����+�%��1H����=�st��/A�.X��
��s�}*Ӻ[��n�-ZZ�9W�r��K%A�`{y/�{@���@����c��'9Av��bJ�~�3K�<���O	���|ܬ1n�{�槾ZR����f�=�"���Y���ݧ��T�{�S���SO��$�����Ԃ]��n<�h
^0��%��i?`�_GW���]y%ܽ�Jn��Ӣ<lߋõ�022(���D
���^��Ʈ�o���q������@\4�Q�C �4D���.I����+�����:�M)�DCxP�&�MI�ZWh~@�4���(W��w���)>�U�������efb�^��`�!r�����~P���PQ���
��ʷ�\	J����3
%�
���-� Ľ@�Eh�	�#���`4��e�틽wIEND�B`�images/icons/icon-14-color-export.png000060400000001151152455614210013436 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<IDATxڜ��KTQǿ��<�fތ
&Rd��Ji"%�.��7Ԧɨ'��F
$ž�&����6%D�k���ڶn3�c��r������q���{>���+	!����Txx��ٚ�/)��!I@
�A����.ap��V�S��bi�cq;ќ.R@Su�ZC=70��1�����Խ�B�����_�q�\:�����|o9�'^5I�����]�t謲S���d2�N-���o��3r��������_�eBF#��Q2���i�m�I7rG��iXX�V���B���
�R��0$؃,+�<p抓w�N�~f��W�r#��}��kZ�4���;����έƨ����+-V�4��U�V�<��/�nϞ��I�5uO.�8�h��d��D�,C��'��>��B!��c)���T�G]'A��ZfF$͖F��r����_���&5z�:68AV?|z���ZdTd=!I�Y*؜��{&<����ջ�N�ߦ(��޷9��Έ����0]�ؾŘ3�IEND�B`�images/icons/icon-16-users.png000060400000002453152455614210012152 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:54367E4068D911E59C379AC89715F7C1" xmpMM:DocumentID="xmp.did:54367E4168D911E59C379AC89715F7C1"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:54367E3E68D911E59C379AC89715F7C1" stRef:documentID="xmp.did:54367E3F68D911E59C379AC89715F7C1"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>���IDATx�b���?%���WٞH 
��ۺ\>�3�	]�o��i@j�l�a|D��Ͽ�7}�D
�@�h����s@W}��VF�JfGq����r ��qy�����'W~�������@lt
6�M�o�)�����	7�~FFF{Ia.�##� ����x���,�0?;X����ou��{ 󮽾8�ƹ�0��+��?ec�����~����7ހ���o�3�*����<+���w�PoX��l�u^b��0�j`tcк�R:+3��+��s!�)���)5s�k��1T���K�
p{������bK,_|�I�9�]F��!�U	$t݀	@ۙy8Yy�0������-�~���f'����t	�e�[:`yd	���ot�L��Ʉ'Zn�IEND�B`�images/icons/icon-48-joomlanotification.png000060400000005200152455614210014677 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<
"IDATx��Y	l\��潷�wm��Y'��c'��!�!!)��*�VHm��RӃH�D("�hJ[R!hU��"�j�H%JUAU�T�)
�N���$���1���z�����?�U�Y��J���;o���a�s�/7�	�O|���ݻg`Y�D"��Wӽi�tAO�N�{��+�RN=�-+����dr}}}?�$�u��<xʵ麎���{�����{�=����7>�O��?1ub�&�8����Z�{�n	�Nx���rz�i�wbN!�M�n�Z[[[���+�k�p�����:�=�<���,�uR�>u���G�>�������������3~M@�:�i�F+	Ğ=�<�ȳs��������{�/#��z��	�n�����'3����>���?��?\	���9/Z:7@j�&I�0L�m�����޽{�o߾�]��W`�$6g�cq���G.�����k���A.����3[�>F(N�~�g\�$�U��(��&�3u��W��@�,x=%hhh�ڛn�K��W	Lt�_���1™險�6�
r�b��Pe�@g�X;�ZUTV�h= W#�U��><�J�+x	΋�7&�t1��wbT�$T"��C1�`���	6M�!��&]eJ8��q���,HR�P�(]�B�t��^h�FFF@(��"�Q��,Y�����L����2�o��s��B-���:�u��N�ƈ)�˯#-�jjj
Z�a�u�0z�����5�FբU3��T�R �R6X�v�H�����Ўq]�Ώ�6~<o7j't�VP�ꍷb`���2��_|��Z�<3�~*�M�'�B=���ڧ���A}Ǽ�6ڶvC"��:�&�zކ�
��_��\�h�^�y� ��
�q��馼}^*$���@����ڌ��u���.?����o�%�+kv!{��ڏ_�����J�)%XV�%ް�1F�K:[X
�|d�xFY����!��&�����+N*V��˗�F�p�×�H���,�+��3;����Ìw:��U�-D�Qm?ԁ��� 7�
�_��1�znpa��IR���N4��ꪔ��5��
��E]�)p�x]S0�#�ܑ��B�5BW�uW�8P7*a.�X�@ix�[���z� �����*X	ݬD�6Z�޸�Q�����S�S�/*@��F�XdBD�h}W��xw3��y�(�sT�<��;����`��2^�zr;�,8D�_/J:-Zi�b�.^?+	T��b��o���GGYr�`��T�

���!�݋޷O�}�����
���FS�Ɔ��%��BEfR!~��XE��g�l�&�M]���?���>� 6�.�\��b�q?�k:z��^l���`����hY��w����-�x���@�ei\�RI���9/畠���^԰n�mc�qW>@��q%>�}�8��e�nڌ�۷@./��g�Tj���X���Зf8sBBW�4.���2JB+>e!��SU4�������8z�4Ë'�`�g�=��_�(�1>�8�s�I��XU3p����ތůE��K0sZ��YOӜ$?��.	�m2LÂ���% hK��?'��R�!���u���?'���]�]�����a�r�jRj��eu-v�s3��[	Iqԁ3�BhG�I	���1bA4��_�m0�כ�.s�Գi}#�
��D��XQ���\z���RV�,��oG�o��x��"�ɉ��ཛ��^���z��ś�S3me2�D^\�aH�JX�d��U�ҥK.ꆁ�/'u��Q0��o��ڪ�U�İ:�L/֔x���7q������LGe��)��0�C�e��Q��$F};{#�D"x�ճU��\G0���^g?29�����_�ЀD���k�l.D�ӗ
��;*%q$�i��;��VWWW����#2�<E�쳂��XS�{�	�i���C�mnWUdz��'N&v�%A�IV�GQ$���)��eJE��s��o��±�]�#f6��5�JQ�#�s���%���ݶ��^CS�r��g�Ij
��K��8�d�}{�$����pIH��˼KJ�<K�˽�j,d��x��4A'��z9� �}K#�]_e�g}kLc܃ �02Urqe�ύPj�bed��G+��*%�*�2Ԍ1�Ӭ�0��ru�&I�O�J$X�T�rT\}^�Gc��G��ebۆ$!S�"3�INz�Ħ���:�.�r'��Ԙ��Nq�r�ֵ��n��gK�|�����l<�}�4�aU5�j�!��:��9#����+n��5�T
��f�Fbx���
��:~�#�$����~?��/+�OQ�O�U��C�����v�#�&2v�bq��g~��M�1L�TE�ii��5��9*'4RyC�-��VN�e�\#����#��ـ`}����i$� �N��
�;D�{�If�	+]����[]aK[p9��?�=�?n�Z6�&�*UD1ʾgd�� ��*Ƒ����A�}ۓ2�� �Et7`���	��{B��RL��J���)AŔ�O�c�/f��6���HIEND�B`�images/icons/icon-32-acymailing.png000060400000010623152455614210013122 0ustar00�PNG


IHDR M
)	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F�IDATx��WMh�~����]iW��-d[h����Fv�q/�M�u$BH
=��`�{JN>��^
>��az����P�`��ŭ�,a����ݑfV�3�O�3^ّJ!��0�����=�;����(�f#�����=���y�P(�l۶,˲���8v��Bx�1�s�q����1��kkk����~������U\�~��������u��8Bd�Zk!&Ν;�ǹ��i��A��d��c:gƀs�(�>�}�6y������y�R8q��Ϟ=;�>���!�c�@M�;h�!�D�R�իW?���ݸw��G�$�a׋#����J)�
[0F#6�Rx�˶;d��D�c2"RJ��u���aqq�����j��J��n�8F�Z}jj����_쇔J)B�Eh�1<σ�y��Bk}�@�B)j���ǭ7n�:y�dSJ��(���qj�?�$I�5!����ߧ��	!���Zk�r9�q� �!r�r��0�@k
�5�\����3LOO\�r��Q�T*������ݻw��/����AJ����+�N�:�n��.(�|>�V"Iض
˲ �D����P(��,hc`���
��!N�k5�����Rbrr����I�R��1��;;;�?77��eYPJ�h�N���c/����s�9�Rh�Z�}��P(�h�T�ǁ�z��%H4�M�\�xq�R���a�>}�����h������s0�@)��Viʺi�뺝�,!�yr^�	8�"[h�W57��BjKQ���������t��{��v��2I�$	��
�HB@)c�e���,
��L!�+k�v����9�;����&��
(�144�����7o��V��Ϝ9�V�$`�!Ch�A�ˀ!�Z#�c���2!J)����+!��5����`n�mC&1���2&&&��~�9�[>��("����/��g�\��6,
�}����Fa�("J�1(����N)=�z�(���U��^)~��8ħ�?���q��*����o�'
�~���p&�|ii�G�|�533�����$	,��B�+�_��Ex^�|�o���a-?�nE���Wӹ��ɣG�旗�/.,,��Z��{�P��K�c`Y����P��bo�1yd##���7!�m�U�TXc��j����ʽEE�c/�Ak
�uQ,_"���1|��#��[�O~�(���΀3���O�"IY�ן�;A��/z����p7��BX�}#���N;��f�	h��h4kJ)(���'�@.�;��Xk
�[/�"�{�"�9���P��?>{ж�ս�=ض
J)LwJ�5��@���9��?I�166v����=��W��2�e�5��PJ�5��r�r�%��R�y�5��\���R�T*I�Q�r���b����T
�R	�R)�4ێ^a���n�~�
۶���;wz	�/_��oEݍ��@�S�
�lAy�}7�J��mp��)�e�
�`C)U%�@i
��R�`g] �����\)F��x���~�ڵ��8�����l7
Fw�=�8<=爫;@*�(�p�����ٻ�Y���9°�	?H���v�W��nRRR)x�cj��6���:���q����������8N��ۭK�X�EWWW�>|�;��m��J��*�qr�IEND�B`�images/icons/icon-16-fields.png000060400000007134152455614210012260 0ustar00�PNG


IHDR�a	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F�IDATxڤ��K[w���󚘜s<�;M2��Z-�$��ut`7�,��`�.:Z��\/d7^���b��.v3��	�0XY�FךN-�I�&51Ƽ�����Jخ��z.���0������!�$�V0|?�N�|H2S�j�9�o�ƥ�t(n�Y�d00�ma�6 ��������q�uUSYӰ����O�;o������h�p�]��M�NA�U.�],�^����W����Q�C��|x����Y�<^��e�cY�o�I��H�N,���f��P�����<{~��Ͽ}1}N�ܘ�0ty�Z4�J��t]����U
c�v��(�tOO�mm�a����7n0�F����KW	���y,˂,��P<Ϗ�|���T�
����[�(BWWW��Lӄj�jW��d�^�K�R�J&�?���
��x�Q�1�J�����oh���i���<��}�mY:urr���Q�VSwww��l�p||�v�\�,��D(�}"=��D?y;>Cmoo�D"�X.��,
YM�LI��###����q�����t��,p�\��`/�_��1���A333AA�CCC�D"1�F�I����&(�,˂ �0T���Ǐ<��6�?LU�R�x������E�F��rx���~�������=~ksky'��5I���ƙ���i���
�$�4
�������eVW���̬��w���c������O��������-���SU��O�6l�R�����n�|+�1:%H���/�b��:/��-�Rv*e��������"ƻE&���1�"�	�d[��(�˲MW̢��j���z�m�Ra�VqR�4� H��I"
!@���M ��`�$�δ�{tfIEND�B`�images/icons/drag.png000060400000000503152455614210010546 0ustar00�PNG


IHDR���gAMA���a cHRMz&�����u0�`:�p��Q<PLTEzfffffffz�sssssss�����tRNS@��fbKGDa��	pHYs���o�dIDAT�c`  S�	��r��1��!�%tEXtdate:create2017-07-17T16:13:28+02:00�Q%tEXtdate:modify2017-07-17T16:13:28+02:00���IEND�B`�images/icons/icon-48-share.png000060400000010113152455614210012110 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��Zyp��u�}��V=-O�eٖm$�o���f1��	NI(mJ�iӒ�
�8��iK3
�$C�&-���)�&�C񰘥1�1�EX�%Y~Z�ޓ����ɖ�����y�M�w��;��}Ha����)|��'�|��{�N��{�"n� �� �f�D�g��	E�Vh��T����<�*�H0�E����n���_v��,�fq���jx��B�@�4��ܖ?���F|鮻>@�	l�C�WF�]{[�I���h��$%��N�w��y�%�g:N�ŷ��O
�C��;��Ť��d���z�;�~�#V5�1"c��)�75*�i����¹m/�:���Z��U�K�=��%�w�B�\(�r�wZ���ɵ-�#��)H�t޺6��� �v���
��m���~���m�����>��w,/��w2�]ǽd
����8O�3�3����_�4�h�\(
�V
��E8m>����ߞ�6i=��O=�n��~������.^��Ӭb�[�X�@ih�CY�ї{(�-�����}�sP���]D�$w4�h�lŃ\�P.��E	��L��P��k�M�����>�
�i%Z��qv
�0כ��2���E1��D���@��1��o@�����X���c�WD)�G>�G)�k�<M�d8��P��ỻ���}'�������&U��
ڙ��9�{�H~�w"�賴Xz �U}�B� \�w��]@"*�#56���
��0��.x�
��_7�(&x�&���H\��[�?}d{��ozf��p����=���@���mx�%?[�h�÷ՠ����^(T("j%���(ܓb18e}�$
��YCZQ i�!
�K����g^��%�&Rh˲�����ߗCkC=$��e��J�22ى�����6�"@��	��A�E��T� ��:`f���jlP��da�WUFQi��S��_\���?<=2Ԧ��s�g���8_�P*b�<vN�ţ��哦5"Qk��`��P�ry��Q����d
��dh�<\�&�8N�e{�k.|�au����W.�QR� *~�^;~��v\�\K�`d�zaUȣ,��`�0�nu�w��^��*�i�?����>�!�r�(tv�.�Q��<<�~�<�f��{<�ξ���ta�,��ش�
�{���Ġ<z���ѕ�cX��-���
+aun�X!����`{wS4 
��==�C%L�8���+�.G��Q�R��6x����a�[�ǝ�g�4V���Yش�y�w�c�n~E��>�aSW��w�cJTƼ��}�=��.�8�d��	�֛�8q��5��{�G��r)Ԟ^��q��b�B<����-�aOk���/QLԠ閫���W2ʛ��v<���! ��D�Kjd��g?���j�5Jm��*���I\�D$'I��"��5��}���-��j�Y�Q�Т����S�(�����R
��S>�9g�޷vlE�{���(c��"[��q���sG�W���_����4*�]MV��
%�����W/n9��f7���,��y�-���(�ڇl��?�;����S�l�eS��r�dY��xD;\���C�~`�0w��U�d<���
8�J]C��P؁}�b,�3F,��n��t�J������[*�T��)B}��b�C�H�m۠.�EӼ�jf��[Z&͙Z_�ߐ��}*2Î����;/���̖]G�-Zn�|@�@}�"�G5x#���\)�'����f4S]��KC!�����fu�
���)�-�
-��W/@:"!%p��@k�"�C	'�}cmT�}uj��+[����>���6��`��3�������EWhI�@q����[�~�)�'O����~�	3g7���<�X��Z$"��yo����Q&jy�)���[�cF���8b��SB�����Y�3�!�{��g� �h�i�ox�m��`I'1�
i��v
��V-
�)k��mlY2GGц?lK}���0��ڷ�����G�`oM�7R�hj&y�P�vPW>�6��͉,nXׇ�5"�B����1�?i/�Y�XmM�j�N�1d��{�̴F��˵�DD��4�'���nk}��	��"���oF4�@QjD-I�9��K
�j\�sX��Ky���"�N���I5r��W��q�yߌ&5�!�k4%�ͪq��
�(G4��4
�$��"2�Wd��|Yh�1����$��O���b���t�)�ob���NFU�*���ۗ�n��'�Պ�Cs9��51���B�\$��.OF�"ިI��F�a�x����<�.(B^,��៿h��?)�޲�~q�b��u̪���
��lRC$�G��#�P=�X曜q#/��)N]��$1S�p)|�ϔn|`�ȝ�=Ag��P�<?��	��<�P�.�	�ѝf,}aEVs�K��d/�U3I=�,I����E�J�DG�"r��߼���[��oimQ�ݸ$��*�Pw%-W`R7�C�B�|������L��1-��}����)B�E*�VA�`N��*�
թ�eE�Z��Oo���.I��BH9W���>1���䴌�'�*i���*�9&�h�1�^%9�J����y}��E��N(pi1���$��$^���#��e����\�?o�_ޓJ���-���_O	�ucƼv�i�O�]�s������D,G�$�r��տL'd�uI����$�R����x�#;~�����e��oX�R:�
-Ł�vy�X&8��k����.2�͞~�@2*k�T���Mi0tE�SWm�
�k8���?j�O~����|�mjm<�p��q(��|�0�P:B��G�h����sӆ���d����>�����?M=��V���n��=�W"��.y>�A���}QS&�H���̋�N<��t����-��p��-��dy�%/��8�f�{�6�!%�H&��dh�
L��,��B�{%H�R���=���:�ch��m�Q�E_����ua0�%��XK�*�\&��34~��*2�k3���T_ƭh�镁�#1y4�Cz�����Dr!q�E�
��)��z�**��,�,14N���3V�QC���S�S�T�<*�!?`�I�#�n	C�����>XE�-��47U+I!N��B�FC1���~������rp�l�clڨ�l�c��i�"-T�g�\Ot4ћ����DF(���l*
2�$N���u��U�����  dSE��4 ;T��:�]��nx�8�BI�f~�����J�r&�-����L��w�X�*T��'�f�p�$U�x�M�GI%A�b�.�A�}�+D)j1qvpɧ��B����橄�D��h�����s�_+���1EI�<���.g�Cj��f<�*D�Q{y?�Bq��|?��b~k�P�.r�%�������^Iq�T~�����N)��b�2J�	&=3�"�|~,�-�� '�6��O�{���j����lM5C��a�IӐ�SN膒�u�l&��&��G�J&SEU�� �i�]h<'�Рg�~�A�>s|?�=7,�NP�^1�����C�nt�jHg�e���(�X\�M��檔֜�֛�19��R�%
jDa�c�Ɛ'@�b���Lu+.�O��n䗊�G_	 '�� �b����#y��0�(�~��v�G����*�d��\������Q2y^Ӥ��J���~����""�����R�+?�Jڊ��H~�i��\D�pI*8�Z��J��p���R0�m�H���Q��R�O�[V%tȻ2R%��D�
����b(�F��Ch��2� �r�iLH��W$��?7�	�i=N!>X�<���P�Ћ�t�7J;~�9[u���ɝ(MF�=p|E.PdN���B�R�g�,U���ď�Ê[.T*���+��p4a���>�AE��lt[)���������
0����IEND�B`�images/icons/icon-14-color-unschedule.png000060400000000670152455614210014261 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<ZIDATx�t�O(DA�����\D.hs�����e%���	7.(�r�e#��\��.��RԺn��|�~[�Ӛ��{�f~��ofL۶�u�mhm�hƥ:0`�b����b,�-�3ndk�R���;��؊,�Yڨ�؂mT �oTc+�@Mjrj�URW�����0���QO�����J�y�#�b�lb��؉�J�yL�l�<��a=��J���C��ߕ�K�ո��9�s9�7��x�Ę�x&˝&�b$iY9��\�~���q�ݐ� >+�Ĥ���x�	4�;X��p��xALd�9K�����O�
D��%e3�3�K��6�I���'g��~ד\+�x�IEND�B`�images/icons/icon-48-unschedule.png000060400000010032152455614210013145 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��Zyp]�u?�������Œl�+ۘچC݂���n�㡴�I2�&m��N�6�I�4e���LJ�dB &8[Kq<$b�%؎��l�!�Z��]�;߽Oz��h��9�����;�|���<��<4����0�,(��(��Ǒ�ku#���G�i��񾉣�룸$p^Ƶ~�ѩ/�+�D�4M�l6+��\������|��`�N���D���,ȁl&<[(A	oZ��>�x?�5��:�����h���d2����Y�ޒ��`��|>�5��N�7�����<��2E�Qi�[a�W������٢,�������Z ��k�…��z-.Cs�A�q��J���W�[p�a߃�O ׳�p���*�*�?l�KW0�S���J7��῁����A�B����@�C�tSS��/�РG�26
�~�Y���}�Υ�u�T�獍�
���y�<MMM��J�T��f�7PKW�Z�l����>��c/�I�?As���8�x�VF������J�@��D"ukC���U�)���X�P$��s�)�E��P��;5�OM%�:�������


�b�S�Z
��d��4~�����̼��Z�=�4�h:i���<�*Ӫ����j�g�4]��K��G�* �q��x\��fM
p��$Wn��Bq�l�' ����e��c����$lۣp�ؑJ*�H��NF��­�BE��BV�L� ��m�[�R~�J�l���E誮8�E9?i��{�b��<���5M�[�\�w`��I�Ή@@�=K�,�{Lֆ�JL

��Fñ���Q(A��0c�jH_a�_�$%Z�T�D)��A*zɮ|����+jZ\	�!hq��{b��|�Z���JR]7��6�;8::���y��Q݋B4���(
2�BI�`�A�y=�����	eA<��j�Q��w�g>�:Ԡ��/-����P�H�R�I��yEy`ll��TҸ��f#ю�7�dk���0
(E#�*���sޫ�ŋ���M��mA�jη��w*�����5����U�i��B|��H} K>�᫯sm�s��X�}a3EZ� O�#p��dj�J���1�7B���{��w~gq�����-��RtRT=���!z�d��z���]��?��+I�)#�x���o'�C=I�b��v��lwY�?�M�ӧ{Q#ł;)�9����U�x��)£�\���E
Z9`w�^���s����)ڲ�g���n�F��ݭN[����믟X��t��\��"vF'GM8ԵԦS�*�q���S�xл�F���/���c��X7.����5�@�I��M}�+t�ӱy5�mhp�p��w-�4���{�g�EQ�%�hDG4L㉰�+�jwgv���C�Ʊ�������˴}���v������C�(�vX����˻h����j
��B��R{&�o�(=�,�b���N�F�m3��A����5І"Ԙ��n�q��JG���v��
���Gh~_{�~������qQ	��8T���?���UP8*(�Q�1*i�r���B�Ri�h�ť*��
3��s5U����9��=��ߠ��[X'�'�D��V�D2b�'�i\�zǚDJ'���D'�8��;v\va�e���Gw�E��<B��܀Si��=h?���Pn�d:��q�M��'h]�tu-���St>�nlj����W����OS~�<p�Ӡk>�E��Ԁ�z�D��{boz��*_��ZM�в��=q�����t��S��Qzᡇ�́�B#��Z*�pu,[F'?�9�/4��6_G��n�[iɼ��� �w)���v��LӃ	�+�t�T�;wҹ���ʕ����Z��
����_O	���
������E���5<��$����J��7Tf@�3X@�A3ܟ%�Q,E�
+r뭴�K_��9#�$��?�(u�A\y#�he�Hm$�M�)� L�|������Qں��Y����m��ҝwҶO|bVa��'�����{90r�'�A̲+�x?=���<���ڵ��cV�t����mw�M��E�H��y���-�|��J�+y�5����{��hN�>�R��zn��ښ��y��I�M�����gސ�6v5����g�~��gƙA���Y�Rn&��}�2���ګ��%.�g�=�
���ujX�hV!Y	˗/�d��`gQ��c�q�o(��c{�olM�}i�d�7���J!Fh��_�K/�4�o��8u��q3%z�Em��_���ҸsS��~K�NCs�Ǡ��=ٕ��,���n�����>_}/�Lk�.��9�x������F��
���Wr��F���{�����*�-�J֯O0:;�� zs�nzt��S���:��1`��f͜�t�z�!\ �ڷ|ks�\d�C���U=���Q|��#*��J�+�gʦ�(ڹ��e�o�M�7R��͔ho��P4�f~b��XAr�dr
Oxyx~v�z�j���7�ͲJ`�����Ă,F�p�[��SH��AE�Ii0@$~��u���ں�{eP*��<!dZ�TG{{�'����{n|�}�^�������O���>3��c���OMB���l	���P薏�yG��n��? Zޅ�0���df����Q�-$��Ffg��^�F�E�Jƨ$L�4db�D��y*�-�tc��;�
�	ʒ I��W�|��.$�3�*��9�q�'�}c��At��O����|�T��B�k):��h�&��@�kp���M?��
�:ᶙ@
ʋPϞ���(��Lyۡ|��R!DjG��dh��7��}�|B
�-<�?�g}Z�l�׏=��B��{�w7
K���c�˺}��"PQk�ڶɥ?�=(=�>����JI�wb�/{����ķ_�p"I
+��hk��7��ԃ^���ܦp�h�\� ��,i֝�+�_%��AAO>/hnC�3_�ȹi�k;!��kd�e]���Nt��,Q�P�d��•���d�!��Rl^&�#�nG|"{ʜ�I��j�-��s`�"�*V�y�R�ڳ�~%Ȇ2ÆG�.��z��L�(�x�����۰�Ï	�@�;�8��k�`�����f�R
C��%(ޖ�ʪcX��`W�`�*����P��]
�
�_~��ꃻ_T�3�T*;�%R4�w��%���|K�歂�wlq]Q�v\�b
����mm��=����7R(�o+r����=�OL�LՂ�'jA^0�����������Q,��~	�SD����K�j�q�?��
���b�
��D8�&Ba%i�<d(q�QU�V�d̋nYc�|�5��t�Y�*Kl����t���\�
�F�F�`�~䧇Խ��;��i��UM�-T+N�ZuANά8E�t����GqӲ<��<ŅlTE��XLo�'��T�љJ퉸��'U]D��.O#_V��8ҧ�O8?�le��Y�6ٙL�IDOWU�F%�j;[V��QF�������I�5+�hx[ܖk{0Z(��|��e��|�(��r��B�2���̰�����#`2a۞M�`�1�Vl]a4g�1pT�chXc���s����H��z*�77��9RL0_4�Y����(�l�O���'�Yf܁,&(�l�^�Zv����_�1!�<�b����m�Z,Z6$, +_�t��a(QP��QCW"��iJX�DH���z�E��C6Y��wuJ(�襸/�-T�em�)0���} �D����Z�S��6p��i:%�ƹ�V����M-�|h��q�`E'���P���
Hh�i�cEH�Բ��,��^�&�,��se��y�q��IA�X)�/��W~��ܩ
T�Om�X��� �˅v\�u-Uu�cB@��&yOQ`Z	�D�B�q���\7�&�~�$c�kI�ϑ]�@�0yϭ���0.�o�ޙ�IEND�B`�images/icons/icon-32-acyprint.png000060400000000323152455614210012632 0ustar00�PNG


IHDR  szz��IDATX���1
�0�a*C�l�eJ!䪥P:t̐!�j�$୍V$x��Y(�/|����_����Vgd��
��L�l.k�R��'�r+�1v@D�T�Y��m0���ݰ�D�ax�eYå�����s����j���fiՑrE0$�IEND�B`�images/icons/index.html000060400000000054152455614210011121 0ustar00<html><body bgcolor="#FFFFFF"></body></html>images/icons/icon-32-bounces.png000060400000005407152455614210012447 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<
�IDATxڜW	tT��o�7ۛ-�I2�BK �F6J��B�=i�j���豧�-�Zl�AE��H=��qiEmD���d���2��d�Lf_����b�J}'�y����w�}���RU����A	�
�9��Q��{8�8Tו�?x�-`'_Tɤx�p�K��U�t��=5?�G��Y�h��#ãp�/�����.�2�O>�ɋ�8�>�)���o�y����`��4Eϟ_R���+��=��0�(��y�㐝��uy{0��+@_�O�YSV�j���/ޱzi�B��n}JU�)P�g��eu�*+E�\�~������Y�+<��	vfٝ�S�{o�E���C����m�ß����r���>OU/}��%�"�$�3x{}0ez9�^=s��8��@	%��F��Ѫ�[�m�fIVV��FU�%������F�z�e�+��Y�WR^^h������Z�(�]\V�#I
���f=Ē��Ɓ��<��E�y��\P�P8�GN����9	��=��㽃�@�IJ��A�>��ЮOa���{?�g`���0ꚴ*�7��n��eW��h�}Aؾ��QY���2�YzCuZ��T��Ea}3&���x��=́`Ց�%[��KҘ��
�E�,��|�ֻ�=iso楾�Hx��J�\��z׋�>x�҅
� �N���)DE�^d�:E�7�xvӫ�|�u{�b�`U��{���ևr
��,�y���s��qߺ2
�������O�?�O�?�%_�]����Xld�J�my������e�Us�`�>9pX�5F��4_����4$bIRA��h6��p��ݞ��Nu��,7I��\���Q�
����l��e�B��\��C�a=P��0���f�h�x���M�������3H�p4X���%\ _t���TZT�
n�;-�Ie�{��0
�=^�|?�j���p .vX�ڵ9/0�7��|�x�5*K�88�~v�J*�`Ym��lj’����@T0*�砽��~�8v��U�W���)���"}��۶���t�p"��Ȯ{=?�'O�:ʨ(*�I�����K/��um�~E�������7;�P����l*��̲�j��i��ik�'�?y�m��J������A���x^g�Z��al'��_����D��@������כ,&�����S��_:ǹ7�@̶Z
�aF���n0m�(Z���hU�ź\�`2�@�7���羞n�r8�`���y.	��w#�ܰ��=Ws�th�*�ؓ;a�b���F�i�AoB���,�<.��������4$		 4%���s�CY�Ay�}wF�<���h�]���k�2����n��c��[��lŶ��������hH�ޡ]�y���ЊXc�';��+�k"������l���+05˱q�ƛr�F°��`��m�& ͩ���v�A�G��(ɸ �/�!��Qnw�:�W�Z^	e�
:��p8��E�U��U�,��u��a����H�>�8s �e��0>6Z��f38����:��H�4�FG�%��H���v?YF����f. ��fs���/:r��;�ܵqUMwUM��T"��H�Z�	Y����0�����4 Dl�zKS����9$!@�Eњ��IK�����i��(�J�To�Ŧ�'��D�]ow���Jg�K��̠q�@F#T��L&�DK�~-z��z�t��#���%�e`E�3�2ru�"��(jޒ��]s��{�*�-,����\99x��	��E0���.҄��ͬ����"M�Ŋ5���=`2�����46 �"��H��.�����"�'w4b]|y0Ow�w�I�iϙ�X��dC
���N� ��)1b6�z=
5
�4�nt�UӪa���O����<�B��f���h��r"�������]���Z�N�v�O��RŎ�B�q�f3��
�^��|�=�B<�T2	yZM8G�Q��"UI��x��~dtd���_�M	�x��{��S[7˽��e��.��$�H����E����Cd^���8���O�ɨ-8�(�!�u�d��@[G�UQ!��=��0t�}�i�;G��(!4���2�B���RF*u���?^����lW�R	����[�,6�&6�NF�<X~������GFC�c�h�]��v2��v��P�z�G3c6V����b���Z��mE��kR|��#7�E��il�-0�'|�������y8�s݉�	eF���������ٚk�[L�]	e�����6�����$FI�WW9��"L�Eo��pC�g]�!���X�3�a�>�
�+���Z��c6:���s�Tے)���.�L���h5�	�tp*�nD��,g6��|2��h<ހ���AD�#�:A'p�%�rma�gU��e��h��N��
�:�Y���x82��c�L�t:Š�9�:�N�����ʇ
��b�oRq����&�BFD�mpr�L��!���s���8���:j����(��&�����HƂ��3���"��_O�3�בo��J���q~���T&,�¹
��?��"y7��0��`hl��oA��IEND�B`�images/icons/icon-32-edit.png000060400000002504152455614210011731 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATxڴ�kL[eǟ��J��+��渔E�6qq�,:���	_������(�H�C3e��M&�T�mj�\§�(&�S�Ж���<�!��\Jy�'�=���s{�W!�177�����|���z=0��Ek����G��:p�t�p/��@@�D"�����L
�D"Q�m�x�ާ�(@���kBB�h'"f!���a�bq�N��$�{�BhP8P ���^��ld���Quu����������0�vc�ř�{￉����5&!����X,��n������QU���ʊ���	aX����Pdv�[���L&�)J:��e~������c�)\��JE��+�b����	.j���𴴴SF��K��I�v�aqq������y����J�'�������g6��1`�i`�������jA@�23+04���\
�P�8{jJ�F]


��f�KII)_�/ܻ�_^�e�f�bL�B
�����"\.�"nb9��G]��K?�K	n�k��?spu`���XE"*,�s-�B������墢��p�dv�vL�^��p�\.ԹVÂ�j�֎N���ᙜ�,u8�D���T� ���C�V[Ee�*��
z
�[����.$�­T*On�!Z��iD�����3������Y�12*�J�%t`�Ʉv�c���(������V�og����F0yC&e`��-�		�p.�n���c�?
��R3Q�J(�ρ��{�ĵ�C�����n7�����`�"��j�[��q1^>66vc'��D�<h�
vl��p�-�bƄ����{��~-���N@���R�VQ;�?z�o����*�5e-	=w��j*kf2���o���ܬ�j��"��nV�5�'���R.������/�&���E�y�f_�Z���v?��~�x0�3�\KR[\�
?�0���R�A܇_��VN�twwK�9ϓ�pǶ�ԝ��Ғ@�(�=ds�k��@��o�W>�X�YZ�t��dqA
�W�;�t۽�KA��f�	gwT�e(x�_+��
��;^��y����+�na�})j�Vhll�!555��������	��}��!� �|qv1 ­��Snjjj~aa�YS~��|��S?�Q�KX�s��������)L��
�|����ߘ����:��@K�����|���PP��n�;�p�C:{���
0b�6IA�9lIEND�B`�images/icons/icon-16-joomlanotification.png000060400000001353152455614210014677 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�tSKOQ=w:����<RŦM�č	#Kj�1�7��.\�a�
�]���]�u!QZR�����`i���t^w��F�R���{�o�{��%�e��t:�ws�q�,����&�W;�c	���X�4?�H$�LLLБ�Bj	�[��3�I
8���S
=��é�)9��ٮ��&�&���,�j������j�Y��3C���P�C�0�O�k�+n�i�&���kb����>Z������ �5
!�LN�K����YӴ�Qt��;J`��H$��F�����a��Y�(l`�,�|2H�ڨ2���d��gq>2���l�\��2c�#���p��s�u�V����eP������h��rɀ��
v~]��M	/=�K����f�O���\��Q*��3�_�f�彠)?sI�Y5��`]�FO�-�4�P(�ȣ$�0�'�W71w�.�����`L�H}UUe�p��:V����h������}x<�L_[���9�!I�����+�d�x�PĵK1�8�$�l�MUxޕ|�'LO��f2�K�;�n��,+E�JEQ�-�6����V?W ]��V8�T��!���Bט-.�O�r��߃$��d�D�k�����ڢ0Y�
�q�K�z%C)��{)!���IEND�B`�images/icons/icon-14-color-acypreview.png000060400000001134152455614210014274 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATx�blhh`�c�~۳��013020
������?&X	�d@���, ��O���x�rr2���E~�����3��/0�eLD���d/�˻@RD�!�Ɇ�TK
,q��s�9w0�|�!���O�y6"kd�k��fr��Ԕ�����*2�I�n_�x�$D��md�bg3baff����jX����I�Ȋ�0012*bhddd��?�&d�������€�QEV�/�q��=���o�@?r
��bj�V�?�����s��ᚏ��#�JVf5�m
��M5U���x���m9��y!>�\�e�s�ǹ/����~����� "�g���/����K
���cp13dx��#��_�X���}��m2L/ 	���p@���@�@SA�xΦ��@�����;|�g]��CFX����?~���\�f��F�6��Wj�i~���!6��ܜ�@��LD�W.N�	�0ɳ�3���IEND�B`�images/icons/icon-14-color-tag.png000060400000000645152455614210012677 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<GIDATx�b���?�_I�f����g��_���ǀ�Nig`1ą�8�̴�N]�	��������0|���f�F.N-Y�h�_�Ox�-;33SH�f��n>|�9Y������������A��$�U3D###P!�v`cea`���43�3M5Vn���YY����@`�E�����A~�UVk`Dl��ʚÜm�5�)͂��6�Z6p�@��&@/�D�ky�f$�b����f�&�H�X4o�%=p4 k�E�?�5�Y8��B �h崮��2IEND�B`�images/icons/icon-48-import.png000060400000006355152455614210012335 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATxڼZyl���1{��ۋIl �*iJ!�#"(-�rDU/*R��
UUU����JUUP���*��Z�8L�ı�	N��{�x��73���ׁ������7�}��ޘ�_�Y��qP����}Q(eP@
	�8�cԸ�]63`4�&$���}��8��c��B�H)�l/i�2p�8y�-3��2�|.�}���������w����k�璆r&%�ML�,��^�&�D+�G	dHRx��5r��Ä^�+�@b&p�� QE�Zm��{�4�98f��)T��6�;C�}�Y���>_�2�%���ae݄��&N	�9�z|�n�WJ�����3Yh\*�Њ�@�@�<�����W��_����J�  ��\���j;j�����w'��CܞC=(=c����m�"h��Ba!��d�Qw�Oq��88?[����W+�bꆑ��v��{5�����^�*�G.0#��g�F�Æ�|zz�`*��n��Y��S�<�=���H|��CXr�����Kz�n�&�9�~s��(����{jH,��lۺ�D�ؑ#Gֽ��+�t�v��/'�S+;���$�<nh	�XF�q��,�[�z-4��O<�oYئ	6��<Z#���-[�_�~���|̗\S	HX�h4�=Hl����85�.�pW9ǁ���*�A	0ꑛ��
�9�v���D+l߾��R����ǿ��
M%��hNh�
_{���z[�-����@6{�7|���h���@3pMR#BAIl۶m��ի�R(=��2���ǔ��*��:6h�EC�{Z�0j�􆡉$=�H4Xb�yқO��NR���x��X�r��l�/[�%v/�ڳ�\ 3��#�Rpq��r��{��8���%��~͘� �=�U���"u�A2�|�\.7���X0�y�;p�H��45��5
��i8vl
9P� �P��WB2�&ޫ�D6�H�1�8hG�r�����������#Hr�֮��ͷޚA����:�D]kߍ���Z}ԂJ�BB��_���	�Y��W<�T4B=�/z?<2G�p4X���+ =7�թ��[Kgtd2��7w��[�X�˒�G�#����m�Ul���!�>9
ǧ��&��U�*�)U�attZ�q����*u���$Ij������W��F]���A���M�c�Ym�Y�58���Γ�\-�ǭ��v}��"���P�R���>����})�K����LH��P�p���R�#2���~�lD^@��D�F6�_��~D�^g�E/X��mͼ!�J��ʴ{%@��y�t�G��9�["��b�M;���
�?h ��S�ϖ �B{{��B56���*P�R��):{���]�$���R!�z�")<$q�S�<>1�	gΜ�zZ!�O��g�\A�uy�C�< ��:.��t�Q�{S/L�=�K܌�J6��s�z9t�&�|Qձ
�<�΅�[e�J���V:�u#�R*��b�}
��%�����a���`��P%�f�]S��3e�$��BHX*jf�A[x�،/lJ���>���C�d��y���%��ΧX�Y���$X�l�[����0�(ú�^(�64����j$�
�<R��@:fy�@��[���u�?Z��	/�3��AkkaˮI�yl��4r����L�K|��Lv��]�A0;��⭶�|��4���<�|~�����P(�UD�����ukŠ��j�$jU�O���@�sj�����v�L���	�d�������y�z�(\v��tY{�����K�aj�8�p��p�W� A	�q�����C�3�nJ�(s]
���\��N{i�cÐͬ����6L;	GO�����-s
�~�zX���{&����G����M��7^�Z��mu��W#˴@y�l�l�a�Ku����@{\�s;߅w?��A�O_������"�	�h�bAOg=��7ww�~�����Y�6�G��nh��%�������ol��.ꆏ>9	�N����,<|�O@S��Ђ@�#Jx����w�E�S,arrR�N�p��mm���W�~0�TF�1H$��+��
�汊2����0��@>_�ӧg!��g����;������߃�F+ܧ{���q:n&u�\�Ѡ{����VĂ'\�r������
���*�d۝�Ŗ���s^ƼN�M^�����B[�~2�{��B�y(ߙ��$̣���tMQ,�*�6�e�DՇ���Ā?�p8L�^U�E����r��x��B��'�j�M��z�O�X@�*i�xmA���Ϳ�Ц$�Z	9I��TJ��՗G�����s2�L���|bP3�k�Ӳ�����%aW�o����W�f��aÆ%�4֮][]/x���|TH����Ѫt���nV_�Gu��������,��5�p�	T�z*DZKGD�GP��"�gf
88���y���uA��������/'K
Fb�@<�s���,ai{$����h2i	����<�w�P/i^�u.�*���@tSF�'�� � ����2�����"�$�U6��s
�O#j�C��>�B.����%�(!&�2y0�C �*Oq.l�^��ZHHzN��O�:�|�k0~��j2����`nO1WU���絁F���OD}��?�"�CS	ipi,l�D�b>�������"�����<�0%���ĕBFR�]��3M��,�$�
�pHDcq�k��-��P_k�����B��������y��ɶ�/���|Z��s�y�Dv�Le3�)�8�f]W9T�3L��b�.
�3R���xq������>;cL(ӫp���S�ų�Vj�sO�A�#z�$JQ�:�:q2��Ʃ|�J
N�\r�t��U|����U�i��!�!$�*�
�h(�c����8.$I��\0����;���`n-O��{��|~����+1�[e9�"�L,M�)Ӳ��x#C�4��Yv
�,�-[e�ul�)#��ST9�4.̄`�sV�D��uF��{�-�\]�#�z�'��*�
�ޔ"i�	���WUiJ�ŪH^VD����:���`!@��5AIEND�B`�images/icons/icon-32-joomlanotification.png000060400000003321152455614210014672 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<sIDATx��W{lSU��so_{�c��Q��`:�s��s�eLxLCP������bb��"�L��85���=�ԭc��ڭk{o��sn׺�F;4�_�����;��4M��l7��tºu�F
Ȳ����w���6݈{䰬��cǒ��={��
8���۶�
@Q�Q�pV���t:��TU�	tm_�_��6nVIe��<thգk֜`{F�1 	��.�A��d���h�O�h����/�>�s�X,�˗-?�Ν�(������:�N�oq�>)�N{%8B�)#
�Λ�#+�'�޽���&�����ԗ���n�Gtk0�����i�ee_Q�'d���2��P59~*q<uu�B�3556Rw����ܶ��'���6�p�����dZ�]�1uQ\�I��bR^��pF��GnCC�(!�LI&�6��P_��aϱ�*g1[�rA��B!��x�$���Lc�����7a#]�N�B"VѴo�͂h�Eml����xt@Ƴ��բ֜p2���@ff����.���������:;��B���O�¢G���A��k�hc4�{�O��q�+,IS0���h�-���
��[�W ��&�� {��	�W��D�p��Ȋ4j����d�t}>��ƙ�"���/9{ro�XG�8��ծ(��Z``��nmV�gs�6,�����@�C0��`K�F�H���C�A/H��ߋ��}P�� I�M�`�3�+J�������Y��`���ݍ���Ȼ|U�q�Z�b�����(C���6�4ǯ���l*���gF,s�	�5o@�ap���g��D�c[�����ǻf��R�Yg��T�\dN���=a�a-��ʗ1�R���E���AM�%Ks���G�`ר��������,��\�zi'Nq�/�A9kF6,�B�����C�jE2�E5�2�L�$R�
M�ki*�Zp  �}�����[�;؉����_N��N��S����Zx(0E0��0�J{��u)Z/����#�r�ƍr����R�
��5Omފ�
{q�����MV/+�l_�x�3=VI���OK�=WY)�A`f��i��C�᧷����{]ݾ!G϶Q�QN�8�x�P9ι��l�V����s��w��,�f%��?Z�t����~�1����c�eފT��!�Q0�t:<��u-z`Ba��ũ��\T��C���z�%�,ue���W2u��1�Lǩ��&��#�X���@z�
�F~�
�)f,�3
�w�3s<�-�ܡ�]̒oOTMQc�#38o2��I�dk��!�L�ͼ �|��"��Jg��U���O�3e~�.Ǐ��+"dr�[{��-��O�;j6�i����§
f�`M���6c^j*�m�J�((p8	Ox�p�M�qh��N/�ه��%.KM�`����BL�d���:Du���=�Ӂ���J�A_�cp ��>
`�N��	�&�Hx��A��b����V�t�3�":1P�q�Ɗ?Uc/G�VMRdM�e5�q�D+b�NJaQ�c���Q7k�fR�P"U)��/'��)!*�|�	�o�xm�/bCu//D^Pع�"v_"%��
���0n�w��oIEND�B`�images/icons/icon-48-acylist.png000060400000005202152455614210012461 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<
$IDATx��Z�oW����ً��%q\;v�6	$�JHT!�-��@^�>$��H�< ���H�6�JD���@Jh�usqb츉���z�;w����z��%� E�D�;s��9���Dx���R�_/<�…
_��������<q�{���T���y�P?V�@��zz8ܡ�j��g�~?M%���f~4=�C�WQX����QLNN�]���8hoox��G��#��!	��AH�%���Kc����]
��_�������MW!����&��4�ɭ��l�X���:��m&�uds%�2��=__��l=��%۶_�w�Hd� ��0�UUAHՑ�.�'�d���e��D$�BD�`�3�2��*\w� Y2�e�U��ٳ��ƥ�/����������f��tqz�
��=舼B\���A�F�	�-�[6����3g�H
�OOO�C���5
�"E���C��u��&퀌����ޅ�y���T�U��f�����ܹs}---W._��e����Jag	A&"���$'#�.�B/4���,VWW%�Z'022���>Ih5]בL&Q���F�dN�8������7�F}��B�ݐ.P���I%{h%�Lh��P?b�:;;��.͆YO:�m$	\�zaS,e��ÇGS��{O�>=M�%�bĊР�J���*T%OD�p�"B�}����xQ�[�B:��;7K��������qh��ȱ�W� �I�J���
O�S�ad���Y7�L,//6��
#j޳�zzz���%���b���4�m�
1�*��GMnnO*@�A�rX�4ɰ�����*"�s��_H�B��&�Y�\h#ՆH��V'�;MP��g
��8,����eל�
�o��3'd*Y��I�T�����=���@�J�=�A��0�&�ڙW��Uus�Wy�$�L<�S=j~$����G��X�/�.�x����EÔ�[��)3m�,��#4q�e�E{�~��i�uj����>���Xih;e3�kݦ���=T੔fK@��FK�t�����R
�T�+r�����ٶ���Ͷ���SGp�q
E�Ł��rl6����#.P���"CCC�����/���ܞK��-L٩
���
^����"�߿/�W�
�6�>y�Lj����Od�T�<Z�/��t���q���� ��Ȼ4��6%ze[h:�D�^G���������;�x���E�iD�I �Q�$���D�<#�ɀj�M*Ą�M4�|�}N�D-��?�ގ(�!A��Ibm��w�@Q�R�q�>����j�T	�k�G񧛏A�����cݘ���2����d�Y���s��J���[G��$]D\W��N
��,
�S�Aꅠ�ܫ��h4&[g�
��t�O_�*�k���FiF 
ɨ=��{��ʭ9��;�Dvv	=����Z;?��`mnĩ�s�Bk�$������Q5���Ƈ?�#�r
N�ڑȝ�d���û�CX�vU��u���"��~����:�;[ڡ ��;����dz���*���f��)��FU��^�{/��G�?Z�1*^q��,,,�M%�?��n�N�.�0�r��+��<uK�a��]�D���i&���mz�@��\�!�����x��V���������l���kU�9�����YʆK��RLZYH%4q0<�J��+��<��民�e��_�7�Q06-eƶ�Նc�v�i��L8s���*R��U�\8�y
�M�I��-���w�B���~�x���z���UD#��)���[
�S\�{�F�j�xH:%0uS�K��{<�f����U�'�Ib����M����o1�*k�5x�x���A�sB�2��a��JB-1�(�DÑ�+�(e���)8��N�޶J����*p�TRH��U`ɻ$���S0:�o�qmN"�[��9���>s(�V[E|tt1�
F�
)1�$?�����U5~�Gf!���M ��=�Rř;�w��������1�͓�(J#���
��{�mp�%���^^
Ņ�R#�z�B����7�F�.Ba]��#j[$�틵h���Ģ��8��\��`|�퍡!-Z2�b�`'�E{�(:�ps���c]���i"�i��V��5���۵�x�>��n{$����z]���4�h�)�r}T{���d����_JT-��|.���r6k/�J!o'�?g�NQ�r�T抐R����(��������D�W[ZB�UU�XJ�*�W�3_��yQ��������W��8�+��y��s=�u=��e�V��;��,�S b�F�]�ߴQ�3���-�)94�%�9�g,�,����.
*U]��):�ORɐF��FN��U�@ThD�V��)E�*�!8��}���Y�`H�I%L�q-�5�YG�b��Mס��g�w���6��ٶC���S��H�-�|���o�	Ua:=��X�%�����A�JB�u}qȳq	�g�߮?��%,��<��v��g��|���
�����IEND�B`�images/icons/icon-16-autonewsletter.png000060400000003141152455614210014071 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:759B163168D911E584BCA5F2C79B072F" xmpMM:DocumentID="xmp.did:759B163268D911E584BCA5F2C79B072F"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:759B162F68D911E584BCA5F2C79B072F" stRef:documentID="xmp.did:759B163068D911E584BCA5F2C79B072F"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>����IDATxڌS[Ha�vf/�{񲫮��.&��L�솂vч�Ȃ���P���EA�TP=��H��mf�zI�uݵ���3�s� f������s������^�ò�mooVϬ�᫉���ؓ�§�X�4i-d0�5��$#��̸����,�����`�?�(��#$���A�!>o�,���������P�ZDIq���dqɒ����ݟ��7��&�G��!�
���g~��[��G��V����P3RM
��!�[2Y^z��vi�����{�F:��������^�e$�|�e�w<jn>U�5?�F�	���VJe�����������%�\����.Ʋ�v5��/��φ�#�@�	r�</�z�by�E�v�n��"LK�0�����	��/��`�[ 6�6S3���L���h��]�R���<#ڒ�:QVb�(o�Va��~+E~k�)8lX��F���ܶ�k'J?d��^8l��Gkܴ�f6���n�k�aŜ�����i�}l���ē�q��h�k�o+thS����?/+�CO�j|A*�h7����C1��x��@��=^��]3x�b�B�.Ŭ���8�M�&R!	4!����K����8\��	s�k���ܜ6\���/��b�m�9�I���qP�$��:�[�(�t��/�r.�G�$�g�;NIEND�B`�images/icons/icon-14-color-generate.png000060400000000734152455614210013715 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<~IDATx�b���?U�2`l<�5�g�kO���#Ú�`q�ffVvV.f6���	���2,�}	��kj�/* ����d��ǧ6�Mi�f&d Mܜ�b,�Uq�A#���BJ�����Ո>~y� ̩��N]eG�?~})L����?�8\��N C�K݂�??���!՜pE36d����V� $�.�~d/`cEh<qe=��sz.(T��I��r�ܢl,`9Ph��4":���q�$�s�1�.�gT����/xT��q1UF dbbb`�����?���®��ߟ����a`aaK��Ϡ$e��*s�?P#�4�0,����߿��D�#�&����C����`�Yu/Nv*gIEND�B`�images/icons/icon-32-stats.png000060400000004640152455614210012145 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<	BIDATx��W[�dU]��s_U�U����@�DFbD��A�&��A���0~
�0�WD�"|�C�/40���fyL���=�U���}��:��{zf����J�{��g����
�5�ˏ���#ͯf���46�P9J:�X,"�����R�A��9.�b!ҷ�POr�3J�^ϟu\R�n�<@=�x7n��<U
Wg�ޟez^�l�w�e�LJ�n�~!��q����w� �K}}���ceg� ��}��餬����{�����4z7-� �P������4�`ȫ��Z#�u�0�.l߯|wc-~N:��eyi�	��p��_w�ɡ��h�#�Rvf��xCz��6�Eq��Ǟă<~C��(�3���;C�K��)~���&�mɊ�}��_�k�T;O��^�[o�@�(�h�_���g\�u�1�3H��y*�ޓ�8����W�5�z�r9W����\`sc��~'Wx��p���,T�=��W�)S���q���TZ:Y��W��~/Du��g9??��P�
l��$|�A��ci���OՑ&!&f.([#�$�Z��I��{�%��
�`��M�P���I�$�16>�����:�:�6;;���Yr!���*j��y���j�"&�Ѧ�d�8la�ǎ�Vn.y{�f�gJ� @�B��c�fHf�OI�?��S���4��H��Qo�׍Q(�0>�B��E�(���	YDN2<Kd��[���Jp��(�[,\���8J��
�U�	��[J�Tq��Hr�V7�j�y/�¥
G7��s�9�Ls��0F39ad�fF��`�����\��(�%�:K�f3�	Ca[
+�7�uHH�ί�.-c�7�<�����Oud��(��N���%k+�EG�*M�m��l�[(Q��̼ED9�NЄW^��)���q��k<����@=�:
����o3�E@��ê`�������Ɂb�͵�Zo!
c��
*C�u�i����~K�5��
��{(��D��b�bS�NKZ�?��#b�S,���	fh6+
���"3^��	�_��-m���~�3�C6qA�:�P����	
����ʣ�徤w�bnF��2f�8���r	�F�"�(��监HIeb������g��mS���� I&�
�h,�V�M�Lo-?@���y��b��6T�r�6Bdq^���'`�'7'f���������D>'�<`���Υ�����@����Y��H^�N'2&Tg����=F�˵�4YG���K��*x�Ow���^��3%vA�q܀麊6�M�������?�v�'
�ͨ�Ik���s}�X��u
c��X�:+]l2���L�f���T#��yfM�P1��+���!���'���BD,��xs�4��TE	�#u�>�	�������!eO߻�=|��|"�μ�����I�@ٯ�ַ����]SI'"AK��A ���0���'G�t�%$�6-XO��i���>�RwuHC6Fw�y��j�r���ۃM�AO�6���W!�س#�|cK�����^��5ڐ�l-=��(a��A��s4�L�ˍ_e��l�6�}����'�?��Pl� �w�|���)X\{�k��d��|j*;v'N�6�_o�jI���m�tY�LU��h��0}V�|��i��4��m�w^�X���P[�{%��/���
vM�.[�Ǻ�\2�t٘�r���:uB��9!��7cs�Gc��]8�z�_h&����`/Q�'a���k���,��Z���wǫG{x��:Z��sg͡E�f��e(?��P������tAָ*�XL�q����[��
�jw�c�q�u�_]idU���L*�緞DL�h��ct�	M�b�D�ڜΟ�P*rҴݻ���ϫ��'����&���4��~,�}�h&+����'Z�I�9�L#c�EP�#�s]+�Tܔ��䢌KY}�`�੿�d�
]�銙��F�����}%��ߓ��E�K>['�`/fP)̠�%��t�)%tֈ/.!'�;��Y���X�t��4��4daВ���x����ɛ?�Ͽ�{#��7���o�J�_$>�:0���������� ��>�h
l�:�R�<@��NWX��i;�
�qa�Ho����lP�
떻�޹�Z��c���SϪ�G�OT��*a�9z�N��
��Z�AO�����cZ{�P��OD�Q?�
S�ɛĹ��$.[f��V�!V�L��˰z����3�Yf�c�q���J�Ë���ؔڪ�i��#h���\�W��H�0
�jIEND�B`�images/icons/icon-32-acypdf.jpg000060400000002357152455614210012254 0ustar00���JFIF��C




��C		

��  "��	
���}!1AQa"q2���#B��R��$3br�	
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������	
���w!1AQaq"2�B����	#3R�br�
$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�����������������������������������������������������������������������?�$��G{��I$J�(��,J�I�I����6���J��qj��g+��X������U�Ұ�P�r���\��L9��h��\�ĭZ�x�E1�~��i63]�w�N�F^W���U�|��F�Uk��劗f�g+���:M_�2W���O�I|�alT���|
�|M[i�rF��2��@$��h	J��ڌ�Z^�+4b��O9�����B��!��
r�MC��?�t�N+�k����xd�`�#w�"�m��*�Z��0���p�ʵEwi��5杏.��׃�Z[��t]3Sk{}��r�h���e�23��+k������ޞ3ѵjbZ�X��\���i�ٟb𪥎$��;[K�3Mk4SE��#d �?�}�◄�}�:V��ټ�ms������_�N^�������e����իz�Qk���Z��ُ�|C��H�ݨ�&�+z�]�k%ս�>��9�*׬Z�S�?��F �r�,d���dW��b�E�i���w��7i3�<d�I�\c�g�Gz���|3}�K�?M��]z���g���#�I�C�%E�Dg
6�����xUͭ�LQ�M$�|�ƨIf<)���BiF
O�g��a��a�*�������Ud�f��5W�T�?��images/icons/icon-14-color-print.png000060400000000725152455614210013257 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<wIDATxڔ�KK�@�of&i�G-mA|`+.tWA��;R\��;�b�>@��译�ҭ��\H}&M�d̍���R�,��r��3��8�P�T@��-��+K��=��߮/�Ҵ�X��4��.'(!��O�)T������iq��i�$"�딡/����88��,)�u!��)ŽQb�8֛����=0J@Wթ�S��M7�^�fҠ%U8�9�\��d�_c�|��O�B����t���S�<�Rd��dhI���s8$��M�m��JCX�<��#94�I
Ql�쭯5o�]����$�s�VK�?�n!;bֻ
;�����yMM��a��-Ȥ̭����DL���U��Y����K��Pj�9^�6IEND�B`�images/icons/icon-14-color-action.png000060400000000750152455614210013376 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATxڜR�O�P���A��+(Ԑ`�#Ί��@����N�4�.�&nN&���	����8�$�X�U�&�]^�{�P(��g�Tx�F��,��pP����pԄ)�&�Kш���T��[�v�Q�l�9����&"�bjD!��RPeqLB��Zw�$+!��m�:+���:�DB�G�($����V�X4Q)���LI���ܭ�cm�M�H&ׁ�J>���{v�g}[�=��7f�Qu�6��yi�R࢚t��h�����L[�hM�x�E��j겤������PJYy�{��z;�$�L߫�DbO�<�b��GW�q��<��	$Q�ou�;�G4�DJWL��W!�&<{���K��K�2���$>��o+q�+n=�IEND�B`�images/icons/icon-16-acyexport.png000060400000006742152455614210013034 0ustar00�PNG


IHDR�a	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F
IDATx�\��oU������=�L^$q�T%R(U"TXT�DɢU� ��!$�6,`��	u�S,Q�$6��V-�<RڨI�{���{Y�)���=�s�8��F����_3Y���YoL}z����By8�֒$	B��!�B�WDX}��w_����7q���/�����,TE��#�1��n����֚#i��w
��^��y���O�>wres���7ۭ��k,L�8���\��ܴ�v�jHc�߁���4&�tX����fi�Ux��t��r ��������F�ekFR
Ʌs�2?=�u��)�{^\�scw�{_� Mjq��y�A����^�V�Oԑ�.�s�9G^�RXc�3��	f&��z���R�B�qL\�~.�Bi�n6ɲ��)�Q��)!��0��ow9�<��lHf4Jk'`�P�#	@��t�i���5��7����� ��i�b4�$� CJa��>}����J>�]�J(%��Q!��>��e�7���8Q�,NUX~r�S�@��R��E��$E�o�:�i��C_0_�Y��[���%z�w��!�c������,}�1�V�$W��2Y����4"C�!����W��<�s|��Rk
�`H]�)W4�)�?��9�R��(����7hk����m�����A��V�n2��9���J%��i+eO�Y����4;���l9����-����f�Zg���#��ޒQūGo�<�g��t��T���B�t8k-�1.φ&��n�����o���:x�םIEND�B`�images/icons/icon-32-acyaction.png000060400000005406152455614210012762 0ustar00�PNG


IHDR  }JbtEXtSoftwareAdobe ImageReadyq�e<
�IDATx�b`@%��g�0a�k׮����۷o��H���ѣ�]]]��u0x�9v �Pf����`�߿���?ӿ�~���`<�4ÍpyF~}�r����+̺� �A��������|||���������6
, qqq��>1<(2a`aaf���b�=x�a�[-��������1��|����_nIA��&���TLU�מs{�Ǫ� b��8������Ȁ�<���K�?�����b���;��������a���߿��x�̙����`�������;����3}�����ǿ��2�����ϟ�/�f��Z���U����˗�<<l�1���$�*3����rӗ/_��fx�������0+rpp؀�V�����<�Sq��o��m��*����;���픓�111�A���� o������sD7�u������1��Wbd���>///o3h5�D����1����kk�B�Տ�k
�1��n������@�<�`���	v�4��ǏR��Ã����m۶�����g0�:��KL��^�*�r�M�I���\7^~a0Rc�={6C�[=��m�`�L s��"&So3���23��x��H�8���G������M��	ؔ�3g���.��7#'+;�,�P2�C�%6�oo�y)0�z��AWW�n0���Xqg�d�o��K����O?�0\{���ݕK
0B�mP2������Ȓ؏,n۸��g��@�	 _��d��oS�kés��r��0���]��i5��������@A$h�Db8�ُn�6�"TX�&���$r���6��9'66(?x9�������������J���B	�y}ko^��`���DD�-��d2yb	F|bd��^!��X�3}�TUUdbb�5Ɖ�{)��"��][K2eb��▖B����dMɺ���� �D|<Y�BGݱ|��T�FM�rĥ�'�芑�(0V�,:;;�V�l�k~oɷ���A��F����'��	X]]�F(�H6���+uE��@Ϡ_�D�2`�MO��e��q`�O��j���t��<��{#����	!0�4�궧��Gzf�De�Q�HF��e���9����uH���DJ�I�,�M����7�C�V##%?�*j�
5�͏��5�rc̹H_\��a>I��7���Yd+9��%>55�Ƈ�q����	���R	�4��W��?�g111G�/�˅;����A���K��H�Z)�e
bpXJ��Xw677766�GY"���XT��I
�M���'T
}M�����T?���:�v��:����dmczp�X��rst�P�r�dJ�.���e�c��{��$mRs`���|'�^�-.-�gߐ�J+�Gk��~Po�����6��m�lFS�K�od}�����WkL[u����-������Fe,[\��>;�&[�đ�$�|e�/�ej�Q�]�hb����L����0�S�mek��:`���\:�x����\��x���{�8���ߣ
K�{(�
�r�Q�-e���nw��G�{g3��`3��tJ��T��W���g�z�]�����҉�ϊ�*�|qnnn�F��p/7�h��(��svK"w���$���<
��>8
�`�A*�Tk��J�&��U
�Y~8�-�=�j:�.x`�ag��ⲑP�|�fѵ��VWW˅�K��"k�����p8�@ �BhUUU%kX��=��׾��m�=&���ż�J!�Hx�H��(�JJ���I���0����A���P�jmm5s���X0=;}:��[!~����}\�XM�En�#77�O�b���xt����>/o׽4q�ZHn�E�n�7�r6l��3�r���ǓBwww�� �|���#8ǥ��M���0N���X�i���{?�5�f��u�a͑ ���jk2�}nb�������=ӰUÂ��e�c^��a��!������<�.��PR���bI�=�A�ӈ�!�jƇ����̒����7!�3��b:�Z ��˝9��;�j�|5T��sšM닰����R�A��B�keV#Z���ņ�gd�~�D�(�T�ԕ.$����I�c�)�<�l���k��A����t��gpg2��-m	K�Q����D��]���W$ԟ��⶝�Ck�GtnyK����rZ�&�+/���B1��0t�	s3D���Y�si��N��n�W[I�M�{����"�`ƅ?#�3�a�%��E�7�n`���w}��ҵDDz]�/��d�ZMJǮJ�[���m��zc/m��F0��9^ٕ��N}���?`�Y�çOep�k��3������a��ry�L�)���#���y&�h�X�F���C�=(7P�l�S�
cSQ���mGi�X,��]�>i8�Oj|7�/+w���Uq]Y-�2�h3r��"�X�o~���J?�dM[���ҐG��bm}>D2*�����t�i-�&b��4��(,��� ]V�5�𯀌	]�4��}����E����fe�d��8��N���_~F�f��9K!���?�
��_6NJ-y|��%����7��eh��-Z
���U�G}�
 ��^�>�IEND�B`�images/icons/icon-32-acyusers.png000060400000005076152455614210012651 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<	�IDATx��W}l]e���{���m��~�k���6������l��@B��h���è1�d��@1`@ق�.`1���G���skױ���w�޶���sϷϹl�H$�o���y�����{~�s۶��0�p#=�/h�,��8�_ߟ�
O��a�*�.�v�a��Q�=�p��ȗ��7nW�V+�&4�Y��y�ۺ1r�
w��#��j��D�C@�P�d��*�jY5��nX��V�뮟�$�@�l�a}4y�N��4��7@(�e_Z��[#ےY���ϗ��L���雖�
izvWF��p�H�l��
��v��`�	�����{�m�*&p�9�9 �*��DS��3���_��J󥳍�bI��,/���:��8|�O`1�v�v���6�EX<S��
IP�=Fj�3h�����	B��5cr)��'�\��KR���u3,��"��s#B*��>zj�x0�p,l��At����ꘘ�b��C�K���״�'��˟��r.9�}�/��<5�tt��C��?��O�Y�)i\��E�8�
�����l����fmE�Q������V��B�W+,>z�ۻ�I<����D�����<�z�Q�����w��-7�\	��D�.�������T%L�d�������i|0z�Q3���O�y{�,ZE'�ю8J�`����ئ�){`pp.��l�4M(��5k֔e �S�ϟj��*��D!`˞08*��[�h��^)�����`1����p#W�n[����C�v�J��y�1�L&q��Y?~===x����s�� �gkG_��N1('�e�h�	c�vm������"�
�\)^�=r���E{
1���?*u4�B"��`~��,8�J8�����߷@D��c�̗�l\T��l��<�VV⫷$�ug1��A3(@�E]D8�F�U3��;�Rə�����h�w˔�q��-�TX�����T���*c�w=���5����霎:��R�F5k�2�c2Ycq{g
<�4�F	�Z�@��0�*-a�2Ӛ���+�S���iE���Y�Ő\WW<Oٸ�ɉ	T�+V�̄~���#�dzo%�cS9d�P���g�X�T��h��4$��X���03�sjC7����_���>)���� �F�|���7��>�;v6l����{���7��g��]+�"82�G��C�0u���ɱ�
o<�K�i\8����e����v,v��L��`J�12��9D�
`GR�Tϡ��;��
�G�'�x�v�j~J)�ݵ���S|��H��!'�3 V�I)X6$"�Q2PE�T0JI�0<�Ֆ���g�}��:!]�ts�
�����N0�@�h�_��
�Š���ߴ��vn�vo�L��B��5�BD�s��L�ʬd����	��Jr�ҋN�\T176�Z��숉�SN�[�9����:A� �ټ���Vpó�Z�xDdc��O:V��Z�vm�$I=���;yz���r�YT����D�o
,�?��BZ��f�\��f
G��z����T*(�(eI���C��С�;��C>����(�{}�keӗ��J��!��HN��a:�)B�( 0-�򂋞�<,���G3�"���UO��Rj�H�P�(,����qiF�b.��l�|��\*�t]'`��O���7&.X	zN����;�		�K�:r%�a:}tcR�]�n�����[��dҚČ�F��a����n�J����I{�C�|>\UU�>
�Ց���>�.L'����V�y�ZL5��������*���Y0��	G�y±uM����tX��\�6֧�!�)P�&�2�@S:��Ȼ̝�����=!i�HD�m޼y�����զEםJe1�����"
��T@PIip_W����80��O#�T��U�(&������buiv!��*
�R�[�毯IfU�b�d����t�����eyo�ݭ�l�U���1�����Z�%M�L
��7G��`�n�sw7-�h��ɢF5�X`y��n�@:Wa�V�4CWU��Q��/}]W�����ܹ��?0P�s܉��[+�57�cE+�TvE��c=�����x��5l��i��?a�M5�@0h�'A��Pw�܂�ɭ΍,"�,˦3_`߾}���8��rLӴ�\��w�I���쏿C��0/i�h���n�����m�Z��T�<u�EZPjllԼ^�m���I��d�<�o��u4�w$	�`,Y�Ģ�%�̀[o��>;91���iK9I����=z�6ʜ,��U�+G�>?4=�ӵ�t�A�/,,PI�,��W�|MMM�!���|xC�M����&�╗����^�����׷�X,�i�][�l�/Q��-�1�,� �:�@��޼X�^s�u��n.Z�onnYu���(v�ڳg��x<�O�-w*�G�?v���p�޽��1u�u=�������cӛ�CE�IEND�B`�images/icons/icon-16-acylist.png000060400000002223152455614210012454 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:5F8D430868D911E59B63AE96A827BC40" xmpMM:DocumentID="xmp.did:5F8D430968D911E59B63AE96A827BC40"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:5F8D430668D911E59B63AE96A827BC40" stRef:documentID="xmp.did:5F8D430768D911E59B63AE96A827BC40"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�A�xIDATx�b���?%���B����*��H��϶.��@�k [��@yItx[�ȟ�����?^���L�D>}����Ͽ?��x��gD
�i@,
�M@|����b3�*a�H)q"Џ��c@�$��"��zl��R����Ӈ_�����Td��>|��S��w?~�E5�(�����?�#�@$�`L�0��Пg�|�1�OE7`�[‡/�8��Y�h��`�������-��o(����9UÀ��D����Ƚ7�iIEND�B`�images/icons/icon-16-edit.png000060400000001157152455614210011736 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<IDATxڌ�Mo�@�g��IC�8.R�G��&Q��T�ܸ���p�?�O8p�)U+4A���h�%��(M�ul��e���d��y��yg�,=NèrQijB��E	eT8��c�[�̻��+$$r82������q�2�P����2"�/�2k�Ĥ�p�aj"6ϐ��08Jq>�WVu/�Q̎�(m�خ���#fdϫ�45�IeF)X����޽[7�2�b8�P:���.NkjΗ���r�曝��)G��sq,
[=Z[�C8�j�7����:ݍ�T2�/Ѓe����t�b2y����4�n�v����^����fcl�fv�8�ů�[50��4�1>7��U^2�_�X�n�e�3ڊ�G׾T���kmO<4<������Sړ�]��Pv����1�-OYG2x�p5"�.�JA�k�Q�ϫ��S3<U2}�0?q��J�f�l[�}���:5O}$ᔈ�k�cT�LM&f?5�wġe�]�
��ﷇ�@y�f�<zfuُ^6�|��0��,�gmHIEND�B`�images/icons/icon-16-campaign.png000060400000002636152455614210012573 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:8843803468D911E5BB0CFFCE655174C0" xmpMM:DocumentID="xmp.did:8843803568D911E5BB0CFFCE655174C0"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:8843803268D911E5BB0CFFCE655174C0" stRef:documentID="xmp.did:8843803368D911E5BB0CFFCE655174C0"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>[�7�IDATx�b���?>�U�GH���@�����;�<~��������Ȏ�U�
`{��+9{	��0��@��EMDp��+��3�������������p-�m�,�s?iچ �3���S�Ïm@W���0=
�
a�i@ٌ�՛�=�����T��3��Zɾ�-��$X�B�HYK	s����������^�����h+W���#��K ��QM�tE���03�}����fpK�>�G������ ��Mm��@�5�
ԧ��M8{��m91nVd/���)��
C��?���8+3#ã�_��:��M���@��J߃���T�`�?�d��7���pq���y-ȕ�4`''���㿧o�����e`E��,�Ӂx=�����W�{���'@�J�@��������� qF�� 
雏?�T�<��ǯ����đ�<�
�F�߂�Ɩ@n��&���X�QR��#;+�I��O$5o`�a^@� WM��@\
��X�1#��L�T�!�IEND�B`�images/icons/icon-16-import.png000060400000006716152455614210012331 0ustar00�PNG


IHDR�a	pHYs��
OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*!	J�!��Q�EEȠ�����Q,�
��!��������{�kּ�����>�����H3Q5��B������.@�
$p�d!s�#�~<<+"��x��M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH�����0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4�������x����6��_-��"bb��ϫp@�t~�,/��;�m��%�h^�u��f�@����W�p�~<<E���������J�B[a�W}�g�_�W�l�~<�����$�2]�G�����L�ϒ	�b��G�����"�Ib�X*�Qq�D���2�"�B�)�%�d��,�>�5�j>{�-�]c�K'Xt���o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A�,����`6�B$��BB
d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(��	A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=��C��7�F��dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8,	�c˱"����V����cϱw�E�	6wB aAHXLXN�H� $4�	7	�Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[
�b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w
��Ljg(�gw��L�Ӌ�T071���oUX*�*|��
�J�&�*/T����ުU�U�T��^S}�FU3S�	Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k
��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN	�(���~���)�)�4L�1e\k����X�H�Q�G�6����E�Y��A�J'\'Gg����S�Sݧ
�M=:��.�k���Dw�n��^��Lo��y��}/�T�m���GX�$��<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��=
���Z~s�r:V:ޚΜ�?}���/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z�������ۯ�6�i�ܟ�4�)�Y3s���C�Q��?��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�����!h�쐭!��Α�i�P~���a�a��~'���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl�������{�/�]py�����.,:�@L�N8��A*��%�w%�
y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L
Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y-
�B��TZ(�*�geWf�͉�9���+��̳�ې7����ᒶ��KW-X潬j9�<qy�
�+�V�<���*m�O��W��~�&zMk�^�ʂ��k�U
�}����]OX/Yߵa���>������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n
�ڴ
�V��E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa�n��{��4���[���>ɾ�UUM�f�e�I���?�����m]�Nmq����#�׹���=TR��+�G�����w-
6
U����#pDy��	�
:�v�{���vg/jB��F�S��[b[�O�>����z�G��4<YyJ�T�i��ӓg�ό���}~.��`ۢ�{�c��jo�t��E���;�;�\�t���W�W��:_m�t�<���Oǻ�����\k��z��{f���7���y���՞9=ݽ�zo�����~r'��˻�w'O�_�@�A�C݇�?[�����j�w����G�������C���ˆ
��8>99�?r��C�d�&����ˮ/~�����јѡ�򗓿m|�����������x31^�V��w�w��O�| (�h���SЧ�������c3-� cHRMz%������u0�`:�o�_�F�IDATx�L���\e���\��ˌa6�hdC��%`0�Ej
�X�
*��P��lRZ(��BR�Z	*$�;�u23���̙�s�}��d���}x.�������#	YB8ԁYӸ�ۧ{�#a��:�GGG�i
�m�[k�YB!ƻ�o��K뇿��`Qj��6�Y!h�9��é�vLX�y��݋k'ʅ¡���*
!���ݟo�x�U�A��X:P�=��:��}.=�5�}����B�{�w��,���<�������������Qȗ�<�
<ڮ3e�F#��@)J'	"B�۽����׫���s�!Az��U�4���9EQ�e����}��ll���r�ܹ��+�|�N�$xb��r�l� Mb�("�c�$��i��j6��	!�k(j(R����?������@E�C��e���"�b��b��/Θ��;��w���U�J&��;�y�l6�(
�g���&>N���o}X}���Z����β�]��z|��U��5��@�`X8�֙5u���<��I���>VC��f<3�N1� "K��q�ʳҨs��Yow�9�}؃��*�1h�QJ��`��$����9��`�%I*��<�i��,�h�ZDQD��(-T��f1(�dby�	��c�r��GzX��P��(�8���^���5ښt�*�_Ԛ��j�j�" �(f6��Z}���V޲���<8t�'}�N��4l�ScT�5P"�r.��|�O�~�@�;#l�E��IEND�B`�images/icons/icon-48-acyusers.png000060400000010573152455614210012656 0ustar00�PNG


IHDR00 �tEXtSoftwareAdobe ImageReadyq�e<IDATx�b` 
v�W������ .L���O�wR���g8��,Q��<X�;I�٬��10������ߞ�`����
汛�g�|���[�nq��^����ʍ7�544���F��ƭ���h���V�,�� (��p���?+#Stt�=c�����~?o����+�gΜ�ϑ����S���fn��Υ����U#�߿�l�޽��޽�f@�r�=.9Fd����ϕ����g�a��[�r)�/�u6�&�	Y����̏�����1�?�cx�����p��
L%%%�A,��M�W�bfx���м�Ý/��|�8-�d�pP\y��8�������wvv2pss3���0L^��!�";Ý\% ߓ��Q��߿gHD9���9{�����%}��������A	V�o��111|��d�*?� %c��`���A�?��_��c���P���εmO�^��� ��� ���@n�7m=�P����Y�����`�/�10-Jg���``0�I�w
�1���A��"ki���Oޭc|3��s����.<
�,�/��po���@�?��fm���^]����/�o�12�10,<���?�)�����c`������'0Uų��%X�۹���[��4�-\v���i��g������?���@�jU����.�`N5��н{�j^�|��ׯ_�������ܹ3������"��v��ut5�*�\"��խ�_���!CH� �(�		���"z�驰T��H�����L‡M��m[���~;;Ng�^��b�p��{���s���o�0�v��.�K���[�u��j�)��өp�1w.��B���o:�*@�,(HfP��(b)\8���:Qd���x-j째��UBC5i����UE�
�D)^�*r�Y�=������u��OӘ}���
���<�P�Y�]�]��G'b�w^y^�.�Bx����h^(�y�XUemH/F �`��݇u����	�B6��J�7�K�c����,�-VE(��[jQ~�
��m�6��C8���H�d��ѻ��×�\!�y�~��'�����H�[��B�t�di��VA�-{�3z/V����mZ_V��w��	����x$5ҥ.����A��m_8���:t�E���uI����f>꒯�������X�D�4�,�YN��<BBr������\.�����Y�!I���B@3��D"�[��	#W bO���M�3���0��p8���K���Q����<44TAR��F��'�&����A�6/��3-L�<�Řq�^��������n�5#��� �jcڪ�������(L�(c[q�UCR�]�80�P�b����qQ��K�?��U�82`dYY�P?��u�17>��T3�Ha�m���{N;&�:�������9�{��<��}�b���^���aIVwV�W�K�]-�aG�t[�=�O�l��1�h��tr�HT�ڹzƤ�"�W>
c�;����O�5�@�^c.�5�<����΍��nV�*�(�������'a
Q�����>��t�c�ԡ0�D�D'ĤrN�(Ж�
��)XkHE�6��8����${�uX���S��t7�+�댏�P"e|�K%�~L�v�Q9�9���_N��B�"���Y4U1�Ne�UP-��D����M�S�_��������a�G��Z<=w��9����5j(�[l��d��Ǖ>�ʹz_/�M)Ex�l�-�I�)�{�wI�@#�eTn6"7E�Ќ���桕�_�WG��]���&��a�����M�\�_
�>��;.|2�#���"6�J|����y�?0����9�d�MW?���䊦ݐq�&�/�0o�zG2[[[{���g>�,�[���Jij:�`+L���"����Γ�a.��4�;����yl��ť�1�� ����"��***��rX��;3�6R����Su\h���8u�;88�ܶ�WEY3}z�H�� ���C^RR��Su�37��
T��|aYyމB��o'x���j������$�aJ�5v�}~�{s��6y0DCC�Q�jMZ�[LP.E�8R��h
���%_��0~��W�� f��
��	F&a��j�H^����j��;;;g=���I�X����?xy*��h��ȣP�y����BB�Ʋ�7vbH��
�-؏�?hB^�!�õ{����������������@>,��Z\PPkUn
�I�3Q��2�������[�Z��l6'D��W�P\�{ͫʔ��kkk��l�U���:����Sx��5<aI���
��s����U�4k:D͹
��t6ҏ�t�~��˶��E�����`XGH�x<o�V&JKK�g={�f��fc2�2)��@ �Á����n�OKKY_:��':�����,�[�ٮ��4�)@{��V�����G�mb!��
�Tt�6U[K+���])u�کۡ����h�::�)v�Uw%����-N�S�Zî�P�aKW��Ԃ�
��P�<B  �so�����q�G�p�dxy���s���K��!�H�W����lu�7���6C�4+	�����51F�M�_t�e��ZJ[{�y�`9��(*ue�(n>>�f�/�
����
I�!���_��)�jnʿP��
ࣃ�����jV&��I�rT����)ǥ3D�V�E[��!��QR,e�8D��e\�3㮻���3d���7Ւ��"' @�Dv�`馪*�E^i�)�~ހ /Wz��{�0����R�,������"����^c�[u�/��ܖ��Xto�}ފ�F8/�
N7T�Ş@� +7#�a�&�N"g�ò{�K=<ᄨTa|T	]�|9U�o4�����z�Oi�9�nE�|lw�<��錍�w��ٳ�].{�	É���0�������8�١�Q�"���:;�Q,���߆�+���2�w�[vN�nz0��y"fi��fՊ��0�z�o��{��¦%R��w
��c_鈫���;��'���b��j�~�����QSZY��و0/�����30�m�+Zƅ�)�i��x{��o��g�4~}���T��Q�����,u�E�-�A�s�����1�4��
��B��͵�R"r�S�ot�a�ܡ�*��A��`�<8�����~y�y���} ��|���/�|�0^}4��O�]�H�-�2���M�L��,,�.�xFq�F�<�B�H�!�y�5e�Ơ=�C׿�>����O���<��f\v�_ޮ˙�*�v��bZk֬1�Sg]ձؐ>�	�֐��ʖ3Ҧ��cg�[�o�]{:xh�����DxF���ГjY��ˮv��X�]让�Or��
�~�ś��I����cS�7D������LIII��v��l������gK|�x��+�[/�ˣ���6���g��Q
l([��9�7u�����Q�U?��n�Z[�ju�u6��ڸ/�GYU0�M8me�LC	[�Ł�iZ,��0��ׯח���4
�n�ZJ�=�ҊV����38
�J��'��!�D�vO�$٘�;�\�ds���Û
%�N���P�K[nw�|>סw�a���i��F�&P~HM�ap�_�n�pR]���li�m�3�p8@2�Em�v�f$��f��=�i%����B��Y�� ��o�ub��e�9����ԭ�?�Eѯ��
�}�[��<���P���S��H^�BI+��;8Ess��ȑ#HN&���+2���ƨ�V�ŤcY�e��
��	?��a]��H�Y�C��һ"�=c�>a����'{�#N3l���p������	i�����YG�_1����w�EJuZ��A�"-��YQ-����$U-��Յ�� ��U%�-����鵟����ᎍ�gç�C \�� �݂^�G�/����s����Hb�|S���uv���G������b��㦅]� �J3���������2kd�����rrr�HH��z}:C3�ǒ$�Sfa�ia�*x|n�� �J��v��#�4��-v*Su���:��0�w|��:P\\�$��Rr|kdgg���g`�����v���}(�]�Eʬ<��>�Y�nj�龮u����z���!�V}#=$9�{�N7��>d�Xm��m�pՄ�ݕHLL<Dww7Z[[a�X���kMMMu|۪�����,Y��g4��biJc�����(��Y���իO�]�V���p�u_JJJ?.�K���9A����IEND�B`�images/icons/icon-32-filter.png000060400000004275152455614210012300 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<_IDATxڤWkl[g~�˹؎�\�$��5M��um��2�":�(P�
H����N�J'uB �
Ą����P�6TM*�%�]פI��b7���;��}�w��'m�m�O~��s|�����)%���X�!P�T�豣AO�DŽS@h�%ʿ�1�;e��VBa@x{���]���s'}��/hS��<��M���K�������]O���M�/_�fӢk�SmN�LC`�͡�T�`4��@��'v�%ԅ�p����U��'K��XD!9��E�i-'��-{�nEFx@D�
Q���'�`�~re���8�̵$+Z٩��	��o���E��^B���j��b�ǀx.pF�R
<�d��B�X���Y�E6P�p�bv���
u3�Om�-3�&�`��1��],D��T�r�'��~H�A`�$}K��B5�@�1ڳ�k���=p�)(޽ٸ�; �P��<]Ӗ��`���]K��n�xQ�-�\�J���G�W�T�����Fk7��Fu}�om�+N�"���XaYX���|����[����it�3AP
<��$�8B3�j��0v�	�U�G([b��`\�1���Ms'�'�.�^��<�P\��cWa��0F2�A��=�Ƈ��Q���,r���1���QԺ��{���w���*��hL�!)$�M�	ג�#dBW��
��K{lh?06����<%1h�@)����	���T��p��(ł�n�w���w�0~��1Xs�*��Bcc455*:OF���]�Qm����n	��O�K8��<�#��>z���ÜW�/q�.�$�T���Q(�� ��7Nb�01]��:#K���ԯ��t�ᱎ6�	��ҩ`��!3�"�:hkzh^@�P�g�����)�K}4��Ţ����4d�֌���Z�򀱍���I3v�m��=��`B�.�ヂO��-ސ��b%��������j��Z�����͂����cM�~�^ڝk޹���c�9�|��W.Z���ׯ��l3"�(ihh�wtt@���
��r�LHw{����q�+Bc��7�=��$�Q`�l�U}���s��׷�v���o
_�L�!��j�K+5!�"���U��#���˼�����3�}�LFFF��W�s��~��p��ݓ�A�7�,:���LӀ��އ_U�!�d*�a,*&
l��:���-�|�񣲧T,�DU���p��w?T�2L�7���.]\�`	��(8<�S� �PT$�o����G��p�^�Bwl�t���#�U�sܰ����A3̀'l�u�^�t:��K�@�{i�?X��]~?��o��类���c�3L��嫠�À�+�˂��p�����{c�Yu���M���!�p�i1����Yn��nڜ������/}�7�p�ȝ[����1+�z`W�X큢���F���>4��V[ሹ��;�R(�C�޻)��w����l8t��ț���<��k)q�Ep�C�����C������*6�0���:��TT�u���=�iz��w3��Dt�1o0��
د�)4}�g3:���)��T�℃��.
ºP;�ʣ��l߫�~�x$�X,�eA{B<�;�$tu��
�X�	nc�w<��|
3E�����%`rb٩�K������~��l6w�4�`U�ԁu�_���6G\5?ƨ�1ծ�9o��o�=U�j�YA��nB�����Xm@๎bPp��[?���-d��
�K��:�'��5{�eڎ�g��)mT�ql[���jG@�4�q �s�tV�7�(%�+��έ��KDv��N�\�?������Lklh	�E����e� �p��:�gK�b�������  �C�$�]�x""��=�(���֖ΡR�tn&������\J5L笱\2��S��h�p]i2�"GDG��<^��ȹ�V9���-�WŊY���U�֪�D	���d���q��l[q�Y�1U��t�Av)���P)���)�ΝFԆb4���H7�\�	��_��b�,8��G��'N���,IEND�B`�images/icons/icon-32-process.png000060400000005311152455614210012461 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<
kIDATxڜWypU�?����o��!�@����UY2�
D�`�H�j
Vpw������vL��3��2AF
��b���H�@��^�ߞ0���;o��9��;��y��i@EQ�S����|����P�L&Ӓe˖�)��;��T/��D����.���EQ�l0��:�y,ˮU=e�Z���M��.]�ߋ�jjk����h4�P���$	���x[�x��:��P��U��Z�i��������иe���[:fϙ� >>�3���hMn�+7/7��-��1dEźQ?���a�F
~�8�h�;w�m���0u�TsBBžP8$���1� �z(/���+Wx�N���ZZZ�TW�$��'���8���mm����>ZPPP�0��傎�UVAS!�x�������9r::����h4
��[>䈢@
Ȣ���f��v�\M�@E��F��i�%��h���,��COO�۷��$��������&�_�4KZ����o(�X�����2��J��ص�+���a?�
��)�a�ҭ0�:
dM�@`lV��Ւ �"�0��D���\N�IX�w����3�V�k9b�<�Inp����a'�v�5pw��5C�P;�¡_+e�@0��o���z�穣G�ԝ;��c �[���O�8�Abb�/�''�:F���P�C�Pq��ٰ�_
��A{b;�|�j����r u�����)3UL���pv0���p$�jp�����}>_���-[�x<:RtM](Du!ȵ炯���<y��v�i�o��aP4
�����~hjj������]@*��JA���ڰ��8��ѝXTdee9H�%���١Qj��b���A��b��� `�!�:|��W�����ه�;�'D�n���񓡭�
�g�
���
޻���_x	�ց��}7�2�g��럾^�lf����ܔ��,}�2u��صk�v�QI
��'3Q��s!��mG>^Z����`��&GaC�p�\p��D�(<��0l,�Á���H�H�����=z4�j[�yBDl8��/ֳ�q:��4E1� B$��3��آJ�Ɋ�p��n�j%�D.������ee�����~d�gnU��!(����n2��ݻgQjj������������͡IK��0��&���Pd�^ ɉӓ�7��>���b�ft�������_|q_uuu*�@'N:y��y�~VT@ژ�Ia�3zhm��W��$�?�h�ը��'O�܆v�΂��I �/o�G��Y�v��Xxܫ;v������Ç��Φ�C�5��ٳg�Y�fs��������^�xq���pR��Zхw�=���I��͚eü'���Wz�ʵ��&��bN(Γ$��ۻ��CUUw���͝�`(��NJJ�pJv���ob`tba��wW<��sK0���z�̤p��-O�v#I,* ���/����A�]K�i�����g�=������մ��*^�h��\����~`瘠�^���EEYt�C �Y�8V���.C0�x�^����
��j\�:��P���9}��=}��g��p;\_h�mS#l��DŽU��L=�T'm�b���\㖰��~����/L��oO�ǭA��7½%%��׼�	�Q{dwP�{Dix�e���x���f˜3g�)3f�
��G�>x�T�4�����SxX�l���^�]��ב^&b�8աv��P*z�7�.�˻���l���=��3��	�|WL��� ;44\�)�!�_U}��ϠS�2�h�E9�Q���5炈���7'�
D�Ј�z���ON��22�&�!�e��p՘
�J�4�L
�v������zrvA�
.i�l\eu�	��7\�u	��W2x^�9�___Wv��ل���C/�n�U9�P?�O[Р��%�}�S��IѨ���Ÿ����g��Q�ٙ K���`*D
x!K���b)���Q&�A�hR�,.�g�U��+KSa]Q���0��>�ޱcǫ.w�:����`�B�c:�0r�Â��2#*���Cg����A����x̑aunNN֐߯�;Ο����Op��Jp���=�����tZB6sĻ�!p3R�c�_h':7V��L�8��=F�9���oc(ڙK��kx���/_i߻�o�キ��/<�ə���=m��D�MFʥX���W�q5 �&@nvD#ZG�w��QF֢�p��azr���oTV��Oϊ#�:hw��eY�)mPc0d�\D���(H���c�)�h0��1!��܌Rz��g41n���̲T�S��<����8äj��>Hњ�g�MSv��`�Y�Wd��e�R����%Q�С��+
đ0(It�,�-��ш4,�Ȍ[�FOی&z�{2��r<B4����ct��Ѓh����uX,k	q�)�@ӲA֩8�Uz$�X&
�"8�4]@Q�nA�������NQT��050���|B�1�8�6�U��lCA�
���k*��&;e�r� ��I�߮@Q�5mF%Y�H��y9�G�F�{<2$�W��؆�����IEND�B`�images/icons/icon-14-color-import.png000060400000001152152455614210013430 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<IDATx�b���?9�DD�*3�0�����O`fbQ`dd`���?ß��8���ci�m��R%�%+z�#4��q��rnbVvvV�2{��%ֆ�ہ��U�辇i����,N~g�H;� �P���������?��܀x�Fv61�3A�2�,?~y���ν@�_"������O�3�̨?�	T��_0��~j�&&f��0~�����Gd)?�0##×�@�~��q��?~��|f������c���7Ȁ΢�V��ll�l��ʖZ�<��l\Up��` 8e�]�u8d��e�>����?��X���ȮdB����o��r�W@f���mBB@�' �?��\���Z�q�.�]	�c������~����7������������*�'�Y�_��2u!#XD�XF�F<ȉ
�<"��x��X�W� ��gP{ۧ�B�]U�4V�
 ����P`��(T��4<�AC�4
��S�
������$�Uƌ�&r�8�I�m��IEND�B`�images/icons/icon-48-fields.png000060400000010023152455614210012254 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��Z	pU�u>wy���]B�
�a�,�
H`I 0$!Lƞ�c�&�v�v�L=��3ݦO��ә�u���0�z2�5��!�$$������ܭ߹zR�$$ۍ����{w��s�w�s��à/��K>���G�}�I����vl��e�$I� ��y&�5��S�����s�%�A=��u�N��QZ~�	��)�R �⮸��g�����nw����,˝�o"��/99��9991{����k׮E����a�[+z[�lUS4I:DQ"D���iEFF=v��Fx��s����r��
�o!2��(a�ҷ�U�w�<�?rol|�:]
[��G/�{.%��k�"���4<<�y�			���V��ܜd�Z��4@'�8���M��u��������?�n?�uī}�.�#.����A�~���$Y���
q�C�Щ��zZ�\AAA���%�#����X̌�֙�]!��E��Y]�I�e�Q�F���i��e�AS�5�����H��{�Qp�������-������E0��k[�l��k!�jwYR����`�HM���|�����Dj@�%��gƌ�[��*�B^����X0_�X9�a��������ȷV�ZEccc���CuTl����SOE4D΋��(z�w�.^���(Y��SsRBt����&�I�˭6M�9��c��:3�L4sf!x�o
%\��f�)���/�3������0���͠�����YB>���1�ذa�w_}��d���=O?�4]�|��z׮����n�#'�B�[Nw�C^��z���72i3�j��DGG����n��ʊaLOOgq�'N�y����GՒ�a;�ѿ��֬YC�֭���<^�u���D��Ǒ@����8���V��m�\�h���:�6��2���:�Mb�1s'��p!����
Qo\m��.����*�ɥd�#G���G�(���Tj���������`Ķ�7oN
l����I�wlM/�˯W��߷�{��{�&�JT������F�6K�I��!:%`�����������2�Jagg�[P(?p,���ݸqc;|\p�
��j�����}�=�\aa�wp�+L�Ox�`G��{�Vc���r�V۹s���&�C5��ZD���	���b����AO����ڞ�&�('+76;w�c)�y"USSS���
�x�}P���H�����w�?�
� �����AHlTEE�Of9^!�S�t'�R ������*���M����N;q�-p]
��w�������ғ,,��
�,�J���YUU�<�Jjll$Æ���+A�J�0��w��'����#�GT(�É�pTb����ёFmڴɤW�/��
8�d�O>�����|p�@�7�S��!}	V�z����d�tV�'E���Qs�����跷�,���D8ՀA�٬�H�y���������I.hh�^�@�&P�����k׮����	�5e���E!
�����j�֭��(9$H�
"a򸵵u��`@/Zxʒ/��ر#�j�&.��
	]2֤v���(�dg€NRxف�̼�=Q\\�r�{�{x�%z``�vrr�^v@�v���XD`�	Z�R5�eC�����J�J6e�F��
<��2r	���7����^3q?��b��������pѭ���5�j1��m,WS���6��3)�S�w����h�r+y��)0<�%�@iGJq��+��ѕ�\��0��M��5X�?��)���Ix��
�@$"�B$��W�c���QK
Gd�����.��;�c�۠��
��OF�����Ʀ���=dz%'1�;�c�$Y�ìaJ�w����s��&.����.8�O���"W�O�D:�䉰R�OR�d��+��B��+�f.�;�f|�^7
`��R=�h�^�sT8��r(rwjj�<N_F��pM�R��
@�-2X�0�I��28�$A�
�8VN��2���S�O)��,�
Z6�1h�_{�	.Z���۷o3�Y�{`@
(q�]���a�"��y�Q
���g����X����#͹WVV6w��/�G�7hP�˗(��&G��tE�ދ�����r�׿�6��x1�4Y�_%.�`��Ƒ�q��Q�(����V,NAn����`���-3��IR��IQpt�n
u�w���\�_������0"��q�4{�������
hr%�/�����^�<�jʪ�9�jSRR��e�6��������Ѝ�]Ɠ8}�f�S�����V�G��a܏�f>���9���eAs��y���99;���}��=rdE���y���񼳐��v�Ǘʧ�p�a�C_�wJ8�Û������3s�'eࠠ�0�f�g,7�n��uuu!��]P�,�u��b�/e�}3d��Ç�1y
�����cz������Sz��,��3xz4�"w��t�gU-�����={�,Z.R���g��A�bJ�J���3��:*�� @�!���ڱ�M��w`K}|0l�q/�ay��P�aO�z���e��˽��y|��ح�H83B�G�!��C�ד�.+�|�7�0��ڻ�v��G�
^??�^���?W�W���~C~�Ϳ��l\s
����q��-:{�,q7�޵k�� ���ls>�r����jg���ʽ_{�3����3�o�S�����/�;����FԆ��g���C��N�3].\8��{���K���(�q�&
�3c��5Ug%}��Ҕʆ�:O{{G��7�!b��E���l�n��&&$��C�d���A��!'f.�=w�5�?n{��A���/�0W�:�@��+W��t���p�a�j����r�z���a�nl|0���}���x���)��ש��ѿ$锘X����9�r���=���h��$e<�甜��?��o����KUr.�0`3>��t��D�/V�d@�~��o+**Zt��?�$l7���������R <���+!˸(:AC<HâC��֗;�1���%���TDVb�"c����"c������u�䌔F=��nt.EO�`C�����ݛ"��1(ҥ�����7�LNN�Ϭ����������	���c����c"&���
"I_eA�9Ћ����_lFG���כ�=����ŕDCuUK�-�l�憡Sm�N��r�En:Y^~��M�j�0]�v�5�\�j�Y��o捶���}�;D���,�Ŏ{��(��65�7�n�r���;E��e)�jc,V��e�*J�+=�$s�&���_mMDGD�G��S������:'�3皽��+!��>AF�Z��VQQ���Y�{�Ν��q��طG��W��ME4l@��?lv�n�H��D!;2*��P���k��"�b-�$
@�
C�~o�h>�`����4ۘ�+�J0�}>�:�32N�T]	����ڬ�1��PT��B!E��Of`��O]>����	��?����jӊ����A"Zl9��D��(J)A+��fA2�dE�$Y���(��P�d�q���a�q*�*;�qq����Y��tC7�@Pװ^W�7��FPU�iM�i��`@U�'�����3��^H�USJHL��ɉ����-��b��h��!ˢ�mo�
�,�A�IIA"A��M0
c�v0>2`n�4x{����f�4��ث�P#R��ӊ�] `Aܧ��<�u��@㓊�C��e��e2�,+d�4��f̼������|�{��#�ü3?��f�uR�N�8�F��x.��0ì�x ���T�FZhNgf6� �4��7����&�E3i�9�£?�3�L��`���M?!���sa
0�@�'�_N�������6���IEND�B`�images/icons/icon-16-newsletter.png000060400000002553152455614210013206 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:6BC84CE968D911E58630D084751E90D2" xmpMM:DocumentID="xmp.did:6BC84CEA68D911E58630D084751E90D2"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:6BC84CE768D911E58630D084751E90D2" stRef:documentID="xmp.did:6BC84CE868D911E58630D084751E90D2"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�]ɨ�IDATx�b���?%���*�sH�� fģ$w`[���G��ZWI🣡�?�������r 3�����ļ�ؓ���vGw�5��`c^�a.����O\/�P��"%����W�\��ߌԄ}_��4�'� ��7�\������'�����Sˆ6��������ץeuv�~���5@@���?�^~k����;��q:P� =��@��i��?��m^:}�M�><���'P�
�q�
kffF�Í���3����@̍$�ı�pt�߯��)�r�=����ؗc�
=�Q`ce�F�v��[,������1�ϿO��{~l��[�躁.�5���'n�����oeKm1N`�pFh�?y��
�I>z�$Ďn��(�ק��9��r�0�Ewа���������t
�L;�����#���'����� �{��0V�)IEND�B`�images/icons/icon-48-acyconfig.png000060400000006737152455614210012771 0ustar00�PNG


IHDR00W��gAMA���a	pHYs��j։	tEXtSoftwarePaint.NET v3.5.6Ѓ�Z
\IDAThC�YyT��U�,Z�FA�BbLDc�uIb�'
���Ǩ�'ESR��m�=��-�\AG�D��a_�EYd�}W\p}}�A��!����9�0|��ͻo��C�<}=��S��=`o�{gZZ�]�r��z�
�Wrrm���w�yG�Tf����#~_�z�"(0��\Uޞ����FJ�r���r���L��I����jժu{v�6ٶmݼq����PIQ�B�}'N�����!&��_����
���kˠ��x�t�L��c`@ ݾ}[����4����*hG4�O�dfnnn@�&��7�X[[�����ӓ��/Qll,��+..�:::�ڵk���Pߨ��G����$���e&�Q�����O���A�QQ�S�e~Ll�L&[�C��b�YYY��ŋ���K��I���GUU����H��M���L��-TS]���(��(555;*:��֭[�m��t��
��p]"��C.<<"��)@�a�
�]�v}�-�>}�|}|���H{��j!U�WPUe��2C)��(& 	�`Rr�0����RQqI�ϊ�J���J������j��|�ᆪcǎ���=�޽�lll��$JLLd$�?d�����L ��ɓL"NW]SK5�J�@	��i]}=���RUu5���Te��@䊊���R��9rD�i�&�aaa\ė(--�����X>�6vj��v;v���l"tff�Ƚ��&��o���RU����i��m���F---"25�u�l9�_R�אz�����9u��7�|CG����*).铝�#�HSj__>/�99��ٳ�¨��V�hiiR���e#�_�d\
���Ƥ:�nB���	���Q�(<�͟~���M��t����p��.�����H�C@��=�ZZ���Q�Ҫ�S����
����FR�d��Q�.����Wg͚%;rę���(=-�23�4�:Vx C�Y�v��A{�������=
�A@���rT@޼yK��� :x.�N�{DZ�c�ԩ�,,,8�g���Dx_�Ƞ�����lx����
�I.\��^(~��a�B_R4P0��-d�#�TC���޷����w⻢��D��HW���M�<W8r�����Ӳ�D���(D�?	BӁ��
���C��"�HI���M�d;�������w4���F#�i"p��AA�%��'{y���H*$���R
'�m�x���D���������'R��v��Q���q����s�5�F|�T@��,�}����c�t���R�gj/�<�(�Yy�޻w��޻'�oݺU��@>��r)ɣ�J"���H��#PQ)�Q��<�	G�{$��J�}B��"�!��g�  
��r9�%,]�F���'w��F"ꈕ�Tt�c59�L#��s���n�S���ظ�G��EN>��/I(f@��ߦӯ�޲zee��+�ɳj	h�(�$)�(�����:p�T�qq��+��������
x��C�����i��Fz��"��H�?M܌OKM�{�Q	�EHa�BwG�Q�O�,`��iՅy�����7��)))<�'�b��+���h��J�������&�Q���A����l��ۓ4�.@���jv��+V+(!��i��V��O"1����7''���{��Ymr""#)��bhd�4��^z��^�_D/̾L���"�Vk `amO��'H�0g%��^&~��/2$�Jn.]�z�x6ښ���H-�Ç�{{{�Z�n��8m�9�(�\��|޾�������
zy���--�1&�����[SaQ�����0|��c/�8՜b�_#d�:�Q�v�$����˜Vupfޟ�0No̻o;fn��X*wwwAD�B�,�	Td���t�˥1�.Rqis��HM���,�:�"t�4P�s�����ݻb���а����o���%�[�R��4��G�Z����0�o&GGGƿ	\C����U�ڂRҳ(&�Ź4qV
}n����"�����VSO���s+���,H����^��(--Ŋ���O�<y1�ލh@X��nZ|�56,4���1����Z�:at����h�����<ҙ�$�in�zAq��t����AO�H�‘9N��nfQ�6���ׁߒ%K�=B@�P8cs�Ԉ.�������<t���5">��*�I.�'�O�h����]"{��_��5��=����z(1)�&���s{��c5��R�C,_ \|zP���Խi]�HV"|Vą�Ƽ�j6�a�O�^&��J2��L���?�aM��3���a�E�C������P�_|�'��zL����W���33$3�7�����.�yQ�X�1�7�#���%�Է��Y&�Q&��I�qF���4kE�g���nO���-�P��7o��x�
���NF�������"ױ�#���\���"!�8`p�?��/�K���Ӥ��4��ShAM4	����̀`x�:0{65���5kB������
FS#�jS���!�1P��i�N������T�R����~4B?����&���d�q
�̈!��rw�%��x�j��c$O���CW�Xa�e˖��>���̙3�L�|�Fa�!��xe߾}��~r?AC�Ҥ�i4q~2�[$��{
�0�,���z	HFK^��`@���c[��Xt������1�w^g'''��,Y���ч����J[�J�
Bi�Y
�_O�_� ���hч?�4�kt_��/��@ >!qp�&>>����;8�}�я0�3;w�">���IV�gs陱r2��B�bh���t�B����f��now{��p.ؾ���
��{����D��ӳ#G�4�1c�tKK˥|&Ynkk���՝�|��V6X�x���D9�N���Ŭ �%1d`B�_=J��ʠ�0�
Hj�}Z�}�ϥ�W\��ծm�t�������f�9�8�ύ��MCi��s4l�ZZ�v�#�`h���h=Fh��I�㽔>p�/&�M�e.dc����pXJ�z�tqq�x��f��4t�3��=F��@Þ�@�߲V��/�(�SJ���A�!
�U� b���u��֊���4(���,�v�`͗���b��%�������a'V-9O���%����+�
Tz���GD6�P/1������������͔���'��ǒ��wY9/3��?��p���-yp�����/x���w$�������Dom�O.�o��O$�Ƽ�VVVZ�#|ɰ��]�|�\����I(++�RRRb	�5��3��yР>����b��űGюIEND�B`�images/icons/icon-48-acyaction.png000060400000012533152455614210012770 0ustar00�PNG


IHDR00 �tEXtSoftwareAdobe ImageReadyq�e<�IDATx�b`�6����	�/.)� **�   ��NiXő��+�l���ٳ�_�|�c?}b�bfa�����U���@��U�~��� ����*�8����%�I.j����(6���E�Ϳ��E�S��_��oO��b�����fFl��dW`8r����e��߽���۷�'L��lݭ�,O�>cx������o_���
���>|�X���=C���_�|aprrB��U*�=�.�����$����yxx@�����&446�4�͸�?D���鵛`
gO�����_NN. �`���d`g�``�`g`eecx��	���
c��'��A���nn���mU�VD)3�����Y[���w?C��M��c���e�!�C�����u�322\~�a�g`O���1$''3D�9�@H��”�Q�K�=J��')�[��Y��O����A,'گ��`|�N��Rdx8<X���omkcD�T��$��ڼ]����
/���� �������Ɛ��ͨ���Ƨ���W�]��?P'�*��(@�������%9�
��=����_~�a��~��	������$�������ɓ�y>~e8�e%ȴf͚~>~^~�����{�`�s��7s�13�/x{�r8O\�z� H���?8�,�8>�c���Cϖk@�3�r*<����@*�:�Ä��~�
1����=���?�֯_1��W�_3h�c`�������X������'Q���q����c\u�M0
���]���60B3?�2�b��~,�����>������&�<�o?>2D�Ճ4�*I~`�?��,���q�e��ea����鬤�8���(�0zܙ�u���aq�T�",��!|i_�J�~H��H��(-��2���,R�^
ɗ@Ys���IJ��L�g�B�U��Ɲ電j.BD���w��ν�9�R�HAA��%PP��Y���YY��7�DJC��|�V� %6a�0T����畬���U���!�\���_�ypN�5TEd�?ⴧ�ܞ��A���^����)ZB*<x5%��j"ה����
~#��x<p����χ�lf��F��{�D�u��C��[D@�!�AхG0����1�j����|u��cX�y��||�Ṟ3��5&''�%��(�X��(��E��t
�06#cw"m[Q�Q@.�.UI�|��Ftvt�j��o[Is��`|��'}��T#jCc�9/�m�O��y�*�t�I��{�X�y��[G�LV��Zn�]J�������ڢa���V/&u,�~H�S��8P��t��Wóxe�(=��7ɮU�+t�e�]ؗd��%X,|�냻�,�q���(��s�yֻБ�9I(Y$QN�L���H�K��k�.�8.f#�pV01qjkj���¦M'��Ō���.h��ѓ���f�5��S�N�����,&L��z}��m?^\]W�ⳃʻ���w�_�?��qe��sC�<Z�ɨx���YѬ����/J?�=���iwnq��1�OJ�!�����D�w���qfZjq�F��L�q��k(�K�r����r��Ȫ�]w������i�����B�c��WA�@@�FaJ�e"��K	��̘�L��)YF4"YL�K�͔�7g��ffal��Gp��>�6��Ҿ�z�m_��-Ƭ�ɻ��{�9�w~�wx��Oχ���"�AC�N{��\����X�f�DtJ�?�J�����p.��ρ}^�tb�JH��D؇�G�@
��d�b>�A\�6#����m@)���lT'/"���)ھu[>��{3�*ʦD	�*��dh���B�?���D����\��F�hm?���LM�ؒ�`p�HT�EE4B��ĠZFk���\�Bu�в�@S�����R=�*L�RC��k΅�l���L�]�y�s������u����G��WQō+�`/ɵL`�0�\�'�/�t`2��)��H�C����&5��no�%�?=�*(�a.��&`���4�H
��R��T��=ldV��RzĈ�,K��<�`Ȕ��m�p=���A�3S.�������A��>��q[J4� C�D
B���F�o4�dØ���,���WEٔR:)Y׼g
�)��1M�!u�T�ͤ(ȳ��
�4
|^=q��NL���#;?��A� E���M��Yx� ��py�C��jD�:j���'�����M�e���<��:����h\6�N'�zA�R�(�>�L�J���Υ����y���:=�����T>�f������N���Y1pP�Zy�Z�P����:#�41��?�8��Γ��5(ɒU$U3�n�'����P�]N�tZ�3�i]�ܞd�����t	I�a��<�lp|���"��F�
��V��x 6.�I�R�[j�F��S&=x�M(wɆg��"$`0Ƴwu !i��yD��!� Y��/���$�U0�E� 
6�E��Fr��E���,�*��@���g
M/E��rK�*5�U�AcE
,�v"��T��p���ڵY000����y�=2�Ig�<���Fx�����?m�x��a����2�@��r���F���z�N��
�Yo�\W|x��?�`�}9��I�<���{�*
08�]�6�H����$h���~�����o&T�u�>�D�wC�d�ޠAXo���4�}~��T46m�M���׼�{Ȩ��p|��02�A{�%�\}�]��W,����Q����cKh�yYrXP��9��d�,3�J7���?W�H�1֮_�A�I^��:����6�交��(�s��<����<�҈zO�5��x�\���&9/���ln�U�,
%��{>~1�^���g�w��;��W�֬=6������;�����/j��&ʼn
��$�FR+ŎR� E�� Uj�D�*��*�>���UR��n�DB�mb����l�������|wۙo��68ZV^އwg�����7����s�(,-�ݖ�t`�	�j��FE�1#YB�%�����_��r�/��',hUL!��W�{�9穜�9�߃���_��=�����R
������34�۳1�k�
�hD�lC5��2�N��T��؁�%�ϱ�O�'��_���hli��d
��GTf�6��'��(�mU��!�By�,|��: ��@�5��yF����N������N�&�vV���ڹ�_4T����9D�o���Ic�QB�n8�V�ήZ�@���
���+�z�5��aT\�Ƙ�43טe���'�ռN�=��`R=g���[�WC�ʕ���i���*��؀_�.~z�W������ƍ%�ETKH�+3<3�ʋg4�����B Dب���ϩ!�!�)�O~����j�B]]]�}�X.!ڻkJբm�� ����`H�	b�wtt4FT�O�V"+t�P�5UI��qT�3j!A,�T)�Jj�B�f�Zh$ޞ���������9�':1)R�4�?��]��4&���w߾�^>5DfR�M܉�2R;2�1ñ�^��x�a޻D}ePYq���0��K�N)cVVs����G朮��U\0�18"�i���n�����5�r�JJJ����#3&U�M�̖x�h��|?��7Ҕ�ζ/��nXb�@Z�̺/�m��%�_<�އ�7
a�8���º�בC�ӧO�/����伕�Y�I����VO���O��	�l
%`�z�Z��6��E&ˁ`0�hh�J����^���c�.d�&��c�i(�5��$>��@I8�H>n,�0����~r�ݞ���)D��AZ^�f��*n�W_eԀ%��_�j=�����p@��nn(.�9��^�gqI�l�{rB4`en\h�:��	Z<�`�<�#x9����n�ty��~h���|3��\������~x��ڒ63�=�j��\PP����i��uwW}����m���Hй띝����NWF���09"I~
���֬ɇ��90�A�E�pVX�1G>�$� ������A
8�9xz��\f�A�R��Ɨ=�P��)|��/a	nEJIIa�ޚb�=i��y�څ���ޅ4L�2?j4B#�´:እ��> �<1�E��R->��`�
�F�T�S7�g��ڌ�o�)�A1^V��/�F@���]�v�L(�NG��D4��({h,��e� "=4	�����:��z0%8AdH
j����b��c���]�A^��ڑ	:��Q�S�~H���g<�^q,o@ՙ٨�.�]�[�n�Sk�z�?���+��-���iN64�:�iқ(�y�?DN�^��,����g����-g�X��t���^����S��%1�x�;b�����4<<�pn�_>\��(��hA�ah%��r�
�:�B�L�vE)D��
0T�����FX���Xl��6=�K�}-2V�[��p�&AȚ;��O�e1��yy�U���c�tC�#EԖy�v7[ՠ;Z��U�ˈ�F�P���ϙ\���8)�w��O�0�?��s�e�ŋ�sl�l2j�����VW�v��a�XM�ggK>N����p�"4^��w��VX^m���3
a��%9a7[gqX�ɒʥ$���Ÿ�����˗��M�H}>�4=C[�����1U�iv?nVP������T�U{�$�1Wz1'�>��\��+W��'-ڲ�I�E�8���?���x�����E�2Y�@sӝ��#�:�22k��ఋf1N-�h��
��c�k�cͪ�&{xp��y��M	���-Kק�/�hE��]�X�a��>��v��e�O��_����>\ݿb����(XY�1���R����1Z[�p�ղ����'V?[�Sc��W�('c�X��,� `�`��5!/���X��j�f��}{������^�$
"`����4
Oz�&��+�9q8�f�lXW
�A�`�S��a!��=����֖���M�2K^=^����,��X�Y�᳼�0\���Ng}���-j�B/�k~2gEYأ�SM�jn���`��6f	�-Ǹ$A9�*́��''$�����9��ѳG7�ɯ��l��=]w�{x^�m|Hvv�� �J>O���Q�`��Ǖg�#E�8��\'^?�������C�5IEND�B`�images/icons/icon-32-installbounces.png000060400000005556152455614210014043 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<IDATxڜW	tT���:�f�,	�$�0�@!H1(�*[���bQA�JO-�u㸷�Mz�V��E�}M&d�W2��˛�����d�����w��7��(H�5��+1Z�U#
���u�7m�*�G�
�o({��i;D��g��ј1?#��a��X4����l�����X��H��_\��zQ��!��BJ�0i3��wz�q:�pg�A�}�ws:X�^���.B�L�vG兮��u7r����SL��mx���M;]�+���z�<B$?��8�>����֎t����<��7�Ԡ��ݳi+Í����F��;�i��ߍ�<����W/]���{O�50�k-�=%C	��[
?>p���}A�#2j�k��0hXA�0�
&�_O��`�����D0�Y�N˸ݞ,X���Zb�ɋ�w�������|�=��B"��y@n�E���!�x�_�@vN�C=Y(��$Q� b��/*�g�`7F�[�I�

��л�;�j���nY���!�z�A-��pcP��0����&e��u?4���s']��D���Ai)w���0aP����N067u �`�Z�=�:����{ݯ�v\��
p�'��[6��Yׂ�u�}K;�^|a��P A�1���ؾI�<����Nz&`����j�&9�3y˗?���YS�{X����%��)0��ș��Oh��Q
�/�{���\���9�,�=,�}s�.l��ߓ$ig��4)�oΨ��r�@�ABkK'vo�_�w��5U�M����0�M�aT�����sg��>fp���Y%������Tz��e8
�	���O\��J��c˺��ͻ?y l�^�@��9a�.��값 t�l���D�XLeT�"��y�)�����E}U}���dGkY�Gɹr�{�<S[j�Y،<�6��5*�(�k�6B��e��t�t���U.����nĞ��q�l)��[�<�f�g�+��$-�����*qG�Ϛ8v[^���e��U�)?'��s@��+�
B�0�:-*/U��{p���Xd+�|��0'u�툄��l+�il���t?���}#?ŢX�+�8#5-=!�βl�PO�f4>9aڨ,z��۰b3�=t����;m�?�3�yp+
���ͮ���4#�phhJ��l�6/�5��l2�:��v���O=]�I,�D2��jn��YS&9��l�?^�WsclH�mGN/��l��	��S#jt:��h2&
��f���V��A�ӭ5Z��P�Tg���c(bܡ�솤ܼ�3'l�m�p��U�%KW ����GX[��a�VQ��hc�6�#�py�*�C ��RZ.w�*2`?�ˠ���kWR0"A1?L Ld�����cښ���3�@Y,{i62sҡ%��Uˢڵz�@ʤ�aڔ�#�`ˡ*m	��V�����݅n�&B��z�(wm*�6�fĬ��W���?�
�斧`N�PQV	�Njw8`�XԣBQ������;���
���OL�y�h�		of�)'�@E��ѪOz�œ>Y�������<���"��ٓ�ƃ�.��v56���#� �BD�ױ����%�h��YI�����@��峋�H%�����a��0b�����~�:�o�ւ!�<�Y�9����*l߹�[Q]U�Ғxg��hki$�4p��K�"3=��eA"��Q�8!-f�]E��{(1)+!��!#a�s��#s�s�w�g��d'r1tz/6o[Dp3�
�}y�c�v�}�9�����1E���7�v쉉o����Z���$�!�nWWՈ�_�y��ô+%���NȪ�)���	�k>�QC&aڴ9j��{۰��^Xy�ҵ�Ӕc���0�ϓp����A_8�xͿ��`0�F�U��Wp�;s�{�~����^�������v^��ĉ�h|
o��Q�_d\8{
k�Z�vA��G
��ٴ6�e#lz�)ݑ��!�*.Fc}�;D��h4X��kH(�,.,ğ�X�q:z���g���0rG~���a3������2\(>��^y��3����L�~6�G'/�������X��V��55(+-EWggGL�u���C�������!��)SG�KM�O!9�g�s�_uF�����	؏I�g����dz�����U���'�L��+�^�D��x��I|�����h����d��N64N?�앴+�P�r�RTf���7ؖ@��E\�a�m�3g	P@��j*�DF���G�DS[-5�(���QSU��Ɔ��ʯ��/�{LF�i�f�8��M Y�D�l�\��V��~y	�x��pj��"�u �Y�s�;��zɈG�p�31p����ۅ���U�v��������D��!Q�^�4�Co��|u$��i�Q8��	���?�—#͑2����W8���^lEKG+�!��J�O�,8������cU'z��Da̯����[R2�BGA��H$2�j4!�t4���ڬWHL���&
�csSn>skA����i`E��PzVLc��MȄ.o;8VF[���OV�"������(����_�}Ը�o�-�̆Q
G�1��AF�9A!EG#�H�P	�G �;	�šPx,�3D��<�\V�J;}�Km��2����3��,
��	�d��w�[���]-h$��6�PJJz�ab�@T�OToQ�E�FQ_W޻)�瓒�~+CjO������ɄDP�4Jzzv0�{������Qyҝ=�+�?Cm�+�t2�357<l�x��fÑ�:�D�Χ\3a]�9�^�����`$��腝�IEND�B`�images/icons/icon-16-acymailing.png000060400000002773152455614210013133 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:DE538247684B11E59996F8F69E7AC1DC" xmpMM:DocumentID="xmp.did:DE538248684B11E59996F8F69E7AC1DC"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:DE538245684B11E59996F8F69E7AC1DC" stRef:documentID="xmp.did:DE538246684B11E59996F8F69E7AC1DC"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>P\��oIDATxڔSKkQ�f�N2Iۤ$�i��FjQĂ��Ъ�½[A�t)B�V��ܸr'�B����.TZD��V��NޙIM�$3s'�;�����=�{�sν�R���hd2�2��B��l�wT���o�n���D�*��X.�'dY[e6���i�.��������t:������uԪU$����
�0J[8�	�g�_ܛ���a}TI��j��T��` ���K0�K�T*�岐$)N�W\H��������*�Ԯ���P(��?��dO�����m�,�w9��=�Z��5�lf�w�(�v����S�B�@��@$A(�q��	|rC{�?��+�3��}�S}��$������	D�@�|eL�U�-�
U	hZ���&^���y��!���~0I�E�H�NmL�e�A���lne� 	EV����xi�q��Q$c�H�"=�v`4*}����w�
���g��_�Y�p(��4�f�v�ѫ�I��yoTBTF��K/x��ljz���1z�Γ##�0�.F�~��|��(��p��D"�Ç�7%K}&j�Ӏ��Ě��cG��su��~��B@��o�FO��f[�@��KT+�%1BuvvN�-��Y�}�xIIEND�B`�images/icons/icon-16-acytemplate.png000060400000002757152455614210013330 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:970469D668D911E5A9E098EAE636CDD6" xmpMM:DocumentID="xmp.did:970469D768D911E5A9E098EAE636CDD6"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:970469D468D911E5A9E098EAE636CDD6" stRef:documentID="xmp.did:970469D568D911E5A9E098EAE636CDD6"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�?cIDATx�b���?x��Y
�������� N����
�@��l�L��@=NF��8X~�������i����}�i�G
��^�~�c�a��8_T�d�7 ���ܶO�p&(�">~��.��H;�Yĵ@���?6���P�2b3�iF�$P���w�Aa$�Ǿ(��W�O�(Wĵ ���5X�q��_Rc����1������g/���g����d�V��$oU' ?�*Vo�5���y��@�9ax���UZ�1�'���پ@[=,�D_�]ˮ���2(^ĭ(.�
0�ޕW�]L���m���+@��yC��g�d��x�@�%�}�/��t�ʫ��x�u@�|$;8%yZVڀ\.��o�Q�\^|���O`�r�ֻY��/��x
T�볷��t/��
dW��m�-������d���8o�)�%0�$�9�>}�]���
+����{��B��˧����k��pE��g��6̿��ց&���d��ĨV3�t�P�h�a``���7�~ġ�́?��d���?H��"\^P�@\�?�B(�,?��0'�-M=L�sIEND�B`�images/icons/icon-14-color-replace-tag.png000060400000001006152455614210014300 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATx�blhh` �����$�������zg�11X���4�gaa�+�ϟ���M�9�Y?\��{�Yą�8�̴�N]��r��o��|�Ӑ"�x��1�	d'���C������� *�� �ǓS�
�3DxY�&�h�&���z��gfbb����.vvn.N�g~�������o�.X�X
�����&FF66V�s9@4��@�';�f�b���p��V�F��f k�5�N�id^�d�›�^��V��|ff&f�����}�\A��F��ߘ76��*�j~��X16͠pP�����d���~��P֜�l�@GY���a�RqT�����4�� �p�����*X�f�&��&p�"LFh��UJz�Ǧ	gk��$jIEND�B`�images/icons/icon-48-autonewsletter.png000060400000007006152455614210014102 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<
�IDATx��ZYl\W�Ͻwf�g<��N�K�qVgO��!PU���
 ��"T���V�
���x(�@�*5T���I��j�5�C�:���v/c{���n|��3��=v%�J���9���˙�q�|(�	?�/�������?_�a6��m۶Q{{;�qݓ:�M�eI2�r��P6�Ŝ-�L�#��,�d2wc��!�f~ǣ;\�G5(Z���튢,V��C���[`�CUU�x<7f�{A[�V����7�e��ێM�t����h|<���h�7��5ŽG�_h�>��
�B�h�"�Rv��|G2�|6�No�mG��i:>MS�MLLJƧ�IJNO��Dk"�X�9��r������W^������{�!��3r�
�7MK���?�~O,�>	f!Ŧb��'�ޛ���0U67S0�xb1>;z[\��J0vwwKͅ.�&@�������f��	@�N�S�)�FǤ�o����G�P��^�x75mڈ9�N۸M��Z�u��?N�܈����֭[���.�eN㾩��ŋi
��>םw���"]]]��5- �i�Z�j^�P|�1�Y�Rp�|��7h˧�H�*��QXo�����ҥK�SEE�t�`u5U�T��sƕ���\"�*�b�V��
[坃���Z�t�$b��e[:WtҊ��)�H���wO��$pKK�,)X�}lt�^մ��.@��1�₨n619I-��>]ߘ�,�>}Z>���TWW/�����GǨ����S�N�[ ܈���@�yC�۰!�JM�1P
�����M
�.�5M�*�Z�J�����ò��S�dB
��T:�,��:������[*k��$4��-��P`˖-;6m��1�X�J��粂�m�ì�,3�e��|b_p�K�Ν;��r�r[`F��![�]�o#�'`������T/���<�]$�J�S:
�J��]���_�������)7�&�-066fi��R�1�����'B,�45���u;AJ��<+E�i�����y䑶�_����->�器��z�Q���������Βi�ȣ�`R��I��	�
�l�>�X�ْyVre^M�s=l��큗_~y�޽{�7����O��%�ԚAP-�]�q�E`8��m0u`l�k�ڪv
׭��X����Sw�-j^)Z��9��{?�4i`��s��Q8�D�����6�5vM��Fh�w�u(�Z�i�P�3���/
�:��B��5��G�aPH��Sv������v�N��y2�
;��G���f���k׮]����eh)�(��2G
�L���� ~�Mz6?^
�`8ދ'�5jE	JW)`P��\��`A @�_I#�^:?��a�|�����ދ��^��2�ӏp׃��2���h`0'V���%���#�M�ǃj7z��SC���V�.5�}L�..[�ƛ�:���9)��x5y��A�9t���]�G27��Y�ǔK
c�ͺ���*I�=�#y�w���Ϯ�Գ?��-K�6`��,��R�0Cyk�i�Z��a����������J��!z�<0����k��jF��i?�u��J"Rq�Y���!��k�P�]��Q��$#��OA�՝�jgp�������f�
���
��͛e��{�]��/�~Kf�Y��/3��m(\C����~���������alĕa����w��&x�MY
�1�����}|ozz���}�(w^k׮-�Mއd}4�6�P��dVX�\uT�ז�#wx\nC�U�����?Ʒ���[����{<�4�
1.x�m������J�]���`�hӦMr���~��~���"Dq.ݧ�p�!��7b��̷3�t� y���!H��P�|��<9č>k�T��bY����~�Ǩ���>,g�躏��5��(�JM����{��B-���~Ћ�h�ͼ�…������d�݅�u��Y�=nᨬ�D�e��E��Y�#��Y���C?�ݧh��=�o�~���SsKJ
���"�w�A�k����sP��g
�����
�����/����kxG
�
s��Nɱ��cG�0�
�﯐�� S�Dm`��ɓt�`7JtS{{�}k�v�y�~��3d���<�Xk	�c3�?�q���t�~TI�R�y
�Q��WA��z�kB�E"�s
O�CG�H��T�##S�a-mX�%�F'd�U�,�ʕ�i���u�O4ޥ����[�����e���I���8�K���3�����?�L��d�J�Fk�����#3�B#}�3R�!�Q�*��Ρ`3dp�$��S����Y���t�[����F���ܰ�^�����/�E	����f\�}ę���	L��-��d�6-%��ۇ)y�*W��…KIТ�ZZ����c�۟���WI:�
vncY��hh�z��x]��2/5�%h����Xq���жI��&[���+4��)��l�\���3ʙT���LmA���CYaI�9bq�̙�
ռ� �ծv�Cr�l9�rk���Ǵ[Y����(�9gU��Rd�}�%�e��ס��
3^-6\rݺ���[�M%.�;��~����/S}M;M��-u�XlR�
�DUq3�(���5e9��|��B W��y��!�Ӛ��Gm'�QGD�Bp�Ҭ0	Y����(��3}�ϖ�U�Q.z�0}�|�P�A�frW�c$e��N��\��hWY��nƒhDj4$*�o�%tu9��u�Z��ZE�N��E��+�T����=��z��6�,l�ps
PuMuIvG�s��B��xi�	�K~vG�yw�(S�+�o䓷M�MG�V�CS��A�Ϝ7��Wض)2�qA��RP�)�y���f�؞c�B�`�,��"E�����"����#@9���
������(�E�bK[�ul��L-4��jpR�W�U���׫��^�㾎hRT��m\󢝝���5VB2���aO��4�mlR��f
 4U��V�h����)X�YXY�5麨�4%�j̸�X�J*�V![n�o��������zϤ�f"�0G�)#���I#g�x[�(7.��׫�}��*h?��q�q�U�r� 8V����?~�;�3D���.�䯱���wd�沶a�S��֣HTLS�X��3M�0H�ߩ�f���Θ�\�Nǧ�I0?�^�`����Q�Ǥ�@p��gG�t��uN�R�|.��wTl���m!�˟����<���,����6
;
Hg�m>O�Ѵs�ܐ��YJ`~�W.�4��`	�_B��N�a�0�*[C�u��v�u!��D��2&�Ԓ��%�)��ϴ-�1-�bK��		��ҥx�L|ͽ�2Aɘě�����D��t2�e���;����a�c;��bʁ�Y(��MU��us6�I��6�`��M@!IEND�B`�images/icons/icon-48-filter.png000060400000006714152455614210012307 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<
nIDATxڼYyp��?����B[B�BY,�2j��B[��i;���Sǥ�*��ӡ���S[Q�(δ��� �lY�B�K򲼼}���s�KB !���ܼﻹ�w��s��{�еv�Z�E��4�رTUu`��-�ͅ-%�BE���p8���M���(�|���iYV��t΋F���`�W��t�c}'�)-�A���c��ɓV���Ss�/}yq�7�7���е^�%K���,W���tz�^^u�o"�Pg,˔��Ϭ������~&p�cA-�B^e��Wx�b�(�ف}
?,�Y��{��^��i^0�=�?ZuOQq���o?j^�`IY��rJ���<�U��trG{JKK!~�?���0ZfU��Z���2�@���P�2
Ԃ�e�R �q�9up��n�ː@������WcCʔ�ꡭ�=b�m'Z�!{��p)�=���\H���ZVI�5=/�*�� �AQ��!`�u�
 �ߏ"0%WIK`[odB��m���g˝
�b��r��L��;a��|v��21?�p��L&�1Y`�ʕ�"v�g�[N���+ XI`Y��
N`�W�Q)Y`\9�8��Eq����B�;B:���Pk�
��>W���4>|�6�:6j�a����LU��͆���� 2e��l��
��&�нc2g���;$�+��W�k��B<�T2��zF��Gp����ڃ����^*�;-AB�BAE��� ��Qt����F�{��-�2981���
*(�,�tk,�Y��w.���;;q���J�f�b�,��;qe��b$(�&��ʚ�bY,���1�e�|�~ML] Ϝ�0�z�<��ڄ��Am<貣_Onv�fm'���@aīB
�W@�_h�
��5�@}
��f���XZ�PV	lP��b�ak�Dc����W�Eh�]#TV���̓� �}B�Ъz2Ɇ�O1�|	��D\�(�Jlߗ$��xJ����ўnG���
��j��d�6j>-�Fw��Z��*�U�d�bA��㔙�>���l,.T��5��[�c��KO��I0�l��}����8pb�y�?��@���]M��vd�B��!R�����l]6���h#�Iq�?�.d��R���s.����0P)W�m�;��z�eЛOm$嵱�#�UxEQ�����������2�٨d�A��@@��R�a��O�0[�0�C�`�S��q �1���n�֘��9��ޛ���	�5$ف#p
Lhj������r)�<��C��W�(E��cv��c1j�Z�'�
(�7A��]����z�=��T��@Q����h�S )'��F�����%Jo{c�;m�.�M��)8a�h%>�..
����[���:�~��o/���999ܕ�����/|�M0u�

J�,c1@����b�&�nO���G
�7�����M@B{<���a֕��65��m�fh$J�>�g��?w��AQ��!e��A������sE�r�q�k]I��I\���U�S@v9�b�Xoi�x]�*�Rt���e�Ld
��L�����i���p�q׺��BN�̲n%�V�ZVk�J����>J��P��F��H�V?��=Hx
��ui�/^����qXK	R��Ǟ�Fk?�T�B6=�)�mGO�������2���k������-Z����}d�Ŷ�>�wǏS�Y�T�a8�܏��W� ��C6�
��0���@kk+z�6lE�`8�3f̀ŋôiӆ���,�%*{�'W}ђ�:�e#^�jN��h����A���Ujii�>�N�:��jT��,��
��H�l&�$|$��;w+���(�������乆�M�͖/��o8]]]|��r����s
���h[�c&����.��h
~���S	Z{��x<>,V6$�,�2X( �zϐ�P��3������v���A�h�y��SL�Ԗ	��|��5dȬ��1DO(�Ċ+8?2�z�����h4�ƒ�CԚ6�(�iM;v�+cB{��0>B���K�.D�LTV2{g/���P���j��t؟L&�<�Т�55V�_��ڪo�p��M~���׷�f����=�܃	��s�ԩSy���Ү�b�4�
��ݫ�-���f���n�\��0�㊧�+)���?�A�[�����E����(��{�z۶p(ޖNk������>�6����?v{��s>�Ni�
�<E��9σ
h�`��ׇ�-�g>�#��^v�R���+������L.��e��畝=մ�O�<��;o���{ۏ��؛5�oB��`~�J�B)�3�L$�����U��Y�qw2��^����e+|^/�}��x,u�?�������g��\\�1�cr`��FLP�F�Ez+!ն�^��G\�B'�L"_���c��v��!�H�x!77�`���'�L�4߭sK�$Y��ڦ���P].wA:���Z�P,Y�d2��QU��/�<;�J���jժ����I�v�1n��5]N��CYt�I�	�xNc�r�9��]R��b�`��#���9������Aseojj� 劍7Ə=Z�C���Ә!+�-[F��M�6��ӧOCm]����<Q���;���24�o��ؼy3�Rih�o�`G�z�-n�:|�����{�y"���	[�l��9w��{�]���_�t	�m�Ɠcee����Q��0��.�.�����H���5k�|�}�s��K��]�4LM����ٲ��@v�΃�\����P(�w�]�;D=�D'�Hz&�0:g�y�����C�NWOZr6?w�;���
0���9Q!�8±�[�^�m�o�(��.**���iBC��i
P#�	4i�܁ܤ�ehk%�rq��i�9��==�`˕�J������W��
K������̻�	A���1L�r�.�X3�w;]B��D�P�������UI��h%A�=t�a�%ľ�Ώp>��`ZȊD�7�Al�d%|f�i���t&cEuM��+�G�	#����tڈ���_����!�Lfjjƒd%��x��N��o��E\�,��
כ,�B�~,"�� A�H�L�t��ݧ`(�ű2�1���K���H��p2��ສ�a��A��,?�J�Tڌ�=Z@�R6�.+�C�E���@�{A`8T��cd�����
}����B٪�7-��Qx�0,MG&���S-�m}gO����;��Z�0ɜ,I�Йo�i��q�!�鋲�Ϸ���I*����AX�X�>�x������Bv�uz�A:�
�!��)��M���ufIEND�B`�images/icons/icon-14-color-bounce.png000060400000001112152455614210013365 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATx�blhh` {�{��k"���@��N�����?X�~f�������￿~���`)�r��?��,����8�D�~�����r�E\H����l��_�>}�v��/� ��x�qs񲳱2�
gcae��/����4� iz����
�X������?�֣�syyx��y�<$E���/d�SUdw�[�
������+w�Nk��9�w����K�?z��H�fѶ� {�،ȡ*�a�q����<|<�Qn_�?{zb� yvE��?�_WE	Փ��_��J���)���ˤU_�~�q姯���/^��@��O����}��*+�0?7�O�|�)~�z���̼�g��20����7�ff&H��pq2%�����YFL��?H�
��y/4��XX�

d�����Aմ�W�> FR�����XO�����L�$9�&��$��1�7�H��IEND�B`�images/icons/icon-48-campaign.png000060400000007404152455614210012576 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��ZY�����z�^f�i{��x�x��x�ƊP�8N �� ""Ė�( E(DI����#�|'R"�DlA���������m6ƳvO����[U=�
�|У�z�꽻����r��������y��-�������i��g�qП@�@5�_�^��^���(��[�_�A-�'�5�x����Y�X$���1�WJ��[A
�-���Z	���j�z�
�=
z��J����-(z�۶� 
QMM

&�B�_=���W��ex��k�Ҹ���[q=�g���&�=��ո4�
���c���o�//
���1�
a��B�`��e&�]��J�T�Xl���`���o����>|g�2���MӜ�g���-�:�u,�3�H$nL�|8~Xӵ'�8���Ȗux���.����-<���`�j���/������}��-X�bywMu��T:=�>h��h�6�y�+�tj΁�Z��h[[�K`����+z����ڵk����tvv�}��gC'X�40�w�}�L&�s��lOO�C��K7�����������Z�q�
�H;��3eg�/{|n�|�_/S�ɓ��O����o�h?L���<�-Z�l�&=�};5o�L�>��l�f���f{{�sl�/�J����
l���>:��t ��|6K��.0��c�����jMTҋo�K�Èb��z��o,E����k?N��L��0�ݰ�Ro������
�<���'��O��"!�������i��𬐦SL��y�10(MqC3����D9
�	�
t�������t��f7&��?�JgR�Aف:��
��D`���wR����家�H���k))��'gh�w�`A�O���v҂���π1`f�S�!7p�������G�8f��ե�:���8�b�ғ����d���$�"B��:rlkb $.�A`?�Қ_>E����TM�3�={���qf�6F��E��-���i�J6|����aeY��mwSr�b��C�;��
p/s1���Cw����i�[�掉�<-�.#��Qݲ�R��L|��Y��j�D�;��#L�@@��;�0j0�G�y:��y�,���y�H.T��!��ML"U��Z���g����h����	�:�#�6i[��>Lo����Cƥ;︋��NҞC�{D"�Z��(��@;v�x���˥��v��a�C�RrC���{
UU���񵧫���	%���⽓'OQ��~�F)H���4�:O��Q�S8�wO"��zʈ�*�J>Ͳ�ټ\��f��e3�kA��M"�W��</��B�G.��h4LE��in���j�����Զm�DK�Q�zݺu���a�͟Oը��O�^��ڵ�hRS%�C�R�SSr>�6U�x����.\(�'���}A0�
�`|rm�0�Q����i��ݮ����WWS#���0c <����~@ i"*-YR���[C(�$B�0&�����
�D'�_�UIyP�*�!B�'�
�ДCV޻w/�mi�ޞ���y\9q��w���ˏQM������R�1D�֛n�n��e��D����G�V*��^���kp�s�e�C��)E����*&/�� �]�Q�d�ʉ�����n'�
��e�$0h���5w.5�'�)-3ӫo��V l�l9b֜9���<�vljF:��O��D9�譔�k�e���j-��1rŻ���ĕ��4{�Z���\�5���z?��v��#�2Ӝ�͜9q>0%E�B�:�v#�",a�X�����aR_o)��P�����Sb��P���ٳ%k�U;/\��G����O�R)ڸq���-k��7]�Df|�/�	����
��u���]�����5J��%o��4��{�Bc�
�ʡ�R�3x��A��Zf�[n���L:-pR3)�<���C�,0�q`�-%k
�obdg�� ���SkMq�8�M�u�J�O��f�&�P(E���͔���
μ\�iH~˖.�u�V������j�O����ǐr�̂I�x��z�-:�bN�r_�!t#��P��0��1r�Ν;Ky�y��.�'<���ȈXfB��Ո������0�(3*u�Lj�~_-5�P�<�<��1=��g�	��5$�Q�/-I��f�ɤ�/T��4,Z����<C~/�I5�̲�,YB�Б�-�
�;y�dY{B!�wc�qMC����q0G����4o�,�4�h�9CBg?�[��v���6�*�'-f�ij3U��d�!��
��'𻱿<�<��5���i%0}�̙����1z��$� b>�՛6m���0���y�g��n�I�Ͼ�]�К�?�>P_��knttT2��.^�(έʬ5:<LΟ`M3�c���o086����N�̅Sq�cZ��\zަ{}�u 
���
��b�y�@@ f{T�R- Ú�Ĕ�'(����2�ŇY�%bI��&�UKh��
��~�v����=�g@ȋ>���֭[��[�C�$-�U5��V�ɦɔ�2�����&	+��!(@΀0����"��$�Ky�2:	�h����Vc�u꾀��~�Q�TY�gm� �ԣ ��j2&�ǵ��Q��#����]�nذ��P���5�)�*�H�4uj��rC)QS�ҲpmI4����uC�%G¸�N��Q�r���礔��L�c�t�G����c�s�"M+2�@��p�h�0i����k{��0씲����|��9���q]���2"���
�B]�Ms���G8�֞��U+WR:�u���e����]´�%#�4[*˚�����&�/[��J扵�2��$�\F���D��F3g[TY=>�7��ni�%^�5ڲeU��Q�oB(VvTHdK��2!Ϋ��7y2ֱKؾ����M��+:�O���ɸRu��NF��kjTё�t�:ݢ����8"	wS���*m޼�t�X�:+W�����w
�IO	$t�&*��B�y���n��u��ң��Ka��=1�	
�c�<���u�(�4�朻����2wk�i�ٹ�X���a�E�,�Fȸ����M��[C��ҙy�@�īgb/�AQ*���X"���`#�AN�u]+�(�]�����/�D���˴�dN���\2�͋�q1�&]��2���ǺЌ������XCٌ9��ZÅ��.��������XEԨ���x"P�X��t����͎JS���^"�C>8Ἢ��QrB���|���$���T�����bYTR>
4
�̆��c�-G˧�Vz�ЛJ�=�Q�o,]��͚����Q�хs�j�=�"
�pD�E���1TU�{�0�n��ahAX*`p���
�W�[���zm�柪���&7J��O�pv�he�"#Ͷ��%dyڀmg�y+��Y�|�a�s�H�`�
v�(�A�srX �3����ǁ)��Y
	�b�y�:hJW�S�F~��"�GwF�㶾n��h	�e����M���i:p|L'ς�۱�^Z	��jT�����o�\X��1Zp+�D�8���(W�%0�+��l��{xJb�l��g��)G����!���)���ۯ����������A�IEND�B`�images/icons/icon-14-color-sendtest.png000060400000000745152455614210013756 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATx�b���?Ct��y6FF|�?�����҆��� �_|�4{c����Ҍ8��
�3��O���!��*�j}9-`�eI=>n~nQɁԀԂ�5���+�v���h���B|�`'!;$����k��:�C3�&��Z�FvV..!i3.v>[�BA^	�Ab 9��Z`�9�@Օ!���HR��N�������l.��~¼��G6�U9umB���3Hӂ�M����f8,��@�	2�L+���ǯ�	`qPt�|�&6�^.a�bF�o??�M:����@M � �D���k��e�d��y������@j@j!�
4
��'��B�����@
����Dp(_����a�C20��ѵh��IEND�B`�images/icons/icon-48-acyupdate.png000060400000006631152455614210012777 0ustar00�PNG


IHDR00 �tEXtSoftwareAdobe ImageReadyq�e<
;IDATx�b` 0�O����ٽn�W�B�V�>�X�m�2����M�tJj�F�^E;3�[n�iY99y fD6��ӧ��
�׾}��@����	�a����G�L�7����R����d
�ٴc>�~a����j$�E�q�=���A|���������T`��n=���CͳS������,�P�I		.6vvD��I1|x�L����&W��*�n�}������7�ԁ5lܸ��ϟ?&'O����T��gN�o߾]V������gb^^���	@��0-�⍇�����ѷ_�6qq1������;��O�$������edd�V�Q?�1<�q���t9��X���}

	
[---͐���7o%��~C/x�%�&��
�� ���E=L�\�^��C6�d?����&�Q>
��
���#�~@I�\�L,��~f��g��a0��cx����FC�m۶q}��}P��kkwh����s��'jvlg@6YSS�J^^^�`�B�4��@��-[����^n +�h�2��x'��[�n�����Iaa��@�Y�~���l�T��8��!k��L`�r����I)���"xyy޿��u�^P�f��bx���]��́�5Hq��!�����������&>>N�
�M�998>�KH(pqr)���<D�@I_�{� ?õ/���{xA&/o����m*4�13�m�_W���'�s����+���É'����\��"��^������h#�
��*�����e�'9xG���/Z��!r�B	"t�)�,@a!EY���0<z��f	~anN����B�@3�sp0�i`�1���/�����q0DEE0�#���f������l��F�{<�T����0\	̅��̑ �˗/?�x�*��Ν�baa�`bb2�I����k׭����o�F�lڴ9�[7o2HIKQVR���0�89:,V5��JJ����������fT��WYHTQ��6Ν�fn�6��hh�AV��Z�A����P�b���P�=Ԕ�$n��QڝQǹ*�3�r��Н\K�:\��p��9����Ͽ����?2UZ�\��$S^��?�dw�UT���D�����|���\�*+�d���5�J�Z��j����b�=z�n׫��ǣVˡ~��^0x9=���OOP[[+�����n�i����!�ehݢ��L4�pm�<6E����H�#�[Ʌ�i�����2��Œ�`���J��%�\�>���$x(`T,4��W�츠L���7�:IM@x�L��ю��;�o/�%2"h�!���`\����y2��JH�k��u
�@-R���8�w���PtP�'&&:6���<�à}�"���AV����p�D�*Rj4cy*���wQ?�B���z{A���4F;�'Uk@���{�.�/�	�#�kUj�����׿�E�ם9sz�@SS$�ۅ>v�`���}6�ݾKŶ�c$�X���%л�.2��+7��CH��<>!^�q�ԃ��f]`C\BA�s^��B�����!U��̃7�@�4)x���2��+V$�r,�!c�á�G�N����WxAv�9���e}m���660�����in����ϯ!}�����WM�d���"��P�.i��v�U.xg^1&�/3��(ݼqmh�����3��31�%Qww�|��G��-bh��\�u��/O�ݙ���Y�O�##–�[��U�X�&''�5�@{{{��\�jgRJ�l6��Fgʺ���������V)ㆆF8X���v���XX���+X�g����
�ٳ���^غm{�k�5</���fUvsi��&]�:DB�ҫ�6��f�o�g�1mUa��-��#b;W���Qٖ9˲�8�%��8���(�,A�����8L������?�35s|L!P
×�Q��2J?nKo{o}ϥ0�����pғ�yn���y޳�[kk�1o���h�%D�r1
xh7U���b���K���A)�A�?��D�v"*�~��
e�ny�}(tw��yjj�+*D��=�v�KO��h�[��h�
'�=;ʂ<n4���,����x%�$?-F
������Q��s��L����MG��.,,8�h�"�9��?٦�3^�:���!5
�q�_��ګ5;Y��P��ʏ�)yY-җL���K�EЉ�i@u����O?3gdd@V�b$���[�@��1����Q;�'к|`�eנPh"ň�o��n���9:�
��&��Cf�)�)SH�"��{hC:�i�x�	��в� �ѩQr!R��n�X>?{�����t��|�2����)]s��J0W���ଇ�w]܊��&	֭�yV�ڲ��n4�8g�I�W�)q����7�׆�8�e�<B�%�	6��a�8Z��c��H$��,�D�ꖰ�F"`5�5��<�E�.8�J��jWH9��Ďi�X1�%��K�nL�h�m[9~߾�����T�V����WThrr�Օ�O�����8��HQ��)��1 ������	����!������i~��?I��c`���<�ڵ����8�z�N�����T �L��;R^p6˫��
�M�����=���yȊ�e��С)K&��	Pp�1�>��HZ��p�PSS[�D��֣o�#%i���i�����G^�Pc�B��|��sCvCҟ4�� �on'x�ad��؉���` S���Ş���@7V�RL�p���kd��Y��1��B�ǒ��;w�DNd8N�8�������M犊�&SZ�Q�����T���^��:-^��S��u`�(._GA� |�����*RW 
�{_��l�k<_�/�#���hgJP�(AKFK����(r���=(�2��L]����'ZΞ=s(e,���j�UqgĬ�G6Яw�^�����P�ظ1Q��P.�~�⠠�,��)Y�T�f���8�v��
tvv����	����
�r��K�B�4
���Ã���N�<��%E��۶m�����y�m�V��+&��{X���������ر��$8Eq4M�����J̤�/��w��V��u�)��ח��ݽ'��������o��w����f��h�@ ��� 8A��_'??�����4��dfh�qMNnn��B�n7��GE*z{{Va�_�_Ų2f&;ð�[[��i�E�M����Xֶz���O#_��IEND�B`�images/icons/icon-14-acyusers.png000060400000000621152455614210012640 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<3IDATxڔ�KN�0�lj�<\ۥe8*�G@��5+neŒ����6�ر�<�Ҋ:��'URHP��4���G�k-dYu<��3zG}�}Q�S��'6�=i��V��8�0���j<_.'��"t�W0V��z�r���A�	!B�J��۷�Ĺ��km'��i����3/ʦ����{���ɛkԶ����K��M��Y�3�ino�ZN�J�5�Q�3�yG%�g��K�ݯ��͇�
-0F!�z���p�Q�L\�[5�<�z�=�E!pJqhR鸫.,��^9�'?~V̻�wIEND�B`�images/icons/icon-32-acylist.png000060400000003304152455614210012453 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<fIDATx��WIoU�^����l�x�K�ي�P6AX"�Q.��-g�p�r`�8BBB�!��$R6Y؉'6�e2��؞�W����v�`�F�y���ꫯ�����i��Sp�…u7�����?���<A=8��x(�b��j8��9�!�>u������t}����b�j��a3ge,��0�����ވ����	]�{�Gۆ�йcå1�J����o����"�ŀ��&M����q;�t-�����p=2�z��8��\��#�8s�̡����/_�|�溷-�m�M)Q��0�����#��&�Z3�Yhе:�麴���	���苩T�Nj/�I fw�b�2��bz+4����~6��PU5`
}}}H��9�8S���V*hoo?800pibb�]b��{�.a�3��1�@7����MW	�x�����"�	,i	'O�<����.,,|���H�r�A�h5�xB�`��Ez&�z�3k���z��	�=iD"=pl��L*�k��6�S�]�&^?G�|U�޺{�sWY��� �h�h�d�,u�У�߷�`�"aV4�=��1.*͙$×��}gO�bB�^c��x�#χ��u�I"W�����Ā���n�h޳-�7����kS���SF��]4�5��s�{��?����l���T�i��au��J\^�K�G�?��\��(��g��ڙ�0������-($�R�����5p�|-�c�G1<��5A������u¤�C"�h�Nr�6I�p��: �
C>_������� a3+\���N������n��`�P�d�MXL&�
���Ϧ��!���'c�q:���׆p�PLJ��Ih��ֶ
��xM�"|�4TI�N����?@OD����dtG���nX*��-ZR���n���울�����O����c�;��2��zf�p��;���ؼ���7�2y��Q�u+��(��Hg��R/)g���;C��Ұ���\8
1r}����@j�bN��3*�W�f1|$��/�Q��E﫤k|�֥T���G��ФE��A��l��l���J���y�4����d���Z��#)��9XvP���Gn��NC��R�YA�PؐA�y&�YW��V<,/ILN�M��Nܸ^롽CC�>�)�ɉ���*�
��:�%S�i��
�M�[�
�'B}��5�Q�:q��
f����WW���15a�$�t�mm�E��+��`K���h�+VUAkg}�NC��<#��ժ��ޯfR�8�|4
�S�0����ݔټ�Y�&�ý ��F���c=�k�&ҪMϪtX�]_�aCI&�zWs�џL���eV������N�x[z�%\^���y<�-_~��e�0��r����(ZU�[��P�u%�j*�$3�����MĵM�Z��U������4x���� �h�@X�Xʹ\��b�ת��T��r��U��i:Kt����//��Ғ5/U�~7IYe��q=]�q��`d����/�`"�C�+�Gu����;۶<��[���1����,�������i�W���M�C�#IEND�B`�images/icons/icon-32-apply.png000060400000003034152455614210012130 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATx��WklSe~�9��P���>'we�0���$���&&�C�&&B�1Q#?H����ou "�0܍��k-c[]6�nk�[��9���vtq�~�%g���s���򽇓$	�r�x��QX�(bgv��`�@�t/�M2OIb�9����7^fi������>�"q��o��J��@CC��ޞ�[} �[+E�K}��L:�W'''W�4�"��%���;�T��1mq��6&\UVVx~��A$����*� ���F�MfKS�;�sۮ�x�˞3'�r
�\����/���|�~�s�>�J9�����R� �C`���_C���g�h��^�d9��Z��J匸��)n�Q`�Fq9���k��l��d�g�a�b4y	����x`�4<�J_L�H��U�i#�M$�&�������i�Zf�;��f�5���Xh��"�K���4�j�"�.f�
���������
z�lra��hf��3�������G�w���6���&WVu���0E�.9����������ʻ��;M�p:]r�f��$9�>�M�\�����K7kp��=x�=!�x��8;:��$w�;���a���0[�E^��i�*
E�4���~y~��4���m������~�yTF%�7c���P��2�jX"��~�^ï
;����Y6��,�?�hёh���@������v�TbiaV�}�&S��<��T��k{�)Ge?�c�28	[G�7C��
F	���q*��ۄ˷�Q�H��S�+�� /{J�x	i)�x%\#�0[��z�!��>�g�v�����,�F���N���b�)#��G����h7!�0GO����2�f�Q^TޝJ+5��j>�YQ�B*8�*�T�
�ǐ�wK$
}11! @����*,�O�/0
�o��(s.\?(��('R�$�FK�ys��l�n�h�+�!��Y���@��
�� �y<W�W��QPT`^�]n��c*�|J/�R��q$�砫��S�cQ�FX=�!?�B���@�)��)%N�ر$o+�'��q
�J��T��J�l0�ײ�P�4�ۅ��ly��Z�H�
���\ ��YlH��p26ʋw�7p��:<S����Q���!ϲ�=bÍ��\�#B�_�輻�:�������IԐ,/}zm�������y,�Hx��y�H
U45C�S_"3�(��њ��a�b۳���|(#c3�
��{`��Ʋ�+����O��z#V~�'��Ɋx<r>0�J�|���*P��)Z�i˓e���Y�.o� u[�Z��|�̓%Kˋ���*`�u����V5��f�&�F�X,�.L�u�t�
+}�$ �.�_M\�i^��ǩ�
�M�V��������&�1�O�9N��1��`�2����DB5�ΉFz`�@ l��yo$`�S��u��(0�X���IEND�B`�images/icons/icon-14-color-process.png000060400000001301152455614210013570 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<cIDATxڜRKhQ�3�f^f�i�D��&VӘ.��(m�R�\���ՕuSt"]���tU�q��E����)�֐`�/��y�7-�>���{���t:
�w4�L/U�˪�8���o%��Zs�}�Y���GoVS���X��B'l�D�+ �f��<@��9F$�:���?o��Ѫ���$�L�/N͇I"�l�#�͈a�-*��X�/��[)��Yv�5˹(v�RY�6��z���� �:+�ޒ��ۗ�L�~OpF�g�$���g�h�9
�Z�9Rn�Լ�����H-���h��i�s�2��.�gҫ�%Ս&��v@�(M�f�w	��t���H`��z���*��0��WH�͢��8�`�5�����p��Y�[+�ѳ�I�:/��.���~aUdB���V�R�k����o���Ë'�����ez�����
����㍕��B)��d�o��>��W�� @?��т�۝��?����pl�]��?whw���x^����?��_+�Q׃by�js�q���菍��w��G�5oI�3b�Y}&3���i��7<'�N��|��-W�g�`)��x�F�IEND�B`�images/icons/icon-14-color-chart.png000060400000000327152455614210013222 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<yIDATx�b���?Ccc#!p�3�����D�0	ąP�Dk���@�31�	���7t�B��~ M#�_��p*>����04�l0�e`��<��ڂ��X[P(�������l�zFA0�Q|X�|IEND�B`�images/icons/icon-16-update.png000060400000002655152455614210012277 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:CCBA339B68D911E5817CF11DC001DE3B" xmpMM:DocumentID="xmp.did:CCBA339C68D911E5817CF11DC001DE3B"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:CCBA339968D911E5817CF11DC001DE3B" stRef:documentID="xmp.did:CCBA339A68D911E5817CF11DC001DE3B"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>F��!IDATx�b���?%���Wٞ Uĺ@��y���l�rYU#d?�0 ��� �l�*�O_E軤'��^�?����ǟ��{�r��j*�ؘ�ճ��<��Za��yW�e@�@�
�N@����u�ݱ�����e@�]����] ��f�@͕hk�Z[A`�T�9��~�*��~)?D�[�,�{���;�x8YD�9�?~����@�G`+�Z�Tx�I���f����(��`�*�:}/�^�ÀW@��y�䀚���	�E`P qk�؞����X�y�r�X�v�=@�� >�}@�iqFFF~&F������t���g }9��f������ZW,�,R�6��:��w f)rX��텀�ο��M�7�'���'+ƽ����`	�sz�q�4?��w�=t�ɧP�e �1�%
�|�o?�42��Քd�3f�5`*����m'�^\����Ͽā^����NI^&{}�}����(΂��&R(��) �į����0l��Hiv0��Uu��IEND�B`�images/icons/icon-14-color-bounce-rules.png000060400000001177152455614210014530 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<!IDATx�blhh` �s7<z�j���;����¢K�������\����3011*��X5z�FN��r����Ͼ���?�qq�s
��0H��\���6��$��$�7:����7&59i&FF��?2����������7TS}u�������t`H�qe`ef;����a�Ғ���%��jd:������E��x�8B�l>����̞6�Q��O����MQJ⬗���_����K&�F	aA ����ƜAGY!����kdb�ۏ�?w������@��_�@W�sqp��������uq@]���߿�+v�����-����~�����<܌<�@���M�D�F�����K�3q��1�l���++$Hd�E�1����BO�M
�������7`������+���1D��_f�i8���7���<<�x89��U���M��␍��T��W����������X*�Fq!N`|�M����{���oH�
�l{7�A�㜪|d��h4M��Ur@��A�nJ�ߓIEND�B`�images/icons/icon-16-process.png000060400000002701152455614210012463 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:A461DDC668D911E580A2DF7B2E41BCE5" xmpMM:DocumentID="xmp.did:A461DDC768D911E580A2DF7B2E41BCE5"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:A461DDC468D911E580A2DF7B2E41BCE5" stRef:documentID="xmp.did:A461DDC568D911E580A2DF7B2E41BCE5"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�u5IDATx�b���?%���U��9���o����@,�ۺ\��
i�(�о�d$����_���3�$�p�1���F�a�l.�=+�N�����	I��v������!>�k�>��2W���=��
��������� L�-��A~X����
�N^���@�/�"�n�z�I��˯@j�Pg�#fk�!�h�λ��mI6���b��k��R�ܭ�-�f]r��H���F6<�Y�����_�D5ܴ���?���4�(.����<ƀ���P��Ͽ�|���RM�oyu�ޅ�o�KæY��N<��j�
m���T�3���F�H�sg�u��"]W�"
h�-6�]|�+!�y�,R�.�����߱�$>|�e�x�Q��r0`A�o�f@��^��^����k��Bv�ǯ�4Vxp:;P��uĖ��@[���x53�X�i����n�]���X��3!�03�_w�a��O��0}��3ffF�72�y��� ���$��AI�.��$�d6Hk�*�a3�,`+��P
IEND�B`�images/icons/icon-48-schedule.png000060400000010011152455614210012577 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��Zip��y~η�]�\�hd��6୎1L��&q�fZp�N�z:���O~��L;n�ĎS�Mܙ,vS�=ScR;�86
�b fG��t%]�[N�s�{%W��ɏ~3G�]�w����n�JH)�ԟ�[1�*�
ø�*�h�,믅	~wQW���}�|~������a~����B!���{<����s�E��(LӼf
�����/y�\	Uy]$�y�T*-��������l�ƬY���Dl;�;�YG}&���f�u#|��~��~OO�o��R&��@<"h��s�2j�>*`���M���8��u\ڬ��ܹspw����\k3�3�Z��mJ�O��Ӭ/����njj�۲P���bdd�ߗ0�EW8�N�l��g:
M�j��ߧS�n2�4U�м�```�U�-j��q��p���Ȯ��S?ɺ��8<M�M@E�)����TT��O�����5�\��Z�4�+�m�:}��`}�����U�1أ�*Z�g��*F����@U�P�S���6+�(���P(��$~��J>���J1�K�'��P I|��
4��O�5���\b��A���n�K���ߡ�̾��D�X|D\�Rhhh�ʊ��ޤЫ��P߼��?�xs�R���13յX4J%���u<s.F2.�}��ֶVs0UG���㭠r�7U�N�R*l����C9�BP8��H$�j,�还�Z��>�P�V���ɨNr�0T�[��D�f�y��<�\ne8�|��y���"�
��*�V�UJ���Y�~��.\���Ӝ'	b�����Am� 2c�r!�#����C�Q�"GF$�p<���Q��,}���V�r��SQ-Y666F��+h����3.�a������MM��S0��@�^�=o��t[�r]#��3����4�τbw�8�+��Q.d�^?��+K���|�#i�V,�<��Ʀ��so�L �D�\�.	�����9e��~t)�A�y�����ӂM��i���8���5M���
��:�!�E���
����~O�t2��"Ґ@�����s98�F�c���s�h��鹈����!`4�e*���fW�fiʵ�U>��Y���9��Q���K��Ñ���z	
�$�#�hE6ہ;޻fQU��b1�u��wU*��ۋ#GT��:6>N�8����-s�hn6t�-_Or|����#�N�)�P�5�ܰ^khg�3�fͪ	����[A�}��%��Ç�[0�0-p��}E'ms�#ֈ_azZC
RXS�cX�Ɖ'-����ojѴ�7pq����%xn�L����ץ���kQ��5ݎ��W��a�['��0���/��9O���	�&;���h ��LR�	���z(k>J�L�w@�.��R�q��?Ŷ���Wq�Vt���ɥ��
)i^G�h2��ht�^
�F�h�%�9׉�4��K�h?�,Rs6�~a�{�]=>�u��U��Í�p���ĺ������0���������AB�r-{�l1�>)��ax�Ԓ�&�R�(���\1�D����h�Y�#F��fC� ��a�W3�͢����b9�P«x�ؼ��pw�u���ޗ�>9ޗ~ygI�p(��C�fF�1��뙶<f8I3|���h
�|@�u�Qm�}"ш
6����qzBV��ێ=�h�;�oc}�(��p�� Pkס�n~-��!�� �MDqHa2�:S���T;���9e��'�
{����i#N�����_�-��pS�4źPi��._9�+�|sr6"*/��-<-a�wsP9N@��-`X�z!��4{ZT�9Ӌ����Ȇ����"���F�]�
4����r9,���a���O���L�F �0�!=U[�IP������B!˺�d򪝔B�m����{��}�����9�NP�Y�.cż��MJ�	D���	ϙ���� E����9s'O:x�'o�CKW��+������ꑈ�3<���2=���@�r	ʲ�h�_�}/�Q��Aw�l��#ϻ���ԅ�h�s΄s�q�-[P�~T�c<�e�)��l�%'J�e��Ӻa7�B�ne3�&��ݧ��6O�`����裏�ر�X.Ǎ@Y��P��n�O
�����>������l�dT���@��^�
��z
-���u��ݽ˗w���2�b�9#*���ԙ���B;5�=)�h��m�~��g��>����#�US��"Ԫ5\W�
��Dѭg)�S)�0ߜ��D����BPZ�@B���v�j/��/�i˻>���9�o�Oa���S$y�C��E{{|�>Ja.ϥդSj��L|�:|����sA;�c�a�SØ�	�ſ��o�n�/�XC�XB�j�q���4�u/�(�KY��V�����l4F�����)ǜ�g��!G���ek������l_
	���?��|aVؒr��rW2��C��ޭ�g��v��'�mN��!�@p�2Lh��V�Wc�f�9�+����V9ؘ�<p��?��e]uQ�T����}ݭ+u��	�x��m|��y�޶�1��uZ�SA`�j6ǒ���j�Fسg�*�?CJU�RnD��}h(���'f�,e0X�\��J}ؠ�PW;�3�^^+z�.�Tk��b1D�^�޾�}��5$[����a�ֺ����q؝w����*�-�2�ʪ0�^Z��G%����1�y��n��
�;Rnhn�zL�A�Y�aȟ�.�g��+|4��Ƞ�Av�N��dG{��3���P��	��B�]��,jX��[�f����X�ʴ4ƅkL�!R��1�c	�f_�O���d��#�i����	�����1*웆�[�I>��ڸăw�C�fi��
�܂Dk2菛�DD0����;�	���ʅ��uE�˿�q�NT|+��WO�9U2`���f�f6�&��M�a���aA2H�����*T<P�L6�%W���	���>6~��v�R��l��ԁP�O�
O�h�/�D��v���N�J�A:^�G;��.�T��'�_l�n⍽�OJ��r�.}��R6�I;2�P�Ǜ��J�1��We�eQ�[��D��WPG���w��"���ԙ�C���'�G.aRq�&���؎=�K_��-���29�XT�+�+����jE��ľ�]?РeQ�0,V��ㆽ�����(����c��/�1�|u&2D�x��P�ʮ��
�m,�L&ti��������>k��e��vR5p��d�*���&�RHC�,ˈ�#F"�t	��H�L�}m(dĭ��,��fX��D �+W,��_43Y��lτ���X]�x���{��?l��9:���g.�>
��'��|��g�?S,xC��7\�s���s\��9^5
	�4�јY�ۍ�vkm2ԖL���q�1�4��L��(�#C�J'��)�ϙ���[�^��5�5uq���N�n:k�d�ᾴ���

v�Qt͟/R�~P(�""_,��Hƻ4<T�0<�ɸsY�r>�f
7ǜ菧Ӄԭ'M���|.�Sq�[2K��1l�F�y(d�F���0i-eY3DXRZ��*\�E����NץN����/|��V��$��
E�(�O�R��:2W,�#��7����_`�Qߗ���J����
Y�)�P:]�`�F�L�&ml
�ADH�0)f��
Ӱ	�`�C�F�0���Y@�Á��ʧ�y��4�'��ϕ%��i��$s|��lyF��)������\��EJ%x��@{J23�#a0��{����z�Zy�[*��\����p�֕�9(��{j�������GE0CToݭ��J�A[�U�MW��L�'D���4#��e���F��"�n�T��pz	)���/�D˗�.GNt.�'�`��:�#�IEND�B`�images/icons/icon-32-help.png000060400000005312152455614210011734 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<
lIDATx��WYp����LϦ��4څX�	�L�/8.ʼn��KL�r��a��q��$��$v*��8��8I9ް��`;A�.���@ �$����4�==�L�k��U���V���{��{��d2�,�/������o��d����q�ٹf��떟>�^�f��W��i:�	qB״%�a�c�g��L,������k�UA������W�ˁ`�j9�i���f���bL�ՙR(O�*ȤU��+� �>N|����ʐ�M�aժÜ�uB��
MOd�,9/�����8�!Hf.\����25H�_S�c&�D��#�"��v�-L�,϶'�ۇ�dƈ�&k��W��g3s��,#��O~���/&����@��6HT�G�����<`2rQ �th��I��yp;=WTX�-��,KH�u��;R�}�1M=�J��^�k�Ɨ���&��ՕP�A�$@�]��	��4�=�@���4�nMM�@70�2���epy�)p��P���a
�ˊ^Mv&kkl�j��_]�)D�廔��J</��b��.����)̀Ї�By�6P%���z���6�客�	n�Ӄ /��UVf�GB4�F^�j &k�5�S�9v���pG��]��3A�9p�q�����% ��J����^^~���"01tLU}���]��=������1`D�B��un�.�w�aWC˫�ȧ`��`�b��&��@�v�`Y4����]���ds��ZJ~
��)�!\>�z�.'��Jo
��ߞ���h8)���(�`J�nZ��hz��*��v��n@���,KVR0����m{
���0ծ?J�Afs�oY��ش��3˲	G@������tp��
ej�Qyb�ͧ`�3�43��K��>ntL%	j����y0�ޱ���?R4��p�!�FT����;,���E0�f:�m������fzO����ɣS�
wS3t<u(�w&t�e�g��4p���2��mhb$z�Dl�����/IvI�ׯ���p��p��	�#��a�5ݳ��?̏��T�-��>(��	�ͭ��ߗ‘ej������*
$�a�7�N�o����󤜚�s�"8�i,k�9 ^�Db/y޼�q�p���z�����o��R־����H6]��Ð}�-0Yu���G�ҊQ��:.H�)8@���%���Ҿb<wOFՌl�NJ��Ӷ�\E�%%
SY�B1B��-y�
KN�L�eiq(��+�¢C~O?u��{� �u�����b�jbyQG*0�������Ēi��<�K�=��kFθ�$�u�-#���´�H�k�ڮPx��c���g�kteS`������5�*c�9U8�l=`�7���^�ε��IVG>��T����7��$�<n��d�n����"��#�6��Bdf�$L�$��CCj&Tk&(�
V�$,�� @Ў��wt,�,���ǶR�Q-x}�"�\�
�΋W�1E�9�wY`p���췍���n���8�SC���A�U�뮠��0uAr,H~�k��wv�ݮ�ÏX@��-Ꙍ�N�{���
$��lQ�zA;������K� W��ض�m�KK�IXx�Ip�Ձ�(�Q��T
��^{
������d�c�cGv���[�A�xH��lsQ�0���Cl��-��i�*��aQm
�B��̻1Ӵ~&9<t������%r�F}>0�cw%Nv?���@�*�0���;s
�R�o�q$�k׮p �;6���ud��]�����GM�R�C���`�ٗ"d<	O9���PkJK��ĦFt"��E�s"L��#��ƸZ����㈭�u4"� �VK����x��Fa~�O���������m����̾�J�L]eE�%�B�t�J��q0nj~��m����u�|
��Ɋ����`k\U)+�]� �pI"P��-��DfO��5[M����9��r� �e��2_���啵��VΆ���ӕF�������6���01�"[Ӷu��0c�ޛ(��
�։U�4k8e�p������t�M���b#�!����[��B�E�G9�&U���à������d,|��+=�`(�ti����:N��*��A@�X-�����%���^юl7l�����30P2؎�4*0p����������=�{U�: �0�����A���Iq<Ԕx�%��&cPt۝ V�Z�C<��5�N	O�}C;�~��X�X2����Bдm�.��#M}�`����z��?ж�Www��6�E���l.g��}Puw��t�9d=��*���4�ۖ� y�f.]�XUM��g<熇�v����6�vb]��Y�ed���&�<�l�+��yw���M��ZSY۠�R.����m'�xr�@eb����T8��s��b�Ņ��b\"e��&��=�s��%�{�z�����-|�@�b����ȣ�;v�쨩���p8*q����dr)�_����סCg����lxIK醜Ň��{=ϧ`�V�ȣ��
�T�_6$��+�)��ܻ^�IEND�B`�images/icons/icon-32-cancel.png000060400000003246152455614210012235 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<HIDATx��W{hSg?7��ѦiRӦ�E�
+u�
��3W'����(�| R�V�N���U:���P�Sqm}w��:�vm�v�&R�J5���}��$ƘD;?8侾���s�0�����˗�<i�…o�YZ>��yB��o��M@#H��uu��TR�w���	@��j��.i������[W����0�����������t�@JJ
�s[���]�c�t\�P�� ;;���Q��s�e5��@�޽��[9\W��%�!�&�E�$A~�AL��^�
�

z�^��j�>N�\t��Ac�񵷃���X�9�s
,}�B{�{7��X�+�r�g}.zr"�C�Ν �u�|(ٳtHs���2�57�XKh��DU}.�j�����\�F�X,0x�8x/\�R�#��������֌�����DWtn�L l( �,��c0�,Y>q+i�����b��s�Y�D�g2
��ɤE�9p$d��G9TՏ�@�\^������L�3�.�d6�ׯ�pu5���AFF��>[9��J�O���L=�g	POHd�UU`��� ���,p�t�Z�9�0-�۷��s!g�|A�E�I�'!����Mnj;��BR�F���:g�W�ʻ��=��?eUusI�\䍌�#K4X�f#�ʂ�$��#l��AO	�
:�e��49.JFjNdv�ʏ���Z{KA&�X�H��&�	��G��b߽@"#-� Srs��+��!�s1f¢V�t)]b�/4h��F7o�SdB���8���\_���C��ʟK�^C�ݔРbD��;w��;BE�k�'*2��QX�@G"%M��0k�O-˗e�9Әp�i���6�m�ݻ஬���Rѡ��JF=H�LE�N�FF~�22����Ŏ��a5)rn�۵#ܿ��s��
z�@���,Y�Q_����vCQa!�!x��|��1���[�%�[�Z��Fq�kΟO��Ӧ�����|Җ��dm�V������r�{�Ϛ&Jዥ���Q;�lٵ��g��y^;������B��мh0��$ּ�ļy���h��5k���=Y��e���SgY����
�'�ԑ�����Z�.:�X#��>
�ؐ��Z/CA��84	wGvH'���<m=�%���&�l;���'O����9d��鹒�<�8H�b'�x�_T^�g��ͯ�P����:���!f���a	��=�6���?q⓼�bƎ}e��W�nm�	����f촊��"�ݓ�gVU��~hŮ�fA܊��oY�-�e�55��#�������c��j}:����7�g��5�6��Օ��O�(�4[��5@wf�ښ������Єy"��v��۷�n��
Ϊ�@^�S�8�v�$�����c.]�.��zh�Ԉ�;�'T��n74��)���tsnT���q+��A�J�B���L�:�+h皼<!�����t�$��3��!� ���K��_�Q#F �.�֘�c9�O
@�p�\�
����ʨ�Ǽ��:x��?����YIEND�B`�images/icons/icon-32-acyabtesting.png000060400000007107152455614210013465 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:2777CE122F7F11E4AC07EA2B5FF3C491" xmpMM:DocumentID="xmp.did:2777CE132F7F11E4AC07EA2B5FF3C491"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:2777CE102F7F11E4AC07EA2B5FF3C491" stRef:documentID="xmp.did:2777CE112F7F11E4AC07EA2B5FF3C491"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��q
�IDATxڌW	l��f�ٝ�����;8%�b�BP
��F��*U�
*Z��A�UQ��"$(�ԂTT��C!@CB��q����^����{���=}3�NUGz��}���X�����ݓ?�a���t��mm�QQ��b-'��a3�H�\��(�날Ȋ�������Ӈj��J�Ij��������P)W�X�j�]���~M�y.��_u���fN&>�H�/��
nX�"����L"��Tm�bM�(ULݜu3L�V+��bq� ]��,�����,�	���~��z���%X����X<����&;U�^��_�`4I�BA�/`�(�u�YD)���~c��Ld��<r���1��}�ಡ��=K��2-��
��B�

"I�t~����a���z{^�9N�������煇%��.t\�߻f���v�ofނ����ho�����y��:ӂ��Pt�o�
�t��a@Qdp|�cЦ��8�e��$fC�n��OΡFH\���뿽N��O>|t�����֘�ʖ��<����z��Z�eŦ���̛Ґ���m`(��\ZM�RW@,�I��)r�j�d�7����҈�7�vO���df~���k�ޥa$)TR�'c>�A������H3�B)E�V��'�T)'#�G��C%�NNA�WШ7�H2TQ�/�c���C+/���j�V�����dP(�q,�����y�c��á�.�Y�]�7���}q�s�6�r�}믆$�n�r�7o�^���q��ND;����:tC/T�U�|a>�ro�8�j�Jј�` ����Lʮ]NH����<6@�d��a���X�佨Y~�x�U��v䊓�@���#w׌��X�4��� ��c6_��j8���7/m��l	��1�bm3�Oi��²,j���^�E�}�A޾
r�����3%�!7Y�E)���+Pda���jm�2G�������]�P���[�j�_`7��h�o�Eą�G�s�k[�ć��jO�K��T�fW��@G�%�(����
C2:�	��rʸ�Ȕ$|��>l=0����Lk��`4$	^�s�:���u�r�x��<��k4�����$W�T�C���tEeI�'�e�he]��@�*�b��Sg�)Ի�N�v`�:</
�DAC�Q�9Ϧ�]�ٷ���w�|�4�ҡ�A�n�		r�N�]���1�n�V+6JRC���R�#�Ƒ�8�d{�f�82Q�-�M��G��!M�Q���Rٻn"��؋� Δ�؄�,�Sj����-J!
�"��Ys$;b4��\(�K�S�3�"6޲�K(�:6��.������}���L�P��lj���A��e�*&��	���45]S�41KA�TE��!�G ģ�[GDS��*�_�s��s�ɑ�8q�)W"p���� �c�ڵ��~�G�EmIw,���AWU4>��*@���Ռ��ؤm�/�H�Aɲ��f��|~T�ػo3fg�vn�.���.;U���E���f�Σ{�z��#g/�G8 !�(��ke�4�¹(H�R1A<a�'��1��s+�3>D�$��,��g��F�������Kgr�|Ý%�*�x~�BAp^�"�([4��nD�9Qj*4
��85 �^���Fiҏ��:մ�ے����vT02;�ݯ�
��֑�'�5uK�T�y�b�#~]s���9��t�ÇL�?(e=䵀x�{�Q��\$l`����S�?���t/Ftt����NcF��s��x��ߋk�]���A���!_���(�t�}�܅��,�������8:z�����8�g�p�F�b�6C�#�r�<_�n�5����V���Y,[A��7�%�fj���E�H��>�Ǖ|��>�84�)v�*N;��n�;�~+W����kn��وd�����i��*-�j�>Z�g����D9w���3����.u	*&{^dN�rʼV���z;��Hw%-Uժ��N�N%�S�}�(�h�w�İ�f�	�8��ϟ^�g%йK���qTh����Hw�[U�I�X`���q!t��8����i��=�=�<�������av�eۃ��s�
�c�p��ai(��|	!��U₆�PA
\��{_��O��"�h��;�T*Ǟ�#�0�{<��?��d2Log${��{r�Z�
B=����^G
�e�d��qT�O��ϗ��:�k���)�@.3���$��z#��2c'G�-�����c'gv?��C��s���~�Y��0��Z����lkc����G�qph�:rh�6�|~zr:~l�L��t�/J�uC��ox���牋�x;��H���\I=�5��n,�p�vK�(j�����Xҫ
^�n
}5�p��oۛ�o��z�ݢ �!|�y5#�?G�o�������it����p�6˱*���Ih�����Ȑ�#I�
�����Ӈ��@�S�~��t�У���x���+Z�q��~���\��Nm�+b��XmUŏs���ЩG]�i^,��̌������c��k7��+ƂX�:�eXl|�QOK|��h�H��_>|��ߪ1L�ڌ�~�m�2�����h�3/���a�
{�j�Z`�E �ϋ��uw/�"�d��-Z����X0l.��[�9
#IEND�B`�images/icons/icon-32-new.png000060400000002573152455614210011603 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<IDATx��WKlU=���ĉc%%
T�DղH"�! ��ME��e%������2E5T$���$RD�'%n���؎g�����W�eC�lx֛73z���{߳`�6������d�LOO�����3O���z?�5�t:=J N���X,Q�;6,�bÇ�^���w� css� �g�U�R�1
�aUU!Iҿ2��7�R~��!���8EQ�arfc�����!�|^
�"�>}
ǎ���y������������Dk��IJ3����
P$�m��:~�=�E���Q��J2�Pԃ�d�Q�K
y��H��b��r������Z7A$͈D�D�#��"���s4����vòE2�@�Ȁm�ZŊ��a�=Gޙ>ܓ�dM�`�,X朻�X��-؂7K��+�2�4�;��nu`�n%5hY$�,����P0�2l�.�	�h(�%�}4~��D�z���	�o�~��ҏ[�����G�X����{g�������>�ZQm�n)��M*<&9j!�U�Z���?�p��a�U�
}�t�����R)�8�؎��g���&���/`5m:ynR�c�y~�T�2P	E _9p�tB�sT��XOX&%Rj�/��3�^2S��o�����RZi��O뒮I|�e�b�8{����|	��P")2ZۣH�mZφD�D���j�m
���"���PY��.Ķ�<��ߗ�0��f-]m�U�y�6dц[e��5��1����̵����u��"ε�UG��G�eu��p��ΐc��K7�&mxk+Yds96�kU���Sg|�����xc-~OYґ z:���9��C}���@Qtuy!2H�]�N�CG������)ù�ڗ5#�-F���x��]<w���:әf7��
��^�%?M|����Ko��,�
��ԵʽF�Q��=��2�(��*�wǡZ�F�8O�$��O��7_;]�f��.���]�!�q�t6)mJ�u���j�<��{ ����!��<DS��I�P�h�����p��?���Qsb"����X4��K�p�ްɥ��4�s�/��n&��`tvvV"�D�V"=����������DzY��59�ܰ�*%$����n�ʫ���bS�5�]�E�[�l�###��h�D�*��n�|����0�>P��^\�����T�X#+w<STFu�2J��l	B������|-���RVe����.L�{^8�ȋ�n�r�?��
�o���4�IEND�B`�images/icons/icon-48-acytemplate.png000060400000011777152455614210013337 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��Zyl�u�����]rwI.I�>E��;�$K�����"���G�#�"��@b�E���@��
R'���m�ŽO�N�ȢDQ"���x��]�}��5}����'
��igg�����{�}c���M�r��b���p��`�+�(頻:���!I�/�{#	�R���{lV�#]]]O�tw�o�ٌ'��^�d2�&��wE���!VF�Ӊ�M�֓�655}���籎�������ؿ�m/���VVV�������h�L.�'�I�����K�j�B��u���>���xoo�]�M>�,&(�V"YL�\�^£{�p���qՠo砏����#�`�����������X$J�Rcd�IzvJ�ү���Y��Z��'�<�u`�hWg�����	'�����|
s!ɼ�B�>/`�C	����s��y�`3|[���nݣ��r��X8�|0��.--�/�����'���|>�DX� w'�ɷ�dY����}y�����@���&��D����.��qu)�H�@wI0��0�h��ࡹ�j�_�G�Ƨ��e�6l=^8v����5;��l��gw�4�{[[>��%����/�	yWW���x<~�aG^�F*�R
"t�9������Ҷm����h��n�B�-�Ӹ4¥�,�FQ(�ddL:°�>5�|6����p�q��~���+0�.*�����㓐~��Q����F��&8�l!�`�t���m}�?��'���4
����Aq���A
('iv����m�&l;�=���N\
�f�iD�@�ُ?��^˚[U��&r�#	����b�~�Ug�0z-�=ы�R��$��4/��X|K"K�ant�6���&ض�B]n���s�Tx������Lj��x���?��k��h�J�~y.���(�,$N�’F]	��C�@��b���IT�j�!��
^�$��AL~�#�cy$O�`��}���P3%�2�]K"7�F�A��G��qЊ0��L^��l�e�Gz�[���G?5�L�5���)��񼁄	���2>]!~'��z����EH��Y��C��$��B�ing�e�~�|�_܃{��E\{���W�#z��_�t^�Ą�S���8���&��2
��S)�fSȯ���&�::���G���M^��-b���F��������~���׶����C��'O�əJp����v�ޮ�^d�I�_{
��5:�"�\��؄��>%��j��]p�_ُƣ[��h��l�W�d�p��� 9F�D�|��-�B^r�G_=�RH���|m �}�̙����J�{t�/����_( ��u+�)`%b�"j,:8m�z#�9d��[���t-�n�S�KKR��`���V�݉-��L���]^B��
��\Gl|�0�!���~�g�ౠ�&�t���]0��ݻ
���ۡ��,KI�^��_|���}[�8;"���
*�F=z|�������\d4X}��%�O!'��؎\6+X�����"Qp�2�ZF�	f�Oݡ4P��TF.LV�	 2:���5��/�g�ȅ�O
Jf��;Z>x��'_�z�����2��x����@�����̈́@,����ף�`����D��T��Ջ�ڭ�G.�"��R-��F�3	����g5)"��!Oa4/�(�۷7�����A��������#:|�L��F0�N��n�c���8q���A��o>O|���#[	
ALY�a5�fb0d�:����ed�8�iXmfC+�̘�b/�ydIq���J9�����(R����V�wՓ$�)�d�i�cM555�)�������ܻw��a��J�S�f��rZѵ��%��lEg��#��E��9��L&Q^�`!5�oU�l����Y_��W���߼M���T�}k#;��yx�m�hjn�h�����2::�	�QJ��*|l�E�EWWW�Yy�5���`[[���Kd�4x_�,���Q)c����1&]�d��(�\���q�P�b#��N�)�X$���G)��w*�X(,T� �����E�R���,�ʂ�U*�B|�
��6+d"�'Bȭ�E��(����OQ�	��!H��*�֣z�g�/\>|��7T�<���
^TC��J�8?�'3A�RU���n�<+T���_�P�reU���
��d���L,-F�j�P�Ң��gϾs�ȑ�4/�dA0�NK�$�n��sك�4�ao� �Th��)�
��Q)=�"�I!���j�h�"2GlEj��Eɂ,T�ں�X~�2�ؠ/0;;���F�x��(�745$�lE�]��f���<�cC�-V��"eLUOIE�{��{�?>���<��P�I��g��L���kmf�艑��+O<��c��D����s^��X���5��-,}+L߉u6l�Ŏ�QV��г�m�]��A9�Gv%����Lz���U��S�75��PR��cǎ}�-J����� �=!�{�1�Ig�|�_W�ݓ�fo
P�%.2��X]��e�%��Y�3ʊ�J��Mb���G0���G���a��E�U���C��*KQ!��+�*	�-�^���wJvJNC��E��{��⍁[��U��2<<|rǎG8�x��x��Q�1�E��j{Z�p����r܂:W�Z�2�ٺ��)�$;mM�r�X`�%�n���ĉ�����0=����w����=�������󟺂+����f8�5��û�k�y4�a���
���v
�9ߟ$��<C�o���9�m��s7ÊY��|P�!�`!�\uX��(i)aC%�.L��o�g&)�����1�544���Ud�-[��5؈ڮV�!D}q�겳��v[�&F�RR{���k�b����ҾQ��簙*�����#J%5�~a� lQ���)�j2C�5��%W�"� �KV�#3��B�P����;+���̼>??�,[h%��wߺgя#�e�y��j+Т���!
/i�SU��P�Z�k�{�Kf���nĮ.��~���v�'�wý���Z�lu����������]3����	���0���>y
�Q�������|�_?���-��H��yd�|��Q(����
1ğ&����ǿ��,�3˸��!�����/S���d�'�^_��q����{��}��K^����	�����=x��wp��˸�{_C�3`ˑ�8����lF��V+޴ ��͊R��Йk8+�� Ȁ�g��NLI���݀P(ıyZ���e�e�935���v�~64[m#�nqU)��&�D�vzw�����7
i����~�>5��asؑ� =��yU
��6���B���x��7w�m&~yrh�^<�F-�RX��WA���K'�������N�kf�r�666�5-Z>`eL�&YD�!1�}G*������M���]"�Cs�޻q��`�[4��w����!�����z���9+�'�
�+WV�Kr"Q�p���0��K�$�air!u#�b,�B)'H��"�v�b�_=�"����?^2u���@VT��T*�2'�snt,v��!W&�5(�9>XH�9(ٲ�.�	v5W�Z���ܸqC��Jp���}_�}�F����Y�&Q$O���C�RK9O��Z���/9�M�ѤbpG�U청W��SNx�x*_(
�sF僽��1+�u^@�u�CFK^�a�B���a�R|��j���Z=��=��T ���O���猯�%T��Ο%~�-����K]����}����S�|Af�&�BGG���,+İ�J��5=����%;_ޣJ6x銘�U������Bj���W�P�7o�K��n �!��@[���-��J�%E�bllt����pQ%ˆ�bFˬ�XM!�A
Z�;{Fk+5e9IV<���gP��CI����nf!�(�d��0���<�"U�.�̹�[���~���>�����0[���D�f6�W�2��\���X�7"��՗)k��:7�#���7V�
����F��4�����"ݩ�0�(J�D2`���������%KR�ӓ8{���O� KbC�����kk}��ܢ�vp_�bO�7�|/��|N�/f2�Q�_��p}F
E��y�<��^u�
�r~$N�r�l�i��o*��%�<bq?��f�o.�-���z�zaIv�V��2<�"��#��v,,��X�+M�f��%d��wp���J��@�w�!ZHr�"�Ì�]s�n3���K� ��Ң���{F9(4f�/arr���U)[{=�T��R�5~�6�δ��'��d\�87q}ڜ5���/�t�v�z�D���d�ی&��F�Ѡ���E��m�P�L<�n�;.ލ�2.�TFFA�[I��)2�*b�:IS�}���M�<��-��,��zn��q�V�0���d������#�����r5ze�Qg5[e��F��q}�ZCsM��h6I��A���fb�Ug�׼EB����ؾn��#ᕢx��W
B��:�	�)"�$�$(`��uuNx�n4R�CA
����2�u�<���l6]Z&FKʜ�$��	Iz먓Ri�B.[J�o�bQ*Rj%�$�������:�St}�<�v��f��k�U��ȣă��Q���>U�+S��T�L\�j�����_ʟȤ�
�b<�/�*J)](��R���?8�M��X!b+�,SSk0�,$<�[��f���\.j4�ߣ�!U�[@USZO^f�h!&�S�)�HkKE�@
�/ʓ�9�#��|I���
e��*�"=���K��6�]W��B^Q�"'�
��N:�ٕݠ�!zZd��R�xB���6.�/e��m�J��	eU�O/\����H��`�*�K�<|�^�\1���D��$Z�-��ւ��
\�
�Ԫ�7�ȌUT��%���R�0�xy��2a�咪��nu���	�
*�[�IEND�B`�images/icons/icon-14-color-schedule.png000060400000000674152455614210013722 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<^IDATx�t�K(DQ��;^7�Wbe#�A����FM,<S^�X�R3S�yIl��6�!2�X ,<���v3u����3�q��w�=�|��eYF�'����ь+u`>�3��m����?�F��/E/`��r8�2쥍�-�F"�F5F���$''�Z%ucN�P�-�����D�$u0$V"��=�!L��n=��8�~9�h�l�L��zb�z?Q�z�+����q��}�r~ox��B�Q=�\��ۛ����D,��/����ya=qG��}�e���H�'z�ǘB��U\c7�O��D����[����3A�Wb PP��þ�Jk��t)�r�)�W���\/n!;@IEND�B`�images/icons/icon-14-acymailing.png000060400000001125152455614210013117 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATxڜR=�Q=o�e&N��nBb�c�$*ؤ-V"؈�?��`a#i��v��EJI%*���	!"qw	��d��w��b���{�=��DE8ϑ�NA ��='�B芢說��4M�L&�,�z�H$��0�a���d2	j� 6nV�Փn�� �{�3�V��f���Z�6Xy�^##H)��:H�P(&4�b��;��'_e*���h4��'ڶ
�u�\.Y	�iB�"����/N�K��֞��j/��8�����+�yƯ�\�m��W�^����bq�{�$3kƄ���p��~���!���r6SRz���`��}���<�d�a�[0����D�'������͝���y�N��O�\.��Q����B܅�{�>��-.����M�#��46�:k��9.�K����4��R�@��B6����b'_�-^�����<�X�L<�ƊD���פx���8U�d�
�G��+��
0}�O��=�IEND�B`�images/icons/icon-32-schedule.png000060400000004670152455614210012606 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<	ZIDATxڔWilg~�9w��z�k;��:.Q�IiUҖ�@�
P?(�P!j�~TT @T�Z�*GT�Q% �4�@j�{*i�8����Y�{������:�a��z5;��|����#�<p#6;E	�A��}^���>��i_SUu���x�A�s]��������K{�:<W*!�hx���h4܈�D�O꺶��)-)R��y�)G��^W�ipgÞ�������x<@�����|�@���k] ��l6133��Y���^u]߽8��l&�s+\��C�~�˴xi=V�\���ܫkJ6�Hr���R�c��"�G-���h-
\>������)��\��i��Z�o���(Nwk�.�?]�����.4�*�(��OU+�J+���w|GB��e�e(���������
�r"���=Z�Nw}���qeg4�t�2��,Y��i�3TMgD�����!'�d�3۷o�{zz�g�Ã��L�����o���Z�1}���5̸5���M��HK�-��:��*5��d��/VO�	��ȩ*~OܙL&A��;;;{��=%���ϗ6@��D��P�jh�����
��4��;КU$se��x��]�[y��I�
喵=AN)�����j����lVߒ �W?���1�{$*�C@��>��;i�%�=��V�*utvҥ�
`.\jH����J�Z��
��IP���΁�o�o���n~D�G�ȍ�7�qa�@w�8�LA&����������O!�K@�1I�Dϸ��9g=Y��?�<@��ElQrԻ����5B�jk��h4�tll��]�sv3���!���1�Z����_�ģ�G��x��(Q 6�>+�2�k�1{.��6�֥7����K���
'����nþ�џ�pm�Ǟt���23͒�a��do�^��A�o�]��A�;5�e�=��@x�����_����<&�<���yz���1�����m{#�Yt��[�z��|~`�;nI��t웸���d�(/� 0%'�*j�{Ѳ�d֚��k7�>�ɝ0;��c�`n����ؠ�mQ��`f��\x��!l��A��v�!�& �8�L>h���ևY.�^F�,�W�b�����?�]�vbb�
�_<r7�A<u�A���CFv0���>��Ϣn� �� ½
�Eɇ��B�k�a=�p�@��@˩!��m��D]=���w�������}�6��N�U��BN���ď"�Ў�MR�D`h��%T+ڦ�#�y�q���U�B�}=�=�x5�F6��:r[���eV���e]e}���1<�}�r�w��[O#�l��Ĵ�RC�x�]o|�9h5l���8\!ʵ�[8�_�Mv�LM�^��O�?�3�!�� �N��o��PBҴ�'��(0�v�_N���U,�$ꋡ�2�Nh��,��ܿB%�N?� ��7fF��D��e�m^���^�^x�<(�C�����!�0�r�p�(�C"��cq�1���Ǟ��=�8㾂��E�9�n.��㌜���jlLh�n�/� ���	~�ˆ�&/�z�z�"��⎻Y�&�+lXd�{��x�|�`n�����xs�E�0��r+��^T��o�����.>L���|f��t��թ�{��1���$��|>+$_g~� B>���81{U�����j��c�F�wp\�gGl��~;�
Z���2]���/z��q������x��,8��9��\���������4�am�eaJƷ#.��.Tq��q߾�1�m����b!�6��s\z�&N���}=h��o����'t<zP��rLB'�����2]e��Y/�9
�6�����o�ڹ+���5<���H*�f
���'@����˳�n^x����O�;� �31Wra(^84�^��
@j_���X:����Ͳ�����/���7�>&"Q�]���[�Lw8�������"G~{=w��f"�A:cphu�4���9Mw
c��B1t%�j������a�YQ��4��*Q�n�
̝C����w62	ˍ�Z��q��+^��7�V�K���7�8�L�V}��|�����/V���]u/��U
�%hA�q��j���ܖ�cD;��YV����.��sKf��B��QÏ$� 5C���J]��-͖�:��Xg:�.q9�ۍ��b��m�~P^iz�+ҍ�asv*e�]w��S�1MUb��F
�g]1�vM�T�A�
��.�Ax%	%��Z�4����Һ�5��6��:
^�����#��u���<׫ew��+9.Ѝ�l0PB҅K�!.�R�]�j�U�M\9��s��D��H���.���	0H�z�
�NdIEND�B`�images/icons/icon-32-acysend.png000060400000003136152455614210012434 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<IDATx��W�oTU��m�̴Ӆ���+iM��ې�����D%�M}�I���5�>�$�h�(� bBC%R"����t�Ό�mg:�l�ν��3�j��K_8ɗ�s��;�s*	!��C��ly���$����i��$�S�s۶�dYVɖ��~Hr
�T�����Y���3F�O
�!ls������yl0κ��$���6*��J��t�2������JIˊ����aaa�եP����Rh���/��o�?�#�F�`9i�g]A�Wм��T�p��V�2<���ʚ���F$-���T�U��@ ����J#�&k��f�6:u�+����N]]]�
ے͌Y��r&766j�P����`���8Wo6��kװ{�npŲ�	IњAEll����tsss�pbb�������ߨ�,�ϟ�Ν;Q\\�t:
����6
MX�)(��$����Ӽ(--EOOFFF�yww�=��l��.�*����Ri��EQ��z9���{�Fr*��2M,\�~'��g�"����^������@��m	/���C�J���5�at�>��Ǝ�^��Db�{��޳p����p��)���������q��A�L�Nbz�=�}M�erUr�m�<�:!qFX��d�|�2�sΞ���Ԅ�{�:-���5"�FGGq�Xt����=������Dt�C�|�]�Ǡ��<U �:w%�L:`�CCC�-�f�N�w��˸|�2���_Q��/�3瀎���ɧ������e�3�~*�/>-Q|�(�x�s��Á������N��B�,..���UM���!h�� ^2���x0ɫ	G�$¾��"x���+#�2I��UשK�.!�|ii	��������7&���6���8ɭ�I�s��t�P�����>���Q��B��X#�^}a�C%�&w3�s�:�p�Y3(yTVV":����DIII��HJ�5��'���&1/�N`�$�ݶ�+�\*!�~L�H��5ڀ��w�ŀ�=3�����~S��M���^�̯��9hozח�}���.�Ҹ��*�U���(F�
�A���9@#��/���<�$�ĥ��ͳb��7<>�ViapTS�l����r������~�Q���~4?4|_?M��e}{��)ѽ�a4$F�:�Ls��d:����p��lB	t�g����oIHT;G���Z;�N�T�E9~�1��o� ���;]͎Q�ݲ/,N��}��6A��/��e�}���\���m�C�9�>'SO��F�!�<D��`|�ع�d��y�h��<�2�-��4�uM�~f���	&WQ#����+�ӯ1BT=���R,3�-�y����(s�	�y�Iڛ��0��#��x�)'������`���:��|��*�n�?����b2��6~�P
G��F4�!�K�-M:S��r���'
�l��2� �ejp���p���v�h�]����4O���<W�,��k� ���!(���	IEND�B`�images/icons/icon-16-copy-followup.png000060400000000601152455614210013621 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<#IDATx�b���?2Ph:�H�"�=�s�������rL���?q B�� ޭP�O	���ݑ@Q�C�?�>���@u��?K��
���q&(_��*Tl�	��%��$?C���O;l�P~#B�oE
y�@������Y0l�� �C�Fv��-p�P:�X%€_��Pv��C��. @]��	���v�t��}�\���v��$z�a$���FR€�[��\@<������^��64��a͡�`;([�83\����e�IEND�B`�images/icons/icon-32-loadfilter.png000060400000004022152455614210013126 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<�IDATxڬWklW>����>��$~�ߍ�&�H'i*ъ�@DQ���TZY�2��<T�AR�D��H����@*A<$ꤥ))JE��񣉓Ʃ_qvw��w�q�\Ι�5���v��G3޹���~�;�aJ)����p���ϗ�_���k�WM�G�.�-����O������_(�f�S��.�s���v�]����Y�<���"�����!�{�К����_&��r�j
p��k�Y��:�|�+���;f<mǺO@(cxqP���2����[o���+��p�K=�������s�
���k��";;9-��k
����W�G�>Ԅ����z�x~�/.�[	�/�Q��-�:���h�ZZ��!pk:�I�CD\��x��G�i����T1W���1�8���g������MB��
��t��t%'/��?���T<Є( 7{2�	���_�P	.��=���-Z��
�R��Mۙ���̧_D�vDء���59�-;Q�L�W��bނ��Xx,�	hC�p
5\��1$�u@z6�|��7���qD!����5M�b�ʝ\��%��+�p������ֱ����]؛yR���,N_�`�|(���������hO0���g�G����(�v�3���t���g��|I�K����_�(����q��a����[?.�M�ݚ�0(x,	xJ�w��`h�H9D�.�4����Ϣ _b�q��ܴrJ;�*���u��d��
'���}/�xy�~�~������hz�WB��H& pC���Y�-�����0�W���.�
=�y:�Y]ܔ����Z��h����)[��Vv]5��*d�M}pG���F ԍl=��)��Z�C[k
$���F�����5���A��9�g�c�7���9V��FD7Ѫ���;l�QJGs�]x9��rA�c��=����<�`���`hh(V"����V�D"��ކ,�5�7#�[�s��ߊu{��̄xf�vh�F?hF�mw�1zW�QmHVW�p8�x�<|�;;�v�
�j�@��͟��.�E���O�o�����������07>��1�G��r�c�p�G���	\���l\��;���Xk
�`�-�CL���y)ĪVC�?�2r:��07?�Y�d�Z��j��njU�y��;_1
�753S��L��!����9���g�ŋ��j���=殑ψEF�N��1��ν�m���]Ռ��Ξ�ٹ9GcX_��T�����_��}L�� Φa���h�ZC��K�=5@��2��=���`/�R)iC�
yV�������7L3�t�_���WP�f�N�X\���[���U��;w�ݻwÞ�=A2�������x������2�B������qqq=x���ǎZ���C��m@%:U�x=��4����a�.��q�eYjii)o|����kl����w�$�[�oʭ��A1�4�S��p�<zGՒ�(��B哒�l'�4��;w�]�v�X
`}m��������QG�r��4Oޜ��f����tb�����D&��&,X�R-)(�ʔ������$�������t���77L�h8�GoTd2�%�)�{��;e��v$��ݒ�lӫҦ�NiGRȕO����+A	�
���ʎEڡ����4<���CѾ
B�=���VCC��|�G&��vVz��Þk��E/;�`����W���iۮ7;��T*ԽuM�/��6�XMm3���O�t�(�1�uF�EQ�&~'�M=�HbĜ�:?�H��g`�u����CL(� ��m�Ws6J)�T�B�!^n��\H�)+�yv!�e���C�fF5���sY��'�*/Q>y1>E9��IS�!�w\�;��l[�w����d�s�2�<�_�IEND�B`�images/icons/icon-14-color-template.png000060400000000504152455614210013731 0ustar00�PNG


IHDRH-�tEXtSoftwareAdobe ImageReadyq�e<�IDATxڔRM
�@~ofЅв�Т�t��u�"�Z�:h��O��i3���1�,�V��}HD0"��?H���Z8Zn�	r��-v�(�3x����(�j{�
]�k�3a�$f8�Am͗q�+�Ҹ����9�Z\x�t_]�>�RI��{�TԹ�ӏ��BK֤�b�D�Z��6�I��r����`�ڑ���#�O�s���Ref��g,�f5��UZ�)������IEND�B`�images/icons/icon-48-bounces.png000060400000012034152455614210012450 0ustar00�PNG


IHDR00W��tEXtSoftwareAdobe ImageReadyq�e<�IDATxڴY	tT����2�d&�L��Nv�@ �dEPQ)�ں�Z�N-ϧm=��������R=jU8*U��j��"�����$�m�O�Y2۽w��$��(�^��]������*�'%w5|_���t��Z��/�_�;�m��Ӻ��E�?ZQU���Lk��J�oY��2wx�|m�1t���q�P�h���q����3�Z�䚢�k
!!1��� �h�����{s�$�,�g��/��	��X������VVμ�ڥ�Ƭ�x$Iנ��0Xbc �W��9�����U��㖬Y\�rGgog}�s�O��Qm�F��w�=�rRS_���UI7��:|�p0���af<}D��Ӳ�;���Ag��Tp6�6��Gր����ͩ_�u������-��W�i��'g��~kgO��_��w��q�"�r~138�љ �	"���@��\-��F��pWB*ęLY�A�@�|�+���ai����r��隃�ܧ�:�{|�"��!^���z�v��o��*��F#��������3huP#*��ȅd�>�7��R�e��ٔ�ъ��qT���$CL�*�ÿ�{ĺ��{o,Js���(�!�*���,������@ ODtdxp�=�<lx�]ho�GZ$�bgG{�3`�������Ď�Z�#h���P�0���oB[���H���WT�)�*�%���>��%4n<E����Zg���}9_i�57%�kJ`�uU3��h�0�z�7-î	��'�f�VT܊t'2�t�F߮׿���~V`��`x؇�ˠ7��W6AuG��c8q����JJd�WM���
��w��p|BV^��"w�j8���f�C�J�yX�j�@H�J(
���>|�m3�
`�o��9c�>ݼ>>\��	?���UE�&�o�r�r
�{4h�H4���_
!�d�[���vh�����m]�;�tX^_�*J�đ�Hc�|�]�\�nŚ���b�0�MgaӖ�}h�ݘ�"�s�o}���p�F���_"ߡ��_��M�uwc�C78>�_���m5��L1�Lh�&�]W5���nX������n��a�4�.���F��$ߤQ��
<��U�����}Ae�N��;�ʼr5��&6����3��h��D=s�g;�t�G|�������3����5f׀7��E{�kϽ
g�G��V7��R�תi�)��E�g�����[:��V+j���:�[8�M��̼5�W�x	�Yĵ�<��KE��H�I�?�����5������#�GDN�U�ɴ �n��6-���87c��IϮ'rP���k[ࣿ~�t����p�H�%]�X�b�e
U%����!�/��I�I~`}�_��=�z~Eq��=�q�8�Ӳ~Di�H�y���E8�Oπ����Eg�;����O��7؈��Nj��ЈQ
e����~���s�9,CNA6<���X�z3�N��tZ�� �&���ߢ@����!E��k��TX��o�S�+�o��$�A���K�c�s6�6�^z�
���(�xT�!�fB울x+�<�;l��O����������s�i�p�Y��d��u�]�a��r�����^x}qA֝�Xƣy��f̤È����M
��DC3tt�èU)f!����KV,@�8v�G�}
�}pI�����yN�K��$�Z0[�)���3.��
�[�/�S@J�b��ێ��˭{�Ёc��7��<���"�DVk��}��$�5�۸��>�m�
N���	���â�M	Iz�'�XFE����h"�	K[�d�Mqi6H���EH�|��#ص���"�����ۘ��Z�2И�4�x�)BM���5?����.�?�e�ot$���cO��#h4��3�F=%k�w��ݺ���$�2��7��Dl��P��Kx�a��uV�Pm6����l|�ހXnm�(�g<;�������g�3�#1Vqb<M�p��1R�OC�pX���ɘ02�n��#'���u,��~��*�}R��myw+l��dٙf�?�`��Hr��mIf���D��?\jAa\ʴ��Y�3��w�4z�^oИ�&0�L(�cpo#~OLL�9�
uuuMMMo����N�;�31�d0�r��V�|�x�W>�/���x�]>ݾ/;�:G��܋x��v�V���ŀR�d6��f�шF�Pj�1#��	@&҂(jXaS����L���n�q��XB��}�g�u��W��V��uO?zOB�����-]�?Ϭ�v�(,-̆�^
�X�]�H��QFlff�Ӡ�h��+�B��qњ��9�z���N�+
�
͠�z!)�
I�ɐ��((��.Iҕ9@�c����=)֌�}��3oB'[y)<��/�بM��L��E�
�M�d��0�]�I���=��B����pXD6n�`X�~��R����+�P�O[>���%�e<#^x��
h��Rp�`hp������u#h���GQ��r�<�vY�p“�S��)j��@gԃ`��A��0���xNH�
�.�@������2�!�6�����!76^z�? � �{����ε���n<�.E��hG���F!����V=��a��0�`0$��Z�7�i:N����!�FRW,���ĔD�a�n�ώԃ��SO�i�H������񃳫�9b��������B+u��ؓIhar�x���psDD#��f�L�yt��`�.��,1�$���ek��o4�6c��2�g��#*���3,\^~_��\�TV��3Pa��鄦�'�j�Bl�
b1[�L5{!��~ʘ��FG�aa���͐�h����f�A����X���0I����Q�����;mYI�/
g�3���=8��V�'_vs�|�ԅ�T�ڔ����3l�~���8w��.'Gq�F.^
�=������r1|h�"GX�~����`���͖����Zij1Gk�粕,�GQ�i<��#�:=������� �O`�tȲĐNQ���AfV6�AMM5��99�!���vv}vV>x�KJQ�$�L��{?�fV+���uv;�t:���aR��3�A2|���F�gZc�HN��p����)�*cl..SJ�:����iX�DBR"@0`���v� �[��74�c3JJX��m&�`\0��V,�X��4p��_���3K��,qf8��jڻw��ߤ&as�A���V���֢z�*%V�a]��Ҳb������MMph�>����w-3�j��aOH���dߞ=0��j�e���\B�c6�t �d���%@��*�S�y�c���m!d�'�X$=#���~ĶqO��4�c�&q�����}����zD�1�&��i,���P@��Ʋ"1�����q�!!����f��m�XE��N�Bv��tZn&4~s��>�r�q��쀱��Ye���qzflwg�\���=N��1�xJJ*� Uf�CQQ1�w#K�jl��h/F�39�r�����0Z�d	�j<�G�BNn��]��i������K@z2�8
fd���f��
|�{ J�{�k�V��n����ܣ#��݅�́�iY0�|.�����A}]-����#�|�	� 223!-#�4
���At�S'�]?�Y��`6�P��m��0s�V?�p�����C�����6�����ӯK��y=>��_}�D��sx��O����ןmk��{���5�^<2:
�yy��w@R(3E���i�k�
��$v�|gP��J���;v|��g�F��(�t��J�
���ye[s���D��#��s]�;zv����tv�|d����RX�(ң##�����[���9��jy�c�R�ܪ*��Ͳ��53G&:4��ej�2��	������d�cx�?6u#�7��._���YT3�$�[�e9Ψ�8Hv�0�R�^�x	�9Մj�=��b�2�"v��?��:�8j�"�@Yy
;~A�����ì��������s^���S���o�#�|��2u'F9FЪ��2�N.9���B����%�S5lR��e�(.���*�!n��c�b"�4���%�h�L�z��^��D/������8�z����d�#�'��+�6��̈́�s ��Pd��T0"�p�	�r�C4*�r�>|X���FB�tV�r;[��&V		vHKK���T�_d��L�����q���9���Q��,������q�OLE�u8ɥ!WTT��H0�ā��������"��[R������
>߶
&�


5�pK�qЍ[W�
c *hu��� x�-��Nbm�SOp
6"�B�=�h��:m�t�ޢ�ޏM0..�����إ���qOԫ�jX�K�|�m1�9�I�`�ϔ�8�lĵ۾�}��}�Y�S��и9��`�N_oO�؄z{{\.��@(�kf;:�h��}�h3ř{vW6ē�3�`EE�HF�����乂�sL�\8�O�N{�&�p|�'&ܓ���_��v}���kOIMe��!󸆆<�P�"\�F�ٸ��g�Wp&6��h����;fk˜�=9 �(!�5!��-�
�FE>���9��#�^�V{t�U":t�G�B4Ђhq&6!hp��jO57��"�$G
i��`Dv��[�k�aY�Z��0��;a, ��0��D�x\F�e�Cx�{�]x���@�T��ѻ���Y����	����2��8��"��9������F� ]Dƒ�b���d��-�;!2hE3�'�g����j�;_>܆'��/�k�$g(��Ba#�i��!��
l�����ə�R1S��K�:)�6|��_�s�-a^�3tIEND�B`�images/icons/icon-32-fields.png000060400000005050152455614210012251 0ustar00�PNG


IHDR  szz�tEXtSoftwareAdobe ImageReadyq�e<	�IDATx��Wil�>3o�{~���=/x�p�8@H�8�M(m�&PU��?�?R��ɟ.)mӨU��V�EE�6���`��a?��������;cڤm�#׺�y3���;�;玠�*}�C��
�<�ԃh4J�D�n6����*�L~��lh*%�� �dHI	��Y�,�.Q�C���ä7��*��ҝF��)� �B�	�@�rR�(
�L�>16TTT^�re����<�t����c�匌��%RII�5��`���08��Ƨ�Um�G�z�v���#G�|���H{�D����m~���N��e`���õ
U�W=�w�'g�bFg7:�m�Dؙ�H_���C
�� ����B����c����oEX�X,ơ)Qd՜�d�I�6Md|�=_?���kv~ط*��F�����E��D�i؉'�N�$�x2��́��Q~�1r���z��v����O{��,(�A"&��r��1�:�L}��ufa�xr������H�N�t��B��*�ey'�o�(q�%V���h4�n߾}377��Sww��UG��^II�fh8�2}�܎�
�(tg�h�u�*r[h꺮o����Ǝ,RBc�y����憆�M��յ@�zdd$z�ԩM0�_bOy��š��_`����bڸq#MNN��>\^^�r�������y���4z[�j�*�<�l���T�a���E���JKK����l�,Bb�p��	���gjoo�T�%�����y�޽{�iek0:::ځ��ؤ=s8&[f�}t|�[V��a�+}�^��e��}�^i�
���*,,$Q�m�,�ݾ	��ѐQ�α��^��,miSSS1X0������*�����e���U-U��+����R����P��F���r�-E�Ӄ�...�����!!Vf��8s��,a������U�gj~Ա�…k%N>��C�z{�}��8��Ȩ&:|���V�X�r�15�?�:�]�;w��@�
X	/?�8KW!�u��<
�V�͏4��r��}�QcTNJ$Q���J��o����ʰs����oB�F������2??�a�9��m�+k���S0���z��s���j��@��I!Wș��(�����'���}(�悂;Xeߴqc�cE�ќe��7@�Kc�K�PQ]����I��	����@�}X6��>���l�����Q/j�o߾�"�FF�97Ks��4r��B�R��Ʒ>O՛jW���i� �6�H�[��L�V�nP��t:ibb������4֊0�v���-��ͫax1�_)Yf�b�E
8g��J({G���	��&�a�?��[�*�I�y	exw��p�\7Ь|h�v$�fxyk�p�}�)��2WUs����2וR�� �O����R�C�`����d2�A�N��Z��Cvv���]���`H�n;>	eσ)�eee���2}�a�F1����^k�7���T����}ছ��''&���w��ӆ�Q�i��� hf+}��!(�ɧ��c�����:��xp�$�bj���χ�NP|
�F�: �f�؍
��l��L�~O&#�fjjJS�B��l������S����`dB�]�@\�:��96�m߾}'[[[3��������L7~�^�P�f<{(#�}0�"�qF���'{�v�5݅%X!�=��ah�S>��b���%#����`l0�{��Wg��%+��Tdaq��]��6l�6PZg.à��$�b$$Ь�(id/����2�e�B1y*��HXCdhxhfp`�wvv�ci)tV��h��m��lٹ�;���~�/���쫠�{��4;
�9v�X>��tŕ�V�����U@܈C!�ӵx���#�G/�͹�Gc�I�L.�[�b���魬�
[߹_RQ�s_z/�Zi��鱁����rS�E����SgϞy�l6.p���!=��s�'''ެ�_�-t{�h|l2���?�w��R ���?"CČ�"�rp�%J�:��B{�RE.9
��y���F�y�`���,N;��4�E]����$
���^�\��4�v�j��v�<�
tG"��j	�8,+��DQ�� �(�J*3:�]�ߝ�5�z۪7eҹ�aϒ?��K%
��o����<RUU-���z���0��q�ሟ�Q���M�٬����M��b�5�,جF��b�1f�D�bS�A��t[p΅
�STV�h$3L�bE��T<:c1قr
/�)$ʎ�e��J\��IC�T0I,ʲ�H:��[^��
Ckґ�!g�q>��z�`�t�A�S4<׉�B�e+�,G�H�J��J���K$�P<F0B��"b(OD�	%��]|�3}](����3늤(S@EN���J=@g�:aY���1��	���(�k���)�0�d^d����*�����8ǖ��
QV�.P]��dJ+QQ�=��d��.��oR�7	����Ʋ| �t]����F�`[�LW�;�IEND�B`�images/blank.png000060400000000201152455614210007600 0ustar00�PNG


IHDRv�
9IDATx�c`�`X����-tEXtSoftwareby.blooddy.crypto.image.PNG24Encoder��IEND�B`�images/grey_strip.png000060400000000445152455614210010712 0ustar00�PNG


IHDR�1DtEXtSoftwareAdobe ImageReadyq�e<�IDATx�TQ�0sн�����2��#qY��g߷W��&"<������
��~]�0wQ��rܷ��)�cT�jI,�ܝ)�޻�T��������&X�8B�I?T!̕Y��~OK5���p�����8H�rɒ��9�p؇9UŦ�J�e�5Bb�>ؐ��fɤ������}dULg��5|͇�<�x����|Wy��JZ�IEND�B`�images/delete.png000060400000001472152455614210007766 0ustar00�PNG


IHDR�agAMA��7��tEXtSoftwareAdobe ImageReadyq�e<�IDAT8Ou��OQƁ��Dc��0Ƶ���#+�
�V,IDv`L	�7
��_`KMy�b�����AۡC����R���X�aZf�~�!b�ԛ��{N�˹�;�5�WOOO]SS�e���FS�R)_-����,J��\�٣bq�l}c��a���j�}� �X,�D"�������96��ĸc:���z���h4>�#Vj�؜���F�YE8��b@;�PP6
:��<88x�/��dw���,��
Y>�rT��,������J�Y�044t� ��ޫ*�2�J����O��Il�6�Z8Pv�+���S�T"�y����^>��X<걀��9,�,�O�����T�
P�n�y�Ms�}�d���sc��f��-�X**
��\����������+_�a�6��
���EA>/��#�<h7�bj}��Rڃ��&�&�����E����
O�U��Y�����y\��@kU@(�)J�JIAF����ߏ��VP�V�a��Øq�AU��d�,�bL��t2��������q���A;�F�;U-g$IZ,+%�{��΃q��u�ag�IN@��`�Q�%Q�N��FH�~��,
���bx	.�k����B5@)^䃼��v2;H�SH��H���:ލ� �w�D��p�����f�t��a�e�]n7Ÿ\f�����t�?n�K�;��	9�P��aIEND�B`�images/blue_strip.png000060400000001220152455614210010663 0ustar00�PNG


IHDR,�NƞtEXtSoftwareAdobe ImageReadyq�e<2IDATx����kA��ݝY��X=��D� ���z�Ի��7o���Dz�<TB�1���$�E��3�wX���4�cf��l��EA���q'I�⪪ ���f�ZiʲB�I��\^�u�/B�I�?<r#c�������w0��S��n���R���T�%�P����{78�B�k�j�l?|�4�,�6�P��?<���j�	!��"	]��K)�J�B���ȧ�k��*�P�;�21�5S�&��g~��EQ@5�	݀�k52O����>|)��4B�I;�e;�L�4�j2�;h$;!��4�ݡ_ ��n�&M��/e;)�P������)�P���S��o���э��-�l���0��N>���_Z�7��^���´�oL�M�_���ݜtv�@�_��xeplE���GS���mO:=:'�C��ݡ[#^�\q&����Ƕ�/~@�����z޾F_G����}Mʦp�i�lk�g�<��*kw髰hg��OJy�pe�j���g[��zw��(�o���U@4W�>��B�;g�Ҧ��o.W�$j���J�`S�_�?�IEND�B`�images/wait_dot.png000060400000002103152455614210010326 0ustar00�PNG


IHDR�w=�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:D87B9B631FF711E5B773BF0F957A08F2" xmpMM:DocumentID="xmp.did:D87B9B641FF711E5B773BF0F957A08F2"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:D87B9B611FF711E5B773BF0F957A08F2" stRef:documentID="xmp.did:D87B9B621FF711E5B773BF0F957A08F2"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�t���IDATxڴ�!
�A�w=�M�d��&/�״�Q��`6��y��6�&<X����Z`_ط��7����^_�Kx���5���O8��~`s8�
�0�C�|����O��V2���y�'��W2�}E��O汯d��江�c_�<��c?�g��byƿ(��~2�}%��W4��d�J汯h��#H.�nnIEND�B`�images/dashboard/step_newsletter.png000060400000005454152455614210013706 0ustar00�PNG


IHDR���C�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:5CA1D9EE4BDE11E59F48A875B2F786AD" xmpMM:DocumentID="xmp.did:5CA1D9EF4BDE11E59F48A875B2F786AD"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:5CA1D9EC4BDE11E59F48A875B2F786AD" stRef:documentID="xmp.did:5CA1D9ED4BDE11E59F48A875B2F786AD"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>ou(�IDATx��oG�gf׷�J)(P)PZ=8����M���(��
W�\�\�;�ϝ���$ql��w��(Z��v?���̼]���'Q��-~�!�~��\܂~�y0�#㌻�UT��L���zG���	�ĖN��c�x��+�o={W$��	�ߧK�p���M��<r��R@�~%R�V�_�q1vAg෕}H$���
�Bh���Cہ�:9�Ћđ�!���<��mrEq'}F�|��� 0*2����[Q��N�{��Ou��O��
�s����o��KY��wVG5���c�G:�#�.˷;#��U�e��}d�6�&廉�3rភ�b�b����]�xy�c���}t�Ȝ㝔/���@j��^���]�|f�ĉ�U��`���>��Co���8U{��&U��>��uY��dÏ�L;{'}�9�5�������+97�����ޓ�+r�����7���3L��+3"{a���;9��j��o��PVn�A���'��<�Y��pٓF��<�Wv���_T��ܴ.�����T|y@�����7rbN��,e���ݮH]	�q�,�
$�/-��?�r��̷Ld徎�]f�ώ�G�}�,�l��r�pE�,���f{��]�k�?�OUs���߿�>��|�9��K��V��}p̬�w}|��z�K���I?m׵�`;�T��W�̼����~����j���%Y�'K��q2�;�{D���d~����
&�6��6���wR�� ;p�,�!˷���C�9(�'����E�tM��0ն���>�H~��BN/�-Y�*�z!�2~nrG���^��Z|����c&�G��}��[���������"�"(R�E|��U�,�S���{��;'}��e��O����o=ـ_�z3�;P��j�1�}3�H��y ev�w¾�J�~U�,ޓ�σY�~���j/���}k�4�s���:M��A�W{��|ו�]��q's��#�����@�gt���˷�5x�¾2k:rhL�Y�_V�*��G����,�]�3��S>���i�_v�:���V{�UK�n��5��3�؄�M�rn�_�_��M��3�ڤ�]�E������xo{����ƚl��n�7��D���[�L�]�و���W���A����e\7�c���&���μ]s�P�OV����g}u��xl�H�X��gb����*�ܤ�=c+�0�O�Z����I�B���대��`n�wI���?�Et��0ʒG������[}z��q@�|�y0ń��Ȉ��q���)U��v��\��)���NpQ�?w�:����$�-�-�ֻ���W��Dm��4s†����+
�]��M�-&q�ǯ������.)ٰ����ү���E�C�?��CVU�܉��
m�-�r8g^]�_��|;��7�B��Ӄ���m�Xx����v�!
�|� ��ƾ��u�C���.�v0{5���"���+5�������E�P^��~������eφ|����D��a2~J��'�N�����C�?��C�?��C�?��C�?��C�?��C�?�C�?��C�?��C�?��C��W.���OD�s�]��YU{�T���.�>ӽ�>��@%�����{2�����������;
�e�$�w>83�T��Y�a�y���>F�G�i���){B���'�	�����'}i{B�i{B�{B�{B�&���!~҆�=HB�'m���!~҆�IBT��M	���a��a���o��G?z�H�����#�=~��Ǐ4~�Q7~����?��C�?�C�?��C�?��C�?��C�?�����P�GI�VIEND�B`�images/dashboard/plane3.png000060400000003471152455614210011636 0ustar00�PNG


IHDR"'j��qtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:F46DD6A64A4711E5A7CBA95D039331EA" xmpMM:DocumentID="xmp.did:F46DD6A74A4711E5A7CBA95D039331EA"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:F46DD6A44A4711E5A7CBA95D039331EA" stRef:documentID="xmp.did:F46DD6A54A4711E5A7CBA95D039331EA"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�'
��IDATx��mhMq���f�4d�<�,i6bD
/Q�(�!�a�D�C&!K/��W��a&"��H�yh��ڌk�]3s}��]�{�v�����9��s�{~���i(9�SӴ��|���ĕ
Z�^��5ǰƟs���o@)��-�:�ȱi�\4�ѤHS
� ��5��Ӌ"��/!�k�U�B���`���I`�Abd�p1EVS�;�S��)<�O0�X��yH��t\��~�7�:Q�\K}�~�bLD~��u�����Ko#�����j����t�VUh��b�Lw�Q���|��s�UC�B
���*�����Q���IH0��H	��~y�^׿�5*Ċ����Jg�U��xa���6�	�ѣ&Tb
�.+I_C�!�c�l� �^3��p�x����@!K]��`;+��	N�645,�aW+��2�d%��x^DQ�mkAx��i�GT��m���J�Ky��z��􄬓�����{Crb;l�Iϓ'�[���
�2�/�Elj��UDx8o�,�R���C�.0�U���|�Z��t��{�쬱6D����l&?ׅ�5�t�e`�r]��x�^�Ƙ[�VC*Wf�)'CO��4����0<e��($�9�4x���z���`��t�V�te)�rO�#8W��)!K�'d�\eC,t�
���jo[ܣ�w<��wē�٬�2r�NT�a�
6�����Q�d$�0M��l�^���J<D��GA�3�HSveN�<�Id�O��rvʳ�Ak��

r(�-��N9��-�8��9���n��x��]��7��Y^�e�+��]#DTi-`m��"�vb���[!�U��xl=č��7<��5�ŭ�#�F}AYk'�_���[���ϑʐ�ԴU��^q5$N�U�J��!����))�5IEND�B`�images/dashboard/plane4.png000060400000003472152455614210011640 0ustar00�PNG


IHDR"'j��qtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:0A32FEC44A4811E59387CB817EC10C3D" xmpMM:DocumentID="xmp.did:0A32FEC54A4811E59387CB817EC10C3D"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:0A32FEC24A4811E59387CB817EC10C3D" stRef:documentID="xmp.did:0A32FEC34A4811E59387CB817EC10C3D"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>� W��IDATx��mhMq�Ͻ��Ӑ���ʒf#F��%�R��@�<�a"Q�@^M��!"��H�yhf�]��l���\ߟ�g���9����A�էs������s���SӴ$P
���ۊ���Z;T�^k�a���h��APށ",R�������c
Ҡ�h"$bH���[A|�-��ы"��/!�k�U�B��`"����)`(@bd�p1EVQ��W�)<�O(�X��y.H��L\��~�7�:Q�\K���Ě����k����}p�&�������"Ic(�#��1���
��F�<�X�
�� �F3�&�b�.*�'��<��Oˋ7
Q���dIH0��(	��~y;/���˃bE$�σX���*�Ȓxa���6����&Tb5�+I_C�!�e�l� �N3��0�x��/��@!K]�y`+�5�N�745,�aW)��2�d%��y^DQ��k@<x��e�GT�Rm���ހW�}��zBֹ6����{Crb6;l�Iϓ��[���
�
0�/��lj��UDx8o2,�R���C�N0�U�����Z��t�,�{B�q6D���h�l6?�F�5�tƥ`�r]��!x�^���[�tVC:Wf�)'CO��T����0<c��)$繸2�Z�ul�Zp������,�9�J�s���SB�IO�ܹʆX�x����ޱ�G��8�U�'w�YIe�Ŝ���k�
6�D����Q�d�0YM��l��#{���=��� gƑ��ʜ
y�9���Fe�gA��L��P�[<��r�[Bq�
vsD�/��� �ۻx;&n=�"�5�ͮ��v
Q�����Ul+�j��i�B,�����z�	�ox$lg�q�[3G|��/Dik'k@���[����_XH�۪|u���ɪz%�͐�[��>(�^>�^IEND�B`�images/dashboard/step_sendprocess.png000060400000010345152455614210014035 0ustar00�PNG


IHDR���C�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:D7CD8A334BDE11E5A7B5827B0CA1737A" xmpMM:DocumentID="xmp.did:D7CD8A344BDE11E5A7B5827B0CA1737A"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:D7CD8A314BDE11E5A7B5827B0CA1737A" stRef:documentID="xmp.did:D7CD8A324BDE11E5A7B5827B0CA1737A"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��
YIDATx��	SG�5��>$a�3�0{�8�?�b��[��8c�I�`����}gY F�9��\.Ո����f�[̿�޵HMKE@�I��D�I��D�I
��;X��,�DQ� N?��_#/H�_im~EWu�}\
|K�Sl�خF�묞(<6�1�����-ᯧ�V�"��ĝ}�؎o�7���*�>P���������1Eu�M�/�쒦ޒċ	�"��:�_���0z˚j�ۗ�uE��7N��`��~X�u]�,�B����ֹ����N��J���Z.��#]k��#/%�b[��u�m]�ţ���*��_�P��V��u�'�Ġ2�CP�_�4O��4���~�p�N��S�Q<��p�q���ݾ����[���p�Q�j(H�?]o
��۶s�Qzv'�R|���_~�>�߹��F�~��`�JnI��e��Fс�,$p�ٞ�˽j�0�o���g;��w�#�����ke�h�A/IS/9��`��F8x�oO/|�l�8b�Z2�#����V�I������OfVt�+�<|:h�yۖ��1��}Uc�I6�4���]$�P�(vl���ŏ�j��A�[b������ 
{������/�L=�<l�h��-H��RtsBR�t�W����P�hOȧ�0�k�)<�����C��'���a��Lk�r�Jg8���/J⒦$)R>F��<;�������A�ý�Zs���h�y���
��"ϫ��YG8~b�?�'��,�8V��Eq��n8Bz��J~�s�(�K���e��?�}ѷ��5\�d]�)�}���;UN�ߠ���֟��㸊�����z><����Ʉ'[�=�e]Excf�8M�Q.�Y�́��O�oxg��+
�c�rл=�k,aI���B���O���μ�3߬��qz��y�S���}��S����,3�:���k��̯Ɓ>d��v�������KF��E�fh*�mZ�/�GK����2�]����1�|�x�qwW��k�U�r�p����d��}`�4��u�$�ҫ�2�>z�+˶�,��0���.m�V�J�y�3���?�G5eIU�>��?�Z�w�h�u�:�Vn`7Ld.\��2o�$���k*<�cg����R��a���;G~�*ű�gÁ��x`?����Lr�7�k�!"z�U]+ag_U���Tx��F)��h���.D���ĉN$n�����Ȳ<�$ik�Y'c��,�pa��F����p�ȏj�����0�B�SX�A��AK��_����5�l`Ol"����^�ZA0~�W��E���L���Sh?1�4K���=�����k��_�C?@r��<z'��_�0I����ʼn
C�b�Ʃ��"�+*�Y��Sx�B%Y��>(eX�Uo�yh�����g���wy�n�X�t��Q�5];?�Į{������*���ƒ�Pֈ�輷,ۏ�x1���a��̶�?t�۲�~4��(
�2�}C����-Id�M�0ܶ��_<#B�G�T�+?��[��!x�<a �2�-2��|�{/N��ıҗ�4tH=F'c>QϞ��g��kJ�yn?zY�6��n}A�\�҅�r䊈��o�Q�~*=��&#}��Y��^]ra�	n`IS��p�.�"R�]g8�
w����/T|�G}z��S�E��9��hm�"|u|F���v<�?.k*�L����8�X�T+���p��`��R��5	�~�usOq�z�X��#�u�����k�A罪k����l���p��6�PU��k��3��3��ك���yUW�y��1����Q8cYD�)Iڂ��z��k��;�X�Yi^:��!������)x8ȁ￲x�YG(��sa�w|��ۧ�/�bGh�{��<����~���h���~*x ��-I� ,O��*]*���7-k*��=EF+�9nQ7�6�d��E�0�|@����Y�]A����ţ���`��� ;�r����ɾ��)�ǡ��3�{���ϊ�}c���G}|��%ӱ�"?��/g�u�ǎi�y؂�i�8/�+�J���vl^oj|&�zަ'7����'�;���ry�
4��5i)_n�r&;�}��5����! O��&wjY�~�\�\����_�:�ȱh�f @�z�3r�:��8�i+EbI��Q��b��<��9w����y�}��o�S
�t��e�y��5p%��b��~��g���$>6/�v#�>_�fM.�W,�a��pY�J$/����j�]�^�bo,�"��ة�,���s�s�u;���������bl��d[�����s�qU�6\aJ��:�{t�ۖ3^�Co#��_7	V�)� �����uMA����b�j��O��O~���/b>
��$=�X�>G���#_m4~��#:�}�+֒��U�jZ�+_�v���B������1��Y��&����6mgN��1��D�G��}�)�����B]�G�_��\ s�%�|��8����N��QB�^j<��>~}P�+e�|U�#�^34�[�9��	S�(��:��1��5�/3�"��C��[f��*Fu�{U�s?x��O*�(iޏ�c�(�4MQj�{�
��#?�:�~��eg�b����}�<_�9��w?_�Z9�I�lY�K�NZ)�ayb_B��m;���az�A�aY�l��/k�e��*���ٮ3\�5=��ϯ)��s��;r�t�SH���V��;�潊̏���0uԃl<j�nt�b�o��X)�_~�a�l
�Q?�uk�~,��qǸ�b0�
F����b��;�Y��,�BH��w����
���D�|�G$|���4��:u�_��o�0<􃷎�\�=1eqi¤��)@'Hq�A�h����Ej��#~�'~�'~�'~�'~�'~�'~�'~�'~�'~�'~�'~�'~�O"�$�O"�$�O"�$�O"�$�O"�$�O"���o�}.J⒦�7��]�=����k�[���c(|�h(������.-k�?Ѹ��ľ)�O�R�\~���WC�￸���V����޽�E��ke>�o��on�޳�79'l�c���M�����6�s¦�oxN�7�s¦�?''lBBH���F'����	!�otBH����otBH�g&x�$��O	���S�G�)�#������W&�kH����Os����5?��k4~���h�4ǯ�Ο�5=�krv���O"�$�O"�$�O"������?��?��?��?��?��?��?��*��0BK�CW|IEND�B`�images/dashboard/plane2.png000060400000003473152455614210011637 0ustar00�PNG


IHDR"'j��qtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:61DE153E4A4311E595F4B3F57B733DDF" xmpMM:DocumentID="xmp.did:61DE153F4A4311E595F4B3F57B733DDF"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:61DE153C4A4311E595F4B3F57B733DDF" stRef:documentID="xmp.did:61DE153D4A4311E595F4B3F57B733DDF"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��/��IDATx��mhMq���f�4d�<�,i6�)�DI���D�)/y,i���(^ �W��a��$3,�<4��f\��lf��O߳��s�=g;�(��t�=�����z���4m0�_�7�u^JT�²���h>���|���-(�"%8�^P>�9��!M��&B| ���`�������2zQDV�%Dt-��X�v�&�A�y��X0��,\L���x��
�?�$֣q��	�=
�:�|�z�.$��@0����(��\������	a�m�!�?�	1�,�4��:���ê
M�P]l�����!��o1b���j�(V�F�"x
X�sY���x���y8L�����0*�u�{yP�"@����y(�t[�>p/�5r�0�?zԂJ�a��e%�kH1d��̗��8D4h&qiO3�^�;�<(`���`������E:�ŵV����Qϋ(J��`��̏�F}䷮m��,�^���}}�2zBֹ
��|���{Crb.;l�Iϑ'�[���
�1�/��lj��UDx8oR-�R&����n0�Ut����Z��t�t�{��6D�G�X�l?ׅ�5�t��`�r]��x�^�ʘ[�LVC2Wf�i'CO��t��|��0<e�b($�9�0x�*����!Xn8��U`!]Y��>�S��(�urJ���	�;W�o����������B���6+��\��ձ�ٸ���+�sED$�p�%�=LzKEh6[y9��^%"d���Q���8ڒ]�S!�8G���(���24j����A�����)ǰ�%��a7G��-�/����c2�&�3K �\s��
��a�UZ�[Ŏ�0�/��B�Z!�U��xl=č��7<��6���#���/Di{'�O���[���6ϑʠ��tT��^q5$N�U�J��!���h)���IEND�B`�images/dashboard/plane1.png000060400000003472152455614210011635 0ustar00�PNG


IHDR"'j��qtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:E13742AF4A4711E595D5BCB9258F09CC" xmpMM:DocumentID="xmp.did:E13742B04A4711E595D5BCB9258F09CC"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:E13742AD4A4711E595D5BCB9258F09CC" stRef:documentID="xmp.did:E13742AE4A4711E595D5BCB9258F09CC"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�2BU�IDATx��mhMq���f�4d�<�,�bD
/Q�(�!�a�D�C&�$��ëi�0DD����l��f�.f��=��uι�lg�W�ι�{���{�_�3ovOM���|_S��k��Xa�^�%�5�Σ�>0@9x�X��w��g�#�Z<�Qs�D�D� 
L5���T�7ZF/��j�����W�F�I��'��`�������YMA�O9~��@�<�`Pb=
�9 ��3p���ޠ;�DAr-����1����у~?����o!L��8d��; f�E�FSXG�tcXU�I���2y��F"8V�-�C̍TM�
](TO�x.���o�<<�)��`&��F��v��/jT�y����Jg�Uț���ܵL�7�kX��XI�R�`�e8��I�R,�if?�p\,u���W`'8��԰H�]�����<�㹗�T�ւ8�q˨��6$�p�9p�/���z���s
l�f
M����v�P�8�'O��%�U#�,d"_���L;���pޤ[4�l,n'y��]`�h?E�µx1鬙&��Ycm��1,�,~�;k�
�� �$�CP�^�Θ[�VCWf�)'CO��4��|��02lq���\<g%X��H]�t:}����}
�����+�䔐e�2w��!8�`ai�w,���;tՅ�;���lVR�`	'�c��qO�W犈H��(K2�{����l��r���J<D��GA�3�HsveN�<�Id�O��2vʳ�Ak��

r(�-��N9��-�8��9���n��x��]��7��Y��fW�u�F���Z���*��Eh����
����c�!n$��ᑐ}h�I�-n��4�&!J�:Y��W�JM�ϴz�T������W���!q���W���n�Y(�yr� IEND�B`�images/dashboard/index.html000060400000000054152455614210011735 0ustar00<html><body bgcolor="#FFFFFF"></body></html>images/dashboard/step_list.png000060400000004611152455614210012457 0ustar00�PNG


IHDR���C�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:85A6235A4BDE11E5957AE7B55E0BBA0A" xmpMM:DocumentID="xmp.did:85A6235B4BDE11E5957AE7B55E0BBA0A"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:85A623584BDE11E5957AE7B55E0BBA0A" stRef:documentID="xmp.did:85A623594BDE11E5957AE7B55E0BBA0A"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�\r�IDATx��[oEG����v�K[��U� h_��Z��H�H|(>R%�J��P@-i⻝���hD�c�nw��!r6y������h��|TUѹ�����~@?�������~@?��E�|ҿ�нJy�uN�F]ӌ�#G�8��~�п����3�։��j�}�0j��8�M��q�)�~�Zk�ް��Y�4DZ=�>)��:��IO\�	G�ews��i.Iv;FU�*^��^�� �[�ο^�4��Gn��tݚt�e�-�ߒ�8��J�����1o�qB��3�[ı��{Tv�Ӆ�E�s�`�7*%�����(ړ[�Yx��d<��}�7�����h��r4�du��V��—~axw�}ի������\˯|���~0�1N��r��L�A�z��64͔�(�v��mݓ!�E�~�����=Wj"�}�+u�&^����δ�U���������N�'Ӽ�%x6�~@?�������~xJ,詟���f�r��Fi:
�48�0j��2<�_��Of}�]���\.��Z�ᕦL�J����?'iډ5�9U��;���Wdџ�I� �������o[Ǘ�M�1���xb�m�p�3��V�d7ͫ�][�`,^.���'��˻�WĝP������w�j6���mUo��P����x��e�����`�-":��%�}@��?�+��3�+I�g.
2L���c�z���D�8Z�/Y!/q��O
_��{�پ�U�Y�?m��l��������U�iV�oKR�g
��������xe��,r�3���S�%�I�y�3�䃇������~@?��R���~�^��c]�����D+|��wDxv�[�Wyű6tݞa}�A�����r��{��]p�R��O��`��N������R�l�Y�"�"��c�ju�������W>wl���{��0���Vq7w�W��N���������k����Ъ��^�xS����ۅ/�枒%����^�N����Z/�� �sc�0�kT�'}7�rOn�~�Sx��޵9v`��^7��V���l{�T»��V�K�0��߾zhO��GI�w���+���{q;���lO_9�_�?,�qk�w�����~@?�������~@?�������~@?�������~@?�������~@?�������~@?���G1��w�^�h��8nw�ׇ�/�WE�}qu��_[���V��J�T��wDO�{U�>�;藖x��`���~i��#�|�{UJ�q���굋��'�nOT��q�P��')W9��7�3��O�τ��W<��_�L��~�3�꥟�Pu�9�P�@�~�!�=���W:�_�@�~�!��ҁ�^�	�O�c�'࡟��~�	x�~<�&�)���?��~�)��5~J�g���Y�t��?Ճ���N����������������~@?�������~(0����1�]5IEND�B`�images/dashboard/step_contacts.png000060400000007262152455614210013327 0ustar00�PNG


IHDR���C�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:BB4500734BDE11E5BA77F71D736FD0DC" xmpMM:DocumentID="xmp.did:BB4500744BDE11E5BA77F71D736FD0DC"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:BB4500714BDE11E5BA77F71D736FD0DC" stRef:documentID="xmp.did:BB4500724BDE11E5BA77F71D736FD0DC"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>ly��&IDATx��{s�H�i����6?�&3;��V���7ٿ��vwf*٩؉�c$�f� �?b����)��(X����iu��?�yR��*��!�*���%�U4�t�p�4��o�d'�0NɈ�E�O�mSݨ�um���
>�'/L����]7�:�R{���
kյ�u�ٺA��LM�G����Ux�{>�	���[��z�zӱ�[��Fj(��'W����&��Ymw͘���	l�e��HY����y}���>ޱuD�|ѯ���N����Дw��+/r�d�Rc��PgC�#N�!���?�w
�-3���k�M�?_��)
3UV7SOQ����r�TE�A<�a�Џ��\U
��m�:�vS�t�
��[��N�A'Q5���WF�ȋ��at��Y.g���d�׫¾s��5�>��[�dӴTv��P9�sN��US��������P�*l�����FU�$���橋y����T��e�����t�I�d��	D���)����Ц�b�x�2�~����jӼ}L��]Ӹ�/L��[�}��?�0� ��A���h��
�G�t�Ҿ�Y�fZ�#�\~��F�躚����[��<�am��~��_��`�A��Z5�����a�/2�B�V���׫����f�V��d�G�@$~�����	�f��O_��/���T&����}�x@*�ɣ��#&i�.�%h��r�mkuSd9��9 �d.��� �(��~q��\|g�ƣI�!;"+(��C�*V���?�}Q,�lƣ�?<�G~�#�EVR�8�T�g�*�UE�91U��j�ӫ�3f�ņ�tAywMߴ5��˘NC�:��ְ�]�#[A-�������b��lRI�kI\A�D�_����ɖyarx�O+�QZ������?�f��ߏ]j�vk������_΅͚�P�%��_R&�<J�_z~�
��|�
��l?��(���+��5i��(�߻�����%���_�S���y�s��uҔ��b��+�.�՟�/�"��_fK�aԿ��=t�zaD�Ǔ�g�տ>)%~/�)�O�T@t��I��
�0S�O�E��R�3��ҧ^������xÕgati��Ⱥ��_��`��s�h�{�~;�鰄p᎟��D�y)o��|�� �;�.��}�q���c2&#D�
���,}�]u��"	�x��{c7E�s�K
>��HFO��v.����Dk|���*l�W
�r����[�%d�V��8����`��e�@���?״��4�9R3���˜$�z��3���/�|������,�k�m�reo�h��.N�#w�R:
m�ilښ�*�ݵt��UH�!�F�|@˸ŗL��ڱ����VUu���Y"ji�޺���_z�i?8���tw���_ω�Q�{0a�*�#Kd��$��7s��ڪi톾Y�jW�N�N'z�� �L@�7veR�
�3���Ω�Q���_fD��1啮�n�%��_Q�l\���~�r�FM3�%��OD������ngr�~SS6jj���Sxٽ]@0>ԅ��(Y���?1N��lC��K�ִ8�{�e�r���K���q�E��l(SCl��ޚ9��>E�h��]7<����lO�����S�SL�N��~���c�i�b��Q�x�/�M��~o��n>`"��c�N���0N���R;xb�IT���4	��n�6�����ӹ?;��'��W-�1��Qӡ�br%)][���|^��U�ܭ�����Vc�w�fc���e����!E�x�����ģ�:��)@�[5Ҿl�?�d@��ZC�te��ৄI�v���2�;�㯽Q���9��'�>��(����k:NӢ�F�Yө%Q^�DO�&Dy�?lY���b=�`�_֟o�����o\�K������~ܱ�dA`�蔽�4���,*Y�����z?	���,���m��v�톞s��7�NC+9��-@S~zV�>��	�������t����#��75��{��r�m���o$ux�-@&�m6,����ruu���V�k��qrz�uU'��s�8?����Ǖb�B���4��|Y�V]۴s*�ÿ^Ӛ�Z)�6Ǘ$&�'7
�n�w�I�b�r�Ogީ��
��i��u�8s���E���M���i���K�̃�l�T�参焿nrC-�⺩���x��1�|.��D���,�����͆Q2t���O!���8�@6y=�1J�5��%���Z��d@
~!�>s8iJng��u�M�$jywq���|^����/A�yr����K��m^Q�?�$�� ��];C��C�����A{���zUm�b,ۗ^��o�SA~�G����mqy�vC���^8����i?T��v����f�����
‚�bh���ϰ��k�P���ɲV���~�!�~�!�~�!�~�!�~�!�~�!�~�!�~�!�Z�Ԓ��[M�M۪�$N�Ǘؗ%�����z�Ho�N����M��X7Ӷ��,�)�?��/��[[ʺE�d����dx�7O�`_����㧛��3�>B�_*�G��C^fOX�
�䞰�K�	ˎ�䞰�K�	ˎ�䞰�K�	�J�u�',�!��w�
!���
!���
!����k�q����0x���0x���0x0~Ҹ���RG?��?��?��?��?��?�����ݕ=�!�~�!�~��~�!�~�!�~�!�~H:�)�ܾqP���jIEND�B`�images/arrow_acymenu.png000060400000000400152455614210011365 0ustar00�PNG


IHDR
�kT2tEXtSoftwareAdobe ImageReadyq�e<�IDATx�b�]�����!��.��_�E���O� 6F�58д_@:�� ���_��"�
n�,��\�B�ոHMAҌ0�����T��@�D�&P�Ù`A��.`���-��"�1ԁ�3��\�5�p,T�j|�5��d|΂a�M���=�}�IEND�B`�images/spinner2.gif000060400000006350152455614210010245 0ustar00GIF89a�r��k��=Mfd~�'46DZ'1AM`Uj�FWt(.:M!�NETSCAPE2.0!�Created with ajaxload.info!�	
,w  	!�DB�A��H���¬��a��D���@ ^�A�X��P�@�"U���Q#	��B�\;���1�o�:2$v@
$|,3

�_#
d�53�"s5e!!�	
,v  i@e9�DA�A�����/�`ph$�Ca%@ ���pH���x�F��uS��x#�
�.�݄�Yf�L_"
p
3B�W��]|L
\6�{|z�8�7[7!!�	
,x  �e9�DE"������2r,��qP���j��`�8��@8bH, *��0-�
�mFW��9�LP�E3+
(�B"
f�{�*BW_/�
@_$��~Kr�7Ar7!!�	
,v  �4e9��!H�"�*��Q�/@���-�4�ép4�R+��-��p�ȧ`�P(�6�᠝�U/� 	*,�)(+/]"lO�/�*Ak���K���]A~66�6!!�	
,l  ie9�"���*���-�80H���=N;���T�E�����q��e��UoK2_WZ�݌V��1jgWe@tuH//w`?��f~#���6��#!!�	
,~  �,e9��"���*
�;pR�%��#0��`� �'�c�(��J@@���/1�i4��`�V��B�V
u}�"caNi/]))�-Lel	mi}
me[+!!�	
,y  Ie9��"M�6�*¨"7E͖��@G((L&�pqj@Z����� ��%@�w�Z) �pl(
���ԭ�q�u*R&c	`))(s_J��>_\'Gm7�$+!!�	
,w  Ie9�*,� (�*�(�B5[1� �Z��Iah!G��exz��J0�e�6��@V|U��4��Dm��%$͛�p
	\Gx		
}@+|=+
1�-	Ea5l)+!!�	
,y  )�䨞'A�K����ڍ,�����E\(l���&;5 ��5D���0��3�a�0-���-�����ÃpH4V	%
i
p[R"|	��#
�	6iZwcw*!!�	
,y  )�䨞,K�*�����0�a�;׋аY8�b`4�n�¨Bb�b�x�,������������(	Ƚ� %
>

2*�i*	/:�+$v*!!�	
,u  )�䨞l[�$�
�Jq[��q3�`Q[�5��:���IX!0�rAD8Cv����HPfi��iQ���AP@pC
%D
PQ46�
iciNj0w
�)#!!�	
,y  )��.q��
,G�Jr(�J�8�C��*���B�,����&<
�����h�W~-��`�,	����,�>;

8RN<,�<1T]
�c��'
qk$
@)#!;<br />
<b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in <b>/home/ajaxload/www/librairies/class.mysql.php</b> on line <b>68</b><br />
<br />
<b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: A link to the server could not be established in <b>/home/ajaxload/www/librairies/class.mysql.php</b> on line <b>68</b><br />
<br />
<b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in <b>/home/ajaxload/www/librairies/class.mysql.php</b> on line <b>68</b><br />
<br />
<b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: A link to the server could not be established in <b>/home/ajaxload/www/librairies/class.mysql.php</b> on line <b>68</b><br />
<br />
<b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in <b>/home/ajaxload/www/librairies/class.mysql.php</b> on line <b>68</b><br />
<br />
<b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: A link to the server could not be established in <b>/home/ajaxload/www/librairies/class.mysql.php</b> on line <b>68</b><br />
images/emptyimg.png000060400000001460152455614210010354 0ustar00�PNG


IHDRZ[|��gAMA���a�IDATx^��J�@��?��/�x��A*X�P�P(
z$ۆ��&3�[8�&��3gf7�g���Z������,�	�Arq��%�AuP��da�0Y�,C�z���q"�qw;���W�z����#~��Z��g3�Rǰ|Vz}s�y��E�{��8ay�8���BJy�������`�h���)�.J$�;��N(�(A,����x}{c��c�|$��;�b�(@�:��)"j�?K�l����T0E�`��F�a"�8Ti`���1�csơ�ta�8����A�q����hǁ���BH�L�hj�3Y�4i�&"�HҚ����� {�l~ô-�i�6K�3��UI�U|��oT3�4�6�M�ǀ q�od!�̨�~�]�H�кwb��1f�GǪ�zj�V��^*�*�_hU���=���6�f�N���,��O�Yu��T��0)�"�z�e���htǢ+��E8�aQGU,
�0z'�
[
'Ք&���b@�.��/�HÁ>J��BS�R�����M�R����{ª.Jz��Z��U(eԁ��`x��^wP@����+�@�LG�.�K�Fu��yp��M�9�$i��:�.1g0qT�,9oxҹʨ��q�I� ��QT�a�jL&���2��Fj���4��i<#qpE���3Y�x<���A�w�;F��UZ)��VJ+���J�Y`ceaeae1&�/���Ck��IEND�B`�images/file.png000060400000001323152455614210007436 0ustar00�PNG


IHDR��E�"@gAMA���asRGB���$PLTE���q�����;Qt���z������ኢ�Rg�g~��������MIDATx��� E��1��V��I�I�^��4Yك�P�����֊���_kic����1�.ⴒ�/MK-i�W/�,��i�[���������]-U_LZn���zE�G����J��X�iE<k5��x��/�s�����XǕ{�QD]�UzŹ��������q�bjZM\����ӷ�Z�����W��\��\/�\�� ƔV?�q`\Z����1i����A�+�Q���Kf��Ӵn���V�۸��ʧu�506-���A�Q+�O͕OK����փ�ށqj=�k�\9��hm�>�Vz�Uz����W`�W�1�|#oZ��KH�pk�a@�eޱ�jU���s�������)Zyu>=�YZ��Xh��#�i�@�0�`�?��'IZǀ�X'F����;!ZTo���p�D���ЖC�����),�b�U,A�UV1�N��Ҫ�nUz��V��U�.N�
y���j[��J��A�1�M,�f{��&n��=�:m~��v@Fi�jÚ�M\�>���(�2A�鐠g5k�
~��H��l9<��m1�vd�@ZB+|����*�ˁ�uIEND�B`�images/tooltip.png000060400000001327152455614210010215 0ustar00�PNG


IHDR(-SgAMA���a cHRMz&�����u0�`:�p��Q<PLTE����C��!����?�݂�����~��������l��U��������D���)��l��q��0����p����"���������1��������K�������k��t��C����������Q��;�܋�����%�� ��l����#����?���ܩ���6�܃����%��"��o���܆��s����l����_��M��a��C����1������`�����s��;����7��o����>|'�tRNS@��fbKGDY����IDAT�-�k;BA�{�����t�S���N�����/i�s֧Y�~�=3D&> 
G�KT�?2�Jx��x�$t2u|�@Zf��B��|�x&!�9��
�ť�U�2`;j�7pK&�~wϋ���j��Вmz|b�;]����p��3E�~���������يٜA,����1�C}.V����K�?��o{����O���u�!%tEXtdate:create2017-05-23T11:39:43+02:00�a�%tEXtdate:modify2017-05-23T11:39:43+02:00�F�hIEND�B`�images/moveup.png000060400000000513152455614210010032 0ustar00�PNG


IHDR+�>}gAMA�ܲ�	pHYs���o�dtEXtSoftwarePaint.NET v3.5.6Ѓ�Z�IDAT(Sc`!`�]��e�6֠�;)�1����KF�DQ$��'{���SN��?���Y>���	V$9�4S���뺮������}�����?���%Bi�<���.��������
��!P�5�.*r?�-��e�z[��W����	 >��������9�����ӺD�/��B0��B8	��:-���-���	F6)rf���^IEND�B`�images/statpicture.png000060400000000227152455614210011070 0ustar00�PNG


IHDR(�4�tIME�
112�3�	pHYs��~�gAMA���aPLTE������tRNS@��f
IDATx�c`�'�IEND�B`�images/refresh.png000060400000000657152455614210010166 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<QIDATx�b���?%���B��M0(((H%��@���| N\�nX-#������F��0������@�+##Ð��Ǡ���$x�����2�f�^�:[WNN�a„	 W�.B�7��0����g��#P3\��wha�������%PAf�F6h�]$s�>�bbb�@��M�f����������w��9x�YZZ�0 ::�C@K&@W�چl3H��&!!a�0X���YHH�v����Pb;��@j�,Ě����m�̙s`���@����>P�����'_��8r#,/(@SH�d���r@�<�e�^3��IEND�B`�images/poweredby.png000060400000010511152455614210010516 0ustar00�PNG


IHDR�+i�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:5E0310FD683C11E5BE1A9B13FC5A1A0B" xmpMM:DocumentID="xmp.did:5E0310FE683C11E5BE1A9B13FC5A1A0B"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:5E0310FB683C11E5BE1A9B13FC5A1A0B" stRef:documentID="xmp.did:5E0310FC683C11E5BE1A9B13FC5A1A0B"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>iz�
�IDATx��ZiPTW��z��[�fGAQW43�he�hL4R��I����$j�,�t�N��*�Ơ���5ƅ蘸GTD@e_���~�5O��fI�Dͤ�?����w����;�<dS�����vA7�ݣ���IJ�������T]]�
�8��.�����j.�?lذg��}��	����T��\WW�f���r����$77���
`���GDD������:m��h�޽[ZZZPP����ܢ��bcc����V��v�n�۷o�)+.:W��:4ڍ����j��d�*�S�W"�l��F��Q�y��rK�F.���;^��-ϕ�����G������ȸs�,���0�We2�������`hii�����֭[���00G�|��M���{Z�V�H���w|zee�����ߏm�������gCC�7�|�t����bf%v.,,���Ow��
8}||z��
���5k� "���y<"cÆ
P��~�\&۰r�٢�%Ū�]�^��^��TvOi�b��Fm+n���c^��g5i1a,ϕ���#Gbr��� ;;��������3g�]�vݺu�
�޶m����c��qΜ9{���]�J�X�~����/����������߿Q�V�ٳ���8��%��W_}�~��-[�H$Xp��[����/))	��qNNη�~�g�Z�j���ׯ_?w�����9�"83󴫻GB\����yw���8�Uf��2�r���lv���ɷ��Q,��>a,ϕ������Mx
`|���+W��XA���7n�T*�B�		�����)S�㊊���V		=p����ӧO�8q"&&f�…��ΗNz�!b����S�N�ŴT���0���$�u�-ZPp����ٳgi�p�G�ʹ~}”��`���kї�vʹCZ�f��P���t�N�Q&���+�ֶ��䰒�z��1o5[Uf&��Ngn�j��F��2Yf�����V��r����U�_m���yI�$�l��^�����~饗�;�O$0@��˂����			 
A��(
`���5n�8,�}���Y�`�
Nυ�>|`�>;<��m�[X���P��R
ǘ4i����㏙��o��6���*YӸ��/�=	�X����An\�mk�泵�����U�Z������B��j�x$�`�Y(V��pc��`��m������'�Dƒv�1B���&�6Z)	���6'��z_��|��Re�l��&�����mƨ��^~�7�9����ʕ+(���00���?����={6b.suu��"�'O��<H(��?DCrr2���m�h
��v�F���c7�]�ә�шc���j�9v�^^^](Ϙ1c��9�=q�D�"f�ɹ�=dD<�C(H���N���r�?���v�z�YHC�\<T��+9
òhi/7>��;z�-�R�g����
��j�#.����R�5�W��W
����*���7����P��R�2��pτ_���r�%�TV�2�𞚗�dy:~{�������ᠰ�0��AKa����Q��iJJ
p�N��}��M�6���?>�!��ڵ�W�^���Nυ6",�4������%.�M@t�^ݾz�*6����$qNz>h� ;���8��+W�>dǵըTk��w��pSVMTb��˓��F�&�^�)>Xc��&.�*h�M
��K��(�u�MoIB�$��
��j�vO2���f��;O�0����J]k���.��+ġ�w�kH@���:�ᩱD��NG�B���-K�,�'(,�	j�+V���_!e�r2���;��ի�`��Ǽ��l�P���i�(苀@Eu�G�y��)�J��f�����v�܉��������=<melժ�L�:��\A���5��>��ն�rU���֪��u��.����Ȝ:��jC���dy�\�WH��4h-��:�'���{X3��0z����z
��2�f��P�綈�#xd^u�Sc�A���0@v1���3@�9ұ�ܼy�#P�v��%��	>�����zMdt|E�8z�(Db�ƍm�k�V�{�wA_���xv������캹C�������
��7��Ko�!υyW]xp�F����b��B�f�zԱ���Ѷ���j��6
V�-ؖ����>�"��Ѭ��a�ˮ��M�0��(q���k^~�e�?� ��-)������B!v��}h5`;flp��B
�8s���+w�;}���������n�f,�v�Y�\�$	NZb��W�wM�Ť��|7ֿAkF�ds����gO,m��K�%�>"^�Ҡ2Y��
�Eb	&��$v����PT�]D�ّ#G$�56z_�B�m	E��#A0FT�`!�.]B�M��:v��H,֢�A7jU5*��Zu��8k�������ǹV��o�$��s��-u��v�w��fx��В�jW�3?��%��~=��ȭ�8]ՙm���n��K��ݽ{�


�D(h�KH{`�m�4BÆ
;|�0�U�N�G"���D_K�dp	du\���G���/[���� ���>�x�"�̆�2��nj�`Io���ߙS��G����d��|1��� ������6��l6��<�X(��qF��,��9�zw^C��l��N�ݮ�|�]Y�����
��H�HZ'O���
<�X�~=$|��'HÌ���ŋ�ϙ1cȄb�Msss�!�7�D\�p!�B9�*E9s��)�'(��8��$"��ӑƏ�� ��򂣌��5��Xn,�ףw�y�L��ͼ�$�2=$7d�`���S��_D�z���~��8�D	v��b�>,��J�z��v_�C�������5��2���(�+:Q*{�X��!�O4�s��2d�R����PTԖ@�Q��ŢO�M-.N�NPT '��R)�C2|�p��2e
&�*,,��zl�n�;<�W8����wD.1��l�9����DO;!9'֯��`(�I�ϖ�/<lE*��w�&���גU���!m�����!�-�-IQ�@�s�(u�B���/���|�Fz�! 9Ѿ�>���Ө6v^vP�~TWW�Ǡ�˗/���@�ڶm[zz��3g`D�A!�߫�h@_��/|��2TLԤ~��I��־�';����
SN�tv���%H�C�$(F������߿�LNN��t�Z8�.�P�vMUUUZZ:f$���!Q@���Ш��� +*��.�L�^����%���	� ��-h ��+!cyyy���gz���l�UP-,�`˖-Noe?�o�|��y
G�[D<zբ3�&���|�X��IMM����G��Pt@xSRR�2�ٞ�@�A��qqqIII�ቿ>�y�{��P͖+�2��`��vH���U���D�dɼ���M������vc�=���co�W$o�IEND�B`�images/blue/arrow.png000060400000001357152455614210010607 0ustar00�PNG


IHDR���tEXtSoftwareAdobe ImageReadyq�e<�IDATxڜ��kSQ���W��<�6�Uku�.i]vSA���r�R�?@�]A�.��VA��j|,���&���!�M�ܤ�܇sқWs�?���d�;s��b�&��O�O9��g��)�@25������FY[Pt����v��0a�}<yr�%F��Q�\I7�"<����O�b#�-ݤa�R�����-PN{nn�'�tVe�	��T=�Q�kPvdO��|�@z6����|Q3�Y)8k}��[l8x�z؃��"ƣ��J��ޮ�����^G��"A�Z/»�3|����>�2�r
�N%�1�;C^x�H���rV�e�A���\��Lu�k�w�l�$L�;�.i���đ�~�
��"�\��y���@�p���G���y����!A p���)Q��h���Fǣ>��Mn&��Nc��/p��ӭ��& mτ�"�����Lxma�PY�0�5�r��B{�IV��)�g�ڷCZ(�T�Nؿ�z��@����=��1�fR�V��"\����݀L1��a����G=8��Iy����J:����]94V���g���~D�nŧfA]ll]C+�'�`����Y	��=�-�D��$YB����ac��A6	�v�V�C�l��?���/�^�IEND�B`�images/blue/arrow2.png000060400000001260152455614210010662 0ustar00�PNG


IHDR���tEXtSoftwareAdobe ImageReadyq�e<RIDATxڜTKkQ>31O	!��/Ѕ�� n�k>.ܸq+X��]qٍ��X� ��@i]�&!j�(�`��!yM2I���3N�6���~p�s���s�=�a47_lŃ��P(t�����_��t:��h����ּXi�dW�nw"/rB�ףV�U�m���&O>�z��ˀ����-�m���VA�~��j��B�Mj]�J�,�Y�(��T\�TL�E"�32�Ѩ��s\���|wQ�S�p���c�u�\.Ai`s��s�{�֙	��btk�'<�>&z����̣i���e(�	���Ī?�UVg�QhV|EƏ�x.��t*�J�2�͑���(�Ns��p8��!���1��m�V���B������n#3�\.�B��t����줪�y�4>����P���N챐F�����>?�f�9WQ�X�7������49�/�%���uaAR������^�lV��np����z�2�lR���op��梦�d2tx�_�IL*f���m�?&�j;��x������"�B��w��)���E��X�CX�]�UNIX���'��$�<��{����n�y��嗜&�#��J�e�ACIEND�B`�images/blue/subscription.png000060400000004254152455614210012200 0ustar00�PNG


IHDR1�
��tEXtSoftwareAdobe ImageReadyq�e<NIDATx��ml[�ǟs��%v���}A
A��PTJ�2�
�A�u�J�*�b۷A'MB�Vڇm�ôMc����M�����h�Z��4I�4}iS��M��v}m߻��8&&/M�k��?��^�����9��<�i�4_���������Fw�|�4LS᭘�s|�T���Y�I�*�!��b���Q�-�6{V8Un*�G��Ҿ�e����).;�bX �)�܊B.�Ǔ��!
�ay?6��4��CZp(k�9�kJ�M�<r�K{����x:~*��\2��t��:@�;���e��F
	�U����Xo�Y���˫���%
�t�9�4�&�Bm:�NG�
f�wj^^Ea�J�2A�1�2�c �ʁ	�MM�X�x�F�08�8��2���,m�U*�{ɫ*�CA�^�9�畬8�0�ĺ�&��f��”E(s�P�T���>k,c��.:6���-��)�V�ѶdL���12����O�#�$n�C�.���A������n�kߖN�Ȕ�$ж���e�VWi.:��b�fd 
�E�����r��h�P�qP_"E�y*�!^nj�q%�k\_�t���aV#|�F�'tr�m���՚B߽���.:͝��c4�6fG�sG͌�'F��J_�������:��C�&.%�Pw|���?��M�ܷ���S\���'>��x:�Q�JOn?�"����@�m��Rc
T�!����u�~X�{����Ã�7����_�'��ΰ/O�iz��u/"\��<�E�Þ�W����I��°w}0����$m=v�����-krnb�f���Uk[�,MՊ	�@���(�r��'�������•9n�--�����+渖�`��J�е�pHq�5�;�y��sr���a:A��8*���	��n��Uy��p�މċ�_>u��O1��'��Rzd(�=v����c7nZ��&;���g�������U~���OtI��c|�]�+
S°�g��!r*��v *�4���'~�)��K=�z�b*�������,�9� ����E�%C�Bq�~�/_�rQL_��Lϙ�x���6)��,���UK��Ar6��~����XB1���Ϝ^ƛ�sy�&Wb������σ��2�/�b,r�F�����A?;��u.g���-n����_�( 
���(lE���%	�"����n!�T�%S�9g"����s>���c�4͡X,vbdd�h$iK�R=�')�&8�N�̘��\���OI�4�T�R��0Y�h���x���O�P��K;��ɀ�},��px���d=;�>�*�F.IJu7�'l().��6�ZNkD�.E�t+�}���>ϢР�3�D�`-@.I�W��D�o�� ��-D=Wn)^��0�:�G�A �$v���F��xh�j�\!��yU��-�6N�S�{ٲe[x�$(�8����7W�A"�kkk)�,t���r�J��N��}�E��|��k\*EX�t,0�%	��d;�-u�A��n��p�fY�%�_92�&��q1m�\�����0��ˑ�B]�|��|o=�#�q��.�u}�q��ׇg�p���T7%��OL�v��>`#�/_.�uuu��
eÁMn7��ޣ��՛w��)�W�宼�_]���]�kjj�K�JA:�D"A�j���m�HfSE��"ڳ��~~�0��yhG���Kl$^z�*���,Q@.Il���m�����D�nX��(F���,��ڞs},/��/�|�@@�Q �$�J{{;ݸq��y��x�+^��6Q(�	�(��`�P� H��pA.I*��g�ҏ8�x��/[3w�S���q�GE�__��%	@����G{�3�Ŗ�<A84F���[t�Sӝ�%�H�$X
�0���[��:���6/� +2iF.I��0��F{�6S�2�o�((�2���\���O��,�9�%9�����APUu �N#�$���SK���q+�$G�%	@�x��s1���M3�|��M)	�9sI�G��M@w54VIEND�B`�images/blue/mail.png000060400000004257152455614210010401 0ustar00�PNG


IHDR0Vo;tEXtSoftwareAdobe ImageReadyq�e<QIDATx��kl��ϝ�}���:{��q�cA�*i"@J�($�PJ�Z��U�T��R�HEU��V�
Uj�"+*RU)HV*(��v�ď8������Ď�q�53���#&ٗ�cϪ��t=�ٻs%�����a�6�C����d��7����=��0b�m��|�	��l7xj����&�-5����c�o��zx`g�:����_��o���V���E��γW��|f�t㒐�K��q�B�m��/^1�=Ǧ���i��~�q�U��I/�μ:�ɡ�;|ڃ��[~������JR����'��4�
"ӖC�K��<��s�߳�[L�tܤ�3W��)��BF'�%�0��[��F"�xI~�}\*�]�j�
��~v{����{�Hd�.%
����-H���Z�3,˂ �������Ԥg>����BB9�,���]J4X<ֻ�A}K��5�����f�����(3�����C�CS�)f]���hR��gc��5�1L�R�X��E�:�qv
�8�rn�
]���-ٟ�h���f?mz��K�[w�	Q�	�,�d�����c�c,;�ȫ	%��ݺN	�����^H�~�'��Ȓ�l?���h�.H��,><#'{x�Kؾޫ‰�N�'TE�mӢ��_��������'�r#P��0M�N�X�>�N��G‹�����v	����.%��~�m�U��O��Cv)�^��S�B����P��d����g.�+#j�
�S�B�;=?q��v
����㐁�r��;7��X���d�)PAdE�'<O~�{|�^h*��8�x��[T����	�RR�i��8��9j֞����A�;�
x����߯��S������_�5(W���J���w���Ϝ��m�s��t
��D�0��C����W��,���{�M�<��v
�s&=-N��j��G �-�#Ʋ��0�c(?q(�`̈���u��%YFN��b*/�.
k�F����3|�@�X!�P�	ٞ��U�t9����.�9 �n�ܸL�[O{�bXNH���y�zy_�[�qph0(7˶��+1�~+.7�mg��H�7��Y�1�V#?^���cJ����f%n��Q@DQ�tQ@�8V	.Wm%�T*e����>�e��D�5y�x"�8�{'&&ި�����C(���7�4;��Z�Ϋ�`0�.b���{�E}��=���)X����'X__����W�~��q8*�O�	˻�{��R�./ц%��T��|�h�|�5x<�0�eɖ���g��l��=�6Ҏ�����I��4��MOO6r��r�P6�8���r�iiT������S4zu�溺:��ڭD������R��`e�pvy�;��#�_�gff�f�/v5�QD
/8�m�P(��q8�rn�>�O�'�Do�-�Fc,���"�;Bt_�����:���Re<~h��ݹ���葀FUZZ,�L\�o��O��:=��D�RbbF^g�&�D�8������T̽���H�r�8qB�755��A�&ѽ�A�rʂ��M0���KQpQ8�d�p�٪�*���)pٸ�#E�x�릷g4::��[[�kx�?4<<�~���mm�Yi��vo�O���`�ss>��l����ayk�Rmm-�y�G����ˢP6�J��������e����m���$�&��eR���`�W{Ա��DG�-9���C�8*��"�o��6n�HSSS*d��t��nS.��}�~�XZ~�P�100P�ܚ��
(�S�q�.��h���v�
x����vSGG��PI�38��I{�2D�ړ��Ta�J`��J͢��NT�`�)ow�
�?��a�S��kc��粒��\~�!F]�O������$�i�2"�cQ�E(@ň;�)�0��"�ܓ�o�'K0��r{e�p\6�TN�Z�
p�A	C~��=�e�p\6n���\W6�S�Bli���-C�8Xh�g=�Z�1�V�%7���Y�}�I��f���^IEND�B`�images/blue/name.png000060400000003705152455614210010374 0ustar00�PNG


IHDR/���utEXtSoftwareAdobe ImageReadyq�e<gIDATx��]h��ϝ�3;;;��uv�X���Ȓ-[�c;�C�M܆6/	�`Jȣ)��ŅB�L�4P��!8iI(%/�m��EBb0���+��(�eɻ�vvwfr�H�+U^��Tށ�Ww�����s��#� �6��cs���sӇ5�����&(lk����AX��s�^0t�{|p�}�h�'twx}�§��E�g��L7|�I]�^�-;��vIX���ޔ�M
�Ԧ�~l�>����7D��<�����_uz�~���~|+=+�|���DP��h�W|���(4���p�{6��ۃX�u�'����ND���w���d�^����x��*ے�9m4u��a�H�N���v;�'��C�c�b��}�@'x
k:��-���\ʰ�74J�u�ֹ��-��/��%E�'e�I��4��S(&tړM�=,���9t%%���]�5��_� -�Q��j����bpO� ��'J<�P���T��4���N�{:���*�hp��XV>o�x��5�\zA4��������q���L�veL�+��Y�z�ϸ����!��<������U���i�EA�rT�����E��t[�Y �@|���K����_ܛ�]Y�,MP��Ե:���J(4��0.Q��S �T�>�kr�~�Ѣi#�ٍEQ�7�֌���<��&��1�ڒ�����y���v=��׿�r�͋U�j>ڔ�T�K-��S ��5
�KizyK�l]�tnA}�A���ѝ����R����
��3x
�Gj��;m��]�%�Њ�~�)E�]��v�J��{�F�'������k�v�En�3mҁ�MݶѶ�]�
������w��4�Q��P��$�߃0Qط!A��d����z�h�ƛ�����֞�_��y�+��=�@�3cR!m�5��?k�m��s�6��Pj�z��\�pz��1.�vH���Й�W�7�=���z@_�e{C՗����������y.�`{�vbR�<
n*��ڭ罀f>a�@�� Z��f��lT��\��{5��W����~�u�r��D��k�l 
��7���d�`��әˇ���lB,]��uu�;d�
g�_˭��C����޲m{�� C�D�V#˲B
X>+��;%���|>���)�q����?F�(:�۰<@O$�B�p������+�@��|ذ��2\�X���;�Z�Q�P.���A���M�	l�����~T!ҹ�c2D�I^�j���Q:���u'�T��F��_?CSSS��-,�|>�Q�y��J��u]j�-\�fL����J�5�!��"2D�)��KPÆ
Nj� ����G�)���������Qt
��/U
2:Q�&�EB#r��vQE��d��S���]��XJI�m��J�;1/���\�o��xd�I&��@�p�…U�u]ڑ�K{�=w�F4<<LgϞ�44Q�L&�Qę��1z�MՁ�?��L5�ҟ��g����F�U(Q�f��@���롇Q*�h��"�HZ%�=3U	�+Ob58��Q��h�����ݑ"gq=r���}�4]۱����hff&ҵT@�0d� ��5
�w烈�(ղ	�
:�Lu�w���ĉ��*(Q�!2DGLӤ��^:XZ*KD��?ޕ�ف�0ਖ=�CJ�W��!
�R,�\.�V�}��I�h�+���i;d�6�2DG����7m�m,���ڊ㹮�Q��S�lD�=�v<���M� �!
�8Sr��mȨ�o�S
2DG��@+U��W�D� r��lZ�RgUW���5U��4q�FU��!�͗��o�Gʥ��\IEND�B`�images/blue/index.html000060400000000054152455614210010735 0ustar00<html><body bgcolor="#FFFFFF"></body></html>images/blue/unsubscription.png000060400000004363152455614210012544 0ustar00�PNG


IHDR1�
��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��kl������z^��v�7��7!8�P
)�&$��B�~�V���>U�J[����
���*�* ���\Ak��CȃmB0v���d��?v�]�k��׋�ֻcw���<|�̕G�Ϲs��0Z��9����tV婡�GR4�O醡�VY&�3T��e��(�|�l�h"�ν;���'��@���U%rk
y4���f���7s�?/�����RUr�-���
�`����ش��8��Z�vu�n��p�����Ʊ����=t1�M���>�\.'�3y�P��yS���)��Y����(��������`� ����
g���l6�#�"�&�r�t�FG{w�_��Mn�?��zr|m���Q�9�����:��j�t�)��'ՁǦ�Ak���Z���K*�.�����yq7�-�V����"4��A��x�N/�;<ZA�/7��p"��!�qp�˴2ƒY�f��]�E�dk�:�����ZN��I`�Ӿȏ(S�F�t=7�v�V�j�g<��up�Š�c/�;�B�}9����<����K�ȑ5/ވ$�{m��[�uN
ͦ)�*���x|�a!�Y�@<��ZH�4��ڔ=���(`Y� �f�E/ bl��5��#���!�GGc�5�:8���n{Q9q3���tf��:�E2������$M.�k8�+4ޛMQK��nb+Ahvڨѡ���Vk��X <���b�5Q�x�F��h�D�xgrβk���Z�j�m��cL�Յzn$�=}���0�@�q��I?�����V����Wh2mM��V��B�������;��-����r�	��d�R�J����$�2S!�Exfx�|%�s[�9�Y��6/�l`ʲi�^�ZՈ�R�
8=�����;�K��ً��D$?�B�i*=��k����z��3���a�k��|e�_����h��_͚�����(F�;�o�}�X&:�;~��{�ݡ�Cu�_���}�s��8���ҏ����W��,���M\
��9��.�3�ט���j����_I�(�p����^d| �Ɣ'q5>1e�Rd2�C�0Ÿx��"+/
�b*�qz���㪪��.��	�~/��ae�rl��_�͓���x��>�~Ts��3�dy�'��M�Xn���?h��!N��JLr܁G���:�*�Q�/�l^�d�Fi�2Z!^��{�ӟ9}Xd=��p+��DQ@D`)�G,I����GEY�d(ʊ3UU7s>�|L�5c"��;==��D�g2��۝��	��LK�) �$���Q�4�Lո,������A2��q�y������C,���qĒ�J��h�ۉ���caP��n��/Av��r�O�}Ē`�z�U܆��J�Z�!�J��pxC�(֌�y�Wg:�~,�L��%	@�!�=�MԖ�$����&&&J*�t:���A��z�a�V.{��$���ԍhhh(�p��N/ͬ�F�x������|�I�TjMWb��Ro��>F,I6R�!�Р'H;�c�����=-M��hxE�`_0@���ھ�%@�)��ȏ5x�lقX�X��޷z/]�k��"���b��P</�Ǎ��٠�u�4[F_/oK�}@,I�$߰*�����O�聆O����_>�������,.���?�S477WV�9!�$V299I6��ٯ�
�|�2��dZ	B����v��}���\lu������f�Jp�\�%	�����Xv����%�!<��/:����G�ԩS�L����C,I��`0Hw��#���<����J$�ܗ��yQ��@u���H]]]���L��b�	��8���E,I��:x�k]�.�*.�.�������X�m�p��rB,I��p8L���v6/��'O&"��(=~C��/Q�;;;)
Yf)(�r�UBoo/��A�F/���ӧ��J<q����J��珿�gWŢ�0ݙ�=���X�T���tLUW��,���;N{�Ƶ��i�SSS����X�orr�$�&JW�ɾ�9�(��"���j��$���􆮪�� �l�p6�E,I6�����jĀ�K����X�Ek4�޵[d�^Ē`S�f�R�
`�$Y�x�X��`�vcG�1�IEND�B`�images/blue/more.png000060400000002525152455614210010415 0ustar00�PNG


IHDR1�
��tEXtSoftwareAdobe ImageReadyq�e<�IDATx���_h[U�s�=��4K�`�Q;7��Ye����1�����=�"�|�T|�HA�/�&��/CT���+]��-���Ԭ�M�榹��;7���״ْ�����ͽ'���K~9�ܛ��RJVE�=T�Tv1�kN]�;�1.2��zQ�ƙ�T6xh�1���
�c����捡��ٰ[O\z������/����
�`n�bBW�^nՙ�m<$��ui|�v�N����<��%S�{��_�A�4M�#,���,���꛹1�QSzP�>��O�2��;��[;(�r�wi���9x�4�MjЫs�:ᑙ�y̰�E��fOQ��8%�m��v����y?�����C��qaY�z

�t��=~A�z�v�2q6���c
e��Ol���N�4��Y�"������9K6|��ز%���M���|G&�!4�\�'rp�=�^�n~8�b#�٪��rq&Lc
N�s2S�{���]~!e��K�U/�ǫ1�)��/��/����ɠ�~}b|��>��\��E��=���ɵJ���\+A�\�ZTO���$z
`�i2����\�BR^DOl^��rH�(���ٴ��Vw�L��r�bӿ-��

�i�{��
_Oߪgws�dô�{�Ǣѧi���qb���iW����ӱ�E�v���j��*���s�ۤx���r�ʐZ���h�2v%D���<��31��^�6��g�z[�:��wq!�3�jT�5�@%N�*ߨK���ט��
�@P@P@P�;J�Q�\�
��D�(�\�r9��gk�u���\���+��ed���D"1���|�ęC/"�$��d2��O5�<?D�wzNW����Ph'��~���-��;�ï�%	�Mx�P�x<����}"_^��$������	!��bdqq����,�z���mϿ�Zo �i��r��K�I��f��6) B�rIl�ˇ����0rI8�~���:rI8�fV��!���H&�,�N�Zz�o>�Ϻ]���z��dۧ�q633S��mmmybrr��.��_�񧦦X,�X��3�rI���7J�=��C+�$O_.�O�RU���B0D.I�V4<<\������B�b}-�~?rI@��i�Y��ՠ@��%	yB�~J�\�����p:ձ�}� #]5L��,������4�$ OJ�\�N��O���,rI8���T�Sw���չ-Z��%���ٿ��c��IEND�B`�images/twittershare.png000060400000000773152455614210011254 0ustar00�PNG


IHDR��h6tEXtSoftwareAdobe ImageReadyq�e<�IDATxڄR�.Q����L;�� E$T$,I�`�,%+/�N�Hlyk�
ڰ��`!�(����h��s��L�!��=w�9�o�;y`E��)��R|po���
�J��D7]�}#�@�В�3�I/:Ւ���i�8'*�J��0'BXMXsz�&���w'W��)30��åJ��Sl���ȏ� ���:�zj(�%�U���2ߥ��d$����r�f�I��@bBPKH���
�z;�#Gi���6�`wvh�{vɖ�F��:XR��Z���#��>,pX��0��}�[���?�2��c��uf�+����/��qM�a�t�@�f��TR"�~�Xޛ�K6N(J��㭛z���ש��"�z|0�:����K[�޽8�:|���}������K�Z�
�N�IEND�B`�images/hyvesshare.png000060400000001426152455614210010704 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�TS�jQ=��:��D��Lf�D\(�Qq�)�d%K\';�_p����_ ���ƅ&D�Bb�n��tu
�z��`H��^�z��sνWF�
^������a��U�yD�����b�0��,������.�f7Ф{�Ӱ4��2V7�t�.�-��F$��3&��@�\:�M���u�`9��#0�a�ѥ�&p�8�r��:͋~�~��dB��@X#�8A��"hu��r�����{0s�a�!����P^�ξ�R��j���F�~]��t������^�x2A��˛P�1	3�!�16Јt
Lh\�DdCLL/�mg��[�*EH[C=Y�P�=��a=@�:��T	�efl,@���hS���Ib���;���T^
��G�Bz�A�����j�EQ���ѱ슨���9��@:5	]�V�����P�Tv$�I��Q�l�-H�/҉���f\������9�7�`X�v�t�8Od�f�5��,���%��*��(�����U�XO�ԯ�Ih�v��il�@���|+4[��y��	
^�����(c�l��H�}��W�?C�%H�
V��
�*9�M�>%ȯ�}��Ak�Ώ"��e�3���i�D��$�/�+%E��J��lw�b.��$��Ѐ�س�%����f�������?�څ�"�a@IEND�B`�images/movedown.png000060400000000513152455614210010355 0ustar00�PNG


IHDR+�>}gAMA�ܲ�	pHYs���o�dtEXtSoftwarePaint.NET v3.5.6Ѓ�Z�IDAT(Sc` 8�K���-�:-�� X(�ӂ?�݂�:M��e�z[��W����	 >������������}����o~�� mx��k ]|��߲$��f��{]PB�Kw��=@��C���Mb;Q��)O��秜��ʙ���6|8!�y���a'e;��ޱ�cɈÒX=g�]��e�6!��DyJf���IEND�B`�images/editorback.png000060400000004663152455614210010640 0ustar00�PNG


IHDR�*��dtEXtSoftwareAdobe ImageReadyq�e<	UIDATx��[o��wf�$EҒ%_�M"��
�Cz���Omܾ��ߠߠ� �y�
�mP �E�$�k���VM#+�][�(R$�:3���Yj-+��H&)ρ��{�w��=��Y3�����2�l��aA(��J����T��>�
�ne�#�%%�4�����:�V�mC�-�h��9LX���@��g�vU��G8�~�����o���ȸ�xs��_\�����,MS��v���s`m9�'P���̓�2��b�s��h䐄_L3���߯�ם�gO�5�^�GV7���e-�Τ�B�ІВ=�9l����s��L1�+�x����M��VE�8��at���:F�-*���
1R%{��1��ܮ;6�;���-��g|Ly�=�����J�d�>@��1�,cV�R(`��'�J�ƙ��+Id��*����W�u&13���;`k;ʲ���q���5�S�*��D�i�/�2n��}YF���7y���5�V�U.Z�&x]j9o�[�b
_0��d��Z:�1̥�խ�Eײ,k
!jPW�i9��+v�'(cR|�;���� n،��VA8��f���%��z�4�z8�Uwa}�����Fa�sP�孹��3��Q�	!�D6&p��T�!�g:>5����l)����֖�9�P��
�#A��9��H��d����Ԯ���Y!�^���$�('���խ�GA�Ƙ#��S��<�1ϠtpBB��2��!����Lӏ�,2LD���x�]�Af9�>��#��1�/�<��,%�@���LK�3B�}]7n`� ��O��e�`��d�5�d�}|���v��=�Q���6YC�'`*c�
@�p�1֋i�.�E�$scX�����?�b��/(bh�c�cI%��\ڪ?���@�g��|�p�Q�t0y��|_X���7X�^�4k�<u�K�X�相��Ո�Ո�#V#V#F�.e�j4����=4F��I9Y�{��)e��edr��-�3l�^�}a-�l���:���
��D�i�:b���[���W �[����� �v�.jϾ�Hq���Z{o-P�\^���l���u�J'è�.�V)��FR�%,F�(��G�CFE�\9s�G��rc_'(-`��Y1[EJ����RV-���j��P7c�Z[ʀFpO�x�g&��R�`���$BZ�%�T�F��R��Z�.-��nS��J�f���ZD��Yf'��V�5��n����M�Oh�]��j`�I`UV5ugب[�`�:�
yH -V<l*A���7�,kwèEn��s�L0A+��(�p3NS�Z�����-�#�F/� Cl�Zh�\��G7~n�1��������qZ�-��u@���W���}"�&�ʲ��KW��J�|�n�I2���n,º�iV:tWO��9���S�'�_��M��
&C
4���i~��iGQt;���D��M����*�n�v<ϫ��}���Ω�]��
���(ۉ�'6�A�h�mPal~��'�g[3��cw�q=�*B��U�PY0r����1���m@���*�K@�-
�+���p��-h��;f�3P��-��q���7g�w�q|�O�.��w���M�C��ƫ"Hm"`�{��[�,ԃ�V}���=�5m�Zh
9%��V\��6�����M�Ch˱UG1��͌����
�l��ڪ�㲬��K�:8��|�;/��d��O�W�^����%�`s��f��ҷ�c7V>?�Y*|m���k�:��>��^�5ԥ:ap�`)��\?M:$cIyIR2:�X^^.c�-�@'Z�/ǚ����9����\�W~yr���v���E�j�6�N����v�cx�CW�8^�K��;��Z{�id��Z���L4��k/G�u�Ζ�H;��`�^������\��E󍺸p���?\�u��_��5�y�8L��[��.�^��L�5XT�{(^�����������k�AUB+�ݗ���Z���
�c/�P,�{{�Ʌ#��™�i����|�·��zM|��mĩ��=��0�`Q�Ҭ�{�M[�a`�hh���냝D�v�Z�.--Qa�=�ų�WV7;��lv/GY6{�Y_9S�o҇�umU����+��ҵ\�z��1%25�V�e/^�p��j�I�iXړT��.�D�lSB�u����Jb�?�T������HN��� g���˼�.��vyE-��z�Qfi@5�>W���@`z��l@k�IT
I��!��q�u:e��b������=R�õv�[$�M+1�I��X�r�@�2�
�T�"K������i��a*�X�-kse1��?��ђ�
0�m4Q��!IEND�B`�images/flags2.png000060400000217125152455614210007706 0ustar00�PNG


IHDR�j�3gAMA���a	pHYs���o�dtEXtSoftwarePaint.NET v3.5.11G�B7�IDATxڬ�uxG�=|�gČ�l����̸�
ӆ��Ɇ��wÜ
�&8�0���K�u�zF#�ɮ�7��O[i�TWߪ�u��f����t�oQ�T�𙱫��f�(�
�[R��?0��>e���v�sn��Ś��DpI�<��݇�W��G���k��T�l�YA
����F���>��JĊȁ#Ąn��S�iBH3��"����<����Qhm�<��s�� ��ː9Q ��-�y�@UE�5��+�9���w�4��
�W�A`f�1��g������N�+�F�N���Uf��FD��p�ԅ8aGH>�u��{�Ÿ?.���‘����֗Ҫg��������w�	�Z}w��?4X�aw���4���"VUfu��3X��S0�1�!�����������X�Og7��Fb����RΌ��Iե�tFN��8^��0fS
T��]XE�٘�Y��Y��Ih�]�-[v�UWQ��"gD�D��>ÌV�r�b��x����4c%��HvۂM��	�p��0s9��q㞋�W��zT�˼��'z�q݃i�#�1�����HUX�B�����N�w��DT5-�`K�Ea(�ВΓKR��S"%�t��X�,����0K��T�l"�"`6f���z+���rٙ��:��f��1�2�y��)��1��P5f�BĜ���s�?���v��ü1�Y�TM,M	BQS5����Y�>LM$��1�Da>w��o���C��O���{o��s�/D��s�9$2f�;Ǎ���G.~��D���g�!�+�*ߝ��0OX{��Z�tp�>�p��ܾ,�;�h���_���)5U�������EE��H�>C'��i5����BTٌUYA��Jj$6��Vz��@K	Qh6��E�Pq�Ef�M�5�,��ؘ�fs�B"3:HDȈ�H���8����K��N�,\�����s;s�ű�qK�Mnh�)j(n�����s�F"�rʼn��i,#Z��+v�뉜]��쀧;���g�E���a��}R������.�.Ϋ.��g�������O�<�����p���˺ع���Do]�~VI���74:a�-Z�&�؁D 
2��c�f�9���O�Y3�7�T��8hnO�2�n�/�A�?ll b���L
j3Q�����&�5���0��?3���@�`���J,̯�+�j�xP������_~�~���GFΜ3���Y��޽���.�dQA{��q^iI�k��7
�j�E��L�y�a�?����*���w��EZ�`�'o�o�s�H�ؔ�X��H�TYt@iTQ\�TzN�B�HU�H��FjNԩ�hsI>�KWz���	�����8�� v"Q��l�������5�Բ����ڟ|� �9j��o/"~�&��=�h��>�/?#��q;��Mjۈ�.�2A���Uձm�r�zڙ�#��s��f��ov�еר�-?�b�H7
j�p���[���{���Aؙ.:�_�H~�6�
Rv�(��\1�؎�\|jQJ�KVf����5d���Y��\�`2"]�sΘ������ɡ����Z�w�\��ɢ(;��y��5�0?rS�w4S�j��n�%��ԘA�a:q����
���];o��PP�˛�~��?�Zg�Fl�~�g��F��?��e=fcv������枇��N��9��iA*]<jX��%S����v�^��o��˼�O��/g��_�”���O'b�X�d��H�EY�?>g��cǺM���y�C��9��a��[����ʢ̾��֖�I�u�Tcu���� vP �.��矌����s�c�u�c�m���ߧ�b�#�bq���%{������RU=z��Cy���uǻ��~b�ǽxZ��R����T��7�ۥK��
���=7�\�j~ۋ��4�x�C��:��҄�����+��]�s.v���G땄FN�@m�W��[{;_|�gO��7�J@��.�`�Y�:��I�r�篭j�]�u�ͫ���sL�C��}��u��fƌ8�>��.�->j�YO�9l]]`�86�,�X�Lk�3��`0�yO:_U�d7+�9g��5`��ڱG��a��T8tH�����5����>MW)N�Q��E���^{������~�s��WRB��G��?�����UK�B���7ަjv�o�vXeH󀲳��t�m����t�����B�̝��;'"QVe5�'�N�E�EY
��`����X���C�8���4�}�q��?�2�X�9e1f%6b3��<�}Pgɍ���F��cq�Q��
?����uw339��qd�iQ!o�1z��0ߢ�#�ឈ�cDP@Y�y��`�s�_rEL��c�y�i�q��g����݈?�>nJg�IJ�_�~��-�?t���\覝�e[�)��	+S�2��輒���9wIY��V���:�si"α�
+�
+��{aQ��G�v:�<(��r�f�����M�$����<�����mȮ��o����pWW�"��s����Y[���̢wU���u����r�_U�zk��iZ0/o�QE;��d/�s��mή�p=�Y��� ̫��Z���|�3�%�Nx�t����b-P��^�8q`�蔼��OG����A$�}1#Lo}<�s�'"��Fb�Fb$��@��NUD
*~�p��yC�;�KJ��j��2+����`#V"#���T̉�o_�v^��/��陼�-��\���x����tE9��8��X���S��ZRʿ�tw!�ȱ�9�� Sf�!ŲӇ|�י����d���m��nG�&R`�W�6�۪�
�{Y6`���H�W�b�#���MA��uL[$�R�]��{qYw����V=� (`SGFDο�ޕ?�}�}�Hv6��� �̎�IO>yž{��a�F}��9g���9�l���$
�?�$�"U5�����p�]��%��)�q��������,%:&k��9kDKg�;��U}[nԺ�ЖOW����/Jl,�j���6� (x�[�V~�Ġb�!ۯ?x�g|�#����ٿ����e��\�gR�H��6��R�z�+���ێ|��k���������z�'w����)��Gx��x�/���'���J�ܲ닯������m�Eܑ�.���i?�����K�䆯=M�"��F�|�+�.�����13U�EQ�ǀF���vT_g��~E�K\ R��`6b�\fm�=���C��]����WǤ$V�cS�C��i�����fծ�,�f��<�9�FN����¶�JS��QY������Ωp7�9���7Y�\36e�=*���@ɔÒ�K�'k�]ZQQ�g��b{��h5���l�A0e��p�0�����1㡇�SO�>��PUf&�_�tt�913d���xG5S5�J�S�i�t�0������{��.���s�1顐o/\w���Nީ�e|0�ѣ\A����w��϶ŋ��{If=�4�1�El�\wpX�u�mG�Z}�]�(T�DUM,���?�./���.���x���4��O�Q�r�oO�",B~����=x�9R�֟')�����R��~M"�c�E�����_
`�V�x�H�ݑ�X�"�Ne�F��[8�=|GD����e�ȑ'N���\Eq[�/�}��ƱF��1ň��	�$�������R����2�藟��|seE�w�M�����1S6b#5�y��6�rR��WRr����<�b�"e��2=X�'~�.��4��ؔL�c�LI�?��l�j�t���3�
�1g�������/��?���|������-���L�>?��=>�x��iECn��
��qlq��s��w�um��<�o��.�/�j���t� -a8C'NL}��M��$��ߟ0�#G&�3�d�A�Ey���/OQ"!��QSC��;�v�=��yc_�z��s�c����p�QVc�!��_�
.s–2�CH�T��G����2)�0���Љ3W~�wG�VV�&�<�xՍ�*�6���8e���F�hl4"�41�'�yff�|�W�q\]S���9��ŁsAD�s�0����X�`@Y�Af��=4��,���uW7V���@�뀲|��������EET+K8I(��S��!����UYcD*��!3HTɄ�v��j}N'Ab�A(�	DLE��Y[�'��X��"����2ɮ$����I(��x���3�j��� 	��A��X�U���@c��A!�E���%n���]-��=�ɺ�\����x�T{��_0����~��	�)8U��(z듩�R��3���XĔ�z"w�1��Q;y�_���=�
瘲���~u����
�P��F|"n̯%�q&e��;,a61�X���f����E����uw��c����X�G�K2�~�n�D`�J�����+��]����@1~���c�o~+:���Uߘ���(s�\愼����>�m���y_dn�w;p��@7�A9sdp���(��bT���}?<b�fn��~�aU�$�p�A����<���?�}�K�k��$�
�g*�f��}u���(���	�{�_�g�8��w��p����߿*��3�E{�ޭON\&���(X���4v=�}6`�1�R�ףv�|润�y��'��ٍ�rP�*�}�e����]jRo��W�2(C��!��8X��;��'?������	�m-(u	F@+���}��z%S�]]���d��t���ZUQ���l�x=�PdV��I��?����H�%=`�zP�i��Y��5�^��.�#I��*�$���r��C�����u?�C\������C���}aNc83�p섇Zh�?�8��ܛP����aɎ�$���O�?�vz�$�߰��.������	�&�J�%�a�3��i�y�
U��·��ꠀ�C��{�br�`��C��3R�~�3w�L8h������v�g�wZ���S�!�/:��>�����-�1cwK�1M]F�*�S)�t�%c%%�qw�`��c�2�@!�I'$�q��0f̘�-��8���Z�����x���}g�d�\>��`�eeeɕ�l3?b�g�"��ɽ��?�9��i�E�嗝ロ���wt���&B�f��k�N;�Y�uE(Ę��PS5M�:��S)C2�=�Qg�S^�~��8m��_������ޙ�t��TȤ���o�g���b����Ū-P1S��oZ�f��f���g�>}���D��HȔ��	u^w�+���c<*&�����4���CV��>w�sx��1���Ӣ"%3FT U�d�;��Ҍ�*c�P1t�n���gX@�cO�/�Pu��*o9z`5�m™|<�1��ԗǥ�	<�F��S�v������ F�}3���}z�ܘ��Vl΢n����ʀ,�ɳZ��47�d\��2WTDe�9��T�J�4���m�W�GD�5�Yd��9s��@�I��F&d����W6�&_�$3��#���I��>[���vu��ɂ��|��[u㍋�\���H�ɧY,��nkx��V�?��;���9]s���y
1k�}dsfΌ��Y�K�ut��R�m�ӓ����`���x�T%2G��D�9�� Ti۝q�"��^T�����4y��%� �`�s�$��>�KA}�f.��>_��+?��Y��аt�'R��������d��:e�ԩr�R�@�)(9�S��<h�����0��bE�i�IQd.�
���1��=�{jD��y'�t�\[��x�c�?%@5G��f����Oݎ��=�������
�g����9R�d��~e	`r���o[�)=�����H�0�+�\�U��C'�(�s�G�;��]����y\Pf�6a&23����3�D���@-|nȲ "����)Ma����3���j����u�^�ZkٕW��m��^�B&���_]^Y�_�����W���Îj��F3[�l�#p��[��q��m:`3T��LX	̤��#@�x�t�F��_2�gꬠ��hX��i���U�$#7��g�J������c�n8����8��ʫg��.�b\�.�"T�.eRs鐕�}��r: �����)�2�M�|QȄ���!�mE��w[��r�%c�b-x����Mw�b!b�˼�ٳ���N�z��늩K�f��\����X���X����Z�;�*�S����ܽO}��RoAb�@|4��Q�e�S"sN�B�$�C,���n��{d\|�Vυ��M1q��X�hb��́�c���#br&~H�`��wx6�á�37��m?���s$��ǹ���s&�,�`2��3ɔ
�w����<��;^0�c���f1yD�8Rr�HiHِ�~�jk���~�ͷXkK��%�~�:���%?����7���
tqK��jw�;�M
�f��Q<�S���Tr��0o��\a�3+V
�Cg?w�����K��!�r��K���ub#b�‹/^�Ҳx��cO:i@}���f��)}�>v�E�/o����LZ|�A]��cQ6(�2c��������0���`XY®��)��;�SN*����s�s��_sލW_��n�{�H)y^�~,x�?�6Y;�׌��3%e�v�e[H�a
L���Q��������c��{���&� ��d13�|��?[�WkoO���ؘ��ﺢX����^������d\:'�i$QG%fc�)�7�}�3��z��)9'N�C�
�"$�ʫ-�b�u�;ǎ��#�,I�����4�Y���"q�	�L��zWVC���E��9s�W�?���xO�;�N�_���R��w�xJk��;�K.�?&[n�;�=�����,m]2�����5#�43k�m=C��3��5�V63c�=]f�ʬcD�6�tΜ���_WTtS���i��v-i]J�8g"������{�%�e����[����o�|�T*ݾ��#k�ڟ�|��ι���T�A�o݊�LŌ��O���=)+\��P}h�1�"�j{2c��s�l��y�bWo�~���_��u�'Uou�y��������\s%v�] ��H�DF�ќ�g�zRy�N�Z{��eiEb���Z�B��l�>67��$N�s�F���8��4�޻s	`�>���'��:���Sw|$��s�WXD��eV�m7sO�=n׭��9J@�b8��±�T��wP�[b�}S�̸9+3�#�wd���
���2����`���I�~umDfn�oȝ�Hɑ#����� ���!;s0Dp. G G�oQHH��|�5n�ٖ-���YP�,���ڣ=#�֙��=e[o��¥/=?��s%��..-.��5�Y��k��b-}�I��������W��3d�S��$�ԑ:gDwϿg�6�*?�>w�>Dt���2o����7t3�i��mF\x�qŎn�e���N^4mښC�f��0�C��K3�O�I���)�p��,<�u�ww�
���޶��i����%�:e_����:@[�-
����љ˵��<P��$�8�xi��
�o������"~�JkuVB��31
;��y7�g�0����Ӏ����8VG����+��CO������0#&6^#�����R�����,�c��L�UDr�X��:��l
�����
t���"�
����0�N��<@r�X�ģf���#b8br�*�P�Y��:fv,D☉��3�8Vb�Z��Cd�M��v�v�y6u��M|��0 *$<�e��ѷnt���y��C���ٻۿ�w�7���������ff��[��!`D�2{_V]R����p���?�+�s6|8�(̗UW�<��;l�,m[2�!�Q�����)�
�[����F���J��c_4�J>��	�Dɣ�KS�}�`�e��~O��ݢ��ï�x�߻"��?�7]�ϗg�K^�#���<��߲��w]��Fd��*��ӿ�sU���\O�~�x]�S˜�'�.��E[ܵ�
���6a��R����ӦW�<���l��[�5�<j����#����wi��i"u��K�ΞH�>��p�u7����;fb!2"�:#w�d�̑�ɑ�e��`D`e"��(^��W7��̹)E��z��۟�J6�O�O??��rR�~�0X�Oy���Ց&�=+�
��!�T3�4����`��}�
��+��V�7���f��S"�:���ɛTl`jsN8AP}�Yf���u-ˆ<��ֽ��!���MX�i���po���?��9�;�8�Yc�XԷG�l^���y���S����{��<��>[�h�ĉ1gR��NJ~��&ۥ��R����v�����S7uM�c[�AFd�}W�4�B�'�~���裯h꺜S%�ޣ%��V01�Y�;)��՗��]�������]�b۫W ��}lMଖ�Mj7�أHH��4v��Kd�������+�5��%N(�X��Y�͡�_i;����{�j��Q?�6֖)�@^�!#MH��21Ѥց�+��E~\��]�H��=�a�f��@č��D�,A@�1�oj݁�KI�U�[R��po�[��M�g�
l�
p����
ttd�$�e�����3��Ͽhy��yMMYv�}J�nhH���>��꣎�vם������i:L)K�\�g�a����HY,���L�_�M�P�D"H5�E�l��

�J�6�߿)��u�<�3�/��{�`�t��(;��4���&�>>�E�
�����{�ۢ3�����*@PRIvT4xH��{QY�1�����2�_�(�� ,��l�/m�z;
Ć5���Z^�� $�{'I M���9ll4���4�TSs(��`R����o-������o~�����t6ո��Ǵ�
u�Rh�GlD@k�}k������<.�T6WB�a�:	L �v�$�s���g
�5y�R��'y��֋/Ɗ���L�������Vo�CO�s���~��_.:����������ڞ�>�
�E��}�$�8�Ba��݀",&Ќi?b��ˁO��LX.��{�P��4w܁�b��g�3���}n8?���B���uP0���W�i�Ж����X��ƿ��p��m;�`ԗ֚���N�r�"�s����)��+0l�=(�WP���_�oL8��u};�G��|�u����97��&?ӽk��Q�Y0�?���e�"2�~&�M�}��Jd0�
��z�WR�J���[���?�5���A�҉��9y
8�HS�Vo�o�+zPv��j�lz
��(Ga?��� �>�2�Ok�I�l�|�z�4�;Ƽ�Z{�n�&
=�G�=�l�k{�
�i9L�É/����"R����˃D4��y��ʑ��s�����@9U%���ʝ��> �:돇j�Gs$8�~?���^�d_=��1�߀Ν)5����k�(`3Հ-%z�,���m_t��
q�k���/�_�C��py��EUtu�:Rni��L��X�Gn��YtЛ�>{�-�l'ᶶ@��,7ռt^�)��JUd��[U���o� 06�Q`P�9�'��_��p��k֏��[��DM�&vt�Kߎ��t�
ߛ�[���^4���?�����bx�1ߴe�L|����x�0���,S1a���k8]�mx�:��r�6��'?�r��N��M+*�A9_=���Ѹ��]�C�n���Z�m+��.�kkKߝ�}֚���X��Y��\t�C��qͣ_/��ǢA�J��0�
�tvv�3�j�AW�=��r(�p���#���
ӂ��r�t��pI�����/�Ʃ�z�(��>-�lH
-����6��|�����u�/�V�jf���C@
��Ġ
o;�/�}��`E[�~��<g��?Aj��y�L�X2��zq}S��^��yy���
_]�T�P^ۓ��O7����w�q�[�}�u�}�FRr�y� 037y�U����C�f�ybB`1!cJ��䌝��$�eW�G�8h�9}�k����G������#ܼ�
l.�_�+Ք����ݷ��{�
L	*fӧ��U}t�X��T��@9(�6��G[��@����3s�,�.�x��Ď��7#Bc�����Y�\�@dy(���>��\�Ńs�
��h]/k�8.����6�qϷ7�ʘ�X^���]��kPC%Aqܦ�$v��W�6��4�gu�	T$���g:r�8��@9(;�R�sˎ����vS����*u��k?>��nn�e�(�I���>S

���;'�xe܆�k�|�/8jlz���`��,���%�X�:;q���T�
��
�@>��VM��E�4w9�û�ڤ+J�18����m�kw\��%��y���X2c\��7i���7BO��;*ά�Z;��Č�����P�A��PԳ�AE��G�{��d"g����˱�D_���`�l�?�L�\q�aK��%2G7���ƔU-�}����J$��F���N��-�s"Z/9��д�#�D�z;�/-L
*P1���W�t1"%0ެ�򰑫��vN�a�*�[�,�u��������Ȼ��ꮓ<�ò�֬|��6_Y��$}������P�/X���HDA�;Y�>>�#�~(Q���W��;��DZ���m�1.��d��V��%�g�\p��Y�|�2�L�Vo�֐!C>��CY�8x��|��tR=Xn�υ��j,�Q�4T��_N����gt�Z
CK�\{�{�B,��1
�ru�j{�U�k�<i�='��:X{�c���_ԞAO�bZ�XTS؜k!�`+ɡ&�Ԓ�~���n|�K�1�ye:������æ�aB��"<��Y�ѻ>|ۜ�	@*՗���X߂o(���0��tB=�\��x��*gq�H��_}��p챺�G��<_Y���e2�dƌu��󋞛S�Q�:�ٴݠҹK�8�LC����z�À�������.(d��*�d�Pe؈, ��L�.t��r�VY|øh#N���O��cҜ���7<����.`�
d%s\�̜���+uT�ȬY	qS2���SC�L���t?�qb�}��9�ա�ˎ=ֈ�����L�!��-������h[ǂ�M��@È���H�Fb��D�ne�k�]�tu���7\w�%{�����=0?��ڪ�qO�.RG(;��t��+���LZ��VBn�4O����2�q��ڍ،勐x�?���r�m�o,J�����	gnqfk��]	U�wΈ�� ��o�UU�q��@-�Y��:ڥ,'��&�΢��+dU�-�
#�xP�_cلϞ�4uI{g7��9�~�)G����N�Ȼ��H��I?���.����"U]y�����"���0�%Kz��6Gv��z���g��{ػ@���{�dQ�ˉ��T��
fj������\�<��{
��g%�?g�P���/���B����>{�߃�8S�=�X>����	X��^z���e��q��>P8���_0��c�֒����niG��qEײ�e�<4G������ek��[��V�Y

/\ƙeGQiFQ��v��c�T���ZH�=��;�g΃2���[���e��,e_��0a
�񅸿gB�i��y���=1���ƨa�ft��Z�;̑9w��w�4�g�^1���N���pl-�V��x��Rg]}��(Z!���V8|a�����
���3����~
��<k��)���K"��I��E��j+��6cF��Ad���>\��
��@9V"��ٍd��<��� 0���˃�ts�K��x�����#�qQ�d��>W�	������Ǔ�x��������.]���Oֻ ����}�0��c�8�I�O����F�\�/p^��]��Ĉ�ľ��i��>�(��z#��Ԗ)�?���cq��!�g�5�a=;lɄ2+U7�1M�o~�їg�=��'��@�@ɩU�	���ϙ���|�6_��	�B��1��O���־jD���*8%'���X�8J�%��4���Z�[EN�]���u��6(D����ד��d�~9UZ�L�mE��O���b��b&�!���:c�n�uI��}\�g�g���9���?�3"�����>?�3�L-Y�a9������!&�80�8)��<����9pj���p����;������������Mw�M�|Uzͪ�)rc>�a
H�G1�Ͽ[���]sut�u|t0��Y���v�t��| H�]�qۖ��]yA3Z<s���XYC�@�ˏ�@��l�B�������"��s�Q4��ŋ�4=�:����%�ϙ�8�
%�a���r0���C�>$֔c���;�X:��(��� ��H�T����ɍ��CXMV���]�cІ>�9tj��p� %lB��
6b6?/8��\Ď$���~71�/_��n��}�=X���X<�"E1"��d�O�y�Ǒ�h��7�4�;��f���FӦ[��{&A�'�]*�?b��*��8L����}@�̀ ��[?
V��>߇>��(���X jޡ�u�l/=�q������BL��5�E	\ߥ�?>5���S��W�U�w�(<w0m�A�Y}ݎ
�*uQ�^��L�E�����G�-@���Vd�~6�3��%���(x�[8�'50ض՛�ӟ
`P)L�TMC3��f	]�>�X����Z$#3B3�y�F��l�߮�o�
�b�r޻�1��	�(��0�Q�"�E.4㨣a�8
�������2J}�7���/�lWL�8bP[�,��!Q�dMf���6�z$�J�<d�J	Js�/e��~QJ�jl4��/�#�H�/>���(l�5�b�n��
����JT
\r�Ç&u��JM�XEE������=y��w!�I�2�ԯ�NX�/�n0c��]��
��Ʉg^��d��:
�œ���To���U��5���Fb�.�H��e��p�%m��20)JJJ(5��(�
�����k��Kƫ��R��,3
�h��EE((@I9 P�����/L��se��.J�
0t��J�7�7V������m�24�Fh�i*3�L�?Y��u�9X��[�.=�|��O�ʲ<�����c��ʙ��-`ш?��,O2���1��Kڗo�.8�O
�s��7����F~)�n��L�.���1"F䐟�C��#��KE�3N��?�ȵ�Y�7���=˺��vW�����g��/�S6�ϰ+�ݼO�);��,��|4��H��#6��[��{��],X��|��V�n�y���i��HU��D��.Z��ظ����uԍ+`U�C��8�.*藼O��Do�1�n��˹uZU��&r��{�FI~�1G�Iԙ�/����SyY��g�S��'���3Cԓn�dHga
�y�/�Gf&M�GeMHA��h_����,��e��A��l���vw~7h��N����~&�	�o�듫������
�=������~�w�pxRxix�%
XS�a�Ƒ���s�K��ȣW���ߊ�!��Ҋ,��2kY:�^)ֆ*��/k�}��;�������s/̎
�G��aK��~��\
��ϳ1{���}B,�&4L6Wj"v�}�
���{
� ,++9�\���.�Y�Ѕ���zǫ}4���X�P�w��R��)��BJ��=�3�>`�%�~��K�����?>�x@��q�t�ް��$�"̬�T]cc�~.�Y���R��$�}���&���L������9}T���1Q�0�ٸ�?Q�4����Y�ܞ���ƍp��'���E�S	��ؽ2_��S��+��hQ��眣��"??��͛��J�y��ʏ=�6�I� �16$}��6�浛$Α��5��/#6'6�"@�Ճ�����*a@�gk/TW��
��S�a�?�Cgg$[�^�_Y�0�ŗ?r���9�b'l�q�Q�Q�}�O���x�����,�<�#��D��4Ȭ�s�&G�M�����B%
s�<s��%��ƇOr��O�������c�R"�A��2`âe�x	4�,�BS��B	փ0m����X���2���x���بyyي��Ҁ�g,^�}N�
�r�7@3��9-�&I� ���N�9V'J��5~�3�d�^4$�'ζDab��y����L�(a�'"u���Ʀ���~�j4c���:=/8�V�Ԋ�:��;�b2���'���/?�tX&
Vl2�{@�\����	ޝ��wf~��a�Y����[�=��y/�|�KXou8���~<g��_-]e�����o�4:�,����b�_������ʿN�7���>��QS;�(�\�qL=Q�����\m j����0u�g�1�,t,�?p��J2��B����Ƥ"@���3ֿnk�{�?�|��s������[��$�� 
�WI�����%���_�"$L���NY\��n_��^��KX$2�0 ��o�s���P�KMXG����:�*s�Ԓ���F��QW�L�"��R[u���)9c��9���?~������>"�<�FԹ��>��'�g2����C�����9&���“���� � VReV��8����g��#.U
X�yӷ_��?>��V9�m��9~��M�Q�D���*���[���j���s�K�s痶�IsK,^l�ް�<+�Ǫ1�x���Y��/M�v��?�|0��l�Վc/h�qd���'V��U
���m�eMI���3�߭�Y���b)1�	���\A�0��+N��� �r(��p�Y�u�û�c��{����ݝ��t�eo��7-1sA���4�����d��0e���`i"v,섙�Av����ŗ�^�6{u��bɱ��r*2s��=HŰ(��d~�z�ٌ�twa1�v���?@ih����/zY��Ո.~4'��`�����K�KK�J�p|�}����څ���6k��,�f�q�
>�(imUS��Ʊ�q�{��CL����N?=�@z����Z)⼱c�^�M��]��9r��|Ma�PL�G�$�Cp٥��H��
'oe'm��r�A��ƚ�`j���VG���9a�>�ʂl	���h-K9�E�o�?�J7����	:8��I�̷2`�����	��4Ae%�8�6]�D�<^�#�� �
|�d&��[?��۱��A`�
��)�~�bU�R%,���j��/�Eo���,Z[S�]:�e����!;(}�3�[���3�hik��{�u�
����9<X!t"LU~�a���nm��؛E��vµ]=?�[P��v�9��G_�7���y�1[,j�d1Q�$�(���@��O�
5��w�l���,'���ĔZ��]��py����q��O�d��o�o�=ff���@o�=�|���n��\o��^H��\�С���a{;�뮘�{ek���a�!I4��6�M��T�1��ԁ��	ӲT��Ey�T���ז�t8x��6�!h�Ah�� mj�@PV�Kz|�NMwy�ڿt,��c�>���Y��#ѽ~x�黗c��JXN�;=|xk_t���K	EQ2zz��^�Ä�zd�o�6�xM�q���o����]�V�/�ݿ.�/�g{�L�N������7^�{�w��t�r�[��>�g1hii��J՜y&Ϙa�2:%�ꭷ$L~�'̾T��i@ɓ�=��"���3Y��ʂ��ւ�/���;�RK�D$�J�1�����峗����r�X�-�K�b`�JCiV ���y�y-�O�=�`�G۱�ڋ�� 4��w�k�t�hI�6۔��~��!���8n{�u%*�q�d`6�����	�l�<��昹��#�=�}�
q�Aʛ������_�w���セrɒeC�Z��@Ve{��9Ӄ���fђ!�OZ4����������m��+[�J�H<
�z38m�b�R���?1��O�,'ȆA�1T5�m7��Y�,�烶�{�� ϔ%dtbQ*Uv�)2}�O������uv��FcN>�����=Ν�1��X�8��=��;������襒iW��6+��M�@	�Y{����x���vKRBu;aG�sBO(<f	n����h�ߏ2�4��4A���{b�̉Pơg�$�:w����P�~�a���?��/^����q�N3���`�HU<c����-S��e���kU(z�h�ٗﶬ�Ye�1�A{4�Z^~Y��?�lȷg�=�H+�fne.>�D�}/�l��Cq,[RAw�y��'�f,���|y�z�_��?-:�z�M;�pۧ��׭3�5V���®'���?�yi��7�0����������5��)�Y^0�=���߽���x?�r�`�Z'�E[֤V%��*>6hI�@UD��<��@w������o�-�����D�a�H���"e�
p1�8�e�@3P'	���5��o�c�	�.,�||�K%3�Z�|��XRԟ:����r��,�b�� ��]L.f�CNZ�r���cv�Ӛ������~�Q'��f��~E.>'�R&c�>�[|���ZI��T�8q�g�}6mڴ^7ɹ�^Z�`
�W�8a���M��N��^����*��|��В�G��;C$X�~ҥ@��u�斂��{;�	��W!Nb�	W?���%	����?3�`���w���|�~X���*���g�߼o���a���`DCq�����#��v���FK��A�z�7��Ɯ�l|Fј��~���@}dC2ۻ/���ڪ�/���q�GEaqSQS�H(��F�z�i9��F#��H���ftv�T��J2j(jȲ#���n�'.x���<��߆hV���X�) 
�T���I8I��E��jK+��#��\A<k@�n��Y�fi�Uu(P�Պ�c2o�Ȑ*'�G���s�X��G_hF��ߒ���U0EAƍ����߽�ʍ}X<��	���&%
�0Ӱ^�	�6��/I�F[�|8�X9�67�$zzS�������`iG:�wVц���8"'q�~^���lX�G|~�?ђ���7ۚ=	����S(PK!�V�0�
\
⠂�)�;�ӎ<��s�
��
���d��.�Y������qf۳��+�Xxl��s�:`P����}�����[��Wv�r����Ѝ��	�c»W�eLY�l�d^Q���i����P$��l^�o|s_�v�m�r� ����qP�o����q˖}��F���Q]����#��ExpM��1��N+����c+'HQs�0t��BC��C�BT
�-���A2�1/{)l&�HĊ���K/^�-��p�����-.��^����w����w���������7��ؾ�>��~)*83�Uѭ`Lo���5/���'—�����U���
�̀`����ݕ��A���T���Mp��1GN�q�S�@Բ�&��U�{˂�?C�}�=�g�]."q{�:��;����8��AW���/�T�c�V�r�?�c�"*�֤��Dֺ�̳n��(�ꎚGm���<�l�{��E����P��
=Z
�3�$/^^�$����ٳs��_N�z�ҕ�B�كw��])��^���˼
�TF�B{%nIi�+/HѾl���%�&��*ŽUX}�FX�THh��w��j��|�xU��7������T����ſ�@Cm�_�`55�j�+W�2��r�돯w̙{D?O���}V�W��s��A�0�&�qb�6����?*|��棎�"������X6���?����$�*�X۸��p�n�|6̻�"VU�g�m=j� �:q�'JK��_xC]���Ϊ�+//_a��͛`߭�JbUkl,���4��kn3N��K/�
��]z8|�r��zF����k\uE�.S&�|�Sgw}��|�`԰�U�+��mX�n7˖k�l��}xᦱ�����o�9j4
���)ʩS8�N%]��F�=.jkk�e���}�κAU��
7SEc��YK��^���h8eʔ���]9(D�CÅ�7�d�<��J��Vs���;ǎ��K�3�7+#H僂9-��������@��B9�c"���j�_�ߺ�PD�����}��b���*��E���M��[�BD�
�X�炟W)��TK����WU�06c�d�uQ�|&��$�ӏf��IU����t�Xe9kj�����Z�~ˍ�Nw����_&f	�Z��됊jDr������q�#@f[�U�ٌ�o����sǧ�v:��Wztuue��A�H��9�bs1jj9�
�� %�L�	��:j.mF�	Szv�q����T?�o�_�/AL�
������SR���#�t�M_�,*��Z�X*�狥~7���4q#wg��9KD?Ml��
h�6;�ys��ޠ�w_/�0����ά@�rϻ"(D���"�B(��N�a�#k��Zw!�1V���'5���E3�*w$E�X`��ݪ=�VV�Rܟ�^	i;��ŵ�1�ݬ��1����T*_T;�h��K�"ϔ�PQ�:dB�b���:�Sn]��[�ar���ث{�� �<�����l�j��M����u��zq˼����p��e���Q@b"v�kg�t��!4
�۝��-�5���P�̴��TSC�����E=K�E,��n�NJ�줘3� -��g���f�y`����t�}[���8�_�0����X���0��F;�8pN"/m�)(���c�л>����*�;���%k���x��W\|���b7O��^>�s��wf�͚�8S��T�[(ە�^R�v��%���zf�����<@�V�V����� �QOb`ff�m��.�Oo����24�wEPP׳b(�y��{��*W��[��<��p
m��6����w�a4]Bw����%vG����ϯ}-?��@� �"��<��o�Yҝ�u�s3Z�NZ�����}��Ggxc����8%a��5�-=펍�Y`8�����/yY�g���]�ȹK\��#ѣo���,�:Rfu�M��]����>;5�
���&�
�~HᲟ��X���u����?B��`|������=5�y�r���6�k�Y&�t;�X"�����$E]�Y�
�����6�\M'�l���[T̰��
Q�ꏥ�*jp��i�7��Z$>�r$��}]�c���6�!��]Sμ��/ "�*>Af�|�cs�:
�s��� _��˜���A@���{�Qê�`�vW �\�8��wXg&�q�=`��>SE.̗N�ז��m�O�T
^9�=����!�����_u)ﳿ��#h�T���"#r����L��}�cXY^z��|��+��+�B4l�
�Y1"�/<Y
�Φ$K�:	
Ŀ2�����h�En��i�%���
�~82Z�xpڕyS��A�7���5�,����.��u��3Z���C�|{�~����2�����So���L
��'���I���y��Ɣ��x�*���X�<�+Վ^��e���D���	�R3G�^{#�S1\}G^�-���uO���Cؚ������tZV�&�o���#*��S��)
���Ç,��E*l"ǀ�O�[�VcfQ,?�X&�[�^���*3��E�ǿ���[x.ϙa�F�L��88��Ų��O��>}�}�j^)Z�R����C�4�=�2ȲN��
���O�ܱ�%�8�L�g�8�m�͖/B$�ڠ���\P� ��߇��A�c�
�S�,fn��*|���]��յ2g�4��Xq�	�XԓIoSj������z�\(��;A(��u7m��������Bqz=gD���wF],�8��|"u�%U�Y�&��lֲ��x�r`&O�=�c��^qY�;��fq?1� AS��8���X��󁥓_�|hE�^8#U�&q�����l&*��I��kTfH�<5��j�wIF��{�*��=zu���ͨ���j,�m�bs�R��-�쒢?KG�}vkY{k����g�r�3���II�&���Rsˬ��_�pA����%q@3�	���ϳZ=|�I�uF��Y�E̫�~=��~F�N���uȁ�t������ק��O�`�H�(s�ݎ�@5�s�(t.�(����}_k]z�eW��g�5��/?4���%X�����SVwN�$�_vsk>���Q���w��Q@��@���
7��Q�+b=�՗�n���M9��aUu����J>o.b��
Ѽ�#�h�G��|�(�x��������.�#u������xb�Fs��XިB�PE���|�kl�A���w�ߠ+�oo���\C6ׁ�؝�~����oL�QaG˥c�3,���C� �@b�~J�=�|s�
k�*��z�M�
�N~c�Me�j�#o���/^>������|��޻��b�g�K�2e�����
���n�/���h	�$~%bq�Ό���������C�n�������b�,��t����XLm@E���Z��/��`>��֖%
eeIdc�s�s�ӏ�֮J0�7��-Y�.�/�TUq�\�D`R ���w����ݾX�$�t���J�W�?x�����^[7���K��d�q�����Փ�a�v�᏿�w�Us�ܩ�W�%��&�1x�RwP
�svA�P�,������Ǣ�;J͢�-�f�t����Rp�	����rF��o��+��+�B�{@�
��_�g��P�W�t=qՍ���|n�.�Q��8��4����	l�hs�ǧ�sw��5`�`"H�b�R����Շ�ڰ���6嫐�{�����+j�'ܰ溫���ﴻ�t���fj�0C�`�5 �	|�5CՖ����,)���D~l̇��pہ�щ��B��ʞ5�3)8OC�b��9=j�y�`9�%�o��~�˪"���ȭG��%O��dMR���Խ#Sr��J��Q�	ށ�V�%�c��X��ʎ���.x���%��In�Ƣ�E���(�5�O޷K�U����Vu���V���=��*x���>��s^x� �
:��6.$�3q�dp�OM�tU�ۡ��^"nI���{��O˗,.���
2�	���_|,����OU]��]!�
׽b(D>��8�<�e���k��dž-�
� ��$�q)DS"�����]�A�lC�rכI��YZQ��hjb,�8���*ZR�^|CY]�a0䤾T�(�� RBXU�l�,`�]�/�xW�]@7�5֗�ό������{�K�0&[ZD9f��l�TR/=���+M��k�Tՠ���X�JEM�u��h�s�Z\�s��!YB����xb2��s�AS��y!g�ES :��Q��Zt��?n�>�W]*fV(�Y�Շ�±�o�󱇝|܁����v_m_Y��L ���P�2ަH�j����ҪfV���K�l�y��
p��ҿ�����mo��v�RϻB(�/�n�DC�Z�����ne�"*E����wa��b
hXI��cw���-�T����5�z%{ꉫ���uVp@8��-K���`�L|{g�!on�[�ϊ��Ԝ�C�~)�ޟD���rS�
�6���DoR�ǹ���^�X��i�57�x[m��~����#'u�K�#�"�qg䞾�1�eq�EQ��1��b.�h��]/�A���r8 ����>��Fm��ǎ��E>��7v�ǘwy�v���������C޼������f@?�ne����觽�7\t"�u����W<�V�y��,°rІ��e�T��)�U���a�X��}@)���k�b�:[��%�tA�T��lV8@��˾�f���WP�\ֆ4ʦ}
�+lx�2h��$WY���0�q|�WcK�?�S�TM*�,>l�*g�~���R'~,Y��ĥN�$#��n������l��U�Lx"E!dJUn��+k��({^ݷ?���^��ƌf�1��g�����x�\t�@�V�G,}˳B�\|֬�«?(y��nm})�z��|��Y�o8x�������n��q�C�e�Ð���9/�~���,����BB����dm�1cF��tK�E��-/o��~�eX.;��#�e6���-�(��JqY!~P�T�+Mݒ��.L���CM�D���涻C4ݾ��%�?A	�`�
+G�mf;n�+�^�q5�E�SÌY�
F�b_U�q�S3_��֖�k�Z���K��s�#�����J$�Ɲ.����2�8P[�
{����3|�����w��K�ٓ���E!l,F^�U첋���gɚb��4z�.�q���|����/��{�^���ޚ�5G8��ַ��V���UD��@���7�_��x��Gn}?آ�=����|wjt~�<a�qt�^k����7��)O�r;��+o�*�R�"U�t8�ٝ�س�>�^ihC�d����w��ǜ���_q�>)���c���_��Ǫ���l�M�]���37gnB㘡����D��
�K/����֜T�ôy�]����'Ӟ�~�fS�KR�?���2~d$"dɮ�W�R���������f�WnY��>��E�Z��]�伨0���Vt��W��'��쎤��}^4/�kZ��U{l�	�qG��u��o3D5�U�`���L�HlPU�L&`�R�|1�˞���!N������&�����7�fe�	Ȣ����ۥ�;p�9kﳨ�`NW�]?=<�c&Q�����fX3,��t�-�����4����fW�{)ow]zɢ��v��Ғ
��qon�ʁ������n���Ué#��0�x�[6@�:r��XD�>
���E���yvӕѲey���n�+Bϔ3}�>�(�{�]s��x���z���j�����%T,�;��y3�AO��m֧�3g�o�$)� !8���]sZ硝-`0��^I���4*������l_��kr��/��L�h�,G�0K7Y
韊�ar�$U˚��T��2}��M�ֵ͍{�W�>�s·�j5e[��`��/iM4��9����{�%%���:��&��H/�U��!>��qB��D
Ϧ���`��k�mW�A�n��v�5����� +�a"��O�ߟ}/B��X���^���j�MZͼ��!�nu�����?]8qN�T"G���S[�"C�������,\ 9��|�枇��N��9��iA*]<jX��%S����v�^��o��˼�O��/g��߱�n�5tGbf�!5
Q2A�*)Js��i�����z�irD��J
s8 ��Ϥn�lk����k�X27��^:��?v��ͳ�>�/���Sv�U��_������#3g6�2��"�ea�3W��%8p>��a�a�<Ҏ�l@2�"6Oy����3T5��D.]������'��Ͷ�PƘ��a�Ѓ��I����?e���q�h�J�$�}�ᖫm��{�����^xHus^O�]K7����o����9w䑛��v��O^|��v�}��zK��.Usb�v=4	�#]��/iO�g�|�N�lG^�H�S7+�\�|:�Pb�9t �'���37��.�1úιdqe��M%E�s�������ߟ�ӹ��GO�� �.��ZZl�+,J�[2~�)���N˰f�p,jj^^�^��+dy�z�m�f���l�U�4(;��M������K;m>�.DG�3p��]�ݣ�~m�q�7y �nb�?�XR�	������S导�ƽBqD���������/~�jY�Ӣ�J�9מ|�2:j�����p���j�B�-S�e�ߟ�0��������e�,��)�)3�Zɜx���/���Kl�����yuЉ`Ӵ�Y�w��Ӎ��音�~����`�cD1��k;o���
6`���e�>Rj;�6I-�AK~�Ԭ�(��GS�(���L��oV��7�r��
.�GQD���(|��O�F~����෇b1R��戓=q�7��%\Ԙ�����n���B}�Y���M৫{Y���/��Sw��%��lj9V�*�aIN��������s)t�]��ae���..y�����%!q ����q�ZQ���;�hw�'����	/���\Z���ѫ',������{��?��/f��୏��c�(�Ǿ;0��]�d�R��
E�A�J/�*?x���E����[��}�᝗��[�λ���A_Տ��bS��o�'a�og��Gp���h JK�����d$΃���X��ܐRH"��:h�$�d#4D0��Φ�@b���b¨�^TGȘ<Wj��Y2��Y��0]�$�9w^scC���굵�>3��Ι�3e�?.�i�
�]wљ�1/�0/�)$
�&M:�;o=���oZ�h���+ϛ2ea2z1��sE�c��}F0"ہ`���定Ն|�k�Q�_�Մl���g2�A���Z��D�WAix9�<�eْ�'⫉F��v<�R�3�7;�Iͼ��ÿ�>�s>I2��Y-���n�ZqQ�K/QGG� b�_�,�p�0�z>�JG��)�?��p��_9f�v�v�C�_[U�\���/�>������N~y�)TX������8e�ޖ��z'�	��j�3��
��J,����`@�*���?��GVn��d߃�{�f��'�����Td�?����/7�4`Pmb�/�j�}�0X�7ݦ��C�@����F��ٜA$�~��+�T�̢��Ae�VA�f��S��Z_S�D����0t��$���ꎓt�����3�O��fV\����N@��9ar��{b��{?:���
-��y�y�k�cH�2�[˯fIծO\z�G½����`������\y@��A�|�1���L�R�q {9`���FVPc��"��1�����j����J=����nr��:GTO��rX-�++m���>���/���-]��I׌����QC�����
�����1���ga`��?�Ҝ�w(��f_u�њ�|��g�Ul�Q�}���%������8М��R�H$�8T�=��`�z�
zz
�:�]$��Z:���aP�ݏ&�q�;�4U�`K�l�;�>�ly��a7
;a���O�c�{�3�r��k'���������O�Flb9�܊�O����7�n�;aNG��$:V�`��n{Rтa�>��/�bxSYk�˲fO<���E��,��q�'�u+�9qΟ0{��'�������F�lLH؋j���	sl0�tʊ�&�Ol�v}���8%�\��s�c���X^ ÉsaF����g'��'zu���ipu�1����wt_���?Z~vq'y
��0$���a��..�(�9�ut��I������%�p���6YwPiQ�>;����E�ڍF����y�k����N�d�����t)�8�D���و�E�m��/�����E�}��@��)��ge�
=����k3��̛�
q�=��C~~0kZ[1d�
d�s{�rP��
�T��+����a�k�"�D�[21 Τ��\��Y6j��^kjR�ò�5N��%qu	�+O^�����>��#�K�����G/]�}�������}��2g~D�{�VҰ�$��d,�HRX�jbI��j���X >Zu�
`��h bbX�2����-�&1	XPU�۞�w��nw�/Ln��\����7�LQ�K2��Ɛ��K��ե��:-Jf	3ޫ��(z듩�R��3���XĔ�z"w�1��Q;y�_|�>�ư��?R"W�a9�|���Q���>$]3��XT���qb�*�?+�Ϥ
�������$
��y��h�>�cŠ@A{���oѺ"5��5�?��$z�f��;�h�$z����~v��2�St+���7�"�Ű��wڦ>�G;0�/3ݽ���M�8
�J38�~T!�@5�&aq�����ѭ�Z�3����X��oS󁭰W_���_�����_���?�t���4�a�ϳ���j�\M.�$y�oq`?��?8�?��w�׿���W���_Q�uU�8��#�|���C-�9n!ړ�^������7��z1���!�^\G�ۏRp�B�w�B9��8���	V�ut �*����=)��6|r^����t��d0���f4�����O�C=�絯ޤ��ց���I��������6<�r,��ߠ��^���J
I
۫����7w��O�;�f�Q��j�!����V]�0�Y7�Ϭ�*��Հ���?N��3�_�6����/�<g��G@=&����~Pahj*l�!��P�g�U`�e�0�l�9KO��%�K��_h��ߗ�yh���W�A��7�z�ri�8#���#�����Ÿ���
��h�@G�o����h��K	��^'�|�����$l:�n@��Pe���	Y���q����3�ACM�q l��l7���L����{�2o�2�2�/�vt��1��'0��A���C�i�KnF�����������h�=3f-5���d�y�
.o�+��d�����[�Zi�������Gn�@E�����	�и{����-<�!��K.�K��:xUO���׏^��~�����Js��}�3�캧�Vꃏ鑇���ѥO�:Wr�$�S,�Ͼ(g�*��ˣt�v��{����}�U�Y9��������j���F�7nP�����O1�w]t��P3,Z�|��dRT>��a�2k@]^f�7�@��Vm�[�*h�����a�=Q뀪qO[':�2�:��dc6��rR��8H(���+*"�ɝeye��yO�-�l�(�iV`�㨯�k��^��j�m�tt(�:����_��??�ޥ���tG�/yV (+:3�����ӌȟ�VgJAA�2�o�,�ˠ��tWWQ�e�c���U�S¬,2h�9Sx�����8������ ��5W��}�$'Ēu�e�O6i$^�l�,�f/������f`M����9yr���j��s/��ҧ�����t~�s�ӝ(:��X�d�[r�	r�f�����%�q���*�Cyd}�!	�#���tj�k*s�~A�~�yib9P���S��k�s�曈�T?(�g%�C&G�o��0�%� j�֟�Z(9�I��}?$����y�}�G�9���#�;�|��2�>��DΘԑ1%H#�N���
���3#ygoy��ߦfg���L�
Xk[<�~Y��>���:g�5�N<�������Q�FA�h��=�L�,��f�`QY��Q�s�>��:8��e�{�Z�i�2�f�*Zg���yKwض�yP�cȺN�����'��i��h�
���!IDZ��I2g.F]��?����Օ��s��,8�cfSI���MŃft�j.4�}����&���yP�7�z��$L�f�=�xb]�*",�a����&(��7��7^��ﯻﭕu�+���q����z�~RP /�"�)"�9���춹�]4X^\���#k��v����C	@Z��`9��w;�l��f;�}��0��f���.����
u��SR�c>j����D���c���>����Fi	���/J��t�2��!j���.�l7$�=�*�$��P�SPZ���Ty�Jf\�9|�y�~�my��w�*Mv�>}�OY�g ������͸prTRV�����/(t�/� HBC`_~7-���Y��)CG�5<�@��7<�uڔ���/��8]X����Z�z��3�Ut�ƭ��rbχk���^����8\������~g�A;3LM�^�U�Wo��^���A�JN:i�z��F���aT�(�W�j��շ��
�GW�6�5+�����?������=v��+|���0���'�����޽�����̝�����R������G�{���%�a��DD��������؃�F���V�&��n{���䈨�(�-�+X`g�e��b��bc��r����\WD�/)��%aM��%N�zN�b*f��F ���~z�`՚�Á��^�O�4�/����n������i�U��yu��TeU��߂���GF���3�	�n����g��	;�0s�>�ߡ��߶�|�e�����O}.����
q��o	R�UWW���ߟ\P]�UyN4�T�Z�,��mT�e�3�US����v�C㐦�צ��n��_=g�o��}�&<�o�z���;��A���_,�<�
�Ž��ǥ?Ni�lj��<8w����g���kh������R�ڋ.�ٳ���K���(��9�X��
��{p5�K�g�r[�����q������O<K.>KD�9�p
 +�����_t�n�!dJӧ�ӯ�%�};�+,��;�d��.;�X���~����b�6{��ˤ�]:��g'gD����+���/#���{z����a��v��SS�_pǽ�q�0v�6��p�γ��H�����@ó�������b$��vƁ���D5+1q�$X�fuގ7յ��Jg��F~��q���U|5��7Y�\q��q�+�ϝ��^��W�񡉭�Bt��7;_~;�ئ�.������ִ��y�f"R�_�a��fZ�lf�׮���>�@d����:�p���1��:k��5���ǒ���~��?�u[Z�K��/x�X�'K���C���I���l��/Q3��K�
v4��{ӐF7��D�ȁt�i��G��{;ҩC?����s[c�:���>�{잻_���,�Fk�UϜ�B�TI�3��z1��w<�	�pZyм_��N��l:�8ǽ��\�wQ=�۳��.'*"yF��4�J	Ѝ��
E��c�X���^��aa��)�9A؄9SÚ��q{�����ٽ�&2��l��"�2۪ϝ�r�٭�\��"�
�����an�\_��9X��I�|�Tʐ�rSE��W>}����i3�
SC�˿�nAm]QӀ�Ͼ�?tp��Yk�9��/F�Yx��6��R/H�d������x~CX�)��l:�Rе�Gm����F�3�m�l�ig�>��æL�!Cl�447�ҥ<���ݥ�\���E]��E[�#3��	^�#�U�uȀ��n�c��@4�2�-�O���e���e�]EDF���N�W�˃���4����s>bwWPF/�uw�'�t|�;d}zb���q��E�dp��Ր���u�qO�h^V"�1P�Y�Ψ�f ����^A
D`�$��
��A��W`�SOO��:�a F;3�ĐqG��+��_��Ȗ��`��@��ułf���k�@h�?��-�/���>��%�_m�mXB¢��c�$�zߝ�l,�3���#��T^���h��{Z:S<<饧oV H�+^�� ����3ǦMC.�Go�(9�F��wߡ�FNԓ�̼Z��>"~�����~И���Vn�I6�V�P������o��SNӃ�ӣ��3O
�@Uvm�-��p�$��g�G-tI����h�<4^�PV�-��zJ��$c��+f,�֋.4�`@c��
>�0��Y�	�&ʍ����,	�E���GPX���D���-�"U��;A��R�:\O���s�Aܑ���_��K�}�ӨD������+�}���h�
 Nj� ����T'���"`���=o��P@::�ʵ%��+�c��#"��r�������
R��N�iqMMQC]�5
,���#(\��t��=�d�ͯ:��VJ�B�0�Q_��Y?<�s,Z_U�,�X[��Q2aU�)п�W�υ���ٲ�A2�'��6=�`��g��0�ޭ/��W^f>���X��Υ���-���B��^(��s��1���N��:�����[�$nN�vR��|Mq����r�X.����b���ݮoV��=�����Çwtt�q������so��_W
����ڇ�l��u&���F�:9�>���q�^Z���?�x`��ÒM{�=�A�ɓs�˟������1 �d��G3�tYَ��[)(
f��\��.���?�r��(�V���<��]�r餪�ы�՝ӷa9�q�{����%�f�4|�f��W]������҇zz��sc��˲V=�p�Q�L�׎��Cǔ�4���M�J9���W�����A��BuHs�J�������#�އ�^���r�>�Sq�f`>��j�\��-O��uP��-��ٺf"7�jb��9���`M<\�cI.Y�2댲$�I���D�6�(�p�|������O����gU������?v~PVZ��g�(�@���O�;J_z�o���}x҅����ڳ7��?����4s/D���MA0:m�C�zo��o�"Ԅ��A���r��`�h�s�Y�@�8`�1c�~���sT�sK"7n����b��ƌ���d�1�(��ݿ ��GN��2$��0�E����V`�H؋���LC8I���>�'!P{��>CԔ%����
��HK��y/�(6�ɏ����fؘ��ctm2���)KB��(A?	��B�{#Mx���K��<��cd}6�h2�L-0M��8����	����ZZZ�^{��l�www�����뮻���[�H.Z�[f��nctև���8��7o_��C���L�ή���V�3�hP�Y�����:.{���{�,5�n�/����5��)�8�T��NJ�>��NA�=")�r�!k���h�aL_h�sR���<b�i�c��ja�Ι;A�i�6"o��or��朹�Ort���#gol��"V�3gn�r�R�}��;���|�Yc�����o:gnm B�̈́�t"i�hLX:��[��f��Y�h���h�A
�%�����:���!��y�$Z�8J
l���K;��o��kl;htsq��>���:��EV�B��F7�t�%��k=易�6g����O��UÂ�o�� ������y�~��(ظ�����ŋ_��֖���Æ�ԩ�l#G�[���_������njnfU]���0�S� �u/������is��+ۊ���x�L]/�×�6��)���f�>�����tz��>}�#�c�F�j���8͏���c��Y����qv�aV���_{���!&�EL�|�[�Q�L�n���݅�"�HwJ�0�L��W��}Μ	�w�������w��|��ou���$%�.I���:�l��W�דM�	L琌����N����� 1�M��;�6�A�A��X���{ v{���d��]�v�m�_|���R$���=�zŕ�Ҁ���2DX����+{�"���$vo{=�V���)��-��j�a���n$�r!��s�ٽۡ�(���kWa	o���8�KK��Y������F��>���*9�Q����ޣ�����r�'
�4��\5��o)pC��$�ȶ��ԛ~~	��a�vFZZ��c>n�~l<Ԫ��m�y�խ����>�_~��ЀA�ŔG�Q���D<h���
��u�5~p��&�p��?|����ʢ�bI��ju����d%�4|��-�oVR<���r3�|���dv�t��BMgYI���x)�ƞ�ӚjC���Sz���F�K���U̇����L�;�������}&Wu��h��|�|� Y���q�(�:a�{�R��k/G�E�p^���:���3�n��XΉSQ~�6x޿�̤��x0��V���H4|�!Wfƛ�e��ʕ^7��0]��;��AmՋ/ޯCI�$PW��}�JV��z‰ZT��r�N���N�G#��-��y�ܫ�������V���O�1P\���V/���V?�`�w׶֊aZ��-"eJ:4�ys��(X���6�o���~K�{l(jDD4j�	iZD"�6�ka������r���y��vȭ��y�Ծ��1��+i���zu�s3��ϭ�h���Y���<��}�P��g�)�7�*�z���3q�\	�s���T�޽/���Ԍ��/s�g�R���ً�K?8��XXT��B���S��8߃M߀*�
|����g�vW��;����/�+�Ӈ߷�;;9�
���� ��4�4��n!6F��i������(~���nX�UK�L�Ɓ��B4�֟~�c%�D�98#A#3b۶8#գ�w_^zݓ[��b!YQ�ض�%�.�Pgn���rmS��`��K���BK��I��޽��+����_4�w������R��V�Me�66j��]���0*$�"�pf	[���KV��P��jԈA%��q��9��#���h%�A����%�(!q��,�'��k��S �̳3N<�a�d��<�d7d]s���o��:�Q钪����{��{2���9/��I��wN�,�X���Ӌ��`�{6�1i�m.(��}I��	�A��u�)}/>?��ڋ���en�O�&mD�ᆍ�:�۩����}�_��鐟�UU-�?�y���3k3&�)tsE4i��&%���O�"�5��e�,����m;HLJ  +]iX��n]mn�n�h��e�{�C
Q⷗��=�2f�\�2E�t��|����^�/U$�[W��Gȗ���A����X%�l++1�b���֯�9��.ٞ���e�{�
�dM�ڟ��i_x��|�vƈ��;lG�X�^�{N��4�^=�����
�ﺡ�N�Զ�Y
�x��`�X�X��e��@걙�Y,$AH�bqL��(�B�F��h�܈iq���T�2�Iɴ333�og�1�'�dgg�~�:KD�x_��]��o����y�3/���F��[<yz���}t�W��ɼt���\�,d�úc�;Q��]�k�_��I�QFoIύ�/�)�D��tq���c��=5��o^�s}	C���VVќ߼��я?z�;O���Y���&<���v�����R������n��W�Թ!�v�	��͵u��*���N�s<�-=Ʒo��RV�[��'˻�@DfI-Z���rcҍ%b˹g��P���'�zh�s�GK��E�IҺ�!:�s���Q#�
�y������R-H��Y�ò��æ ��تZۈ�*� �u��3O_��EVVd������c'HW�nV��Y@�+ݔyj��?�o������G�|�e��--M�S7��[n���lǨ/V���o��^����%'�z=ކ?>�3n�e�C+�d졨����o�Q^BvLx��=A���g��TU�^+)IJ�����d�v~gN���r���^]Z���Z��\{v�ڭ��ޫ���ay껺��z.������;��~�/o�m#�� ��#XƲlcy��$�������¬�3���/���ٟ&'�[7�u�Ѫ����/�\�z���N����.��
��DvL��iӦO?�t�cO9cն޿�n�p�IcFw�=��/���+�8��CE䞟��r�̜՛j��E�)@YsUH��X-0�$�ߑc��ϗ�\vr������"vzz�W�'���OP@K0"������k��0��œ�Sx�U�@�yOn�ӌI�!�N�73�j�r�~6�m�����4�"
��@}��~yו�w�?��j ��s�	�I�tT�?��=�{'|v%+_5|��ґ,h�'�>�q
�/}�~��w��huܓ/$�^Y=�?4����VҀ��55U�Y�ѣ��o�}x�
'߸�y��K�$I9�-���^Z���H�IxPր%�-��K-b�*�?c�1������q����wIQhj�n��`L�Š��!��%i�W|
Ol�>��7���`l��#��S�(םS(�/}\F,�..ٰ#��ڻ����ka$�]��,��tT�[��o.q�aE��<))eE;�<�y�i�D�w�1�.���o3�6�^��@��=�NO���У���j ����IB�INN$v������s�7`�)�]3<�X�tOھ}�g���������$��&�(��<�i�y�|%J����S]���B���C1i��r6���ݻa�j�QD��j]�AB"C|ߧI��g�#���k{e��
/�-w�} �
ۤ���+]�O���R��3O��� pZ�#�^ۻ�&f(Mf�>��?�@e&f&&��N?´H�i�{nಝ�2
1�D?%$�>�_�����ۭgӏK�P���+X��W��Pе� VBI�S;˂sϵ�>����DC
 ��ɥq�
�D(ؕ����
���@\�EA��	R��DvZ1�Ǥ�لI�>G��GC��6��uB���Վ9,�����#:��7��˭w۱'�鬚Çf�{B����	o�CMZf�<J>bkDXY����"V�&߾�^�k���d?���w���@�	�[�"K��y5CU�_����OKj�Qբ��O<����s�8�g�3�t�R8v�ؼ��~��9���/rH-�&w�0)��_�1Bl�Q���I���c: ���3����R����w$�6Y�a7ڧx��/�
ǑH:/�	"R�Y�EY-v�$�\_Y/p�e�� (�Ѹ��0�V>�Q�BVv�����HB���N0��w���Q�}��~���k"�$$-=8h�An@��?�.m�\hOo�h�!�Ek�@��-��dƜ��v�8��,�~;��������et�eþ�S����x��e[S�z>�C�h01C
��߱8���i��t��#%�{Y�Zv���M4� �Lػ.;1��8�����r��ŏ��	NOJ�7��-��uʐv��C`H�H츳��/��R���x���I)!���;�E�u�w�x��˞�6,�'F�%���eX�}BQV%�(j�O�}����6ČO⒡��覍��+QQaPV&QRu֗�L���'F,W�G���C>ij���33|��:8�ZX�g��g�!�hjh���q0�([����
T�x(�ǿ��7�W���I��K�%Q9˛ǀ�D@RAV�k�\��:�m��qC`UQ'W��s�ou�yyW�ɭ�V[��8���o�P�k^k���A�����
ކf�ܓ�=�R��Fx�
�+�Kj�;c����]3��ս�*��l]��dž�=v��R��C��C��+r,�g��%xdfӮ��Y��U��%�D�4�%o�o����f��i��=��_H-e;+�_��[O���]� �2�x�=*��,ش�h���p�
� �]����v�j������$P0&z��#AI@��ڌ�
�U9�{G_�������~nޅ�7YU!-e�6���v����?�ң|N$^V�5����N6��`�ᇵ��o���i�u�H��9�̎����8�`�z��N�_p�]�M��@��>���,�<�6�D��zi�>���5�;�V���M�twCzF�c*š�g���wr�o���̨�-=33&���I��A uNq��(j#n޽z7|�����
�
y��h�R�C;�$u`��%%y����N��1�"*S<��۵`��K�~5h7���ֶ���}^��
K�i���4wP�ۨ�
Z�"��4ZS
� �	8��ti+.[����
���8y���GL�XL1��JJ`���+�6@*dH�>p���ɿ�^aO
:�Zi7����2MO95��ѝ����0+���ƻ�O��?j������{��uy�榎=��*��Z�v{;�=$	�'��.N�3.y�/�[�%�tU�.d��u�nC��nE5�C�^ct3Zo��<��G	�@TCAk�X{������t����"FW�(
?�rሹ�dH�Zy�����c��V���
*�f��+��Y��S�Ȇ��e���`��̚��#z~3c
w}詿�D���*��۶�իW�COk�{��Z�BChPյpwT�*(j� ƗdVV�٧��=�@~g`Q�8H9�$�֊!+K�u��"QLl��0��q�"���MǶX���������8�����+�dC����p���ƍP^,�
-n=H.%�Z�~��H���+��K�=D�m#�q��e�"I~�s��{�Q�YCh���u�g��+�Q{�G^)��h�«�X�A�b���JR@�c�D}��b�R�s�,�
���M���Ǡ��'޽$be؂�
-A�F�fm�ˆ��efd ��ʖ!@�(�
*̌B�L��������j��<���'��)1M�^a�������H��b�BΨ�މ��x��=_;Z'4|+"g�xzk���1�@�I=�˼�in�V떙5w:��x$''�P-���ǞpMUUzi)�����;k!U�8��K.<�+ڔ0���z��w%!j��8[����Bx�㏚�6b�׷k�Qp3�HUqά�Q�"��_pQ@	A�8Z)��!�H?ze�'7)�d�w�綞��;� �5eC
�Mym����O�3���U:��z��_��n�~���K�s��Z=7�`�2DH�l&�:u����g�	Ԑ�B�����n�C5��R�~6��
k�I�<���2*���~���6)3!�NO��9y휚�3�O�D"BW�*Ȉ���5�����u�ܼ9�K(T�Ř��X��''/!�v�~g�>��;={�]c�����EbTqK�h ����b��K��>܊%J�
�ڶ����p�7߼��˻��PՇ|p�ԩ�N1A���`22��3d-��*��%%��<�b+��ZbE��B�;�sL���V��F��V1��ɉ%�h�3�%`���^_MT6=��QB�(1x[�Rk�0�nx�ӯ��a¤,Z,�~5o��]�Z�r�w��yK:
������j��~�f�����k5@��t*���k�Q��i4!��n�	�H
A��=?M���+��c~���/\��]�,�:'�vƾL�کl�n<'8�z�BP������(�;f��9��06Ѻ�I���u*~���h�[���2��|�����٥�f�%3~[�t�,�����A�_�ԥ�����������R-jW�H+.fc�ȹs�/qkG *�MJ*[�A����Κv���̚����h�`�h��w�iPd2ֻa�D�ž�����T~ۮ��*Q�"N�PT�u�o�#�EnQu�?.�H������2sY�#��̺�@�J��>o:+��Q4���9���$
0��� K8l��Kr94CGN
�_�aߏ�1gIYeM�g�\G��'�HZe L��ct!�݉2�	������p-
��m�^��S^r�Q���V5��i�G�EA%��HN�a ą���9"S-@e������a�#�뒚*������N�9���n�*_N�?Ir�,��&�X���թ��
KN��2�cXQ�3����|�0Q�2�����f�2	�"�t��aҢ�s�kCXY��Z#�gg; 9)z�L�5�F�|�u�;v�������&�(�g�G[�����{�.������M��@�� �6�C��#h{�iM��kj����*2��9�4щL���*�&�%&`�(����_ڹh�Ťu��'֎��8A�[��0�(��*��!{���%����e��� Nv�v����<�
;j�aT���{lH�u�%��ݎ��QDU��FOE���{+I��(��JY
Q�����ú��U��p��?3���-�*M08Po�}g t����d�&\�)9Ѭ��%��$PJ�(�--(��b[��ԥ�#Ӣ{ʝD!��&!9�'g�N*-]��77?321�ЩS�!9�m�̧>yZ���Ȫ%�rgg��(8s�
J�M��.�^ٞ�fE��1��K��$P��?;��X�3�$�_��D�K�;�565ٶ�-=����-he� U���R-�G�p����7�
�w߅g��QU�ŕ��3���������7��鱗�/�׸H���#�<��cC�h_�l��ھCYb��vޒY��ATP�k;Ra'�<�������Qct(���Ǩ�Q�5���o��0�hN&�Q�g�	ݮ�P��@��'�?��{-����xJdu.�	�X-FA���܁G��X�_�,�T�-d���|z횯�|i,�c�Զ0j�l�d֧�E�������f�j���s�#nZX6|���HH��}��Vq�H3�p�%Ĩ�c$�l1;��b�]��	p�H��5!g����P�Ԃg��mvY�(�,a�>��@X�c�^�	 �-he��f�vҕ��f�z�t��9|o��t�d�-���$�[x�Є�(��s߉+���.���[ N��My��t���S{�=�׆�a��Q���svJ^V�3
�0�(�i`�E��@_B��P��h�E�	�# ���&2����&� *H*�A��\0�@,��#�L�C�T	�S.�a+�M�C/']MIձbQ(�O
uC�А�~n�����L����/B�>u��pP	����y�I�@2�c����|�?�*<���+j��n�Q�1m!  @D�m�ȨQ�a뺅W�
i��}L��u�V�(��#��@&�;!�v��D�F���Ay��;��3�_T��g`gkrF"#�€`�N���u�,�Q����,hm��(L�i^@���k9�
��:8���/[��3��� <P����BA�G
�-^�5hXv�P�Ĥ21n�0����w���=������"����\p����|��T��W��Kkh�ig���S��}�|�4͞�饉�\�}�ɇw��{M	���
��[%�Kmmz�^6�͐����j$�jq|���ƹ~H�w�p
���a��,
lo|�zf�
vB�Hu����(X���j�O����=����ptvGC���s�۩|�g��Ӏ�ޘ6)��?������98f��ڰ ;�ٵ�e��Cv7ԋ[����������pC�.+"S$��X�0�Gwl��*[6P ���P	^���s�c�(��ح.6)@�I?.���X���_�������9��[����̞�۲,�ΧN7�~�}�Q�^8���?�"4tP�	��ZS^�q�f��/u�xBQ��h>�kQZ�3~�Dw��e��c�
�h�=�����y��6m4h X�K��z���<���~���'kl�r�U1����~��9y2��>�gׯ��f�H�x��`��s�������L+��}�E�X"lss��D�D�
��c������夬ڵ�p�o�Z^�o���l��@0���¯E�RQ1rȐ3�O�1*�E��Q*^��:�̴prR��6=��<ld��R�R���z�YN}z�� x��ܠni����n�na�d�˂�_��f?�P-���x7qc��_�nic��BU`�4/��e]�w�MQc4F%�U���� ���L{647X�S�k�q���+�wV�H�5?��
���:�uw��ޝ�#
�Q��wU4F��{vV4䧊(�?�<Ȩ��g�AU��Qѐ1V�<^x�ᥤ�9�E���%��fE�>,]ـ���?bo�s@D����^]QA�t��n�u�Nmhh/
�`4d�+�m(�2�lD3�N`#���t��D�*"lBиn�ΡE�$5�c������0OEć�2�ͦ6���j�QU�Z;�oߩ*��),�;n�0n��,HO
�������sk�{E2D[��x���~���k��O��}/����N�	K2�����~�?����co_��3��x.?`d���g����9�jk��w_�mcX ʪ&��0*mCӿ��}೼Mش7mj���0��[+Mπ���,_&*�Ǔv,�4�l��Y�Gdp"�N�P�"��GY�[h��'���mn0����-%�C�]�.ghvu���2�����:
�5�ݴ��/�����9b���1}��dx=��X�K����jdf��9d,j�[�$�f0�$P��"�)&=+�
�[���߭orZrȔAN����fG�FH	7�$�y�����3!����@s ��]�k�Z������Y���Uٱ!u���1u�[�K�2fA��\%����E4���}���_F%jl����%ǤY�!��#��|�1����Yh~G3��T���qvu�$�D���#"%�GyT
������*�oO;=�Ba�*#B��/'{�MUU���}�-p�a*�i�u3��i��
��F�|��\��g�'~���=Z�Hػo��7�Ϩߓ|�պ�V
jQ��i�n�b�x�(o;�L�n���~A
�j6��?���li�"��x,{e�{{����r�=K2}��e�yS6B��C�?	l�H�z5� ���*�@���(��k̘�1g�\J���n4s~7�q�����Z�vw���>l��]�X�)���m]��:.=�ƍR�����)�
g����]0TD��^���r�i	o��.r���{�[�x�h�k�	��yS��Ԏ����f��La𬔑��5�ih6J��4��̔O���q<@��G��6T��3�~����%[H�Fˀ��FmTۀ�`��H�5���p��[xbʘ��G���
�aeeǫ
��tB�'4��0Zh��_�mO���
@&UݽyQ�U�~���n�{�	j����5���:���t�i{����J�LeՍ�QgQ���S\���_glL��R�*����X��q�/9�_,)-����G��^���؛{�y�N::'�W��nK;��ʋO{���y�gA9x]�A�aA+�uն��|/���T����G�_9m���x�sk���]���EH�z�a]�z�^­���"��G�k��n�fՉ��m�o�wv��n5�`H{$fNa
�>(=7�:��Χ�.����w�n����g`Y��>yQ����2a=��K"Q�x����~�Ӂ����5�h<��=j��ϬuAQNydɂozd.,���d ��q�Ҵ>�LĐK�XȰ83R�4�v����S0�0��������\warE(D�ą�s���@謞��ԋ���y�>g��no'���m�m�c��#�aVUv瀝�Z:(���� ��|����t̏�ϝ}�= �a���x���,�g��Q�
N��~����A<Әiq�ux���A�4����*#?���O���;���{Q�r�OL��+��7n���#�x���a�rZO���z]�Y�kgm0���;⃡\��B�x���� -�w~Nn��y�"�M�5��}RD����$$��]��a'������]��~�5SV<�ı�������)wP�ک���v�m;���>l6&!�#0o}�fā��I~�U^����V���-.c��EY^��yG��g���r�"&�d�n�ݽp�e�
Hb���C滥h�]5���t��ImZ�"d$Z�i�rT$��|h�=��*�L���9��K-�:2m�
\�=@o՝
��J�i�=���IQ	AĂ
�����M������5�[�&6��Di#�hE�hW %adB&#����ϧ�ܜ���d�'^$ƈ��c��0�t����e��"-u��8�)��� 5E_�n�g�
����%�}?%'��E�{�� $0h!�!Ƀ�PS
31��ҳ����z��5����\s�w����~<`��3�h=H��c�z)�nu-��/����ʡ���=r���|�M�
�%�dH�1F�G� ��/����`R�7%J�0���w_d_M�c��@#�g�˓��o����V����T~f&�ӄY�Ux���7E�>��H�xk��~�8U}��h��k��ˇ�ۖ�e��ߝSʓa��
�hn�����\4��ἳ�#�><�w���?9��q�5��WO,)q�;�E۴�iX�j��[�~�^J^p���6ɖ��o
N9`N�l#�-��E0m,�5�큝LwBdg�Fj��4��]��؎�4
:z�q?-����?|���APu��0l�+#S�AA��$Ң���,����m�Gy=�t�4�����x>N$e�R6��q�ɷ�v`�'���=�r�"�'%8eb������%;�0����ΰ���چ�Ϙ偠����7��'�竫��T�����X�n6�����a�
�$T�փZ�$ܿ�<����9=�)L+�3䇲V֬�b��P�
�"q��f[�O�S'�	��i�m]�_b9.R�dl�@s0�`�C(��N��:o�YH��&�xuũ��z���hh��|��hI,t��pGc�0Lo�nӏ�/����#̉ ���ni5�'�τ�p~?�����kX+����_�M��g�:%��īV�|���E�� �b�q�(��i�;��g,��JL��Y�093&���t�I.]S�}��
+l/(�t�ʹsg�"�7�1�0�{�X3~!ԒzNB�ߕ��Z�~��q�e��޽+Vo�so��U�j�(�>�����v?:����Zm��v������#��*�^���x�U�����I~˲����ӣT�d�'eد
ԋ\Xd���9@�l�Z"�*�0~��'?��ݳU��$��Iu�z�*���SD����B%]�X�]nh��o�hX��醹�\{�+
(�!,�_1�k^Z0blK��È���$�����k�4瀚����ށ�*�6p�h|h+U�x��22�K��|")@A��N�8'�ʍO�(��@,䊈�'Վ�tf�9� QAr��J��D+��hB�.�y�¨S�q��e۾�')G�t�oN�������Q���6ɘ1v'�K�!�N֞���iX�d�A��
Gv�ϾHs�j�m�O��|V���
3����i����K����-qo�
rI�Pb�Q�i f`�5`%���sL�b�����m�@/���.�׊�/O�� 1��FK���V��VY�:L��Y�@@���c)(8 �
��2��k\@B�[�v�\��������}M��D�
�suu�Q3'.ۏʢC��
��ec��t��a��Oˑ
�{A��X��'2�@őG�	�����1���n��3DDl�һ���@:�4��8�k�#�������C�޸ӕZ�G�b�)K2-��$x�Ĝc"�g�M�4@�坺刀��:�y	����y}ܰq��d1d��7dB.��Kow�m�;&��g�C�"��=��}'�`Z0	�O�@�+JB<�W��z���wz<m�M����2l�/�<)
Ƿh\��!�1�8�'��>�~%�N]t�m��1���pd�M3?~?)�/N6�Cq�����~sʹN�=���U���c���N@(�5�'������
�o�Y�ul�����ڰ#f����!ȤgJ�޽���=z$�u;�G{�F"����t���כ������z��Z��B�R�[�aK��+�-��U�[(	�*B���fT&eT!e�2��������ȶ-O ��paFa
'�0����sC�7�h#���%�N��֓0��q;n�;���2]D-`e�H<�6I�h��i��1J�cf{�l$uY3�@Δ����e��vk�m��y񂤈۾�a�^50lY]�碃��L}�bQp����C!v����|����­W=}ohKEJg��C�ޔׯy��w�~O�=I�-**�X����?9�[O�lX��YE��r�[^{]Q���=.�jVs^s��t����

�+R;l�}�eee�����233`_HE /�5L1��"�`�������.]��-U��&H?�kLʡ	R���pA\7cƷN�|
@��T�G��4�ro#$��_�m�˪NK3
MI߮8m�Ƒ�p��,���P�~�㣨�@��NҤ*�-��/�e�hy�G�N�������g?,�͑�MU��$���ZA��R�,��q����J!@aO����J(-�}$5��Z�eA�U|j�^�fL��syRD5�=�J�$Ѱ���T�v�Tr��bƨAOI��4@���+��{�y�����ibQfv�b|
�� !qq�,�L���7k�/
��u�~SO.;x��>��d��CRV�z<����g���:_}��#���ʑa�M�Aa��R�{��ٯ��/)�v�QnlL?��m���/	,ˊ�M��I?_Ɂ�^:�.̴T�w��&gϭ�MZS*��K+i�X�X�Gcy��,		��½%%�R`�c�{�b>�95N�P�Q�}Q��~at�{�kf�U�#�ϲ��ȇ�5��#
9�_��8	�;3�1���8��0:�3H@�*�GZ*��5
���".�,b�Ӱ�1K�-[TL,'��ԑ�fܡđ�}�5'DcI�,aBI%Vg �N���1?��� )=�8q�8g8�B���t����k�	JF��b 1n��H"M�

\W�IN��!%��޽��j��]֍���b��]�Qd㭮��Ajj�{��#��bZ�N�f�D�NzE��
�����<_r���*�Vk�� �M��_�����8���s�~�:�$�G�94�#��R���~Uuڽ$��CJE�����VU�v�hx���i�gVfRj�T���-�:��	

D�����\�t�7�Q�5�l��X�����>��	�w�xê�f
�hYxP��aϬU�hu+:�B�`HIiEI�8W�/V�j��:�V~=Vv�",ؼ`ᄑQ�>��s��������v��Ҍ6F�b����b��9sh)O�M4��75EӮI��!��œ���Hy�w͹����ߟXU5����7"�oj�Q3B�g�y$��u�@A�]{wݷ��J�<�j�:�e���ڵ�;�7%�Є�oM���񨝣v�9{I�����?jQ�C�ޞb��֯"�
*�G���3?\�8�ʱQV5��0 ���<b���
����������I�?���ӦE����_�6�~z�dʝ��>�[�9s�ot����e����&ig�A�)�w��S-��Bus���K}���e陓U���'�����/߱s��_~9�<¤��/ft0�2��t
S�:���{�!�\�Ƙ�/Gk���p�b���N�2yUm�%�kՓ��kCIbW�സ_��p�D�4�q�49Da�D)�#�h?@�%t�P���o���mOmد�@D�s�<{EQe=�(�N|g�"��Cr�I��0��
K�u��=�jw�w�C^5T�Ds�&���t��ǫ��?�����
��
��
��
��7��\~}���7�������i�0+��׮N�$�o�,,�
���e/���:�h��V��
�Dΐ��I�����E~�.NJalD��sWh#�p(	��>pU7+��-�(�3z���rI�d#Z�;{��mK���@$�D���
�����:��.�cP�ψ�3�������k_|��p(<��	�����o^�����=��S������b�H�x��Fy��2Κ�����1�p�gn7r�bT��mOI�6�a�|�ivx$���������}]q�\��Ҍ�,��R��
ֱ�VqIr���G�
�̧��:izœ���z۶��稣[h�{l�Y���}�O����Ǹ��-�]�|��kw5����f"7۽ �A��[�54���Ҍ��n���5��~vT�"��6�͞lʄE�AȘE�jpmԫw4H�d�_�LaC1)��$Qc>e�?��h��*
Zޠ�ϙF�|��ݾ~謳�[I-��ZD�W�>��?���-�H�W_{�1}m��1fӦM�H	�ϟo����\g�e��y�"������?I�vk��ӏ� F���+��/�2Hh��9Q�N�|	�߷����a�@�EE���Ҿ��BҼ�Ѩ�H�7iE`@FC�Y4���n
4!���C
��c��a�H3TT���6�-��a��[�j��+�6�JX�|9�2C�t}��%��rtYMй�i�q�p���wI���W����7^G�wd=YU��Q�v\~��$o��뗮����N��q����b�
Y].m�z��z�y`�k�r�!�<�e8B(.y��0{Hb(>ۉ0�H���5�sV� ��@��g�+�v7J-�����3����,���I.���[��c��W&-�	��X#F��̫�j8�f�
@��v�釯5�"Û4��e����e����YD�B�����ܷo�ٳg#b�)cf!�mL������Z�6��g�<�P��+��|�.
�i��j��F=7j���7no1͌g�F7T�;���V�\j���>��{��wψ�u�_�)�Ӧ�MH��]�I[iF3�i���E��;g>���le��o�z�|��T45�WH�627��$IO��s�
QU�EU%�x?�pB�@L�U���@՗��A�{�9Ձ�����ܴ���y[yu$�ء�c��H>YD�و�?�ĝ���s��<'ʒ���aa0�}�l���:G�ь�\>���)w������,��_�=�q[��
�̕��?��_���>�xϠA�ȍ�v��ǎ�]u„��qfG�1cb��1�%N��{���N�3"�p�
[�n}��W�QD��lc� ���fp�L�oHczs���i��*�K�L������@m@�
2�A�\�1G���$�ғ���ݥ72�� d�]��W��ζ�H!�ۄ�=��gVO�ÑB� �]���!�2 [Ā€
Ė8�� `Y
�R\4�����(��H�nB7�]P���2��).���� y�\D��‘�/���Պ���/3�7�L�n���A�����7���e8��X�w����x,��^�G��c[��&�}^VGF�֨����K������p<~�w�)I�s���#��8�Dũ�(�}�{���Y�s�[��Jb[�+����S ݺ�R���)=[Ic���@�b�)�Xb�Ƥ�3:s*RAA�Ν;������b��:n�ND�3�c���`A�['��_�4�N��_��d���1�~��K�^�&�싘H~z~ x�޻��V�O�f,�oa�?7�2�Tw�q-��t�� �c0�h3�'}��_�۴���a��{}}���V�ܐ�G#��sNR��@�&k�
u�������%"	��r��7���[J��]�3�?�,�vP�qLw�@�{�Wjĥ�_@0�q�9�?���a
t�#�V���?��Hܯr���+W�E �#�L�~T�Nko
ii�\�o7X_|��Yg�b!i�ou 7i�����	�\���^З[��cY������XVz�!��ݚoL^�Z�%�+� ���^:t�5O(�켍>>=2�xXu���ٳ�k�P�2=�ḼHڑ�Ul��Wܒ����/
 ^��vIx�	�)q���'�H��߮�+��Z۹$z�omdCn:=���Ѩs�hYV���P�}�E�BS\�㭟sH��y� �ȠV�	'�Bϱ�i�Am���x~-���m$��������ty6�=���uuo̘��ys}�>=!�Eg(�<cƋ�����?��iA8BL"p��ĈL(8������u}h�N4���XVzcx�dݹ��$�jjJ��sf�8��k/����FylsڱK��~l$��ۗY��Q���޸s@V�M��3
s�����{�ןt
"�	Ր��>~�%��e�k�a�`{�ϊb�9�CIp�vW�D����J�q�'�X/�:��u�����HIh��W�H9�b���|\������YdyHl�tEYg���0�HNM��M?j��7�Nff&v���*W񎏾�3�*t�����DU�=�:�uw=�h�=@��S���N6i�-U��'\�xɉ*+��C������� 55n)`�ۏ��iuB�ZY0Ϝ�^�j��8�Q�X<(�
������ý7<�x#����/�D����Ϸ�B�bI9q�� rII�tgNu��n�6�������A�"U0���/C��<��&�榲�4y�����lܷ�q_ٞ���Gl��蛚��ވ<��6QvV�[�
*+�u/��掮��}�w�AIV��C��f,�����~\~B��NN픟_�@‰���͜<>8���=��?bnDdf�4��<��`�ҏT��yHg0ՠ�#�� l�����Y��/�G�Zv$�Q#��%�VLf�//�u���Ԛ��NҤsfA���s���1��:��`0AZ��̙�b�j���O�p�k�EYl�2�pKZ9���8D����P%�Χ�h��ƌ`�8�g���%-Q��~b�꠲:�2ev�~J�ԫ
H7�l	��o�����!��{�iݻ|��m�779���1q����i)	9q�[��6\��r���y��o����ƭ(�,)�I��c���t�����T�
�QLVvf(��N���g�VЩr@�퍡t���T��k{ ��:((&��!����{��q���I�nGY���^  ьش���Ӡ�Hm�]D��x�덇�G3�@�>��^��]��1��r�:�����1�z<.��';6�Q ���x���[P�����U�~����	���w�:mbT��۶��&ֿ��7�'/<�	�i������+EQ�D�նmg��p�DDLD�F)jw��PR�*�5U�D�T����q{O������>�}6\s��׃��1���I���p��{�Qĸ�r[?��U^s}��u�<�xE`7��i��0m��G]�dI]"ظM�
ꄷ/8�ov�7�h���r\���{��hu$�w����xª�ܼ$�ua�˿XI���+c���t�l��������s��3>�о'��i�R��d-+9��_s��[�hN��=
���_�k��K��\���
��@:w�.8~��+V�
7�e%_�l����NzT<'�_\����@(d�Hw$�����C�@#��D��.3�{���AH��Q��2c�3����SJ���,��-���;��:�D���T���<�x�)ee��D��gBiib$���[���s#�1�@�"#�����I�	`i�$U��1�S b!bM�όe����-�gd����zP�;���6����ܷ+��U�g�*,�e�����0���A��:�Lh��2�
�(����{L��[�&�t45y�v��TMؑ�6�?���A+>�'Ä���!u�Nsai��1×��I��1l�W�xt٣e�eF
)��ʂg�ъ
��5��V�l�lh��H�y'u��(����,��Z�he�C�T�&���E�Ą�s*E�R����=����ۛ�V�TP�˞ڞ~E�ʭ�?�z��N9ԴT�����]̛�E�yL8��sNVm��DQ�!}�]���[n�P:ƕ~x��A��)
]K�m_�E��*�st�~O4ݻ�)f��'�Y͆��:G�K m#�4}4h߆?�=�\ZҺ<m�=��#g��6}C��h(6	�1�X���z<�^D,˲$uDA�K�pT!�Cq�gaP�v���@�6���Q��x��遀Ԋ*�h+CdH���n�2gr3�AQ�%�,�ۤa�z�T�U{+t�ᨾ��̏�>�]���M"-c825ա*��i�K]�Q3�|���J�%Ю]�s��S����!P���`9;���6�{mZJ���/ȯ^��0�9�v�a˞y�6�w?�bQ��**��G�h�g��@�B�`oM�J89����ӑ�g9'B0�Ge���P�F�������IN� �0��v-���ks@T��WO?C��z҉��cY��s�}r~Zi��MFM�>���_{d�6�e��CY��w ��`���N�r@J�y:.�	$_ڶ<"��}{�-���*6�#�JB0��]���2�����1j�vf��Rb�[��c�ʠR;��������3��������H��T/���jFn��"�Z�z1@�nء/��+W��fZ�
	�Fdc��s�м�N�qjc���4w��֯g��r�
�
�=g&�݇Hyl��*���B㞛~�Sw��#��(�>ݷ�%7E���GVV�B ��6��٠X�~�
q$���/��}�\b���_�N��`=��Ar�������c��pz�r�!��(�J7%G��a�o1� p�fn����tryv��f�,0v���4�jQ"��ۯ���c�UǒE���Ƌa���
�(�-�(�8�Q���|�L���F8�K��&i=]���ic�q=��2��9)���\d!d�u!7-�ƨ�
":32�œ ��0$<op�x�^;��>�<(���7���6�I���p۱+�<𩰩p:��q�"�
�8����w�55C$�����V���6�w�L
�eJ5����i���7�SxL�?����oܷ1�bv��3t����h������R^�����v̂`�r�EvZ�IKm�=���`L7�Ě��w�Ɯ������.\]$BD�Qq�S�YEin�!r���dz,B�x��ύ�#e��$.�a���{e����|Hv���O/Ƥ�Û���������Y⿱��m��O*�
�|�s�'[�0�̜x�u��c����k��sr��AI�IK��?nYc���}�k7^k����@S��Dȵy&F�(R�:$�q���{nL�l�-UĭX���s��yOX�<�l�7 ~��D�O��f���~,���7&�L;��SLl�1�H�r�,��(xE�龏�U�x!dgCz�?4\�,� � ͓�`1gl��Վ�X8�Q���;�7+;3��2t F;%���5�4�+dm�8�ُ	G-�2�@4
;1��A�&�$]�S]�
:i�̄�d݉�iї��ʴ��v�+>�/�q��/Xr�P4��q�
��ӪU���y+z�
8���G+A�A��1�"��Q3:~^��]��0���U�cH�e*	��Ū,n��X�sl&�X�����)��#	+i�&�:1�W���|&t$���B�M9��1D���a"�9��,��t)"�I�Y�����c�E����-U��|>�+�ܧw���Y3���5�����P�o�W�g1��gD�&� 1�ǥfԆ*�
�~�\��?7\H�������
ζ%�D�!����C*@�
0�j81!di��������C��|� 	���S��M<�`�y@�?�$8�/!�jCM�_=o�;�Д��K9�-�2�4SGx��������"^ҭ�/�G_=3�HĄ"����,0�`$b��1�H��/O��Q�}Bx��z���b�@@�k���uu�D���}e�����ֲ����D5�,8���B��I�-�»��8yr���dn��)&����.v<yU�`�/�6|x,��Rm���2�vf����@a2�B�b�
ؾ�5�L6g|a0>���i@�q-�<u��[���0AĴ|@S�
�7%���<�/&r���O�����YvFa�)���|��GW��Q{�7|���H�P���zP�:p57��$y;�ښ��A㹚p��Ġ%�w�^��I�9��n�B�hUKßצH�T���_�����, �pәG^��r���]û
I���߳1%9%ݗ�z�
�=�MՆ�խV�5M������>PbG ��r�)(2~z�go�Sz>�tS�H^�,�	�	�{�G
[�)W<�ڛ�ɓ���g�Э#FLRe��<��}A���Z�P�ݕ���ws]�r����
cv����T���W�
Ϗ�ٍ6�Si��Or6�V�+�N��/��XP�g���/Y�<�̙#k�ڃIc#-Z�nR��|r�_>cƄ�w|ٻ��ӎ�|�#�(���g��/G~x�jfEf4.����W����TU�D,MM�ē@�
��	���%m����{=�$�:�K%E�TCG<%�x�� ���O���|R���U3X	�G�Nn+���G�t U �D<$6��É�Ͻh�5`�m��ݯ������7�S'v��{}��#K���~�uE��N��	�{��[D�
l:��D��tH��׿�:ǭ�"b�
��hȐ�y�H&l"
������첍�N8!�{**+M$"�q����;/�`�;���~�?7V^^�m:䐹���������cA��#o�5�c?zz���V7����+���-���Ϊ����M�OBMvý#�}^c��Kb���B�̡��iv�b�
�aA�<W��4.�Y��c�F�O�KK��b�mv���0�SRB�}}��UK��9Ix�
�E�W�)RD1HCiQj|,��ݕ�������~����AS@U�@�o��
{�B�e���kt*.��\�T��b��AU-he}��e�4�1aP�UQ�����B8��6R��^߉y�kG���O�@�҅׏8kI���|�hǪ?v�8���a�CaW�(Xu�3}i�c�x.}b�\\_dkׁe^P�(E�qD��>͑��;�
-=�o�=�=�����b��o�*oc���x�%+��%��O?��
��?�G��v*�O���a�JJ�X�苤�\�B[i���{˂��\w�9=�wN?��i�/yn-���A��U]Q������)�Qb�<�f�YO�Vr5��N��;��!'�sZ���Z�ن��6�(��~0{�u���+?��<q���N��´�,��;u�75�7��$�S�oxg�m�P�~����똩�1��Y�����=�3j�+{��^��{w�BL�;�A!��]�^{���/}㥝Nܰ9�~�N�}��|�=��A�N�C^���6����I�s<9����<�\?l"�N�/
�h���~�]��=��#�qCT`P�J�h���GJ�* CSTO魪��:�{TbH��%���D�8��a?����Öլo�D�
9�1Ҽ�l�.��)�h�R47)K�x
���|��
ʨ�%;�W۠Z�����q辌�M�d_JqvQ�'e{�(E�
u�Zx���;jT�5��_��o����>������O:p��Mt��Q����ѓO^	J*�/���jlVct�?�|���Y>
�76xX经)�I�|{��z���]����$c�"!Ǩ��gT�8������(����+�������a0e��G���^��VM��j%ukzv��
8w�w�(�I'�
?�77��%P,D���/��
�|�G�6��x�|�Q˿\��𲀉2Z`l�ܴ00\�]�:b+gy��?��+��=�
Ύ,��	j�X�0ftޘHD���2��K��{��75$� +���.~�ʟ�g��x��Ų�s"���xŹ��Y�ݵ�+k��|��ͫ�?���@�bh�K�ڎQ�q=M����@,V`V�0�HsS�[�Z����:s��Z�$f]��R�˄���jػ�M�'�P�P���	�v�|X�����w_�g}�6Tn�N�Z�{evJζ�ml���O���kg�.@�~Z��7M�)c]p�	��;~.�<�����P���n��c�*�~�p�ˬ��g���>�44U)�l*J]���W�~w��K:��e����,�H�������7�x���=��PVE�X�ΰ��
��xx�:��o
��%٩����S
��dxƽ����n�ژ��D��?��
;`��_bߎMY��8��敉T8�PRx���2j�QMd(�$`Erҧ�	TTX�՗���Ƕ���&Qe�н���L�����S���
>��rƖ-/��|Au��o��O��sw�.̴�?,pjK��(��g~,�f��3�K[)�!`g�&J���Z��*Z���v���K?:�I�A8������[P-��r��xA��T᳕�Xj��ac�Q���e�k�P������"�����l?���}z,��>=?��6��׵�<������R0�?�obR�O�>ZO;M�
k���8���
8�䱓J_��)���폙eX��9>_�Hp��'�k�g�s�/�J*�j@;@�O5*h	
Anc����O(�mN�|ؐ���S��q�N�֎�5*�4�R"4�h��e�s�5)2��9��3=�M�
�"�!�0 �a�)�bx�������b�+a�����#�� ��X�6��XQ���K'����,�p��l|���7-2�
sm�7��u�=1�S&��`ed'sHWsT���p��ܫ=�UUWTh}H�����t��R5�kc�q���b�ԏ�JQ�`�$t����o�7ͅ3��PfR&2^��uQ��8@���9��Z�^1�*�ᅕ�Mn�o�<��߀�~���u�O�"jf�w��r�v+�k�����<��Ӏ��}S�<��ȒTUm6|܃ˑd��a�^�sz�:0��'W�l�"�&�6�ѓ��vC��9`i%e�x<MMM�I��c܎�Fb��ħ��!_LB"Â�Ē�{u�\����ܭ����>�(3��L3���%n��1��<��y�Xb0����55U
��̏AQĸp�̜��vM��	߾�����7�;�Z�ι{�Rw��讁���q�'��P���2�[�E爊�t�?��2�X�j9+b
&���:^�1E>L������Ǥ�
M�\?U�;2Xa���hi���B��=r����5����a̸#���b�����Os��L��v�jHGוQ���( ԼN��I���/�����ѷ��</�?�6��]�s��>�����?{�^�
\a!�T����G��>F��c��)�kvJHyw��5�kVլZZ�tS����Bx P�u�o.��4�WV���6���5��?�{A�ێ(�;c�kG���f�� @J�U�5՜��ƘD
����w�ޫW��~7�8��
��9|�����$�r�]&C�\L�f�##!��~c
������{u��IP�	���?�GzP��*˷þ��v�5s��ۯ:ux}zC�ĵ�,H߾=���1�}���t(|�{��:��C�N�{���Ӈ�8:j��z�ܦ���c�DCU1)��:�1@����kՐ��=j�N�?A�?��kf�r�;Xk2����d؉d4��) ��<�ջ\����]I�nk1�����ĥ��ȍ{�#�+�>���͍/��#��䧹�b��K|�}�<T��w
k�gR`[�o[��ذqoho8&!.L/da��9O�|`l����n���%���Rb��ԙ?W|���ǫ�-��~�+N�����)����P&a{
Ǿ\C���4$(�`In��b���cQ�,)�W��"qd��)�(��qYD�&��2'3@�߆�[�/�H��]%Ԓ���!JA�/�P��?�KVv�'�ġf��i�ac-�8�|��V�[K3D����hk���"m�O$����J?���}u���U�L�FI�I��J��/y�c+-��*�ѿ���~xi��.@����iY�JU����j������e_��Ș�vo�����00�B@k�c�M;_;�5��
��z������G��Q���5�ZE?���\�A,��A��Y �҃0�_���¿���OB�m��(���U渁�F"e#���J|����I� b@l]�ۃ���m�(�H�][�W��
�5�����
2J��R�����>���`p̋����]�V���­\p�7�,i��ׯn?l�6���e�
�_'B�{��m�vſ�$\���P��~0�đ!�C�$b(�k���侏��4�iF���D��${øa��z�!�i[*��q�4�����q]��j"1b+U@dL��F���n�B�����q��������c��<V�տ���~ִ���$��+�淼_PG9�`���"���gܡ�IW�e_Aæ��� H9$8gm+�E4���/�����Ξ����� ��s8����O�˅�9�b7�B��.�|exvr�QA�MW�q	��:�O_IqΉc�n��q�bNg�z�K���ݶma�IIo�5c�8w�X̌YIQ`�x"���E�9v�pIQtchn>��(3���v�j��3��0��x�����m�LYD+�۔$ȯ
Jj����*�P,U��6<��4A'�����Χ�c��6���Z����׫�7�nƨ��q������f<� ��%
D*
����&�g�)Q���O�>5V��-y|�`H1o�����*��58�ߺ��7��S������[5��!�Qk�xmγ{a�g����B�B�O�+�N|��ިJ�?;�vCZRJ}��̉o,߱~]�f�y��񛉯�[j���ztQ���淎W��� QYo|gϝg23��b�kg�����
 ���s��e(���H�`t�9�O_���ᆴ�qR����2�y���:�H�Hsr�$��?��{^��*.X�TX�@P���S���_CYA��\���цF����l2?��&�-�m�� >�Y����8���}Q"5h��;�"�,i$��w*�����(�]]Yl	����~g������E�nNvr�v�
#F�;��޽�<5��˨�n���J>`������C�.jb����u�X�O���C��2�ң7���Ny����*
��7N���̒�$gP^�J���s���u��{�B��=Y]<������|��%}��]����W�"DS�_�
8��JK5;[Uu�<]�P���4öw��%�\8�GQě�������n��?5�V���u<���}(N	P�����󡧷{��1-L�����(�X4�oܧ?�f�+�_�j֔�|��S��/�Ѧ�����S',k߮]o
0��=ͻw+�Wqg�P@2��V`��5/=׸c��D1���Y0t���J�+l�f�vJ�ս��fCJJ�
���G����7lX���E���]T2���M*��8�-
�Mn��00qK�C��#ں>���V�����޽��`�E�LA
�ZF���j�в0��O�qõ��틲8V��|͎��9	E!��ܔ;n�.���$֧�z��>H�Í�<�'���0I{�@�jq���|�S[����IO�w�dK�?Xֻ٘x��W�r��\����7Q�<�Qk0n8�V# *>�6�
�}�l�+�>��_޻�m�N�%B��3B�K/��f}�UݲEKJ��ӵ�H����ۀ�+���[����������
���vRgL�����r�4�7I�EUp�,<�4�j�8�G3�,�,,̈́��'[�#$l	���25(I���j3u�J_�~�?���W��#�ޝrȰ��f����1����T����3�a�~���S����U5��oy���g�۩q� 3X�gtZ#�K?6��F͆-[�����i�_�K=�3����������w��oNRZ�|���e5�F|�䤮g��n�}�r���(9<pa���
�B5"����R(*��R?��� �1�H����¶m��
�7hC���wo1q��bC�]���~Y6���显�%Q�
��[�L�����=gg��JU�_�e�Y�w�O~�X8�“���>����{_6�,�0��YJ7����!=��p�aH��jРA�^z�)�7��7Q� �ed�#�5H8Ҍ�p4�Rb�y��]|/2�������m8D��u���6}�5]�P�?_W�J���9��Ty쀣�,;������
÷]K����L��jP���*�O>�O>E"s�i��t���<�¸�U(~�����jHpx80bPj[�V���s.}z�ƺ�ft?��}?,�:�\��)��d�M�k^J�|��y{~a��^��[?����`��ũ
`��-������3NW�>�$N�kʀ��ƍ�~ˌ{N�vX��@�}�#{q�TJ�E�`֦�iZ@&����9}o�!_��!�f�A�q�E�bD$ۡ$09
���+v��Ɖ^"�(�Z����#}�]p���
Ѵ�g��=�`�{�-�Q�
b�$�Y��N�O����fU���U|�V�]�}��}Z�!E�H�dDߵs����n~���2s��>�,0��w"���NJJN~�&M���[t��Q�H�#����K�0 �>���*�hm��޸�_מ�kwW7�9��Ŀ��Y�lщ��gt�R�8Q32Ӳ��b�̲����zqe��]a��m��B�A^_F����˕I�4�@7RE�6g��I~s�P�\x�����C�T��~�&<��GJi�G��g�l<�oʺ�H�m��n��7�H��n!�9���v�	�?�Ǹ�h�ٽ�p~qA��*C{/�{Q"���?"�O��f��}J̑H��N�vo����'M���KB}hx�>���'lXBYD�b6��%6l��66�s2r3��=*
"D�h� ����BX�H�0�,q��U��p���'8�`?񡇔\?~���B��OW��,��u �ϧ��j�S�X�qcȂ��8�3D��
J�:o�$���8�7H�H8��w=���*$�]V�)N�O0� %���c�W��,�䧣
BE?k��u.��Z�D����
;��;���gκ���]�oM���H�p��lO��FD��-ߵ�Aۑ!7��V
!����Wz�-���p����V
�k��)�\~����D�sh�Y���	�u���3�Cr��(�+O9#F!Ŝq!6D�록�`��@�Ҥ�q+�Y�神.�����jr��
��z�8�/T��^EO��7�η!�`��ȭ��@�Ö6BBZ�O}W��"�S�<�6����z��Lt,�/�4 �X�
�*�xd_yE��"�c9�T�$���\�4��B�Ң�o=�'��CO`��!bp9���TY��"Q�N�g�ì�QR,��b��e���+}�߉@d>Xݚ5�J�jUɼ�m�|BV�3/�ۻOnzF�:�9'�9���1KAAڒ%#�+笒��'��~��R��v[Ɂ}�7�|���5�����9�¾�N��?��;�Ug�d��?��Ch�-�6��5���~)$����d�ɩj�a�Y�H����^[QH��#t�,}�}��]�=W׬�I!b6Stgr~?��^�>����H�T�D��M�f�f>9��̧�rAc��½�x�S�6��DIY�����!��+����B���?�����!�d�8���~���P@VI>`��Q��˛0a���]V��I!��li.TF��#�/dFhzN�31M��2)�7�d��+���l\��j #�֚�k>:U�����
`�P“�8z;q�@LJ��2���e�K'1�L�P��]u�A��ռ���/O_���fc-t�BFAQ��Gب�:���~�W6������o��e�uG���Y�z;��2E�Uǐ+� ��]z�~x5�WN_Z��_q����ӆ���v��5�q��7g �ڟ�Br�6����⭧a�#���M	q�
�2|����A&��đ����wY�h��<��u��z�v��:k�Ξ�x/6�}XϘl2f64�
,�o�	jj�齓
�$�
�9
�("��p8BP�ɋ-�8w���v��N��\}Υӷ.�
�;[>���KÑP$7D@D���B���&3D|J�S�1(Uu��N��(G҂�Tw�t��h��]����b�N9~$�F��˳<Ib{PA,��:B�"霗�빔w�kP��q�'����K�/+�!s�B)@i1(q��ڪ�Yy��~0ɞ4	bkb@&+.�p�E\�¯�B	 SAV2�������KUp
M�����M��U�Gy���V�eԫ`UC�	սV���V���1�2�.�Rh?������(��y�fo��aoaAW��I�/�#�l+-y뭶�om�au?㊦�"Ӂ	�1aga���k�����
�����b>p�lj[l	�O����-��%9�3��O�*��uk^�W��&άm�8�ވ!cD�\���,�6A�^X�����i��	N�Bu(n��~v}a.��
�"׶<�
p4����'z�8��a��.��҉.�T���M� P ٮc����?of���dD�(l���J��R����u|	$3'g-�_���kj�8`�޽ХK��+`�$��]oG���h���zV��6a���EhW�y];��!�!�t��Op�qq1���jg`����Or�U�������K���`�7oV'՜�]���ˋ�&R]��tik�yu��yy�X]���_�m��&`?%=z<��w�������4s��
�{��?����BjV6���:'�@,b[�����ݞjѭ���o�O��8�:!���Z�7�?W�067&	���+��%X�)?�>�^hbʗ��fJ�ɗd�7��Y�P��/^��̄�[��O�쳡OU�o���4L�
�0�l~���[��ɖ-[D�ᄏ����3�w���7eau��B��0�)��o6wꭑ�>����ayI�cO��9{�-
vlH1��b��Ƃ��g>��^���uV��B`�	
���3�x-�=�_E� �xj8�4�M���7y�����=ki�qg��l��ò^Z����b��>��c��3�i�'7?u���T��46Z��L�y}���Λ�.�;^x�~b�aY�#+��%u�((0�2�X�G��1c�Ϝ���0��;/����0��_W�ꪫS�g̸�)�׳����2)���N�mv���4yr���"5�S���.%D�d+��ο$f��܌�?���Rn�/6d�9x��>�b'U,�q���9_O��8���jn:��8�Ә�V�u�uh\�"�̘�{د=���#�֛`Y�c�_��-K���`�	'����65u|��-��?�'��V�^�m۶���)7ݤ55��G�Y�Q��Բ��/z��QK ?(ǝ���v��W&ھS����x[QP�������ܸ�}���D<mlɨ7���e'��i�,"T���Q`VE�,�ኖU2�q��?����)H_έQ���T���s*Y$|���,���C��y��|������|����~�6늧_u�
���D8�I�RU�e��dۅ]p�mϰ�9#��3�st$!�mLɰc�]S:���1cz��7������Kٶm_�0���$�e2�*PVeph�V�ͤ�����9[,�Taaޭpk)�Ml6�d�`�x�\V~�9���T����)_g>��%ͷ���f��yYac���cTC���d�hqq�;�*L��<�7��6�h@c{&��"1B�W/}�15��~��o���k~���+W.[�l�O<8i�F��޻\�Z��U55�IYb���Ѱ|v�UU�t�
u`�4�ۆ��X>�Uh=N1`d��|sUw��^7��j�Q����q�9]����X���p��vo8��Ŀ�"dUAPv
#b�7�I%(��A@Ta�y_�^s�y_̭wD��s�D��<�Q�*�����]T��SOx��.�}���ο����e`"��˼�I#G@8�V�F
�#�۶3p���fn���¢$"�ɞ���~���A��+;1����i�!&�n��X�d�,,\5>Pni��xXv8L��
;v|5��}GgfƦ2`fUe���T/`S�d��j�31�5�����v��8Z�nQ���oi����@d�����QX��nC$5d��3�@4����%n<X�|�%k�
z=!t�j��F��'��t�@
���t�x�����4��x㴧�Z�t�%Kn���[�Q}�V׋XUww2eO�ݍ�,�@ј����Y��z�F3�L�3���ol'��ƨ������AD�!�Mg
��R�r7^;
kk�1fp?�fRjZQ�E5ï�z9�V�\��؟�ݟ�(
`�e���w~�u�]�������H��;�~�/�V��s�D��U�"բ����HD#�F�өS���.�N|��S^̣�O�{�k<ս���;�5����/$+l�(���^ϸ�٣B�k��~\���xq�8	�2�$ǿ���O5F32|��"�{ŝ"�A56����-����&�|ջ=�a����x�D�=�#�E��]8,}�Tf����K�)7`��{���ʢ����[o���ت��'o�g�u�4w����)��d���mq2Ӫ���V��)L�1��#��!��ozV�6Qw�l�H�Ǘ'���VǏf]�@�ѥK��O5;[?�\'N�_mu����s@�v�mw=���ŋ.\x㔩���F���k��_y�`�E�zhqf��k��l����Ȅ�w>���&޻��Y��H�0�q��Ds��ޔ�w�6���
��^�'^��Kn����_����p�)Q�DP�i@��|.N�C��N#nt��Ąg���7�v�mO>��{	�SYDw�&:����T�;"���{mN�G�M�����@��g����ȅG���;#cL��Φ���s�i~r�]��=C��mo�4�$-��eOUU���y��D'w�����}Ő#�j�E�@�T�em(��*���2
�_��m5{�N�f�חRS�ˑf8�h��}���\�p�S��#�\�ur�s-�k�o�]2kV��/� ʄ	y�~�c��-N 2K|�g��M���t�͂E�V���	�A��@�|Q$"�-��d���"�Dq�/�
#��A�d���k��z��:{v�ף��>c��[�M[�`���L��W}D�Q���s��~��,�J
�Y�<��y�T��8c�
��<&��~�Ks����s`��ȀùX��tR���K�ݏ�U��Yl�����?���G޷�cA�L#<�0(�Yu�?0\�wI�7 L;�BB��\|�Ň�ɜ�2��z"����K�D��U*�Ꜫ}*�|[lTs���:9}"�ڵ�?�_���9�P��v}(�э����;��9�K�U1�{
C�}Z~�1vc��$q���U������u�n�xu`��_P$�Sg�'w�����ʼ�)�I/&!�� t0��H�&��
�4�
T@QQEe#b[aUľ�)�
@B-$$$�2���g&	a@��]�绞?`&yr��ӟ�}��[*�T,Κ
���ۄޜ�����sd�Vf����2�$�F�oO^=@�$�:Ҷ����7�A������_F�$Ddd�z�|�7�;i����sj���X��pF����#��2���#_��5AJbP3��X4�_�Z���Y��a$8a�t8�UW,o��*�f���#���޽{���Sf=�ђ%�Tn��=[�VN�g�H�s��o�%�2�Ʃ��{6�����ǽ�@Xs�q�[*me&�Ǿ�H����wӡ��x��?O���zCWG�1!��k6\��]S��M�`B!�s��j��XI� F�A��}�&�Q;u
7�E�1ߋ�6ӿ*��vC��f���6q=夛�ˇ������ڕ5sf�ۭ�(e���
Zņ��"�=O��G��r�%�2)��]���wO}��B��2z?'�Qf�Μш6���P�	H.�0�f��.5�E'�P�{¢U��F/-)5TE��)I��M�=Kk}���^$��a^@��B*9�_�c��qj�RD���l*��h��Od'�8%�PN��3����ϔ�:����-�����
��xC�~�4��u��K�zy�}$��w_y偧�ޱs�m�&Θ�e���ZPZ�E|4�*��ᅝ�(J��X�zQ����m�E�WhY���F�'���v�[qxr��I�
)��f��.?x5�`5�Ƅ����[�A�s���G�����R��I�[����5�~˜�1ʹ�ssBB����n	���6YZ��8p8��H���{<IR�*/�z,kA����b�
��h�F:��RJ]W~�:t�/G
+>[u�g�Q]%�"J�!u�b��Ę�KA4-R�Ҟ�QQU׭���U31��|*#���_c��I������h�q'к�a�_ð��S��]�C�`�s�e��٪R6����JT��~GŠ��	����Ș��YYY��ų-ʘ?_̞=�byh΃~'
o�3�M�D����3��6)��?�9�����Ә�Oo���o7[y�GTv��dk�l�J Tɀx/�T����p*! ,P1�x��éb�q
��\�y��JKKSǍ���>�����0�ξ�z޸�I�=����m���1����b��O�p u��ftg�'j��$D�`B@�!6�����Y|��
��K~�t�x#C�1Hɠ�@2E2��Ū(*@Pd����u�2.�̘T�x �w��B2`��چq�����Ro3�/��\J}���F�$�*�s���q�`y�I��S����[�<:dH2�9�n����K�5�Ng�U|��/cĽX|_}�y%U皶��!��{-�@�e�7�y�U�B����\@5�j�:O��E(���:w6@2x�tJ������U��o;|�A��'n�L@Ƙ_��1��1�j��<��������#} ��n��K�3*J�b��V�9�P�h�O��4����Y����{��8j`*�U���֭�E�HO�gK�v�_Cyr�B����J�ϑ^Nu�|�SS����*����qc@���.}�z�Nj�˟G���q��0j������I�PU"��.���L��U=6�Ƈ3"�l1n���ɫ�ϠG�EʮQ�nv�
G�S�7NGe~@�E�I)=ֶ�=(xSz�e�:9�椎KŨ@:��7C���#_: ��f�r���$͕ރj蓤v%b
���Am��1�S��z���ܬ�#E8�w����cr��nנ+%��O�w��8]6�Ψ������ް���""���� �8��`޼[��]�9s��}��ڧH�H��/���0Ș�t�6�iiI?m��ի�o���q&4�s*�h)�a��a����5�%k6�di)���.��;%��55�i�Ԁ�o�$�w!؏��1��4o�Y��N�T?um����=(;	뢅u��8

�&�:4`��e~C
#�#|BX�����QC!��	K�X���2ه��F}$]�a��?ć�0&�̝��t@��8�߄��X�S�h�TӴ�BL��tR��xJ����q�UQ��0t�RP�?0u�YYY�����<)����
��t�&V^V��o!U.��BJyr�(Tz��FFI�;���Г�dm̘p0J���y���+|�bO�V��icI�Q�c!<<ܶg�3�R�ͽ����P~CA�d�g��mt")U��CJ��h,(��"���*���H�Y
aPz�@���^��8w�toɑ9�SR\}�>�6`��m**y;�����Y!�"hE
غ��g
C�2.}z��i�	zL��l����Yھ{u@�&����nyh��T�F=�+�����N��������jƂ[�!q�o�)�����Q���$&(�b{*:��Ӑuo�~B�0&C���
!��w�Bf�V2�ZJn��*T���cjס��[���oo��l;[�vmM���G�FLj��zp\C֐RA��f���N�<�Ν�>MP#�F���O��z��=g	�`��y��w9`#�̧ca�ҥ��K�KhP��#]~j���B���k���RSـ�I	Gxx���B�ۧ#��{a��Wrl�Ŭ��?�n��ȳ������A6��fϳ��vi�4!w�\<��Jc���"l�!�F72��
j"�r�X|�,N�Hm�s}�q��7�V�Q����F%%�Q=�漍��>/�_��빢"c��sƢ^�*-/?�H�����r��E"�}���%&"��{��B*]Tv�RR���"�4�L��dž������<L�.c�p�8!�!+5�ӭ�@U5��Sy�P���*B'���h��
Kĭ7+�-�F�9�%&VTV��/�2Uפ���a����™ٳ��7Z>��K�,�Ղ��q��r�:UF��PF	H�p=��!����]�P�ټ���*�]���[Z�*���I�=u� �"8,�[��2���.��g����*�i���\ªY�`ԈqJ%k)b�=�^0�=�_�].� e"8��4�*_�H���8��[�m��[	��Ӈ:����eϩ��C�fy��-���Mq;��N�g�L	���k���@�κΗv��mW���{9����o�e6�2��_��80�Q��,�؀`>�k��>D���bS���F���2c��UƩ"�P�@����dӎ|�_�6^o�%�S�-+?�i3W�y�i��Tfp�y"�]���W#�����rh��q�_W�L�x�t�s:
���K�3f�Ξ��C��/Ybȗ��c�����.11#��ԉfR|�^�ә��b�Z<�s�}�`�߶!R;w�R9r�h�?.c���;˫�٣ܯ�Y˅��\uu%ğhJ��Y�%����X�������F�Y�aħ	/�-��ls{:�k��I�^>r$���L��Ji�`�	�����dkE��0I�Q�ߵ�v�%TpxS�ݩYl����ΘLF��)u���g�\D�$�%*P'
/��鬪�\ߙ��2�q!��Ʃ��Rں�cϯ
��d�se���z��8��	f:1ۘ^Y箋T:����M}B+��Gw<��׷~���.�����F>�
B<��.Y7}z�ʕ�=d�#�����k�N4VI��	�<c��c=z��T�Y��W%��k�&ӹ���K����s6�Vu��"ߜ�5y��Ia�G����~,����0
!|���A%��J��wJ�wH�\���G~~��wb<ܨUJ%����K��0~�uaaaF��Y��(c^[3�� {V���ZٽOR׶m�""��GXss�P�0�UT�#�˨��_h�Y�օ�&/sx�$��@��}��I�0�����q�=Doy��xP��ų�����Tב	��^�P�;�]k����e ~��'��S�&<�tĐ!�^�N<�9$$5�K�f<����`+�[I)����dddl޼YJ٥k���Qʘף��K�J"��CU�Kh��7׷��aJǮ���u:!�wn�oW��v��s����B����:�� ��ֵ�mW6�k�3�w�>��X�(� ����/
!d��UON�9t�HA�T�P�P�T�T����/�K<S��N	[US�Ė_��B*:o�z_r�
�{�m7ESj�N�H"��$D�D��JǥY�����;�I˜$�x����.
>�Q��N`x�|���Eʫ����f�����߰�)�==yǃ.��-�
G4q�'��?b���v�X@j�U���\YY���W�:��?J|�d�1֦M���,���i���:U�3ey'T�uh��l�X��R]�c���}�DzB+�&�T�[֙�������R�pU��šC��k�	�5��M
��l�v>>X��B��Q
�z3(����ޮ���1�*($W�k��P��
��ߔ:����[|�hd�V\U�(�V�
M��C�A�M�itj��I|f�+~l8�L)��L}�>�N�E���p΢lq�ߏ:�ʛ�^�:z���p�G�����.�d+$ ���/)�X�}��ҏ�$�s�h����8��e����-�B�=�R꺞�:���6<"�4t��4�����S;�->�;1���T톤�q-Fo�8h��=I� �K0��s�6���[�.0����E�����zb��m!y�/���Z�r��8+�{�ڼP#�/|YL�zL�Kɟ�r�{(.\h���oK�E��ћ{�n4������6JB'���sj�/U7 W���u�@���)�aZ+��J��ƫ���QM�#D�Y���u]�j��`���×�[��c�*��{k��:��a�M�}k7\R���Yd��H �
���sI-�p�e.���G��qP��6"�5�6�ja��/c{�x����)
&���҇>��pe���Z����eAE�5}��f���U>�u�T��i�8�`�@y�61��=]�	��B��#Z��ُ+�J�k��ww�ݖ��^���~ǿ��f�%w�v���	��߱c�5�<==}���o�t"č�����������J�+�|���X�3Ԧ[M>�q����v�����Z�yނ>z���/���6�Z�-p�6�Ik���3�㓐(���otw���6�`fd܆yH��/�y8�'��@�
�n�0������:��V�TUU0o
�\W����=ힰt����B�
�|eo��������j�I�p�[��N��i�]�W�_I��.T�i�ҷwrցh�4�u��t�]�Z�Mm��MALU��<��}��̜6�z�3�Bl0���G��ܥ���P���7�_tF�M�w�es�ν��PRR���K5v�f]�s3!eY-]�x���a�#�}�����K	�І%��fu�k/��NX���ꏼ�?Q��p:�F<D�/�^p�A�Jge˦�|;Z�;�q@qs��@R�ix��Y�%X��ο�e1�؋g{����*q���A��x&#B-=:F/)=1>dԠ�wMI�Y�Rz����!��r͢��q��y�'��g�����;�hW��jh�M�?���n}o
�RC#�#���]nZW㪩�@�Z�v�$��5�����ԭ{���_��5���?�"����<��������U�Í�ؼ�w�g�ŘwX���H}�ɯ���=.�s��
+���Cn����3]/����O���m��_V^G�^m�j���(VK�ީ[�8��Vf���~�g����e�-w:�|�覯/��-�����_�/i���"=„J���gS=�׍Dƪ�P�Qh$@�=K���@C���e
�T0�YW�}n�n�w��#������[�$��?19疈~>�f���ɯ����J,���'�Coʮq�ۢ?!�q�St~Ȕ��^u{�vYL�j�h�^H١S�����Wo.8M��VMJ�M��mn�E�rP$R|b‘[ܾ�#���/�����Uu�pz0e��0{e�G�#B�����g@��Y���_7�X̚��ފVіs����tmR"*����z����C�|xzK~<�y0dH��M����]����غH�QQ�~���,>R��,y����~��h>$�{l*V��eگ�=����nLJǻ9�{��S��0no�ۓ	t���hb�T��ʽ�X�9(�J�^���}�1��l
�{���ʭ]������<�p��ڰ�~��;���B~�`A��!s����??{17�)'	t�2A3�����8�&(&(��=�q�)�<3.ga����t�i�.d��YU�^�,X�~��)�}�;����~�oȜ�d�\�n/����uM+��(a6��
�k�ty�� ���m^�� $H����	kE�=���~x�Ǡ-�k�ɉRPyO7�c���܃�3�;)
�
UW��c_��?v��Z�ݖ�NӴ$ϖ*Qp_[rδ�Dz|���X�
������=�G��eG�K����x�����۟���OWF~6���ƞ�
�2�&DRW�0�IߕS�zjoC?95�K�꼳�`p���hc�LS���Z��URB���T<�S�u��w�KnӼV�~A��z�91"��lZ�;�[������*Z��h{���6�c�9���ZŜi��":?!:���S��v���
���[�lɟ��'�m�R��Ps�-4�-�_�5�<NOYy��v�=l�MuUZT���_��o������SZ�؉����3˲Oٟ�����^Gm[+uW,��X��	�@����lT��E��jS��@BQ�6����2��{���T�5�>�Z>+�t�gv�R�p.�E�P���)�q�f���0�6��u�4��n�؋�ɍ���-��0�s�l)Ƀ$I�>2H{sg��QS���m��k��SS��:�C1/s��gX��֢������p����@�@Ѷ�Ϯ9�g�o���������]^h��2k�F0�=M.��D-=��$���,̶�b[�u�p��b6A�yq#��-��w��������
"����Cf�D�]��Xu����ӿo�e�+�z���rVS���g7
�vY�-��c�8"G��uų����t+�)�z���p�"�]�[����3�X��w�`�q�}�
{!qQs܊"ߠ�GckR�o�%��$��ґ!�@������,4~��s2FL*p�J�y�c=�3������*.�|ǒ�ol(x�ۂU�J
*|1��r�c5f]��;�5y���{�^y����|B��@xA�÷m�{7�m�nw*�kp1�|�\��Z���
`F��zB0B.���]lf���aU���k�ݹ�o�u���h��ǜ��SbKk�y%U{g��1�lۑ�@���T1��c�w'�w'�x��M����'��T�C�^=1��蔔�41�����?��r����v7��˕�GW��_���Κ54�Ͼ�x0��v��.�L�陷�?���������Ф�6|����+��'���-(3(�u�p]^Q��
��A�;�7�v�7�
�Xb�����
'<UAl�s�.�ub!W�f�U޽5��~��Vs���������]�0<�T�Y3䧪�8@���u�p�*n��[
K�5�:���+{v���f���&y��$''X2��^���*�MQ�)�_��"���y`j�\#{���/��d��f�ﲹPȫ�	t]Q*-|����'i��ƛ����5"�����yyy�U����#�"�IEND�B`�templates/newsletter-6/newsletter-6.png000060400000007667152455614210014167 0ustar00�PNG


IHDR�����gAMA���asRGB����PLTE����������NPU����������fim������������������������Ÿ������������B��������ֵ�������������xz~����^�����p��4���������������٪���.15��2�̐������
tRNS��������'��IDATx��\	{�&�֜�0�$߱�����\gd;W��~���{Z�	!$F���tsko�$1��ըT˛�q9�nn>U���p5*}�Ѭ�>�:.�,ǥ|�����¨�`�����
�3ǻ���w���wc�p�`��O&�p�@�Wۻ��~=˻p0�[�:�k4L��,9�|c�Su3��*Y�I�����`vw�4f!H�c�iCS���јh>���fv�@��ȥ�-3���S��#�bp���ONX�� �J�KɊ��O��߽jşi�d�DE�FTCH�(��� }jM�|x�h�8��w���B��z�H�Q�����(wj����jy���B�Ц'��n���Yog+UW�u���u}׭�g��m�b��1���eA��caӆ���+�=k��i:�j���*}�d�M;��٦�֫�P`�
�l$�}tZ*��Ҟe[�N����e��P-���W*��
u�}��`{�Y�Ł�*K�g�)�Kv��`1P�/<J]�I�[�^pP��v�T���_�*���f+^�7�M!�T\ۊ[Cۦ�k�䂣UkO�0�Lo+�CF_rPU��o1�}ߕ��E��q5[-�փ~2Ͷ��ɶP.�M���il,
i��	���,��k@T�j�r�hSQQ�, �Z/�4�]�W:�/N���I�N)��R��4�tYHI�78�=�N�y˫���7��#n���t���y39�aH�}�;슜h(v�t��t�?n6��j3��V��~��oNG��|?��|>��0&��|��n��ʶ�=���l����3c�
�2*mF��\}b}m�\1��a�OWE+*G��nK��u�+m��fb)P��m�.�^�y=P0��Z񺮥����?�g�W�QY+uɬωӨ�)HCoը�)�S� ��N),��V�G�����b�	ea0�b.Yun�K�8k\L�qᝳ���sY$�"�vB�bk����v���d[�8Ȗl��%K$�5x3�p0x�6%�,�ij2K#\�A��C��9k)B��D�lm�9Go�����.�pY^Kie6"����Tc�栝���MJCI�\�1�,̪��2�e���/���MT)(����QY�:�cR�[B�HH�6Y_�3�y�B�� D�R7���7Z���D��87�En�����\1�bp���+W�O0X�0T��{U��`p��V���l�:���`v��f�x.���Z�j5�������8�J�?x��!M�ԡ!���ƴ�Nu�X�x���lHm�&P^Ũ��`���]�/R�m���l۷e���jq9�q����-������1�x^�9H#�q>{!L9x���A�u-9��{��ZkV|���!�Fx�3������-V�8g���˫~�����S5\Ej�1>���K��*����dE��j8k(�M�l�k����)L�K,p�K�\)���c	��֥bS,�Gk���Ř��	�Ţ����f�T����
���"9L�θ�	��JM��F�#d�Fi�1�a�4FkB���H�6P���l�4$�e��%%C��
�j��A��TH�A��n�~��K\��3�����$W�[�Wͪz�[�M���$�0F�YۘrF2c�Q��2"���X��__���C�=��O6@���᷋-��� 5�>�eR�!���3#n�[Q�I����"g��A�C9���- �E�ь������@�T~��a�rU�Kx����?��ϭ��W��9"}�֪z�%�s�g�	��&Y�]2�v`k�Sp�4�9S��V��uw��S�)�v������?���5l�|�.�|���_ZL�q�p�%mS
�6���7��16o�|��S���
�
ʹ
���xd�O�� �T�s�?�j��n
��v��Z���I� 2���Y�$��]Ml����w������C�'B�g)���<%��>�l1�z��;NH֏-�E�=0�ml��I���D����� �ӫ?����J�4�����
\�����&��f2l7���`�����~���v=��6#��\1�bp��o�A�l���c0����r�^�g������c�T�!��p���l��j�Z�n�]m��Fm�7�����������`�Ƈ\W�����}}�`��Ӷ������?�?���Ǖ�>�|"o�F��Q�(�D�N7�yA(}��)O��YZS3�ݥQ
U��0<\��9��1��u#\�m��PB��L���E�!�o��}��s�k���*bn�v�[��?��R/�
>�~:�p0��64�֞�B&dmt0�c�]/r :Ka1,O$��3�'ð��g1���h�M���bZ
<d�'��i���.���ax�d�~�հj���|ǹ���Qu�Pd E�ȩ&�GR�0z�ž��~z��E�E_d�C�4�c��TU Ub!!v��mLp6�ے�XW4q�e�m[�����{�A�h�mi��m�W��v]�]�Zik�hu�1`�\JC
�p!�7�aG�є�!wa8��9FՅQJSII%�ԔQAMf�ׁO�|+%]t��[�Կ�����?���2�%�3��-{���{‫�&@�令��b1�z;]t_o�BN���m��BI�v��cM �4''WI��\c��Ʌ��;�1��+�Jr	��.J��3)�*��̘е��@}����i���|�����ދJX�XQ�4�XC%1��>�
r�G��:[\x�'�!?�@qR�㍷��
z�s_,:G~4�QW�_�)��jޤ�B�hi��מ=���;��� �gW舳 Φ`K�v��$b��.pFJ��m���hq5�����i�->�D����|4�K���V��5����V��a��T`QB��|����}���S�ۯH�pxxx8�?�6><��M- ưhp���S��j�i�[pHmw�F�@�W�9�]|�%WZ|��M�?N�>���Nl�c��_�6�
����pzPX0<�4���IJ�uNtJ	�_s��v[��kw�C�(��k�OC��\��T�a��&:8ǔ�%��Z9��uZ�7\'=��O�5
l`���+ء
��A��90_�o6�i���<�����W�H����<8�9H	b�|u6 �����]ܵ��F>�Y>(���+r����p�F�+qx�"��m�n�9<�Bq�<�0�-����q퐪k�:���M
4_�6N�_ŀ�8p/P��	}.-?����p~�LL�T�A��߅�h��Bu�ɦ��d&���j_�q�+Z�5�#̶�o�i�Q~�C�5{�������&l��ˣ�.�ш��b�N���ƹ��|>�L�j�����a?E(��랐�W�l���|{����&����)s���HD����+���c�yG[�`��O��k��+W�c�ɸ��&�q)�3.鑿�l�݌#j=�!��4|�v�����-�P3�L�r�m�Kс蘾o�����.�Rb�.����
��ŲF������o�g�kp�#�#��-��-���!$�:�z2|�Y�p�}i�Hø�eRmH0���!
e�5�pZ�=��>��C�!�NbkIEND�B`�templates/newsletter-6/index.html000060400000007233152455614210013104 0ustar00<div align="center" style="width:100%; background-color:#3c3c3c; padding-bottom:20px; color:#ffffff;">
<div class="acymailing_online acyeditor_delete acyeditor_text">{readonline}This e-mail contains graphics, if you don't see them <strong>» view it online.</strong>{/readonline}</div>

<table align="center" border="0" cellpadding="0" cellspacing="0" class="w600" style="margin:auto; background-color:#ffffff; color:#575757;" width="600">
	<tbody class="acyeditor_sortable">
		<tr class="acyeditor_delete">
			<td class="w600" colspan="3" style="line-height:0px; background-color:#eeeeee" valign="bottom" width="600"><img alt="mail" height="41" src="images/header.png" width="600" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" style="color:#ffffff;" width="30"></td>
			<td class="acyeditor_picture w540" style="line-height:0px; background-color:#ffffff; text-align:center" width="540"><img alt="" src="images/banner.png" style="width: 540px; height: 122px;" /></td>
			<td class="w30" height="122" style="background-color:#ffffff" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" style="background-color:#b9cf00; color:#ffffff;" width="30"></td>
			<td class="acyeditor_text w540" height="25" style="text-align:right; background-color:#b9cf00; color:#ffffff;" width="540"><span class="hide">Newsletter</span> {date:3}</td>
			<td class="w30" style="background-color:#b9cf00; color:#ffffff;" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w600" colspan="3" height="25" style="background-color:#ffffff" width="600"></td>
		</tr>
		<tr>
			<td class="w30" style="background-color:#ffffff" width="30"></td>
			<td class="acyeditor_text w540" style="text-align:justify; color:#575757; background-color:#ffffff" width="540"><span class="intro">Hello {subtag:name},</span><br />
			<br />
			Your introduction text here
			<br />
			<h2>Your title</h2>
			<strong>Your catchphrase</strong><br />
			Your content here <a href="#">with some link</a><br />
			<br />
			More content<br />
			<br />
			<span class="acymailing_readmore">Read More</span>

			<h2>Another title</h2>
			<img alt="picture" height="160" src="images/picture.png" style="float:left;" width="193" /> <strong>Another catchphrase</strong> Some content and <a href="#">another link</a><br />
			<br />
			More content<br />
			<br />
			<span class="acymailing_readmore">Read More</span></td>
			<td class="w30" style="background-color:#ffffff" width="30"></td>
		</tr>
		<tr style="line-height: 0px;" class="acyeditor_delete">
			<td class="w600" colspan="3" style="line-height:0px; background-color:#efefef;" valign="top" width="600"><img alt="--" height="18" src="images/footer1.png" width="600" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" height="20" style="line-height:0px; background-color:#efefef;" width="30"></td>
			<td class="acyfooter acyeditor_text w540" style="text-align:right; background-color:#efefef; color:#575757;" width="540"><a href="#">www.mywebsite.com</a> | <a href="#">Contact</a><a href="#"><img alt="message" class="hide" src="images/mail.png" style="border: medium none; width: 35px; height: 20px;" /></a></td>
			<td class="w30" height="20" style="line-height:0px; background-color:#efefef;" width="30"></td>
		</tr>
		<tr style="line-height: 0px;" class="acyeditor_delete">
			<td class="w600" colspan="3" style="background-color:#efefef; line-height:0px;" valign="top" width="600"><img alt="--" height="24" src="images/footer2.png" width="600" /></td>
		</tr>
	</tbody>
</table>

<div class="acymailing_unsub acyeditor_delete acyeditor_text" >{unsubscribe}If you're not interested any more <strong>» unsubscribe</strong>{/unsubscribe}</div>
</div>templates/newsletter-6/images/banner.png000060400000026441152455614210014331 0ustar00�PNG


IHDRz{�EtEXtSoftwareAdobe ImageReadyq�e<,�IDATx��	\U���]A�D%s7ʵr{��-�͒4��Ҵm1�\�%�m��WA3�-�\rGPdd�����{�8�e������̝s�<gկ���#� ]�O�BA��A$*A�
AA��A$*A�
AA�BA$*A�
AQ/1�~jz�~*/� B�RZ�u-~ԃ�=TdADuE�n�W�r�̈́	ť�TjA�Z$��@HN�j)�b�ʬ]g�3�VTvADU"��ԅLQ����C�G� ��"R)(�9����D���f�O���&T�A���ݴ��EO��J�+A�6�ʣ֔����p��|�ps*G� ��H�^�JM��dG/�+�˨	� �J"����7�T�v�]�o񻑡-�&AE*I�X��(Ɔ���䟽ۻ�<�J� �"������dd���T���̻�$NS㼵����!#G*S� �T�I��%T`n�)���aᕋ1�K�ҩL	� HT�I�\��GmݗY�u�� e򋣳e'�{l-:���Vz9�� �0%C9Lq�}�a�)W$]!� Qy����~�OJ;X�-*M�xQ�+R"� ���Jz�>�8�����Ъ��\�u�+W↊�$� �	QI�٥&L)I��Y�����J�� �z%*ryჼ}J;���F}�J�B�L�Jz�~�(v�]K��𞘱6��R*h� �gQTTW�72��4��No�;�?�|x�ʚ ���Gu_��u_����zUo��(�~o,-nO�l�J�����f��3W':W�Sg0� �gHTr�O��ae�N')�䟽��	�8Aij"*�Uϰ4m����WR�
A�3!*��Y�ő�g��4�az7'�J�A�_Trd�T*�����0��������	� 깨�^R=lb�]ѓ0�t3V�P�A�kQ)P+*����%��%��A�H�J툊ޣ��녅�T�A�STJ���N�Z����K�ʓ�i,$AD=Y�u���M؆n���r㨨���<�A�	#�_aq��ì����9�0�
�ajjjRR�����֭[�}�vl���K��W�s���`���+$$'N�}�6��+h�֘1c�߿���z��Ç����޷o�����|��,����R��̄��]�t	9����:A��"M�:�"��(X��d�X���q�bO���=�2��`�!9jE[ ��o��V)'�?z��Er€(B�p�PQ$^���A�4RѰ�!�����(R'�J��(�C�BĤ�z���N�3�b�+�	��peڶm�;����Etl4n�i�����K
{�/"'~H�1-a"7p�@���+��K��A�>R�2����g-g��ߟ[ �d��
S����e�i�_vT�k�m:��&A���;���a�a�a�Y�a`` �'����L������*e���AԐ���=\Z�ŷu8	�D\\\���3�Pe`I
�t�iV*
S�Α(*HA6�W��4���,;�βe��YSW8�+��CW�AԈ��+ԏ�xoe֮����'N�
��J޽x����U)ك$���+��UyAAA,üՄ	;Ti�T�ȱc�x#P5S'��)Q)��ႏ6��JU./�x&L?�),/��R����x�
VT��^H�����
0�&K�g��D)i�T?u� ���-�E��KSos��ZQQ*�dV���e��
�8���J���0֙�q5�4c��`ّ���od�+��Zq'��NQS��:?�㐢�+���6澵�E8�Z�a�{\E&���a
��!ETX���Fh�qqu����*�)�O� �E�rTE8���e���"� k�W���Y?Z�+�`E�5���e�K1��]ĩ���*u� ���8CsM��CT�,��m{��zK�$X9�@���CJ���"��8�z�Ji��!J���K����%⩍T4��(���Ϊ�HLSs�V��KX�)�/�`���RXYY���Co%�Օi�D�&`q����@�qQP��	� j0R11r,�0�^(*ƆVf���$��A���E�M�Yv��n�:��'�:��K���[0,��l0
�}����c#\�رc"W`���NQS���$�y����
m^�����Gx�
ku��p{��,��>�R �Bat���@J�;�KA�S'��)Q1�,*e�‰�m�U^a
�yV�Z�N7�Y�t>rΆ
���O`?
�*mx�����:I� ��D�ܤ��I�����EW�W���*,,��+Rz�Vk0�"C�.0s/2
�E�U[)��Nv�ȰD��G�且V?u� ��O������I�y�~ȶ��
ڼr?{[��U��N\�`a�a�a���k��j�ش��4�̮�z�9s&��QZ�M�ń
�U'�f�A�+qQ�--������:=E#(����g̘
�>f�գ|
HXvl c��Bme��(�
���-��*������A�'�_"�ZryaF�A���u_]�ע-�CpM�}1��o۶M�9f�*5���cǎUz~�RC.����"?���ATʎ;`��W����
�u9nHz��usۏi����Z��ԜU�Yia���A����:u��D�����bŊ�K�nݺ�gϞb���b�������3�8�MEL����w��� 8r䈦Ӟ������\�
������3�2Aij�…w�ڵy�悂�����%%%����Y;3w��&e>d��o�l7�
� ����'�8p`�Ν^^^����T\\\bbb*�d���u�dG�3�6x�ʚ �SVV6mڴ���}���j�*))I&�����h�"::�rQil/|TT�'��D6�V�T�A���s�"4ٲe���Syy�͛7�ajj*�2ӿD�֢��B��Y[J˳�G��P�A�K:�{��~�����x񢅅�lc#;;�rQM�-x^.�%f��پA�A���k�N�<�	�����w��E__e2���MVVV�����^��x�b}}C��ӷA���ׯ���w�޽s�N�^�LL��UTTT\\�h�"�9s�ܺu���L��X�;��Dqi�=A�J���+T�A��������k׮u��
����aÆ�>}���_III�~���̸��^��q����HJ���#G�FQ��ڵ�޽{<x������Ħ_���{��quu�FӦM�͛w����oܸQ��:4w�-�%.�����:Yc� ��9ƌZ^^�f����G�������gcc���`bb�z����¾�d�/!ryᩨ֚~�E�&�Zߴ0�do$������V:�W܃�wR4
[K�o�톛���I���O݈��_~�ڶm���Eg�����U�9/���j��X���8���%wSsB�Fd>��Ƿ��谔�x�>}zqqqPP�L&KLL�u�V�F��ʎ޾}���?oР��3<==5F*����u�,����$:y:�ؼ���V`mOFz��փ{v��%([DK�/BN�Ə@9�4�`+�K�}�
.ѻA����+V�����{~����c�B66m�ԫW�>}�lܸ��ťcǎ�Z[�n�0aB�޽;t�j�*�(z|=U�z�5�@؁X���mc�ҴUc�7S����7k4�%-��g���,+�F����!(a�$#,,�i	[�q���q-~Di��~�Hxw�P.$�����(��N���!�Fll,��!C�Pi�K~��GHŞ={֮]���7k�,GG�{��-_�ʁ�-[ccc�޽���~���t)#�d�\�d�,,��tBdҤֽX�/�y������+Y��fE&Nd�9��>
����s~~~š�ѣG󺲇bC�⌐U��ؤ��(a5Jz���s`豷[�<D�O��g�ݸqcʔ)999eee�ƍ0`�L�\�|f�ܹs���p�۵kWQQW2--�U�V���spp���������իWCT`�~��[�n��ߟ5���gdd������*R��9�h�B�K�N(.M�Nd��ܤ9�[Bƪ�.XO?��'#=
K��c�Èj�
_��
�'Շ����
���ŀՂ(�+
¸��v���8�����,j����?Ul۶
��|`gg�t��…���=���Ç/**j�`�С0�t7��ִ4��;w���q� �r�<%%eڴi��~�a���#F���w���
6Dt�����\g�Gc�---5MH���V�-/����^�ͮ�1+��'SQ��a���YMR��p!a��k:*T����2���g)I.Фg�e�v�Zbb�V_�z�jBBB�+ʚ5k`��&�@?%��'tc�ñc�
O���6lXhhhXX؜9sd2٤I�����:�6,5n:waa��P�0ʈ�(z�&N�055Eanܸ�e``ФI��ӧ��Uq�ƌ3cƌ�+W�	d;�}���˗oٲ%==��CC-�̍*=R�_)ҹ�F�;�Z�45v65vm�h���Bq����Ҳ'�
��Upp�Ң�X�3g��cǎ��U)jW���#�є�8VVV�Q����������B��p��,���2����z/*p��,X���ۛ퉎����_O�:���������שQ�F��BȿdɒZ�v7n���׸gϞqqqmڴ��oGǎMLL


������ĵn�
�
�����������ܹ��ɓ��0�
4�ҥt�E���x��8
O�w�/��w���~?~<sg;w�|��e.....���իW�ر��{��W���ӧ{��U�r������$![vB����	o�y�vS��Y�3���!��Ⱦ6�L��eˎ?�z�)�RS��+��"��N
͝fIQ�+�n!�b��4i�~���
`"���e��������666e�L�0aРAgΜٵk�.����띉�e˖�:%��\k��-\��LNN633���kbdT����M�6�ʕ+o����ٳ������_��f����E�^�j�$<x�t�R�����8q"
j;�&Ԃ��!�h~����⹐����?�K}%�BuV���I�&>�B��U2�������uEMJZN(7�
�j���FJ�(n�W���(S�	��4�����J�G��3��?�7���޸q�m�m��^�ŋϛ7�;<GĦS�N���3غu+L�������f�?W�u�=����?~��ѓ'O�ԩŃ[+Y����������c�SSS�;#�ZoS;�6Z�n��������'l���5��֭[�;v֬Y��GW�\Y���ڵk�m|���Ŕ)S����5k֣G�M�6!�؏�@<�ڇ���z�*TV__��Ԥ(�?GX#��HEO1KG�#�b���_��NʧV���}m4�s?{[M����5(k�2����\N�ue0�M:����y�?Z���g�}x�t�-&'Y�WT`��l���J�n�|}}���8���W^Q�X����Ν�`�	�s��i����M�^{�����������\gee!�#G������5o޼��̢����Ҝ�A��l�8t�޽{x�qCKLLL���`�k!�l�\����=jԨ_|1!!�9��`(���_x���ӧ7n�xĈ�V�(�,�=���{����!C>��CV-����'��B��lذO���_V�R@��@?33sܸqRz3i����w�<~)���(R�������Z�12��rY� w_�\�9tE�o���Z�j���*�t�xyy��|�@�!�-a�#"*U����S]��R��#�Q�������0.x��B*`V`��Nj�n#L<���B� 0M�4��L�ٳ�4�h��,����T��nEE������3ێ����Q�T-)**z����QAWj'��9�
��(J&���ݻQ�F���Sd����+Z�Ν[�j���t�ҥv��G.k�c��,$%%���:t�k׮xb/_���Զ�\[��Z�j�����P Z}�)Z�dIϞ=q�+�NԮ���Y�+�^Q=
����6�[;-�0�ε� ����'T�W^A��W�
�XK�#w�JzPk�[�4S��Y:�ᥥ���2��/�O���_��0���ږ��~����0F�	��xxΝ;����aљ�Yk�/_�*��:99922�	����ʇW��Z��ٳgq��9�;�k�.��������o�^I'M��y�7���D�,uT�	�ѽ{�B���Eh����ի��666Ǐ��ٔ�5�((DE|ĂF��A<�P8C�6mj׮��D�z0�#W�gɎ�M��;�V����^�� �q(�s�%v��&l	SD�ĝ���Pj�G��[h`�RRR�t?32��#D��|��5777�D�Xz��M��' P@���� J`�����r�\z��DV�\	Qٲe0$
Qa��|}}������ʊ��L��7n� >����С�0555&&�i������6��Ht�ĉ�������믻w��T
�ySRDe�oi�'�	`����W��g�SH36"�؝;w�1Bӯ�2��>>>�-�s�W
3k�:�<�Pg��0�~��S�K�s�/�6o���v+����fq�Q�4+-'�j�V����ޱ5�|�/�����$���{��ʈz�z���)���LU'���h�pN�z��ӧO���A`n�pf�P���Μ9S5򈏏��TTT�J���޿�{���0c�W�ްa���A�#Kp���a�k�i���BSE�J�^��-��>"|���&&�



�.���.��Z��?�?��놃ϻ@i��J�ם;w
:$!!����w���Tп�	&�t^044|^���#hF�sQ�۷/���͛QJpb�E5m�T�+���	�7�c��g�j���7l���f5W�L�����f�L�4���l'���v����bR�>��ŋ���Eر]��\\Qy�	�оO]�6~��ٳgϙ3���k��<�
ܱc���0�=z���<xРA���p��%�޽{�.]����ÿ�;�dH�%/��j�����i6�34(��7��A��0b,���j!�?���|�����ҊJD0ߪπ����jÛ����KNN��E�1_|��;�s���k�P�pPn�㯾�
���Q��2����}��-����W�#�<OZ�*7��+J��
)*I�n"�8qut�N��J���B�%�R�ƣ"%x-_j�F��N_�y2|[[[KKK�5�E�M�]������?��s�fpk��SPTT�LW�Jnn.�
:��W�A<�=ڦM��[YY���^�Eŏ���mO��m��m4}1"�6�A��)))���:e^CyCt��7���ۿ��v���Q\�o�8�-�F�L��w��y� �{��SݡC�P����
�*@TW��s��ǫ�x��h��y�����rS�J�K����*���7��]tx,*�9��&��6���.~~~�dMIpEp�����g�x�YQ/d�̙0�pT�����裏��k�)�1���T�ZJ�@XXX����܎����p��ݻw�M�6�F��e�ܹU�TLL�Ł���0��Ś���\P/�����F����U-!�S�n%�B�E�j����YM��b@O�ƍ�+P�aÆ	�lݺ�)=]����

�+x�kfe!�ɓ'O�4	�(b,l��U-%���+U���b�V�߾�y���_�!eE���lh�J
�7�:V��eM��U���@[|n.oP�j��J��@�O�R,��{ܻW����pvv޵k��~��qlddQ.U��	;�Gd���]�f~,1H�w��{<jׇ�6�ф'����0��}���ߢ�U���U|��!�q'0(j�=~��7�׮j\<w~����y��Mm��
qrr�O�.*0+����4����y��Y<c������x6ª<(��۵��Q.����rPZ�����?�ߩS����Uǹ1�իko�߽�M��V�܂��x�,Q�"�>�-�܈��K~H+���C�Ļ�@ux�Wp�J+Ӆ�3KVJZN(�W0~�:��]�~>����W�X1k֬޽{3!���GV�@8�Hrܽ�܇�ٹ�{+���݁��O��
��^xA��=뜜�!C���c'{�a1��,M�0a͚5 ������� ??����vv;�m[��������L�]ߥ�Jp���={���
�Xzzzvnna~>
V^V������REٹs'�A�*(�({{�_O�
31����O>���eݚ6���2.��?��s��|��7nܐ؃��ԧt˖-'N��t>\�\_z&򙝖~0�@VFF�:�(�������jv1��9�p�ףu��퓟���pTҔ��7��OKR�:^�6x��}�)b'���$��n�:M�4�5Q�hIO���͝f��+�UUD���c��.�effk����;zBEp����
`�y�}����o۶�^��[�~�_�G�3\\���_*M��m1�y���;cbb.\��O?����?�[�np`!H���n������Ƹ1c,�̚��oٰ��_�PP�2P�?Dm��դ�?wwwd��ۻ�K�~�z�deyyz�?sf�"��`k׮����6m�'�Ç�d��ԀtϜ9-��7U�{w�z6k�[���Ҍ�Sm��ll�|�Mz�XE*��|���B5!��-��Q�|||�nj����xM'�v{z6����Q�^^Q���M��9r����~83w����I���e�����ж����*�S޳�76����0�AAA����:.���nm'�=z4���-B<�b�_�`��3O����5��o��p�D
��GSo.�oJ�9���3Hdd$�s�6m`4��˝���s�+5�(}lڪe��(H�	ܺ���3�������[i�͚5�v�D�+W��T�c
�5�  @����?#�5LMMմ���>n�86��5g�')����O��B��{�������zK�F���G��%|adSSR]�v��_���Y�5��?�~�����Gcg�v� �p.\����9J---Y��C


���ĭ���իW;::޹s�s�Ϊy2r����666&&F^���7����\E~k�AV��S ���f��:t�>�ĉ�?��������7�݆v�Qr=��o���8b����VǢ°�����H��Dl�BHKb�����[�k��X:lQ�8ϝ7��N����;v,[(EO1ɊpL"N�vI.�hy(<&|�2��^_��l�p
}�䒚*��<��3F���@	����Qv�^��2�1
��$��AW4��d�
�j�������ϒ�u��c�ҥR�ۻwo��Ph�:��k�:��˗��w�`� {�B�V/^�~�H�pf��]�BQ&M��Q�*C�W}��{|����Ǐ�t���>}��Y[�v�aK���m#����l\�6�ꫯN�:��_���2��b�7�WD���iii����XD���2�@��#L|�7�)Д7A�Ͱ������Q�x�С?��1�5k`�� �K�.�%�W�[8��C�9����
�RK�c��^<s�����]�ѫCE -��K_�`iS��.+ϕ~��(-�	�S�`c�՘C�<+�+z���gjgdQ;3Cd�/0�|)�'t���E�+�
�UD�pX�3�5[&���Y8���t���ᅲx2�kCBB�]�-�,S�����jC���M��C>Ϝ9�3t�P�y�0a�GUR ��+.*2}<��������}ܺu+,,����4���ƍ�sk�����k:�خ_�~��ӵP�v�!��ѣGo+HJJBi��oڴI�r<0_~�e������0e�X�۶m0`�6��W�cǎ>>>����?�<q�Ĝ9snܸ�N�EL� �gBJ?+FII����NQ��$jc�ks߶�?�r]���[À���z��F&y��=����-l��e˖��C�<cƌ���f��h��Ƣ�*�
W�/�;�
O�X��UA��ά_"@�a�`\233�у�Z�IWЦM$:o޼U�V�.=��-**ڱcLL``��t�?��#�իWk%*Z�f3;���Ԧ�'�dKK�)Z8�O��믿�p�5���FDQ��ٳYRdk������޽{��������z(9r$:�&'0�RL'>вR {�ѓ'O���'M���^pB
�۴i�lll<=����Bh+]Q���U$�z�ݻ��uT���c�ڡI���~�)��6�^���ds?���+���aG,�7�Q]����P�y�O�j70��:'�[պ8^"���MZ���+������I�gm<�8�@��X��<���76F�ѹs�w�}�G�l'�.DGG�E
`��80���Y��6�lZ�g�Qۑ��,OfcgSPT��?X�+l�v�ڵ�5�4�9����U�V/��b۶m6l��r����Ј������͛���O�:gj��:�Ս��
�
MT��j�!'�,X�v����Ba���Q�l<�رc�0KKK5gJ}�5�=�#�:��e����Ά�kҤ���nݺ	���#F�r���S�NUmu�z	
mϞ=���{TT"<sss�|vvv��w��b�ѣGWyh�Nذa���/�n���ŋ�/F����fs�����%K� ������~��(:d�w��G�=�F>��(H�H��D� j���+du/P�W^y�{����9���"�:s���R�ׯW��`�tRRJ	������۷WZ���@��h�"�M��D8���^�?>3ʈ�Ν;7|�pa���_�C��?����9�*� ]��x>��F�෼�曓&M�H� �:�Ȇ�DDD�۷�ʕ+YYY����ݽS�N�M����_������7s^^�F&�17��&>{�,��x��<��D� �����ٹs端�Z��u$*A�
AA�BA$*A�
AA�BA$*A�
AA�BA��A�
AA�BA��A�
AA�BA��A$*AA�BA�&�'��E����IEND�B`�templates/newsletter-6/images/footer2.png000060400000002522152455614210014436 0ustar00�PNG


IHDRX���tEXtSoftwareAdobe ImageReadyq�e<�IDATx�윽N�0��6��
!&׀��E��s'�	&&X�#B]�:t�	$�/�ˏs||��6�;@�8Ή����������IAAS�eggg㇇��t�� ������㏏���A4(����������lll�\ ����<a����b����������ҁ �VX��������������l6������D1AA����ﻻ���+�Optttd&Z[[;>>><<������A�AAˮ�b���v{{[�[a������W�eY�]$(����hCA���Zb(�H~���*��C<c����j���x<���N��|�h�m��~e�/�S�c��$e�5�kV��&�t�<�3Ѹ�!@7�
�}
���^/q�!;K����_�ۓ�d�'��m��CpN�3R���i���&��oe�-/�Q���_�3}[�ƀ�w��]M	�X$�3��/E��Fx�1Ng?ğU��(��0�V�/j�-���Li& �,f���vT��'>��}.-��t�h역Բ��^=Vu�,��'b�ՠ���r|��Y�����BS"J)%?>�یhS�Y륟S���V��a�N<�l�"B'�S����I���텦���'�|�����݄��"e��BAU�ɲ��{Aک����l[
w�R��S�ׇ�1�鵶 �4hJ�k�_'e���ʐQ;�@Xq���P��N'&91F�R�^0�IS��f�}���~�aDB�5y
²�\
�Z�6�"zG�C��gݤ�x���-Z�#����n�'�'�<��7���w̶3���QM��
��٩�3C����{��<�'���������JG`#cB
f|������0�6C�4Za��W0�l�?�t;�@���d%�I��T�g�)�,۴�
-&'���['x0����Œ�Q��"��9(���“��藦�d��]��؝0)h=+1�^�\V�x�97�6�R�pR�I|�phf�`7U�+X�$1U���n"��LX]Ԃ-��Kc��qk�I�eYqC�˪u���P�D��-*�Z����AS^W(���M>dXO6WMD�F��,�,+�6vƓp�W8Sz�@2_㤩�+�'f̲�'������w�P_��;j�{�������A�AS'�:���wΫ�9��

L��,+�:nE��04� 4UB)c�S��z&���fR�%��"������!�Tja U�F�8��O�����6IEND�B`�templates/newsletter-6/images/index.html000060400000000054152455614210014343 0ustar00<html><body bgcolor="#FFFFFF"></body></html>templates/newsletter-6/images/header.png000060400000001152152455614210014304 0ustar00�PNG


IHDRX)f��tEXtSoftwareAdobe ImageReadyq�e<IDATx���1Kja��<��rH<$5!n����kKR_4�4F��M-��bx�
].���﷝�,�s^�2w�S�כ������d///ooo����O���������nW����]�G{���OOOwww���!��eY���[��霝����������~������󓓓��[&-x�v���^�7����_����
N&����<�
�m�2W�e�ժT*�����F����T�t׌�n)v���t����E�v��-� qZ�—�"�u����Z�f.đ—�"��z�f�i"D��"��ei �R�"�y5@X)��)� � �4�N��:��,�{�Deݾ���&WA�o�B��@�j!1���ri� j��h�Ȼy4*��
����6!t^�h�,����+&@@6B�o���S���!B�P¢(���LJ�J�F�ro����`g��톉�rIEND�B`�templates/newsletter-6/images/picture.png000060400000026022152455614210014532 0ustar00�PNG


IHDR���4�QgAMA���asRGB����PLTE������ͻ�������������������knu������~��ehm������������qt{���VY^���^`e���wz������������������@BFOQU��䂇����z~����������HJN78</.1����ݹ���������������ز��$#&������������ˋ��	X�}� IDATx��}{���5( �\A�(`�!
j���o�F��餧{&�~s�g������u[U���q�����ϒ�e���E��Q���"��$E��I���ɐ^�ET��,Jh�E.4�K.�FDAa:�A�@RQ�ljʗ���'8�5QQ���_�F�`A�KS#��/�}�����I �oQ�ƿO~�G�xN:���x��'���
YE�+7�J�F� 	P�i�}�@�/.7��DND,^���bP
fA
�‡yq�K;(����\���A�A�%ؑ ��r��oWW��F��m�=��_nW8w�+�C�K�$�*?�fM״�y�F!��k�A���I
�pݞ�b����
�C��W$=Y+��mY��mw彙��kpM����MS�>�?$�+��645�r)Ɠ)CzϜ�-��s=0|��l��~dD3��p'K�6{	�K�S��P�8u3���EE@T[%��v}��?	�Nd���İ�2�#��(g3X��|q}15���,�c(�����IG?RCzM��5Q�W���ҵt��~ǠC~'�(p�[�fk�*�0-?���m!���\�IZ�d�PX�/æ��7e��Z/�fK
��L|^' hʴ��M.-'!:��$I�v���<���|?0��dx~���k�i���o�"1	�z���o�%K��7)��5^�+�)� g�Eh[Q¢�2/q|'�:�}9N`^s�%�6�Jk�̳y'�kE
�@�d�r�o��%�wa8����ˍ��[�ho�1#a�ʰs^�*/��\Dl@����K��?��c��2PUU�����H{ݲm�[¤��1
쬨�abnn�x+]�X��V[�ׂ��g>ݠ���@ ʕ�jd�!�������5�e��>n���DO�HM��r9���c$n3�F�#��Ii�M�,p��}�,O�6=�p��X��x���9�I<��������P�-#�0��
����:.n��}�V1�X��nr5��d����tm���v+2�M{٨��� ���h�Q'�\��E�Ɛ),�8�a'ʧܦS
�i!9�"�̈$��c����eW׌%M��N��˥��m\�n	C�8�Pi���D�΋����Z��Kᨙ!8�W7������z��O2�[
APS��\��H0Z^�ϵ@4���+h�B_̗@5�I`\C^���
����	��K�_v�L�
,?r���Վ5(j�Q�#��ۙ��Y���W��l�ji���<M��Y��ʜ�"�cQY-@�M��`)�IJ&��N�b^��mަ[��'�x"nE>'���Fj���ɵ�w�{|1a_>M�my�=X�ܽ�kz���(���r�^&7��l�������I�
ߡ���I����U��Z./٭��ۆ�� `1G�K�e���*myY�՘�+�%!�����0;;�p��R3�ˋ������X��T�WUw��`28��ޯ���o�.C윯�PC��p|��ᨍ�p��E��q�m�J���;~��:�Tg�L�Ҝ�'=ؔ���t��Ӯ5={��N0�JczTn3���m�7��/�2�Z��m��`���+�wEa�1�I��ݪ���XR�ς_e�����[r ��"��.>���%󚗎�Uri��5a�	H(e���͋\7��i�1�[�E}p���>�h���T!"�Z�S:�����"��(	
y��_�A�$�T@r��γc���`3�Z���lG�GIW;���F`z�E���a�#�F���*����2�pȋ��۰��.:�r�r��uE.�斝#1�N���!�K��������Ѐ��3��X�����mrym�n���T�#��o��庶�X)��"}Ax51�D�J�V6�E9�2kJ�L���8\,���u�b������t�'Jh�o��!����K�ҧԎ<�XwqALx��]�
�=7:^ʍLj�fn;	�m��z�_P���LGi �}V������_+H�Vq-�s�08�<��|%L�i\H�B����M��`�K,��wd��	( gU�������Yn�r!���t�b�#��T��
åFS��`��҉�)[�)Mi�׶Ey�2��ji��	���m���,���p��!O�e���'����a�q�ˢ��� �L��C;�Q`� ,�edy��c�,&���ZA��a^�'���M�㧞$����Sǟ�u�nn�9��O^mq����</�m�iaȂ���.,���$p�� ό[�V���~&�#��#�5�=�V���z�'��EK߲C/ŭ��+q���P辯gv�y�n�N�9���n��e_�z}���g���6TIH	yd��x1s�|Y��"��5���W�:�%;�I]9�۪�a�埮�����,d�bfw��K�(��o����������7n/P�{3�9�X�ך)ˤ
��H�E�9
��\(��`���Q���ށ�n-��l��u@"m�d}6��BԼ��L�ȿ\��Q�f�Q P¼�nنe[�o�ݮYӂ���Y^�,7�H�%уy~=���VY �+E�JŲ#k`t[�'}e�%l���,���<@�V�
�< �|u^�
�T��NH��7�"��h��6�0"�J��6?���ՕW;��VV�e�w��b^�b�G��z�NE�+�7�XEPV�A��!VH"��LA�;5�c���m8�]�
�w���|Nxס�ѽV{��Q&m5�ND�Zfb��UX2F����5�<��v�p�m�K�~�����a{<ӝ7QL�J�'T��Q���y�	���<�0�ik=쳞��X9X��w�ӎ�φ~jP@B!S��t�6�홉�L���~�(�!�J�g��$����@~��s+0m�B�k��q_�톲"���P��2�'�sļy�G����d!���7�Ɇ*#�����?��s#�`e���6�C�Bi6�4�
;�  �ӥ���|�]\����v\'�]knzf`��q���
w�}!R��:]�y�����R(*ץ��hSC��wt�b�t��s��]"R/�-��xH��d!���Ȼ#�ʞ��r���S���K��Q��2W�-��VP�‘�-{���f�]��v£iLU��DbHoQ�C�/
�qj��lϻ�_�P�������i��v��S(��T$�7;�d>����1�����Ն�ץ��Ӯ��q�H%�O�6���tg��f��M�ӎo4�&����V�5���Ԝ���iO��b˭�'�	@�tF֑�>���:x"����%�����,I[�$��Z�[w&���^�5f�wlؚt����L�M������]G�xܗY�X���ĭ�Wyx��ny�_o�@6�k��ry\ӣ1;�5�r:~'0�����"T��u��j�$0�����y�c+�����U�tU��l��Ű��V�CAQQ�N�?wd�™�ss�x�N�2��g
�Q�E+�Y9Ѻ3��!� �c�i�~oVӈ,)
����v�Y��.���|鬯�GGG���i�v��nM_Kn<쏱2�&S~�^amaIa��(�5i7���]�m?�e�̨���L`�z}2!e�������u5b�҈)�G��,�\A�t�k�l^_��׎g����v� ��j����Z�^]���~�vQ��Zuz=^㸸�k�tFu��݇�޵,˦`�K8�W/iZQ%��cU%K=�ߨ>�g��i�t�C0�5����{��| Џ@�:��ݜ[zm���ך���c�O���A4��d�r)�C8��c����s�mvQb��Z
�㍊!���/nZ��kz
��!�E����9������,i�&z�`�T}��u���NX ���N6�ϛ�n���rCf~鬔$�\gy ���h����ڗ+��z�t���ͩޛ�\؜��6�ҹ>�F���i�Ag�^C����_�~��Z��k@{� ����qe-;:�c��M'O��iCHr��k�UFnй�ʨ®�-���Q�V�ON�>s���T��ҏ@��|:�ہw�y���H
���k�I��8Hp�u�@]�WK�=L �s��u�K۵�X��aAc��@�&6@(��.7�2�+�vmH�,��4��o]��,-�p)_�eѭy�զ7� ��n�:��bP��~V?p&#�w[�J\#Z����gՉ�,�����ZԪ>Ë�H���Y���;�f����&���n��-��`��Zs�d��B�YO�R�b!�z���0����Ng�Zv�L��#,�8
"�6:MZP����`�yÌ至�Ƨ�L�l�.�ũ�׍A�ǵ}�����v���<���e�FM˴�.�*VG�:+�P�	F2O`Xp��B�`E� ��)p�"U�<Gzo�6�ׇm;�M}y�o|8�o�{��]���/NO��7����V�"B�bw�@`:#jɂ�Y��;�ݺ6�4���/���몪Y��v�-3�#��z�i��7�&�m� ��o�磾�rT胆�O�Bh+��[�Fa�?n�~CXu�
}�l��}�\��B$V���r4�z�z.j�9��Nb����K]H;
�^:i9py$�c�x1�{��t֤���+Y���D���o���J㞷�lj��`�w��ߏ�i\��M��m{�k�"��m�j�b��������6�d�eM��)�]�e^s�I=�cD��*�$V�j�/�\�
��?�g�xg�@��cn<�F���>�n�,���k��2t>��f�S�F66�&�~1��#�N��n8��N���Q��N�Z�m:�m�K��މ�j�-/����ƈ'����;�!�N�U�с�p��+�M�{f<ޝ���l�nF��N;�`������x�'០��|`i}2�����v{��ș�G6a꣢C��:�-7`��N�J'�^ߌ�v��3�1;�b-�JroEC���*���1T��w�����J�}>/&�^��龍R�=�'���?Z����� �T�5OL��﹁BS��S���P�ݦ��5[�*0C	�~n�;h��ZS��f��a��ܙSe'���p��M�}�lz�z��O�wH���5��X���s<صÈI��l�i�h��j�����q�j���6��h�����^ࡆ���x48�=�	�6�3pKN�QV�vVǎ�������1̋�BM��|zx)r�TQk~ʹ�@y���6�S��JIq�X�j�P殳U�m|Ezj�F�eE@2
;�BJ�->LG2��5m���(��H�П�v���Z��!��[�?����eA��y{|��tX��i�H�����A������+�V�;�Fu��f�Q	#��f58i��@���:���x�������$�o��|?�K�̏�@��H
\���cC
j]ן���k5��R(��e�4��z[&�x1�vi�kg�uǦ�?i_s�Am0����G��׶Չ\���Oe���,Q���Sֵ�Ӹ��{���en7���e$fs���.f�a������Wi���N�pݍ���`_�\��S�ڨ�4�+q�O�NtӼ8S Xڄ��W���n^�V�6��(H\@S
뷆�$E
%)�J�T�vRk<ޡJ�M&�Cf~=�/�0U:�`=��6���O5�Ng�iR��j�f�nܿ��o:
f��ʜGS��]��d$�5�z�5�B���6�c�[3D�"i�,J
Y��;r�p��<S_'�[cv�^ �nJ�b<d�2��F��&2�)�/ �:E5��-!Ё��l6��D>F	ح�K'�-����)��7�E�P��d��[���v��@�4hN�,.�V�`�_�L;s7~tzI�:V�!H�"�Y��>#N�ٗ�e
KB�oW
D1,�FLK`S�C����7�DI
yI�x�Fc���3��gz����� ���
�lnL�=�'�]�
���e���D��>v���,�6T�U���`��~�`wȼ���ߛ�e�[2M�P�[��f3{z�
&��;���v{��˾S�%+�fi��M|�y���v����#+�.]:J�FJ����#7����
84�����3��Po��Cr��eG�9���]�z�M���H��7����)�>�,Z��K2�ٛ�����,v��fq�����/�[��(��_!.@��@F�S��y�.E�����M|�̤��U��rz����⯦���
�J<���즃J�;�
A���ʬC�U�^�x�͈�'�U0?�VYk�N|��e�;�BϨV���z	���J���1��ӈN%�r�}�O{��fA\���ehWF} o ��0��f+��M�k���ٯ�{���`���m��j�W���*ZW��S�{J����(@��&����x[�/��������s#$��nR�G�jMB�?<���I �IE�g��M|�P�i'�NS�������8�z�����iQ�u#
��K��Wm�j>|���~��:I�|���:�-�nN��w�7��@�	��i�g���w�{�7(�'=hV��j��]��w�8���_����'�>�fX-j� ����_����ip7��gEA��K��R�
x�ݫ9Ƿ�|����[�"������	7�X��Y‘7{�b����~�a������[L�Q���^򐿣:��Ud8s׳=��^�>�R��;�O���Fp�5�O�熨;�'��{��<HD���:b6��{�9��7?v�;s�m�]�[0���_:P�.�K�!穃gH߫,�-��|L�;��!y��,Wӈ�Oi���N���k���,��8!���zZo7g�����+��HP�n�����J�P�wU��į�TxU:��zf��I�=���bx�{ô�
��)eE�B���)��c/���e7�t���4�7�a=-6}Tn��G$4�^�O���N��w�>hլ�j��V5���C�3��K]vGj��\���X�
�1�_8��' ��F��
��d�Y	J��v���Vb.�0#��h�
��N��:X֤6��Z1�e/m|܋�����	A�u�t���O�~�,��A	���6��f�H�eD��d��#��z=�&)�gPz��~��g���CP�]�Qc�L�
��(���2�UM�݃�:����w8)�����y����gOCeG~ ��~�BV�4���T�t+��w`��;��d��s�߃���m;B�Z�9�-����t��Ь<��@@>="���2�>�ZcsB3��r��%{��聾?Pp?`J�u{]�G�󬲞Q��M���~�8��[�9<<�6 cv��I�(\C����T��i�_��R��b��@{i{�٢IM!�`��O�1�y'�5,�o5�Pd�`ܧq'1�mpev��o6�Ή�o"�Zs2�x�F��Ѩ�&�C���!hS®�w�!<?/@�x��!u?$E|<���cH�
��s�Ō��9�����׼S������(�(��9�!X</�P�<?=
7��C�5�Q�<�5��L	i�|��`G�f�=��yڷq<W��z���
+��w*	�C�A��t���j�y��
}'�{��ٰ�6�O]�E�yF(OT�~Wȹ[��;1��ML	5��<�h"���%���y��&����H�dA&��i�tZd�^�*)�Aȗ��N��
T���X4J�W�>x�{�ox��>���y�=�?!�<͘���^x�^�
���U%�ħ����ڿ���rCݻ���9��t6i5�Y�f5KF��`vG�fF4y�=Վj�/�uy�
|!~y2{S�ӄHeZ�,W#�74[o�$<���w:�ծ�����:��h����	�t&��PŖV�r,@�C�wu�o�'L�C:��f3���;lؚ'�`���[#�`�`��*�t19[�p�K_ƛݐ�����1�G.¿]P!͌�Y�՚�F�g*虄�Ӊ"�p�b��
�IDAT��B��di=��`?��v�c��l�`�]��K��g���3O+��,9wS���6ߞj!J��y�A-o�-�X.�#�0$���١;��ң:\��qhp�(BQ�e�r8E���ڍ1��DJOњ�����k���:��)U�mb�H٤N�]�;,��l�6���E����	����ɂ$����Sع�b@�ɱ3K�oQ��!ɟ�ya<�W�n���J>0X���g��H�͞W~"l������Ot�'����[�������z��FM���y}�����=b���l�pL�L�XK�=����4N#�g�=��!OW���^�8���u�GΖ��3���z�VSPSԐv�Y�*�oA��ڢ$׫�g�x�Ru��EiMF�ֵ=]eXewCi��,�|���gB�k�S"ؤ!�S=cT��jY��`��#"�볯'�����FS۳��um?���0���ZE� 5�oU��ry`ϩ|���_��d�Y�h-��!E����`yH���p��{^v��[�ZJ�uLi;�
�\�{#�Ýmѐ�fLGu��:�<��x���m��Z�
� ��h�����z�b��>�*���`��g��Z̎�f�l��zw4���d��zc`�=�u)��UF"otK� ��U��_�t�L�+���V�����ކ\�����f�Cǝ��'�/����&M�[�ݘ�[m.��;e���J_��p��n"�)GO��-}_��U)%��n�����}�RQ�a����91f`Z\f0PդF�U�� {Q/��}v���m��А�L��߾�A<~LÍcQWQ���~���X؎G�f�bsdhOO��~��vƦ��4�P{1/4]��>ݾ��88���l l ��_TD���X�{?;����7��\�	1Ԛ&��l�(N��nw:�p�y�#&$���&(�Ӕ�<�
��DI�K_H(h-��ϕ��O�u����YU�-&$����fw�!�kZ����6��0�a$YP4N�*KYC��͚�f���jI?�gA�㧥���f���ӽcU�fp
h8<U!d�s9�8��?�$
+t�
�}����]��ʢ�'�U1�<�`��)��
�Dzԗ#@�֝8�c�3��m�ri��@ q_x�CJ�qq��	�/�����1��"����O���n���E�V��^h?1���2���������d0���\v�|��|uI����)�(i<��!��a���ۋjZ��;�ـ���Gw�|!9j�kFX��y��>�4]ŬD��jңL�^�-���V�LŏLP�B��C�͋—Tz ���2��M���#��������0�m����ؚ� ��%
�b��6��D@�?�Q��M�U���E���Ht������z �q��׷{E�֕�s�;����4����}[tG���K��*�1��ᇁjr�P⫏��D@Nvw�ϛ�������\��9��H�B�BA!,�X+쎢�&J�Ȣ�}�+�07����i{�
�*.�z;��m9-&�����偠ȹ�*���T���{��4+��`�|���{��3.oYV�4z����R�yM㱿��p���~Dv�~�
�p���ﺞ/�v�����_�\+�jdPʇayvZ=@ q�����3�[�W���<��GJ,�7���qG`��v�󰊳��n������(~�i[QhD���)�4���V�9��V���j4d��:6�+_jy��H�,���1��B�Ta[�E�LG��R+
���w�o+���xo�鬧,H"�I%-(�(�K|���)�1y�!��ˣY��P(_��
F)d����)݌��#H����Y����^}~˾�g��J2�R�Dd7�}�@��*�f��B�2��vm-]���O���x�*��6$ظr�v!� V)	����COVnӨ�[����Q
��.�?�,E��Sc��/J�#���W!�g��/珏^s%�/m�e��b)��B�c�"��ͷ[�Ȩ�8�o�<ϯ�v{S��Rn��s��mr,���:���9nQ�2�#_��Rt��G?�U��M�~tA�B5��F��t-���.@,��������HH$����v�Fu%�B��ͤ��Kg�-��{y�e9CT��g��˩�m�(��X6�������U��
��&	<��
�05�#�M��3%�%�4
A�nh��3BH�)9pRU�U��C��XS�O/&��z��sJ�s7+;���7>ȼ��#y'j�*��O�=]���gP�77��=���
���>�@��Y�T—#�ٵ;�o���%<��~w�4=���Df<Ju� �B���B =9,��@LU?X����/��^F
kp��_�o"�S-�y��
I`_�>lB�ka��ti��w�9�m5Ф�ȍ��;�B�����^���� ����~,�Y��i�����L��冀*A滆�����3���ʌ?����o�� ��s(���a��}�1(����ɏ�Z���JoqU�P1�x�S��t�H����4���U�ǫ�W��O�����6$�r\���5�q�c�C��o�/����?XE�iY�S��c�#d*2>��B������=-eʿ��
t;������E�Ղ�,E�>,��⫓���ѶW:g�8��<C⥏��+�X�(���$
—����J���޿������$���[��������Ⱥ����UIEND�B`�templates/newsletter-6/images/footer1.png000060400000000421152455614210014431 0ustar00�PNG


IHDRXX7�tEXtSoftwareAdobe ImageReadyq�e<�IDATx���;
1�Qq��]̋ym!�݀��=�K{��$�Z�@���
ĺ�!�P�����*+ ���!�j+��q�@n�i��!���
�pY+��u]�@n�m��!��
��8+���</��k��*��+)?e����5R�z
0�,n�&PIEND�B`�templates/newsletter-6/images/mail.png000060400000001237152455614210014002 0ustar00�PNG


IHDR#��tEXtSoftwareAdobe ImageReadyq�e<AIDATx�ܕ_k�`�M��U]�W���p��z�2�)֋�;�R��Vc�u����OR�
���*ҡ�/�Bbw���h��]���}.���s��y�9oUUmKъmYZ���].���N&��x��q�F[#��}n6�X��=�u�.���ۯ���+EQ{{q�����V.-�>��}��i�N��β,�B���C�K�J���#�>�D"�>�F�F^���އB!Q��i�L5�p3-�jUQ����߮�>ǖ{O�u�$!	�$ɍFcf&̧1]\^~O&�~����0�!̖I�W��n7`�p8��k���E3�c�X"�9��̓��$���g�
`��⢒NK��QL�T��V��ij�?�e�?�M-�i�n���3���G*%����B0����ll���El#�%:���ψ[a�D1�]B1�D6�9?���on��SY��<�J	���E9񱂐F6�������K���|��,on~!�OX�k���^O���iZ"q���������A���n��������Ӓa4M[#!	�ݎ�|��|̭?f!�D��s0���P���IEND�B`�templates/newsletter-6/install.php000060400000004501152455614210013261 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$name = 'Build Bio';
$thumb = ACYMAILING_MEDIA_FOLDER.'/templates/newsletter-6/newsletter-6.png';
$body = acymailing_fileGetContent(dirname(__FILE__).DS.'index.html');

$styles['tag_h1'] = 'font-weight:bold; font-size:14px;color:#3c3c3c !important;margin:0px;';
$styles['tag_h2'] = 'color:#b9cf00 !important; font-size:14px; font-weight:bold; margin-top:20px; border-bottom:1px solid #d6d6d6; padding-bottom:4px;';
$styles['tag_h3'] = 'color:#7e7e7e !important; font-size:14px; font-weight:bold; margin:20px 0px 0px 0px; border-bottom:1px solid #d6d6d6; padding-bottom:0px 0px 4px 0px;';
$styles['tag_h4'] = 'color:#879700 !important; font-size:12px; font-weight:bold; margin:0px; padding:0px;';
$styles['color_bg'] = '#3c3c3c';
$styles['tag_a'] = 'cursor:pointer; color:#a2b500; text-decoration:none; border:none;';
$styles['acymailing_online'] = 'color:#dddddd; text-decoration:none; font-size:11px; text-align:center; padding-bottom:10px';
$styles['acymailing_unsub'] = 'color:#dddddd; text-decoration:none; font-size:11px; text-align:center; padding-top:10px';
$styles['acymailing_readmore'] = 'cursor:pointer; color:#ffffff; background-color:#b9cf00; padding:3px 5px;';


$stylesheet = 'table, div, p,td{
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size:11px;
	color:#575757;
}
.intro{
	font-weight:bold;
	font-size:12px;}

.acyfooter a{
	color:#575757;}

@media (min-width: 10px){
	.w600  { width:320px !important; }
	.w540  { width:260px !important; }
	.w30 { width:30px !important; }
	.w600 img{max-width:320px; height:auto !important}
	.w540 img{max-width:260px; height:auto !important}
}

@media (min-width: 480px){
	.w600  { width:480px !important; }
	.w540  { width:420px !important; }
	.w30 { width:30px !important; }
	.w600 img{max-width:480px; height:auto !important}
	.w540 img{max-width:420px; height:auto !important}
}

@media (min-width:600px){
	.w600  { width:600px !important; }
	.w540  { width:540px !important; }
	.w30 { width:30px !important; }
	.w600 img{max-width:600px; height:auto !important}
	.w540 img{max-width:540px; height:auto !important}
}
';





templates/newsletter-5/install.php000060400000004706152455614210013267 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$name = 'Newspaper';
$thumb = ACYMAILING_MEDIA_FOLDER.'/templates/newsletter-5/newsletter-5.png';
$body = acymailing_fileGetContent(dirname(__FILE__).DS.'index.html');

$styles['tag_h1'] = 'color:#454545 !important; font-size:24px; font-weight:bold; margin:0px;';
$styles['tag_h2'] = 'color:#b20000 !important; font-size:18px; font-weight:bold; margin:0px; margin-bottom:10px; padding-bottom:4px; border-bottom: 1px solid #d6d6d6;';
$styles['tag_h3'] = 'color:#b20101 !important; font-weight:bold; font-size:18px; margin:10px 0px;';
$styles['tag_h4'] = 'color:#e52323 !important; font-weight:bold; margin:0px; padding:0px';
$styles['tag_a'] = 'cursor:pointer; color:#9d0000; text-decoration:none; border:none;';
$styles['acymailing_readmore'] = 'cursor:pointer; color:#ffffff; background-color:#9d0000; border-top:1px solid #9d0000; border-bottom:1px solid #9d0000; padding:3px 5px; font-size:13px;';
$styles['acymailing_online'] = 'color:#dddddd; text-decoration:none; font-size:13px; margin:10px; text-align:center; font-family:Times New Roman, Times, serif; padding-bottom:10px;';
$styles['color_bg'] = '#454545';
$styles['acymailing_content'] = '';
$styles['acymailing_unsub'] = 'color:#dddddd; text-decoration:none; font-size:13px; text-align:center; font-family:Times New Roman, Times, serif; padding-top:10px';

$stylesheet = '.acyfooter a{
	color:#454545;
}
.dark{
	color:#454545;
	font-weight:bold;
}
div,table,p,td{font-family:"Times New Roman", Times, serif;font-size:13px;color:#575757;}



@media (min-width:10px){
	.w600 { width:320px !important; }
	.w540 { width:260px !important; }
	.w30 { width:30px !important; }
	.w600 img {max-width:320px; height:auto !important; }
	.w540 img {max-width:260px; height:auto !important; }
}

@media (min-width: 480px){
	.w600 { width:480px !important; }
	.w540 { width:420px !important; }
	.w30 { width:30px !important; }
	.w600 img {max-width:480px; height:auto !important; }
	.w540 img {max-width:420px; height:auto !important; }
}

@media (min-width:600px){
	.w600 { width:600px !important; }
	.w540 { width:540px !important; }
	.w30 { width:30px !important; }
	.w600 img {max-width:600px; height:auto !important; }
	.w540 img {max-width:540px; height:auto !important; }
}
';
templates/newsletter-5/index.html000060400000005602152455614210013101 0ustar00<div align="center" style="width:100%; background-color:#454545; padding-bottom:20px; color:#ffffff;">
<div class="acymailing_online acyeditor_delete acyeditor_text">{readonline}This e-mail contains graphics, if you don't see them <strong>» view it online.</strong>{/readonline}</div>

<table align="center" border="0" cellpadding="0" cellspacing="0" class="w600" style="margin:auto; background-color:#ffffff; color:#454545;" width="600">
	<tbody  class="acyeditor_sortable">
		<tr class="acyeditor_delete" >
			<td class="w30" style="background-color:#ffffff" width="30"></td>
			<td class="acyeditor_text w540" style="font-family:Times New Roman, Times, serif; background-color:#ffffff; text-align:left" width="540">&nbsp;
			<h1><img alt="logo" src="images/logo.png" style="float: right; width: 107px; height: 70px;" /></h1>

			<h1>Your title here</h1>

			<h3>your subtitle</h3>
			</td>
			<td class="w30" style="line-height:0px; background-color:#ffffff" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w600" colspan="3" style="line-height:0px; background-color:#e4e4e4" valign="top" width="600"><img alt="---" src="images/header.png" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="acyeditor_picture w600" colspan="3" style="line-height:0px; background-color:#ffffff" valign="top" width="600"><img alt="banner" src="images/banner.png" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w600" colspan="3" style="line-height:0px;" valign="top" width="600"><img alt="---" src="images/separator.png" /></td>
		</tr>
		<tr>
			<td class="w30" style="background-color:#ffffff" width="30"></td>
			<td class="acyeditor_text w540" style="text-align:justify; color:#575757; font-family:Times New Roman, Times, serif; font-size:13px; background-color:#ffffff" width="540">
				<div>This issue will present the 5 last articles.<br />
				{tableofcontents}<br />
				{autocontent:|max:5|order:id,DESC|type:intro|link|pict:1}</div>
			</td>
			<td class="w30" style="background-color:#ffffff" width="30"></td>
		</tr>
		<tr style="line-height: 0px;">
			<td class="w600" colspan="3" style="background-color:#ffffff" width="600"><img alt="--" src="images/footer1.png" width="600" /></td>
		</tr>
		<tr>
			<td class="acyfooter acyeditor_text w600" colspan="3" height="25" style="text-align:center; background-color:#ebebeb;  color:#454545; font-family:Times New Roman, Times, serif; font-size:13px" width="600"><a href="#">www.mywebsite.com</a> | <a href="#">contact</a> | <a href="#">Facebook</a> | <a href="#">Twitter</a></td>
		</tr>
		<tr style="line-height: 0px;">
			<td class="w600" colspan="3" style="background-color:#454545;" width="600"><img alt="--" src="images/footer2.png" width="600" /></td>
		</tr>
	</tbody>
</table>

<div class="acymailing_unsub acyeditor_delete acyeditor_text">{unsubscribe}If you're not interested any more <strong>» unsubscribe</strong>{/unsubscribe}</div>
</div>
templates/newsletter-5/images/banner.png000060400000037725152455614210014337 0ustar00�PNG


IHDRX��˾�gAMA���asRGB���EPLTE���������ddduuukkkppp���|||��������ۊ���������������]]]��


�

�2w IDATx��]�B��d��ͼ����o��B
V �T�>�>g�A�
�Z�|ڹ��ן�΃p�s��\�:׹�u�s��\�:׹�u�s��\�:׹�u�s��\�:׹�u�s��\�:׹�u�s��\�:׹~���u
���z�!�a��u�s=h�JBt�s_��q+�bC׹���J�*D׹�0\U4�]V�;�\�t�@�p	�8�(B�^���W6�P���^
���n��Ub����ߑX+���G�J�Y��n�^���c���\�kcM�Y��B%
Qd0k0�kC��p�p�;�"���>Q�w�
�)18��7£:i©�\�L�
��Z�bt���R�Mh%�����1%���1�*[j%)e	W��1*wɶ�)y	��%��Hz5��o�.�,��Me�|�Y	S�Ϸ5�u7�bԃ�
1�H2�/�]rD,E0�PT��$��PfI���ni�e3�>.�۸�?~6����0��+��l�%�MH(5�B�tDU܀��ڣ``��=�A^����2��+�>�_���q�,�����B�Z�|�)}�\5Jhp�R��ي�	c�J�	��E/ER��r
�?Q��&�]c�0U�^��G�i��=�oXNC3�h%a�1n@@2e��0
P�f�/`���Q$%�>^���~|�7�I�����j>kf�G�1S������xArI�2�s#�u#io��%�ʥvOd� 4K��c��\�bXY�UtM8u$1t���c�K�q��*<h��BxG���q)�S`Q�_��X��!k������p��_���f7�+a�oH���y�J�v��3�<̀�i�|�r�_5��]�ǯŠ`��}��"������X�.����Q��n�/PS����h��#�pw�b<�[�Nֳ�x�3��s�8�`�ɘY�"(�Kpt���~�[�T?D��.�p;�k^џ�K��a��Ό#8�(����jGN���}�>j&Q5�R��8¸��@դj°Bכ��|�uaI&�Ɖ~�p����F-�J�-�_ىx��Ң$�3Io�Q�	;���Xu��a4^o'�*	�?-󘓯��XA�L���	V�]�T�\om
�+��]�;u���|ޟ{�x�XO�ډ���%#>��o��
;vl�p#���������!��Z�5OR����a�A`��kb��
��Tڃ뀰��/��,�pɻxi*?�JӃ0�S�T��EƗ0߰^[�u=�v7$ۏ�GP�c��:�
�L,�@2�yqM�o,�]��n}�Ed�kYt9��<�tO|�Y%�P0��9� �K�8�6���։N������b��aS��I��Jɧm�Y�Y�ZK��iYF��#XVb���uVMz�W��p�(��C��6��||-����r�x3��`�i�/H�f�v[�c�b�?Qk�*98G�4-�J�Ϩ�0�Y��N85�Z��խ'h�-~�_�3����Tt#���M����CF�E�/[����3�5���\5釬L�� ��e�-�^�\�Y���B誽�m3��uA��Q`�8f5�Q)`ʀ݁�P�j��.Z#�X9��Ky���
w�K�T�d&P�vn�I��ܹw��1Yjha���Tp�%�k�"S*�P?[
�udW���G��8
��D3�?Q�b(5�p�I�*�cJ���eb	U0J��A�n,�tX�O�"@k�e����p��o_`�Ǘ�$}�j�ھ
X�?#�˽�l��D�OJgr$#b�\DJZo
LN�E3��v���L3T���sJ)����6���&�P��	����:�N�2���8�,5�̻xv�~h��	-J�B�0�#(,L(�m6	؄!ދh���`�o@�
p�rm�.Q;lZ88�b�k�6�.;f�~�~!ï}X�����h��d{�0�.��遯��Zr���.�MNOPDI�i�K�]���L��H\���#+�W��0|]X*�w��z5�"/�F���U����b$"Ҭ5�Xrf:vl�R3le��%vE�7�`�+�Fe�X��e���%��>K�8p�IcU\UV�*?7;2�u�"����״�O/�2,�ij?�Uz���g@��[u`������E�&I�Z	�Gru+�mG��Ŋ-�HԆ*~Ά#z�&��#�;m�7��
��m�"`Vk�Y/�B�I;,MP�.t7����Vx�����4�l�%</�����9J$��!?�~�3�&n�vg\���n�J���e��s�Ak�={�a}Q������=b�G`�r�������/J4��(R�I���>���*������I;���K�]
>g�S�GI�����{$�;�;�ŕ
or�޲W@���·��U*y�\/6�jE��}(�Sn����n{*�V������8��i�(J���G��������h���\��W*�̵h	g�e	�_a�0�]\�N�V���vu��0nd�)����AG�(�Y�[
r��`l
��Z��e�ϡ��y���T>{tJru1
�Ԍ>��ƀ�4��a��q�⃢&aB�	S�
W0�sN.g������D��6�xG��Sd~��R/SI��m�
���
��ރ�>V;��
a��W���5�TM�boH�RZͺU6zc
��-9z��N�USij<$��!�m���p]��G�$�K�>�G����-ع�(rP�
�ɼ��Ro�kv���T��;�ك�|�+ӳ{.�.��o%�(%��J��q��Q�88>�r�(d���QT"�]�1�d�\���~Vi�IeI�`\"�2�H>z WєA�G��{k_z��{w��}*���r)�`����Q��.+�y��n9�eXPw���lK�U�<���]�^3��G�b��gy��b`u)�CV�&<��ʤ��,)��X�F#���¤q��P����d�yAb��4/�k.�o����A<�jI����eX�B%S`�<���#���� N�c��4�O�A����͜�BU���t�ƒ�7u��ªY�%"����'���Ov#lv��������S���1�>y����Kp�_��3aӪL������ϝE&���jAd�Ka��tp�@h�6ȳ��P��k�zp(��8�wV�L�.�p=�u`��� ;�.߉�|�'Js��xac
.ণ�h���Ar7c��Y�s��n���^�b��H�
Z��:F���6�e����a�B��:�E�8�>��KB�y�l�Pn�`RP���g��2l|�s��PG�:I��YGhah�BS���^�K�A�>mvICƯB{HU/�3�G�9�<����F��l/��<|y`��6�C�v;.�� \��ϸ&=)G(����˜��Z��bUL�Q]H��p��XT�0.�,܆��Ȓ�55C�Ol�[s�p.�5�`g=n��S�*���D)A��<d���OT%&vw��n�Pp�3���߃�RB�].���ՒT�x�O�J�
��:���,aq��F�%��$
��2s��/���xC�W.�w�Tx:����.�7�A�̅}�2�FG����>A�e���a`���
Xa�=�
gߢ�;Y������Y�K���ʭv��-S��2���%y���267��M3iEšӣS�+��5���z/�Z�(`�K������߰�{���?�
M(-�l�۶��v�����^�	9�|�ځ�&�=X`�+?,7n���p׬�� ���_	�E5շZ��M	냪�qskhc�#}6v�se��r񜸹��q�n��^��t\�KP���MV���V:�c"���;lAK;U]ףm�Cd���9L�Q�Q�H������o�\j0Uf����w
���;8��baV��Tf*9�L���΁ꑌ��'�v𭬯����ʔ��N�}X�RP�w�1�p�:be�`�`�Շm���ۀ��7�Tz�E��
��2�y̍Q� ���y@��k	���q��:��iؚ"�j���ba��r��
$� O�Eә�X�%�}����Ve�2�x�2a�k"��}dmw��Kk�Msn��5�;_kFn\t�BX�c�:L��4K9PM�jB�%��sSs�h2~�x��vĕz�����ØU�_�$זU�f�_U����Xk�;x�I�[��e`����p)f�8Î�7��7�U#�}�+#F'�Q1d��p@>sy��\f9��l*WZK0U��x�[�P�-�_Z�l-��X��\��>��RݖPOy�E�_�onMF��ݗ�p���I6*��9[�|Vc�-Y�\�i�<��n��)d4�Zh���b��K�FK_W�b��̌���Xb�Yx#g�2���%�sc�`߼HӚ=|%wLC��s�f�4M�&�k��/{0��$77�9h��e�m������aB�j�R�&����dwgp/"%�<�q�Y�c�KJ]�X�I����ڻ\
X!��E3���I�Dܸ���wHe���hj����G��H��Bb��T���ϱΊ�o�a/�
��)��N1��9-B�aV@����B�A��=r�xyZYX���=J���#V5��R�|��4��f)�/�>f�-qx�8W!՟P�_,��	���/˨�Y�4�?�'���kCBՍt5�G���j��,B���	�p��L
��4�x�_�d�К��j�d���{�0�7�V�X�E��N���:,c0~��J��r�2�ia���B��#f��;h�ӄ-�Yw˘�Ã���,�8a��"R��T<E�*����7[3Ro�4=k��&��I��|�̘8n��2Z_�7�`�ˠe��,5�Qn}��w/��栨\��8��A�̘c,��$+A��\z��yx���?��?�QN�J/�Q�
��,xyب��wC֔��WB����K�H�^�@U.�*�w������;�V�f�
v;�_���%p��o,Z���C��!�%[Y����9��pJq�Ōα;�Qji&�Kp�5�Eɨ:_��V_��>|�4���-(آL	N�0mkX�&�q���gA2Z���g!!�T��v�Luz��B~ۖ2ԍ�3�RK9�C��b
Vl>��+4^������s)"��d>�F��|�8M��ٟ�����J��{����K+��!
TQ�\HT����Bg5�ƧX��JF��y\j
�am*X�W��q�hĈ�C
��ޓwm?4��Oh�y���M�eT6L٫��.0J�B���e���C��Ý���뿧ʻS��+�f�Q�2���>���F0�=n�L�UY��M�����-V5V���T���ь�M�E�Z߶�p~X��S-�p��';�,&7������-��{��Vt|�0�������
y�ee�.Ӄ�P��ɖj�-J���K��L͕9h���^6WGUq�f��L�lߥ�;kΨrݠ`ZfY�71��
1)�2�~O\��-���WOQ�/�]	bJ�n�[�r�t��r��<�7xId��pu`D��[��R��^�i7��2Ԍ�E6f������Y�҅�c@0O~���=ak�t����E9k�1�~�.l-i��2���8�'UX�7�)�ײ��0�q'S3o�������v�׍D���>,�4��wd޵�����L�����wԻ���7f\=��P/��Y�%$�J7�T4+�E�k]���bF�2v�+`'Ɛ����X`]�&�:�TЄ����:��T5����23&z�f��e>���j\����,{��WO�VX@�P˜`�G�"��m�_���Wc��:�=�Ʉ+pŐ��odz�o�tt]�it$�7��V���,�i�>��}V)󁷙(�3�b��yE�e��F��[�e�C�ɀa�>��ѝ(	�ȝ���n(5�~?��t���z68�����4��U2��p���z/����'J1�4}Z�M|5]�����]��ZVq��	a��_�*�c�op����w.�q��m�鮋qT�냔!�Y����aKn%*�%���b=|�{�Kb歍������`��;M��mL�����7Ё�u�js@[(+_k�t��8�=��V�I��3�ϴکym���t�$6�\D�w��`N�y��%ZP�Z[�A��I�8����znz���Sd��o=3jF�7��cKWb�׼��7� h�䖱�7l �37|�Zh_��-Uz	��||�#�<�=�.�O�<J+C�<-㛬��w�\X''��T���=X��~�hq�,�5�rZ���v"�/.D���o�~�U�8OpuT�����	;�
��Z2:Ͳ����a�M`��P�	LT�XG���J���a��q~���xo"K�6���a��=u��&z�������;�Pb`�ñj�/���e�"�Pq��z�y�q�t�Y�K\�LO�ڳ8W���c�`6�D�ρ2f�:O�i8N�]�.�W�ں����2f�jx���qBY�W�~v�Z
��F6���
(K'�jL-�4��4��(��b��2v��\D��P�{��O8��`�OO��<e�u�����?�m�8���@AXT,��秖Q�s��6��z��^J�L�H�b�<�����1�G	x�<.��:x$��%/�T�$�����%��xƱ�;�(�����2�x;��!��(L��}���e�z�|+�_^���`������N��
ǀ�O��)PP!��m�w�]I�
p��AԴ�[�s0��	���f�
J��L^`4���4(YcI_Ke�,�z @�u�,S2�%���e\��J^�˶����뎫�q����k����?s�Ž;��2���t��
tr��D۴y�l&�"d�)��Jz�!х��,�3o�"0��=v���:A�y$��l�RE��	6�*s�$�o�	�xc��r���SWO��
^��(I0���EMȮ�$�m�o��\#H
�c
ѶM+��,H���P˸��5����e^�ۃ
Q�$v8�Ľ1����A�#���F&U+mФ���ї��5>�W�h�:��Vt��e�����dOd��I�B����c+�k�Vb�2ђ�`
��&7��J{���=�y�g�D0�)!���M�ק�#��-.��j�U��g�G�'�74�ULw^�����i��Z��x_�,�z�=&�>��$���H��M�k�ľi��d�y2N4h����S��-�y�[���Pp��*�6��?
� �j
W��8�b.��	k��/K�V8�T�♭
W�ՓCT���y����e�J�Mr4-�'�1�Gz1�Қ�
ı�؊Gc
V�Z@��e��u��ٝ��-�[��8R�N0)��#d�^�:3t���%�f�=�%r��Xؗn}���w�Ěw�����������#R�!gnT�8;�C�g��*
�_��(�P`�C�7W1����O�Y��,c�ɴ��yP/�bm�-�w	�:�i��sb{��~
�]��
��nZY��5��v"��/��[���!�g��D� ��		��*�o*p���`�J�(e��^s����Ղۇ�Y [C�u��I�
_��U�?�U���ڲ(������-��*����w��\�7H�:�Bv5�!�%m����Y��e��h�猩�(�-{��͇1�PB�)=h�ގ+t[��F���y\)l�ͨÚwɭſ��@_X9����q��)�q�7r�&�[�B&y;�2`�轒����cl�]'���;FJ>h��O}��y���ݻ����H\��w:۬�,�C�e�Ӵ�O#�^�0t�6�iƉ�`�O�Af �(�[�e=�xE�YmgAm4lԊF,�����>F�m	:��fkBv@�͗3���nn#�
�oH,j�`^���m��?�
c1������`��\����y��HF��U$RY�⇕�����Ը��Pe0��Ž��Ä�(�E�$��_[=���lW�ڐ�N���D���M�Y�N�#a����z[&�k��h��/C�"IDATK��8j6�Y]b1s��P�}�w+�ÿ��5�n?O��C��]�Y�"(�I�|5=nS�<��x1˜��2���u���lYr6`�Q��j�N�p���ʚH�p$1��Œ�z���t%**��|�i+�E����1 q���L�op�;�stp���eUVVf��a `E���
rS�q3&��F��
L`�6.	Eȝ��g�xⓈ<�NF��2��6b�N^>ۦK#��~Kd�h�r}��i�.���i�� �&$vJ|�I��~��:��q`5�p9g���0y�qp�5�8�d��p�݃%y7b�n^	;sfH4o�5��:N%;�&!R�«�#L��\Y���s�$��EFU���d�$��#t5��@�(К�v���G`���y�;�\g�VJ#�����#�V� M��L���c`�8�_Q%���i�U^��J��J9�⊩}"�K�
��W�?,D�q�a�859�Ik�h/��s�H�쐚J%6��t��jeY�e/_}�-N?���ƿG�x5�cX,�0����*��]Sgp��B��b�4汱0�ǜ��ۨ�-�.�Q�i����A�\Q�+�-��-j����1to����?��
��">%���1�B���a�|�B$�l���b%��<����센ddQ��6�Kh���߲��k�dk趞�����3o���m,������\�����%.�=�<dB%��k�yN4;����~�lN������׼P�/���'6+�ʆ\ޔ�C^�H��մ������y�8���/�l|L?@ަ�7�%�ݞ9W?w��B��]ƀQ���:���t�k%��$���	q�H�ԉ�w�y�luy��b����콚3�L�zs��4�|��ιC�}ن��Xe7�>U�E�>���Uӵ:���׸f�|N`��A����y��B�|����h�w�z(��4���
4��.ҋ,@��"[ށ�r�c�_�q��G������;N�ߨ��"��?!��k�3%�������WM:�F܈O�J0�����py�r#,��&Rgࡘ�N�h@(��O�Vq5H0|2II,U��`P <��k`�,"[�������
�OkBt���'$��3@�>��|�:GSD���S_�pGQV�q>q�(��q+�����K��p���`�2o�E�AW�����5���*��vة���!�vn<(C�G���)|�+C� ���D��ƭ��3[�
�}��Ćx�W��>����+�{���N�����&���9�[���De���CO}�FiG�o��V�y\�~g�Y]Ej��tχ�}_����V��kK�?�j���I�
R�ˑ��H�i�S�Hn�,�$N��i)�����+�1�nvp�_�%�&�r��`+�m��Z)�Uӯ����mح�΄�˼�؝]y<1O&�T��N��,|ՕB��3,ܐ^��Ǐ���Hr�����6�M�h�W�c��ѐ5iF)�)|P��q���cT����骬ݯ�Jt��]ˆ�*��}��Cв����8|�b�>���.;�Ѣ��}]���1�l���tl�8�epu鍻+��O��4^8tuV�M�����1�f{��̳��o��T�!�G�(,��h�c�����C���a-7\���*�˴�gDU�R�<���½8#f�GŞ��?��P$�bЁXK-���vՍ�ikJh���M�o6ڑ��`�7�ϧ؅�ը0����qq���)��C"ˆ1��,*�vT&�s/l朗U��IU0�i͌�;��%d��Ո�0���!�C��n�^���b�V�ZܢGJ'�+\50�J����2.�M7oփ)�ф`@�ଋI]��
X7Bq���e5Hx5U��H��{�Qmf-ٱ�%j�c�
�@�[��OOD���@k��������"K;<7��p	���so�B����]��Mc�4�hXm�r@�W�5�Zk��0��,c��yEӛ��ʑ��	ʾ��D��FI9G�O]&���X�,[\=>�%Uvm����v�����Fʁ
a�#,�v���I��ia*\F�YRS�l��8�PlL�/��Z#����w]��-��(If�����eT��Z���k^�>S
���<'=q`5D5y%6<��l���j'D�z��z�@3K���4i���M�Q-A�g���A� #�b{��V�����<ZtI.�+�Ɇz��d��T��2'����r0���/��ՉX���kYl'��9��ڽ�S)�ǫ�J�!خDn;�_�F	?-r?R~��|�s�i&����l�)"ZrjG����#/�TkxΕG�*��̓%s�m����8�Wq("�yhF^��'�[�zxS�]��ZA���/��M��P�R�`�Z�XC,S�Hmv�@*)�-�>Y��Ql@E�ٓ�ֳ�O�e�L
b)p�	�0ZىBS8�o
���#��[Zl$�;�˥3n��PӚSmEYZ���o���i���R$���1Q�{�z�=���X+�x3q�U�o*�Bp�$�P3�ؠ��I�f��h�Q�!c0L�*s������hT�y�`7Xg�0���@��2��ݑw��RǫqO8pp̍jA{!v6��R�
r1���;pt'ȭ�����̇i$�[�]���=X�c�?�NX�\��b�8�l��qJ��h��TlM[Ԩ�'s
���0Qa�[Ǔ��1�e.��1���0ŖvĂ.��@q�f���m��|4;j�Ajm>'�\�,*!`*Rku�?r��wk�~X�<��/���XC� g���^�|1vJpU<��das�O�Ӷ[V�s}]ՠ�^���8����qWbzj�os^}X]�DAE���$�ԫ֧���{�;� �в��X������LK����#}ee]�vE��,yx,F01*�b)f�	%^�mǃMUǹ�o0-H]χ���f�?2���^'��S6
S>�"�1��®�+&�qFUBf\�ѳ��695�%�a6�\"H���_�힩]]d�BNpX���PD=�[�#�@3�XԳ�b�@�����!�_nT �)�u�P���|j2���5�<�X}urzt/=yq����r����(�`�mn�8o��؟>ɣf����`h9���
X��@rM%��#�ث�D��j����]5R�f.�܀�猝ߙ���X1��tm��3(����>���Xa<�j	�$m�����7��$�²�8ˈŰY��	L�+�5*s�9|w �1VY�v`h!�LT�-�'��f����Z�uړ,̠�LJ �����sT[h�Ǵv�޷7s#�]�pk�Z�=}���*g�O�A��o��d�U57�;bw)a�e���y��u���Ŗ��,����e���3��]{<d�)��ԩ�Sj����8LXy�1�Uceʏn�mȻ�Ӷ�p�ۃ ������1�)������F 8���<m����|�F�{��Ş�_@b��FU(�@T�j�%1t�P��5G`��bYk��q��4{�٠l2F+�C��B|���:7�)�)���;���!�ۥ�kq�{+@j@z"Y��|d���Ltz}��\@E��B�־�!D�f�h����e�I�npYveي�A�8�R�Q|0���hH)rC���,�J�>OS�+0� �/B�{�!��K���f�0a���1���K�S�h�1d��*��Ɗ�����
>����aM�e��,%�b�6�)Fx��c��
�9ഒFS�^y�%˄m�؎�G��,�%a���o�w��6V!r��U��CT��:0�9*O������FQ�ó�A�����8��?�*@kd�B�]"�|V��X��XF��˾B���E	�zs׃�q<ȳ��M`
I�^#�9Y�����5���:&�����Ҏ��M�Mv^���
�� M$�4�Y<҄b!�b�(�7��^7xUea[��y`Y�e��F���ڙT��=��on.~?i���
�� �u��ڦ�bvHi���Eay�=<������8��p�_X@%�����`��T�s��:�*�y�H���<�]��\s�y�:�r��}��}���T�-�غ2Q}�r�T8`�F�"�;Lʢ�
�T9�F��1�H鈺�IoM������ �k��wth�a��ٌY*՛AF��������!���2��������T�7���UEb(oX�*�Օk/v,5�§�~�ަ���^�hj�"�:��s���h���cռ�:�Xt��+���"7N��'!����ۂ���?���!k�2P�S�F�Ol:&2*N�
�금�N�����F�Z�5l5��qe^�@mJ�$��a���"eP�i���(�1�@E+ޒ�W7n�)~�@M<r#�(Y �4��sx�?	`H���{E��2����?W`k������r�Id�+�� �T�R=�<�0Փ�
D>K����gpN$���1�CIdr�=�ҥ]��{?�j�b����YFI�,�-	t��1\ʞ�+d���B+��ט���� ,��Cl�71~�� �I��qz�^�a��Y��&}���֭���ޚ��W�]nڨ��7�bK�5�H���Z��ė�`��zcvMIaB� mz���a��S��1��%��zE�p�=��H30b�X���	���ξ�q�E"FS��+��8y�\�6�����ŃNR-
�i�4	yM�k3"�x����B_&��z��+䦌�֔3��Gna�h2}�[�K_<��K,Ä-N�����f4]�AZE�W��%�o'�!l�%�0�q	W����B���A
�
�c���yM��q�
�N�8*�cy�R��w"�rOR�7��J��>�ݰ�pcf��=X?\ܛM
>t	�0�#���b��U.�DW��]���/��ё}�^v��h��
�}SlA�3lwQo��ӱ����d�=�u�&l�;�i�!�I�lq��r��sH
�N�ʝ
"��3l�Մ��%4��Ec�VN�T.�jW�s8bEiVP��h�U�O����:�Vm�}B	��O��On]Mv�&�|u�TM`���N��pH�� �>��Z�=����Bt�ܑe��>7�9p
��Y����|U͌�očZ?��}QHi���<���Gq�3���2����&t��~9o�b��G^���9�H�4b�i,5'b@jX[Ġ�����(��z}���P�S��$��?JO}��39�a���^ �	=ސ�����=�BY�j��a	q�ra��<�@�[�ik�TG����e(�����F��l�o�.�߯	H�mz�����
?��7��y��V��=�v��V`��EC�*=��F\�!$�E��Zt�kE�2�*֯ԭ]�nB/U��)�d��Ř��X�f�����͈����ͫ]?
�T���n��j�1�T|>#Gi��!J���vC��6��l�ƌ����C,� ��E�0���)Oj����
��x)M�h���i\����/�)}]���D�I��5G��T$�$Kr�bS��ʲ�h��<�.[�h������Q�Z�K����^�n�XR�;��ǵ��.���f����I��gNJ�j.��8<��>�y$H͖N7��c �R�*Z���+ޕ~G��g��m(�[��ѶV�e�a5��	���������m�T����M�!�Z�SMG`+ey�8��W�ҷ0����#�N�J
�� �oU�m�m���(������8m����o1ޓ�-Njm:���J�AM�CLT_f��d�@cWv�i����F$e(DKM\���|���C$5��~���;�9[�^�=�{��`:��y��$�$AR	�0�)�γ5"�0��F��8'��N�;���z�4�j��sHW���n�!�؍U���	��X��g�6�����*0п2�씎}Dn�o�k1�'*�����̷9-M$�2�CG&�(��fKةJ�y�nG�ċ��'y]��LB��~���b~��B��@����Ai��G���HT��lj�~�r�e�dUc�˩%�XM��h3��U��Bds�.z��<��0�ǫi)鋸A+�#��K� �V�v��8���?�l��zs(��b�`���_��>�է�9V�j�����4�$7�����a��h��7�W���|[�N��3g9�呎$��Fn4��In�Z�'�.*'���[��Zg봺���J�+�7P6
���{s�o.B'[��-����Y܉����;c}T� �i\�k5�ȟ�4v���4�Ĉgy�L)��j7���1�^խ�o�D��Ы��u��_�)�nl��Tb�8���ԇD�^Z4�Qu"|8�R-+��̹��Ջk���S�y�:K"o�"��z���OYuG�8d�5�;OC&c�b��`��Ѳ��#K��氿�H��y�<�'S������+l�3�<�u��=%C�Q(�=A�&w� ��ƠV;�����Ԅ#$�X<W-�]�l_<j���@=�c��ԁwt@1�W�o#���N��ӣD)
LH^
R�0Y��+�8���{?��`���xb�h�&��>U�C]l��i�
U%s�`���Ǧ�4vMl#V)�?N%~]a}nV���p����ߗkS��)�n)�b=��1{��h��2���m�T>ө �w=��N��D�z�W��TI���	�dU�,��i3u�ovkƶ�����K�>?�W�`�������	��*I���/22�d�.ƇDF/$VT���eVA��ˁ5��v���<�F�iG�T���!_}O
��1
�o1�G}fr[(͓�ڂ�Շw*g�Wx�V�]�)�n�C�Z]���%je�kH]q��{�)��^a�	y����2�̧pS
߭�O/�l��3}����oi�b`�k�Q�F��~Q���4�g1��]��������So%�+l`�J�DY���U�w!�/���ǿ�@	L��xG����Œ�8s�,���Ƨ��^�xZc9��k��p
�Bo�z�VS�o���K
�*+8��N4��u��墻�|B���4�	�y�/j;��Ag�n@JQ��[+vJ�#��tT�w���`ׅ1x��xî�wK��/v�8lx\�{k�Ԅ7�XZ��x2М(1�M�Q��s�j�eM_v�9�t�p�
���lF6D'��ɠr��Rї�v{iB�"-?M�v~�WCԜ3�.,{n�U�4^``5Տ:�%��W?Ld���p��,�f���[[�,��I���2��W?���6O�y8k"o`�>T��?�!RF����G��9��m��ic]�,*�ݭI<H��_�<a��ER#�J�/G�=ν��Ȣ?�a��)��S����\���M9H�%�	�[��i�m�Q,�q�lDd��@k�Y-F̍m�����\���}W<��$��Cf��q�p�v�,R�{9����D�N�k+���@�����˟1�8`i]A�Ԟ��X'Ž{j�W�%t|M=|\U���'c�S��<|{#W?u�N���o�;�UY����W?�D�8����� �W�}�p��p�����,|�#w��"����~s'!��pL��_)4]����?|�Cq;gy�BtZ����͐IT!7�t/�R��~�IJ<�)F�j�>����
S�N~�ɤHν,׮~�Nk�n8^�˘K�'�n9�m������;+E�}���]��:�	��~�x�x�[�]���W=�R~
q�w"+y)��:���:zx��z�!��h��^���~<�����b�t�s=NF'r�����?�々�]'��u�s��\�:׹�u�s��\�:׹�u�s��\�:׹~�?f����R��IEND�B`�templates/newsletter-5/images/footer2.png000060400000000303152455614210014430 0ustar00�PNG


IHDRX[C��tEXtSoftwareAdobe ImageReadyq�e<eIDATx��ׁ	� E�*.�;i?Jw��<2�t5��i�9����tI��kΙ
f� 
[��R�/�Z@������/4��|���1����y}�!��Z�IEND�B`�templates/newsletter-5/images/index.html000060400000000054152455614210014342 0ustar00<html><body bgcolor="#FFFFFF"></body></html>templates/newsletter-5/images/header.png000060400000004145152455614210014310 0ustar00�PNG


IHDRXzCgAMA���asRGB���'PLTE���������������������������������������	�IDATx�훋��(@��������K�ac'�ٳ'8i��8X\$!��ק|���S>�
�֧���2�7���]=A"3"�I 
l���p ��z����x7�B�Q�?w7M�-���_.�Bܞ.��=�:4r�c�(	�
�+*��	˧GB��#}��"�D`[ͨ�ңj�2zAդ�(�S�G�Z���C��z�P��nY�L�Fe�Du��Ks�j��(HUv=d��ZM�"����T��N�k�B�	�U�=�@��+��#�x*�j�,<W�
�o=�Q-v��~� ���	��&�E�*q���d���܆W�!S�ϸ�E,��\%`�o��s%튷��M\q�U��3*�f�\��%b�9JQ�*t�h��+v\��ݠ���l��j�'Sn]�����WQ�1��r��O�ꯨ7
�8��u�nᢴ"�=�B*��[��`�=�Zw��E?�K\U5ј+o� �1�8Ġ�puG4(u\�B���W#��`���A\ �/�Q�H���p��	5K���(*[�q|�d�&���Y�b�W0��W�:�ι�	W��tA|��q$� 4�k�\������!��f����`�գ�B׫��D��q5�V��)W�r�#�)WяP	�׸Ҿ���ƋW�rEn>�
W�
�7�2��!�r��+�����t��Z�6�R!�4NFD����N �U{�NBk�,W�r5�Z��U�#I�N��hmR-C�.p�5�J�CcQ�'��ix�2��xR,F�<���#��������UZ[���I�.s5v}�+��6\ѭ�B����W�qō�s卵�:j�lׅA��̟[��d������+����q矸�}!u�� ��6���\��~
�Q���I���&"��V�*���1^��W�)���B�)
����j���!��)�3�f#�+?�O��/su�v��Z����E�8C!s\�O3����m�wb��J8.��4ѐ�M�G���\B���AU��oFrtRQ�ʊ���>{	W�$W�^��*�F\MUQ��(��g ��p�
W<�*��s�橊��@K��v��� �0�*%U.c��$%7K6r����)%���J�w<W|�su�JV{�w��r�[�p�A�d��ZO�ow��|�d�U�t}`�v�]��ܫ�
��\A�j�'�WG�
���/ݼ�+��T��E	��@���G��&�C�FQ�لB�/�S�`	��
�|5��W�Mv`<m\��O�A��$�<�``��*W5u'j}
Wh��,� �o��s���tu��mWg}���iv�)������վ���2^�e?�jTw���)W۹���F�i�h���x�v*��8;q]��̩��$��2ĕ$�7P5�R%7�Z�sU����{\1<�[��8��.pS����qQX�����ˤ�e
��(5R�^�a��WqeC�f�5M�k��T�v�3Qc{W���Q��J)�m�rز���~�tHB�xGͮ��������������Ym��3�<J|�ȩ0
�\�OqE��"���\��~���@Z��N��Wfڨ�e�T�&{h�(���<�ޕ8M�v)W���f؂��+�՗\�p�ݯ.�øf�z��
�"��Wqy�,q�N�–+�\�<�`ȸl�5���/EC�醕n�����_������:W�W�]�xym�P��'�^��ݢB�v�a�4N�٫�;[[�/�k@x�	�M��g
�f������W�����;�j��<�so�����l��ܧ���
q���c�Sj��*�!�y�g���ct���r�������x�gGk0��n��!��cV@�C}��
����/�_Tt+��Z��rr�y?.����������}�V�c�?�#�ۯ�F�^�
�JNB<8he�"�m�D3��o��W��{}}�[�Pك�{G�֎���ׯ�O��9�O̵�ϼ�~z����'�u�T�:�7�����IEND�B`�templates/newsletter-5/images/logo.png000060400000003004152455614210014011 0ustar00�PNG


IHDRkFD�tEXtSoftwareAdobe ImageReadyq�e<�IDATx���K[Y�MꄨP?RQg�J@A7.�h��6��n]Y��Y�͸�w�֝խ-(*�������X�!��g�C_�1�{�qs��y	�|����s��G[_>�o�V��5MP�5Am��&�	j��4AMP�]m�Lfnn.�H���x|ssS����s�moo��0L���1���(��J�~7��oo�ײ�--&G~��3����C���B V��	�MMM###&ߎ�|2��TD0�N��,���Z��ohH]_w�7���7�LJ�k����ʷ���Уy�|,�2�
gi�$��WWi7���Mp�	
�潽=@Dyvv6��.//�\�0eaa!s�&�{5"�c[Uv4�#�7����4����a̺K��%h	��.'''�f��@��F�O.z�9��U|\'$�j�� ˪�B���X�R����O�B*tTG|[G��J59
�A�l|�Beq/�#��7S2<rkD]	>4�|�#.{o��`��dob#���ٰ���A���1��ꈋ"+�����`U�ɩO
�#�6��/e��LT�e���|<
2b�&!�"u?C�Н@TSC�.>��"V���^���6�%q^]]-�G7z�8�G�����x<.�$E�H0�����..ڪ�L�+��trr�ejj��/���Z%�;j�v�#�)�H3��rA�F�Q=�H������[]���*�����)
�[J{+7���������J6===44Tz^:�s�qVT�Ϥ�����k�bz[�KxD���O��?�p
A{�I2b��=���cii�.����k~��q����L�ŋ��h|���s��~uv�il���}�V���dG��>�����^���s�??}z��t��Ob1iG]�2��}�y!����~����7o���}�vZ����|ߠ&2��ycc������m� ��ke�"4?/��6���<ʲ�I���GO(��5!�L����={��Ȁ�0���3�	]����	6zO4aM����.�U�°�҅2��Zi�ɁVXjK����w@�dE���Se������4���W�w֌��</R=<<�5̞��[���GXAY�b�`�aR���t��@���ҍ� .���7�ry����<1�ݪ����1�!|�Q�y�.z��h0�͞��c󞞞ڏcbb������2���i 44$�d�5�l]�;��jpS�\.���V/���d8�ef旍
0��@P- ��B���%�FUP�G
���GGG��X0+><΀���������;A@)��Hpdn'��9��ʔ��$6� ��	�18.AP�	5Z~���3.�%��P�H^� /n���O��=������&�	j��4AMP��i���&�#����f�ɥIEND�B`�templates/newsletter-5/images/separator.png000060400000000513152455614210015053 0ustar00�PNG


IHDRX]tEXtSoftwareAdobe ImageReadyq�e<�IDATx���1
�@EQg��Pp����AK0�$+�����G@HZ�����Y����<�q��ٜ���}��y���R��.k���ڴ�N�]V��-�����.+���
J?
e��n!����2rf�������R�XFJ#a��S�XFZA�c:},#����P���8�)�m�d�����um ��0�@�!���;�]׹�Ba۶�@�!L)�a��z!D�`�W�Y��GIEND�B`�templates/newsletter-5/images/footer1.png000060400000000260152455614210014431 0ustar00�PNG


IHDRX|L�HtEXtSoftwareAdobe ImageReadyq�e<RIDATx���10��W�\�0�K��暙��	BBBBBBBBBB��u��UN�H�f�*5��tIEND�B`�templates/newsletter-5/newsletter-5.png000060400000011670152455614210014152 0ustar00�PNG


IHDR���؞�gAMA���asRGB����PLTE���������������������������������������������������ス����sss��ⰰ�kkk{{{��큁���񩩩���������������`__껻�����檪����zz�ii�zz�77�YY�		坝�׆��]]|>V�	tRNS�������1�e�IDATx��\	C�:F��ֶ$ˑ�E�£���mg�@H
�@�`w�$����hf$�l�|=�(��@'�8>q|4�f�a�Y�c�qp���ce��E��� ��bsyu��
�Z�e�>���1g9�
�_�!�+�i��zT��5������"j�M��_�Z3�|�TM"�˄��uj����`ZLkm�fJ)��:C�4G8����C��(�Z���\����tֵ� ����fE��k�!nu�e��X��<
Q��R%��VD���#7,�☽��P%U}vzz�F<���&�6�����a��|~��ju�Z/����z�Z��%����aJ��ď�r��^.����������z}q��@Z�d����f�������C:�%�׋����y?ǹ���K�(�r�	!�>GZos軌䀦�_T�d�@�O�TI�m�Ȋ=	!�'�,���E�VU�A$�AuO�J���~�}p{2U��*M���/'_� ͊#��)��Bd�z�BZ������@\�����<�ͧIdɮ&đ��ƀaIvߗ��4-0@P	�!�� v0��@�pבGSk{�!�
TP !#1��?7y�Y����>�"@L4����#K����AO���i}�5�9����B����<�?׷�8~����}\�R�਺S�[�<S�I���$���W���/D��p�Y�U���dy�$�n�>1Ds�[rʟ闘%y�:���M!����Z9��k.G��%�&��>��5��+�ƈ�=uM���|F��p5Ak[��V�7p��"u�L;՜fR���*}�C�����5f�`�ڡ�
�Z:�2�3]g�s}]�14��L��W�i(*"$�����ڑ�jr���16��e=�]_�e]�#@�R	���Y/�ke���3-�zT�h��Vn�� �c2��� p�}���;,���KB�|��umߍ-�^qc��}�'(0F��������<��u�8L��~��z��]?���i!�h?坏�y�QG�I��洅�S��S]4a�ײDyce�JK_���C9��t�*���%FNÜ�~��Е;�0v�X��6��� ��1�@U^���wC��ON�y�o~D1x�����m�����P���5�ˡ��h�3N�)٩�~e����c��El�<�?NS��~��>��I���f�G�D��%�&I�L�ڪy}�g�0�_ٹ��6b~?�SW~�ʟ��
6�6���@�$^yw
��2ೈ�ln"{�`^��+���e�'n
��&a�K|�
y����*)��c]eGJWF�1�����w�D�L˵���Q<�AJ�uF�̃�H�w@��NπF8���(�,��^~�;�̳��L흥�^M��RT�`�����K��n�?��:�R�6�9������-��9?S4�@�B_vn�c
\鼊*�G�om߀F�Y9�5��<mL�SHi�ت8�xfA�hAC�V��q�D�z�v0x���X���?6UJ����Y*$#�^_�,o�#���֖ܫN�1/Y����(���|ԕ<��vC�HeU�s�҉�1��T��O��pT�㓧'�}�ͿA�(z�)ݣ�$������0�K(h!�AQ5]ݣm��B�:kfO���0{9�(3o�N�{4�0�5\�7��h�{Mp 2M��h������InI�^�~�
W�ݖ�i�����4�.�ơ�����;K�l�\�DJg�,��׭�X��φ,u �<��O�n�1u��O�,������N�O-4�
��4l�k�s��0��Ǽ�2Ƶˮ�e9�~�HЃ�W�6��?�QZLv�n���JF�R
2(��
��U�q}7�ڽt�V�Ƃi`��B��%�m�[�pZj�yOIZU?�8
t�ם��ΰF�(�N�Ig��q����~�;�kf�C#�zx|Ǫ��:O����E�_�z�GL9��Y��ț�A��0��
8�`�ѿ���M.}�0Z_��)�*ř�c�k�܌-4�N���	Q� !]ݙ�u����H3��0|�F
���l�Gf^�]�C7��(��S8X��k:����"=^s{f~Ji���t�nD�j��W`�R��/5��",i�&��<�Za�-/�ͧI�~�b-�U��0Ϝ&�<�f�;q/���w ��0m-2=NR~v؃<��0�^ō=u8�%Gs?+^�c֝��M.=c��,W�����{�7�k<K���g��~�0)��jew>�W��Œ��?9��}�vX��&���>����l�yY�����3~=�R���*��{2�B�rr�>ş�b�8>q|�x+�ps?�}8�:���f��K8l6���m���f��r������ۋ����7�77|q��nn..��{sq��X/���b��V׋�b�̗k�[����,�;������m4;
�I{;ߟ�}ڱg�e�|v�Lf���.��2(��^Q���W�:ߊ�y�{*3�N�s�4�usYo�7t�κV���m[�Dx#���8�C�vc�T����}�z��m��V��,9m��c2�K�[(�G�?$�)��q0y"㱵��
я� �wg�q0���/�_МR+%%T�"5FE	$hMe1��)m4ޏJ5�FTj�X����rȨ� �H(�(�fFDQIM�UZA�&�A���C�j�5�@��ƴ�(iZJGL>!�����(�+�Թru�E�L�\DM�`�I��s��m�ӽ��-�ˎ�)�g�6�U���?�Ah2@�E��|��+�Am(c!6ywC�=?M�T$M��"K2�$�
2�"(
�'$����B�21B�4I�ĕ�I��Jei��<+�&!�L�:�f��S!R<g?����k�&�a��k8œ)ZK�'	9��a)_l#A�@�@�����;�p#�d�Vh����`q��s�c3�Y��Lj����s�'���b,c��1&	��q�+f�*��<��Gsd�IsC~��;�C܆
1=C��Ј#�ߟb+��!�
f�m�U�*�m��o��#��%R�-@9����)V��D`�,d�0���R唢�5��0�X�̨�����j}�^/��W�[�u���t�8� ��
u��B���c M�	�s
�:M ����
��h-��V8�S$t��i��K�[�`�
���r�\�2*I��k�D���~�ߕ�'����g�)���x�;=��p��H�l�
�.
��i9e
f��xe��	<G���e0L��2$(!0!���)����1��
�Q���;�	A��{�	�A+�i�*��Z�����?�WW�HWW߾����0z���@���!�~{~@���'�O�8>q�w��6����I�⿱���W0�_.W��9�W!����9_\,V�
�.amr��p�.n...�oa���߿������_\���o6�rq����7q�+��8l����z1E��z-�𿹾^������7����}ڱ��{�{��y�}jI�ߗ�M��Χjw.��1{�_g{�p���S�����K�u��H+k�U�7�����V�vuN�J��:��#���g��Pd!Ju��<��jf
5µ���VR|��=W��q��Q��]Wwr��z��P
|�ht�˱��v���]��~���C�K��u7/�r�c7����u�z����ǒ�V�{��ЪS(ښ��ü8��3�	c��Ʒ=��x�NZt��|r����]1â9'<�9��(�L���������;�a8�7�}�#�:BhoJ�BF�%�фf�%�QUiP$AV�L�I�
�Y*D�T�M2HL���&��M�Ŭ�MP�@��ʲ��I�����Ty�DG�|�.������������z��4�x���;k�֢���S�+8�mk
t#Yt9G�3��yo���Ԇ�U޶�O���!?��<q���zɑ��ל�
��8�E
_����	f�t��"2t��[��)��7��Q������m��?�UՋCj��۟G�0�yr
8�xc"(�z����
.!��U�L�r/��r���b��p�Rxt���c�����V�
�U�z����fW
2z�Bᦉ�3
���q-���QP�	rF�AI�q$$��4������.ȮT���f�B�� �P �_�Gp���g_���Ӯ�g=��S���T|ގ�‘J�%ZeY6=��J�XI
�43��&��cz2��fT�hIu��k��|z��
@�����Rʹr���Bp@�R�3��@��@ie��7�J#(>�NR#+;�ʏ*�H��U�LY�I�d-�S	�wO��J�&�j���f�x�X8�/<d_���S�G���T��}L��a�|��8V���p,�.���:�ѿ�m�~8�onp�}q~~��p9����п~��?חO�8>q|���?��+����d��Pr������_S5C��f��f�Q
>/7�M�ƓAB
YrH��~GE(�
X��HiX�xn"��%%� �;��=]����[k`)��p�h��e�ַ����G�v�D��x׵-,Č�<&�}�[������ �R|Am�bzE+�2Q$Y*t�o��DV@��ղY9�4��ݫ\Nj��W��>S��ݞNiS�m�]�ߡ�B�u�Ç/IEND�B`�templates/index.html000060400000000054152455614210010537 0ustar00<html><body bgcolor="#FFFFFF"></body></html>templates/css/template_2.css000060400000003620152455614210012102 0ustar00h1 { color:#454545 !important; font-size:24px; font-weight:bold; margin:0px; } 
h2 { color:#b20000 !important; font-size:18px; font-weight:bold; margin:0px; margin-bottom:10px; padding-bottom:4px; border-bottom: 1px solid #d6d6d6; } 
h3 { color:#b20101 !important; font-weight:bold; font-size:18px; margin:10px 0px; } 
h4 { color:#e52323 !important; font-weight:bold; margin:0px; padding:0px } 
a { cursor:pointer; color:#9d0000; text-decoration:none; border:none; } 
.acymailing_readmore {cursor:pointer; color:#ffffff; background-color:#9d0000; border-top:1px solid #9d0000; border-bottom:1px solid #9d0000; padding:3px 5px; font-size:13px;} 
.acymailing_online {color:#dddddd; text-decoration:none; font-size:13px; margin:10px; text-align:center; font-family:Times New Roman, Times, serif; padding-bottom:10px;} 
body{background-color:#454545;} 
.acymailing_unsub {color:#dddddd; text-decoration:none; font-size:13px; text-align:center; font-family:Times New Roman, Times, serif; padding-top:10px} 
a img{ border:0px; text-decoration:none;} 
.acyfooter a{
	color:#454545;
}
.dark{
	color:#454545;
	font-weight:bold;
}
div,table,p{font-family:"Times New Roman", Times, serif;font-size:13px;color:#575757;}



@media (min-width:10px){
	.w600 { width:320px !important; }
	.w540 { width:260px !important; }
	.w30 { width:30px !important; }
	.w600 img {max-width:320px; height:auto !important; }
	.w540 img {max-width:260px; height:auto !important; }
}

@media (min-width: 480px){
	.w600 { width:480px !important; }
	.w540 { width:420px !important; }
	.w30 { width:30px !important; }
	.w600 img {max-width:480px; height:auto !important; }
	.w540 img {max-width:420px; height:auto !important; }
}

@media (min-width:600px){
	.w600 { width:600px !important; }
	.w540 { width:540px !important; }
	.w30 { width:30px !important; }
	.w600 img {max-width:600px; height:auto !important; }
	.w540 img {max-width:540px; height:auto !important; }
}
templates/css/template_4.css000060400000003336152455614210012110 0ustar00h1 { font-size:20px; margin:0px; margin-bottom:15px; padding:0px; font-weight:bold; color:#01bbe5 !important; } 
h2 { font-size:12px; font-weight:bold; color:#565656 !important; text-transform:uppercase; margin:10px 0px; padding:0px; padding-bottom:5px; border-bottom:1px solid #ddd; } 
h3 { color:#565656 !important; font-weight:bold; font-size:12px; margin:0px; margin-bottom:10px; padding:0px; } 
body{background-color:#575757;} 
a { cursor:pointer;color:#01bbe5;text-decoration:none;border:none; } 
.acymailing_online {color:#d2d1d1; cursor:pointer;} 
.acymailing_unsub {color:#d2d1d1; cursor:pointer;} 
.acymailing_readmore {cursor:pointer; font-weight:bold; color:#fff; background-color:#01bbe5; padding:2px 5px;} 
a img{ border:0px; text-decoration:none;} 
table, div, p {
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}
p{margin:0px; padding:0px}

.special h2{font-size:18px;
	margin:0px;
	margin-bottom:15px;
	padding:0px;
	font-weight:bold;
	color:#01bbe5 !important;
	text-transform:none;
	border:none}

.links a{color:#ababab}

@media (min-width:10px){
	.w600 { width:320px !important;}
	.w540 { width:260px !important;}
	.w30 { width:30px !important;}
	.w600 img {max-width:320px; height:auto !important}
	.w540 img {max-width:260px; height:auto !important}
}

@media (min-width: 480px){
	.w600 { width:480px !important;}
	.w540 { width:420px !important;}
	.w30 { width:30px !important;}
	.w600 img {max-width:480px; height:auto !important}
	.w540 img {max-width:420px; height:auto !important}
}

@media (min-width:600px){
	.w600 { width:600px !important;}
	.w540 { width:540px !important;}
	.w30 { width:30px !important;}
	.w600 img {max-width:600px; height:auto !important}
	.w540 img {max-width:540px; height:auto !important}
}
templates/css/template_3.css000060400000003451152455614210012105 0ustar00h1 { font-weight:bold; font-size:14px;color:#3c3c3c !important;margin:0px; } 
h2 { color:#b9cf00 !important; font-size:14px; font-weight:bold; margin-top:20px; border-bottom:1px solid #d6d6d6; padding-bottom:4px; } 
h3 { color:#7e7e7e !important; font-size:14px; font-weight:bold; margin:20px 0px 0px 0px; border-bottom:1px solid #d6d6d6; padding-bottom:0px 0px 4px 0px; } 
h4 { color:#879700 !important; font-size:12px; font-weight:bold; margin:0px; padding:0px; } 
body{background-color:#3c3c3c;} 
a { cursor:pointer; color:#a2b500; text-decoration:none; border:none; } 
.acymailing_online {color:#dddddd; text-decoration:none; font-size:11px; text-align:center; padding-bottom:10px} 
.acymailing_unsub {color:#dddddd; text-decoration:none; font-size:11px; text-align:center; padding-top:10px} 
.acymailing_readmore {cursor:pointer; color:#ffffff; background-color:#b9cf00; padding:3px 5px;} 
a img{ border:0px; text-decoration:none;} 
table, div, p{
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size:11px;
	color:#575757;
}
.intro{
	font-weight:bold;
	font-size:12px;}

.acyfooter a{
	color:#575757;}

@media (min-width: 10px){
	.w600  { width:320px !important; }
	.w540  { width:260px !important; }
	.w30 { width:30px !important; }
	.w600 img{max-width:320px; height:auto !important}
	.w540 img{max-width:260px; height:auto !important}
}

@media (min-width: 480px){
	.w600  { width:480px !important; }
	.w540  { width:420px !important; }
	.w30 { width:30px !important; }
	.w600 img{max-width:480px; height:auto !important}
	.w540 img{max-width:420px; height:auto !important}
}

@media (min-width:600px){
	.w600  { width:600px !important; }
	.w540  { width:540px !important; }
	.w30 { width:30px !important; }
	.w600 img{max-width:600px; height:auto !important}
	.w540 img{max-width:540px; height:auto !important}
}
templates/css/index.html000060400000000054152455614210011327 0ustar00<html><body bgcolor="#FFFFFF"></body></html>templates/css/template_1.css000060400000004014152455614210012077 0ustar00h1 { color:#393939 !important; font-size:14px; font-weight:bold; margin:10px 0px; } 
h2 { color: #309fb3 !important; font-size: 14px; font-weight: normal; text-align:left; margin:0px; padding:0px; } 
h3 { color: #393939 !important; font-size: 18px; font-weight: bold; text-align:left; margin:0px; padding-bottom:5px; border-bottom:1px solid #bdbdbd; } 
h4 { color: #309fb3 !important; font-size: 14px; font-weight: bold; text-align:left; margin:0px; padding: 5px 0px 0px 0px; } 
a { color:#309FB3; text-decoration:none; font-style:italic; cursor:pointer; } 
.acymailing_readmore {font-size: 12px; color: #fff; background-color:#309fb3; font-weight:bold; padding:3px 5px;} 
.acymailing_online {color:#a3a3a3; text-decoration:none; font-size:11px;} 
.acymailing_unsub {color:#a3a3a3; text-decoration:none; font-size:11px;} 
body{background-color:#ffffff;} 
.acymailing_content {text-align:justify;} 
a img{ border:0px; text-decoration:none;} 
div,table,p{font-family: Verdana, Arial, Helvetica, sans-serif; font-size:12px; text-align:justify; color:#8c8c8c; margin:0px}
div.info{text-align:center;padding:10px;font-size:11px;color:#a3a3a3;}

@media (min-width:10px){
	.w600 { width: 320px !important;}
	.w520 { width: 280px !important;}
	.w480 { width: 260px !important;}
	.w40 { width: 20px !important;}
	.w20 { width: 10px !important;}
	.w600 img {max-width:320px; height:auto !important}
	.w480 img {max-width:260px; height:auto !important;}
}

@media (min-width:480px) {
	.w600 { width: 480px !important;}
	.w520 { width: 440px !important;}
	.w480 { width: 420px !important;}
	.w40 { width: 20px !important;}
	.w20 { width: 10px !important;}
	.w600 img {max-width:480px; height:auto !important}
	.w480 img {max-width:420px;  height:auto !important;}
}

@media (min-width:600px){
	.w600 { width: 600px !important;}
	.w520 { width: 520px !important;}
	.w480 { width: 480px !important;}
	.w40 { width40px !important;}
	.w20 { width: 20px !important;}
	.w600 img {max-width:600px; height:auto !important}
	.w480 img {max-width:480px;  height:auto !important;}
}
templates/technology_resp/index.html000060400000013734152455614210013754 0ustar00<div align="center" style="width:100%; background-color:#575757; padding-bottom:20px; color:#999999;">
<table align="center" border="0" cellpadding="0" cellspacing="0" class="w600" style="background-color:#fff; color:#999999; margin:auto" width="600">
	<tbody class="acyeditor_sortable">
		<tr class="acyeditor_delete">
			<td class="w30" style="background-color:#575757" width="30"></td>
			<td class="acyeditor_text w540" style="text-align:right; color:#d2d1d1; background-color:#575757" width="540"><span class="acymailing_online">{readonline}If you can't see this e-mail properly, <span style="text-decoration:underline">view it online</span>{/readonline}</span></td>
			<td class="w30" style="background-color:#575757" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="acyeditor_picture w600" colspan="3" style="line-height:0px; background-color:#575757" valign="bottom" width="600"><img alt="--" src="images/shadowtop.jpg" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="acyeditor_picture w600" colspan="3" style="line-height:0px; background-color:#f5f5f5" width="600"><img alt="--" src="images/top.jpg" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" height="32" style="background-color:#f5f5f5; border-bottom:1px solid #ddd" width="30"></td>
			<td class="acyeditor_text links w540" style="background-color:#f5f5f5; border-bottom:1px solid #ddd; text-align:right; color:#ababab" width="540"><a href="#"><img alt="mail" src="images/mail.jpg" style="float:right; border:none" /></a> Newsletter {mailid} | {date:%B %Y} |&nbsp; <a href="#">www.acyba.com</a> |</td>
			<td class="w30" height="32" style="background-color:#f5f5f5; border-bottom:1px solid #ddd" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w600" colspan="3" height="16" width="600"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" width="30"></td>
			<td class="acyeditor_text w540" width="540"><img alt="picture" src="images/pic1.jpg" style="float:right" />
			<h1>Your title !</h1>

			<h3>Your catchphrase</h3>
			Your introduction content here</td>
			<td class="w30" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" style="background-color:#fafafa" width="30"></td>
			<td class="acyeditor_picture w540" style="background-color:#fafafa; line-height:0px" width="540"><img alt="---" src="images/separator1.jpg" /></td>
			<td class="w30" style="background-color:#fafafa" width="30"></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w30" style="background-color:#fafafa" width="30"></td>
			<td class="acyeditor_text w540" style="background-color:#fafafa; color:#999999" width="540">
			<h2>Your subtitle</h2>
			<img alt="picture" src="images/pic2.jpg" style="float:left" />
			<h3>Your catchphrase</h3>
			Your content here<br />
			<a href="#">Some link</a> and some content<br />
			<br />
			<img alt="buy this product" src="images/buyproduct.jpg" /><br />
			<br />
			<br />
			<br />
			&nbsp;
			<h2>Another subtitle</h2>
			<img alt="picture" src="images/pic3.jpg" style="float:right" />
			<h3>Another catchphrase</h3>
			Other content<br />
			<br />
			<img alt="buy this product" src="images/buyproduct.jpg" /></td>
			<td class="w30" style="background-color:#fafafa" width="30"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w30" style="background-color:#fafafa" width="30"></td>
			<td class="acyeditor_picture w540" style="background-color:#fafafa; line-height:0px" width="540"><img alt="---" src="images/separator2.jpg" /></td>
			<td class="w30" style="background-color:#fafafa" width="30"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w600" colspan="3" height="16" width="600"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w30" width="30"></td>
			<td class="acyeditor_text special w540" style="color:#999999" width="540">
			<h2>Best product of the month</h2>

			<h3>Lorem ipsum dolor sit amet.</h3>
			Liget, volutpat esvft sem. Praesent auctor posuere orci, sit amet molee. Integer nec scelerisque quam. Lore uctor posum ipsum doLiget, volutpat esvft sem. Praesent auctor posuere orci, sit amet molee. Integer nec scelerisque quam. Lore uctor posum ipsum dolor sit amesent.<br />
			<br />
			<img alt="read more" src="images/readmore.jpg" style="border:none" /></td>
			<td class="w30" width="30"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w600" colspan="3" height="16" width="600"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w30" height="30" style="background-color:#f5f5f5; border-top:1px solid #ddd" width="30"></td>
			<td class="acyeditor_text w540" height="30" style="background-color:#f5f5f5; border-top:1px solid #ddd; text-align:right; color:#ababab" valign="bottom" width="540">Follow us | <img alt="facebook" src="images/facebook.jpg" style="border:none" /> <img alt="twitter" src="images/twitter.jpg" style="border:none" /> <img alt="pinterest" src="images/pinterest.jpg" style="border:none" /> <img alt="rss" src="images/rss.jpg" style="border:none" /></td>
			<td class="w30" height="30" style="background-color:#f5f5f5; border-top:1px solid #ddd" width="30"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="acyeditor_picture w600" colspan="3" style="line-height:0px; background-color:#f5f5f5" width="600"><img alt="--" src="images/bottom.jpg" /></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="acyeditor_picture w600" colspan="3" style="line-height:0px; background-color:#575757" valign="bottom" width="600"><img alt="--" src="images/shadowbottom.jpg" /></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w30" style="background-color:#575757" width="30"></td>
			<td class="acyeditor_text w540" style="text-align:right; color:#d2d1d1; background-color:#575757" width="540"><span class="acymailing_unsub">{unsubscribe}If you don't want to receive our news anymore, <span style="text-decoration:underline">unsubscribe</span>{/unsubscribe} </span></td>
			<td class="w30" style="background-color:#575757" width="30"></td>
		</tr>
	</tbody>
</table>
</div>templates/technology_resp/images/twitter.jpg000060400000001026152455614210015417 0ustar00���JFIFdd��DuckyU��Adobed����






����j	125!AQb3a4E6F��?�d�Z�!4Ĕ��L��&Y�V�)Ҙj
"$DtK��{Ϻ)�}~q,V�QS)TOHJ�Z�	
PҘ�p<��ĕ�r�s4Z�V^�p�¥ ��n-��`�B�P%1H08	y�]ޢט���V�&ܣ	p��J4������`+�B����W���?/��=�Z������[]x��<k�=�ǁ����f�b��Ǎ���X��templates/technology_resp/images/shadowbottom.jpg000060400000001621152455614210016430 0ustar00���JFIFdd��DuckyU��Adobed����






��
X��n�R�1�A�2Bb!�Qaq���C��?����������
>��U_u�U�z�j��m��Vm���X��B�*S=X@�L����ؼ�:��XJd�,�2z0l�-�X@[/���L�0u�T�O.�m���K��R�����\��L{X������0�H@�L��0
;L����[b�,l\��-���R�9��5l����-��,��MzX��i���O{�[g�[=8XZg�i���-����	l��`g��L��:�N��.B���X^�Nñ>�Kd��-�nu�-�ɀE�=�-0�`��@-�j�Zc���-��Zd���
�m�ɀ-���K�/nF��O�%�~�/&.���΁�g�[=XX�zг�Ze���S=M���{ߎ~�.�����?�xN��(�&̀u�_#/9��$�����`=�5 	H@��m0����$ 	H@]ǧ� 	�O5 	H@��Wp���@2��d 3 	H@��g �H@��$ 	H�^@$�$ 	H\:8�=��\zHw�9����I�?��templates/technology_resp/images/top.jpg000060400000001063152455614210014520 0ustar00���JFIFdd��DuckyU��Adobed����






��X��\	!1�	2��?�����?Qx��x>��7/�fG�g#��d�S�nr(����۹M��D��F��ݤ�3�+����="&"cI����I���>Mu�s�z��������2�T�{�z*�<^e�qܪ�F�.Lo����������`h�? ��templates/technology_resp/images/readmore.jpg000060400000002154152455614210015516 0ustar00���JFIFdd��DuckyU��Adobed����






��P��r	!1�A"B�UQqS�7a#$4&��?����c�P�o+�N���r�~c-���P )Т�`4�^A����,�n�k�.�Ͳ�!���T��($o�q�����fCV��?]Q>�JC��C�
�A�Rm*J��A'����N7sA}7K����1�1�È$G��}�%KKM�s,�
!#���	#�e���h�c��8����u�'��C�`c�����w4�
lb��e�|h6��rS/�e���4H;lA�F��
�#�Ӌ�?���H�#�c�L%�F�[Ĥ)��&Tw��AK{ŗM_���N�0��M���ǭ������VU��s1c�J�����5Q斃>��0��6;��HG�[2�m�O��s����R<]L������"-(�ò��G���BO0��Ee����n8���b���{1���f�Th�m"r ��*Pi
���hx#u�(x��ߘ�{��5�����<CW��\H�ř�J^u�B�Z	)X)P�a�U�y�)�I�m�Ij�H͆7'"��g0=���Kw��罊���0[Z��O V�0묗/�%Ek�y�)��cN&��?�cAv��V��i�-�םB�t�%@����>s���T�ne��2^�jݺ�����ƹV�)�G�[n��R�
I�B�y�6gg�!l8��r�'�W���<7pP�n���M<�n!C�B�AAj����V���Hۛ@�#tp
�!�#nmEڇb�N@������)��V��0�c�s!�1�!�l���Ϡ��=$�@4���	ߒ?m:�@h
�4��
3�w������templates/technology_resp/images/pic3.jpg000060400000024175152455614210014565 0ustar00���JFIF��C


		
%# , #&')*)-0-(0%()(��C



(((((((((((((((((((((((((((((((((((((((((((((((((((����"��	��C!1AQaq"2���#Br��Rb���$3CS���c�%4�����0!1AQaq��"2B��ё���#��?�:R�D�)DJR�D�)DJR�D�x��A�5�{.�1Ym��}�k�.)D�<�=��C�}%%zGLW��-��4���"�Y>���Sy�����FuL�����������g�-�ԏzN~U���dv=%2��2��[Rr�TxT���F��T-�F�-�Z�*d(�]XX	� d�����j��3v����I�.ɳ�.�"��~���U�^*�C2�Fy��<�ڂ��W��.�flwYX���ܠ
JZ��CX\	�EX䦜Sg�j��w�+���&�=E�C�v@K��Oή���������ڤq4��|����Z���u����tR{PR�0~U?��&@��C<��ܒY#=�@�^�X����]e�lim���c�
e���)JQ��)JQ��)JQ��)JQ��+��UY��Ѩ̹vǹIG�]�\n��zki^Г~R��\U�
����4���E�Qm��1�uXW��X��C�%�aư1���9�}�_-�*����)J���*�!\�ƫ�.����Zc�xص���$U�D��4�����F7�~u�2G�Ŏ!��N�O��>�^1��&�F|M%i��G�.P�#�p�iR���c
��5umE,��P��+�K��G1ݟ�W��Bz�)I�RRw���5$o�]ZN���7Sm�k�����)�W![ �x�U���s��K��r����$d��ۮ��!�d���G���;�D]�w�y�v��*
�|vٸ�هH��Ւ��ɉ�N7���%�Fw�,�#:>�j( ����:T�֞A�ք�C���X5h��<E���#"��~�]��
�R���O�ٛ�T��0?�+���#���7(v��{ImL���q�՛�;it�7�?>)�\gP�\�q��ܕ/���+A�H���:�F�豌��$<�JVV�z��<$�:�V�Ҵ����2�.�Ӗ�����
�&4���#��W�U��w@U��h;�w}.~F�����g8&Ey����A�VN���m�0B�T�x#q�;j�-���/�e+��d�V�8E�S�Є�mR��UdU�����p&�[r@�Y��Gނ?*"�V����T�(VKŠۤ�WV��=�6�;A�����DJR�D�)DJR�D�)DJR�E�1�#��-���p�p�B
�Kv5����
�6���]��eZP�'U�B��
��?FH�oI���G��<)�uI�0Q�WQ��J�VN5�XՐ�VT��� G:�RNAI}��[����\�jeq�����r��{�{+�BR�A�%(H@$�;�5�22�z��<��F~ݢ�����^y���E#��T'�0�_kۅ�l�CC�Dl���<
��R�2�d4\[J���Q�%�tS�FB�a+�C�eA*|Ħl�n�e����'s�}N�� ��g�aHu��V� �$Ę1��$�α$Z��X�L�G�qI�y�m^'���\���*8��]Z���2�V��qr�ע@�h����=�2ѹ����$�$(q^Q��Za*Y\��xG3��TA�Dt��d��R��F2 wV���!�bq��P��(��S�y�d[kqY�x��XB����5o�;=�s'����޷T�MF�w{|t��Wo`u�
�[(P���?�;$`c�. �۝x�/�ol�ʲ�d��)�:�('l/s��<�j����q��nCjQ””�
��I�+e33!��m��	QV�g�°S
��Ƶ8@�5"�I����	j��۝Z�ħB��%�<>8J�uF��Ӻx�D��/���J��d��y��T^�q�qZç��K��9ʖ�BI?2��SON#s�lV�J��+X]pJ��m�ӥ�<�K�J���G�ݵ��D;o��˥���.{���k�k���)JQ��)JQ��)JQ�Y>���p
M�9	�us��u�O~�KP���eo/���F�v�q�0Ϟ]I�mhϣ�� �>v+S-���W@�r���XJ�H變%���Gnw�~�}�1�����T���~�Xn�����?J͏sC�!`�I�A����B�$O�j�@=Pʽl�wx�,ۤH���%`:�JҞ�+˩B�Za���VCx��*��kd����vy1��`�C�VްVA`�ڢV���E��B�%�6��[��:�0ގ�)\U�M���v���h�=�HiL��^R�p�-@���G:��zեY���Za\eyg'�T.���2�q3)2�Q����)s��8�{2�A+�_,1N"ө������Ok[4���v7��Rr6 �4}���r�z�4�iEX	睇:�K9-�1)mqe)I�"��JK�:��lv؃�_
�w�VwW�գk�mo��+�ʚ�������U�u1u����C,`:�����)dS��"T����`����ǿ�jL=°���J��{��iM���R��Ei���;�.'WDZ�D�,��>G����d-F$ƌ�m%r
BR�+<$�Յ-�hJ�|'�O1Q4%��s�&+���%��Sy���,����w��E�6�v�i�iZ@��G-�;3�
Đm�F�	NI�=��B���2��RN��y�u�˚`P�:\@Z7J�A��~��8oV8	?��q�($|�k��#�`�w�5�}?��n-���i���#���j�;)�����z�1~�);Ȗ�R|��j5Е�>��߫�!��.QrQ�%�|���\��JR�D�)DJR�D�)DJR�E�~��z������ܛ�g��z(�W��FvA�:�kdn7���*G
�K�Ϸ%�H�(����i��!����)c�	�? +wg�e�B���[�ߨ���y#�B�XV�ԭ���1�\�����q��;�Q�y�>��-/��%�$%@��9��:ښ���8���SKNr�(oۃ�t;BWCL��f��Ԯ|L�F�Z�z�z,���c����'��Eeƺ���e+PB@�����Y�Ƚ
�ԦYm-��7�QZU�v����(�'H&\��pK\C�p�-Xܔ�¹c���h�����bÏ;����B�F�I�]º�zb:P�U���%Y)��m�ԓY.xP�8���j[5��+1�ZRJqh'��MɹH��1�)��ϰ�yy��u�sc�;��]��a������y��r$�F[iQ*�*�$���g�t�).,)x �qs��sQ�1��y�|jQ���,)I#��wVs��6S0h�ןx�T���H^Y�cGy�_�� qg��eOj;�`[B�rxҝ�p*��^(㐶�A9BrI��#��E������`�+!}DN����QMt䖓����̳^ٟpS1֒����r3S��nj�Qc8����k�Dc����������ii*�RF��bsX��$��G#ˈ�O������u4##��6y)��\X�����X�N
�a�]*< 6�#^�>��
)Zsء�F#Zt��e6�AJF��θ[\�7}g��XȜ��8�S��b�rE��s���׳�PH���4�W�g`���d�e+��_ k<�|#r��F[��H٭��������~l~�
�)DJR�D�)DJR�D��@'P�75p�>�R���v���DZo����F�I��a�P�
���ٸ�|k�n=�x�jf���O5�W�lk�./1s@i�S%	WR�P�5{�<j�}��aLD�;64��HK��KI�-�o�ge�V�\Q���+��12��܈΍�l���Y����sC���uO��Hj��ž�ڮ���w$�l�dac�>B�]��������aj�hal��yp����%g������m§@�k(Jf2��i�'ޝ��[�%���0�RrIoOnČ=Ƽ��L��Y���Q��?ҪwN�5��w��}����h�5�H۬����!#�C���6�y~�r�ܤ-.6���HP�x��M��r�I~|�d�9�<�G#o��/	1Y}.2�s��x#�g��ސ���m�ۘ��jl��҉�����c�4�x1�{��jŸȶZ�G�J�R�Ғ��(vv��93i�"�~�Er;у�Jd��ְ������t�qi<�/��#��zv�U����m��1�`8�
���k�U9���"�@#��B	�a�"��ߒ�Z��ޜm��wu)x������R<8w��b�e�nm:�2�!�¾��;w����f�[
�s+Cg��갤�v~aҒݰ4�#��
8��Y[���;�3X�>*�i�jߩ���6/{FVk�Hˌcc㋩�/.]ihu/4�)m�$-!#$��7��W��m+mԭ*�A�Z��"֎ܐ�.8�ոp3˳�~F�oFH��1ښ�j��=Z����;��s��mlT�c$���`jt�>fj#u��;˒\�y��v�n���U��.$R�q�p
ˉ=�sZ�ݨ���uh!i8dx�b�Ƶ,��R���95��Dž%�S�2ބn�/a*��6��5��kP���X�jYNQ�d���P���fF��	*�WX�����U��um�5���l�v��EG�\j��J�R��목JVU�)JQ��)J�%��n�)JT�@	䝅{W��
GmKua)H�$�3�V���k�ub�f�U"J�b[I�H8'G�V�`�\��.׸ڙ�j[�ˌ�R�bS�Z�y�N7�;EZbs_�N�� p%���J�F�\[\��$�È�K@>i��x�m���P�i��PL�"3#�*>e$��V�r4�r�2�XR@�=��r�U���L%9�͜���ʵwN�@�?ڢVc5Ă6�<���DI��.^CWv�pQ�:��Y�"T�kj�Ƴ365��1�U�J��%k}����V�\F�i��zœ,�Q�k�u�Y�N7߅_�~u�70�~�_5R���4��\�r(�]ll���}F�̅����$���P:��2d���H�6��~��?�{kxɂ�
�Q���8�?�W<.c�+���mT�N��. ��𼃒p3��r0;�<T*de�#��s��������U~�/�LJ-�"Y��˄`6��'�U��v�kd˴���R��ct�}kI0~���\T��v�O ����~{<�ۤ�K~#X@yV�(��������g�hs�íֹ��X/�e%2���Kr��)��\@X��F�ў��� �	��,�)�V�6h���4��\a�Ď���"9ݪ�yq�&%��r+��9s�+��'���F�
��-{{�=s����n��;��I�d���@�;p%�[����8����ʺ}
�!��㊌�́e��%%�g��Y���掂��-�(/���Զ�>��|pjJ&���q�Cy��BZt�~X<�`�>�q��Qmv�Z������A����k>�`�*��U�kr��6�m#*G� x�9�c��{p���)A)S�t����V���8I圚������%2���P��g�$���j��ݐ�_a�Ě�z�ß�NG�U����̪E�� ���5p�?[UF��I���v���.0�+�ƙ��w��@�wV�-)hSH��
�8��#��Z��
З!M�6��9���s^G�����hF~ceK�\6SZ��f͊��-4O�G�&�W�o�M:r�6r�u		<�%��y庰Fp{���wA����-Ӭ��0}^k%�r�d�%s��405l�����&�Ez�ubR��%xJ��V\u���KZ���N¼fH�m��8y�V��ϣk���̋%���F�c�����NA��R`�8�/	���Bi�2�O���8�Wd�_�x։�]!j]b���[��Xe%�{b|�5�FM�V]Gn���ʂW����y�Na�E�QͶi�Y�Y [Zo);�����4�Ag��S�.ed�=�Y�E�a��}�T	ѧ��ʑ2!J��|*p���c��yT�I������΄��z5ͮ�,z�dxr�)5��>�M�߽g�w��%��\u$nCY�ْp5���T�0�����II,͵���X�#�Y�d�u?j떒@�6��ooN?������oiR]]��y�jxT�Pe��TJG����{+lHԶȱ����%`e.:��� �W?ęɊ�a��q$��g�
gm�p�`�ή,��E�37#>�km����:�1�h�Y�Ͽj�L�Zɍ�`LJ�qo�Z�Xb,��m���lu�S���1�����m�w�`�-åt���Z����8�-�;�[?���AE��3�IzY�
���Ga��*�c�BD�m�a�[vh8�h%<�I�Nys:���ph����N@�����AM�߯�m[�b�q$��Fh�U�51kѺ�xC���+�s��_�*�3�Zh6^bS �ON>�<����rn3��{�����˳
�QMP$c�ѝ�&��߻�(�\�FF�]7��M�-��blU+"K��	�H؟~+rA�@�ۙ��жԎ�,��"�����I�"s���BJ��q�$�5-j}[�T.�l�� �\�Wpx�;s9;��;Fz�@c@�A��O�nn�a��v�柷�
����r��A��Q���Z�N�at�{�4U"���ڶz[��B�g'���i]�U�]�L�p���ZB�Of�p���6Ԯ����Yn%Qd8�N%�D�疠R:��n��l����ou��Y}Y&_WuC1̘LF	Ae�p����0s�|�O3Τ�7Pk;�Z�9/�P�Ҥ����wc�j"˪��v
���a%ܢs;:�W�)8��U�t^��=di�Ɏ0V�\����G��嚘qw�N4�@\�>�z>�h��֋��i)\���
��V�s�i�ڤ��$K��2y���,�>���]���;�N��G�fk�aO������l|+�rnAB�o�a;�$��f���c���'����V
�#x&<8u�;p�WKd)Ҟ��"���Q�
)G�{p�r��j%��n&Sh��ҸK��C�|$�o�$yT��ȸ,���Ң����(
�� g�5_�Ob��n_�'�l���<\�mʷ���!w9>d�8�T6�Ic�Ηnt�us�)�?��u�s�fC@<�4�*��>��
�&L��\�H�g��nw?)�4('�V��N8�ǰ3�;*�W�4��v��!!}z��RA����Q��^����]H�#t�|-�o,o�e`��^�\�\"�B�N�O>ѵv��n���0��H���D�j��8q�T9ί%�#��7�O%�򮆆>�d�1��h�z��_t�Ez��(�&���e��S��m��`z�p���_���W�['UWP�嶯Pf��ut�k
]�B�G�i��<�=��O���=�Rtg!����ݴ�T��r�����*�[�,����z�����aG��=�\��l�Z�=��a������$(`�J�kU=K�7y��8��G��ۦ��\���j��!,a/���Q�������!��'����|�JO�	99+��~co:�t�Ќ�4��-e*~εg#�>��;�ʵ}�����`\P�3x�\�� �����1��[⥎H��c���f��߰��m��}���==1��-y1�-��+�L���ԞD��X���n�_�YC�t巂�r|	��:��V
5j�!�Nۯ�Z�i��8�xs���j�v��W�Y���*<M�O�ZQ�y��gz�R��f��曷�#�5ed@�4�́Ͼ���n+�b"$��q��kG>��mY�ɕ=bZt�"B��}\|*���7�a�m�\%�'��ik�߄d�Vӹ=�:<����v�Ĉ�NG�+>��4��]����v�?^��YL�ѕ�����/�߇=\WՊ�>��Df�f�S�"C|)�����G_�ޔ�n.5�
�j��$d���$g�5M�j�i�\�E��mv�u,��R}��Z�E�,ͥ�hK�9���}p竒|8�t]*>Ά�,wS��U'#jN�T�5<��(�1�NLj�*�Պ/DdZ�n��9�p��@��*�pN`޶*`�		J@`6���e��j��jK5�@��b�*I(}n+�Pc�4j��9��n%�&�����ܭW9�("Tf:��h��N8��	�I�2k|$<��8����
�bIS8VH��u-��'j�z-s	7֮
%��:�)��I
�`���Q=z��b�϶:@ZBT�A�!������1u����1�,8.�)*X�)@l�����E��$1�献�R��s�u*Z��j��l�����AHI/5�R,�ꯘ؊���3w��됞���Q�F;:�z��uX:m�jY��#�m,�g�R��$$�
��纴4ȑ�J�r3�%��k'�m��`�ԃ��m����xX:�c��R�hsS�\�O���*Q��@�5C�-���Kd�H)e�2�#��p�>���X��.�����f��V�����J�)͔�`�=�W��ԩ]V��I�㞲�G:��=�w�9��J��6��n~���ec��@��6n|p�	V�7luZsP�9i��K�8����J��HڵU�c������a�yy��SV��y�'�����i�p �@�;�w﫾��0�a����2���m��s��.[km\��7���w���y��C̅����Y�h�G�U�#$�Yx
>��_X�i ��O.������%J�PHX�N9֥і����qYrK��J9!�v
�V�Ŷ�5IZ��)J���+�i
5�J"����� ֺ��%��ze�Ų�{S�;�����%�C� �4EM�ũ���)�;��+�?��Q])�Kc�̪V���S�W���O�;��Y��J7!*R��Q����cK�>�'�H��mI�-7n
�i�����f租�\Kg�'���� ��p���p�ȃW1����ߤ��d��1�I��>WK�H�%��m�6�t�
����Gq���Hp���'�r�^ОF�&�\��RE:��gJw+�Uh�b�)��VB{���G��T4��Pě��AE��+�ks�E{�s�ۥ�R���#¶<x�6��+��e���vP��лr�-��'�����I6��"KHI��A�Y]�Eu.2�'���O�6��.�mp�?�FYl���,���8��ރ��Tr6#��r�+��rD��%<*?Ɵ��:��ԿZJG7�����זS��h�\�����֠}����M�}���v�s�1�|*q�}9e�8?t�EYr��g��y�gq�V��Oey�*7H��n�蔤�ȯ�m�`�s�g	�J�#��U��[k�`�gP� �ZV���M�oW1�Nen<^y��T�I9P!Y#>xV��]ݧ�T�7{�_w+RR[SH��l6�%D}�̊�-���J��@H����-]&�<
�����p�q�[C���"g�/Kp�)G���v3��k-�I��W��3e$U��
ƌ,e�[H�@�J��R��%)J"R��%)J"�q��a@Tl�3=��R��*�4�D�%��*J5�; p�ug҈�R��a#�JQ��+�m!c
H"��DU붐����m���$p�y�@��.P��f���ܡց��C�W�R���{F�j��9�]`�S�|�H�5ݮS����?��E�V�5pRB���۝��sl�lF]I���^�ye�tI8�_A'�5��*�+@����>T#��WX��?,V(���v-�pdv��c�#�El4�7P�n�b���'�yC�5��W/�x3���nZ�W.�Qג}�:�Ӗ�K����?��W��GbG��Ȧl�Q*��$JW�G
@�^/R��)JQ��)JQ��)JQ��)JQ��)JQ��)JQ�)J"�	Ny�}R�D�)DJR�D�)D_��templates/technology_resp/images/bottom.jpg000060400000001723152455614210015225 0ustar00���JFIFdd��DuckyU��Adobed����






��X��q		�f(!1A"q�#4	�aBb$��?��Lz�o�ǐ>��˜�1;?�4X8ڬ;TZ�I��f��-����cY�f�:h��9)������UOH�h��=<7��/y��K4�����`�ڻN��-ٹ��X���.5�6h��J)��J�����}{S�m���}��߼���.QUY��r�~�Wo�j�4�clX;v�w��3��/3�\��W�
����_�V�K�
�	~�Z/�+@%�h�`�������_�V�Q�N�2�^0��K��	x�Z/K@%�	h�a-��%��^0��K��	x�Z/K@%�	h�a-��%��^0��K��	x�Z/K@%�	h	�L%�鄴]0��K��
x���%�"^0��K��	x�Z/K@%�	h�a-��%��^0��K��	x�Z/K@%�	h�a-��%��^0��K��	x�Z/K@%�	h���Z/�+@%�h�`�������_�V�K�
�	~�Z/�+@%�h�����^�6�x���v-��+��fw�]��/���K��#���\\l_F3����n��r����N]1֪�έ`��templates/technology_resp/images/mail.jpg000060400000001022152455614210014633 0ustar00���JFIFdd��DuckyU��Adobed����






����e	!"A��U�W��?w�p���Mp�����w�%9
n݄Iq-;��X�BN�H*=�ЊD�^;��=�\�q5�j)O��Vۣ������
H�� (+_�f~��=���@�h1g��ٰ�F�±�ݜj����T���J�;1p�/k�`�A�:�P�lo�g+L��W瘳
�`_#]X�ȵ����	, mݵ@��Q�?�8���\~٠��templates/technology_resp/images/buyproduct.jpg000060400000005222152455614210016117 0ustar00���JFIFdd��DuckyU��Adobed����






��j���		!1��3S�T�AQ25a"Rb#6�rc�4UF�78	!1Q�"��S�T�Aa2���R�#35�Bc4D�br�C$Ե��?����e�;��$e�(w�YB��
B��B7+�^���S&��TH̉�c���3�/5{��UQR���;(X��H����ߥ����
�Y��擂7"��-_�W�_��.^֯Hn:w
�4��1j�r�J�hw�r��zCqӸl����y�W�W�C�K�������g�'nC�Z�\�ҿ�\��^��t�>i8#rb��~�������j��p��I�����+�Ƈ~�/kW�7;�ϚN܇��~�_�~4;�{Z�!���6|�pF�<ū��+�ߥ����
�N�擂7!�-_�W�_��.^֯Hn:w
�4��1j�r�J�hw�r��zCqӸl����y�W�W�FT6v��$���P8�
H�n�]M̩�pF�<ͬS�-�y���1?���k�ˏ��U=���r�{~����>��~��o_�OX��ܦ��O�6"����:�H�C[F���*`���ZR����[�ϩ���;E��s�D�	�C�t�U�H�ʒ�b����egY\�)���[�����ei5k�Z��J�>��)�6�1=��Ҿ���J@��IÕb((%��&B�3���l,8����sLZ_ ޳2Wg2%f��
�dٜLU���	���"Q�#Y���Ӭ��n^�
B�#�ш��|�Mӿ/�+[S�����fp^F�1}�,r���|����e2 9ɫ�IY�z��M�-#L$mw��+�@U�)G@���wqt�[
��
�9��<%��0,�Λe���	�jC3M*=�3����012c��Vز
��8F�p��0�M�����3Yr�k�.���U@T���ޗj�M���N@���/�Nk����]
IiJ�ۯ'ݕ�Fp��NiO�ғM�2���kG��I(׍�i��I�v�t�m�\(�Y�rQ�H�Б�*&&��m5 �WLT���1@N�z��^Q#�QxCOE���
U
�kP��@�~�O�K�D�V��5�Fr�s`1,3Y��Tu��=IF�E"��d��:l)��7XT�j�ɪ]���KW�x�f�T���C$�pAY���#�–�mJ
h��ui��0!�2�2�`vW�e�����cs#�6j�z�kv�pV��?̈M=��L��a@�'�CP��0��J���l��w4����+�6
6v1�>��׿�ZR�5��-��s�P��>��k���1�\[��C�ﭜ~�Wc|�ȝ�a)8���ڧ�P�8���"ܢ���i�Y��^��(z�~�:����sٔ�Uߙ�FQ[�)��35;5�<�(z�eD�'<�q��4�Yd��˞-�a��77=��!O$���+���2�X��*5)�2B���� B�V#Zի�f�r�=S��Ӗc&�ِ����'�|1gbV��>U��j�l̪� ��Ȯc<���2��I��qjEbu�o#uuנ�%�$ڴ�t��dT&���6�R��)�Qx����TX��
�� 	�F��'�Θ�S)@ҵ+S3H���I@��0�`0�1��dgG�N1XW�a/�6�g����
Ţ�Mf��<3�QT�S�>�`0� C��Rz����X�ZJ�$��K,��)Yo���xv������L�W+Lv5$�)T-�&3���L)�V��Y��8 �pELC�6�E3�	"`�;�����Ǟ�슆����E��������L[��Em�^��a��:)��	L�m��P:D}�B:5L���-L/Sg�䏚#-��2~��x��OnY�d�L��On:|��s^R,o�ʻHF�ɋ1�������6nMc�Lai0B���k��,fI$�}d�~|#'�kU/�r�EʠUQ9�*�&g	�LsY�d�Ss�35=�mg���
3�5=�mg���
3�5=�����3E�!�r[�I^�H����ڊ(�d�4�.��(}R�����ekJҐ�DeE�'�?L�O�f�k����ҙ��`j4Y�d�R���ᵞ�O�4��ᵞ�O�4��ᵞ�O�4���:�4��PH���]p[�yR��q�o�幣~J���]QyU��,��S��'��'��7��?�ܿ�n_��k����_�~���F��Z����>���TC�Ջ������t�p�d<;�k��!��;\>�����xwN��Cúv�|2ӵ�����t�p�dfۿm�<�	�o��W�?��Gem
�;��;�w��'�~�,zˡ������templates/technology_resp/images/pinterest.jpg000060400000000762152455614210015740 0ustar00���JFIFdd��DuckyU��Adobed����






����d	!A2b3Q"R#45��?�ܫ4�ĻX�zU��&�@�ߛ!��5�(�)���8���=�5]���ӢJ�Ʌ��6���(���$ˎ�h��v���и��M3-��w�k�� �Cp�%��+D���͸�#��+������s��)^�lV�'"T��
S�3�`!��~e�O��K�~��t��G���l�"���templates/technology_resp/images/pic2.jpg000060400000022756152455614210014567 0ustar00���JFIF��C


		
%# , #&')*)-0-(0%()(��C



(((((((((((((((((((((((((((((((((((((((((((((((((((����"��	��N!1AQa"q2����#7BRrs����$6bt34S�������'CD�c�����3!1A"Qaq�������2#B3���?�:�*�V���SM:�.���&}�!$O����J���1G��T
~�j��UB�J~\>�>5�n��+Y.o�����(f�If�
��!Ԥ;���NIﴸ�)j���y��8��<�����B}T�P���x��R��[="�8d(��[��?�k[2�\p��!b��t���]O_	
2��\�u�jz�^�{s�/�-���z(
Fp:��k	�-��rFG9/��B��m����GVӇ[�A���!WO�,���K��I�*�ր ,s�|�!?SQ��yl�	T����nDo�`k��y�[�e�)���1�M{���3�;���d#�Ѕ�R�ӈ5�V˫jq��?�3�C�."��,��
Rd`c�銰_H�[��!u]J�I�}�w���d|�7�jғ�~0���[��T!uEJ��댗�iG�ݿ���/�բ��od��D����'�T��(B�ڔ�Ծ�.�f[=7W�e8�4�g�l�UAw�OG��|/!����-]#R�jo�oW$�;`���}�V�}�7�Z��ލg����F	�Ns�]-R��B�UӠ��~h%ȂA�EnP�*T�B��P8��6�%0�t���}��cӒ_�B*�u;
��{M��ȋ��T�x��
�-1S�A$8#�!��D��:W"�y��o
Ս�	I�"Y#|6�I�5�8k��!i���6HU�R}��˳w���p�j�/ou��e���n �Iwݱ���@��^��Ϥ��<ٲ;�2ʯ�=�����ݰXl���(�$S}��];���V�-��י���Ӽ�Hp� �W��Ai������
)���1	�Eb��K{i�-�g�x�5�:��N��MR�
�$�dB
�.s�@��#�Y��n�l�M;��Jb���֤0��&x�2���<�J�s7_��Zv-�B߮��)�7���%�RG���*���m�� ��;gY����wow�$��'�,}�#���6,�(��ݩ��Y������2��t��ӣդ���Q�@V#?��1n���BB�q�~5��P%�k#!��Zee*˕#gª��N�z�[->6��uˌ���A�x�k	*�)'����Gp�����ٍe�FB�d��VcZ��`g ^�����Q[x��\�2n�C�c��晣귑��֌�ci�IFT���\)�;<��{NH=Co���~��J	�7��*O�zV���A�-˓Ou�w�C�q$�qD-�[�bK�W��K��q�ҩbs"H�0s��4���n�X�W�m�㐆!3����r�s]G��ǥh��n���˯�o�r�i-��gӤ�.�J��UnR~|ڜ)v1�	���=MWi$wQ�$�s(*��.�|�]���@7�x\w���w��1�l~I�9�Z��n�uKTۣD��1)?�s��i8�bJ%S�1�J�o�P��-��7��'lo��Z�H%��$[��L�]ɡd�5	�\�M���0C<�;�&�����O1q��i���e�E��X0���>ڳ9�G"���G�ff�q��=��dH/SG���98�;
������W� �W
$����P��ρ�����{�̧�r9��r�#�'M-YyF);tA����ZA���i�!@�FOv<.��Q���;ald_R�{�rOf�Y9�<��jaR�6
٭�#����LJF��R�J�-$�fqG�[/ٚ�t�����,�fj��\�m��cɲ�Q�q�ej��Aowo&x�9*X`�;�kgE�b��26b$kh�J�C�5��N^�Kv.D*D@����Mb|���ir�A?o��A{u��G<��9*�����y�1��#�@D�G��g$g�QN������@����w����o5l|k�]֙�C-��=��d�@E\�6”����U�bcp�$�8<���Ҵ��Ehv+s�z+��YſxS诚��g$1�x�B��,z�
�ƶ�N��8_EY'�7��������K�q��i#4i5��ͅ�u�q��LV؛4���j��[o~���)�=ꢩL��FW��!�MV�m[s�7���3��y��5�pv����Bz�s�^�]�{"�e����<��M��$l&b���I���4D���w��(H]�D�S�=�'[�IԆ��*v>�ި�>,#IcX��������=c�C$�"���y��y���|����Od�m��;�$u:���^fGQ��m�Hd�Dd
 U��Jh=�y�Z�%�S(�2X� ���Ч�Ց�����0�'�/1,A�����^�le�S?~	vT�5�K��m.���N��P��k�|����c\��>4°�	j��d��D[��i���{����=|�_p���ޟd��d:��_�
[ɠ���U�K6W�d!���4��ݮ�i���3��=���S����*G!�b��c}�H�!���-Q��\�:�ғ�rÎ; ���	�u�hq-�,]"�)�=?GЭ�=;R�y�x�)�L�,�n�\樸[F<A�V:X���Lg�@�<�
\�:�޹a�Y��6�ł�[�$���`�nN���Y�����$���`H>`�"2:�,D����5�_u�q/d�=��_����oi��GM��]GsozӉu'#����B��_�_���k�W�����1N�f6�33.F�`�>Y���Vwp�9�\��9�
W�c,FNX�{��'�K�tG��M–���"S���9�N~�+�����ꜢIT`���U��[!ӭY�� ��4��<+ul`�ŤE�K5z�+#t]�w5�9R6Wt>��gh��frq�g†{LN]?D�\��|(��LvTZę�<���W�{-I�,o�9W���r��7���],��s���9'������q�֦E-���Ņ����޵2+�]ڕ*T�
R�U�&l{�1�NI�1�w7���?Si�P����#[`��s䜣;�qY5	{�R�mʔtq*�.1����d�ֆa��2���)
�D��sX;�6�S[�Kw��=*����v��wE|��U�$ӄ��;�M럧0�u,Y�Q"�ʳ�=��l�f���~��r8��D���r�F�O�4.����j��[��/�P�h�4��#	+s �	?Κ�0ޟz���b}]�uzWT�������{�[����ɏ��U1ϣ�q��D�e�*�2�#<���*G/&���֊xy��i}􊑽�HX�`2�t��*=��s��Զ��3	�����5Bl��
k���Oq����`;�'����(T��&6-.m��V��֒��E�������1�q� �#{y�t��1���1�j.2�iO�ē���'|��F���6j�w���o
ml(%����B��(A?�(�e��_<�9;��f�. �U�r�Vl�>m�Y�½������J}�u�x�79�|���зV�tܝ�T�����v1����}濎@�����G�֤9�g/ul��\�X8�5m��V��\�)T�H�J��[G�@fE9<�|Ղy՞Y�|`�d|�4U6�|�+4��p3�z�8~������̻��-�����2X�;����L��y-K���B�I>K?V���{�n�4>�K)8
���;S�H��Jl'E�ʐ@�'q�\R��q�w�m云�91�BN��,�26h߽��6�&I�#t��}SߏZ�m1�H;�Bw{l�ԝ�6�
إ�V	%`߄����84I��e����6�aʏ��>�zdg�B7�42���;�X1��8���J�31�9V�;�;lX���yWM���q���Z5�!�v�SV��}�����U+��j����>$�5^���{h�$	#�3�w���##4/$�6�S���;���'0��i�יW`�XLw+�5���qi�@a7"�%H��
���@p��o��]�9AU�`9����4��edIb�DaA���*�l�u*5I7��z���^�
c�	v�����\�|Y���W3�UVw$9.s�2���c�(k��~Ф\{��<=�L{���m�ž��]Iq#D#7"<`g$��R���c���Z�O���+��,��$!�0�F�mU��ǔ;�����
�|KNd�#cc��=���X�0;��z�ť�`�K��֦% O�R�R�sox��V��-1)u7���?Ui�P�%���gzU��b����|s^�Y�k�Z~��ն��Z=���2I���l��>5��o��D�}`�>�[k�{<��.K�VV?$�����ku�4���/k4�Z�j�rũ�\Ok2s7r[*�r`��b��L�׸�|��BX���D��`���RC]9PîFQ�I%�S�[���-��{r�vyX67
�乱v?6��G�'���ee�8/������>��A�������Ú��ڰ��L�X<�cM���g}���Ɠ�5��X�YIP���j ��k���m1�nR���YG�MsQ=�RX� ւ9��	t���Z;��3�B��H�C�Ѝ����;p���Ø��O1ܞC�+H�Ű�[�l倜H��!|OQ��B���Iݵ�Ⱥz[�Ot9
ro����]?VP�f�w�?i1w
e�w0*�B���6� �Wb�N}U#���Dk�yt�H���YZ���F���GYҚ(�8�v��m��c��#k�I,2�g����ou� w-���y�j�5����=g\ѣ��ZU���s7�S��@
�7<�yW��c�w�?�[���N�F��˸�D�+bO��몛�x3d�A����ZkzJ��u"�ѱV[r<v�O�h-��?�zۯ'���`�\�Zb����Z�{Y��v���G֐���z?\_L�����#�f�7z��"sW��+?ZT�Z��!��g�Y.B�~h��[?!�&��ß�M8T�92W.��;8��4=KG��N�yg�s�������7O�*%������ʑ��I�s�xQgp%��–Z�����DW��y̱JA�}ݱ�JЬ���6��S
���@7@7$z�Je�xx���~����m;�'�~6�un���lZ	�B� ,D��
�:f�6?�����h�'�Z��ͧ^jB� $h��:��#_��6��K�ֹx���

�]���o��w��ݫ��6�{G���F������m��G�qƣ�L;�GD;��ڤി]tټN�ɘ� ���]�M�hK�n-�rQZ6s�OZ��f4����^$��(y1�"t���`~�t�KN!�a���ђx����8�A�����,�?���V�X�W�q�NFI;�jdz��[���B$Q&Km����ְ���?�s�R%�.A��G%�����pq�k��T�7?�
�`W�L>���?����LZ]v����|��jb�U��*T�
R�o����$�%.���q�?w%Jm�Hӽ�9aMφ¬��JKƎY�Ygq����	��\h�J{4FG�<���3�W���e��x���H<����	�����67F�wJ_�.�}��F��t�J|���^�
��3;�噋1�8ܞ��Z\�7!�'����{o�--l�"�s�7J[7�9����p�J$���L�O�Zgf�>��X����
0PX�
:G�&���2��I&��8��
�h��$.q�z�&�-��θr����v*blv=M蚤:����S]B�ȧ�A�>#U�;]��$���lMp#]��}z��'�~�ٶ-w.CO��F0=MPi���Z�,��eU�����w냱�Ɨ6���V���!�d�r���}h{C{]�5�I�n$�Iy��T��,�C]Z|6��%��Ok��W����,�!��GeU,�fݢ�X�*�#>��>4��{�p��.3�}v�h���>�=��(�8\�||k�p?�y}J�Oj��X��y�3B���&z��+JE�.B�Ӓ3�Lb�����6Ź c�Aְ��2��4c
	P~Ɏ��Ϸ�"��/ua��+�T�;�l���t�rp���5�g,��'�@�=�r��R��ȸ�PIY�_����ȀB���h��& c�"A
s�܊Z����7�$�-�"F� ��&�r��G+���>�� �M��&n'��q��9'�4����,f��6~	�n���}V�ƺ������V�a+{:w����~��Ҧ�
F	a�8$F�Y%�#����=�h�)�t��Ym@y���%yzc�7����i{y
�v��A�ύqؙ1g��~�K�ȌF�%�^�[|Q�Wھ���u���!��ٙ�� u�k�u�%�i��=�[�:O��yDx����9?]-/a��qn� ��*��}��S‹&�����˃�1j`)�Pv8��W��[wm&��ʰ�`���҅m��'x�=�nc����h�N�)�`��͜W�xb��o�$"gM9�Cf�'N�o���i* e�%y�����Fp�
�1<��~nJ��.�dQ� *.s�T�t�"�
ħu�bG��\�����7����`�9��5;�Y��޵1iu��������K��*T�B����"�U���-.��q�?bJ
��5m�錸nXPc�}�:��~!}Fx�h�FN�bN�qV�vw��*�.��.ʯ~���+d��H�z�u;�,�ɟ��n�`��ٺ��e�{�N�8�߼�h��q5==]n��ԅ�M�g>�����N���^��!�ȥ�ikk��j��A�F���UWA���]U�[��ѫoG�W���\I5�v��8U�">��l�g�q�pE}�3���JF�PÛ�z�zP�u}'$04�@¢&N�^g��!s�O��Ô��ط�@�ӹ巂F��c��tK�h����m/�)ec?��c^]����g�44�dAt�j^�p@��lON^���A��{�k�n�����5��Iwq�[F�<�d�v'��R��F��W��ea��.I���"�H�#l8<����D˪ۗwk[c�6��7��ε[c,Wv�2<�ĔV<�w�h��%׬��Q�U�1 ��	�8ϖk\�Mao!���2H]|��զ�/#<P��s�C��R��o݈-��@}�I�d�Q�p	�K��ծ��X��+i��Ȋ=���w��	գUK�Y��*�}Q�Մr`	��_f�;؄Sx�yT�����3�vFb�O��0���}C_��pM�E�N�3�f�<U�ލ�T@�hA����]S��x��줎9��!�:���FsL��l���-ͳwQ�]��xR�\�]jz���ʍ)~U\�)g�ndB77o�cñ}���M�.�N�Y�����a'�oVS��;��R���oa�,Fv4!`�K{
D��3`*��V�,4s+���V"��,X�Ec����M��;�d���58玵}cFx���w�D���:t�~>��������k$�#*�� p\)���m��'��W���]�PU���!�o��L����K�qݠ�X�����m&��y`��Ϳ�|<�x���g��Q���;V��L3-�>��~Ю�1���d�
�;�I��0��N�����/?��6��g毽�^���e�UnI��v�ڕ�0"ܽ�d�GQG�X�X{�h��`є����d'��t�c#�K�K4�O1��]?������K��v?����LZ�ХJ�(B���5�����P����VS�S�Q�j�[Eo�v� +�I�yЄ)$i �s�+�A�@t�
���1Y�`�晆>e8���Tl=�ly+0�?ơM��B܉�I� u4�������B�l?�K�"�
|q�N���T@��Ø�͚���Y"��*C�����L�.���ua)�p
�׭xԯ��+�����;�7�J�s���..����c��$[Lȹ��.�.�ϳYj+��Z,�Q�^��s��K���OS���c��A �\d
�+Fǚ�P�Tv@$\�8 g���)�m��#��j�f�-]6Y1����E�4IBARFH�|W�g�[E4���Λ:�gv�R����c9u����C��fuQ�����ji+�d�+? ܒ[�"�vT��A���'�e�,VϏ�&3X�e�T?�Q��E�R
ES-3��\��2��<N����p��a[vK�l	����SeE QA�gf��j�n�L#�[��|�:߲��j�aA��4Ygٷ�c6�]H��3H�ğ@j,��+LI�nR�9S��d;�ڽ���n��V�L�o!���p�/z\���{.�Ҥrރ�L��.�V�W�����E�����0w�V����Lg�3t����@^�3���U���V2i�i6���?I��\�p�K�_s�lSYQ��a~�껝��+O��?���Z�xuߚM
ȟ�_�Хs�.#=kcM��o��%,ŇA�f�VӃ�1q�\-i(��ҡ���Q�h�݉����H=��^S�r���B��F�иL��R�,gF�;���FhʥJ�J�(B�Uq�j���`@|l�
��u��̭��Ѕ��Q�P�T:�g���^I��bA�D�)ʡ��O
��~�l�c8pj�C���y�;�W�0���
�b�^W�D�u�&��?,��R�$� �����䌟Z�*-��۽
�pW�-<<�X���o�ӏ�Q4�����N���ȳ���=q����y��t�bp1^���NkY!AdX��#�h��q�_F�[}�iS؏^]��a�(�i�C���E!�,�ū�ث�1�<�Ɗ~�<+���F2j�a��We��zVYt��8'҉>�rP�����Ci���u\����V�2��tO�d��_��6�I����3�^Z���ַ�G��+�F������m;����%�����et�=�;F����>��׺�c����:�[]Vz��t9M.!�(+�� }U�Z�bwvh�D������*T�
W�0��ڔ!cX���S�^�P�� ��p+5|5��`Xl����\�Vz�����7Nu�*����d�Qjik�O�c�k-}��,=��1_D`~Me�E�X����`�Me�E�X�>Mc�u.r6&�k�R�<F˃�XŸ�Jگ�,G\׏gV�|��&��9�Y�VZ���~h�Rh�co�_
E�&��ו�U*T!J�*P���templates/technology_resp/images/index.html000060400000000054152455614210015210 0ustar00<html><body bgcolor="#FFFFFF"></body></html>templates/technology_resp/images/rss.jpg000060400000001001152455614210014515 0ustar00���JFIFdd��DuckyU��Adobed����






����g	!1Qab35A�"2�76��?즢A"鋰��"]褚�*����@O<C����@��-��AZ����zC�M)�NQ��`�!8
86��>����Y���V�+�e�P)�� 1�e8���R��f2�)�����sZ铼�b��cf-��M���a�xO�eG@8>�B흺�ܶ�O�w�
��{_��}��so�I|P��templates/technology_resp/images/separator1.jpg000060400000002767152455614210016013 0ustar00���JFIFdd��DuckyU��Adobed����






��*��o	!1AQ���q���a�R2"Bb����?���Z��Sm���='�� y�{Vӂ�5_c4�W�V�[��;eGr��?�<�{<�Y�t���S�\�S�Tv��3e��7g�08<�Q�.[w[�O,VV�|�@36V��}r��V�w}r:Jo��^�s�(U�l��]��;p�K��'�i5-��y6v�a`gG�jp�*�� ��4�y*yoL��Rebq<�_d���w?0&���O�	�j�Zo�,ȕ�/&� ed_qS��&ȓ�q�Yu��@]
?�����O�

?�����O�	r5kq'.�����E����5�*���dj��XY&�-V�0#֍�LjY���$TV$��\�Q(a|���UU�8���j��idڊ�]@Թ:��.@t�!l���r�F��E`Q���Q�]ԙR�P�Xm�t��[�'-�_`:I�+'�R����j��8x>�u�-Vw(��ZYzh����S��>`z(�Y�WG��=�����z�v���o������Mj����Z�{o��%-���
�k�@�����X�	5��f���������p�NI�P?aOp}���&�t۱ 2�EҴ��f��'�R����vj[��*���;�\�Kr��

ŮH���z�w.@G�轜��z��.1�����P&���.�4��
=Ct�4紇�$�
9�6���t#Μ��r�ӔU������������������������������
�����֜���
9�7 &���� ��(�4�
�����e�
X�x�t��G�c���B����� ]�����**�4]���/��%-�?`�ZJ֡�
|50*��e�(���nɕ����J�o��J[�_L
�gI\�^�Ur��*��A&��N\�@G*��%�P%�P%�P%�P%�P%�P%�P%�P%�P%�P%�P,�?��templates/technology_resp/images/shadowtop.jpg000060400000001714152455614210015731 0ustar00���JFIFdd��DuckyU��Adobed����






��X��i��T�Aa��1Q4brsD��?�l�.�,���ݽ���<��`�/��-���i&W������9@�@6Y�(�
S�'�\�m�$��
��'p] m�.�9��-vI�'(h�9��m��M�9@�@kb��r���lS8NP2�
{�FN~�m�5��a�@�@]�s	���ئ��p���lS8NP2�
�g
���3N6�a����&���f�xv	\7�h=�[
�&���g�e�-=�_�7b��?/_��D�<��V�6���a�D�@<���M���V��gvW�L���➉������!��1H�);'ա�h�d�OD�<�)�	Y�>�H�@<�F��g%geq�g'���=8󲸧�g%g��"g~[
�&�y�l7�h���=x���Vn3�`��=-���a�D�@M�[
�&�l2�n7�
�c�7���3��m6�'�h�1��m6)�'(h}�k�'h	_b��p������
�v)�'(h�3��-+�sT�9@�@M�s	���Na9@�@69�'(h��'~���A���$��
���=��m��s�p_e��r����>�;^sJ}H6��T���noe���~h���wo�i�_���templates/technology_resp/images/pic1.jpg000060400000023430152455614210014554 0ustar00���JFIF��C


		
%# , #&')*)-0-(0%()(��C



(((((((((((((((((((((((((((((((((((((((((((((((((((����"����M	
!1AQa"q��2��#BRr����3Cb��$%ETc������4DSs�����5!1AQq"a��2����B��R#$��?�MQDEQDEQDEQDEQDEQDEQDE��;T����UR-�L��K
���y�c�׉#iy�,��繁��W'<њ��kƳ������#�d%�$����2|_J�*v��LGҮ�6�ZI|���A�=٨�_p�Z۱�'p��V�I]�_�j*��Q�\u�;͸��Z���F��j�SN�i��i���WȖJ��`��BT��&��&?��H>�+���K�ZS�:�U�m1or��Q�urq�%%����'y�yT%]E[�]��S�4�-�l�-..'�1ӿEܮԜ��Aǫ�œ�����#-l%m��;Ɨ�g��ȗjy���Qڒ�
7g���4��>��<���Za-�63�Q<�����V�V���Xt�ˌ�a�o�o�w���o5��Hg��~�PI�⛭W�H��
��+�� ��MI4�6�R)q:Z�B�OO�N��+]o��(�"�(�"�(�"�(�"�(�"�(�"�(�"�(�"��ܜCZZ"�����ѩ�{��-ZZ/ʎ�_��8�!>���X*AtN
��C
���D�
�#5��)���Jb;�8�\H��y����v*���iĪKaI�r�l�v��#�8��E�F����s	ݸ��,%X�Gx�ﮉеU�G}"�x}��&!HH�JGJ�!�
7��� �J^����ȸ����r׻*���}wk�0˳�(C�*#	��=i��ִZ?�(W贳�+��Ɍ㨹0X��)/6NJ)�ʯ��䥶M�Z�:�Ґ�q�ꑜ�y�:u*
��e$N�{��۵��㸞-$������k��{E��x�o�9n�Ç�R@�1�z��u,ܢ;%���q	±�{'���֐��e�k�)y�Zy	)��>���m�Q�1�t�уB�ߡJ�s���=����P���l�9��[�)Lh�(j�
������i:��Y��xM�2J��Ғ#�c�'��N�4���ԕ�dVC�
W8*��J��@��{�+|��K%���X�
Kѷf �s�QzB��-6���8��{�«�ec�f��]|�M��p�a�б��������7*
���[Qlo�ǗZл-mMù$���8�+4�j���ˏ;�-E�2��!ۀ�'����N�rf<�Qm�ીyǙ�V?T�J4�6�湮¦�g�X�ފ�m���@T���z�*H�����iZz(*�A�G\X#���Pف�%Ί(�����}�]D�&����2x�W�4D�B+�k<��������$��xm�BI`WSz�N��߭�)��E�QY�5E��f���?��7��*���G�(~�"y���	���'?�I��%���6�B}5QKi�6H�85�����%9�"�#r�KO�i۟d玣�&�*�O_���Mr��rp:��"�����> �|�#/����_QT&�) �q�_�Vv�*�.�aY �b��]�
���Z�%(uC;* y�Uy�V/����V�S���nR��G��0*�<d�n;
���`'�I��כ�EV?^*-��$�n�F�|�+\�-����)A�pO�H��YL�,-�&=��g�lF3����u�oZuE�<��/)hP>��O��hw"tX3�aAM��ZW���n�z��]NN-<R�c�E!��w�sOz��bZ�T��^%��=F�@��)���k���[v��Ci ;�'�=k�j7�Ҍ�o6HR��JO�R:�4�٬H��f�nM���cG`,�^
��+��<S�Z��4P�������&�Y�iss��6����/iw��CyV�B�)m���Pz�I����-���G	�b^��J	u��QRs��w ����|�gӭ옫i���w�h��)RI���њ�>��0H���R�ݐ1�=r}j�5g詋�;�z���ټ:��a�����;i��E�M��1�b�����)O
#<�:V��m��vtԹEGz������@d�I�LI��m츥�q9I�'���Y�3��%���{��sʒ:
��X�N ���,��t���]8/��ݬ����.��.)*%JN+]�1��A�W�"�T�ċ��/����Q<|�MzE��m	��6|:�8���o:(��jI��Ӷ]��l�S�)��5�qhC��_�v?mbݩX����i3Y*Z��%�����T?�>�L�َ�uź��-ED��'�j��[L�H��ˌ��WZW�Bj�	#�l:�'�* d��c¡�X.�A\�iꪩ��c��ih9nc�e����+�@��Up��U#|Y*G
!OO,�y�2�Ĝ�NO�ɮ�TH�y<zT��i���
��sM��>�D=��e�pf��b�zod�Q7)
ŗ5�B�����d_ `�G�u�U�#�HG	��>���
���!X(6�����k_�1u_f�E�3��*�]mD�7/h	�¤9ٗg��q��6g���2rCm�@��r�:�xWb��g����@��h��.&�<��l�24�ga�U�}��M��$K��vu�;�85%���̜������`��P�.8
�p�3�Ҩ]9B���OL���^.ۯ��j��B��6����h�^݈�\����=io����~�k"J�=z�M�%Q��ǵ�ִn�4�y���qB�/[A�t���((����|����%Mi>;[RVu����MMfRq�6$��r��{�����b��f��bBq)����m)��iG��޲�Ь��8�����]O
i@���:帾�JڧEGM�nW�]y\uj���$�'��'j�W���*+R{��y(%#��|�=�X!��}bK�����O�>4�,;��j�v(�z����Z���櫼�ꖀ�i
 ���σ��׹���o�V1-���裸��{e~��%�J�ć#7-��~�rA	c=zq[a�d(��&Alk�VW��g�i�,Ym\�K[�EJR�6�灒x��j*ZR�ʔH%9$�VHÀ�Y�Ke�*bN�����r��AӬ��h4�{�Fрr1�Ѩt�]m�-�_�8�Z��贫���{굎�.��n��L&@Xm��9���|~��4��ר֥�\@�V��()�3�:�c�9��*(�	�B[�#�;\w\g��zPm�~���JT�[��F7-^887J����+�����%E	^�NA���)�v�S��$����0��-��Zˊj���b���1��׈+��Zc�',���z����T�yP�����

T�)$d��A���he�P��DnII�|�J�Z�OE����.�6�QЅ�Y�T#�$���!ܯ-�j���J
�'��W*)�l|F��KN���I�.a_3NKa�ڠC�ذ�2�e!N6�R���@�z�!v��Fi����HN{���L�K��ۂa?q_�y^�tv~U{�fC�}�7n1G$�6�2z�z��+AI"��;%�=p@�ܩC�9uZW�����i)?"ǻQ����j�Yy�	u;��UKn<����U\;<���V�/3��*�#�鶨rB��m��� �ڰ`O���Pv�2u��.k O���J�ҒT��G��HmhC����`xT����2܅4�Z�T�@�@�|�-�MA]0kwmo|�cnYdVM��z|O����H�`-l�/q|�¯�Y�Nc����o	R��j%��|��Ƌn�(��S���G����u�%E*Ox���W��6
�tWa<ۮ��XP3�N+;AZ6��r4p��xokj4Z��8@���\[[i�W\
�`n*��*�Z��”�}\'9��޳�� �
*�S���##�޹�����R2����U��3c{�lF��`tT��
c��y���ƺ��
�q@�(���C�ɺ*���7HC}�B�1���Ux��t��o�[[�� q��zxq�Oq��IӟBu-)�{k%X�q֫��-�AM�l&�
����b����
���e���`��j�##b���+e�2��� kp�f���EF��J�KJ�Z+>\x�5�W&!
A��'%„�����i���'vT�]�v�J\iQ�P�sЌV����cl��{#���qas\���̾k�	pD�P�7��%�]P�Q'��0��HHuMH�s�8W����)����m/2]�҂T0����1LCR�W�-�LE��)q/:}�H#��k���I��y�7#Ӹ�
��X��	�))eiK�w(Y*�~��l���,-mX{��@d�dm�G�1V��Ѩm^}�q����L��z=k��goR䭨�b�iO-����)'#���V��Ü�&���̰���V[��`'Mcں��H����˝���x#ǭV�'$���x�RYt-Km���A'å.�m���F�"��,��P�m��$�dg�J���R�e�g�ɐ�Wr��x�Ť+�w���b��Ixf{�<�V|)КȋA��X|���4�ˮ��6�%�6�ʐT��<`���ϯ�&���q��Cn7pr�ϓl���sO���4�ٵ�r/�U�#�#��6<kYP��x�%W����v�Gϒ��
560�\
��@:-��[%C&#��oz.���"Hzއ�\S)@qG�2A�V�n�ě2u�Я��Xdžq]7[c0��R�q|�@
�ճq�dA˞���CQQM��HDzv�irs��Pڗ�Q�T����)J�Y�+��)���x�}�^F�g��|�V���"����8���ԟk���[ia��݀�<+׭t����`��f�z���WDZ���
����O�h��r�	+y:UnT'Ï+�O�I��ʛ[�RT��}
RZ�Cf,�O9
��ۑ�iݡ���%
+�Q�r<룲�+��m
�
�qN($t''�W)#����2�׮_��URc#uDF?�����E�(U^QEQ	z��e2\�W?��
,�5b��*܌BFN[qI +i�!Mj+�R�Ӡ|
O�k"a�z��A�ƹ-c
¶������UJ��ݜ��Uv�-�.��XR����p�R��Q����w�$D��?�w|�ָ� lv��q�}^7{��ri��	��G��Mb5RS5���=���:�o|Ҝ�-De�8+aZQ�W��E᙮6�X[*�‹!Ǿ����#$8F�6�d����RI�ȀȷI@
�8�<~I��$�>�;r������A#��E�J�$�-Eiũ\��j
��В�6�8�j�ܝ�����\��
J�Ts���x
�2��y�So{C��H����ei����W���~�R��#��W}��:<a"PYB@ �=9��Dk|��Sq@ʊմJ��s��n1�i*��oz�3�}s�OuU�6TI-��6��K�Wΰb��u#�H|`�-����xٱA{Ԁ1�~+�e��^�Dж�5��������s�M7K�ˌ�z��\i{��үg�^sNEaA.<�V�`�rU�i�2��h}�T�R�ѥF*ܓ���5�j�E\���o�+sh��ddLch���˖��Q�,Ml���!��nB�Va�d�����X[q��!?ͬ(�ᐥb��\� �m����'݌�����A�3P�FHq'�U�a�YĨ��dpUkk�+g�
�^�Zޱ�-j>��.2�;���R:r@��>�+KȜ�/�����=�#n	��Z ѲV�2�9!��I
�3����.i�)��9���i�����Ѷ��`i�ֿ���1ؘA9vi�]:s貮ׯ[�1n\G�Yp<�J�P��G��)���mA !E���e~�N=���3�,ڦ�&6�����ae*R��D�OuV�a�[l0S
�	�qRsݲ���3�}MG��EN��~j�XV ��:Q�:�MU�d��ִ��
���9���P�{e�m�sK66�֖P�yg�{ꡋP�����c{��0��jϛ������ ��9��|q�\g^S-���*./q*O����Ř����†�:���]zs��mn�}��e�?^����>�������p�������r�T����q��I�f;*U�2�t�qH*F��BH���5;lGm-��B����
� },mcE�h��m-
p�GWeZ0��R=Ϻ?7��zl9���e�0�*Z��R�8��_Q[/���u�$w+�`���h�(��²��(�%]F��P�s���G�*��Y&�g�]PĸQ�:�� ��Z������g�I?�
ɵ����%Kؙ$�Y����x�[�|��,P��|:Q�_؂�;�޵�Y���q��%)s�]B��MY�1
�i��֕+g���]3�-�Y`�����~=j��+�2'5�`�Z�] �X��8�xW��6)�R@���[�;���R oA)B�|Ny��W	NAL���{�A��
��XY����f�rw^>���
���!X9dz�<�Yjʜ	Z����h��Sf<܇�0�t�?ډ�j�P�ϕl���em��Ί�Hݼ인8����weDm���T�
 :�W��VA� �Bs[��tިj��R�	QR��_�V��܄~:T��~�i�}�?�g������BpI�UW gI>�=��>%��}d�T���ēb-PuW�?i��Y�4[0o�+@�=���@���rL���T��|I5K�T�0n�e�uh+�zҭ��h~�gm�Z��+L�B���`���tZ���n:�	�H
ld����·���u�Ȟ���;W6',�`2�y�/fK�n}���ꆻ��	-���ˍ�,�u�䕲i�����h}����J�۶����oT@��oB\t�:�:��=��1	��H��衠�ٲ��(z�bS�#Ke~~�i��9˙��d�Y�1�J�^��4�nif�ȟ%.����m	�3��O*y�Z�Y,�tz+N�jVG&�QEi�QEDQEDQEDQEDW +�Պ�!�Qv���.�rY[n���f�>�E�V?�&�O�\
A��R�=��%���iI�Vm�,e�Г���{�[�1�%_��F����`��MO$G�=¬m[P�²��gv���m�)X*L|)����:�J�Ґ�
��%i���g��c.�	���-��@��r�>'ίF���"���u�	��	�[���x{�Et�����-�pHN3�Q�5 >�+S��p��0���NHAi��Ն�������N�{K�wG��˚ވ�Eο���U%A)^�-9���5a���T�P@G�"|�D��eXO�'
��q��f0]݂���Ǟz�����6Y�_<�`�Ͽ%�$�xr*�Ґ�J�� zT�Q*��q=�7ČT�􆨕���!��̇k�U��`~!L��x��)x0��ra����(m%]J����IO��j�JII�+Cg�
J��<� >n��>	H���d�q.K�$(x1c�d�զ�f���'�KŅ��oU�>�:�������uF
�G	���z"?c�y2�]%J��'�	��m�"ce�;�x�T��5�V1�vп�P����0�V
�Kq���?�kvnH�Z��ng��ŏ�䡖��
d�(�$�¡dv�ˀ�ԋF�4!���r]�ڕ�R�+ּ/J�x��V�#λ���O���>5ؕ�D\�EQEQEt�*�^�j�C"��cp8D�-D
T�/�-2�y.�z7��W��qU6l��hl�N=�,��dՊ��eZ�y����&[h�<d㊰gF��D�$L�iq�Zb���rCm��,9��U`�{(&l��s���H�vs%����Q"�Q55�ͬ�\����Y@?Lf���mH_�m2+�!_Q�'���V�����HE��E�D��|]�cQb��9�^?�&�cB�	!0�Ō<�e(��D�f/�����y?:�*cq��M0<�q(��Ek�N�p44X+\$r�G����U�;����/���-(��
,O�{M0T��O�����������B�5ZR�#*>@TULp�b:��
�g�ֵn�"<d>I�-��kSI?��Ŋ��2���ױ���j�1vR��m>�UQ���PU6s-��J1�.�u���dʽNq��	w`�*�խ�_Z�$�u���2��z�V�ӑ���������ϸTW�W��"se))�$�.My�ր�R
S��8z��*�IX–G��$��^^�������<�1�۩Y�)���֗��=*DE��>����y����C�S�`���W��5�.�@����1ݶ~+"�/�Ӷ�Og�@�A}^Ixg�5v��)�AR|��Eye����.ĒV8�A�D��F��_��(^ٳ�8D�#�Fz�'=jc/�L�K͡���R?{R��a(
����"TS�N(��sRsTm�q	>������"����q��l/Q�ƦQEQ_�E}��8�("A��r�Ky�Z�t
�NpG��Z{�u��[�II9A���WY����~�J�G���r����2F@'u�P�+5ة�E�1���C{��vyq��a����/p��2���'��-10R����:HAW��9Ǻ�]O�;P���:3l�[���$�>"��\nv�V���R�e�v���^>꽷jg�fdn��$�PǺ�4�oד�3m�^{�k=M4���ˉQ<���鄁T/���}!Jq��JV�\�Sp�a���t��x�{Cw�ß�(]���J�i�.ڣ�������YͶ=����>�����>u��^�p�:��b�EIڻ�tp4�����ZZ)7��duJ0�k՝�&�G�Xk�
F�_�==��;n>����mm%Y�+��ϴ���3gaŏ�|�ϊ�f<xml��1���ap�
�Б��{~�����iHB��u!��k�o��N�
"O�Qq_.>u�8��NNp<k�T��O��s+�����8]���Qs���P�Kq"��eg��\F�:�8&8?���S�:V�!m(,��2*��F{���_���~U���{��4l�E�nG�X�G��ƨ�0�')�꺐��MI�v(�q���;�6�WD�E�l�T�?1=��"�jԷy$gT�⦂���S\g��!r\e~c�I?#H;GL���o�4�N��cp�W#���m͟�p�UiJ��G��<�T�u-�&T���~�I�ѷ{���1�z�ϰ����uj�B�0�9��"�+�xe�s2��h�MF7�Ur8�hn#g��,�>}�N��[iO�>Ujť�~H�%�o���I��T��)��~�:�S�{l�+���@�Wx�/�QE��(�(���آ�"�S)5Ҹ袊"��Z�MGw1��G���nZ*mj�!�6�+���E�dIRn.Bq)R����ß����-8�{�SD"�sg�ԥ���պ�4=(�� ���䴪�cY��b���C��V۴Z��N�l�-N�<�j|h,G=�J�B��(����mu)k�}E�޶:����>��8�})
m|��1ڐ�4�զ��:(�k�`��
��n�e�gh���iіX��V?)cy��E5ij�m %8@`U�{s	�QENn+c!-%=Q �<+�QEQEQ��templates/technology_resp/images/facebook.jpg000060400000000751152455614210015472 0ustar00���JFIFdd��DuckyU��Adobed����






����h		Q3a2b45!1�BR6��?�.Pf�GnLl�L��┡0���wNuB����}y�ԩ)�N�7�I��ELi��B�N�Ҿk�zo�Y��U6;SH�a�7YF�w���%aZ3�.�S(
WRf�5�$'�hDo�Z���rU�y}���l�Dio��+p���y��_���templates/technology_resp/images/separator2.jpg000060400000003113152455614210015776 0ustar00���JFIFdd��DuckyU��Adobed����






��-��r		!1AQa��q���R�B%�"2�����?��Z0�W"��hV�`V�j��1X�P#�P�q�c0	�`f��Ʀ���Y�E�8p�1�c�%�P�fT�Y�|�e@%�P�fT�Y�|�e@%�P	��8p�>`%+6�@cSK@c0=4�@c�[	�`f�`f-��1X�^�1m�1Z��)�
�@(�U;@���MWH�ݵ$��n�ȗ�(��mm�f�����nߌE�@f�`b}���4ܲw�k̭چԲ��zi�_ #��:=�U��J�p�S=h��I-t�(�ԭU_!y����nH�
��)**���s�- :ʒ��Q���zΊKk�@u���*�=��<@��_o�:�J1@	��iIVoִnt������`�(z�\Q���>�qG��(��';R[��Z~�����柩u�?Riִ]5t�)�����@u�V��t=ZT	�J0�ڐ��I,|�)�4�k�'�i^���
~� Jsu5��N�0,�m��t;���];v��5�YmA@�sE(��Y��Md��`,��O�t��s5I�Hg0St�04�[��Lu�h��M��V���v��*��Ѿ�|�kmO�m��LR��g4@ʬbOۺю�9�b��@rVƂٞ1��8����, ��@9j��~Ԟu���Ϝ@��c�b;����N�մ]�9v�5��yBI�5��zdҚ��wǥ�����i`�ξ@U˾nIv�G���>� (���Iv��(�nE���㑱|@���x���=)��@��� �_��������;	��:��Bq����%�A�������@Lw�M/�;�&����K�E��4�Pq��� [��Ux�o��Z;�"��P�s��'����v7�D�����_ Y�nO]@Y�r�Ҡh��p�{�uf��Ƚ���w�f�|��.��%���w�)>���]�4�t]�4[r�v.��M@kMw�lҚ�ޟ�1�`4o�?��<J@oO�Fq���g�U�R�K2��]���SPtq#?��G���ٛY����6������templates/technology_resp/install.php000060400000004375152455614210014137 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$name = 'Technology';
$thumb = ACYMAILING_MEDIA_FOLDER.'/templates/technology_resp/thumb.jpg';
$body = acymailing_fileGetContent(dirname(__FILE__).DS.'index.html');

$styles['tag_h1'] = 'font-size:20px; margin:0px; margin-bottom:15px; padding:0px; font-weight:bold; color:#01bbe5 !important;';
$styles['tag_h2'] = 'font-size:12px; font-weight:bold; color:#565656 !important; text-transform:uppercase; margin:10px 0px; padding:0px; padding-bottom:5px; border-bottom:1px solid #ddd;';
$styles['tag_h3'] = 'color:#565656 !important; font-weight:bold; font-size:12px; margin:0px; margin-bottom:10px; padding:0px;';
$styles['tag_h4'] = '';
$styles['color_bg'] = '#575757';
$styles['tag_a'] = 'cursor:pointer;color:#01bbe5;text-decoration:none;border:none;';
$styles['acymailing_online'] = 'color:#d2d1d1; cursor:pointer;';
$styles['acymailing_unsub'] = 'color:#d2d1d1; cursor:pointer;';
$styles['acymailing_readmore'] = 'cursor:pointer; font-weight:bold; color:#fff; background-color:#01bbe5; padding:2px 5px;';


$stylesheet = 'table, div, p, td {
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}
p{margin:0px; padding:0px}

.special h2{font-size:18px;
	margin:0px;
	margin-bottom:15px;
	padding:0px;
	font-weight:bold;
	color:#01bbe5 !important;
	text-transform:none;
	border:none}

.links a{color:#ababab}

@media (min-width:10px){
	.w600 { width:320px !important;}
	.w540 { width:260px !important;}
	.w30 { width:30px !important;}
	.w600 img {max-width:320px; height:auto !important}
	.w540 img {max-width:260px; height:auto !important}
}

@media (min-width: 480px){
	.w600 { width:480px !important;}
	.w540 { width:420px !important;}
	.w30 { width:30px !important;}
	.w600 img {max-width:480px; height:auto !important}
	.w540 img {max-width:420px; height:auto !important}
}

@media (min-width:600px){
	.w600 { width:600px !important;}
	.w540 { width:540px !important;}
	.w30 { width:30px !important;}
	.w600 img {max-width:600px; height:auto !important}
	.w540 img {max-width:540px; height:auto !important}
}
';





templates/technology_resp/thumb.jpg000060400000011652152455614210013575 0ustar00���JFIF��C


		
%# , #&')*)-0-(0%()(��C



(((((((((((((((((((((((((((((((((((((((((((((((((((���n"����G		!1AQa"Rq���2T�#B��$S�3C������45bcrs����/!1AQq���"2Ra�ѱ�B���?�j4H�X�UH�UQ��tT��M9TR�@P2I�:H=hFP�|�ϝ4̫������5�ӝEs�F|��Ϛ���Y�PdFVu���y���kYn	�@���VY]��υK„����vxn��&;s�o�Y�xQ��@V4�������V�����i뉢�����8�A�w`��=)Y�m>���h�*6�cϡ�CU����Ɯ�򬚦��[��%2�KdJ��Cs��1J96�0tՕ����ZȲ� ʺ��c¥4�QV�xf��Zʷ[x�>��n9��@i[d���2�?O�j��15�����)R�����,�%���g������ϵ�<��r��:P�̢����3��L�M���ǟ}`[h"���T�F黻�Z��{~ſ�OR�b��q�c��M")�	�F\m!a��I?���S�Ͻ���Ҽ���t�x��P0����q9�κ$K4��@�f�t���f�-���,k�؏���SR]�P������ߟ��
u��d+j+��;9�k1[���@߷��3��-�-�]���Y?GG����g3H�p��2�|��Jr-����(U��P	���{��a,Ea:�m4m*����)Ө;�.j�/n{>Y��8*pwA ��f�G��r��B��!������;�. (�(�"
���Fq�d||�׵���AI7�{1�1�~���t�ZWS�q[>��a<��ݛ�W�?f;W��E��$��.<�¿�@��us�Vڥ����[\j��~m��dool)��?M�Unt���N[}Vg1�Q�7!`��ݍ��:�]��f��^\�ڄv���\���o7E��O,���+ɶ�MN�uMN�ZS|��G��~�����
75�$��.���_m�?F:���JR�nw�G2K1$㗕v��7��ghf��|bI����ib�z,gh�yr���ιR�8*�7�JXIy���Ϩ�Qo;���o��5\�H�N�>UVm�j�wSdgv<~5m�򨴬:&~ur�dv�,��ي6w!H�c�Oγ�ʷ��#��ǭ<g����X73~_���+ͬ�2
�/Կ,�/����iÆ�>�y��?�=�3�[���z����Ҁ��#�Ƌ�|��f��_.v: _�Z�j���?³�W������i=��lֶ�#F�$����¼��=R�rl�S�g�G���v}oM����h�?�ͱ��?��x]s�&��O��Y�9߸��"T�~����kxh�K�x�]oq]�M6�6���C�I�5�;�C��t\	U����r@# �k��S�/c�1��+�!S�&��$s��Ji^��=�J�o�Z�#�rOʼn5��H�HZ��N�-Wn>�}�Y�.gY�Rϡ�P��%������Aq˔o���Ma�Y�L��Yפ�L�G�=*ۉ�Y��dH�t�s��IǬi��K��4��|�x�̡�<�id��w���������t��l�,��d��kz\���g���J[�.,4�6+����?JE�v{�ŬZ��.�B'�>ONY����qp�A{�>v��$��;JE5�HxRڗ\���#������G�`ph	�Q��ֳ����*!��N�QFG�>����\~!��r�;�>"����}�
]P�L�#����5�=WP�4�?Xէ��ngé�0T��#�k��e�K��k��uy
ޖ���Ѹ��`+����
��-�~%d���}���/�v3K�5��me��533ܰE�n[02G���^/�ݕ�ɫjB ec�7�!F�wr��ڮЭ��h�-���l�(��9�s�w׀�if�ti!1[,8h7gp�������[wRp��<K�����8Kl���q4���d3�Ѣ��D|�''�	#��]���tY;Cml�N���/���~�Ú}R�_��h���\ܮ�<h0P3��wW�>����.P��6FFN��6H5�LU���\��	�7�����s�V�qٜ�����rܹ��J�{p�=��r����Ƣ;>�7y��&:��ckg9�_�L�!7Z-��="����YeP�aC��>g�s��K~��m��f[�k�FA#��3�hv��׫e5�bx���<�1��:�TYFc�Q쨎.Y�M`��(+�9$�|��<�N����6v��,�jGIҌf#km�9+�#Jz�� ^'gݓ���ӟ���Xk{�b�,r��������i]�����K�~�����6�����y�E�9t�uT�Z�!��7�AxQp�*���T5��[k-`�u��hؐN:��Y��զ���ml�,n���s�g[8�9"+�V0<i���J��i-sm���ȡ3q���=*'�k.#0�jV"[�m�Ǒ����F��+�]S�O̧Up����'�G���d�U���:g�Wf�3�;��Z�gR�./��8K�aX�"�'<���]j���Y���Zt�oB�Vs��k}�]?V���k�ӔĊ����w��%�x��1�F�C~�;��
ubxJ6��>��5襇O��eet�ڮ����'���R��{;0 �_�xǴ�{$�`�j�`�+f��Vk=YFR��ޜ��MIj}�EW3�P(�P�gD�q�?�8�b����lW>�zž˿�M�ܭ��M"����@���c��pH# 4y����7z棼��m$��^G�t��\�4�d��,�O^���D�¤{��w>�h�g���+�`wG̓�q���-(��>�ɥ�1�ARP�ͻ��]�1��0�t���,��_��ȟ����%[|x|�k��5���[�dI�n-��CHT���T��(���k6=��n�]ZV���CJ���0$�#�eEy]�du�N��Ɍ𤓄�W��Q,�6WCє��*
m@F֬'�9���rci��ʫ����}6Ը��$9U��4�̨��H�\g�ʕ����n.���;c'!S�iW�;pih��&��-�a��b�/�b?P�]:�H�"0I��9S�`Y��p3�"���P;
���v������\��U�T��u�cV�˜xԚ�P&�H�J��<�{���%�^_T��%�Ο�3o3�͡؄e[x9�V�e��ˁ�$.?�o�3A���T䆞s�ex�Kٗ�ֶ`�^j�P��:1�)�o\����]�^�"����;��U[�y �AfH����i�-�ݏ�P��b�����}��J��4]WZ�'-�4�<�c��O/�y��k1Z��:u��FLOqۨ�����t�ץ�=)Y_��Dg���F=��?N�U���������ki}����=V㷝�����^�/(R�Q�9���**�a���C��\.�V}��e�Kq�N���;�yI>[�k���[���
Vڴ|R�O��>�T�n-4�R�(U�$/&�G>`��ؾҞ&%җp勛�d��>�j�4R��J1���Gѹ���~]'b�H�B˥�=��8����Mg��[]H%��IC0'�;EE[��X�kk
6�r��aEW`QE/�v�����oh�Za%�Xe��\u	�u�{#��ͦ�-�@iZIS�LLz�����d��׶p^�øM���
��q�?a�A}%�ո��߉�UP���-���ֺ7�ģ�q���f�nꦵl�?��fjv�t��/,�!VK��i������q�^[V��
���oF� (�]"4D/�3���|q_O����i$��������k22Keop�Ș�f~*��rUw�/�|:rp�xҴ��K��iS�--�R�'f���
�ny����_M
���]�Aio$�OŒ c��b+��Y:EiX6l5�?�´�1�����`��xUU �d�JKL�����k����Ž|�3lO�i>�hߘ��Uw-���F}� t�M6q��o��9�9t���:c�%z���~k�X�6���oҏRo���)u��vi!��h�&���)�HZ7��a�ߩ�i%�/ɼ8����M���ߥ�ߙ��S�UN�~�ߙ��V}M�17������~ߥH[���C��P�X��ԶR��[P�mW�d�>�O%�2���m���##�,�s������tW��*�"�[L �˗u��c�"�;a�G��錎tGm��e�� .c�Ǡ������z���m0{�kx����x��$c�����(�"��amʏ�q���B��<��vǑ<��elP'=����+&�ܖ&�u8�@$�W[��;��'�C]]$hHbH<��p�r<i�clh�<xm�����x���6��	�����vm���>T5��6��=]��iDZ�|��2	��c�T���-(�F	Q�5��dV�t!���N1α$����rqׯJ����{��X�07bݏ��V���f�CJ�d��5�p��GO���k��4k&���i�'�ހa4���>8�M)������
�Ǻh�tҜO/�O/��{��8�M)������
�Ǻh�tҜO/�E�ȅ]r����{�X㯁�� 
���Ɖ�|�cϴ����(X\��5�8�MW��B�No����~ʳI�<]�ۿoPNzyP��templates/newsletter-4/images/index.html000060400000000054152455614210014341 0ustar00<html><body bgcolor="#FFFFFF"></body></html>templates/newsletter-4/images/message_icon.png000060400000006701152455614210015513 0ustar00�PNG


IHDR))�`�tEXtSoftwareAdobe ImageReadyq�e<
cIDATxڴYilT�>�ڞ�0 9�%�%Մ%	$�@C(�*$P�J�"M�� �WD~�5�*�Z!Ѧ�"e#!NU� ��Āc����Y_���8H��>�f�̻�����{�D�Q��W5�B�*�J��d2Y�E=�x<dK���lq8�xV�v����r� ��֠�2c�����%�? ��A�F#��@%�H���N��KIII�����#h���o�9h�6���!
�d(8$�pXɤ@�1��"2::*#X��Ȉ$���Ȝٳdƌ'����1�!����)��h�ј*�x,���FF���G<� ؤ9�Ţ�	>���G$Ih($|2~�,X��=�˵ݎ�/ ��mń�7<<*����޺���HTn�ޒ��V	����Bt������%�%%pu����H�c���� <�,<_���M��g��:��@s���}�7n(���~+�=��s���H�?Z����P���ᐙ�3���Z����Kdd]0�bŊ��v��{I�o�bq�)r��AZ��N�4(���x�b�ZM$
&�M��o����s��3#���!A�����u���;��t���Ǔ �K�li�}ާa�;�v�I����Ul<� zz��b�ۤ����YV?��s�&�~2H��B��hD\�̍�M�x��8�_�y��S،��}�条c$v��U��������#�~�Hӳ�>���`�N��͑H���&����*�C��
��p��;�;2�{��n�˧��@�Oʊ�$'/OΝ;W��Դ9��{ 7���۱"�io��<���b�`�e&�3(#��x<�m1ƒ
��20\o�)u�~vDpji�z��w߅�E7Nv73�?z{�j�{z�B�4_�&���7���[����Hnn.��'��A�y���aU
�����1�
?�-`��Ǎnh�
�� �=�P�f���9�v�ڟ33�S��$����6h[�tuuj�
\Y<���i���o_v�J�
!(f� ��I����g@��%���!33�������T�xU����r�/_}u�fժ��8��?�A����Gu�C�ԩS�C-������3��~�`��)�.���J�JA�缐ۅ��"O��q6�Ϯ_�.��Xd��翖�s�B����"r���UK�,V����zE@��^�t����f3)�hA��-;w�)�W�T�.]*۷o�F��q�K	������J��������S��R��}H�Y�z��W����\gϝe�T�\i����GU�Br�*�5�b�k���Td1Os`^-����_��w�-�-[~��1 �y��\�9Q�߼ys̭�腲�2Y�n�̜9�y�Y2i�|r���Q?�X�~?Rl�{0\HUtM��Xݰj�	��K���`���׶m�.��?��+XJ�K����%�颼�H���
�<^�z�lݺU-[[[+��]Z�Y���$Ma�W���t��b�=�#W3�<�Փ�U�f�H^~��R�0S�}��ǯ����>
j$���1>N�2E^y�Y�~�|����;�`�!�4����y[n�@����x����J+,��c�`{{�v�(������|��2ej�Z{���r
��嗕�2/���7o��^zI�ޱc�|����wZ��׊����v3��uB]�8\�,��vD`�CKRPy�	�S����ߧd.�[�B�_':����
صk�477˲e�dÆ
��ݻw��9sF���q��"g3 t���8j�@_@u��[��|I&���Yb"J0?r+����]Aњ\5-�d�u���/����
(L>��x�]kGߥU�i�S=��enn���_VK��Y<v܄`~/#X23���j�_WKBs���x�b�\�xQf�O����?��|��'���$���^*�<g��~�V��F	Yq�Ų�/&a�,d���kQ��ܬ,���������z��N��X`Q;���Ǩ��|d02�pجvD�z����m]���=W��d�Ŗ2%�;�����;3҂i�l|@���ҥKJ�iӦ��G�E	����Q#Ӎ\�Dѝ���VL��z�@���5�gx�˭"O �����`:X�-]y��+"-pa�'NHuu��$��bM��I���$�B%�}���5Ғ��P<�� �JJJ���� �:3�: 97{�liņ�y]w��H�?'��T���KQ��wr�b��NW��VN�<9�
ܭ'�3Щp����AΥ��*��#6��Ӡ�p"Z���;IS��x�E�E��_�梾���x�~r���C�E"�����)A�8� �	t��A"ֆC�Ϙ�h�|ugFJØ����g�yF	�8]դ�cY6��@J$�R������vuw)�Ԋ´[]U���s$�:�B��GfϞ����N|�^��6^��vR�.Af�n�tcU����Ii� ��Yc����{�-U!�Ч�Ǔ�̼yU�8,���cj܏�ϟ�/���ŀ��*�� ����:Q
Ŵ&am*Z�	�`UÒ�a�T�Z�ufz!�—h���[�'�Xuɖ�=�8�(���6���E�j���b:g�i�肛��3���Lo��@�,����6p
F,��s���4�6+".�b��f&�͡��<=�[n�����aŶ�[��|�]o���e
����رcc��e,zS@S�鈾�"�<��0�� �ُV���!ԥ[�x0;7��
	쟼[�G��A9�D�wtvk%���u� I��{#�mƸV�q��r��-kRçn�lڴ	��Tpp�8l�&��4�� y�f�.[�xx��W:}>�gQ�"��*'F
pb��k ���6d��NW[�:P!6nܤG.�Ӧc�i'k�23���Y��fC�e�ߟ��;�/���Fʕ���۸�'�����T���|�WR^^.�PH�O������b��S�?�p�7�\t���"�B���4��G$�8�EƂH�@�C�b��>ܧ�|�-{֛#ӧ��f4��P�4���'A�-Ǐ�z��
r�D�bgȅ^n�,Mךt�G~c��0ݪ4�)�M���'�|R�=4�)��+T��MnB�Ż���Nz1�S��76��s=3$Y�
��w]Z�C�x�@�EE��A߲�4jy��♻�ܼ|-�333ރv������)n���_m�t����cEㆶ1S�,F�hϬiAR�`9�ׇ�KJ����^��0�s�˙�m��������V]�~c��6��yHw���aZى`����ax���vAf����ÝNn�{��ڪPVb�r*Ba�A5Bt9�X�1/?���r��/X,�>�țbv'F�IEND�B`�templates/newsletter-4/images/bottom.png000060400000000653152455614210014363 0ustar00�PNG


IHDRX("ۄ4tEXtSoftwareAdobe ImageReadyq�e<MIDATx���;N�@��J��.���`���tHа	[�h�IH�qCC.��i�G1��4��dJ�u@Α,� �X@` ���@`,� �X�����6����Ɂ[��z�~~~��݁�ܷu�u��j�0�>n��V�/Ͼ��@��X@` ���@`�'��e�g>����z	��Z}�A�"+�7�na-������lL X�����5	,�l`���
�i4�h`� X{?r����9XY�6+��*�IEND�B`�templates/newsletter-4/images/top.png000060400000001756152455614210013666 0ustar00�PNG


IHDRX&��rtEXtSoftwareAdobe ImageReadyq�e<�IDATx���i��0�a��ysɜ`N��Ijlu�#�ۃ�O��2KR��nIF~��0��`T��~�P	B@��!=�#��c/:�#�]���+BGk�q���g�V��� �{�G�s����w1��!\�h<�e�a.�1�����jL)f;���0F}�#o��c�Ƹ~P�[>1i(?O�G��C譆��_��*�ؖƋ���ě6�/�_a���;F��"�$b��c�b�H��xc��NK�Ő�\�<]��hg[�ϛF��P
�hb5vY�H$	�=�bі�-%]6�Ϲu�Ax�~.�e����1I
�V�7W�pa�	�6��:�r���:c����U[�ɔ����,����V�˕[�Fj��r����Y^S>XM�������
֔�6�0)8IK�m��q�#Q��m�S&���s�uʱw
�gb2IqX#�4	
o�j!�gW]m�����'�� ��k�
�9)(O#ӿ�,zli�_b�ے��K���m�"�2,o�iA�32O��r���Zr�E��ߔk�˥�WscA8�+.ӎoxpM�ڕ�4�Ǥ$ym%�Y�e��e�G�(���:�L�b��u|� ��'��8�Χ�f*��gE���s�i�q��9��aԟ��w˥�񍟆�r�I�(�	�90���"$wy|���<;S���̅g�+&��)V}'��Fr�5�c����V)O���|���=�68sx�q4�j��3�_|}r����N޹��r��:�4��jx� �5�bS�������w�(�}�;�Q��!��E ��G*B%��$V�l�|�zB��T�t[2�@E@�AȬQ@�Ah8�+�� �"���	�yEH���?0���c�IEND�B`�templates/newsletter-4/newsletter-4.png000060400000006144152455614210014150 0ustar00�PNG


IHDRxv4���gAMA���asRGB����PLTE��������������������������������������������K��N��k��n�����i��:��#v����d��]��������mml����R��```RRR�����������vvv���������???����������阙�������+++���Ɏ�қ��t������TIDATh��Z�vۨ	ô��ґ,�-?������GJ�N;��j�+�	B�����`'�^��B����؀���
~����~����G����K$o^ɯ/��B���B�G�R������'%�u�h�(���٧J��Sg��t:sna�ٴ��f��n,�ns8l�ݡ�y{�o�y7_��m�^���o�Y"���b1o�E]��ᐙi7'�9�|qhW�Ŝ^�E���ݴm��b���!�̡��T����e�B�u0�4ƈ��Ԭ����g�Ǜ�
]�R����?>ş�?�o���֮��\J����2�1��c�^M��uI�t>�>"�x>��t��)^r��)>�t��z�ϓ�>ޞo?��;��o�������3.H���re1�1f�KeH��b3d2�B9?-c�"Kf��V�q�<|��c�<t�J�J���E]g>�*u���Ue�GN����(}"b�5�n}hc�T((�C{�7�u�<4�>Q�C`uU�����&$�GhL-j���c��_/t^��7���PQ�w2��o��?���m�����s�Vfe�ebY���e.�a�w���J�E\�<��e�hy���&^�Rr���$�&�`V(,[xYJ�&9����sP��gX��P}1�Fl�2�h�J�D�MrHA�>�d�0^X��cZ	̣w܀����L���i�uQX�j�]�p�Z���i�Z���h���
RW��O-ڦ�p
)�P�5�{��JT�EΙF"N#�CW�����*�YL��`*)Y�Ei�4aR��"+#�2ƙa�GNC�K��v��E)x�u�N��9sYF�w˜�B�=0v%�L�$�\;)�L�I��4��y�{i�ϖ'�g�q]�����餽�|�(tRx�,��ũKjP
��0[�)N�(�Ż-c՗!�?�K:��-�Ne`U�0��腩�3p2��0.&����J�_1*D�
OT\��b�h�D�����b��D8T"&R^�&�ZY+1S�h���Q�,ߦP��Ģ�#�ߖJ*oK��e	�Gyf�����$��䌥�H��^TX��M��Z6��^ឞ{omj{���Đ�laK�7��
��˭C%6<�[^���HD��c�=�H9��C�b��Z��n̸��	�$�x8>�9Rj ED��¨40��X��8��A巅W�o=&��=rX}�]����vh�^Tf�F*�π�ظ�t#!�9���@�.�T�Ik��d���ii|�EQ��l���h���`j���E�Wlb�L�Ɔ��5!�'؝���b:��X�R�[����TcLݫ�|%�7O&�D��n7)v��~W��RS	�&����OB����F#�O�����ў0Y.G��ۧ�N]�˛�d9�u���,���n���n����x�1.&���\��w}����/��X��_�W���ww��
7���qu�E��c�9l�E�^T�)�:�!> <�^�J&ˉ*�;G�g"u

r��,��ϕ�f�f�!P���@�u��b5���W��j�^$��=�&DU�	�|�%��rR�¦���z� �b��A�5v~eB���ns�t���ռmו	kP�W��p�2���ڑp��qT�Cč��F�
��^�eΪA�'ͼ��V�cM�震����/����7�a�bɑ�"Alb��B�D-Y�|j�:X�G0D<eg ��a�Y ��"���X�K����)9�[�Ef$ǐ�-D,�[�2@�*_�:��D��
����'@Ջ�m��W
��fM_�l���l�w����U�=w������6��j�>�{�
�%׵~�yl�vՎ;a�����]^�G���8�h��^7ͱ(�#ƛ痈���۷����~�=���6�+��bE�H�D��t��-%���7X�@<Og3���M/�����o�"�9��.��k|=�-����lJ������_��n��������Z�	����Z������B<����}:�͟��CW��uyJ�u�橉��(l�~��[���'��;(�^�;Hy�w��.�}/�J�~�nw���#	��	��܎v�^�OF��hy��~�O��͈��%2��Ͳx�I����o9Y�&77˛�[R�(��Y����P�
I~4{�1�[Au�r��3�Z�G:��~�Q�� 9��~@У�>f����<���^�w�^yH@z<����L�J���	z�
'�������pB������^�2|���'������ ���meiڟ���R���p�)q�����]��À&2�p�؉^УK�@�K���P�0�,@=��7eI��%,"yi���J�ᓄ~��A�؁�Nb�8<$�� �N��9cId���)��Q���QI��&b`��NP��X�h��g����C���e�;��ݶ�C��Z��f��L�J.�'ҾN�79�
�z1^�M R��x�)8,����]ktj8���q-8�"Xq�H�h�M�&�`A���AR����q�n����ڭ��KyQW�	<�y����<�*FcƢ�[�2���Jc�B�t����*5fTd9�D,����x�<����6���n�&�gs
�uSz��sjOv��J��Շ0�fӋ�kB/��fC��TLT�u��XU��ۦF�W׬���#�:�AbD��L�w���5��Ƙ������=U��)���i��YF��2��E���]1�LH�G��oR�>�_
!�t�$�I������}_�D���]~���O��{Q=B��h<�_c}��~����#.�<Z��;lt1�[���0��'�O>}�Ϩ2��~�,^�+���g���3���R�P��w�>f�N}=z��6KFόp>�G�^�_�	a
��{��IEND�B`�templates/newsletter-4/index.html000060400000005373152455614210013105 0ustar00<div style="text-align: center; width: 100%; background-color:#ffffff;">
<div class="acymailing_online acyeditor_delete acyeditor_text" style="text-align:center">{readonline}This email contains graphics, so if you don't see them, view it in your browser{/readonline}</div>

<table align="center" border="0" cellpadding="0" cellspacing="0" class="w600" style="text-align: justify; margin: auto; width:600px">
	<tbody class="acyeditor_sortable">
		<tr style="line-height: 0px;" class="acyeditor_delete">
			<td class="w600" colspan="5" style="background-color: #69b4c0;" valign="bottom" width="600"><img alt=" - - - " src="images/top.png" /></td>
		</tr>
		<tr class="acyeditor_delete">
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
			<td class="acyeditor_text w520" colspan="3" height="80" style="text-align: left; background-color: rgb(235, 235, 235);" width="520"><img alt="-" src="images/message_icon.png" style="float:left; margin-right:10px;" />
				<h3>Topic of your message</h3>

				<h4>Subtitle for your message</h4>
			</td>
			<td class="acyeditor_picture w40" style="background-color: #ebebeb;" width="40"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
			<td class="w20" style="background-color: #fff;" width="20"></td>
			<td class="w480" height="20" style="background-color:#fff;" width="480"></td>
			<td class="w20" style="background-color: #fff;" width="20"></td>
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
			<td class="w20" style="background-color: #fff;" width="20"></td>
			<td class="acyeditor_text w480 pict" style="background-color:#fff; text-align: left;" width="480">
			<h1>Dear {subtag:name},</h1>
			Your message here...<br />
			</td>
			<td class="w20" style="background-color: #fff;" width="20"></td>
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
		</tr>
		<tr class="acyeditor_delete" >
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
			<td class="w20" style="background-color: #fff;" width="20"></td>
			<td class="w480" height="20" style="background-color:#fff;" width="480"></td>
			<td class="w20" style="background-color: #fff;" width="20"></td>
			<td class="w40" style="background-color: #ebebeb;" width="40"></td>
		</tr>
		<tr style="line-height: 0px;" class="acyeditor_delete">
			<td class="w600" colspan="5" style="background-color:#ebebeb;" width="600"><img alt=" - - - " src="images/bottom.png" /></td>
		</tr>
	</tbody>
</table>

<div class="acyeditor_delete acyeditor_text" style="text-align:center">Not interested any more? {unsubscribe}Unsubscribe{/unsubscribe}</div>
</div>templates/newsletter-4/install.php000060400000005073152455614210013264 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$name = 'Notification template';
$thumb = ACYMAILING_MEDIA_FOLDER.'/templates/newsletter-4/newsletter-4.png';
$body = acymailing_fileGetContent(dirname(__FILE__).DS.'index.html');

$styles['tag_h1'] = 'color:#393939 !important; font-size:14px; font-weight:bold; margin:10px 0px;';
$styles['tag_h2'] = 'color: #309fb3 !important; font-size: 14px; font-weight: normal; text-align:left; margin:0px; padding:0px;';
$styles['tag_h3'] = 'color: #393939 !important; font-size: 18px; font-weight: bold; text-align:left; margin:0px; padding-bottom:5px; border-bottom:1px solid #bdbdbd;';
$styles['tag_h4'] = 'color: #309fb3 !important; font-size: 14px; font-weight: bold; text-align:left; margin:0px; padding: 5px 0px 0px 0px;';
$styles['tag_a'] = 'color:#309FB3; text-decoration:none; font-style:italic; cursor:pointer;';
$styles['acymailing_readmore'] = 'font-size: 12px; color: #fff; background-color:#309fb3; font-weight:bold; padding:3px 5px;';
$styles['acymailing_online'] = 'color:#a3a3a3; text-decoration:none; font-size:11px;';
$styles['acymailing_unsub'] = 'color:#a3a3a3; text-decoration:none; font-size:11px;';
$styles['color_bg'] = '#ffffff';
$styles['acymailing_content'] = 'text-align:justify;';

$stylesheet = 'div,table,p,td{font-family: Verdana, Arial, Helvetica, sans-serif; font-size:12px; text-align:justify; color:#8c8c8c; margin:0px}
div.info{text-align:center;padding:10px;font-size:11px;color:#a3a3a3;}

@media (min-width:10px){
	.w600 { width: 320px !important;}
	.w520 { width: 280px !important;}
	.w480 { width: 260px !important;}
	.w40 { width: 20px !important;}
	.w20 { width: 10px !important;}
	.w600 img {max-width:320px; height:auto !important}
	.w480 img {max-width:260px; height:auto !important;}
}

@media (min-width:480px) {
	.w600 { width: 480px !important;}
	.w520 { width: 440px !important;}
	.w480 { width: 420px !important;}
	.w40 { width: 20px !important;}
	.w20 { width: 10px !important;}
	.w600 img {max-width:480px; height:auto !important}
	.w480 img {max-width:420px;  height:auto !important;}
}

@media (min-width:600px){
	.w600 { width: 600px !important;}
	.w520 { width: 520px !important;}
	.w480 { width: 480px !important;}
	.w40 { width: 40px !important;}
	.w20 { width: 20px !important;}
	.w600 img {max-width:600px; height:auto !important}
	.w480 img {max-width:480px;  height:auto !important;}
}
';



controllers/file.php000060400000017372152455705230010560 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class FileController extends acymailingController{
	
	function language(){
		acymailing_setVar('layout', 'language');
		return parent::display();
	}

	function save(){
		acymailing_checkToken();

		$this->_savelanguage();
		return $this->language();
	}

	function savecss(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		acymailing_checkToken();

		$file = acymailing_getVar('cmd', 'file');
		if(!preg_match('#^([-a-z0-9]*)_([-_a-z0-9]*)$#i', $file, $result)){
			acymailing_display('Could not load the file '.$file.' properly');
			exit;
		}
		$type = $result[1];
		$fileName = $result[2];

		

		$path = ACYMAILING_MEDIA.'css'.DS.$type.'_'.$fileName.'.css';
		$csscontent = acymailing_getVar('string', 'csscontent');

		$alreadyExists = file_exists($path);

		if(acymailing_writeFile($path, $csscontent)){
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'success');
			$varName = acymailing_getVar('cmd', 'var');
			if(!$alreadyExists){
				$js = "var optn = document.createElement(\"OPTION\");
						optn.text = '$fileName'; optn.value = '$fileName';
						mydrop = window.top.document.getElementById('".$varName."_choice');
						mydrop.options.add(optn);
						lastid = 0; while(mydrop.options[lastid+1]){lastid = lastid+1;} mydrop.selectedIndex = lastid;
						window.top.updateCSSLink('".$varName."','$type','$fileName');";
				acymailing_addScript(true, $js);
			}
			$config = acymailing_config();
			$newConfig = new stdClass();
			$newConfig->$varName = $fileName;
			$config->save($newConfig);
		}else{
			acymailing_enqueueMessage(acymailing_translation_sprintf('FAIL_SAVE', $path), 'error');
		}

		return $this->css();
	}

	function css(){
		acymailing_setVar('layout', 'css');
		return parent::display();
	}

	function latest(){
		return $this->language();
	}

	function send(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		acymailing_checkToken();

		$bodyEmail = acymailing_getVar('string', 'mailbody');
		$code = acymailing_getVar('cmd', 'code');
		acymailing_setVar('code', $code);

		if(empty($code)) return;

		

		$config = acymailing_config();
		$mailer = acymailing_get('helper.mailer');
		$mailer->Subject = '[ACYMAILING LANGUAGE FILE] '.$code;
		$mailer->Body = 'The website '.ACYMAILING_LIVE.' using AcyMailing '.$config->get('level').' '.$config->get('version').' sent a language file : '.$code;
		$mailer->Body .= "\n"."\n"."\n".$bodyEmail;

		$extrafile = acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing_custom.ini';

		if(file_exists($extrafile)){
			$mailer->Body .= "\n"."\n"."\n".'Custom content:'."\n".file_get_contents($extrafile);
		}
		$mailer->AddAddress(acymailing_currentUserEmail(), acymailing_currentUserName());
		$mailer->AddAddress('translate@acyba.com', 'Acyba Translation Team');
		$mailer->report = false;

		$path = acymailing_cleanPath(acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing.ini');
		$mailer->AddAttachment($path);

		$result = $mailer->Send();
		if($result){
			acymailing_display(acymailing_translation('THANK_YOU_SHARING'), 'success');
			acymailing_display($mailer->reportMessage, 'success');
		}else{
			acymailing_display($mailer->reportMessage, 'error');
		}
	}

	function share(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		acymailing_checkToken();

		if($this->_savelanguage()){
			acymailing_setVar('layout', 'share');
			return parent::display();
		}else{
			return $this->language();
		}
	}

	function _savelanguage(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		acymailing_checkToken();
		
		$code = acymailing_getVar('cmd', 'code');
		acymailing_setVar('code', $code);
		$content = acymailing_getVar('string', 'content', '', '', ACY_ALLOWHTML);
		$content = str_replace('</textarea>', '', $content);

		if(empty($code) || empty($content)) return;

		$path = acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing.ini';
		$result = acymailing_writeFile($path, $content);
		if($result){
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'success');
			$js = "window.top.document.getElementById('image$code').className = 'acyicon-edit'";
			acymailing_addScript(true, $js);

			$updateHelper = acymailing_get('helper.update');
			$updateHelper->installMenu($code);
		}else{
			acymailing_enqueueMessage(acymailing_translation_sprintf('FAIL_SAVE', $path), 'error');
		}

		$customcontent = acymailing_getVar('string', 'customcontent', '', '', ACY_ALLOWHTML);
		$customcontent = str_replace('</textarea>', '', $customcontent);
		$custompath = acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing_custom.ini';
		$customresult = acymailing_writeFile($custompath, $customcontent);
		if(!$customresult) acymailing_enqueueMessage(acymailing_translation_sprintf('FAIL_SAVE', $custompath), 'error');

		if($code == acymailing_getLanguageTag()) acymailing_loadLanguage();

		return $result;
	}

	function installLanguages($ajax = true){
		$messagesMethod = $ajax ? 'acymailing_display' : 'acymailing_enqueueMessage';

		$languages = acymailing_getVar('string', 'languages');
		ob_start();
		$languagesContent = acymailing_fileGetContent(ACYMAILING_UPDATEURL.'loadLanguages&json=1&codes='.$languages);
		$warnings = ob_get_clean();
		if(!empty($warnings) && acymailing_isDebug()) echo $warnings;

		if(empty($languagesContent)){
			$messagesMethod('Could not load the language files from our server, you can update them in the AcyMailing configuration page, tab "Languages" or start your own translation and share it', 'error');
			if($ajax) exit;
			else return;
		}

		$decodedLanguages = json_decode($languagesContent, true);

		$updateHelper = acymailing_get('helper.update');
		$success = array();
		$error = array();

		foreach($decodedLanguages as $code => $content){
			if(empty($content)){
				$error[] = 'The language '.$code.' was not found on our server, you can start your own translation in the AcyMailing configuration page, tab "Languages" then share it';
				continue;
			}

			if(acymailing_writeFile(acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing.ini', $content)){
				$updateHelper->installMenu($code);
				$success[] = 'Successfully installed language: '.$code;
			}else{
				$error[] = acymailing_translation_sprintf('FAIL_SAVE', $code.'.com_acymailing.ini');
			}
		}

		if(!empty($success)) $messagesMethod($success, 'success');
		if(!empty($error)) $messagesMethod($error, 'error');
		if($ajax) exit;
	}

	function select(){
		acymailing_setVar('layout', 'select');
		return parent::display();
	}

	function downloadAcySMS(){
		$headers = get_headers('https://www.acyba.com/download-area/download/component-acysms/level-express.html',1);
		$package = acymailing_fileGetContent('https://www.acyba.com/download-area/download/component-acysms/level-express.html');
		if(empty($headers['Content-Disposition']) || empty($package)) exit;

		$fileName = strpos($headers['Content-Disposition'], '.zip') === false ? 'com_acysms.tar.gz' : 'com_acysms.zip';
		if(acymailing_writeFile(ACYMAILING_ROOT.'tmp'.DS.'acysms'.DS.$fileName, $package) && acymailing_extractArchive(ACYMAILING_ROOT.'tmp'.DS.'acysms'.DS.$fileName, ACYMAILING_ROOT.'tmp'.DS.'acysms')) echo 'success';

		exit;
	}

	function installPackage(){
		if(!ACYMAILING_J16) include_once(ACYMAILING_ROOT.'libraries'.DS.'joomla'.DS.'installer'.DS.'installer.php');
		
		$installer = JInstaller::getInstance();

		if($installer->install(ACYMAILING_ROOT.'tmp'.DS.'acysms')){
			acymailing_deleteFolder(ACYMAILING_ROOT.'tmp'.DS.'acysms');
			echo 'success';
		}

		exit;
	}
}
controllers/toggle.php000060400000031321152455705230011110 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class ToggleController extends acymailingController{

	var $allowedTablesColumn = array();
	var $deleteColumns = array();

	function __construct($config = array()){
		parent::__construct($config);
		$this->registerDefaultTask('toggle');
		$this->allowedTablesColumn['list'] = array('published' => 'listid', 'visible' => 'listid');
		$this->allowedTablesColumn['action'] = array('published' => 'action_id');
		$this->allowedTablesColumn['subscriber'] = array('confirmed' => 'subid', 'html' => 'subid', 'enabled' => 'subid');
		$this->allowedTablesColumn['template'] = array('published' => 'tempid', 'premium' => 'tempid');
		$this->allowedTablesColumn['mail'] = array('published' => 'mailid', 'visible' => 'mailid');
		$this->allowedTablesColumn['listsub'] = array('status' => 'listid,subid');
		$this->allowedTablesColumn['plugins'] = array('published' => 'id');
		$this->allowedTablesColumn['followup'] = array('add' => 'mailid', 'addall' => 'mailid', 'update' => 'mailid');
		$this->allowedTablesColumn['rules'] = array('published' => 'ruleid');
		$this->allowedTablesColumn['filter'] = array('published' => 'filid');
		$this->allowedTablesColumn['fields'] = array('published' => 'fieldid', 'required' => 'fieldid', 'frontcomp' => 'fieldid', 'backend' => 'fieldid', 'listing' => 'fieldid', 'frontlisting' => 'fieldid', 'frontjoomlaregistration' => 'fieldid', 'frontjoomlaprofile' => 'fieldid', 'joomlaprofile' => 'fieldid', 'frontform' => 'fieldid');
		$this->allowedTablesColumn['config'] = array('addindex' => 'namekey', 'guessport' => 'port');
		$this->deleteColumns['queue'] = array('subid', 'mailid');
		$this->deleteColumns['filter'] = array('filid', 'filid');
		$this->deleteColumns['rules'] = array('ruleid', 'ruleid');
		header('Cache-Control: no-store, no-cache, must-revalidate');
		header('Cache-Control: post-check=0, pre-check=0', false);
		header('Pragma: no-cache');
	}

	function toggle(){
		acymailing_checkToken();

		$completeTask = acymailing_getVar('cmd', 'task');
		$task = substr($completeTask, 0, strpos($completeTask, '_'));
		$elementId = substr($completeTask, strpos($completeTask, '_') + 1);

		$value = acymailing_getVar('int', 'value', '0', '');
		$table = acymailing_getVar('word', 'table', '', '');

		if(empty($this->allowedTablesColumn[$table]) || empty($this->allowedTablesColumn[$table][$task])) exit;
		$pkey = $this->allowedTablesColumn[$table][$task];
		if(empty($pkey)) exit;

		$function = $table.$task;
		if(method_exists($this, $function)){
			$this->$function($elementId, $value);
		}else{
			acymailing_query('UPDATE '.acymailing_table($table).' SET '.$task.' = '.$value.' WHERE '.$pkey.' = '.intval($elementId).' LIMIT 1');
		}

		$toggleClass = acymailing_get('helper.toggle');
		$extra = acymailing_getVar('array', 'extra', array(), '');
		if(!empty($extra)){
			foreach($extra as $key => $val){
				$extra[$key] = urldecode($val);
			}
		}
		echo $toggleClass->toggle(acymailing_getVar('cmd', 'task', ''), $value, $table, $extra);
		exit;
	}

	function configguessport($port, $value){
		if(!function_exists('fsockopen')){
			echo '<span style="color:red">fsockopen is not enabled, please contact your hosting company to enable it</span>';
			exit;
		}

		$tests = array(25 => 'smtp.sendgrid.com', 2525 => 'smtp.sendgrid.com', 587 => 'smtp.sendgrid.com', 465 => 'ssl://smtp.sendgrid.com');
		$total = 0;
		foreach($tests as $port => $server){
			$fp = @fsockopen($server, $port, $errno, $errstr, 5);
			if($fp){
				echo '<br /><span style="color:green" >Port <b>'.$port.'</b> OK</span>';
				fclose($fp);
				$total++;
			}else{
				echo '<br /><span style="color:red" >Port <b>'.$port.'</b> not opened on your server ';
				echo " errornum: ".$errno.' : '.$errstr;
				echo '</span>';
			}
		}
		if(empty($total)){
		}

		exit;
	}

	function testApiKey(){
		$apiKey = acymailing_getVar('string', 'value', '');
		if(empty($apiKey)){
			echo '<span style="color:red">No API key</span><br />';
			exit;
		}

		$classGeoloc = acymailing_get('class.geolocation');
		$test = $classGeoloc->testApiKey($apiKey);

		if(!empty($test) && $test->statusCode == 'OK'){ // Works fine
			echo '<span style="color:green" >API key OK : '.$test->countryName.' - '.$test->cityName.'</span>';
		}else if(!empty($test) && $test->statusCode == 'noReturn'){ // No return from the API, displaying the IP used for test and errors if there are any
			echo '<span style="color:red" >Error calling IPInfoDB API with IP : '.$test->ip.'</span><br />';
			if(!empty($test->errorAPI)) echo '<span style="color:red" >Details : '.$test->errorAPI.'</span>';
		}else{ // There is a return from the API but with an error status: display the content received to identify the pb
			echo '<span style="color:red" >Error returned from the API:<br /><br />';
			foreach($test as $key => $value){
				echo $key.' : '.$value.'<br />';
			}
			echo '</span>';
		}
		exit;
	}

	function configaddindex($table, $value){
		$queries = array();
		$queries['listsub'] = array('ALTER TABLE `#__acymailing_listsub` ADD INDEX `subidindex` ( `subid` )');
		$queries['listsub'][] = 'ALTER TABLE `#__acymailing_listsub` ADD INDEX `listidstatusindex` ( `listid` , `status` )';

		$queries['stats'] = array('ALTER TABLE `#__acymailing_stats` ADD INDEX `senddateindex` ( `senddate` )');

		$queries['list'] = array('ALTER TABLE `#__acymailing_list` ADD INDEX `typeorderingindex` ( `type` , `ordering` ) ');
		$queries['list'][] = 'ALTER TABLE `#__acymailing_list` ADD INDEX `useridindex` ( `userid` ) ';
		$queries['list'][] = 'ALTER TABLE `#__acymailing_list` ADD INDEX `typeuseridindex` ( `type` , `userid` ) ';

		$queries['mail'] = array('ALTER TABLE `#__acymailing_mail` ADD INDEX `typemailidindex` ( `type` , `mailid` )');
		$queries['mail'][] = 'ALTER TABLE `#__acymailing_mail` ADD INDEX `useridindex` ( `userid` )';

		$queries['userstats'] = array('ALTER TABLE `#__acymailing_userstats` ADD INDEX `senddateindex` ( `senddate` )');
		$queries['userstats'][] = 'ALTER TABLE `#__acymailing_userstats` ADD INDEX `subidindex` ( `subid` )';

		$queries['urlclick'] = array('ALTER TABLE `#__acymailing_urlclick` ADD INDEX `dateindex` ( `date` )');
		$queries['urlclick'][] = 'ALTER TABLE `#__acymailing_urlclick` ADD INDEX `mailidindex` ( `mailid` )';
		$queries['urlclick'][] = 'ALTER TABLE `#__acymailing_urlclick` ADD INDEX `subidindex` ( `subid` ) ';

		$queries['history'] = array('ALTER TABLE `#__acymailing_history` ADD INDEX `dateindex` ( `date` )');
		$queries['history'][] = 'ALTER TABLE `#__acymailing_history` ADD INDEX `actionindex` ( `action` , `mailid` ) ';

		$queries['template'] = array('ALTER TABLE `#__acymailing_template` ADD INDEX `orderingindex` ( `ordering` )');

		$queries['queue'] = array('ALTER TABLE `#__acymailing_queue` ADD INDEX `orderingindex` ( `priority` , `senddate` , `subid` )');
		$queries['queue'][] = 'ALTER TABLE `#__acymailing_queue` ADD INDEX `listingindex` ( `senddate` , `subid` )';
		$queries['queue'][] = 'ALTER TABLE `#__acymailing_queue` ADD INDEX `mailidindex` ( `mailid` )';

		$queries['subscriber'] = array('ALTER TABLE `#__acymailing_subscriber` ADD INDEX `queueindex` ( `enabled` , `accept` , `confirmed` )');

		if(empty($queries[$table])){
			echo 'No optimization found...';
			exit;
		}

		$indexOk = 0;
		echo '<span style="color:purple">| ';
		foreach($queries[$table] as $oneQuery){
			try{
				$isError = acymailing_query($oneQuery);
			}catch(Exception $e){
				$isError = null;
			}
			if($isError === null){
				echo isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...';
			}else{
				$indexOk++;
			}
		}
		if(!empty($indexOk)) echo $indexOk.' indexes added | ';
		echo '</span>';

		$config = acymailing_config();
		$newConfig = new stdClass();
		$val = 'optimize_'.$table;
		$newConfig->$val = 1;
		$config->save($newConfig);

		exit;
	}

	function followupaddall($mailid, $value){
		$mailClass = acymailing_get('class.mail');
		$nbinserted = $mailClass->addFollowUpQueue($mailid, true);
		if($nbinserted !== false){
			echo acymailing_translation_sprintf('ADDED_QUEUE', $nbinserted);
		}else{
			echo implode(',', $mailClass->errors);
		}
		exit;
	}

	function followupadd($mailid, $value){
		$mailClass = acymailing_get('class.mail');
		$nbinserted = $mailClass->addFollowUpQueue($mailid, false);
		if($nbinserted !== false){
			echo acymailing_translation_sprintf('ADDED_QUEUE', $nbinserted);
		}else{
			echo implode(',', $mailClass->errors);
		}
		exit;
	}

	function followupupdate($mailid, $value){
		$mailClass = acymailing_get('class.mail');
		$followup = $mailClass->get($mailid);
		if(empty($followup->mailid)){
			echo 'Could not load mailid '.$mailid;
			exit;
		}

		$listmailClass = acymailing_get('class.listmail');
		$mycampaign = $listmailClass->getCampaign($followup->mailid);
		if(empty($mycampaign->listid)){
			echo 'Could not get the attached campaign';
			exit;
		}

		$query = 'UPDATE #__acymailing_queue as a ';
		$query .= 'LEFT JOIN #__acymailing_listsub as b ON a.subid = b.subid AND b.listid = '.$mycampaign->listid;
		$query .= ' SET a.`senddate` = b.`subdate` + '.$followup->senddate;
		$query .= ' WHERE a.mailid = '.$followup->mailid;
		$nbupdated = acymailing_query($query);

		if(!empty($nbupdated)){
			$campaignHelper = acymailing_get('helper.campaign');
			$campaignHelper->updateUnsubdate($mycampaign->listid, $followup->senddate);
		}

		echo acymailing_translation_sprintf('NB_EMAILS_UPDATED', $nbupdated);
		exit;
	}

	function delete(){
		$value = acymailing_getVar('cmd', 'value');
		if(strpos($value, '_') === false) exit;
		list($value1, $value2) = explode('_', $value);
		$table = acymailing_getVar('word', 'table', '', '');
		if(empty($table)) exit;

		$function = 'delete'.$table;
		if(method_exists($this, $function)){
			$this->$function($value1, $value2);
			exit;
		}

		if(empty($this->deleteColumns[$table])) exit;

		list($key1, $key2) = $this->deleteColumns[$table];

		if(empty($key1) || empty($key2) || empty($value1) || empty($value2)) exit;

		acymailing_query('DELETE FROM '.acymailing_table($table).' WHERE '.$key1.' = '.intval($value1).' AND '.$key2.' = '.intval($value2));

		exit;
	}

	function deleteconfig($namekey, $val){
		$config = acymailing_config();
		$newConfig = new stdClass();
		$newConfig->$namekey = $val;
		$config->save($newConfig);
	}

	function deletefollowup($campaignid, $mailid){
		acymailing_checkToken();

		$mailClass = acymailing_get('class.mail');
		$mailClass->delete((int)$mailid);
	}

	function deleteMail($mailid, $attachid){
		acymailing_checkToken();

		$mailid = intval($mailid);
		if(empty($mailid)) return false;

		$attachment = acymailing_loadResult('SELECT attach FROM '.acymailing_table('mail').' WHERE mailid = '.$mailid.' LIMIT 1');
		if(empty($attachment)) return;
		$attach = unserialize($attachment);

		unset($attach[$attachid]);
		$attachdb = serialize($attach);

		return acymailing_query('UPDATE '.acymailing_table('mail').' SET attach = '.acymailing_escapeDB($attachdb).' WHERE mailid = '.$mailid.' LIMIT 1');
	}

	function deleteFavicon($mailid, $favicon){
		acymailing_checkToken();

		if($favicon != 'favicon') return;

		$mailid = intval($mailid);
		if(empty($mailid)) return false;

		return acymailing_query('UPDATE '.acymailing_table('mail').' SET favicon = "" WHERE mailid = '.$mailid.' LIMIT 1');
	}

	function subscriberconfirmed($subid, $value){
		if(!empty($value)){
			$subscriberClass = acymailing_get('class.subscriber');
			$subscriberClass->confirmSubscription($subid);
		}else{
			acymailing_query('UPDATE '.acymailing_table('subscriber').' SET confirmed = '.$value.' WHERE subid = '.intval($subid).' LIMIT 1');
		}
	}

	function listsubstatus($ids, $status){

		list($listid, $subid) = explode('_', $ids);
		$listid = (int)$listid;
		$subid = (int)$subid;

		if(empty($subid) OR empty($listid)) exit;
		$listSubClass = acymailing_get('class.listsub');
		$lists = array();
		$lists[$status] = array($listid);
		if($listSubClass->updateSubscription($subid, $lists)) return;

		echo 'error while updating the subscription';
	}

	function pluginspublished($id, $publish){
		acymailing_checkToken();

		if(!ACYMAILING_J16){
			acymailing_query('UPDATE '.acymailing_table('plugins', false).' SET `published` = '.intval($publish).' WHERE `id` = '.intval($id).' AND (`folder` = \'acymailing\' OR `name` LIKE \'%acymailing%\' OR `element` LIKE \'%acymailing%\') LIMIT 1');
		}else{
			acymailing_query('UPDATE `#__extensions` SET `enabled` = '.intval($publish).' WHERE `extension_id` = '.intval($id).' AND (`folder` = \'acymailing\' OR `name` LIKE \'%acymailing%\' OR `element` LIKE \'%acymailing%\') LIMIT 1');
		}

		$updateHelper = acymailing_get('helper.update');
		$updateHelper->cleanPluginCache();
	}
}
controllers/queue.php000060400000003633152455705230010760 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class QueueController extends acymailingController{

	var $aclCat = 'queue';

	function remove(){
		if(!$this->isAllowed($this->aclCat, 'delete')) return;
		acymailing_checkToken();
		$mailid = acymailing_getVar('int', 'filter_mail', 0, 'post');

		$queueClass = acymailing_get('class.queue');
		$search = acymailing_getVar('string', 'search');
		$filters = array();
		if(!empty($search)){
			$searchVal = '\'%'.acymailing_getEscaped($search, true).'%\'';
			$searchFields = array('b.name', 'b.email', 'c.subject', 'a.mailid', 'a.subid');
			$filters[] = implode(" LIKE $searchVal OR ", $searchFields)." LIKE $searchVal";
		}
		if(!empty($mailid)){
			$filters[] = 'a.mailid = '.intval($mailid);
		}

		$total = $queueClass->delete($filters);
		acymailing_enqueueMessage(acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $total), 'message');
		acymailing_setVar('filter_mail', 0, 'post');
		acymailing_setVar('search', '', 'post');

		return $this->listing();
	}

	function process(){
		if(!$this->isAllowed($this->aclCat, 'process')) return;
		acymailing_setVar('layout', 'process');
		return parent::display();
	}

	function preview(){
		acymailing_setVar('layout', 'preview');
		return parent::display();
	}

	function cancelNewsletter(){
		if(!$this->isAllowed($this->aclCat, 'delete')) return;
		acymailing_checkToken();
		$mailid = acymailing_getVar('int', 'mailid', 0);
		if(empty($mailid)){
			acymailing_enqueueMessage('Mail id not found', 'error');
			return;
		}
		$queueClass = acymailing_get('class.queue');
		acymailing_enqueueMessage(acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $queueClass->delete(array('a.mailid = '.$mailid))), 'info');
	}
}
controllers/subscriber.php000060400000010101152455705230011763 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class SubscriberController extends acymailingController{

	var $pkey = 'subid';
	var $allowedInfo = array();
	var $aclCat = 'subscriber';

	function choose(){
		if(!$this->isAllowed('subscriber', 'view')) return;
		acymailing_setVar('layout', 'choose');
		return parent::display();
	}

	function export(){
		if(!$this->isAllowed('subscriber', 'export')) return;
		$cids = acymailing_getVar('none', 'cid');
		$selectedList = acymailing_getVar('int', 'filter_lists');
		$_SESSION['acymailing'] = array();
		$redirection = (acymailing_isAdmin() ? '' : 'front').'data&task=export';
		if(!empty($cids) || !empty($selectedList)){
			if(!empty($cids)){
				$_SESSION['acymailing']['exportusers'] = $cids;
			}else{
				$_SESSION['acymailing']['exportlist'] = $selectedList;
				$_SESSION['acymailing']['exportliststatus'] = acymailing_getVar('int', 'filter_statuslist');
			}
			$redirection .= '&sessionvalues=1';
		}


		acymailing_redirect(acymailing_completeLink($redirection, false, true));
	}

	function store(){
		if(!$this->isAllowed('subscriber', 'manage')) return;
		acymailing_checkToken();

		$subscriberClass = acymailing_get('class.subscriber');
		$subscriberClass->sendConf = false;
		$subscriberClass->sendNotif = false;
		$subscriberClass->sendWelcome = false;
		$subscriberClass->allowModif = true;
		$subscriberClass->checkAccess = false;
		$subscriberClass->triggerFilterBE = true;
		$subscriberClass->checkVisitor = false;

		$status = $subscriberClass->saveForm();
		if($status){
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'message');
		}else{
			acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
			if(!empty($subscriberClass->errors)){
				foreach($subscriberClass->errors as $oneError){
					acymailing_enqueueMessage($oneError, 'error');
				}
			}
		}
	}

	function remove(){
		acymailing_checkToken();
		$config = acymailing_config();
		$deleteBehaviour = $config->get('frontend_delete_button', 'delete');
		$subscriberIds = acymailing_getVar('array', 'cid', array(), '');
		if(acymailing_isAdmin() || $deleteBehaviour == 'delete'){
			if(!$this->isAllowed('subscriber', 'delete')) return;

			$subscriberObject = acymailing_get('class.subscriber');
			$num = $subscriberObject->delete($subscriberIds);

			acymailing_enqueueMessage(acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $num), 'message');
		}else{
			if(!$this->isAllowed('subscriber', 'manage')) return;

			$listId = acymailing_getVar('int', 'filter_lists', 0);
			if(empty($listId)){
				acymailing_enqueueMessage('List not found', 'error');
			}else{
				$listsubClass = acymailing_get('class.listsub');
				foreach($subscriberIds as $subid){
					$listsubClass->removeSubscription($subid, array($listId));
				}

				$listClass = acymailing_get('class.list');
				$list = $listClass->get($listId);

				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_REMOVE', count($subscriberIds), $list->name), 'message');
			}
		}

		acymailing_setVar('layout', 'listing');
		return parent::display();
	}

	function getSubscribersByEmail(){
		$NameSearched = acymailing_getVar('string', 'search', '');
		if(empty($NameSearched) || !acymailing_isAdmin() || !$this->isAllowed('subscriber', 'view')) exit;

		$NameSearched = '\'%'.acymailing_getEscaped($NameSearched, true).'%\'';
		$users = acymailing_loadObjectList('SELECT name, email FROM #__acymailing_subscriber WHERE email LIKE '.$NameSearched.' OR name LIKE '.$NameSearched.' ORDER BY email ASC LIMIT 30');
		if(empty($users)) exit;

		echo '<table style="width:100%;">';
		foreach($users as $oneUser){
			echo '<tr class="row_user" onclick="setUser(\''.str_replace("'", "\'", $oneUser->email).'\');"><td>'.htmlspecialchars($oneUser->name, ENT_COMPAT, 'UTF-8').'</td><td>'.htmlspecialchars($oneUser->email, ENT_COMPAT, 'UTF-8').'</td></tr>';
		}
		echo '</table>';
		exit;
	}
}
controllers/fields.php000060400000002122152455705230011072 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class FieldsController extends acymailingController{
	var $pkey = 'fieldid';
	var $table = 'fields';
	var $groupMap = '';
	var $groupVal = '';

	function listing(){
		if(!acymailing_level(3)){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->setTitle(acymailing_translation('EXTRA_FIELDS'), 'fields');
			$acyToolbar->help('customfields');
			$acyToolbar->display();
			$config = acymailing_config();

			$level = $config->get('level');
			$url = ACYMAILING_HELPURL.'fields-paidversion&utm_source=acymailing-'.$level.'&utm_medium=back-end&utm_content=customfields-display&utm_campaign=upgrade';
			$iFrame = "<iframe class='paidversion' frameborder='0' src='$url' width='100%' height='100%' scrolling='auto'></iframe>";
			echo $iFrame.'<div id="iframedoc"></div>';
			return;
		}

		return parent::listing();
	}

}
controllers/data.php000060400000035503152455705230010546 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class DataController extends acymailingController{

	function listing(){
		$importHelper = acymailing_get('helper.import');
		$importHelper->_cleanImportFolder();
		return $this->import();
	}

	function import(){
		if(!$this->isAllowed('subscriber', 'import')) return;
		acymailing_setVar('layout', 'import');
		return parent::display();
	}

	function export(){
		if(!$this->isAllowed('subscriber', 'export')) return;
		acymailing_setVar('layout', 'export');
		return parent::display();
	}

	function loadZohoFields(){
		$zohoHelper = acymailing_get('helper.zoho');
		$zohoHelper->authtoken = acymailing_getVar('none', 'zoho_apikey');
		$list = acymailing_getVar('none', 'zoho_list');
		acymailing_setVar('layout', 'import');
		$zohoFields = $zohoHelper->getFieldsRaw($list);
		if(!empty($zohoHelper->error)){
			acymailing_enqueueMessage($zohoHelper->error, 'error');
			return parent::display();
		}
		$zohoFieldsParsed = $zohoHelper->parseXMLFields($zohoFields);
		if(!empty($zohoHelper->error)){
			acymailing_enqueueMessage($zohoHelper->error, 'error');
			return parent::display();
		}
		$config = acymailing_config();
		$newconfig = new stdClass();
		$newconfig->zoho_fieldsname = implode(',', $zohoFieldsParsed);
		$newconfig->zoho_list = $list;
		$newconfig->zoho_apikey = $zohoHelper->authtoken;
		$config->save($newconfig);
		acymailing_enqueueMessage(acymailing_translation('ACY_FIELDSLOADED'));
		return parent::display();
	}

	function doimport(){
		if(!$this->isAllowed('subscriber', 'import')) return;
		acymailing_checkToken();

		$function = acymailing_getVar('cmd', 'importfrom');

		$importHelper = acymailing_get('helper.import');
		if(!$importHelper->$function()){
			return $this->import();
		}

		if($function == 'textarea' || $function == 'file'){
			if(file_exists(ACYMAILING_MEDIA.'import'.DS.acymailing_getVar('cmd', 'filename'))) $importContent = file_get_contents(ACYMAILING_MEDIA.'import'.DS.acymailing_getVar('cmd', 'filename'));
			if(empty($importContent)){
				acymailing_enqueueMessage(acymailing_translation('ACY_IMPORT_NO_CONTENT'), 'error');
				acymailing_redirect(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'data&task=import', false, true));
			}else{
				acymailing_setVar('layout', 'genericimport');
				return parent::display();
			}
		}else{
			acymailing_redirect(acymailing_completeLink(acymailing_isAdmin() ? 'subscriber' : 'frontsubscriber', false, true));
		}
	}

	function finalizeimport(){
		$importHelper = acymailing_get('helper.import');
		$importHelper->finalizeImport();
		acymailing_redirect(acymailing_completeLink(acymailing_isAdmin() ? 'subscriber' : 'frontsubscriber', false, true));
	}

	function downloadimport(){
		$filename = acymailing_getVar('cmd', 'filename');
		if(!file_exists(ACYMAILING_MEDIA.'import'.DS.$filename.'.csv')) return;
		$exportHelper = acymailing_get('helper.export');
		$exportHelper->addHeaders($filename);
		echo file_get_contents(ACYMAILING_MEDIA.'import'.DS.$filename.'.csv');
		exit;
	}

	function ajaxencoding(){
		acymailing_setVar('layout', 'ajaxencoding');
		parent::display();
		exit;
	}

	function ajaxload(){
		if(!$this->isAllowed('subscriber', 'import')) return;

		$function = acymailing_getVar('cmd', 'importfrom').'_ajax';

		$importHelper = acymailing_get('helper.import');
		$importHelper->$function();
		exit;
	}

    function exportError($message){
        if(!acymailing_isAdmin()) die($message);

        acymailing_enqueueMessage($message, 'error');

		if(!ACYMAILING_J40){
			$menuHelper = acymailing_get('helper.acymenu');
			echo '<div id="acyallcontent" class="acyallcontent">';
			echo $menuHelper->display('data');
			echo '<div id="acymainarea" class="acymaincontent_data">';
		}

        acymailing_setVar('layout', 'export');
        parent::display();

		if(!ACYMAILING_J40) echo '</div></div>';
        return false;
    }

	function doexport(){
		$assocField = 'subid';
		if(!$this->isAllowed('subscriber', 'export')) return;
		acymailing_checkToken();

		acymailing_increasePerf();

		$filtersExport = acymailing_getVar('array', 'exportfilter', array(), '');
		$listsToExport = acymailing_getVar('none', 'exportlists');

		$fieldsToExport = acymailing_getVar('none', 'exportdata');
		if(!in_array('1', array_values($fieldsToExport))) return $this->exportError('Please select at least one field to export');
		$tableFields = acymailing_getColumns('#__acymailing_subscriber');
		$notAllowedFields = array_diff_key($fieldsToExport, $tableFields);
		if(!empty($notAllowedFields)) return $this->exportError('The field '.implode(', ', array_keys($notAllowedFields)).' is not in the allowed fields: '.implode(', ', array_keys($tableFields)));

		$fieldsToExportList = acymailing_getVar('none', 'exportdatalist');
		$notAllowedFields = array_diff(array_keys($fieldsToExportList), array('listid', 'listname'));
		if(!empty($notAllowedFields)) return $this->exportError('The field '.implode(', ', $notAllowedFields).' is not in the allowed fields: listid, listname');

		$fieldsToExportOthers = acymailing_getVar('none', 'exportdataother');

		$fieldsToExportGeoloc = acymailing_getVar('none', 'exportdatageoloc');
		$tableFields = acymailing_getColumns('#__acymailing_geolocation');
		$notAllowedFields = array_diff_key($fieldsToExportGeoloc, $tableFields);
		if(!empty($notAllowedFields)) return $this->exportError('The field '.implode(', ', array_keys($notAllowedFields)).' is not in the allowed fields: '.implode(', ', array_keys($tableFields)));

		$inseparator = acymailing_getVar('string', 'exportseparator');
		$inseparator = str_replace(array('semicolon', 'colon', 'comma'), array(';', ',', ','), $inseparator);
		$exportFormat = acymailing_getVar('string', 'exportformat');
		if(!in_array($inseparator, array(',', ';'))) $inseparator = ';';

		$exportUnsubLists = array();
		$exportWaitLists = array();
		$exportLists = array();
		if(!empty($filtersExport['subscribed'])){
			foreach($listsToExport as $listid => $status){
				if($status == -1){
					$exportUnsubLists[] = (int)$listid;
				}elseif($status == 2) $exportWaitLists[] = (int)$listid;
				elseif(!empty($status)) $exportLists[] = (int)$listid;
			}
		}

		if(!acymailing_isAdmin() && (empty($filtersExport['subscribed']) || (empty($exportLists) && empty($exportUnsubLists) && empty($exportWaitLists)))){
			$listClass = acymailing_get('class.list');
			$frontLists = $listClass->getFrontendLists();
			foreach($frontLists as $frontList){
				$exportLists[] = (int)$frontList->listid;
			}
		}

		$exportFields = array();
		$exportFieldsList = array();
		$exportFieldsOthers = array();
		$exportFieldsGeoloc = array();
		foreach($fieldsToExport as $fieldName => $checked){
			if(!empty($checked)) $exportFields[] = acymailing_secureField($fieldName);
		}
		foreach($fieldsToExportList as $fieldName => $checked){
			if(!empty($checked)) $exportFieldsList[] = acymailing_secureField($fieldName);
		}
		if(!empty($fieldsToExportOthers)){
			foreach($fieldsToExportOthers as $fieldName => $checked){
				if(!empty($checked)) $exportFieldsOthers[] = acymailing_secureField($fieldName);
			}
		}
		if(!empty($fieldsToExportGeoloc)){
			foreach($fieldsToExportGeoloc as $fieldName => $checked){
				if(!empty($checked)) $exportFieldsGeoloc[] = acymailing_secureField($fieldName);
			}
		}

		$selectFields = 's.`'.implode('`, s.`', $exportFields).'`';

		$config = acymailing_config();
		$newConfig = new stdClass();
		$newConfig->export_fields = implode(',', array_merge($exportFields, $exportFieldsOthers, $exportFieldsList, $exportFieldsGeoloc));
		$newConfig->export_lists = implode(',', $exportLists);
		$newConfig->export_separator = acymailing_getVar('string', 'exportseparator');
		$newConfig->export_excelsecurity = acymailing_getVar('int', 'export_excelsecurity', 0);
		$newConfig->export_format = $exportFormat;
		$filterActive = array();
		foreach($filtersExport as $filterKey => $value){
			if($value == 1) $filterActive[] = $filterKey;
		}
		$newConfig->export_filters = implode(',', $filterActive);
		$config->save($newConfig);

		$where = array();
		if(empty($exportLists) && empty($exportUnsubLists) && empty($exportWaitLists)){
			$querySelect = 'SELECT s.`subid`, '.$selectFields.' FROM '.acymailing_table('subscriber').' as s';
		}else{
			$querySelect = 'SELECT DISTINCT s.`subid`, '.$selectFields.' FROM '.acymailing_table('listsub').' as a JOIN '.acymailing_table('subscriber').' as s on a.subid = s.subid';
			if(!empty($exportLists)) $conditions[] = 'a.status = 1 AND a.listid IN ('.implode(',', $exportLists).')';
			if(!empty($exportUnsubLists)) $conditions[] = 'a.status = -1 AND a.listid IN ('.implode(',', $exportUnsubLists).')';
			if(!empty($exportWaitLists)) $conditions[] = 'a.status = 2 AND a.listid IN ('.implode(',', $exportWaitLists).')';

			if(count($conditions) == 1){
				$where[] = $conditions[0];
			}else $where[] = '('.implode(') OR (', $conditions).')';
		}

		if(!empty($filtersExport['confirmed'])) $where[] = 's.confirmed = 1';
		if(!empty($filtersExport['registered'])) $where[] = 's.userid > 0';
		if(!empty($filtersExport['enabled'])) $where[] = 's.enabled = 1';
		
		if(acymailing_getVar('int', 'sessionvalues') AND !empty($_SESSION['acymailing']['exportusers'])){
			$where[] = 's.subid IN ('.implode(',', $_SESSION['acymailing']['exportusers']).')';
		}

		if(acymailing_getVar('int', 'fieldfilters')){
			foreach($_SESSION['acymailing']['fieldfilter'] as $field => $value){
				$where[] = 's.'.acymailing_secureField($field).' LIKE "%'.acymailing_getEscaped($value, true).'%"';
			}
		}

		$query = $querySelect;
		if(!empty($where)) $query .= ' WHERE ('.implode(') AND (', $where).')';
		if(acymailing_getVar('int', 'sessionquery')){
			$selectOthers = '';
			if(!empty($exportFieldsOthers)){
				foreach($exportFieldsOthers as $oneField){
					$selectOthers .= ' , '.$oneField.' AS '.str_replace('.', '_', $oneField);
				}
			}
			acymailing_session();
			$acyExportQuery = $_SESSION['acymailing']['acyexportquery'];
			if(strpos($acyExportQuery, 'urlclick') !== false) {
				$query = 'SELECT s.`subid`, '.$selectFields.$selectOthers.' '.$acyExportQuery;
				$assocField = '';
			} else {
				$query = 'SELECT DISTINCT s.`subid`, '.$selectFields.$selectOthers.' '.$acyExportQuery;
			}
		}
		$query .= ' ORDER BY s.subid';

		$encodingClass = acymailing_get('helper.encoding');
		$exportHelper = acymailing_get('helper.export');

		$fileName = 'export_'.date('Y-m-d');
		if(!empty($exportLists) && !empty($filtersExport['subscribed'])){
			$fileName = '';
			$allExportedLists = acymailing_loadObjectList('SELECT name FROM #__acymailing_list WHERE listid IN ('.implode(',', $exportLists).')');
			foreach($allExportedLists as $oneList){
				$fileName .= '__'.$oneList->name;
			}
			$fileName = trim($fileName, '__');
		}

		$exportHelper->addHeaders($fileName);
		acymailing_displayErrors();

		$eol = "\r\n";
		$before = '"';
		$separator = '"'.$inseparator.'"';
		$after = '"';

		$allFields = array_merge($exportFields, $exportFieldsOthers);
		if(!empty($exportFieldsList)){
			$allFields = array_merge($allFields, $exportFieldsList);
			$selectFields = 'l.`'.implode('`, l.`', $exportFieldsList).'`';
			$selectFields = str_replace('listname', 'name', $selectFields);
		}
		if(!empty($exportFieldsGeoloc)){
			$allFields = array_merge($allFields, $exportFieldsGeoloc);
		}

		$titleLine = $before.implode($separator, $allFields).$after.$eol;
		$titleLine = str_replace('listid', 'listids', $titleLine);
		echo $titleLine;

		if(acymailing_bytes(ini_get('memory_limit')) > 150000000){
			$nbExport = 50000;
		}elseif(acymailing_bytes(ini_get('memory_limit')) > 80000000){
			$nbExport = 15000;
		}else{
			$nbExport = 5000;
		}

		if(!empty($exportFieldsList)) $nbExport = 500;

		$valDep = 0;
		$dateFields = array('created', 'confirmed_date', 'lastopen_date', 'lastclick_date', 'lastsent_date', 'userstats_opendate', 'userstats_senddate', 'urlclick_date', 'hist_date');
		do{
			$allData = acymailing_loadObjectList($query.' LIMIT '.$valDep.', '.$nbExport, $assocField);
			$valDep += $nbExport;
			if($allData === false){
				echo $eol.$eol.'Error : '.acymailing_getDBError();
			}
			if(empty($allData)) break;

			foreach($allData as $subid => &$oneUser){
				if(!in_array('subid', $exportFields)) unset($allData[$subid]->subid);

				foreach($dateFields as &$fieldName){
					if(isset($allData[$subid]->$fieldName)) $allData[$subid]->$fieldName = acymailing_getDate($allData[$subid]->$fieldName, '%Y-%m-%d %H:%M:%S');
				}
			}

			if(!empty($exportFieldsList) && !empty($allData)){
				$queryList = 'SELECT '.$selectFields.', s.subid
								FROM #__acymailing_subscriber AS s
								LEFT JOIN #__acymailing_listsub AS ls ON ls.subid = s.subid AND ls.status = 1 ';
				if(!empty($exportLists)) $queryList .= 'AND ls.listid IN ('.implode(',', $exportLists).') ';
				$queryList .= 'LEFT JOIN #__acymailing_list AS l ON ls.listid = l.listid
								WHERE s.subid IN ('.implode(',', array_keys($allData)).')';
				$resList = acymailing_loadObjectList($queryList);
				foreach($resList as &$listsub){
					if(in_array('listid', $exportFieldsList)) $allData[$listsub->subid]->listid = empty($allData[$listsub->subid]->listid) ? $listsub->listid : $allData[$listsub->subid]->listid.' - '.$listsub->listid;
					if(in_array('listname', $exportFieldsList)) $allData[$listsub->subid]->listname = empty($allData[$listsub->subid]->listname) ? $listsub->name : $allData[$listsub->subid]->listname.' - '.$listsub->name;
				}
				unset($resList);
			}

			if(!empty($exportFieldsGeoloc) && !empty($allData)){
				$orderGeoloc = acymailing_getVar('cmd', 'exportgeolocorder');
				if(strtolower($orderGeoloc) !== 'desc') $orderGeoloc = 'asc';
				$resGeol = acymailing_loadObjectList('SELECT geolocation_subid,'.implode(', ', $exportFieldsGeoloc).' FROM (SELECT * FROM #__acymailing_geolocation WHERE geolocation_subid IN ('.implode(',', array_keys($allData)).') ORDER BY geolocation_id '.$orderGeoloc.') as geoloc GROUP BY geolocation_subid', 'geolocation_subid');
				foreach($allData as $subid => $oneSubscriber){
					foreach($exportFieldsGeoloc as $geolField){
						$value = empty($resGeol[$subid]) ? '' : $resGeol[$subid]->$geolField;
						$allData[$subid]->$geolField = ($geolField == 'geolocation_created' ? acymailing_getDate($value, '%Y-%m-%d %H:%M:%S') : $value);
					}
				}
				unset($resGeol);
			}


			foreach($allData as $subid => &$oneUser){
				$data = get_object_vars($oneUser);

				if($newConfig->export_excelsecurity == 1){
					foreach ($data as &$oneData){
						$firstcharacter = substr($oneData, 0, 1);
						if(in_array($firstcharacter, array('=', '+', '-', '@'))){
							$oneData = '	'.$oneData;
						}
					}
				}

				$dataexport = implode($separator, $data);
				echo $before.$encodingClass->change($dataexport, 'UTF-8', $exportFormat).$after.$eol;
			}

			unset($allData);
		}while(true);
		exit;
	}
}
controllers/cpanel.php000060400000035701152455705230011077 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class CpanelController extends acymailingController{


	function __construct($config = array()){
		parent::__construct($config);
		$this->registerDefaultTask('display');
	}

	function save(){
		$this->store();
		return $this->cancel();
	}

	function apply(){
		$this->store();
		return $this->display();
	}

	function listing(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		return $this->display();
	}

	function store(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		acymailing_checkToken();

		$config = acymailing_config();

		$source = is_array($_POST['config']) ? 'POST' : 'REQUEST';
		$formData = acymailing_getVar('array', 'config', array(), $source);

		$aclcats = acymailing_getVar('array', 'aclcat', array(), 'POST');

		if(!empty($aclcats)){

			if(acymailing_getVar('string', 'acl_configuration', 'all') != 'all' && !acymailing_isAllowed($formData['acl_configuration_manage'])){
				acymailing_enqueueMessage(acymailing_translation('ACL_WRONG_CONFIG'), 'notice');
				unset($formData['acl_configuration_manage']);
			}

			$deleteAclCats = array();
			$unsetVars = array('save', 'create', 'manage', 'modify', 'delete', 'fields', 'export', 'import', 'view', 'send', 'schedule', 'bounce', 'test');
			foreach($aclcats as $oneCat){
				if(acymailing_getVar('string', 'acl_'.$oneCat) == 'all'){
					foreach($unsetVars as $oneVar){
						unset($formData['acl_'.$oneCat.'_'.$oneVar]);
					}
					$deleteAclCats[] = $oneCat;
				}
			}
		}


		if(!empty($formData['hostname'])){
			$formData['hostname'] = preg_replace('#https?://#i', '', $formData['hostname']);
			$formData['hostname'] = preg_replace('#[^a-z0-9_.-]#i', '', $formData['hostname']);
		}

		$reasons = acymailing_getVar('array', 'unsub_reasons', array(), 'POST');
		$unsub_reasons = array();
		foreach($reasons as $oneReason){
			if(empty($oneReason)) continue;
			$unsub_reasons[] = strip_tags($oneReason);
		}
		$formData['unsub_reasons'] = serialize($unsub_reasons);

		if(!empty($formData['smtp_username'])) $formData['smtp_username'] = acymailing_punycode($formData['smtp_username']);

		$status = $config->save($formData);

		if(!empty($deleteAclCats)){
			acymailing_query("DELETE FROM `#__acymailing_config` WHERE `namekey` LIKE 'acl_".implode("%' OR `namekey` LIKE 'acl_", $deleteAclCats)."%'");
		}

		if($status){
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'message');
		}else{
			acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
		}

		$config->load();
	}

	function test(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		$this->store();

		acymailing_displayErrors();

		$config = acymailing_config();

		$mailClass = acymailing_get('helper.mailer');
		$addedName = $config->get('add_names', true) ? $mailClass->cleanText(acymailing_currentUserName()) : '';
		$mailClass->AddAddress(acymailing_currentUserEmail(), $addedName);
		$mailClass->Subject = 'Test e-mail from '.ACYMAILING_LIVE;
		$mailClass->Body = acymailing_translation('TEST_EMAIL');
		$mailClass->SMTPDebug = 1;
		if(acymailing_isDebug()) $mailClass->SMTPDebug = 2;
		$result = $mailClass->send();

		if(!$result){
			$bounce = $config->get('bounce_email');
			if($config->get('mailer_method') == 'smtp' && $config->get('smtp_secured') == 'ssl' && !function_exists('openssl_sign')){
				acymailing_enqueueMessage('The PHP Extension openssl is not enabled on your server, this extension is required to use an SSL connection, please enable it', 'notice');
			}elseif(!empty($bounce) AND !in_array($config->get('mailer_method'), array('smtp', 'elasticemail'))){
				acymailing_enqueueMessage(acymailing_translation_sprintf('ADVICE_BOUNCE', '<b><i>'.$bounce.'</i></b>'), 'notice');
			}elseif($config->get('mailer_method') == 'smtp' AND !$config->get('smtp_auth') AND strlen($config->get('smtp_password')) > 1){
				acymailing_enqueueMessage(acymailing_translation('ADVICE_SMTP_AUTH'), 'notice');
			}elseif((strpos(ACYMAILING_LIVE, 'localhost') OR strpos(ACYMAILING_LIVE, '127.0.0.1')) AND in_array($config->get('mailer_method'), array('sendmail', 'qmail', 'mail'))){
				acymailing_enqueueMessage(acymailing_translation('ADVICE_LOCALHOST'), 'notice');
			}elseif($config->get('mailer_method') == 'smtp' AND $config->get('smtp_port') AND !in_array($config->get('smtp_port'), array(25, 2525, 465, 587))){
				acymailing_enqueueMessage(acymailing_translation_sprintf('ADVICE_PORT', $config->get('smtp_port')), 'notice');
			}
		}

		return $this->display();
	}

	function plgtrigger(){
		$pluginToTrigger = acymailing_getVar('cmd', 'plg');
		$pluginType = acymailing_getVar('cmd', 'plgtype', 'acymailing');
		$fctName = 'onAcy'.acymailing_getVar('cmd', 'fctName', 'TestPlugin');
		$methodParam = acymailing_getVar('cmd', 'param', 'NoParam');

		if(!ACYMAILING_J16){
			$path = JPATH_PLUGINS.DS.$pluginType.DS.$pluginToTrigger.'.php';
		}else{
			$path = JPATH_PLUGINS.DS.$pluginType.DS.$pluginToTrigger.DS.$pluginToTrigger.'.php';
		}

		if(!file_exists($path)){
			acymailing_display('Plugin not found: '.$path, 'error');
			return;
		}

		require_once($path);
		$className = 'plg'.$pluginType.$pluginToTrigger;
		if(!class_exists($className)){
			acymailing_display('Class not found: '.$className, 'error');
			return;
		}

		$dispatcher = ACYMAILING_J40 ? \JFactory::getApplication()->getDispatcher() : JDispatcher::getInstance();
		$instance = new $className($dispatcher, array('name' => $pluginToTrigger, 'type' => $pluginType));

		$fctName = ($fctName == 'onAcyTestPlugin') ? 'onTestPlugin' : $fctName;
		if(!method_exists($instance, $fctName)){
			acymailing_display('Method "'.$fctName.'" not found in: '.$className, 'error');
			return;
		}

		if($methodParam == 'NoParam'){
			$instance->$fctName();
		}else $instance->$fctName($methodParam);
		return;
	}

	function seereport(){
		if(!$this->isAllowed('configuration', 'manage')) return;
		$config = acymailing_config();

		$path = trim(html_entity_decode($config->get('cron_savepath')));
		if(!preg_match('#^[a-z0-9/_\-{}]*\.log$#i', $path)){
			acymailing_display('The log file must only contain alphanumeric characters and end with .log', 'error');
			return;
		}

		$path = str_replace(array('{year}', '{month}'), array(date('Y'), date('m')), $config->get('cron_savepath'));

		$reportPath = acymailing_cleanPath(ACYMAILING_ROOT.$path);

		if(file_exists($reportPath)){
			try{
				$lines = 10000;
				$f = fopen($reportPath, "rb");
				fseek($f, -1, SEEK_END);
				if(fread($f, 1) != "\n") $lines -= 1;

				$logFile = '';
				while(ftell($f) > 0 && $lines >= 0){
					$seek = min(ftell($f), 4096); // Figure out how far back we should jump
					fseek($f, -$seek, SEEK_CUR);
					$logFile = ($chunk = fread($f, $seek)).$logFile; // Get the line
					fseek($f, -mb_strlen($chunk, '8bit'), SEEK_CUR);
					$lines -= substr_count($chunk, "\n"); // Move to previous line
				}

				while($lines++ < 0){
					$logFile = substr($logFile, strpos($logFile, "\n") + 1);
				}
				fclose($f);
			}catch(Exception $e){
				$logFile = '';
			}
		}

		if(empty($logFile)){
			acymailing_display(acymailing_translation('EMPTY_LOG'), 'info');
		}else{
			echo nl2br($logFile);
		}
	}

	function cleanreport(){
		if(!$this->isAllowed('configuration', 'manage')) return;

		$config = acymailing_config();
		$path = trim(html_entity_decode($config->get('cron_savepath')));
		if(!preg_match('#^[a-z0-9/_\-{}]*\.log$#i', $path)){
			acymailing_display('The log file must only contain alphanumeric characters and end with .log', 'error');
			return;
		}

		$path = str_replace(array('{year}', '{month}'), array(date('Y'), date('m')), $config->get('cron_savepath'));

		$reportPath = acymailing_cleanPath(ACYMAILING_ROOT.$path);
		if(is_file($reportPath)){
			$result = acymailing_deleteFile($reportPath);
			if($result){
				acymailing_display(acymailing_translation('SUCC_DELETE_LOG'), 'success');
			}else{
				acymailing_display(acymailing_translation('ERROR_DELETE_LOG'), 'error');
			}
		}else{
			acymailing_display(acymailing_translation('EXIST_LOG'), 'info');
		}
	}

	function cancel(){
		acymailing_redirect(acymailing_completeLink('dashboard', false, true));
	}

	function checkDB(){
		$queries = file_get_contents(ACYMAILING_BACK.'tables.sql');
		$tables = explode("CREATE TABLE IF NOT EXISTS", $queries);
		$structure = array();
		$createTable = array();
		$indexes = array();
		foreach($tables as $oneTable){
			$fields = explode("\n\t", $oneTable);
			$tableNameTmp = substr($oneTable, strpos($oneTable, '`') + 1, strlen($oneTable) - 1);
			$tableName = substr($tableNameTmp, 0, strpos($tableNameTmp, '`'));
			if(empty($tableName)) continue;
			foreach($fields as $oneField){
				if(strpos($oneField, '#__')) continue;

				if(substr($oneField, 0, 1) == '`'){
					$fieldNameTmp = substr($oneField, strpos($oneField, '`') + 1, strlen($oneField) - 1);
					$fieldName = substr($fieldNameTmp, 0, strpos($fieldNameTmp, '`'));
					$structure[$tableName][$fieldName] = trim($oneField, ",");
					continue;
				}


				$oneField = trim(str_replace("\n) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;", '', $oneField));
        		$oneField = rtrim($oneField, ',');

				if(strpos($oneField, 'PRIMARY KEY') !== false){
					$indexes[$tableName]['PRIMARY'] = $oneField;
				}else if(strpos($oneField, 'KEY') !== false){
					$firstBackquotePos = strpos($oneField, '`');
					$indexName = substr($oneField, $firstBackquotePos+1, strpos($oneField, '`', $firstBackquotePos+1)-$firstBackquotePos-1);
					$indexes[$tableName][$indexName] = $oneField;
				}
			}
			$createTable[$tableName] = "CREATE TABLE IF NOT EXISTS ".$oneTable;
		}

		$tableNames = array_keys($structure);
		$structureDB = array();
		foreach($tableNames as $oneTableName){
			try{
				$fields2 = acymailing_loadObjectList("SHOW COLUMNS FROM ".$oneTableName);
			}catch(Exception $e){
				$fields2 = null;
			}
			if($fields2 == null){
				$errorMessage = (isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200));
				echo "<span style=\"color:blue\">Could not load columns from the table : ".$oneTableName." : ".$errorMessage."</span><br />";

				if(strpos($errorMessage, 'marked as crashed')){
					$repairQuery = 'REPAIR TABLE '.$oneTableName;

					try{
						$isError = acymailing_query($repairQuery);
					}catch(Exception $e){
						$isError = null;
					}
					if($isError === null){
						echo "<span style=\"color:red\">[ERROR]Could not repair the table ".$oneTableName." </span><br />";
						acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
					}else{
						echo "<span style=\"color:green\">[OK]Problem solved : Table ".$oneTableName." repaired</span><br />";
					}
					continue;
				}

				try{
					$isError = acymailing_query($createTable[$oneTableName]);
				}catch(Exception $e){
					$isError = null;
				}
				if($isError === null){
					echo "<span style=\"color:red\">[ERROR]Could not create the table ".$oneTableName." </span><br />";
					acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
				}else{
					echo "<span style=\"color:green\">[OK]Problem solved : Table ".$oneTableName." created</span><br />";
				}
				continue;
			}
			foreach($fields2 as $oneField){
				$structureDB[$oneTableName][$oneField->Field] = $oneField->Field;
			}
		}

		foreach($tableNames as $oneTableName){
			if(empty($structureDB[$oneTableName])) continue;
			$resultCompare[$oneTableName] = array_diff(array_keys($structure[$oneTableName]), $structureDB[$oneTableName]);
			if(empty($resultCompare[$oneTableName])){
				echo "<span style=\"color:green\">Table ".$oneTableName." OK</span><br />";
				continue;
			}
			foreach($resultCompare[$oneTableName] as $oneField){
				echo "<span style=\"color:blue\">Field ".$oneField." missing in ".$oneTableName."</span><br />";
				try{
					$isError = acymailing_query("ALTER TABLE ".$oneTableName." ADD ".$structure[$oneTableName][$oneField]);
				}catch(Exception $e){
					$isError = null;
				}
				if($isError === null){
					echo "<span style=\"color:red\">[ERROR]Could not add the field ".$oneField." on the table : ".$oneTableName."</span><br />";
					acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
					continue;
				}else{
					echo "<span style=\"color:green\">[OK]Problem solved : Add ".$oneField." in ".$oneTableName."</span><br />";
				}
			}
		}

		foreach($tableNames as $oneTableName){
			if(empty($structureDB[$oneTableName])) continue;

			$results = acymailing_loadObjectList('SHOW INDEX FROM '.$oneTableName, 'Key_name');
			if(empty($results)) continue;

			foreach($indexes[$oneTableName] as $name => $query){
				if(in_array($name, array_keys($results))) continue;

				$keyName = $name == 'PRIMARY' ? 'primary key' : 'index '.$name;

				echo "<span style=\"color:blue\">".$keyName." missing in ".$oneTableName."</span><br />";
				try{
					$isError = acymailing_query('ALTER TABLE '.$oneTableName.' ADD '.$query);
				}catch(Exception $e){
					$isError = null;
				}

				if($isError === null){
					echo "<span style=\"color:red\">[ERROR]Could not add the ".$keyName." on the table : ".$oneTableName."</span><br />";
					acymailing_display(substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
				}else{
					echo "<span style=\"color:green\">[OK]Problem solved : Added ".$keyName." in ".$oneTableName."</span><br />";
				}
			}
		}

		$nbdeleted = acymailing_query("DELETE listsub.* FROM #__acymailing_listsub as listsub LEFT JOIN #__acymailing_subscriber as sub ON sub.subid = listsub.subid WHERE sub.subid IS NULL");
		if(!empty($nbdeleted)){
			echo "<span style=\"color:blue\">".$nbdeleted." lost subscriber entries fixed</span><br />";
		}

		$nbdeleted = acymailing_query("DELETE listsub.* FROM #__acymailing_listsub AS listsub LEFT JOIN #__acymailing_list AS b ON listsub.listid = b.listid WHERE b.listid IS NULL");
		if(!empty($nbdeleted)){
			echo "<span style=\"color:blue\">".$nbdeleted." lost list entries fixed</span><br />";
		}

		$customFields = array_keys(acymailing_loadObjectList('SELECT namekey FROM #__acymailing_fields WHERE type NOT IN (\'category\',\'customtext\')', 'namekey'));
		$subFields = acymailing_loadObjectList("SHOW COLUMNS FROM #__acymailing_subscriber");
		$subFieldsName = array();
		foreach($subFields as $oneField){
			$subFieldsName[] = $oneField->Field;
		}
		$fieldsDiff = array_diff($customFields, $subFieldsName);
		if(!empty($fieldsDiff)){
			echo '<span style="color:red;">At least one field is missing in the subscriber table or has not the same case between fields and subscriber table (they should all be lower case): <span style="font-weight: bold">'.implode(', ', $fieldsDiff).'</span>. You should only create fields using the custom fields interface.</span>';
		}else{
			echo '<span style="color:green;">Custom fields OK</span>';
		}
	}
}
controllers/filter.php000060400000005344152455705230011122 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class FilterController extends acymailingController{
	var $pkey = 'filid';
	var $table = 'filter';

	function listing(){
		return $this->add();
	}

	function countresults(){
		$num = acymailing_getVar('int', 'num');
		$filters = acymailing_getVar('none', 'filter');

		foreach($filters['type'] as $block => $oneType){
			if(!empty($oneType[$num])){
				$currentType = $oneType[$num];
				break;
			}
		}
		if(empty($currentType)) die('No filter type found for the num '.intval($num));
		if(empty($filters[$num][$currentType])) die('No filter parameters found for the num '.intval($num));

		$filterClass = acymailing_get('class.filter'); // Keep it, it loads the acyQuery class
		$query = new acyQuery();

		$currentFilterData = $filters[$num][$currentType];
		acymailing_importPlugin('acymailing');
		$messages = acymailing_trigger('onAcyProcessFilterCount_'.$currentType, array(&$query,$currentFilterData,$num));
		echo implode(' | ',$messages);
		exit;
	}

	function displayCondFilter(){
		acymailing_importPlugin('acymailing');
		$fct = acymailing_getVar('none', 'fct');

		$message = acymailing_trigger('onAcyTriggerFct_'.$fct);
		echo implode(' | ',$message);
		exit;
	}

	function process(){
		if(!$this->isAllowed('lists','filter')) return;
		acymailing_checkToken();

		$filid = acymailing_getVar('int', 'filid');
		if(!empty($filid)){
			$this->store();
		}

		$filterClass = acymailing_get('class.filter');
		$filterClass->subid = acymailing_getVar('string', 'subid');
		$filterClass->execute(acymailing_getVar('none', 'filter'),acymailing_getVar('none', 'action'), 100000);

		if(!empty($filterClass->report)){
			if(acymailing_isNoTemplate()){
				acymailing_display($filterClass->report,'info');
				return;
			}else{
				foreach($filterClass->report as $oneReport){
					acymailing_enqueueMessage($oneReport);
				}
			}
		}
		return $this->edit();
	}

	function filterDisplayUsers(){
		if(!$this->isAllowed('lists','filter')) return;
		acymailing_checkToken();
		return $this->edit();
	}

	function store(){
		if(!$this->isAllowed('lists','filter')) return;
		acymailing_checkToken();

		$class = acymailing_get('class.filter');
		$status = $class->saveForm();
		if($status){
			acymailing_enqueueMessage(acymailing_translation( 'JOOMEXT_SUCC_SAVED' ), 'message');
		}else{
			acymailing_enqueueMessage(acymailing_translation( 'ERROR_SAVING' ), 'error');
			if(!empty($class->errors)){
				foreach($class->errors as $oneError){
					acymailing_enqueueMessage($oneError, 'error');
				}
			}
		}
	}
}
controllers/template.php000060400000020074152455705230011445 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class TemplateController extends acymailingController{

	var $pkey = 'tempid';
	var $table = 'template';
	var $aclCat = 'templates';

	function load(){
		$class = acymailing_get('class.template');
		$tempid = acymailing_getVar('int', 'tempid');
		if(empty($tempid)) exit;
		$template = $class->get($tempid);

		header("Content-type: text/css");
		echo $class->buildCSS($template->styles, $template->stylesheet);
		exit;
	}

	function applyareas(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;

		$class = acymailing_get('class.template');
		$tempid = acymailing_getVar('int', 'tempid');
		if(empty($tempid)) exit;
		$template = $class->get($tempid);
		$class->applyAreas($template->body);
		$class->save($template);

		$class->createTemplateFile($tempid);

		acymailing_enqueueMessage(acymailing_translation('ACYEDITOR_ADDAREAS_DONE'));

		if(acymailing_isNoTemplate()){
			$js = "setTimeout('redirect()',2000); function redirect(){window.top.location.href = '".acymailing_completeLink('template')."'; }";
			acymailing_addScript(true, $js);
		}else{
			return $this->listing();
		}
	}

	function remove(){
		if(!$this->isAllowed($this->aclCat, 'delete')) return;
		acymailing_checkToken();
		acymailing_isAdmin() or die('Only from the back-end');

		$cids = acymailing_getVar('array', 'cid', array(), '');

		$class = acymailing_get('class.template');
		$num = $class->delete($cids);

		acymailing_enqueueMessage(acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $num), 'message');

		return $this->listing();
	}

	function copy(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$cids = acymailing_getVar('array', 'cid', array(), '');
		$time = time();

		acymailing_arrayToInteger($cids);

		$query = 'INSERT IGNORE INTO `#__acymailing_template` (`name`, `description`, `body`, `altbody`, `created`, `published`, `premium`, `ordering`, `namekey`, `styles`, `subject`,`stylesheet`,`fromname`,`fromemail`,`replyname`,`replyemail`,`thumb`,`readmore`,`category`)';
		$query .= " SELECT CONCAT('copy_',`name`), `description`, `body`, `altbody`, $time, `published`, 0, `ordering`, CONCAT('$time',`tempid`,`namekey`), `styles`, `subject`,`stylesheet`,`fromname`,`fromemail`,`replyname`,`replyemail`,`thumb`,`readmore`,`category` FROM `#__acymailing_template` WHERE `tempid` IN (".implode(',', $cids).')';
		acymailing_query($query);

		$orderClass = acymailing_get('helper.order');
		$orderClass->pkey = 'tempid';
		$orderClass->table = 'template';
		$orderClass->reOrder();

		return $this->listing();
	}

	function store(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		acymailing_isAdmin() or die('Only from the back-end');

		$templateClass = acymailing_get('class.template');
		$status = $templateClass->saveForm();
		if($status){
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'message');
			$templateClass->proposeApplyAreas(acymailing_getVar('int', 'tempid'));
		}else{
			acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
			if(!empty($templateClass->errors)){
				foreach($templateClass->errors as $oneError){
					acymailing_enqueueMessage($oneError, 'error');
				}
			}
		}
	}

	function theme(){
		if(!$this->isAllowed($this->aclCat, 'view')) return;
		acymailing_setVar('layout', 'theme');
		return parent::display();
	}

	function upload(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_setVar('layout', 'upload');
		return parent::display();
	}

	function doupload(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$templateClass = acymailing_get('class.template');
		$statusUpload = $templateClass->doupload();

		if($statusUpload){
			if(!$templateClass->proposedAreas){
				acymailing_setNoTemplate(false);
				$js = "setTimeout('redirect()',2000); function redirect(){window.top.location.href = '".acymailing_completeLink('template', false, true)."'; }";
				acymailing_addScript(true, $js);
			}
			return;
		}else{
			return $this->upload();
		}
	}

	function export(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$cids = acymailing_getVar('array', 'cid', array(), '');

		acymailing_arrayToInteger($cids);
		$templateClass = acymailing_get('class.template');
		$resExport = $templateClass->export($cids[0]);

		if(!empty($resExport)) acymailing_enqueueMessage(acymailing_translation_sprintf('ACYTEMPLATE_EXPORTED', '<a href="'.$resExport.'">', '</a>'), 'success');
		return $this->listing();
	}

	function test(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		$this->store();

		$tempid = acymailing_getCID('tempid');
		$test_selection = acymailing_getVar('string', 'test_selection', '', '');
		if(empty($tempid) OR empty($test_selection)) return;

		$mailer = acymailing_get('helper.mailer');
		$mailer->report = true;
		$config = acymailing_config();
		$subscriberClass = acymailing_get('class.subscriber');
		$userHelper = acymailing_get('helper.user');
		acymailing_importPlugin('acymailing');

		$receivers = array();
		if($test_selection == 'users'){
			$receiverEntry = acymailing_getVar('string', 'test_emails', '', '');
			if(!empty($receiverEntry)){
				if(substr_count($receiverEntry, '@') > 1){
					$receivers = explode(',', trim(preg_replace('# +#', '', $receiverEntry)));
				}else{
					$receivers[] = trim($receiverEntry);
				}
			}
		}else{
			$gid = acymailing_getVar('int', 'test_group', '-1');
			if($gid == -1) return false;
			if(!ACYMAILING_J16){
				$receivers = acymailing_loadResultArray('SELECT '.$this->cmsUserVars->email.' AS email FROM '.acymailing_table($this->cmsUserVars->table, false).' WHERE gid = '.intval($gid));
			}else{
				$receivers = acymailing_loadResultArray('SELECT u.'.$this->cmsUserVars->email.' AS email FROM '.acymailing_table($this->cmsUserVars->table, false).' AS u JOIN '.acymailing_table('user_usergroup_map', false).' AS ugm ON u.'.$this->cmsUserVars->id.' = ugm.user_id WHERE ugm.group_id = '.intval($gid));
			}
		}

		if(empty($receivers)){
			acymailing_enqueueMessage(acymailing_translation('NO_SUBSCRIBER'), 'notice');
			return $this->edit();
		}

		$classTemplate = acymailing_get('class.template');
		$myTemplate = $classTemplate->get($tempid);
		$myTemplate->sendHTML = 1;
		$myTemplate->mailid = 0;
		$myTemplate->template = $myTemplate;
		if(empty($myTemplate->subject)) $myTemplate->subject = $myTemplate->name;
		if(empty($myTemplate->altBody)) $myTemplate->altbody = $mailer->textVersion($myTemplate->body);
		acymailing_trigger('acymailing_replacetags', array(&$myTemplate, true));

		$myTemplate->body = acymailing_absoluteURL($myTemplate->body);

		$result = true;
		foreach($receivers as $receiveremail){
			$copy = $myTemplate;
			$mailer->clearAll();
			$mailer->setFrom($copy->fromemail, $copy->fromname);
			if(!empty($copy->replyemail)){
				$replyToName = $config->get('add_names', true) ? $mailer->cleanText($copy->replyname) : '';
				$mailer->AddReplyTo($mailer->cleanText($copy->replyemail), $replyToName);
			}

			$receiver = $subscriberClass->get($receiveremail);
			if(empty($receiver->subid)){
				if($userHelper->validEmail($receiveremail)){
					$newUser = new stdClass();
					$newUser->email = $receiveremail;
					$subscriberClass->sendConf = false;
					$subid = $subscriberClass->save($newUser);
					$receiver = $subscriberClass->get($subid);
				}
				if(empty($receiver->subid)) continue;
			}

			$addedName = $config->get('add_names', true) ? $mailer->cleanText($receiver->name) : '';
			$mailer->AddAddress($mailer->cleanText($receiver->email), $addedName);

			acymailing_trigger('acymailing_replaceusertags', array(&$copy, &$receiver, true));
			$mailer->isHTML(true);
			$mailer->Body = $copy->body;
			$mailer->Subject = $copy->subject;
			if($config->get('multiple_part', false)){
				$mailer->AltBody = $copy->altbody;
			}

			$mailer->send();
		}

		return $this->edit();
	}
}
controllers/chooselist.php000060400000000667152455705230012014 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class ChooselistController extends acymailingController{

	function customfields(){
		acymailing_setVar( 'layout', 'customfields'  );
		return parent::display();
	}
}
controllers/bounces.php000060400000002111152455705230011260 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class BouncesController extends acymailingController{
	var $pkey = 'ruleid';
	var $table = 'rules';
	var $groupMap = '';
	var $groupVal = '';

	function listing(){
		if(!acymailing_level(3)){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->setTitle(acymailing_translation('BOUNCE_HANDLING'), 'bounces');
			$acyToolbar->help('bounce');
			$acyToolbar->display();
			$config = acymailing_config();
			$level = $config->get('level');
			$url = ACYMAILING_HELPURL.'bounce-paidversion&utm_source=acymailing-'.$level.'&utm_medium=back-end&utm_content=bounces-display&utm_campaign=upgrade';
			$iFrame = "<iframe class='paidversion' frameborder='0' src='$url' width='100%' height='100%' scrolling='auto'></iframe>";
			echo $iFrame.'<div id="iframedoc"></div>';
			return;
		}

		return parent::listing();
	}

}
controllers/list.php000060400000003213152455705230010601 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class ListController extends acymailingController{

	var $pkey = 'listid';
	var $table = 'list';
	var $groupMap = 'type';
	var $groupVal = 'list';
	var $aclCat = 'lists';

	function store(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$listClass = acymailing_get('class.list');
		$status = $listClass->saveForm();
		if($status){
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'message');
			if($listClass->newlist && acymailing_isAdmin()){
				$listid = acymailing_getVar('int', 'listid');
				acymailing_enqueueMessage('<a href="'.acymailing_completeLink('filter&listid='.$listid).'">'.acymailing_translation_sprintf('SUBSCRIBE_LIST').'</a>', 'message');
			}
		}else{
			acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
			if(!empty($listClass->errors)){
				foreach($listClass->errors as $oneError){
					acymailing_enqueueMessage($oneError, 'error');
				}
			}
		}
	}

	function remove(){
		if(!$this->isAllowed($this->aclCat, 'delete')) return;

		acymailing_checkToken();

		$listIds = acymailing_getVar('array', 'cid', array(), '');

		$listClass = acymailing_get('class.list');
		$num = $listClass->delete($listIds);

		acymailing_enqueueMessage(acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $num), 'message');

		acymailing_setVar('layout', 'listing');
		return parent::display();
	}
}
controllers/dashboard.php000060400000001317152455705230011560 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class DashboardController extends acymailingController{

	var $aclCat = 'dashboard';

	function __construct($config = array()){
		parent::__construct($config);

		$this->registerTask('listing', 'display');

		$this->registerDefaultTask('listing');
	}

	function display($cachable = false, $urlparams = false){
		if(!empty($this->aclCat) AND !$this->isAllowed($this->aclCat, 'manage')) return;
		return parent::display($cachable, $urlparams);
	}
}
controllers/send.php000060400000011134152455705230010560 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class SendController extends acymailingController{

	function sendready(){
		if(!$this->isAllowed('newsletters', 'send')) return;
		acymailing_setVar('layout', 'sendconfirm');
		return parent::display();
	}

	function send(){
		if(!$this->isAllowed('newsletters', 'send')) return;
		acymailing_checkToken();

		acymailing_setNoTemplate();
		$mailid = acymailing_getCID('mailid');
		if(empty($mailid)) exit;

		$time = time();
		$queueClass = acymailing_get('class.queue');
		$queueClass->onlynew = acymailing_getVar('int', 'onlynew');
		$queueClass->mindelay = acymailing_getVar('int', 'mindelay');
		$totalSub = $queueClass->queue($mailid, $time);

		if(empty($totalSub)){
			acymailing_display(acymailing_translation('NO_RECEIVER'), 'warning');
			return;
		}

		$mailObject = new stdClass();
		$mailObject->senddate = $time;
		$mailObject->published = 1;
		$mailObject->mailid = $mailid;
		$mailObject->sentby = acymailing_currentUserId();
		acymailing_updateObject(acymailing_table('mail'), $mailObject, 'mailid');

		$config = acymailing_config();
		$queueType = $config->get('queue_type');
		if($queueType == 'onlyauto'){
			$messages = array();
			$messages[] = acymailing_translation_sprintf('ADDED_QUEUE', $totalSub);
			$messages[] = acymailing_translation('AUTOSEND_CONFIRMATION');
			acymailing_display($messages, 'success');
			return;
		}else{
			acymailing_setVar('totalsend', $totalSub);
			acymailing_redirect(acymailing_completeLink('send&task=continuesend&mailid='.$mailid.'&totalsend='.$totalSub, true, true));
			exit;
		}
	}

	function continuesend(){
		$config = acymailing_config();

		if(acymailing_level(1) && $config->get('queue_type') == 'onlyauto'){
			acymailing_setNoTemplate();
			acymailing_display(acymailing_translation('ACY_ONLYAUTOPROCESS'), 'warning');
			return;
		}


		$newcrontime = time() + 120;
		if($config->get('cron_next') < $newcrontime){
			$newValue = new stdClass();
			$newValue->cron_next = $newcrontime;
			$config->save($newValue);
		}

		$mailid = acymailing_getCID('mailid');

		$totalSend = acymailing_getVar('int', 'totalsend', 0, '');
		$alreadySent = acymailing_getVar('int', 'alreadysent', 0, '');

		$helperQueue = acymailing_get('helper.queue');
		$helperQueue->mailid = $mailid;
		$helperQueue->report = true;
		$helperQueue->total = $totalSend;
		$helperQueue->start = $alreadySent;
		$helperQueue->pause = $config->get('queue_pause');
		$helperQueue->process();

		acymailing_setNoTemplate();



	}


	function spamtest(){
		$mailid = acymailing_getVar('int', 'mailid');
		if(empty($mailid)) return;

		$config = acymailing_config();
		ob_start();
		$urlSite = trim(base64_encode(preg_replace('#https?://(www\.)?#i', '', ACYMAILING_LIVE)), '=/');
		$url = ACYMAILING_SPAMURL.'spamTestSystem&component=acymailing&level='.strtolower($config->get('level', 'starter')).'&urlsite='.$urlSite;
		$spamtestSystem = acymailing_fileGetContent($url, 30);

		$warnings = ob_get_clean();

		if(empty($spamtestSystem) || $spamtestSystem === false || !empty($warnings)){
			acymailing_display('Could not load your information from our server'.((!empty($warnings) && acymailing_isDebug()) ? $warnings : ''), 'error');
			return;
		}
		$decodedInformation = json_decode($spamtestSystem, true);
		if(!empty($decodedInformation['messages']) || !empty($decodedInformation['error'])){
			$msgError = (!empty($decodedInformation['messages'])) ? $decodedInformation['messages'].'<br />' : '';
			$msgError .= (!empty($decodedInformation['error'])) ? $decodedInformation['error'] : '';
			acymailing_display($msgError, 'error');
			return;
		}
		if(empty($decodedInformation['email'])){
			acymailing_display('Missing test mail address', 'error');
			return;
		}

		$receiver = new stdClass();
		$receiver->subid = 0;
		$receiver->email = $decodedInformation['email'];
		$receiver->name = $decodedInformation['name'];
		$receiver->html = 1;
		$receiver->confirmed = 1;
		$receiver->enabled = 1;

		$mailerHelper = acymailing_get('helper.mailer');
		$mailerHelper->checkConfirmField = false;
		$mailerHelper->checkEnabled = false;
		$mailerHelper->checkPublished = false;
		$mailerHelper->checkAccept = false;
		$mailerHelper->loadedToSend = true;
		$mailerHelper->report = false;

		if(!$mailerHelper->sendOne($mailid, $receiver)){
			acymailing_display($mailerHelper->reportMessage, 'error');
			return;
		}
		
		acymailing_redirect($decodedInformation['displayURL']);
		return;
	}
}
controllers/update.php000060400000012632152455705230011115 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class UpdateController extends acymailingController{

	function __construct($config = array()){
		parent::__construct($config);
		$this->registerDefaultTask('update');
	}

	function listing(){
		return $this->update();
	}

	function install(){
		acymailing_increasePerf();

		$newConfig = new stdClass();
		$newConfig->installcomplete = 1;
		$config = acymailing_config();

		$updateHelper = acymailing_get('helper.update');

		if(!$config->save($newConfig)){
			$updateHelper->installTables();
			return;
		}

		$updateHelper->installLanguages();
		$updateHelper->initList();
		$updateHelper->installTemplates();
		$updateHelper->installNotifications();
		$updateHelper->installFields();
		$updateHelper->installMenu();
		$updateHelper->installExtensions();
		$updateHelper->installBounceRules();
		$updateHelper->fixDoubleExtension();
		$updateHelper->addUpdateSite();
		$updateHelper->fixMenu();

		if(ACYMAILING_J30) acymailing_moveFile(ACYMAILING_BACK.'acymailing_j3.xml', ACYMAILING_BACK.'acymailing.xml');

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->setTitle('AcyMailing', 'dashboard');
		$acyToolbar->display();

		$this->_iframe(ACYMAILING_UPDATEURL.'install&fromversion='.acymailing_getVar('cmd', 'fromversion').'&fromlevel='.acymailing_getVar('cmd', 'fromlevel'));
	}

	function update(){

		$config = acymailing_config();
		if(!acymailing_isAllowed($config->get('acl_config_manage', 'all'))){
			acymailing_display(acymailing_translation('ACY_NOTALLOWED'), 'error');
			return false;
		}

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->setTitle(acymailing_translation('UPDATE_ABOUT'), 'update');
		$acyToolbar->link(acymailing_completeLink('dashboard'), acymailing_translation('ACY_CLOSE'), 'cancel');
		$acyToolbar->display();

		return $this->_iframe(ACYMAILING_UPDATEURL.'update');
	}

	function _iframe($url){

		$config = acymailing_config();
		$url .= '&version='.$config->get('version').'&level='.$config->get('level').'&component=acymailing';
		?>
		<div id="acymailing_div">
			<iframe allowtransparency="true" scrolling="auto" height="700px" frameborder="0" width="100%" name="acymailing_frame" id="acymailing_frame" src="<?php echo $url; ?>">
			</iframe>
		</div>
	<?php
	}

	function checkForNewVersion(){

		$config = acymailing_config();
		ob_start();
		$url = ACYMAILING_UPDATEURL.'loadUserInformation&component=acymailing&level='.strtolower($config->get('level', 'starter'));
		$userInformation = acymailing_fileGetContent($url, 30);
		$warnings = ob_get_clean();
		$result = (!empty($warnings) && acymailing_isDebug()) ? $warnings : '';

		if(empty($userInformation) || $userInformation === false){
			echo json_encode(array('content' => '<br/><span style="color:#C10000;">Could not load your information from our server</span><br/>'.$result));
			exit;
		}

		$decodedInformation = json_decode($userInformation, true);

		$newConfig = new stdClass();

		$listPluginNeedToUpDate = array();

		if(!ACYMAILING_J16) {
			$query = "SELECT element, id, folder
					FROM `#__plugins` 
					WHERE `folder` = 'acymailing' OR `element` LIKE '%acymailing%' OR `name` LIKE '%acymailing%'";
		}else{
			$query = "SELECT element, folder, manifest_cache AS mc, extension_id AS id 
					FROM `#__extensions` 
					WHERE `state` <> -1 AND `type`= 'plugin' AND (`folder` = 'acymailing' OR `element` LIKE '%acymailing%' OR `name` LIKE '%acymailing%')";
		}

		$plugins = acymailing_loadObjectList($query);
		if(!empty($plugins)){
			foreach($plugins as $plugin){
				if(ACYMAILING_J16) {
					$manifest = json_decode($plugin->mc);
					if(empty($manifest->version)) $manifest = simplexml_load_file(JURI::root().'/plugins/'.$plugin->folder.'/'.$plugin->element.'/'.$plugin->element.'.xml');
				}else{
					$manifest = simplexml_load_file(JURI::root().'/plugins/'.$plugin->folder.'/'.$plugin->element.'.xml');
				}
				$actualVersion = (string)$manifest->version;

				$pluginOnServer = @simplexml_load_file(ACYMAILING_PLUGINURL.$plugin->element.'.xml');
				if(empty($pluginOnServer) || $actualVersion >= (string)$pluginOnServer->update[0]->version) continue;
				$listPluginNeedToUpDate[] = $plugin->id;
			}
		}

		$newConfig->pluginNeedUpdate = empty($listPluginNeedToUpDate) ? '' : json_encode($listPluginNeedToUpDate);

		$newConfig->latestversion = $decodedInformation['latestversion'];
		$newConfig->expirationdate = $decodedInformation['expiration'];
		$newConfig->lastlicensecheck = time();
		$config->save($newConfig);

		$menuHelper = acymailing_get('helper.acymenu');
		$myAcyArea = $menuHelper->myacymailingarea();

		echo json_encode(array('content' => $myAcyArea));
		exit;
	}

	function acysms(){
		$config = acymailing_config();
		if(!acymailing_isAllowed($config->get('acl_configuration_manage', 'all'))){
			acymailing_display(acymailing_translation('ACY_NOTALLOWED'), 'error');
			return false;
		}
		if(file_exists(ACYMAILING_ROOT.'components'.DS.'com_acysms')) {
			if(!JComponentHelper::isEnabled('com_acysms')){
				acymailing_query('UPDATE #__extensions SET `enabled` = 1 WHERE `element` = "com_acysms" AND `type` = "component"');
			}
			acymailing_redirect('index.php?option=com_acysms');
		}else{
			acymailing_setVar('layout', 'acysms');
			return parent::display();
		}
	}
}
controllers/notification.php000060400000000612152455705230012314 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'controllers'.DS.'newsletter.php');

class NotificationController extends NewsletterController{

}
controllers/newsletter.php000060400000023250152455705230012025 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class NewsletterController extends acymailingController{

	var $aclCat = 'newsletters';

	function replacetags(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		$this->store();
		return $this->edit();
	}

	function copy(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$cids = acymailing_getVar('array', 'cid', array(), '');
		$time = time();

		$creatorId = intval(acymailing_currentUserId());

		$addSendDate = '';
		if(!empty($this->copySendDate)) $addSendDate = ', `senddate`';

		foreach($cids as $oneMailid){
			$query = 'INSERT INTO `#__acymailing_mail` (`subject`, `body`, `altbody`, `published`'.$addSendDate.', `created`, `fromname`, `fromemail`, `replyname`, `replyemail`, `bccaddresses`, `type`, `visible`, `userid`, `alias`, `attach`, `html`, `tempid`, `key`, `frequency`, `params`,`filter`,`metakey`,`metadesc`)';
			$query .= " SELECT CONCAT('copy_',`subject`), `body`, `altbody`, 0".$addSendDate.", '.$time.', `fromname`, `fromemail`, `replyname`, `replyemail`, `bccaddresses`, `type`, `visible`, '.$creatorId.', `alias`, `attach`, `html`, `tempid`, ".acymailing_escapeDB(acymailing_generateKey(8)).', `frequency`, `params`,`filter`,`metakey`,`metadesc` FROM `#__acymailing_mail` WHERE `mailid` = '.(int)$oneMailid;
			acymailing_query($query);
			$newMailid = acymailing_insertID();
			acymailing_query('INSERT IGNORE INTO `#__acymailing_listmail` (`listid`,`mailid`) SELECT `listid`,'.$newMailid.' FROM `#__acymailing_listmail` WHERE `mailid` = '.(int)$oneMailid);
			acymailing_query('INSERT IGNORE INTO `#__acymailing_tagmail` (`tagid`,`mailid`) SELECT `tagid`,'.$newMailid.' FROM `#__acymailing_tagmail` WHERE `mailid` = '.(int)$oneMailid);
		}

		return $this->listing();
	}

	function store(){
			if(!$this->isAllowed($this->aclCat, 'manage')) return;
			acymailing_checkToken();
			header('X-XSS-Protection:0');

			$mailClass = acymailing_get('class.mail');
			$status = $mailClass->saveForm();
			if($status){
				acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'message');
			}else{
				acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
				if(!empty($mailClass->errors)){
					foreach($mailClass->errors as $oneError){
						acymailing_enqueueMessage($oneError, 'error');
					}
				}
			}
	}

	function unschedule(){
		if(!$this->isAllowed($this->aclCat, 'schedule')) return;
		acymailing_checkToken();
		$mailid = acymailing_getCID('mailid');

		if(empty($mailid)) die('Missing mail ID');
		$mail = new stdClass();
		$mail->mailid = $mailid;
		$mail->senddate = 0;
		$mail->published = 0;

		$mailClass = acymailing_get('class.mail');
		$mailClass->save($mail);

		acymailing_enqueueMessage(acymailing_translation('SUCC_UNSCHED'));

		return $this->preview();
	}

	function remove(){
		if(!$this->isAllowed($this->aclCat, 'delete')) return;
		acymailing_checkToken();

		$cids = acymailing_getVar('array', 'cid', array(), '');

		$class = acymailing_get('class.mail');
		$num = $class->delete($cids);

		acymailing_arrayToInteger($cids);
		acymailing_query('DELETE FROM `#__acymailing_listmail` WHERE `mailid` IN ('.implode(',', $cids).')');

		acymailing_enqueueMessage(acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $num), 'message');

		return $this->listing();
	}

	function savepreview(){
		$this->store();
		return $this->preview();
	}


	function saveastmpl(){
		$this->store();
		$mailclass = acymailing_get('class.mail');
		$mailclass->saveastmpl();
		return $this->edit();
	}

	function preview(){
		acymailing_setVar('layout', 'preview');
		return parent::display();
	}

	function sendtest(){
		$this->_sendtest();
		return $this->preview();
	}

	function _sendtest(){
		acymailing_checkToken();

		$mailid = acymailing_getCID('mailid');
		$test_selection = acymailing_getVar('string', 'test_selection', '', '');

		if(empty($mailid) OR empty($test_selection)) return false;

		$mailer = acymailing_get('helper.mailer');
		$mailer->forceVersion = acymailing_getVar('int', 'test_html', 1, '');
		$mailer->autoAddUser = true;
		if(acymailing_isAdmin()) $mailer->SMTPDebug = 1;
		$mailer->checkConfirmField = false;
		$comment = acymailing_getVar('string', 'commentTest', '');
		if(!empty($comment)) $mailer->introtext = '<div align="center" style="max-width:600px;margin:auto;margin-top:10px;margin-bottom:10px;padding:10px;border:1px solid #cccccc;background-color:#f6f6f6;color:#333333;">'.nl2br($comment).'</div>';

		$receivers = array();
		if($test_selection == 'users'){
			$receiverEntry = acymailing_getVar('string', 'test_emails', '', '');
			if(!empty($receiverEntry)){
				if(substr_count($receiverEntry, '@') > 1){
					$receivers = explode(',', trim(preg_replace('# +#', '', $receiverEntry)));
				}else{
					$receivers[] = trim($receiverEntry);
				}
			}
		}else{
			$gid = acymailing_getVar('int', 'test_group', '-1');
			if($gid == -1) return false;
			if(!ACYMAILING_J16){
				$receivers = acymailing_loadResultArray('SELECT '.$this->cmsUserVars->email.' AS email FROM '.acymailing_table($this->cmsUserVars->table, false).' WHERE gid = '.intval($gid));
			}else{
				$receivers = acymailing_loadResultArray('SELECT u.'.$this->cmsUserVars->email.' AS email FROM '.acymailing_table($this->cmsUserVars->table, false).' AS u JOIN '.acymailing_table('user_usergroup_map', false).' AS ugm ON u.'.$this->cmsUserVars->id.' = ugm.user_id WHERE ugm.group_id = '.intval($gid));
			}
		}

		if(empty($receivers)){
			acymailing_enqueueMessage(acymailing_translation('NO_SUBSCRIBER'), 'notice');
			return false;
		}

		$result = true;
		foreach($receivers as $receiver){
			$result = $mailer->sendOne($mailid, $receiver) && $result;
		}

		return $result;
	}

	function upload(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_setVar('layout', 'upload');
		return parent::display();
	}

	function abtesting(){
		acymailing_setVar('layout', 'abtesting');
		return parent::display();
	}

	function abtest(){
		$nbTotalReceivers = acymailing_getVar('int', 'nbTotalReceivers');
		$mailids = acymailing_getVar('string', 'mailid');
		$mailsArray = explode(',', $mailids);
		acymailing_arrayToInteger($mailsArray);


		$abTesting_prct = acymailing_getVar('int', 'abTesting_prct');
		$abTesting_delay = acymailing_getVar('int', 'abTesting_delay');
		$abTesting_action = acymailing_getVar('string', 'abTesting_action');

		if(empty($abTesting_prct)){
			acymailing_display(acymailing_translation('ABTESTING_NEEDVALUE'), 'warning');
			$this->abtesting();
			return;
		}

		$newAbTestDetail = array();
		$newAbTestDetail['mailids'] = implode(',', $mailsArray);
		$newAbTestDetail['prct'] = (!empty($abTesting_prct) ? $abTesting_prct : '');
		$newAbTestDetail['delay'] = (isset($abTesting_delay) && strlen($abTesting_delay) > 0 ? $abTesting_delay : '2');
		$newAbTestDetail['action'] = (!empty($abTesting_action) ? $abTesting_action : 'manual');
		$newAbTestDetail['time'] = time();
		$newAbTestDetail['status'] = 'inProgress';
		$mailClass = acymailing_get('class.mail');
		$nbReceiversTest = $mailClass->ab_test($newAbTestDetail, $mailsArray, $nbTotalReceivers);

		acymailing_enqueueMessage(acymailing_translation_sprintf('ABTESTING_SUCCESSADD', $nbReceiversTest), 'info');
		acymailing_setVar('validationStatus', 'abTestAdd');
		$this->abtesting();
	}

	function complete_abtest(){
		$mailid = acymailing_getVar('int', 'mailToSend');
		$mailClass = acymailing_get('class.mail');
		$newMailid = $mailClass->complete_abtest('manual', $mailid);

		$finalMail = $mailClass->get($newMailid);
		acymailing_enqueueMessage(acymailing_translation_sprintf('ABTESTING_FINALSEND', $finalMail->subject), 'info');
		acymailing_setVar('validationStatus', 'abTestFinalSend');
		$this->abtesting();
	}

	function douploadnewsletter(){
		if(!$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$templateClass = acymailing_get('class.template');
		$templateClass->checkAreas = false;
		$statusUpload = $templateClass->doupload();

		if($statusUpload){
			$mailClass = acymailing_get('class.mail');
			$mail = new stdClass();
			$newTemplate = $templateClass->get($templateClass->templateId);
			$mail->subject = $newTemplate->name;
			$mail->body = $newTemplate->body;
			$mail->tempid = $templateClass->templateId;

			$idMailCreated = $mailClass->save($mail);
			if($idMailCreated){
				acymailing_enqueueMessage(acymailing_translation('NEWSLETTER_INSTALLED'), 'success');
				acymailing_setNoTemplate(false);
				$js = "setTimeout('redirect()',2000); function redirect(){window.top.location.href = '".acymailing_completeLink('newsletter&task=edit&mailid='.$idMailCreated, false, true)."'; }";
				acymailing_addScript(true, $js);
				return;
			}else{
				acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
				return $this->upload();
			}
		}else{
			return $this->upload();
		}
	}

	function cancelNewsletter(){
		$queueController = acymailing_get('controller.queue');
		$queueController->cancelNewsletter();
		return $this->listing();
	}

	function checkifedited(){
		if(empty($_SESSION['timeOnModification'])) exit;

		$mailClass = acymailing_get('class.mail');
		$mailId = acymailing_getVar('int', 'mailId');
		$mail = $mailClass->get($mailId);

		if(!empty($mail->lastupdate) && $_SESSION['timeOnModification'] < $mail->lastupdate){
			$userId = acymailing_loadResult('SELECT userlastupdate FROM #__acymailing_mail WHERE mailid = '.intval($mailId));
			echo $userId.'|'.acymailing_currentUserName($userId);
		}
		exit;
	}

	function cancel(){
		header('X-XSS-Protection:0');
		return $this->listing();
	}
}
controllers/editor.php000060400000154554152455705230011133 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class EditorController extends acymailingController{

	function __construct($config = array()){
		parent::__construct($config);
		acymailing_setNoTemplate();
		
		
		if(!acymailing_isAdmin()){
			acymailing_addStyle(false, ACYMAILING_CSS.'acyicon.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acyicon.css'));
		}
		$this->registerDefaultTask('browse');
	}

	function browse(){
		$this->_setCss();
		$this->_setJs();
		$this->_displayHTML();
	}

	private function _setCss(){
		if(acymailing_getVar('none', 'inpopup', '') == 'true'){
			$height_acy_media_browser_table = 420;
			$height_acy_media_browser_list = 310;
			$width_acy_media_browser_actions = 393;
			$width_acy_media_browser_hidden_elements = 395;
			$height_acy_media_browser_image_details = 415;
			$width_acy_media_browser_buttons_block = 365;
			$width_acy_media_browser_url_input = 60;
		}else{
			$height_acy_media_browser_table = 540;
			$height_acy_media_browser_list = 450;
			$width_acy_media_browser_actions = 522;
			$width_acy_media_browser_hidden_elements = 522;
			$height_acy_media_browser_image_details = 550;
			$width_acy_media_browser_buttons_block = 492;
			$width_acy_media_browser_url_input = 70;
		}

		$css = "
			#import_from_url, #upload_image {
				display: none;
			}

			#acy_media_browser_hidden_elements, #acy_media_browser_buttons_block, #acy_media_browser_buttons_block {
				transition: all 0.3s ease;
			}

			#acy_media_browser_table{
				height:".$height_acy_media_browser_table."px;
				width:100%;
				margin: 0px;
				border: 1px solid rgb(233, 233, 233);
				box-shadow: 4px 4px 4px -4px rgba(0, 0, 0, 0.1);
			}

			#acy_media_browser_path_dropdown{
				float:left;
				margin-left:15px;
				margin-top:15px;
				width:60%;
			}

			#acy_media_browser_global_create_folder{
				width:28%;
				float:right;
				margin-top:15px;
				margin-right:10px;
			}

			#acy_media_browser_create_folder{
				width:100%;
			}

			#create_folder_btn{
				margin-top:0px;
			}

			#acy_media_browser_area_create_folder{
				position:absolute;
				z-index:10;
				margin-top:5px;
				border:1px solid #e9e9e9;
				height:0px;
				width:150px;
				background-color:#f6f6f6;
			}

			#subFolderName{
				width:80%;
				margin-left:7px;
				margin-top:5px;
			}

			#acy_media_browser_area_create_folder .btn{
				float:right;
				margin-right:5px
			}

			#acy_media_browser_message{
				height:450px;
				overflow:auto;
				margin:0px;
				padding:5px;
				border-bottom: 1px solid rgb(233, 233, 233);
			}

			#acy_media_browser_list{
				height:".$height_acy_media_browser_list."px;
				overflow-x:hidden;
				margin:0px;
				padding:0px;
				border-bottom: 1px solid rgb(233, 233, 233);
			}

			.acy_media_browser_image_size{
				color: #AAAAAA;
			}

			#acy_media_browser_actions{
				text-align:center;
				box-shadow: 0px -4px 4px -4px rgba(0, 0, 0, 0.3);
				width:".$width_acy_media_browser_actions."px;
				overflow:hidden;
				height: 100px;
			}

			#acy_media_browser_containing_block{
				height: 70px;
				width:522px;
			}

			#acy_media_browser_buttons_block{
				padding:22px 15px 0px;
				width: ".$width_acy_media_browser_buttons_block."px;
				float:left;
				display:inline-block;
			}

			#acy_media_browser_hidden_elements{
					width:".$width_acy_media_browser_hidden_elements."px;
			}

			#acy_media_browser_url_input{
				width:".$width_acy_media_browser_url_input."%;
				margin:0px;
			}

			#acy_media_browser_insert_message{
				margin-top:5px;
			}

			#acy_media_browser_image_details_row{
				width:35%;
				vertical-align:top;
				background-color: rgb(246, 246, 246);
				border: 1px solid rgb(233, 233, 233);
				font-family: 'Helvetica Neue',Helvetica,Arial,sans-serif;
				font-size: 13px;
				line-height: 18px;
				color: rgb(102, 102, 102);
			}

			#acy_media_browser_image_details{
				position: relative;
				width: 85%;
				overflow-x:hidden;
				height: ".$height_acy_media_browser_image_details."px;
				padding: 15px;
			}

			#acy_media_browser_image_selected_info{
				width:230px;
				float:left;
				margin-bottom:10px;
			}

			#acy_media_browser_image_selected_details label{
				font-weight: bold;
			}

			#acy_media_browser_image_selected_details input {
				margin-bottom: 7px;
				}

			#acy_media_browser_image_selected_details select {
				margin-bottom: 7px;
				}

			.alert{
					padding: 8px 35px 8px 14px;
					margin-bottom: 18px;
					text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.5);
					background-color: rgb(252, 248, 227);
					border: 1px solid rgb(251, 238, 213);
					border-radius: 4px;
			}

			.alert-error{
				background-color: rgb(242, 222, 222);
				border-color: rgb(238, 211, 215);
				color: rgb(185, 74, 72);
			}

			.alert-success {
					background-color: rgb(223, 240, 216);
					border-color: rgb(214, 233, 198);
					color: rgb(70, 136, 71);
			}

			li.acy_media_browser_images {position: relative; height: 135px; width:135px; display:inline-block; margin:14px; margin-top:7px; text-align:center; border: 1px solid #eee;}
			.acy_media_browser_images img{max-height:135px; width:auto; max-width:135px; vertical-align:top;}

			.acy_media_browser_images img.acy_media_browser_delete{height:24px; width:24px; vertical-align:top; position:absolute; right:0px; top:0px; z-index:990; cursor: pointer;}
			#acy_media_browser_list .acy_media_browser_image_size{color: #666; text-shadow:1px 1px 1px #ffffff; font-weight:normal}

			#confirmBoxMM{
				width: 370px;
				background: rgba(255, 255, 255, 0.8);
				border: 1px solid #d6d6d6;
				padding: 5px;
				border-radius: 5px;
				box-shadow: 1px 1px 5px #dddddd;
				-moz-box-shadow: 1px 1px 5px #dddddd;
				-webkit-box-shadow: 1px 1px 5px #dddddd;
				position: absolute;
				left: 234px;
				top: 150px;
				z-index: 999;
			}

			#acy_popup_content{
				background-color: #fff;
				padding: 20px;
				text-align: center;
				color: #706f6f;
			}

			.acy_folder_name{
				color: #5e93c0
			}

		";
		if(!ACYMAILING_J30){
			$css = $css."#acy_media_browser_area_create_folder .btn{
					margin-top:30px;
					margin-right:20px;
				}
				#subFolderName{
					margin-left:13px;
				}
			";
		}
		echo '<style>'.$css.'</style>';
	}

	private function _setJs(){
		$websiteurl = rtrim(acymailing_rootURI(), '/').'/';

		acymailing_addScript(false, $websiteurl.ACYMAILING_MEDIA_FOLDER.'/js/jquery/jquery-1.9.1.min.js?v='.@filemtime(ACYMAILING_ROOT.str_replace('/', DS, ACYMAILING_MEDIA_FOLDER).DS.'js'.DS.'jquery'.DS.'jquery-1.9.1.min.js'));

		$imageZone = acymailing_getVar('array', 'image_zone', array(), '');
		if(empty($imageZone)){
			$getAdditionalTags = "
					var selectedImageWidth = document.getElementById('acy_media_browser_image_width').value;
					var selectedImageHeight = document.getElementById('acy_media_browser_image_height').value;
					var selectedImageAlign = document.getElementById('acy_media_browser_image_align').value;
					var selectedImageBorder = document.getElementById('acy_media_browser_image_border').value;
					var selectedImageMargin = document.getElementById('acy_media_browser_image_margin').value;

					var width = ''; var height =''; var align=''; var border = ''; var margin = '';
					if(selectedImageWidth>0) width =  ' width:' + selectedImageWidth + 'px; ';
					if(selectedImageHeight>0) height = ' height:' +  selectedImageHeight + 'px; ';
					if(selectedImageAlign) align = 'float:' + selectedImageAlign + ';';
					if(selectedImageWidth>0 && selectedImageAlign.trim()=='center') align = 'margin:auto;';
					if(selectedImageBorder) border = ' border:' +  selectedImageBorder + '; ';
					if(selectedImageBorder>0 ) border = ' border: solid ' +  selectedImageBorder + 'px; ';
					if(selectedImageMargin>0) margin = ' margin:' +  selectedImageMargin + 'px; ';
					else if(selectedImageMargin) margin = ' margin:' +  selectedImageMargin + '; ';
					var imgSize = ' height =\"' + selectedImageHeight + '\" width = \"' + selectedImageWidth + '\"';
							";
			$sizeAndAlignTags = " style=\"' + height + width + align + border + margin +'\" ";

			$insertImage = "window.parent.insertImageTag(tag, previousSelection);";
		}else{
			$getAdditionalTags = "var selectedImageRef = document.getElementById('acy_media_browser_image_target').value; ";
			$sizeAndAlignTags = "";
			$insertImage = "window.parent.jInsertEditorText(tag, this.editor);";
		}

		if(acymailing_getVar('none', 'inpopup', '') == 'true'){
			$imgMaxHeight = 150;
			$slideValue = -395;
		}else{
			$imgMaxHeight = 190;
			$slideValue = -522;
		}
		
		$js = "
				var previousSelection = window.parent.getPreviousSelection();

				function checkSelected(imageZone) {

					if(imageZone){
						var editor = window.parent.CKEDITOR.editor;

						o = this._getUriObject(window.self.location.href);
						q = this._getQueryObject(o.query);
						zone = decodeURIComponent(q.e_name);

						var html = window.parent.getSelectedHTML(zone);
						var parsedSelection = jQuery.parseHTML(html);

						if(!parsedSelection)
							return false;

						if(parsedSelection[0].tagName == 'A'){
							var parsedImage = jQuery.parseHTML(parsedSelection[0].innerHTML);
							parsedImage = parsedImage[0];

							if(parsedSelection[0].href)
									document.getElementById('acy_media_browser_image_target').value =  parsedSelection[0].href;
						}else if(parsedSelection[0].tagName == 'IMG'){
							var parsedImage = parsedSelection[0];
						}

						if(!parsedImage) return false;

						var name = parsedImage.src.substr(parsedImage.src.lastIndexOf('/') + 1);
						if(parsedImage.src.substring(0,4)=='http'){
							var imageUrl =  parsedImage.src;
						}else{
							var imageUrl =  '".ACYMAILING_LIVE."' + parsedImage.src;
						}
						var width = parsedImage.width;
						var height = parsedImage.height;
						displayImageFromUrl(imageUrl, 'success', name, width, height);
						if(parsedImage.alt)
							document.getElementById('acy_media_browser_image_title').value =  parsedImage.alt;
					}else{
						var editor =  window.parent.editor;
						var sel = editor.getSelection();
						var ranges = sel.getRanges();
						var el = new window.parent.CKEDITOR.dom.element('div');
						for (var i = 0, len = ranges.length; i < len; ++i) {
								el.append(ranges[i].cloneContents());
						}

						if(el.getFirst() && el.getFirst().getName() == 'a'){
							var selection = el.getFirst().getHtml();
							var selectedImageRef = el.getFirst().getAttribute('href');
						} else{
							var selection = el.getHtml();
						}

						var parsedSelection = jQuery.parseHTML(selection);

						if(!parsedSelection)
							return false;
							
						if(parsedSelection[0].tagName == 'IMG'){
							var name = parsedSelection[0].src.substr(parsedSelection[0].src.lastIndexOf('/') + 1);
							var width = parsedSelection[0].width;
							var height = parsedSelection[0].height;
							if($(selection).attr('src').substring(0,4) == 'http'){
								var imageUrl =  $(selection).attr('src');
							}else{
								var imageUrl =  '".ACYMAILING_LIVE."' + $(selection).attr('src');
							}
							displayImageFromUrl(imageUrl, 'success', name, width, height);

							if(parsedSelection[0].alt)
								document.getElementById('acy_media_browser_image_title').value =  parsedSelection[0].alt;
							if(parsedSelection[0].style.width)
								document.getElementById('acy_media_browser_image_width').value =  parsedSelection[0].style.width.slice(0,-2);
							if(parsedSelection[0].style.height)
								document.getElementById('acy_media_browser_image_height').value =  parsedSelection[0].style.height.slice(0,-2);
							if(parsedSelection[0].style.cssFloat)
								document.getElementById('acy_media_browser_image_align').value =  parsedSelection[0].style.cssFloat;
							if(parsedSelection[0].style.margin)
								document.getElementById('acy_media_browser_image_margin').value =  parsedSelection[0].style.margin;
							if(parsedSelection[0].style.border)
								document.getElementById('acy_media_browser_image_border').value =  parsedSelection[0].style.border;
							if(parsedSelection[0].className)
								document.getElementById('acy_media_browser_image_class').value =  parsedSelection[0].className;
							if(selectedImageRef)
								document.getElementById('acy_media_browser_image_linkhref').value = selectedImageRef;
						}
					}
				}

				function removeAllListener(el) {
					var elClone = el.cloneNode(true);
					el.parentNode.replaceChild(elClone, el);
					return elClone;
				}

				function addResizeDragListener(src) {
					var elements = document.getElementsByClassName('drag-resize');
					for(var i = 0; i < elements.length; i++) {
						var element = elements[i];
						element = removeAllListener(element);
						
						if(navigator.userAgent.indexOf('Firefox') > 0) {
							var currentlyDrag = false;
							element.addEventListener('mousedown', function(event) {
								currentlyDrag = true;
							});
	
							element.addEventListener('mousemove', function(event) {
								if(!currentlyDrag) return;
								var scaleValue = event.offsetX;
								if(scaleValue < 0) return false;
								preloadCanvas(src, scaleValue+50);
							});
							
							document.addEventListener('mouseup', function(event) {
								currentlyDrag = false;
							});
						}else{
							element.addEventListener('drag', function(event) {
								var scaleValue = event.offsetX;
								if(scaleValue < 0) return false;
								preloadCanvas(src, scaleValue);
							});
	
							element.addEventListener('dragstart', function(event) {
								if(typeof event.dataTransfer.setDragImage === 'function'){
									var dragIcon = document.createElement('img');
									event.dataTransfer.setDragImage(dragIcon, 0, 0);
								}
							});
						}
					}
				}

				function addCropDragListener(src) {
					var elements = document.getElementsByClassName('drag-resize');
					for(var i = 0; i < elements.length; i++) {
						var element = elements[i];
						element = removeAllListener(element);

						if(navigator.userAgent.indexOf('Firefox') > 0) {
							var currentlyCrop = false;
							element.addEventListener('mousedown', function(event) {
								currentlyCrop = true;
								var coords = {x: event.offsetX, y: event.offsetY, screenX: event.screenX, screenY: event.screenY};
								this.setAttribute('initial-click', JSON.stringify(coords));
							});
	
							element.addEventListener('mousemove', function(event) {
								if(!currentlyCrop) return;
								var coords = JSON.parse(this.getAttribute('initial-click'));
								var width = (event.screenX - coords.screenX);
								var height = (event.screenY - coords.screenY);
								drawRectangle(src, coords.x, coords.y, width, height);
							});
							
							document.addEventListener('mouseup', function(event) {
								if(!currentlyCrop) return;
								currentlyCrop = false;
								
								var coords = JSON.parse(element.getAttribute('initial-click'));
								element.removeAttribute('initial-click');
								var width = (event.screenX - coords.screenX);
								var height = (event.screenY - coords.screenY);
								if(width < 0) {
									width = Math.abs(width);
									coords.x = coords.x - width;
								}
								if (height < 0) {
									height = Math.abs(height);
									coords.y = coords.y - height;
								}
	
								cropImage(src, coords.x, coords.y, width, height)
							});
						}else{
							element.addEventListener('dragend', function(event) {
								var coords = JSON.parse(this.getAttribute('initial-click'));
								this.removeAttribute('initial-click');
								var width = (event.screenX - coords.screenX);
								var height = (event.screenY - coords.screenY);
								if(width < 0) {
									width = Math.abs(width);
									coords.x = coords.x - width;
								}
								if (height < 0) {
									height = Math.abs(height);
									coords.y = coords.y - height;
								}
	
								cropImage(src, coords.x, coords.y, width, height)
							});
	
							element.addEventListener('dragstart', function(event) {
								var coords = {x: event.offsetX, y: event.offsetY, screenX: event.screenX, screenY: event.screenY};
								this.setAttribute('initial-click', JSON.stringify(coords));
								
								if(typeof event.dataTransfer.setDragImage === 'function'){
									var dragIcon = document.createElement('img');
									event.dataTransfer.setDragImage(dragIcon, 0, 0);
								}
							});
	
							element.addEventListener('drag', function(event) {
								var coords = JSON.parse(this.getAttribute('initial-click'));
								var width = (event.screenX - coords.screenX);
								var height = (event.screenY - coords.screenY);
								drawRectangle(src, coords.x, coords.y, width, height);
							});
						}
					}
				}

				function roundedCorner() {
					var selectedImage = document.getElementById('acy_media_browser_selected_image');
					if(typeof selectedImage == 'undefined') return false;

					var canvas = document.getElementById('edition-canvas');
					var ctx = canvas.getContext('2d');

					ctx.clearRect(0, 0, canvas.width, canvas.height);

					var image = new Image();
					image.src = selectedImage.src;

					canvas.width = image.width;
					canvas.height = image.height;

					image.onload = function(event) {
						var radius = document.getElementById('radius-image').value;
						roundedRectangle(0, 0, this.width, this.height, radius, ctx);
						ctx.clip();
						ctx.drawImage(this, 0, 0, this.width, this.height);
					}
				}

				function roundedRectangle(x, y, width, height, radius, ctx) {
				    ctx.beginPath();
				    ctx.moveTo(x + radius, y);
				    ctx.lineTo(x + width - radius, y);
				    ctx.quadraticCurveTo(x + width, y, x + width, y + radius);
				    ctx.lineTo(x + width, y + height - radius);
				    ctx.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);
				    ctx.lineTo(x + radius, y + height);
				    ctx.quadraticCurveTo(x, y + height, x, y + height - radius);
				    ctx.lineTo(x, y + radius);
				    ctx.quadraticCurveTo(x, y, x + radius, y);
				    ctx.closePath();
				}

				function cancelModification() {
					var selectedImage = document.getElementById('acy_media_browser_selected_image');
					var imageWidth = document.getElementById('acy_media_browser_image_width').value;
						
					if(typeof selectedImage == 'undefined') return false;
					preloadCanvas(selectedImage.src, imageWidth);
				}

				function changeToCrop() {
					var selectedImage = document.getElementById('acy_media_browser_selected_image');
					var imageWidth = document.getElementById('acy_media_browser_image_width').value;

					if(typeof selectedImage == 'undefined') return false;

					addCropDragListener(selectedImage.src);
					preloadCanvas(selectedImage.src, imageWidth);
				}

				function changeToScale() {
					var selectedImage = document.getElementById('acy_media_browser_selected_image');
					var imageWidth = document.getElementById('acy_media_browser_image_width').value;

					if(typeof selectedImage == 'undefined') return false;

					addResizeDragListener(selectedImage.src);
					preloadCanvas(selectedImage.src, imageWidth);
				}

				function validateImageModification() {
					var canvas = document.getElementById('edition-canvas');
					var dataURL = canvas.toDataURL('image/png');
					document.getElementById('imagedata').value = dataURL;
					
					var form = document.getElementById('form-edition');
					var queryString = form.action;
					var dataString = form.toQueryString();
					
					var xhr = new XMLHttpRequest();
					xhr.open('POST', queryString);
					xhr.setRequestHeader(\"Content-type\", \"application/x-www-form-urlencoded\");
					xhr.onload = function(){
						closePanel();
						window.location.href = window.location.href;
					};
					xhr.send(dataString);
					
					return false;
				}

				function closePanel() {
					document.getElementById('image-edition').classList.add('hidden-edition');
				}

				function drawRectangle(src, sx, sy, sw, sh) {
					var canvas = document.createElement('canvas');
					canvas.id = 'edition-canvas';
					var machin = document.getElementById('edition-canvas');
					var parent = machin.parentElement;
					parent.removeChild(machin);
					parent.appendChild(canvas);
					
					canvas = document.getElementById('edition-canvas');
					
					
					var ctx = canvas.getContext('2d');
					var image = new Image();
					image.src = src;

					canvas.width = image.width;
					canvas.height = image.height;

					ctx.drawImage(image, 0, 0, image.width, image.height);
					ctx.rect(sx, sy, sw, sh);
					ctx.strokeStyle='red';
					ctx.stroke();
				}

				function cropImage(src, sx, sy, sw, sh) {
					var canvas = document.getElementById('edition-canvas');
					var ctx = canvas.getContext('2d');
					var image = new Image();
					image.src = src;

					ctx.clearRect(0, 0, canvas.width, canvas.height);

					canvas.width = sw;
					canvas.height = sh;

					ctx.drawImage(image, sx, sy, sw, sh, 0, 0, sw, sh);
				}

				function preloadCanvas(src, width) {
					var canvas = document.getElementById('edition-canvas');
					var ctx = canvas.getContext('2d');
					var image = new Image();
					image.src = src;

					ctx.clearRect(0, 0, canvas.width, canvas.height);

					var ratio = image.width / image.height;

					canvas.width = width;
					canvas.height = (width / ratio);

					ctx.drawImage(image, 0, 0, width, (width / ratio));
				}

				function displayImageEdition() {
					var selectedImage = document.getElementById('acy_media_browser_selected_image');
					var imageWidth = document.getElementById('acy_media_browser_image_width').value;

					if(selectedImage == null) return false;
					addResizeDragListener(selectedImage.src);
					preloadCanvas(selectedImage.src, imageWidth);
					document.getElementById('pathtosave').value = document.getElementById('currentPath').value;

					document.getElementById('image-edition').classList.toggle('hidden-edition');
				}

				function displayImageFromUrl(url, result, name, width, height, fromUrl){
					if(result=='success'){
							var infos = '<div style=\"width:100%; display:block: height:1px; float:left; margin-top:10px;\"></div>';
							document.getElementById('acy_media_browser_image_selected').innerHTML='<img id=\"acy_media_browser_selected_image\" src=\"' + url + '\"  style=\"border: 1px solid rgb(233, 233, 233); float:left; margin-right:15px; max-width: 230px; max-height:".$imgMaxHeight."px;\"></img>'+infos;
							document.getElementById('acy_media_browser_image_selected').style.display=\"\";
							if(!name){ var name = url.substr(url.lastIndexOf('/') + 1); }
							if(width){
								document.getElementById('acy_media_browser_image_selected_info').innerHTML='<div><span id=\"acy_media_browser_image_selected_name\" style=\"font-weight:bold;\"> '+name+'</span><br />'+width+'x'+height+'<br />';
								var widthField = document.getElementById('acy_media_browser_image_width');
								var heightField = document.getElementById('acy_media_browser_image_height');
								if(widthField) widthField.value = width;
								if(heightField) heightField.value = height;
							}
							document.getElementById('acy_media_browser_image_selected_info').style.display=\"\";
							if(fromUrl){
								document.getElementById('acy_media_browser_insert_message').innerHTML='<span style=\"color:green;\">".str_replace("'", "\'", acymailing_translation('IMAGE_FOUND'))."</span>';
							}
					}else{
							document.getElementById('acy_media_browser_image_selected').innerHTML=\"\";
							document.getElementById('acy_media_browser_image_selected').style.display=\"none\";
							document.getElementById('acy_media_browser_image_selected_info').innerHTML=\"\";
							if(fromUrl){
								if(result='error'){
									document.getElementById('acy_media_browser_insert_message').innerHTML='<span style=\"color:red;\">".str_replace("'", "\'", acymailing_translation('IMAGE_NOT_FOUND'))."</span>';
								}else if(result='timeout'){
									document.getElementById('acy_media_browser_insert_message').innerHTML='<span style=\"color:red;\">".str_replace("'", "\'", acymailing_translation('IMAGE_TIMEOUT'))."</span>';
								}
							}
					}
				}


				function calculateSize(newHeight, newWidth){
					if((newHeight == '' && newWidth == '') || (newHeight == '' && newWidth == 0) || (newHeight == 0 && newWidth == '')) return;
					var img = document.getElementById('acy_media_browser_selected_image');
					if(!img) return;

					if(newHeight == 0)
						document.getElementById('acy_media_browser_image_height').value =  parseInt(img.naturalHeight * (newWidth / img.naturalWidth));

					if(newWidth == 0)
						document.getElementById('acy_media_browser_image_width').value =  parseInt(img.naturalWidth * (newHeight / img.naturalHeight));
				}


				function testImage(url, callback, timeout) {
					timeout = timeout || 5000;
						var timedOut = false, timer;
						var img = new Image();
						img.onerror = img.onabort = function() {
								if (!timedOut) {
										clearTimeout(timer);
										callback(url, \"error\", '', '', '',true);
								}
						};
						img.onload = function() {
								if (!timedOut) {
										clearTimeout(timer);
										callback(url, \"success\",'','', '',true);
								}
						};
						img.src = url;
						timer = setTimeout(function() {
								timedOut = true;
								callback(url, \"timeout\", '', '', '', true);
						}, timeout);
				}

				function displayAppropriateField(id){
					if(id==\"import_from_url_btn\"){
							document.getElementById('upload_image').style.display=\"none\";
							document.getElementById('import_from_url').style.display=\"block\";

							jQuery('#acy_media_browser_buttons_block').css('width', '0');
							jQuery('#acy_media_browser_buttons_block').css('opacity', '0');
							jQuery('#acy_media_browser_hidden_elements').css('width', '522px');
							jQuery('#acy_media_browser_hidden_elements').css('opacity', '1');

					}else if(id==\"upload_image_btn\"){
							document.getElementById('upload_image').style.display=\"block\";
							document.getElementById('import_from_url').style.display=\"none\";

							jQuery('#acy_media_browser_buttons_block').css('width', '0');
							jQuery('#acy_media_browser_buttons_block').css('opacity', '0');
							jQuery('#acy_media_browser_hidden_elements').css('width', '522px');
							jQuery('#acy_media_browser_hidden_elements').css('opacity', '1');

					}else if(id == \"create_folder_btn\"){
						if(document.getElementById('acy_media_browser_area_create_folder').style.display == \"none\"){
							document.getElementById('acy_media_browser_area_create_folder').style.display = \"\";
							jQuery('#acy_media_browser_area_create_folder').stop().animate({height: '85px'},400);
						}else{
							document.getElementById('acy_media_browser_area_create_folder').style.display = \"none\";
							jQuery('#acy_media_browser_area_create_folder').stop().animate({height: '0px'},400);
						}
					}else{
							jQuery('#acy_media_browser_hidden_elements').css('width', '0');
							jQuery('#acy_media_browser_hidden_elements').css('opacity', '0');
							jQuery('#acy_media_browser_buttons_block').css('width', '522px');
							jQuery('#acy_media_browser_buttons_block').css('opacity', '1');

					}
				}

				function toggleImageInfo(id, action){
					if(action==\"display\"){
							document.getElementById('acy_media_browser_image_info_'+id+'').style.display = \"\";
					}else{
							document.getElementById('acy_media_browser_image_info_'+id+'').style.display = \"none\";
					}
				}

				function _getQueryObject(q) {
					var vars = q.split(/[&;]/);
					var rs = {};
					if (vars.length){
						for(var i = 0 ; i<vars.length ; i++){
							var val = vars[i];
							var keys = val.split('=');
							if (keys.length && keys.length == 2) rs[encodeURIComponent(keys[0])] = encodeURIComponent(keys[1]);
						}
					}
					return rs;
				}

				function _getUriObject(u){
					var bits = u.match(/^(?:([^:\/?#.]+):)?(?:\/\/)?(([^:\/?#]*)(?::(\d*))?)((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[\?#]|$)))*\/?)?([^?#\/]*))?(?:\?([^#]*))?(?:#(.*))?/);
					
					return (bits)
						? {uri: bits[0], scheme: bits[1], authority: bits[2], domain: bits[3], port: bits[4], path: bits[5], directory: bits[6], file: bits[7], query: bits[8], fragment: bits[9]}
						: null;
				}

				function validateImage(){
					var urlInput = document.getElementById('acy_media_browser_url_input').value;
					var urlImageName = urlInput.substr(urlInput.lastIndexOf('/') + 1);
					var selectedImageName = '';
					if(document.getElementById('acy_media_browser_image_selected_name'))
					var selectedImageName = document.getElementById('acy_media_browser_image_selected_name').innerHTML;

					var selectedImageAlt = document.getElementById('acy_media_browser_image_title').value;
					var selectedImageRef = '';
					if(document.getElementById('acy_media_browser_image_linkhref'))
						var selectedImageRef = document.getElementById('acy_media_browser_image_linkhref').value;
					var selectedImageUrl = document.getElementById('acy_media_browser_selected_image').src;
					var imgSize = '';
					var selectedImageClass = '';
					if(document.getElementById('acy_media_browser_image_class'))
						var selectedImageClass = document.getElementById('acy_media_browser_image_class').value;

					".$getAdditionalTags."

					o = this._getUriObject(window.self.location.href);
					q = this._getQueryObject(o.query);
					this.editor = decodeURIComponent(q.e_name);

					var dropdown = document.getElementById('acy_media_browser_files_path');
					var path = dropdown.value;
					var base = ' ".ACYMAILING_LIVE." ';

					if(urlInput!='http://' && selectedImageName.trim()==urlImageName.trim()){
							var tag = '<img ' + imgSize + ' src=\"' + urlInput + '\" alt=\"' + selectedImageAlt + '\" ".$sizeAndAlignTags." class=\"' + selectedImageClass + '\" />';
					}else{
							var tag = '<img ' + imgSize + ' src=\"' + selectedImageUrl + '\" alt=\"' + selectedImageAlt + '\" ".$sizeAndAlignTags." class=\"' + selectedImageClass + '\" />';
					}

					if(selectedImageRef){
							tag = '<a href=\"' + selectedImageRef + '\">' + tag + '</a>';
					}

					".$insertImage."
					return false;
				}

				function changeFolder(folderName){
					var url = window.location.href;
					if (url.indexOf('?') > -1){
							var lastParam = url.substring(url.lastIndexOf('&') + 1);
							if(url.indexOf('pictName') > -1){
								var temp = url.split('&');
								for(var i=0;i<temp.length;i++){
									if(temp[i].indexOf('pictName') > -1){
										temp.splice(i, 1);
										i--;
									}
								}
								url = temp.join('&');
								lastParam = url.substring(url.lastIndexOf('&') + 1);
							}
							if(lastParam == 'task=createFolder')url = url.replace(lastParam,'task=browse&e_name=ACY_NAME_AREA');
							lastParam = lastParam.split('=');
							if(lastParam=='selected_folder')
								url = url.replace(lastParam, 'selected_folder='+folderName);
							else
								url += '&selected_folder='+folderName;
					}else{
							 url += '?selected_folder='+folderName;
					}
					window.location.href = url;
				}

				function confirmBox(type, pictName, originalName){
					if(type == 'delete'){
						document.getElementById('confirmTxtMM').innerHTML = '".acymailing_translation('ACY_VALIDDELETEITEMS')."<br /><span class=\"acy_folder_name\">('+pictName+')</span><br />';
						document.getElementById('textBtnAction').innerHTML = '".acymailing_translation('ACY_DELETE')."';
						document.getElementById('confirmOkMM').className = 'acymailing_button acymailing_button_delete';
						document.getElementById('iconAction').className = 'acyicon-delete';
					}else{
						document.getElementById('confirmTxtMM').innerHTML =  '".acymailing_translation('ACY_REPLACE_FILE_TEXT')."<br />';
						document.getElementById('textBtnAction').innerHTML = '".acymailing_translation('ACY_REPLACE_FILE')."';
						document.getElementById('confirmOkMM').className = 'acymailing_button';
						document.getElementById('iconAction').className = 'acyicon-edit';
					}

					var divDelete = document.getElementById('confirmOkMM');
					divDelete.onclick = function(){
						if(type == 'delete'){
							reloadAndAction(type, pictName);
						}else{
							reloadAndAction(type, pictName, originalName);
						}
					}
					var divConfirm = document.getElementById('confirmBoxMM');
					divConfirm.style.display = 'inline';
				}

				function reloadAndAction(type, pictName, originalName){
					var urlPict = window.location.href;
					var lastParam = urlPict.substring(urlPict.lastIndexOf('&') + 1);
					if(lastParam.indexOf('pictName=') > -1){
						urlPict = urlPict.substring(0, urlPict.indexOf('pictName=')-1);
					}
					if(lastParam.indexOf('pictRename=') > -1){
						urlPict = urlPict.substring(0, urlPict.indexOf('pictRename=')-1);
						lastParam = urlPict.substring(urlPict.lastIndexOf('&') + 1);
						if(lastParam.indexOf('originalName=') > -1){
							urlPict = urlPict.substring(0, urlPict.indexOf('originalName=')-1);
						}
					}

					if(urlPict.indexOf('?') > -1){
						if(type == 'delete'){
							window.location.href = urlPict + '&pictName=' + pictName;
						}else{
							window.location.href = urlPict + '&originalName=' + originalName + '&pictRename=' + pictName;
						}
					} else{
						if(type == 'delete'){
							window.location.href = urlPict + '?pictName=' + pictName;
						}else{
							window.location.href = urlPict + '?originalName=' + originalName + '&pictRename=' + pictName;
						}
					}
				}
				function changeDisplay(event){
					if(document.getElementById('displayPict').style.display == ''){
						display('list');
					}else{
						display('icons');
					}
				}
				function display(type){
					if(type == 'list'){
						document.getElementById('displayPict').style.display = 'none';
						document.getElementById('displayLine').style.display = '';
						document.getElementById('btn_change_display').title = '".acymailing_translation('ACY_DISPLAY_ICON')."';
						document.getElementById('iconTypeDisplay').className = 'acyicon-image_view';
					}else{
						document.getElementById('displayPict').style.display = '';
						document.getElementById('displayLine').style.display = 'none';
						document.getElementById('btn_change_display').title = '".acymailing_translation('ACY_DISPLAY_NOICON')."';
						document.getElementById('iconTypeDisplay').className = 'acyicon-list_view';
					}
				}
			";

		acymailing_addScript(true, $js);
	}

	private function _displayHTML(){

		$mediaFolders = acymailing_getFilesFolder('media', true);

		$receivedFolder = acymailing_getUserVar(ACYMAILING_COMPONENT.".acyeditor.selected_folder", 'selected_folder', '', 'string');
		$defaultFolder = reset($mediaFolders);

		if(!empty($receivedFolder)){
			$allowed = false;
			foreach($mediaFolders as $oneMedia){
				if(preg_match('#^'.preg_quote(rtrim($oneMedia, '/')).'[a-z_0-9\-/]*$#i', $receivedFolder)){
					$allowed = true;
					break;
				}
			}
			if($allowed){
				$defaultFolder = $receivedFolder;
			}else{
				acymailing_display('You are not allowed to access this folder', 'error');
			}
		}

		$uploadPath = acymailing_cleanPath(ACYMAILING_ROOT.trim(str_replace('/', DS, trim($defaultFolder)), DS));

		$uploadedImage = acymailing_getVar('array', 'uploadedImage', array(), 'files');
		if(!empty($uploadedImage)){
			if(!empty($uploadedImage['name'])){
				$this->imageName = acymailing_importFile($uploadedImage, $uploadPath, true);
				if(!empty($this->imageName)){
					$uploadMessage = 'success';
				}else $uploadMessage = 'error';
			}else{
				$uploadMessage = 'error';
				$this->message = acymailing_translation('BROWSE_FILE');
			}
		}

		if(empty($uploadedImage)){
			$pictToDelete = acymailing_getVar('string', 'pictName', '');
			$originalName = acymailing_getVar('string', 'originalName', '');
			$pictToRename = acymailing_getVar('string', 'pictRename', '');
			if(!empty($originalName) && !empty($pictToRename)){
				$pictToDelete = $originalName;
			}
			if(!empty($pictToDelete) && file_exists($uploadPath.DS.$pictToDelete)){
				$checkPictNews = acymailing_loadResultArray('SELECT mailid FROM #__acymailing_mail WHERE body LIKE \'%src="'.ACYMAILING_LIVE.$defaultFolder.'/'.$pictToDelete.'"%\'');
				$checkPictTemplate = acymailing_loadResultArray('SELECT tempid FROM #__acymailing_template WHERE body LIKE \'%src="'.ACYMAILING_LIVE.$defaultFolder.'/'.$pictToDelete.'"%\'');

				if(!empty($checkPictNews) || !empty($checkPictTemplate)){
					foreach($checkPictNews as $k => $oneNews){
						$checkPictNews[$k] = '<a href="" onclick="window.parent.document.location.href=\''.acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'newsletter&task=edit&mailid='.$oneNews).'\'">'.$oneNews.'</a>';
					}
					if(acymailing_isAdmin()){
						foreach($checkPictTemplate as $k => $oneTmpl){
							$checkPictTemplate[$k] = '<a href="" onclick="window.parent.document.location.href=\''.acymailing_completeLink('template&task=edit&tempid='.$oneTmpl).'\'">'.$oneTmpl.'</a>';
						}
					}
					acymailing_display(acymailing_translation_sprintf('ACY_CANT_DELETE', (!empty($checkPictNews) ? implode($checkPictNews, ', ') : '-'), (!empty($checkPictTemplate) ? implode($checkPictTemplate, ', ') : '-')), 'error');
				}else{
					if(acymailing_deleteFile($uploadPath.DS.$pictToDelete)){
						acymailing_display(acymailing_translation('ACY_DELETED_PICT_SUCCESS'), 'success');
					}else{
						acymailing_display(acymailing_translation('ACY_DELETED_PICT_ERROR'), 'error');
					}
				}
			}
			if(!empty($originalName) && !empty($pictToRename)){
				if(acymailing_moveFile($uploadPath.DS.$pictToRename, $uploadPath.DS.$originalName)){
					acymailing_display(acymailing_translation('ACY_REPLACED_PICT_SUCCESS'), 'success');
				}else{
					acymailing_display(acymailing_translation('ACY_REPLACED_PICT_ERROR'), 'error');
				}
			}
		}
		?>

		<div id="acy_media_browser">
			<!-- <br style="font-size:1px"/> -->
			<table id="acy_media_browser_table" style="height:420px;">
				<tr>
					<td style="width:65%; vertical-align:top;">
						<?php

						$folders = acymailing_generateArborescence($mediaFolders);
						$filetreeType = acymailing_get('type.filetree');

						echo '<div style="display:inline-block;width:100%;">';
						echo '<form method="post" action="'.acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'editor&task=createFolder').'" style="margin: 0;">';
						echo '<div id="acy_media_browser_path_dropdown" >';
						$filetreeType->display($folders, $defaultFolder, 'acy_media_browser_files_path', 'changeFolder(path)');
						echo '</div>';

						echo '<div id="acy_media_browser_global_create_folder" >';

						echo '<div id="acy_media_browser_create_folder" >';
						echo '<button id="create_folder_btn" class="btn" onclick="displayAppropriateField(this.id)" type="button" style="width:100%; min-height: 24px;" >'.acymailing_translation('CREATE_FOLDER').'</button>';
						echo '</div>';

						echo '<div id="acy_media_browser_area_create_folder" style=\'display:none;\'>';
						echo '<input id="subFolderName" name="subFolderName" type="text" placeholder="'.acymailing_translation('FOLDER_NAME').'" name="text" required="required" />';
						echo '<input type="submit" class="acymailing_button" style="position: absolute;bottom: 9px;right: 9px;" value="'.acymailing_translation('ACY_APPLY').'" />';
						echo '</div>';

						echo '</div>';
						echo acymailing_formToken();
						echo '</form>';

						echo '<div style="margin-top: 15px; display: inline-block;"><button style="float: right;" class="btn" onclick="changeDisplay(event);" id="btn_change_display" title="'.acymailing_translation('ACY_DISPLAY_NOICON').'"><i id="iconTypeDisplay" class="acyicon-list_view"></i></button></div>';

						echo '</div>';


						acymailing_createDir($uploadPath);
						
						$files = acymailing_getFiles($uploadPath);

						echo '<div id="displayPict"><ul id="acy_media_browser_list">';

						if(!empty($uploadMessage) && !empty($this->message)){
							if($uploadMessage == 'success'){
								acymailing_display($this->message);
							}elseif($uploadMessage == 'error'){
								acymailing_display($this->message, 'error');
							}
						}

						$images = array();
						$imagesFound = false;

						$lineDisplay = '<table class="acymailing_smalltable" style="margin: 0;">';
						foreach($files as $k => $file){
							if(strrpos($file, '.') === false) continue;

							$ext = strtolower(substr($file, strrpos($file, '.') + 1));
							$extensions = array('jpg', 'jpeg', 'png', 'gif');
							if(!in_array($ext, $extensions)) continue;

							$imagesFound = true;
							$images[] = $file;
							$imageSize = getimagesize($uploadPath.DS.$file);
							?>
							<li class="acy_media_browser_images" id="acy_media_browser_images_<?php echo $k; ?>" onmouseover="toggleImageInfo(<?php echo $k; ?>, 'display')" onmouseout="toggleImageInfo(<?php echo $k; ?>, 'hide')">
								<img class="acy_media_browser_image" id="acy_media_browser_image_<?php echo $k; ?>" src="<?php echo ACYMAILING_LIVE.$defaultFolder.'/'.$file.'?v='.@filemtime(ACYMAILING_ROOT.$defaultFolder.'/'.$file); ?>"/>
								<a href="#" onclick="displayImageFromUrl('<?php echo ACYMAILING_LIVE.$defaultFolder.'/'.$file; ?>', 'success', '<?php echo $file; ?>', <?php echo empty($imageSize[0]) ? "null,null" : "'".$imageSize[0]."', '".$imageSize[1]."'"; ?>); return false;">
									<div id="acy_media_browser_image_info_<?php echo $k; ?>"
										 style="box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.2); text-shadow:1px 1px 1px #ffffff; border:2px solid #fff; padding-top:40px; text-align:center; vertical-align:middle; color:#333; font-weight:bold; position:absolute; top:0px; left:0px; bottom:0px; right:0px; display:none; background-color: rgba(255,255,255,0.8);">
										<img class="acy_media_browser_delete" id="acy_media_browser_delete_<?php echo $k; ?>" src="<?php echo ACYMAILING_LIVE.ACYMAILING_MEDIA_FOLDER.DS.'images'.DS.'editor'.DS.'delete.png'; ?>" onclick="confirmBox('delete', '<?php echo $file; ?>')"/>
										<?php echo $file; ?><br/>
										<span class="acy_media_browser_image_size"><?php echo empty($imageSize[0]) ? 0 : $imageSize[0].'x'.$imageSize[1]; ?> - <?php echo round((filesize($uploadPath.DS.$file) * 0.0009765625), 2).' ko'; ?><br/></span>
									</div>
								</a>
							</li>
							<?php
							$lineDisplay .= '<tr>';
							$lineDisplay .= '<td width="30" style="padding-left: 10px;"><a href="#" onclick="displayImageFromUrl(\''.ACYMAILING_LIVE.$defaultFolder.'/'.$file.'\', \'success\', \''.$file.'\', '.(empty($imageSize[0]) ? "null,null" : $imageSize[0].",".$imageSize[1]).'); return false;"><img src="'.ACYMAILING_LIVE.$defaultFolder.'/'.$file.'?v='.@filemtime(ACYMAILING_ROOT.$defaultFolder.'/'.$file).'" style="max-width: 24px" /></a></td>';
							$lineDisplay .= '<td><a href="#" onclick="displayImageFromUrl(\''.ACYMAILING_LIVE.$defaultFolder.'/'.$file.'\', \'success\', \''.$file.'\', '.(empty($imageSize[0]) ? "null,null" : $imageSize[0].",".$imageSize[1]).'); return false;">'.$file.'</a></td>';
							$lineDisplay .= '<td><img class="acy_attachment_delete" id="acy_media_browser_delete_'.$k.'" src="'.ACYMAILING_LIVE.'media'.DS.ACYMAILING_COMPONENT.DS.'images'.DS.'editor'.DS.'delete.png" onclick="confirmBox(\'delete\', \''.$file.'\')"/></td>';


							$lineDisplay .= '</tr>';
						}
						$lineDisplay .= '</table>';
						if(!$imagesFound){
							acymailing_display(acymailing_translation('NO_FILE_FOUND'), 'warning');
						}
						echo '</ul></div>';
						?>
						<div id="displayLine" style="display: none; text-align: left; height: 450px; overflow-x: hidden;">
							<?php
							if(!$imagesFound){
								acymailing_display(acymailing_translation('NO_FILE_FOUND'), 'warning');
							}else{
								echo $lineDisplay;
							} ?>
						</div>
						<!-- Here we give the possibility to import a file or specify and url -->
						<div id="acy_media_browser_actions">
							<div id="acy_media_browser_containing_block">
								<div id="acy_media_browser_buttons_block">
									<button type="button" class="acymailing_button_grey" id="button_editimage" onclick="displayImageEdition();"><?php echo acymailing_translation('IMAGE_EDIT') ?></button>
									<button type="button" class="acymailing_button_grey" id="upload_image_btn" onclick="displayAppropriateField(this.id)"> <?php echo acymailing_translation('UPLOAD_NEW_IMAGE'); ?></button>
									<?php echo acymailing_translation('ACY_OR'); ?>
									<button type="button" class="acymailing_button_grey" id="import_from_url_btn" onclick="displayAppropriateField(this.id)"> <?php echo acymailing_translation('INSERT_IMAGE_FROM_URL'); ?> </button>
								</div>
								<div id="acy_media_browser_hidden_elements">
									<div id="upload_image" style="position: relative; padding-top:5px;	display:none; text-align: center;">
										<form method="post" name="adminForm" id="adminForm" enctype="multipart/form-data" style="margin:0px; margin-top:3px;">
											<input type="file" style="width:auto;" name="uploadedImage"/><br/>
											<input type="hidden" name="task" value="browse"/>
											<input type="hidden" name="selected_folder" value="<?php echo htmlspecialchars($defaultFolder, ENT_COMPAT, 'UTF-8'); ?>"/>
											<?php echo acymailing_formToken(); ?>
										</form>
										<button class="acymailing_button" type="button" onclick="acymailing.submitbutton();"> <?php echo acymailing_translation('IMPORT'); ?> </button>
										<span style="position:absolute; top:5px; left:5px;" id="acy_back_from_upload" onclick="displayAppropriateField(this.id)"><a href="javascript:void(0);">&#8592 <?php echo acymailing_translation('MEDIA_BACK'); ?></a></span>
									</div>
									<div id="import_from_url" style="padding-top:9px; position:relative; ">
										<input type="text" id="acy_media_browser_url_input" class="inputbox" oninput="testImage(this.value, displayImageFromUrl)" value="http://"/>
										<div id="acy_media_browser_insert_message"></div>
										<span style="position:absolute; top:5px; left:5px;" id="acy_back_from_url" onclick="displayAppropriateField(this.id)"><a href="javascript:void(0);">&#8592 <?php echo acymailing_translation('MEDIA_BACK'); ?></a></span>
									</div>
								</div>
							</div>
						</div>
					</td>
					<!-- IMAGE INFORMATION -->
					<td id="acy_media_browser_image_details_row">
						<div id="acy_media_browser_image_details">
							<div id="acy_media_browser_image_selected" style=" max-width:230px; max-height:190px; display:none;	margin:auto; margin-bottom:10px;"></div>
							<div id="acy_media_browser_image_selected_info" style=""></div>
							<div id="acy_media_browser_image_selected_details">
								<label for="acy_media_browser_image_title" style="float:left;"><?php echo acymailing_translation('ACY_TITLE'); ?></label>
								<input type="text" id="acy_media_browser_image_title" class="inputbox" style="width:100%" value=""/>
								<?php $imageZone = acymailing_getVar('array', 'image_zone', array(), '');
								if(!empty($imageZone)){ ?>
									<input type="hidden" id="acy_media_browser_image_width" value=""/>
									<label for="acy_media_browser_image_target"><?php echo acymailing_translation('ACY_LINK'); ?></label>
									<input type="text" id="acy_media_browser_image_target" placeholder="<?php echo ACYMAILING_LIVE; ?>..." class="inputbox" style="width:100%" value=""/>
								<?php }else{ ?>
									<label for="acy_media_browser_image_width" style="display:inline;"><?php echo acymailing_translation('CAPTCHA_WIDTH'); ?></label>    <input type="text" id="acy_media_browser_image_width" style="width:23%;" value="" oninput="calculateSize(0, this.value)"/>
									<br/><label for="acy_media_browser_image_height" style="display:inline;"><?php echo acymailing_translation('CAPTCHA_HEIGHT'); ?></label>    <input type="text" id="acy_media_browser_image_height" style="width:22%;" value="" oninput="calculateSize(this.value, 0)"/>
									<br/><label for="acy_media_browser_image_align" style="display:inline;"><?php echo acymailing_translation('ALIGNMENT'); ?></label>
									<select id="acy_media_browser_image_align" class="chzn-done" style="width:50%">
										<option value=""><?php echo acymailing_translation('NOT_SET'); ?></option>
										<option value="left"><?php echo acymailing_translation('ACY_LEFT'); ?></option>
										<option value="right"><?php echo acymailing_translation('ACY_RIGHT'); ?></option>
									</select><br/>
									<label for="acy_media_browser_image_margin" style="display:inline;"><?php echo acymailing_translation('ACY_MARGIN'); ?></label>    <input type="text" style="width:23%;" id="acy_media_browser_image_margin" value=""/><br/>
									<label for="acy_media_browser_image_border" style="display:inline;"><?php echo acymailing_translation('ACY_BORDER'); ?></label>    <input type="text" style="width:23%;" id="acy_media_browser_image_border" value=""/><br/>
									<label for="acy_media_browser_image_class" style="display:inline;"><?php echo acymailing_translation('ACY_CLASS'); ?></label>    <input type="text" style="width:50%;" id="acy_media_browser_image_class" value=""/>
									<input type="hidden" id="acy_media_browser_image_linkhref" value=""/>
								<?php } ?>
							</div>
							<button class="acymailing_button" type="button" onclick="validateImage();parent.acymailing.closeBox();" style=" position:absolute; bottom:6px; right:6px; "><?php echo acymailing_translation('INSERT'); ?> </button>
						</div>
					</td>
				</tr>
			</table>
			<div class="hidden-edition" id="image-edition">
				<div id="image-edition-content">
					<div class="drag-resize" draggable="true">
						<canvas id="edition-canvas"></canvas>
					</div>
				</div>
				<div class="image-edition-toolbar">
					<br />
					<?php echo acymailing_translation('ACY_IMAGE_EFFECTS') ?><br/>
					<button style="display: inline-block;width:127px;vertical-align: bottom;" type="button" class="acymailing_button_grey" onclick="roundedCorner()"><?php echo acymailing_translation('ACY_EFFECT_ROUNDED') ?></button>
					<input style="font-size:18px;display: inline-block;width:<?php echo ACYMAILING_J30 ? '45' : '58'; ?>px;" type="number" id="radius-image" min="0" max="100" value="50"/>
					<button style="width:100%;" type="button" class="acymailing_button_grey" onclick="changeToCrop()"><?php echo acymailing_translation('ACY_EFFECT_CROP') ?></button>
					<button style="width:100%;" type="button" class="acymailing_button_grey" onclick="changeToScale()"><?php echo acymailing_translation('ACY_EFFECT_SCALE') ?></button>
					<button style="width:100%;" type="button" class="acymailing_button_grey" onclick="cancelModification()"><?php echo acymailing_translation('ACY_CANCEL') ?></button>
					<br/><br/>
					<?php $formAction = acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'editor&task=saveImage'); ?>
					<form style="text-align: center;" id="form-edition" method="post" action="<?php echo $formAction ?>" onsubmit="return false;">
						<input style="width:176px;padding:5px;border-radius:4px;" type="text" name="imagename" id="imagename" value="" placeholder="<?php echo acymailing_translation('ACY_IMAGE_NAME') ?>">
						<input type="hidden" name="imagedata" id="imagedata" value="">
						<input type="hidden" name="pathtosave" id="pathtosave" value="">
						<button style="width:48%;display:inline-block" type="button" class="acymailing_button_grey" onclick="if(document.getElementById('imagename').value == ''){alert('<?php echo str_replace("'", "\'", acymailing_translation('FILL_ALL')); ?>');return false;}validateImageModification()"><?php echo acymailing_translation('ACY_SAVE') ?></button>
						<button style="width:48%;display:inline-block" type="button" class="acymailing_button_grey" onclick="closePanel()"><?php echo acymailing_translation('ACY_CANCEL') ?></button>
						<?php echo acymailing_formToken(); ?>
					</form>
				</div>
			</div>
			<div class="confirmBoxMM" id="confirmBoxMM" style="display: none;">
				<div id="acy_popup_content">
					<span class="confirmTxtMM" id="confirmTxtMM"></span><br/>
					<button class="acymailing_button" id="confirmCancelMM" onclick="document.getElementById('confirmBoxMM').style.display='none';" style="padding: 6px 15px 6px 10px;">
						<i class="acyicon-cancel" style="margin-right: 5px; font-size: 16px;top: 2px; position: relative;"></i><?php echo acymailing_translation('ACY_CANCEL'); ?>
					</button>
					<button class="acymailing_button acymailing_button_delete" id="confirmOkMM" style="padding: 8px 15px 6px 10px;">
						<i class="acyicon-delete" id="iconAction" style="margin-right: 5px; font-size: 12px;"></i><span id="textBtnAction"><?php echo acymailing_translation('ACY_DELETE'); ?></span>
					</button>
				</div>
			</div>
		</div>
		<?php

		$imageZone = acymailing_getVar('array', 'image_zone', array(), '');
		if($imageZone){
			echo '<script>checkSelected(true);</script>';
		}else{
			echo '<script>checkSelected();</script>';
		}

		if(isset($uploadMessage) && $uploadMessage == 'success' && file_exists(ACYMAILING_ROOT.rtrim($defaultFolder, '/').'/'.$this->imageName)){
			$imageSize = getimagesize(ACYMAILING_LIVE.rtrim($defaultFolder, '/').'/'.$this->imageName);
			echo '<script> displayImageFromUrl(\''.ACYMAILING_LIVE.rtrim($defaultFolder, '/').'/'.$this->imageName.'\',\'success\', \''.$this->imageName.'\', '.(empty($imageSize[0]) ? "null,null" : $imageSize[0].",".$imageSize[1]).');</script>';
		}
	}

	public function saveImage(){
		acymailing_checkToken();
		$data = $_POST['imagedata'];
		$name = acymailing_getVar('string', 'imagename', '');
		$pathtosave = acymailing_getVar('path', 'pathtosave', '', 'post');

		$uri = substr($data, strpos($data, ",") + 1);
		file_put_contents(ACYMAILING_ROOT.$pathtosave.DS.$name.'.png', base64_decode($uri));
	}

	public function createFolder(){
		acymailing_checkToken();
		$folderName = str_replace(array('.', '-'), array('', '_'), strtolower(acymailing_getVar('cmd', 'subFolderName')));
		if(empty($folderName)){
			$this->browse();
			return false;
		}

		$directoryPath = acymailing_getVar('string', 'acy_media_browser_files_path').'/'.$folderName;

		$mediaFolders = acymailing_getFilesFolder('media', true);
		$allowed = false;
		foreach($mediaFolders as $oneMedia){
			if(preg_match('#^'.preg_quote($oneMedia).'[a-z_0-9\-/]*$#i', $directoryPath)){
				$allowed = true;
				break;
			}
		}
		if(!$allowed){
			acymailing_enqueueMessage('You are not allowed to create this folder', 'error');
			$this->browse();
			return false;
		}

		$directoryPath = str_replace('/', DS, $directoryPath);
		if(is_dir(ACYMAILING_ROOT.$directoryPath)){
			acymailing_enqueueMessage(acymailing_translation('FOLDER_ALREADY_EXISTS'), 'warning');
			$this->browse();
			return false;
		}
		if(!acymailing_createFolder(ACYMAILING_ROOT.$directoryPath)){
			acymailing_enqueueMessage(acymailing_translation_sprintf('WRITABLE_FOLDER', substr(ACYMAILING_ROOT.$directoryPath, 0, strrpos(ACYMAILING_ROOT.$directoryPath, DS)), 'error'));
			$this->browse();
			return false;
		}
		acymailing_setVar('selected_folder', acymailing_getVar('string', 'acy_media_browser_files_path').'/'.$folderName);
		$this->browse();
	}
}
controllers/action.php000060400000003144152455705230011106 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class ActionController extends acymailingController{

	var $pkey = 'action_id';
	var $table = 'action';
	var $aclCat = 'distribution';

	function listing(){
		$actionColumns = acymailing_getColumns('#__acymailing_action');
		if(empty($actionColumns['senderfrom'])){
			acymailing_query("ALTER TABLE #__acymailing_action ADD `senderfrom` tinyint NOT NULL DEFAULT 0");
		}
		if(empty($actionColumns['senderto'])){
			acymailing_query("ALTER TABLE #__acymailing_action ADD `senderto` tinyint NOT NULL DEFAULT 0");
		}
		if(empty($actionColumns['delete_wrong_emails'])){
			acymailing_query("ALTER TABLE #__acymailing_action ADD `delete_wrong_emails` tinyint NOT NULL DEFAULT 0");
		}

		if(!acymailing_level(3)){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->setTitle(acymailing_translation('ACY_DISTRIBUTION'), 'action');
			$acyToolbar->help('distributionlists#listing');
			$acyToolbar->display();
			$config = acymailing_config();
			$level = $config->get('level');
			$url = ACYMAILING_HELPURL.'paidversion&utm_source=acymailing-'.$level.'&utm_medium=back-end&utm_content=distributionlist-display&utm_campaign=upgrade';
			$iFrame = "<iframe class='paidversion' frameborder='0' src='$url' width='100%' height='100%' scrolling='auto'></iframe>";
			echo $iFrame.'<div id="iframedoc"></div>';
			return;
		}

		return parent::listing();
	}

}
controllers/email.php000060400000006571152455705230010727 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class EmailController extends acymailingController{
	
	function test(){

		$this->store();

		$mailHelper = acymailing_get('helper.mailer');

		$receiver = acymailing_currentUserEmail();
		$mailid = acymailing_getCID('mailid');

		$mailHelper->report = false;
		$result = $mailHelper->sendOne($mailid, $receiver);
		acymailing_enqueueMessage($mailHelper->reportMessage, $result ? 'success' : 'error');

		return $this->edit();
	}

	function store(){
		acymailing_checkToken();

		$oldMailid = acymailing_getCID('mailid');
		$mailClass = acymailing_get('class.mail');

		if($mailClass->saveForm()){
			$data = acymailing_getVar('none', 'data');
			$type = @$data['mail']['type'];
			if(!empty($type) AND in_array($type, array('unsub', 'welcome'))){
				$subject = addslashes($data['mail']['subject']);
				$mailid = acymailing_getVar('int', 'mailid');
				if($type == 'unsub'){
					$js = "var mydrop = window.top.document.getElementById('datalistunsubmailid'); ";
					$js .= "var type = 'unsub';";
				}else{ //type=welcome
					$js = "var mydrop = window.top.document.getElementById('datalistwelmailid'); ";
					$js .= "var type = 'welcome';";
				}
				if(empty($oldMailid)){
					$js .= 'var optn = document.createElement("OPTION");';
					$js .= "optn.text = '[$mailid] $subject'; optn.value = '$mailid';";
					$js .= 'mydrop.options.add(optn);';
					$js .= 'lastid = 0; while(mydrop.options[lastid+1]){lastid = lastid+1;} mydrop.selectedIndex = lastid;';
					$js .= 'window.top.changeMessage(type,'.$mailid.');';
				}else{
					$js .= "lastid = 0; notfound = true; while(notfound && mydrop.options[lastid]){if(mydrop.options[lastid].value == $mailid){mydrop.options[lastid].text = '[$mailid] $subject';notfound = false;} lastid = lastid+1;}";
				}
				if(ACYMAILING_J30) $js .= 'window.top.jQuery("#datalist'.($type == 'unsub' ? 'unsub' : 'wel').'mailid").trigger("liszt:updated");';
				acymailing_addScript(true, $js);
			}
			acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'), 'success');
		}else{
			acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
		}
	}//endfct store

	function chooseListBeforeSend(){
		return $this->listing();
	}

	function sendArticle(){
		$mailClass = acymailing_get('class.mail');
		$listmailClass = acymailing_get('class.listmail');
		$mailerHelper = acymailing_get('helper.mailer');

		$query = 'SELECT * FROM #__acymailing_mail WHERE type = \'article\'';
		$mail = acymailing_loadObject($query);

		$listsids = acymailing_getVar('array', 'cid', array(), '');
		acymailing_arrayToInteger($listsids);

		$newMailId = $mailClass->copyOneNewsletter($mail->mailid);
		$newMail = $mailClass->get($newMailId);
		$newMail->alias = '';
		$newMail->senddate = time();
		$newMail->published = 2;
		$newMail->type = 'news';
		$mailerHelper->triggerTagsWithRightLanguage($newMail, false); //We replace the tags in the mail
		$mailid = $mailClass->save($newMail);

		$listmailClass->save($mailid, $listsids);

		$schedHelper = acymailing_get('helper.schedule');
		$schedHelper->queueScheduled();
		if(!empty($schedHelper->messages)) acymailing_enqueueMessage($schedHelper->messages);
	}
}//endclass
controllers/tag.php000060400000003343152455705230010405 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class TagController extends acymailingController
{
	var $aclCat = 'tags';

	function __construct($config = array()){
		parent::__construct($config);
		acymailing_setNoTemplate();

		$this->registerDefaultTask('tag');
	}

	function tag(){
		if(!$this->isAllowed($this->aclCat,'view')) return;
		acymailing_setVar( 'layout', 'tag'  );
		return parent::display();
	}

	function plgtrigger(){
		if(!require_once(ACYMAILING_BACK.DS.'controllers'.DS.'cpanel.php')) return;
		$cPanelController = acymailing_get('controller.cpanel');
		$cPanelController->plgtrigger();
		return;
	}

	function customtemplate(){
		acymailing_setVar('layout', 'form');
		return parent::display();
	}

	function store(){
		acymailing_checkToken();

		$plugin = acymailing_getVar('string', 'plugin');
		$plugin = preg_replace('#[^a-zA-Z0-9]#Uis', '', $plugin);
		$body = acymailing_getVar('string', 'templatebody', '', '', ACY_ALLOWRAW);

		if(empty($body)){ acymailing_enqueueMessage(acymailing_translation('FILL_ALL'),'error'); return; }

		$pluginsFolder = ACYMAILING_MEDIA.'plugins';
		if(!file_exists($pluginsFolder)) acymailing_createDir($pluginsFolder);

		try{
			
			$status = acymailing_writeFile($pluginsFolder.DS.$plugin.'.php',$body);
		}catch(Exception $e){
			$status = false;
		}

		if($status) acymailing_enqueueMessage(acymailing_translation('JOOMEXT_SUCC_SAVED'),'success');
		else acymailing_enqueueMessage(acymailing_translation_sprintf('FAIL_SAVE', $pluginsFolder.DS.$plugin.'.php'),'error');
	}
}
views/subscriber/view.html.php000060400000042653152455705230012510 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class SubscriberViewSubscriber extends acymailingView{

	var $searchFields = array('a.name', 'a.email', 'a.subid', 'a.userid');
	var $selectedFields = array('a.*');
	var $ctrl = 'subscriber';

	function __construct($config = array()){
		parent::__construct($config);

		$this->searchFields[] = 'b.'.$this->cmsUserVars->username;
		$this->selectedFields[] = 'b.'.$this->cmsUserVars->username.' AS username';
	}

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){
		$pageInfo = new stdClass();
		$pageInfo->elements = new stdClass();
		$config = acymailing_config();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.subid', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$selectedList = acymailing_getUserVar($paramBase."filter_lists", 'filter_lists', 0, 'string');
		$selectedStatus = acymailing_getUserVar($paramBase."filter_status", 'filter_status', 0, 'int');
		$selectedStatusList = acymailing_getUserVar($paramBase."filter_statuslist", 'filter_statuslist', 0, 'int');
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));

		$pageInfo->limit = new stdClass();
		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$filters = array();
		$customFields = acymailing_get('class.fields');

		$displayFields = array();
		$displayFields['name'] = new stdClass();
		$displayFields['name']->fieldname = 'JOOMEXT_NAME';
		$displayFields['name']->type = 'text';
		$displayFields['email'] = new stdClass();
		$displayFields['email']->fieldname = 'JOOMEXT_EMAIL';
		$displayFields['email']->type = 'text';
		$displayFields['html'] = new stdClass();
		$displayFields['html']->fieldname = 'RECEIVE_HTML';
		$displayFields['html']->type = 'radio';


		if(!empty($pageInfo->search)){
			foreach($displayFields as $fieldname => $onefield){
				if($fieldname == 'html' OR in_array('a.'.$fieldname, $this->searchFields) OR $onefield->type == 'customtext') continue;
				$this->searchFields[] = 'a.`'.$fieldname.'`';
			}
			if(!is_numeric($pageInfo->search)){
				$this->searchFields = array_diff($this->searchFields, array('a.subid', 'a.userid'));
			}

			if(strpos($pageInfo->search, '@') !== false){
				$this->searchFields = array_diff($this->searchFields, array('a.name', 'b.username'));
			}

			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $this->searchFields)." LIKE $searchVal";
		}

		$leftJoinQuery = array();
		$joinQuery = array();

		if(strpos($selectedList, ',') !== false){
			$lists = explode(',', rtrim($selectedList, ','));
			acymailing_arrayToInteger($lists);
			$selection = implode(',', $lists);
		}else{
			$selection = intval($selectedList);
		}

		if(empty($selectedList) || ($selectedStatusList == -2 && acymailing_isAdmin())){
			if(empty($selectedList) && $selectedStatusList == -2) $selectedStatusList = 0;
			$fromQuery = ' FROM '.acymailing_table('subscriber').' as a ';
			$leftJoinQuery[] = acymailing_table($this->cmsUserVars->table, false).' as b ON a.userid = b.'.$this->cmsUserVars->id;

			if($selectedStatusList == -2){
				$leftJoinQuery[] = acymailing_table('listsub').' AS c on a.subid = c.subid AND listid IN ('.$selection.')';
				$filters[] = 'c.listid IS NULL';
			}
			$countField = "a.subid";
		}else{
			$fromQuery = ' FROM '.acymailing_table('listsub').' as c';
			$countField = "c.subid";
			$joinQuery[] = acymailing_table('subscriber').' as a ON a.subid = c.subid';
			$leftJoinQuery[] = acymailing_table($this->cmsUserVars->table, false).' as b ON a.userid = b.'.$this->cmsUserVars->id;
			$filters[] = 'c.listid IN ('.$selection.')';

			if(!in_array($selectedStatusList, array(-1, 1, 2))) $selectedStatusList = 1;
			$filters[] = 'c.status = '.intval($selectedStatusList);
		}

		if($selectedStatus == 1){
			$filters[] = 'a.accept > 0';
		}elseif($selectedStatus == -1){
			$filters[] = 'a.accept < 1';
		}elseif($selectedStatus == 2){
			$filters[] = 'a.confirmed < 1';
		}elseif($selectedStatus == 3){
			$filters[] = 'a.enabled > 0';
		}elseif($selectedStatus == -3){
			$filters[] = 'a.enabled < 1';
		}

		$query = 'SELECT '.implode(',', $this->selectedFields).$fromQuery;
		if(!empty($joinQuery)) $query .= ' JOIN '.implode(' JOIN ', $joinQuery);
		if(!empty($leftJoinQuery)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $leftJoinQuery);

		if(!empty($filters)){
			$query .= ' WHERE ('.implode(') AND (', $filters).')';
		}
		$query .= ' GROUP BY a.subid';
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		$rows = acymailing_loadObjectList($query, 'subid', $pageInfo->limit->start, empty($pageInfo->limit->value) ? 500 : $pageInfo->limit->value);

		$pageInfo->elements->page = count($rows);

		if($pageInfo->limit->value > $pageInfo->elements->page){
			$pageInfo->elements->total = $pageInfo->limit->start + $pageInfo->elements->page;
		}else{
			$queryCount = 'SELECT COUNT(DISTINCT '.$countField.') '.$fromQuery;
			if(!empty($pageInfo->search) || !empty($selectedStatus) || $selectedStatusList == -2 || !empty($fieldfilter)){
				if(!empty($joinQuery)) $queryCount .= ' JOIN '.implode(' JOIN ', $joinQuery);
				if(!empty($leftJoinQuery)) $queryCount .= ' LEFT JOIN '.implode(' LEFT JOIN ', $leftJoinQuery);
			}
			if(!empty($filters)) $queryCount .= ' WHERE ('.implode(') AND (', $filters).')';
			$pageInfo->elements->total = acymailing_loadResult($queryCount);
		}


		if(!empty($rows)){
			$subscriptions = acymailing_loadObjectList('SELECT * FROM `#__acymailing_listsub` WHERE `subid` IN (\''.implode('\',\'', array_keys($rows)).'\')');
			if(!empty($subscriptions)){
				foreach($subscriptions as $onesub){
					$sublistid = $onesub->listid;
					if(empty($rows[$onesub->subid]->subscription)) $rows[$onesub->subid]->subscription = new stdClass();
					$rows[$onesub->subid]->subscription->$sublistid = $onesub;
				}
			}
		}

		if(empty($pageInfo->limit->value)){
			if($pageInfo->elements->total > 500){
				acymailing_enqueueMessage('We do not want you to crash your server so we displayed only the first 500 users', 'warning');
			}
			$pageInfo->limit->value = 100;
		}

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$filters = new stdClass();
		$statusType = acymailing_get('type.statusfilter');
		if(!empty($selectedList)){
			$statusList = acymailing_get('type.statusfilterlist');
			if(!acymailing_isAdmin()) array_pop($statusList->values);
			$filters->statuslist = $statusList->display('filter_statuslist', $selectedStatusList);
		}

		$listsType = acymailing_get('type.lists');
		if(acymailing_isAdmin()){
			$filters->lists = $listsType->display('filter_lists', $selectedList, true, true);
			$filters->status = $statusType->display('filter_status', $selectedStatus);
		}else{
			$listClass = acymailing_get('class.list');
			$allLists = $listClass->getFrontendLists();
			if(count($allLists) > 1){
				$filters->lists = acymailing_select($allLists, "filter_lists", 'class="inputbox" size="1" onchange="document.adminForm.limitstart.value=0;document.adminForm.submit();"', 'listid', 'name', (int)$selectedList, "filter_lists");
			}else{
				$filters->lists = '<input type="hidden" name="filter_lists" value="'.$selectedList.'"/>';
			}
			$filters->status = '<input type="hidden" name="filter_status" value="0"/>';
		}

		if(acymailing_isAdmin()){
			$acyToolbar = acymailing_get('helper.toolbar');
			if(acymailing_isAllowed($config->get('acl_lists_filter', 'all'))) $acyToolbar->popup('action', acymailing_translation('ACTIONS'), acymailing_completeLink('filter', true), 700, 500);
			if(acymailing_isAllowed($config->get('acl_subscriber_import', 'all'))) $acyToolbar->link(acymailing_completeLink('data&task=import&filter_lists='.$selectedList), acymailing_translation('IMPORT'), 'import');
			if(acymailing_isAllowed($config->get('acl_lists_filter', 'all')) || acymailing_isAllowed($config->get('acl_subscriber_import', 'all')) || acymailing_isAllowed($config->get('acl_subscriber_export', 'all'))) $acyToolbar->custom('export', acymailing_translation('ACY_EXPORT'), 'export', false);
			if(acymailing_isAllowed($config->get('acl_subscriber_export', 'all'))) $acyToolbar->divider();
			if(acymailing_isAllowed($config->get('acl_subscriber_manage', 'all'))) $acyToolbar->add();
			if(acymailing_isAllowed($config->get('acl_subscriber_manage', 'all'))) $acyToolbar->edit();
			if(acymailing_isAllowed($config->get('acl_subscriber_delete', 'all'))) $acyToolbar->delete();

			$acyToolbar->divider();
			$acyToolbar->help('subscriber-listing');
			$acyToolbar->setTitle(acymailing_translation('USERS'), 'subscriber');
			$acyToolbar->display();
		}

		$lists = $listsType->getData();
		$this->lists = $lists;
		$toggleClass = acymailing_get('helper.toggle');
		$this->toggleClass = $toggleClass;
		$this->rows = $rows;
		$this->filters = $filters;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
		$this->config = $config;
		$this->displayFields = $displayFields;
		$this->customFields = $customFields;
	}

	function choose(){
		$pageInfo = new stdClass();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName().'_'.$this->getLayout().acymailing_getVar('int', 'onlyreg', 0);
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.name', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'asc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		if(empty($pageInfo->limit->value)) $pageInfo->limit->value = 100;

		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $this->searchFields)." LIKE $searchVal";
		}

		if(acymailing_getVar('int', 'onlyreg')){
			$filters[] = 'a.userid > 0';
		}

		$query = 'SELECT '.implode(',', $this->selectedFields).' FROM #__acymailing_subscriber as a';
		$query .= ' LEFT JOIN #__'.$this->cmsUserVars->table.' as b on a.userid = b.'.$this->cmsUserVars->id;
		if(!empty($filters)){
			$query .= ' WHERE ('.implode(') AND (', $filters).')';
		}
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}
		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		$queryWhere = 'SELECT COUNT(a.subid) FROM #__acymailing_subscriber as a';
		if(!empty($filters)){
			$queryWhere .= ' LEFT JOIN #__'.$this->cmsUserVars->table.' as b on a.userid = b.'.$this->cmsUserVars->id;
			$queryWhere .= ' WHERE ('.implode(') AND (', $filters).')';
		}

		$pageInfo->elements->total = acymailing_loadResult($queryWhere);
		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
	}

	function form(){
		$subid = acymailing_getCID('subid');
		$config = acymailing_config();

		if(!empty($subid)){
			$subscriberClass = acymailing_get('class.subscriber');
			$subscriber = $subscriberClass->getFull($subid);
			$subscription = acymailing_isAdmin() ? $subscriberClass->getSubscription($subid) : $subscriberClass->getFrontendSubscription($subid);
			if(empty($subscriber->subid)){
				acymailing_display('User '.$subid.' not found', 'error');
				$subid = 0;
			}
		}

		if(empty($subid)){
			$listType = acymailing_get('class.list');
			$subscription = acymailing_isAdmin() ? $listType->getLists() : $listType->getFrontendLists();

			$subscriber = new stdClass();
			$subscriber->email = '';
			$subscriber->created = time();
			$subscriber->html = 1;
			$subscriber->confirmed = 1;
			$subscriber->blocked = 0;
			$subscriber->accept = 1;
			$subscriber->enabled = 1;
			$iphelper = acymailing_get('helper.user');
			$subscriber->ip = $iphelper->getIP();
		}

		if(acymailing_isAdmin()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->setTitle(acymailing_translation('ACY_USER'), 'subscriber&task=edit&subid='.$subid);
		}



		if(!empty($subid)){
			$query = 'SELECT a.`mailid`, a.`html`, a.`sent`, a.`senddate`,a.`open`, a.`opendate`, a.`bounce`, a.`fail`,b.`subject`,b.`alias`';
			$query .= ' FROM `#__acymailing_userstats` as a';
			$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
			$query .= ' WHERE a.subid = '.intval($subid).' ORDER BY a.senddate DESC LIMIT 30';
			$open = acymailing_loadObjectList($query);
			$this->open = $open;

			if(acymailing_level(3)){
				$clickedNews = acymailing_loadObjectList('SELECT DISTINCT `mailid` FROM `#__acymailing_urlclick` WHERE `subid` = '.intval($subid), 'mailid');
				$this->clickedNews = $clickedNews;
			}

			$query = 'SELECT a.*,b.`subject`,b.`alias`';
			$query .= ' FROM `#__acymailing_queue` as a';
			$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
			$query .= ' WHERE a.subid = '.intval($subid).' ORDER BY a.senddate ASC LIMIT 60';
			$queue = acymailing_loadObjectList($query);
			$this->queue = $queue;

			$query = 'SELECT h.*,m.subject FROM #__acymailing_history as h LEFT JOIN #__acymailing_mail as m ON h.mailid = m.mailid WHERE h.subid = '.intval($subid).' ORDER BY h.`date` DESC LIMIT 30';
			$history = acymailing_loadObjectList($query);
			$this->history = $history;

			$query = 'SELECT * FROM #__acymailing_geolocation WHERE geolocation_subid='.intval($subid).' ORDER BY geolocation_created DESC LIMIT 100';
			$geoloc = acymailing_loadObjectList($query);
			if(!empty($geoloc)){
				$markCities = array();
				$diffCountries = false;
				$dataDetails = array();
				foreach($geoloc as $mark){
					$indexCity = array_search($mark->geolocation_city, $markCities);
					if($indexCity === false){
						array_push($markCities, $mark->geolocation_city);
						$addressTmp = $mark->geolocation_city.' '.$mark->geolocation_state.' '.$mark->geolocation_country;
						array_push($dataDetails, array('nbInCity' => 1, 'actions' => $mark->geolocation_type, 'address' => $addressTmp));
					}else{
						$dataDetails[$indexCity]['nbInCity'] += 1;
						$dataDetails[$indexCity]['actions'] .= ", ".$mark->geolocation_type;
					}

					if(!$diffCountries){
						if(!empty($region) && $region != $mark->geolocation_country_code){
							$region = 'world';
							$diffCountries = true;
						}else{
							$region = $mark->geolocation_country_code;
						}
					}
				}
				$this->geoloc_region = $region;
				$this->geoloc_city = $markCities;
				$this->geoloc = $geoloc;
				$this->geoloc_details = $dataDetails;
			}

			if(!empty($subscriber->ip)){
				$query = 'SELECT * FROM #__acymailing_subscriber WHERE ip='.acymailing_escapeDB($subscriber->ip).' AND subid != '.intval($subid).' LIMIT 30';
				$neighbours = acymailing_loadObjectList($query);
				if(!empty($neighbours)){
					$this->neighbours = $neighbours;
				}
			}
		}

		$isAdmin = false;
		if(acymailing_isAdmin()){
			$isAdmin = true;

			$acyToolbar->addButtonOption('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
			$acyToolbar->addButtonOption('save2new', acymailing_translation('ACY_SAVEANDNEW'), 'new', false);
			$acyToolbar->save();

			if(!empty($subscriber->userid)){
				$acyToolbar->link(acymailing_userEditLink().$subscriber->userid, acymailing_translation('EDIT_JOOMLA_USER'), 'edit');
			}
			$acyToolbar->cancel();
			$acyToolbar->divider();
			$acyToolbar->help('subscriber-form');
			$acyToolbar->display();
		}


		$filters = new stdClass();
		$quickstatusType = acymailing_get('type.statusquick');
		$filters->statusquick = $quickstatusType->display('statusquick');

		$this->config = $config;
		if(!empty($subscriber->email)) $subscriber->email = acymailing_punycode($subscriber->email, 'emailToUTF8');
		$this->subscriber = $subscriber;
		$toggleClass = acymailing_get('helper.toggle');
		$this->toggleClass = $toggleClass;
		$this->subscription = $subscription;
		$this->filters = $filters;
		$statusType = acymailing_get('type.status');
		$this->statusType = $statusType;
		$this->isAdmin = $isAdmin;
	}
}

views/subscriber/index.html000060400000000054152455705230012044 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/subscriber/tmpl/choose.php000060400000007043152455705230013021 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>

	<form action="<?php echo acymailing_completeLink('subscriber', true); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<tr>
				<td width="100%">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td nowrap="nowrap">
				</td>
			</tr>
		</table>

		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title">
				</th>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_NAME'), 'a.name', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_EMAIL'), 'a.email', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_gridSort(acymailing_translation('USER_ID'), 'a.userid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.subid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="6">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->rows); $i < $a; $i++){
				$row =& $this->rows[$i];

				?>
				<tr class="<?php echo "row$k"; ?>" style="cursor:pointer" onclick="window.top.affectUser(<?php echo strip_tags(intval($row->userid));?>,'<?php echo addslashes(strip_tags($row->name)); ?>','<?php echo addslashes(strip_tags($row->email)); ?>'); acymailing.closeBox(true);">
					<td align="center" style="text-align:center">
						<?php echo $this->pagination->getRowOffset($i); ?>
					</td>
					<td class="acytdcheckbox"></td>
					<td>
						<?php echo acymailing_dispSearch($row->name, $this->pageInfo->search); ?>
					</td>
					<td>
						<?php echo acymailing_dispSearch($row->email, $this->pageInfo->search); ?>
					</td>
					<td align="center" style="text-align:center">
						<?php if(!empty($row->userid)){
							$text = acymailing_translation('ACY_USERNAME').' : <b>'.acymailing_dispSearch($row->username, $this->pageInfo->search);
							$text .= '</b><br />'.acymailing_translation('USER_ID').' : <b>'.acymailing_dispSearch($row->userid, $this->pageInfo->search).'</b>';
							echo acymailing_tooltip($text, acymailing_dispSearch($row->username, $this->pageInfo->search), '', acymailing_dispSearch($row->userid, $this->pageInfo->search));
						} ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo acymailing_dispSearch($row->subid, $this->pageInfo->search); ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>

		<input type="hidden" name="defaulttask" value="choose"/>
		<?php if(acymailing_getVar('int', 'onlyreg')){ ?><input type="hidden" name="onlyreg" value="1"/><?php } ?>
		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
</div>
views/subscriber/tmpl/form.php000060400000066071152455705230012512 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$config = acymailing_config();
$backend = acymailing_isAdmin(); ?>
<style type="text/css">
	.respuserinfo{
		float: left;
		display: inline-table;
	<?php if(!$backend){ ?> max-width: 900px;
		min-width: 60%;
		width: 100%;
	<?php } else{ ?> max-width: 600px;
		min-width: 30%;
	<?php } ?>
	}

	.respuserinfo50{
		min-width: 50%;
	}

	.respuserinfogeneral{
		display: inline-table;
		float: left;
		min-width: 60%;
		width: 100%;
		max-width: 900px;
	}

	#acysubscriberinfo{
		clear: both;
	<?php if(!$backend){
		echo "overflow:auto;
			max-width:750px;
			min-width:80%";
	} ?>
	}

	<?php if(!$backend){
		echo "#acy_content .current {
				display: table;
			}			";
	} ?>

</style>
<script language="javascript" type="text/javascript">
	document.addEventListener("DOMContentLoaded", function(){
		acymailing.submitbutton = function(pressbutton){
			var form = document.adminForm;
			if(pressbutton != 'cancel' && form.email){
				form.email.value = form.email.value.replace(/ /g, "");
				var filter = /^<?php echo acymailing_getEmailRegex(true); ?>$/i;'
				if(!filter.test(form.email.value)){
					alert("<?php echo acymailing_translation('VALID_EMAIL', true); ?>");
					return false;
				}
			}
			acymailing.submitform(pressbutton, form);
		};
	});
</script>
<?php
$config = acymailing_config();
$google_map_api_key = $config->get('google_map_api_key');
if(empty($google_map_api_key) && acymailing_isAdmin()){
	acymailing_display('<a href="'.acymailing_completeLink('cpanel').'" onclick="localStorage.setItem(\'acyconfig_tab\', \'config_subscription\');">'.acymailing_translation('ACY_NEED_GOOGLE_MAP_API_KEY').'</a>', 'info');
}

if(!empty($this->geoloc) && !empty($google_map_api_key)){ ?>
	<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
	<script language="javascript" type="text/javascript">
		google.charts.load('current', {
			packages: ['geochart', 'corechart'],
			mapsApiKey: '<?php echo $google_map_api_key; ?>'
		});
		google.charts.setOnLoadCallback(drawMarkersMap);

		var chart;
		var data;

		var mapOptions = {
			legend: 'none', displayMode: 'markers', sizeAxis: {minSize: 6, maxSize: 24, minValue: 1, maxValue: 10}, enableRegionInteractivity: 'true', region: '<?php echo $this->geoloc_region; ?>'
		};
		function drawMarkersMap(){
			data = new google.visualization.DataTable();
			data.addColumn('string', 'Address');
			data.addColumn('number', 'Color');
			data.addColumn('number', 'Size');
			data.addColumn({type: 'string', role: 'tooltip'});
			<?php
			$myData = array();
			foreach($this->geoloc_city as $key => $city){
				$toolTipTxt = str_replace("'", "\'", acymailing_translation('GEOLOC_NB_ACTIONS')).': '.$this->geoloc_details[$key]['nbInCity'];
				$lineData = "['".str_replace("'", "\'", $this->geoloc_details[$key]['address'])."', 1, ".$this->geoloc_details[$key]['nbInCity'].", '".$toolTipTxt."']";
				array_push($myData, $lineData);
			}
			echo "data.addRows([".implode(", ", $myData)."]);";
			?>

			chart = new google.visualization.GeoChart(document.getElementById('mapGeoloc_div'));
		}
	</script>
<?php } ?>
<div id="acy_content">
	<div id="iframedoc"></div>

	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" <?php if(!empty($this->fieldsClass->formoption)) echo $this->fieldsClass->formoption; ?> >
		<input type="hidden" name="cid[]" value="<?php echo @$this->subscriber->subid; ?>"/>
		<input type="hidden" name="acy_source" value="<?php echo acymailing_isAdmin() ? 'management_back' : 'management_front'; ?>"/>
		<?php $selectedList = acymailing_getVar('int', 'filter_lists');
		if(!empty($selectedList)){ ?>
			<input type="hidden" name="filter_lists" value="<?php echo $selectedList; ?>"/>
		<?php }
		if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />';
		acymailing_formOptions(); ?>
		<div class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>">
			<span class="acyblocktitle"><?php echo acymailing_translation('USER_INFORMATIONS'); ?></span>

			<div>
				<?php if(!acymailing_level(3) || empty($this->extraFields)){
					echo '<div class="acytable_userinfo">';
				} ?>
				<table class="acymailing_table" cellspacing="1">
					<tr id="trname">
						<td width="150" class="acykey">
							<label for="name">
								<?php echo acymailing_translation('JOOMEXT_NAME'); ?>
							</label>
						</td>
						<td>
							<?php
							if(empty($this->subscriber->userid)){
								echo '<input type="text" name="data[subscriber][name]" id="name" class="inputbox" style="width:200px" value="'.$this->escape(@$this->subscriber->name).'" />';
							}else{
								echo $this->escape($this->subscriber->name);
							}
							?>
						</td>
					</tr>
					<tr id="tremail">
						<td class="acykey">
							<label for="email">
								<?php echo acymailing_translation('JOOMEXT_EMAIL'); ?>
							</label>
						</td>
						<td>
							<?php
							if(empty($this->subscriber->userid)){
								echo '<input class="inputbox required" type="text" name="data[subscriber][email]" id="email" style="width:200px" value="'.$this->escape($this->subscriber->email).'" />';
							}else{
								echo $this->escape($this->subscriber->email);
							}
							?>
						</td>
					</tr>
					<tr id="trcreated">
						<td class="acykey">
							<label for="created">
								<?php echo acymailing_translation('CREATED_DATE'); ?>
							</label>
						</td>
						<td>
							<?php echo acymailing_getDate($this->subscriber->created); ?>
						</td>
					</tr>
					<tr id="trip">
						<td class="acykey">
							<label for="ip">
								<?php echo acymailing_translation('IP'); ?>
							</label>
						</td>
						<td>
							<?php echo $this->escape($this->subscriber->ip); ?>
						</td>
					</tr>

					<?php
					if(!empty($this->subscriber->userid)){
						?>
						<tr id="trusername">
							<td class="acykey">
								<label for="username">
									<?php echo acymailing_translation('ACY_USERNAME'); ?>
								</label>
							</td>
							<td>
								<?php echo $this->escape($this->subscriber->username); ?>
							</td>
						</tr>
						<tr id="truserid">
							<td class="acykey">
								<label for="userid">
									<?php echo acymailing_translation('USER_ID'); ?>
								</label>
							</td>
							<td>
								<?php echo $this->subscriber->userid; ?>
							</td>
						</tr>
						<?php
					}
					if(!acymailing_level(3) || empty($this->extraFields)){
						echo '</table></div><div class="acytable_userinfo"><table class="acymailing_table" cellspacing="1">';
					} ?>
					<tr id="trhtml">
						<td class="acykey">
							<label for="html">
								<?php echo acymailing_translation('RECEIVE'); ?>
							</label>
						</td>
						<td nowrap="nowrap">
							<?php echo acymailing_boolean("data[subscriber][html]", '', $this->subscriber->html, acymailing_translation('HTML'), acymailing_translation('JOOMEXT_TEXT')); ?>
						</td>
					</tr>
					<tr id="trconfirmed">
						<td class="acykey">
							<label for="confirmed">
								<?php echo acymailing_translation('CONFIRMED'); ?>
							</label>
						</td>
						<td>
							<?php echo acymailing_boolean("data[subscriber][confirmed]", '', $this->subscriber->confirmed, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
						</td>
					</tr>
					<tr id="trenabled">
						<td class="acykey">
							<label for="block">
								<?php echo acymailing_translation('ENABLED'); ?>
							</label>
						</td>
						<td>
							<?php echo acymailing_boolean("data[subscriber][enabled]", '', $this->subscriber->enabled, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
						</td>
					</tr>
					<tr id="traccept">
						<td class="acykey">
							<label for="accept">
								<?php echo acymailing_translation('ACCEPT_EMAIL'); ?>
							</label>
						</td>
						<td>
							<?php echo acymailing_boolean("data[subscriber][accept]", '', $this->subscriber->accept, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
						</td>
					</tr>
				</table>
				<?php if(!acymailing_level(3) || empty($this->extraFields)){
					echo '</div>';
				} ?>
			</div>
		</div>
		<?php
		if(!empty($this->extraFields)){
			$this->fieldsClass->currentUser = $this->subscriber;
			include(dirname(__FILE__).DS.'extrafields.'.basename(__FILE__));
		} ?>
		<div class="onelineblockoptions" style="clear:both;<?php echo $this->isAdmin ? '' : 'max-width:700px;'; ?>">
			<div id="acysubscriberinfo">
				<?php $tabs = acymailing_get('helper.acytabs');

				echo $tabs->startPane('user_tabs');
				echo $tabs->startPanel(acymailing_translation('SUBSCRIPTION'), 'user_subscription');

				if(count($this->subscription) > 10){ ?>
					<script language="javascript" type="text/javascript">
						<!--
						function acymailing_searchAList(){
							var filter = document.getElementById("acymailing_searchList").value.toLowerCase();
							for(var i = 0; i <<?php echo count($this->subscription); ?>; i++){
								var itemName = document.getElementById("listName_" + i).innerHTML.toLowerCase();
								if(itemName.indexOf(filter) > -1){
									document.getElementById("acylistrow_" + i).style.display = "table-row";
								}else{
									document.getElementById("acylistrow_" + i).style.display = "none";
								}
							}
						}
						//-->
					</script>
				<?php } ?>
				<div>
					<table class="acymailing_table">
						<thead>
						<tr>
							<th class="title titlenum">
								<?php echo acymailing_translation('ACY_NUM'); ?>
							</th>
							<th class="title titlecolor">
							</th>
							<th class="title" nowrap="nowrap">
								<?php echo acymailing_translation('LIST_NAME');
								if(count($this->subscription) > 10){ ?>
									<input onkeyup="acymailing_searchAList();" type="text" style="width:170px;max-width:100%;margin-left:50px;margin-top:5px;" placeholder="<?php echo acymailing_translation('ACY_SEARCH'); ?>" id="acymailing_searchList">
								<?php } ?>
							</th>
							<th class="title" nowrap="nowrap">
								<?php echo acymailing_translation('STATUS'); ?>
								<span class="quickstatuschange" style="display:inline-block;font-style:italic;margin-left:50px"><?php echo $this->filters->statusquick; ?></span>
							</th>
							<th class="title titledate">
								<?php echo acymailing_translation('SUBSCRIPTION_DATE'); ?>
							</th>
							<th class="title titledate">
								<?php echo acymailing_translation('UNSUBSCRIPTION_DATE'); ?>
							</th>
							<th class="title titleid">
								<?php echo acymailing_translation('ACY_ID'); ?>
							</th>
						</tr>
						</thead>
						<tbody>
						<?php
						$k = 0;
						$i = 0;
						foreach($this->subscription as $j => $row){
							$listClass = 'acy_list_status_'.str_replace('-', 'm', (int)@$row->status); ?>
							<tr class="<?php echo "row$k $listClass"; ?>" id="acylistrow_<?php echo $i; ?>">
								<td align="center" style="text-align:center">
									<?php echo $i + 1; ?>
								</td>
								<td width="12">
									<?php echo '<div class="roundsubscrib rounddisp" style="background-color:'.$row->color.'"></div>'; ?>
								</td>
								<td>
									<span style="display:none;" id="listName_<?php echo $i; ?>"><?php echo $row->name; ?></span>
									<?php echo acymailing_tooltip($row->description, $row->name, 'tooltip.png', $row->name); ?>
								</td>
								<td align="center" style="text-align:center" nowrap="nowrap">
									<?php echo $this->statusType->display('data[listsub]['.$row->listid.'][status]', (empty($this->subscriber->subid) && acymailing_getVar('int', 'filter_lists') == $row->listid) ? 1 : @$row->status); ?>
								</td>
								<td align="center" style="text-align:center">
									<?php if(!empty($row->subdate)) echo acymailing_getDate($row->subdate); ?>
								</td>
								<td align="center" style="text-align:center">
									<?php if(!empty($row->unsubdate)) echo acymailing_getDate($row->unsubdate); ?>
								</td>
								<td align="center" style="text-align:center">
									<?php echo $row->listid; ?>
								</td>
							</tr>
							<?php
							$k = 1 - $k;
							$i++;
						} ?>
						</tbody>
					</table>
				</div>
				<?php echo $tabs->endPanel();
				if(!empty($this->open)){
					echo $tabs->startPanel(acymailing_translation('ACY_SENT_EMAILS'), 'user_open');
					?>

					<div>
						<table class="acymailing_table">
							<thead>
							<tr>
								<th class="title titlenum">
									<?php echo acymailing_translation('ACY_NUM'); ?>
								</th>
								<th class="title titledate">
									<?php echo acymailing_translation('SEND_DATE'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('JOOMEXT_SUBJECT'); ?>
								</th>
								<th class="title titletoggle">
									<?php echo acymailing_translation('RECEIVED_VERSION'); ?>
								</th>
								<th class="title titletoggle">
									<?php echo acymailing_translation('OPEN'); ?>
								</th>
								<th class="title titledate">
									<?php echo acymailing_translation('OPEN_DATE'); ?>
								</th>
								<?php if(acymailing_level(3)){ ?>
									<th class="title titletoggle">
										<?php echo acymailing_translation('CLICKED_LINK'); ?>
									</th>
									<th class="title titletoggle">
										<?php echo acymailing_translation('BOUNCES'); ?>
									</th>
								<?php } ?>
								<th class="title titletoggle">
									<?php echo acymailing_translation('ACY_SENT'); ?>
								</th>
							</tr>
							</thead>
							<tbody>
							<?php
							$width = intval($this->config->get('popup_width', 750));
							$height = intval($this->config->get('popup_height', 550));
							$k = 0;

							for($i = 0, $a = count($this->open); $i < $a; $i++){
								$row =& $this->open[$i];
								$row->subject = acyEmoji::Decode($row->subject);
								?>
								<tr class="<?php echo "row$k"; ?>">
									<td align="center" style="text-align:center">
										<?php echo $i + 1; ?>
									</td>
									<td>
										<?php echo acymailing_getDate($row->senddate); ?>
									</td>
									<td>
										<?php
										if(acymailing_isAdmin()){
											$link = acymailing_completeLink('queue&task=preview&mailid='.$row->mailid.'&subid='.$this->subscriber->subid, true);
											echo acymailing_popup($link, $row->subject, '', $width, $height);
										}else{
											$text = '<b>'.acymailing_translation('ACY_ID').' : </b>'.$row->mailid;
											echo acymailing_tooltip($text, $row->subject, '', $row->subject);
										}
										?>
									</td>
									<td align="center" style="text-align:center">
										<?php echo $row->html ? acymailing_translation('HTML') : acymailing_translation('JOOMEXT_TEXT'); ?>
									</td>
									<td align="center" style="text-align:center">
										<?php echo $row->open; ?>
									</td>
									<td align="center" style="text-align:center">
										<?php if(!empty($row->opendate)) echo acymailing_getDate($row->opendate); ?>
									</td>
									<?php if(acymailing_level(3)){ ?>
										<td align="center" style="text-align:center">
											<?php echo $this->toggleClass->display('visible', empty($this->clickedNews[$row->mailid]) ? false : true); ?>
										</td>
										<td align="center" style="text-align:center">
											<?php echo $row->bounce; ?>
										</td>
									<?php } ?>
									<td align="center" style="text-align:center">
										<?php echo $this->toggleClass->display('visible', empty($row->fail) ? true : false); ?>
									</td>
								</tr>
								<?php
								$k = 1 - $k;
							}
							?>
							</tbody>
						</table>
					</div>

					<?php
					echo $tabs->endPanel();
				}

				if(!empty($this->clicks)){
					echo $tabs->startPanel(acymailing_translation('CLICK_STATISTICS'), 'user_clicks'); ?>

					<div>
						<table class="acymailing_table">
							<thead>
							<tr>
								<th class="title titlenum">
									<?php echo acymailing_translation('ACY_NUM'); ?>
								</th>
								<th class="title titledate">
									<?php echo acymailing_translation('CLICK_DATE'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('JOOMEXT_SUBJECT'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('URL'); ?>
								</th>
								<th class="title titletoggle">
									<?php echo acymailing_translation('TOTAL_HITS'); ?>
								</th>
							</tr>
							</thead>
							<tbody>
							<?php
							$k = 0;

							for($i = 0, $a = count($this->clicks); $i < $a; $i++){
								$row =& $this->clicks[$i];
								$row->subject = acyEmoji::Decode($row->subject);
								$id = 'urlclick'.$i;
								?>
								<tr class="<?php echo "row$k"; ?>" id="<?php echo $id; ?>">
									<td align="center" style="text-align:center">
										<?php echo $i + 1; ?>
									</td>
									<td>
										<?php echo acymailing_getDate($row->date); ?>
									</td>
									<td>
										<?php
										$text = '<b>'.acymailing_translation('ACY_ID').' : </b>'.$row->mailid;
										echo acymailing_tooltip($text, $row->subject, '', $row->subject);
										?>
									</td>
									<td>
										<a target="_blank" href="<?php echo strip_tags($row->url); ?>"><?php echo $row->urlname; ?></a>
									</td>
									<td align="center" style="text-align:center">
										<?php echo $row->click; ?>
									</td>
								</tr>
								<?php
								$k = 1 - $k;
							}
							?>
							</tbody>
						</table>
					</div>

					<?php echo $tabs->endPanel();
				}

				if(!empty($this->queue)){
					echo $tabs->startPanel(acymailing_translation('QUEUE'), 'user_queue'); ?>

					<div>
						<table class="acymailing_table">
							<thead>
							<tr>
								<th class="title titlenum">
									<?php echo acymailing_translation('ACY_NUM'); ?>
								</th>
								<th class="title titledate">
									<?php echo acymailing_translation('SEND_DATE'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('JOOMEXT_SUBJECT'); ?>
								</th>
								<th class="title titlenum">
									<?php echo acymailing_translation('PRIORITY'); ?>
								</th>
								<th class="title titlenum">
									<?php echo acymailing_translation('TRY'); ?>
								</th>
								<th class="title titletoggle">
									<?php echo acymailing_translation('ACY_DELETE'); ?>
								</th>
							</tr>
							</thead>
							<tbody>
							<?php
							$k = 0;

							for($i = 0, $a = count($this->queue); $i < $a; $i++){
								$row =& $this->queue[$i];
								$row->subject = acyEmoji::Decode($row->subject);
								$id = 'queue'.$i;
								?>
								<tr class="<?php echo "row$k"; ?>" id="<?php echo $id; ?>">
									<td align="center" style="text-align:center">
										<?php echo $i + 1; ?>
									</td>
									<td>
										<?php echo acymailing_getDate($row->senddate); ?>
									</td>
									<td>
										<?php
										$text = '<b>'.acymailing_translation('ACY_ID').' : </b>'.$row->mailid;
										echo acymailing_tooltip($text, $row->subject, '', $row->subject);
										?>
									</td>
									<td align="center" style="text-align:center">
										<?php echo $row->priority; ?>
									</td>
									<td align="center" style="text-align:center">
										<?php echo $row->try; ?>
									</td>
									<td align="center" style="text-align:center">
										<?php echo $this->toggleClass->delete($id, $row->subid.'_'.$row->mailid, 'queue'); ?>
									</td>
								</tr>
								<?php
								$k = 1 - $k;
							}
							?>
							</tbody>
						</table>
					</div>

					<?php echo $tabs->endPanel();
				}

				if(!empty($this->history)){
					echo $tabs->startPanel(acymailing_translation('ACY_HISTORY'), 'user_history');
					?>

					<div>
						<table class="acymailing_table">
							<thead>
							<tr>
								<th class="title titlenum">
									<?php echo acymailing_translation('ACY_NUM'); ?>
								</th>
								<th class="title titledate">
									<?php echo acymailing_translation('FIELD_DATE'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('ACY_ACTION'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('ACY_DETAILS'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('IP'); ?>
								</th>
								<th class="title" width="30%">
									<?php echo acymailing_translation('ACY_SOURCE'); ?>
								</th>
							</tr>
							</thead>
							<tbody>
							<?php
							$k = 0;

							for($i = 0, $a = count($this->history); $i < $a; $i++){
								$row =& $this->history[$i];
								?>
								<tr class="<?php echo "row$k"; ?>">
									<td align="center" style="text-align:center" valign="top">
										<?php echo $i + 1; ?>
									</td>
									<td align="center" style="text-align:center">
										<?php echo acymailing_getDate($row->date); ?>
									</td>
									<td valign="top">
										<?php echo acymailing_translation('ACTION_'.strtoupper($row->action)); ?>
									</td>
									<td valign="top">
										<?php
										if(!empty($row->data)){
											$data = explode("\n", $row->data);
											$id = 'history_details'.$i;
											echo '<div style="cursor:pointer;text-align:center" onclick="if(document.getElementById(\''.$id.'\').style.display == \'none\'){document.getElementById(\''.$id.'\').style.display = \'block\'}else{document.getElementById(\''.$id.'\').style.display = \'none\'}">'.acymailing_translation('VIEW_DETAILS').'</div>';
											echo '<div id="'.$id.'" style="display:none">';
											if(!empty($row->mailid)) echo '<b>'.acymailing_translation('NEWSLETTER').' : </b>'.$this->escape($row->subject).' ( '.acymailing_translation('ACY_ID').' : '.$row->mailid.' )<br />';
											foreach($data as $value){
												if(!strpos($value, '::')){
													echo $value;
													continue;
												}
												list($part1, $part2) = explode("::", $value);
												if(preg_match('#^[A-Z_]*$#', $part2)) $part2 = acymailing_translation($part2);
												echo '<b>'.$this->escape(acymailing_translation($part1)).' : </b>'.$this->escape($part2).'<br />';
											}
											echo '</div>';
										}
										?>
									</td>
									<td valign="top">
										<?php echo $row->ip ?>
									</td>
									<td valign="top">
										<?php
										if(!empty($row->source)){
											$id = 'history_source'.$i;
											$source = explode("\n", $row->source);
											echo '<div style="cursor:pointer;text-align:center" onclick="if(document.getElementById(\''.$id.'\').style.display == \'none\'){document.getElementById(\''.$id.'\').style.display = \'block\'}else{document.getElementById(\''.$id.'\').style.display = \'none\'}">'.acymailing_translation('VIEW_DETAILS').'</div>';
											echo '<div id="'.$id.'" style="display:none">';
											foreach($source as $value){
												if(!strpos($value, '::')) continue;
												list($part1, $part2) = explode("::", $value);
												echo '<b>'.$this->escape($part1).' : </b>'.$this->escape($part2).'<br />';
											}
											echo '</div>';
										}
										?>
									</td>
								</tr>
								<?php
								$k = 1 - $k;
							}
							?>
							</tbody>
						</table>
					</div>
					<?php
					echo $tabs->endPanel();
				}

				if(!empty($this->geoloc) && !empty($google_map_api_key)){
					echo $tabs->startPanel('<span onclick="setTimeout(function(){chart.draw(data, mapOptions)},100);">'.acymailing_translation('GEOLOCATION').'</span>', 'geoloc');
					?>
					<div>
						<div id="mapGeoloc_div" style="width:900px; max-width:100%; float:left; padding-right:20px;"></div>
						<div style="float:left; min-width:400px; max-width:800px;">
							<table class="acymailing_table">
								<thead>
								<tr>
									<th class="title titledate">
										<?php echo acymailing_translation('FIELD_DATE'); ?>
									</th>
									<th class="title">
										<?php echo acymailing_translation('ACY_ACTION'); ?>
									</th>
									<th class="title">
										<?php echo acymailing_translation('COUNTRYCAPTION'); ?>
									</th>
									<th class="title">
										<?php echo acymailing_translation('STATECAPTION'); ?>
									</th>
									<th class="title">
										<?php echo acymailing_translation('CITYCAPTION'); ?>
									</th>
									<th class="title">
										<?php echo acymailing_translation('IP'); ?>
									</th>
								</tr>
								</thead>
								<tbody>
								<?php
								$k = 0;
								foreach($this->geoloc as $action){
									?>
									<tr class="<?php echo "row$k"; ?>">
										<td align="center" style="text-align:center" valign="top">
											<?php echo acymailing_getDate($action->geolocation_created); ?>
										</td>
										<td valign="top">
											<?php echo $this->escape($action->geolocation_type); ?>
										</td>
										<td valign="top">
											<?php echo $this->escape($action->geolocation_country); ?>
										</td>
										<td valign="top">
											<?php echo $this->escape($action->geolocation_state); ?>
										</td>
										<td valign="top">
											<?php echo $this->escape($action->geolocation_city); ?>
										</td>
										<td valign="top">
											<?php echo $this->escape($action->geolocation_ip); ?>
										</td>
									</tr>
									<?php
									$k = 1 - $k;
								}
								?>
								<tbody>
							</table>
						</div>
						<div style="clear: both"></div>
					</div>
					<?php
					echo $tabs->endPanel();
				}

				if(!empty($this->neighbours)){
					echo $tabs->startPanel(acymailing_translation('ACY_NEIGHBOUR'), 'user_neighbour');
					?>

					<div>
						<table class="acymailing_table">
							<thead>
							<tr>
								<th class="title titlenum">
									<?php echo acymailing_translation('ACY_NUM'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('JOOMEXT_NAME'); ?>
								</th>
								<th class="title">
									<?php echo acymailing_translation('JOOMEXT_EMAIL'); ?>
								</th>
								<th class="title titleid">
									<?php echo acymailing_translation('ACY_ID'); ?>
								</th>
							</tr>
							</thead>
							<tbody>
							<?php
							$k = 0;
							foreach($this->neighbours as $num => $oneNeighbour){
								?>
								<tr class="<?php echo "row$k"; ?>">
									<td align="center" style="text-align:center" valign="top">
										<?php echo($num + 1) ?>
									</td>
									<td valign="top">
										<?php echo $this->escape($oneNeighbour->name); ?>
									</td>
									<td valign="top">
										<?php echo '<a href="'.acymailing_completeLink('subscriber&task=edit&subid='.$oneNeighbour->subid).'" target="_blank">'.$this->escape($oneNeighbour->email).'</a>'; ?>
									</td>
									<td align="center" style="text-align:center" valign="top">
										<?php echo $oneNeighbour->subid; ?>
									</td>
								</tr>
								<?php
								$k = 1 - $k;
							} ?>
							</tbody>
						</table>
					</div>
					<?php
					echo $tabs->endPanel();
				}
				echo $tabs->endPane(); ?>
			</div>
		</div>
		<div class="clr"></div>
	</form>
</div>
views/subscriber/tmpl/listing.php000060400000021434152455705230013212 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content" class="acysubscriberlisting">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm">
		<table width="100%" class="acymailing_table_options">
			<tr>
				<td id="subscriberfilter" style="min-width:325px;">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td align="right">
					<?php
					if(!empty($this->filterFields)){
						foreach($this->filterFields as $oneField){
							echo '<span class="subscriber_filter">'.$oneField.'</span> ';
						}
					}
					?>
					<span class="subscriber_filter" id="subscriberfilterstatus"><?php echo $this->filters->status; ?></span>
					<span class="subscriber_filter" id="subscriberfilterlists"><?php echo $this->filters->lists; ?></span>
					<?php if(!empty($this->filters->statuslist)){ ?><span class="subscriber_filter" id="subscriberfilterlistsstatus"><?php echo $this->filters->statuslist; ?></span><?php } ?>
				</td>
			</tr>
		</table>
		<table class="acymailing_table">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titlebox">
					<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
				</th>
				<?php
				foreach($this->displayFields as $map => $oneField){
					if($map == 'html') continue; ?>
					<th class="title" style="text-align: left;<?php echo $map == 'name' ? 'width: 200px;' : ''; ?>">
						<?php echo acymailing_gridSort($this->customFields->trans($oneField->fieldname), 'a.'.$map, $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
				<?php } ?>
				<?php
				if(acymailing_isAdmin()){ ?>
					<th class="title" style="text-align: left;">
						<?php echo acymailing_translation('SUBSCRIPTION'); ?>
					</th>
				<?php } ?>
				<th class="title titledate">
					<?php echo acymailing_gridSort(acymailing_translation('CREATED_DATE'), 'a.created', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<?php
				if(acymailing_isAdmin()){
					if(!empty($this->displayFields['html'])){ ?>
						<th class="title titletoggle">
							<?php echo acymailing_gridSort(acymailing_translation('RECEIVE_HTML'), 'a.html', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
						</th>
					<?php } ?>
					<?php if($this->config->get('require_confirmation', 1)){ ?>
						<th class="title titletoggle">
							<?php echo acymailing_gridSort(acymailing_translation('CONFIRMED'), 'a.confirmed', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
						</th>
					<?php } ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('ENABLED'), 'a.enabled', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titleid">
						<?php echo acymailing_gridSort(acymailing_translation('USER_ID'), 'a.userid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titleid">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.subid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
				<?php } ?>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="<?php echo acymailing_isAdmin() ? count($this->displayFields) + 9 : count($this->displayFields) + 3; ?>">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;
			$i = 0;
			foreach($this->rows as $row){
				$confirmedid = 'confirmed_'.$row->subid;
				$htmlid = 'html_'.$row->subid;
				$enabledid = 'enabled_'.$row->subid;
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo $this->pagination->getRowOffset($i); ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo acymailing_gridID($i, $row->subid); ?>
					</td>
					<?php
					$this->customFields->currentUser = $row;
					foreach($this->displayFields as $map => $oneField){
						if($map == 'html') continue; ?>
						<td class="columnclass<?php echo $map; ?>">
							<?php
							if($map == 'email'){
								echo '<a href="'.acymailing_completeLink(acymailing_getVar('cmd', 'ctrl').'&task=edit&subid='.$row->subid).'">';
								echo acymailing_punycode($this->customFields->listing($oneField, @$row->$map, $this->pageInfo->search), 'emailToUTF8');
								echo '</a>';
							}else {
								echo $this->customFields->listing($oneField, @$row->$map, $this->pageInfo->search);
							}
							?>
						</td>
					<?php }
					if(acymailing_isAdmin()){
						?>
						<td align="right">

							<?php
							if(empty($row->accept)){
								echo '<div class="icon-16-refuse" >'.acymailing_tooltip(acymailing_translation('USER_REFUSE', true), '', '', '&nbsp;&nbsp;&nbsp;&nbsp;').'</div>';
							}

							foreach($this->lists as $listid => $list){
								if(empty($row->subscription->$listid)) continue;
								$statuslistid = 'status_'.$listid.'_'.$row->subid;
								echo '<div id="'.$statuslistid.'" class="loading"  onclick="hideTooltip()">';
								$extra = array();
								$extra['color'] = $this->lists[$listid]->color;
								$extra['tooltiptitle'] = $this->lists[$listid]->name;
								$extra['tooltip'] = '<b>'.acymailing_translation('LIST_NAME').' : </b>'.$this->lists[$listid]->name.'<br />';
								if($row->subscription->$listid->status > 0){
									$extra['tooltip'] .= '<b>'.acymailing_translation('STATUS').' : </b>';
									$extra['tooltip'] .= ($row->subscription->$listid->status == '1') ? acymailing_translation('SUBSCRIBED') : acymailing_translation('PENDING_SUBSCRIPTION');
									$extra['tooltip'] .= '<br /><b>'.acymailing_translation('SUBSCRIPTION_DATE').' : </b>'.acymailing_getDate($row->subscription->$listid->subdate);
								}else{
									$extra['tooltip'] .= '<b>'.acymailing_translation('STATUS').' : </b>'.acymailing_translation('UNSUBSCRIBED').'<br />';
									$extra['tooltip'] .= '<b>'.acymailing_translation('UNSUBSCRIPTION_DATE').' : </b>'.acymailing_getDate($row->subscription->$listid->unsubdate);
								}

								echo $this->toggleClass->toggle($statuslistid, $row->subscription->$listid->status, 'listsub', $extra);
								echo '</div>';
							}

							?>
						</td>
					<?php } ?>
					<td align="center" style="text-align:center" class="valuedate">
						<?php echo acymailing_getDate($row->created); ?>
					</td>

					<?php if(acymailing_isAdmin()){
						if(!empty($this->displayFields['html'])){ ?>
							<td align="center" style="text-align:center">
								<span id="<?php echo $htmlid ?>" class="loading"><?php echo $this->toggleClass->toggle($htmlid, $row->html, 'subscriber') ?></span>
							</td>
						<?php } ?>
						<?php if($this->config->get('require_confirmation', 1)){ ?>
							<td align="center" style="text-align:center">
								<span id="<?php echo $confirmedid ?>" class="loading"><?php echo $this->toggleClass->toggle($confirmedid, $row->confirmed, 'subscriber') ?></span>
							</td>
						<?php } ?>
						<td align="center" style="text-align:center">
							<span id="<?php echo $enabledid ?>" class="loading"><?php echo $this->toggleClass->toggle($enabledid, $row->enabled, 'subscriber') ?></span>
						</td>
						<td align="center">
							<?php
							if(!empty($row->userid)){
								$text = acymailing_translation('ACY_USERNAME').' : <b>'.acymailing_dispSearch($row->username, $this->pageInfo->search);
								$text .= '</b><br />'.acymailing_translation('USER_ID').' : <b>'.acymailing_dispSearch($row->userid, $this->pageInfo->search).'</b>';
								echo acymailing_tooltip($text, acymailing_dispSearch($row->username, $this->pageInfo->search), '', acymailing_dispSearch($row->userid, $this->pageInfo->search), acymailing_userEditLink().$row->userid);
							} ?>
						</td>
						<td align="center">
							<?php echo acymailing_dispSearch($row->subid, $this->pageInfo->search); ?>
						</td>
					<?php } ?>
				</tr>
				<?php
				$k = 1 - $k;
				$i++;
			}
			?>
			</tbody>
		</table>

		<?php if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />';
		acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
	<script type="text/javascript">
		function hideTooltip(){
			var nodes = document.getElementsByClassName('tooltip');
			for(var i = 0; i < nodes.length; i++){
				nodes[i].style.display = 'none';
			}
		}
	</script>
</div>
views/subscriber/tmpl/index.html000060400000000054152455705230013020 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/list/index.html000060400000000054152455705230010654 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/list/tmpl/listing.php000060400000016431152455705230012023 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content" class="acylistlisting">
	<div id="iframedoc"></div>
	<?php $saveOrder = $this->pageInfo->filter->order->value == 'a.ordering' && strtolower($this->pageInfo->filter->order->dir) == 'asc'; ?>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<?php if(acymailing_isAdmin()){ ?>
				<tr>
					<td width="100%">
						<?php acymailing_listingsearch($this->pageInfo->search); ?>
					</td>
					<td nowrap="nowrap">
						<?php echo $this->filters->category; ?>
						<?php echo $this->filters->creator; ?>
					</td>
				</tr>
			<?php }else{ ?>
				<tr>
					<td nowrap="nowrap" width="100%">
						<?php acymailing_listingsearch($this->pageInfo->search); ?>
					</td>
					<td>
						<?php echo $this->filters->category; ?>
					</td>
				</tr>
				<tr>
					<td></td>
					<td>
						<?php echo $this->filters->creator; ?>
					</td>
				</tr>
			<?php } ?>
		</table>

		<table class="acymailing_table" cellpadding="1" id="listListing">
			<thead>
				<tr>
					<th class="title titlenum">
						<?php echo acymailing_translation('ACY_NUM'); ?>
					</th>
					<?php if(acymailing_isAdmin()){ ?>
						<th class="title titleorder" style="width:32px !important; padding-left:1px; padding-right:1px;">
							<?php echo acymailing_gridSort('<i class="icon-menu-2"></i>', 'a.ordering', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, null, 'asc', 'JGRID_HEADING_ORDERING'); ?>
						</th>
					<?php } ?>
					<th class="title titlebox">
						<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
					</th>
					<th class="title titlecolor">

					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('LIST_NAME'), 'a.name', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titlelink">
						<?php echo acymailing_translation('SUBSCRIBERS'); ?>
					</th>
					<th class="title titlelink">
						<?php echo acymailing_translation('UNSUBSCRIBERS'); ?>
					</th>
					<th class="title titlesender">
						<?php echo acymailing_gridSort(acymailing_translation('CREATOR'), 'd.name', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<?php if(acymailing_isAdmin()){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_VISIBLE'), 'a.visible', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('ENABLED'), 'a.published', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<?php } ?>
					<th class="title titleid">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.listid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
				</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="12">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody id="acymailing_sortable_listing">
				<?php
				$k = 0;
				$ordering = '';
				for($i = 0 ; $i < count($this->rows); $i++){
					$row =& $this->rows[$i];
					$ordering .= ',"order['.$i.']='.$row->ordering.'"';

					$publishedid = 'published_'.$row->listid;
					$visibleid = 'visible_'.$row->listid;
					?>
					<tr class="<?php echo "row$k"; ?>" acyorderid="<?php echo $row->listid; ?>">
						<td align="center" style="text-align:center">
							<?php echo $this->pagination->getRowOffset($i); ?>
						</td>
						<?php if(acymailing_isAdmin()){ ?>
							<?php $iconClass = 'acyicon-draghandle';
							if(!$saveOrder) $iconClass .= ' acyinactive-handler" title="Sort the listing by ordering first'; ?>
							<td class="<?php echo $iconClass; ?>"><img alt="" src="<?php echo ACYMAILING_IMAGES; ?>icons/drag.png" /></td>
						<?php } ?>
						<td align="center" style="text-align:center">
							<?php echo acymailing_gridID($i, $row->listid); ?>
						</td>
						<td width="12">
							<?php echo '<div class="roundsubscrib rounddisp" style="background-color:'.$this->escape($row->color).'"></div>'; ?>
						</td>
						<td>
							<?php
							echo acymailing_tooltip($row->description, $row->name, 'tooltip.png', $row->name, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'list&task=edit&listid='.$row->listid));
							?>
						</td>
						<td align="center" style="text-align:center">
							<a href="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'subscriber&filter_status=0&filter_statuslist=1&filter_lists='.$row->listid); ?>">
								<?php echo $row->nbsub; ?>
							</a>
							<?php if(!empty($row->nbwait)){
								echo '&nbsp;&nbsp;'; ?>
								<?php $title = '(+'.$row->nbwait.')';
								echo acymailing_tooltip(acymailing_translation('NB_PENDING'), ' ', 'tooltip.png', $title, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'subscriber&filter_status=0&filter_statuslist=2&filter_lists='.$row->listid)); ?>
							<?php } ?>
						</td>
						<td align="center" style="text-align:center">
							<a href="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'subscriber&filter_status=0&filter_statuslist=-1&filter_lists='.$row->listid); ?>">
								<?php echo $row->nbunsub; ?>
							</a>
						</td>
						<td align="center" style="text-align:center">
							<?php
							if(!empty($row->userid)){
								$text = '<b>'.acymailing_translation('JOOMEXT_NAME').' : </b>'.$row->creatorname;
								$text .= '<br /><b>'.acymailing_translation('ACY_USERNAME').' : </b>'.$row->username;
								$text .= '<br /><b>'.acymailing_translation('JOOMEXT_EMAIL').' : </b>'.$row->email;
								$text .= '<br /><b>'.acymailing_translation('ACY_ID').' : </b>'.$row->userid;
								echo acymailing_tooltip($text, $row->creatorname, 'tooltip.png', $row->creatorname, acymailing_isAdmin() ? acymailing_userEditLink().$row->userid : '');
							}
							?>
						</td>
						<?php if(acymailing_isAdmin()){ ?>
						<td align="center" style="text-align:center">
							<span id="<?php echo $visibleid ?>" class="spanloading"><?php echo $this->toggleClass->toggle($visibleid, $row->visible, 'list') ?></span>
						</td>
						<td align="center" style="text-align:center">
							<span id="<?php echo $publishedid ?>" class="spanloading"><?php echo $this->toggleClass->toggle($publishedid, $row->published, 'list') ?></span>
						</td>
						<?php } ?>
						<td align="center" style="text-align:center">
							<?php echo $row->listid; ?>
						</td>
					</tr>
					<?php
					$k = 1 - $k;
				}
				?>
			</tbody>
		</table>

		<?php if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />'; ?>
		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
</div>

<?php if($saveOrder) acymailing_sortablelist('list', ltrim($ordering, ',')); ?>
views/list/tmpl/index.html000060400000000054152455705230011630 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/list/tmpl/filter.lists.php000060400000020662152455705230012775 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php if(count($this->lists) > 10){ ?>
	<script language="javascript" type="text/javascript">
		<!--
		function acymailing_searchAList(){
			var filter = document.getElementById("acymailing_searchList").value.toLowerCase();
			for(var i = 0; i <<?php echo count($this->lists); ?>; i++){
				var itemName = document.getElementById("listName_" + i).innerHTML.toLowerCase();
				if(itemName.indexOf(filter) > -1){
					document.getElementById("acylistrow_" + i).style.display = "table-row";
				}else{
					document.getElementById("acylistrow_" + i).style.display = "none";
				}
			}
		}
		//-->
	</script>
	<div style="margin-bottom:10px;"><input onkeyup="acymailing_searchAList();" type="text" style="width: 200px;max-width:100%;margin-bottom:5px;" placeholder="<?php echo acymailing_translation('ACY_SEARCH'); ?>" id="acymailing_searchList"></div>
<?php }

$k = 0;
$i = 0;

$orderedList = array();
$listsPerCategory = array();
$languages = array();
foreach($this->lists as $row){
	$orderedList[$row->category][$row->listid] = $row;
	$listsPerCategory[$row->category][$row->listid] = $row->listid;
	if(count($this->lists) < 4) continue;

	$languages['all'][$row->listid] = $row->listid;
	if($row->languages == 'all') continue;
	$lang = explode(',', trim($row->languages, ','));
	foreach($lang as $oneLang){
		$languages[strtolower($oneLang)][$row->listid] = $row->listid;
	}
}
ksort($orderedList);
$allCats = array_keys($orderedList);
$this->lists = array();
foreach($orderedList as $oneCategory){
	$this->lists = array_merge($this->lists, $oneCategory);
}

if($currentPage == 'export'){
	$possibleStatuses = array();
	$possibleStatuses[] = acymailing_selectOption("0", acymailing_translation('ACY_DONT_EXPORT'));
	$possibleStatuses[] = acymailing_selectOption("-1", acymailing_translation('ACTION_UNSUBSCRIBED'));
	$possibleStatuses[] = acymailing_selectOption("2", acymailing_translation('PENDING_SUBSCRIPTION'));
	$possibleStatuses[] = acymailing_selectOption("1", acymailing_translation('SUBSCRIBED'));

	if(!acymailing_isAdmin()){
		$possibleStatuses[0]->class = 'btn-danger';
		$possibleStatuses[1]->class = 'btn-success';
		$possibleStatuses[2]->class = 'btn-success';
		$possibleStatuses[3]->class = 'btn-success';
	}
}

echo '<table class="acymailing_table" id="lists_choice"><tbody>';

foreach($this->lists as $row){
	if(empty($row->category)) $row->category = acymailing_translation('ACY_NO_CATEGORY');
	if(count($allCats) > 1 && (empty($currentCatgeory) || $row->category != $currentCatgeory)){
		$currentCatgeory = $row->category; ?>
		<tr class="<?php echo "row$k"; ?>">
			<td colspan="2">
				<a href="#" onclick="checkCats('<?php echo htmlspecialchars(str_replace("'", "\'", $row->category == acymailing_translation('ACY_NO_CATEGORY') ? -1 : $row->category), ENT_QUOTES, "UTF-8"); ?>'); return false;"><strong><?php echo htmlspecialchars($row->category, ENT_QUOTES, "UTF-8"); ?></strong></a>
			</td>
		</tr>
	<?php }
	if($currentPage == 'export'){
		$checked = (empty($this->exportlist) && in_array($row->listid, $this->selectedlists)) ? 1 : 0;
	}elseif($currentPage == 'import'){
		$filter_lists = explode(',', rtrim(acymailing_getVar('string', 'filter_lists'), ','));
		if(!empty($row->campaign)){
			$checked = acymailing_getVar('cmd', 'importlists['.$row->listid.']', in_array($row->listid, $filter_lists) ? 2 : 0);
		}else{
			$checked = !empty($currentValues[$row->listid]) || in_array($row->listid, $filter_lists) || $listid == $row->listid ? 1 : 0;
		}
	}

	$classList = $checked ? 'acy_list_checked' : 'acy_list_unchecked';
	?>
	<tr id="acylistrow_<?php echo $i; ?>" class="<?php echo "row$k $classList"; ?>">
		<td style="display:none;" id="listId_<?php echo $i; ?>"><?php echo $row->listid; ?></td>
		<td style="display:none;" id="listName_<?php echo $i; ?>"><?php echo $row->name; ?></td>
		<td>
			<?php
			echo '<div class="roundsubscrib rounddisp" style="background-color:'.$row->color.'"></div>';
			$text = '<b>'.acymailing_translation('ACY_ID').' : </b>'.$row->listid;
			$text .= '<br />'.$row->description;
			echo acymailing_tooltip($text, $row->name, 'tooltip.png', $row->name);
			?>
		</td>
		<td nowrap="nowrap">
			<?php
			if($currentPage == 'export'){
				if(!empty($this->exportlist) && $this->exportlist == $row->listid){
					$checked = $this->exportliststatus;
					if($this->exportliststatus == -2) $checked = 0;
				}
				echo acymailing_radio($possibleStatuses, "exportlists[".$row->listid."]", '', 'value', 'text', $checked, $row->listid.'listmail');
			}elseif($currentPage == 'import'){
				if(!empty($row->campaign)){
					echo acymailing_radio($this->campaignValues, "importlists[".$row->listid."]", '', 'value', 'text', $checked, $row->listid.'listmail');
				}else{
					echo acymailing_radio($this->subscribeOptions, "importlists[".$row->listid."]", '', 'value', 'text', $checked, $row->listid.'listmail');
				}
			}
			?>
		</td>
	</tr>
	<?php
	$k = 1 - $k;
	$i++;
}
if(count($this->lists) > 3){ ?>
	<tr>
		<td></td>
		<td nowrap="nowrap">
			<script language="javascript" type="text/javascript">
				<!--
				var selectedLists = new Array();
				<?php
				foreach($languages as $val => $listids){
					echo "selectedLists['$val'] = new Array('".implode("','", $listids)."'); ";
				}
				?>
				function updateStatus(selection){
					<?php
					$listidAll = "selectedLists['all'][i]+'listmail";
					$listidSelection = "selectedLists[selection][i]+'listmail";
					?>
					for(var i = 0; i < selectedLists['all'].length; i++){
						if(searchParent(window.document.getElementById(<?php echo $listidAll; ?>0'), 'tr').style.display == 'none') continue;
						<?php if(ACYMAILING_J30) echo "jQuery('label[for='+".$listidAll."0]').click();"; ?>
						window.document.getElementById(<?php echo $listidAll; ?>0').checked = true;
					}
					if(!selectedLists[selection]) return;
					for(i = 0; i < selectedLists[selection].length; i++){
						if(searchParent(window.document.getElementById(<?php echo $listidSelection; ?>1'), 'tr').style.display == 'none') continue;
						<?php if(ACYMAILING_J30) echo "jQuery('label[for='+".$listidSelection."1]').click();"; ?>
						window.document.getElementById(<?php echo $listidSelection; ?>1').checked = true;
					}
				}
				-->
			</script>
			<?php
			$selectList = array();
			$selectList[] = acymailing_selectOption('none', acymailing_translation('ACY_NONE'));
			foreach($languages as $oneLang => $values){
				if($oneLang == 'all') continue;
				$selectList[] = acymailing_selectOption($oneLang, ucfirst($oneLang));
			}
			$selectList[] = acymailing_selectOption('all', acymailing_translation('ACY_ALL'));
			echo acymailing_radio($selectList, "selectlists", 'onclick="updateStatus(this.value);"', 'value', 'text');
			?>
		</td>
	</tr>
<?php } ?>
	</tbody>
	</table>

	<script language="javascript" type="text/javascript">
		<!--
		function searchParent(elem, tag){
			tag = tag.toUpperCase();
			do{
				if(elem.nodeName === tag){
					return elem;
				}
			}while(elem = elem.parentNode);
			return null;
		}

		var listsCats = new Array();

		<?php
		foreach($listsPerCategory as $val => $listids){
			if(empty($val)) $val = '-1';
			echo "listsCats['".str_replace("'", "\'", $val)."'] = new Array('".implode("','", $listids)."'); ";
		}

		$listCatsSelection = 'listsCats[selection][i]+"listmail';

		?>
		function checkCats(selection){
			if(!listsCats[selection]) return;
			var unselect = true;
			for(var i = 0; i < listsCats[selection].length; i++){
				if(searchParent(window.document.getElementById(<?php echo $listCatsSelection; ?>0"), 'tr').style.display == 'none') continue;
				if(window.document.getElementById(<?php echo $listCatsSelection; ?>1").checked == true) continue;
				unselect = false;
				break;
			}
			for(i = 0; i < listsCats[selection].length; i++){
				if(searchParent(window.document.getElementById(<?php echo $listCatsSelection; ?>0"), 'tr').style.display == 'none') continue;
				if(unselect){
					<?php if(ACYMAILING_J30) echo 'jQuery("label[for="+'.$listCatsSelection.'0]").click();'; ?>
					window.document.getElementById(<?php echo $listCatsSelection; ?>0").checked = true;
				}else{
					<?php if(ACYMAILING_J30) echo 'jQuery("label[for="+'.$listCatsSelection.'1]").click();'; ?>
					window.document.getElementById(<?php echo $listCatsSelection; ?>1").checked = true;
				}
			}
		}
		-->
	</script>
<?php
views/list/tmpl/form.php000060400000010757152455705230011322 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<div class="<?php echo acymailing_isAdmin() ? 'acyblockoptions' : 'onelineblockoptions'; ?>" style="display:block; float:none;">
			<span class="acyblocktitle" style="display:block; float:none;"><?php echo acymailing_translation('ACY_LIST_INFORMATIONS'); ?></span>
			<table cellspacing="1" width="100%">
				<tr>
					<td class="acykey">
						<label for="name">
							<?php echo acymailing_translation('LIST_NAME'); ?>
						</label>
					</td>
					<td>
						<input type="text" name="data[list][name]" id="name" class="inputbox" style="width:200px" value="<?php echo $this->escape(@$this->list->name); ?>"/>
					</td>
					<td class="acykey">
						<label for="enabled">
							<?php echo acymailing_translation('ENABLED'); ?>
						</label>
					</td>
					<td>
						<?php echo acymailing_boolean("data[list][published]", '', $this->list->published); ?>
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<label for="alias">
							<?php echo acymailing_translation('JOOMEXT_ALIAS'); ?>
						</label>
					</td>
					<td>
						<input type="text" name="data[list][alias]" id="alias" class="inputbox" style="width:200px" value="<?php echo $this->escape(@$this->list->alias); ?>"/>
					</td>
					<td class="acykey">
						<label for="visible">
							<?php echo acymailing_translation('JOOMEXT_VISIBLE'); ?>
						</label>
					</td>
					<td>
						<?php echo acymailing_boolean("data[list][visible]", '', $this->list->visible); ?>
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<label for="datalistcategory">
							<?php echo acymailing_translation('ACY_CATEGORY'); ?>
						</label>
					</td>
					<td>
						<?php $catType = acymailing_get('type.categoryfield');
						echo $catType->display('list', 'data[list][category]', $this->list->category); ?>
					</td>
					<td class="acykey">
						<label for="colorexample">
							<?php echo acymailing_translation('COLOUR'); ?>
						</label>
					</td>
					<td>
						<?php echo $this->colorBox->displayAll('', 'data[list][color]', @$this->list->color); ?>
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<label for="datalistunsubmailid">
							<?php echo acymailing_translation('MSG_UNSUB'); ?>
						</label>
					</td>
					<td>
						<?php echo $this->unsubMsg->display(@$this->list->unsubmailid); ?>
					</td>
					<td class="acykey">
						<?php if(acymailing_isAdmin()){ ?>
							<label for="creator">
								<?php echo acymailing_translation('CREATOR'); ?>
							</label>
						<?php } ?>
					</td>
					<td>
						<?php if(acymailing_isAdmin()) { ?>
							<input type="hidden" id="listcreator" name="data[list][userid]"
								   value="<?php echo @$this->list->userid; ?>"/>
							<?php echo '<span id="creatorname">' . @$this->list->creatorname . '</span>';
							echo ' '.acymailing_popup(acymailing_completeLink('subscriber&amp;task=choose&amp;onlyreg=1', true), '<img src="' . ACYMAILING_IMAGES . 'icons/icon-16-edit.png" alt="' . acymailing_translation('ACY_EDIT', true) . '"/>');
						} ?>
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<label for="datalistwelmailid">
							<?php echo acymailing_translation('MSG_WELCOME'); ?>
						</label>
					</td>
					<td colspan="3">
						<?php if(acymailing_level(1)){
							echo $this->welcomeMsg->display(@$this->list->welmailid);
						}elseif(acymailing_isAdmin()){
							echo acymailing_getUpgradeLink('essential');
						} ?>
					</td>
				</tr>
			</table>
		</div>

		<div class="<?php echo acymailing_isAdmin() ? 'acyblockoptions' : 'onelineblockoptions'; ?>" style="float:none;display:block;">
			<span class="acyblocktitle"><?php echo acymailing_translation('ACY_DESCRIPTION'); ?></span>
			<?php echo $this->editor->display(); ?>
		</div>
		<?php
		if(acymailing_level(1)){
			if($this->languages->multipleLang){
				include(dirname(__FILE__).DS.'languages.php');
			}
			if(acymailing_level(3)){
				include(dirname(__FILE__).DS.'acl.php');
			}
		} ?>
		<div class="clr"></div>

		<input type="hidden" name="cid[]" value="<?php echo @$this->list->listid; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/list/view.html.php000060400000020574152455705230011316 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class ListViewList extends acymailingView{
	
	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){
		$config = acymailing_config();
		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();

		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.ordering', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'asc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$selectedCreator = acymailing_getUserVar($paramBase."filter_creator", 'filter_creator', 0, 'int');
		$selectedCategory = acymailing_getUserVar($paramBase."filter_category", 'filter_category', 0, 'string');

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = "a.name LIKE $searchVal OR a.description LIKE $searchVal OR a.listid LIKE $searchVal";
		}
		$filters[] = "a.type = 'list'";
		if(!empty($selectedCreator)) $filters[] = 'a.userid = '.$selectedCreator;
		if(!empty($selectedCategory)) $filters[] = 'a.category = '.acymailing_escapeDB($selectedCategory);

		if(!acymailing_isAdmin()) {
			$listClass = acymailing_get('class.list');
			$lists = $listClass->getFrontendLists('listid');

			$filters[] = 'listid IN ('.implode(',', array_keys($lists)).')';
		}

		$query = 'SELECT a.*, d.'.$this->cmsUserVars->name.' as creatorname, d.'.$this->cmsUserVars->username.' AS username, d.'.$this->cmsUserVars->email.' AS email';
		$query .= ' FROM '.acymailing_table('list').' as a';
		$query .= ' LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as d on a.userid = d.'.$this->cmsUserVars->id;
		$query .= ' WHERE ('.implode(') AND (', $filters).')';
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		$queryCount = 'SELECT COUNT(a.listid) FROM  '.acymailing_table('list').' as a';
		$queryCount .= ' WHERE ('.implode(') AND (', $filters).')';

		$pageInfo->elements->total = acymailing_loadResult($queryCount);

		$listids = array();
		foreach($rows as $oneRow){
			$listids[] = $oneRow->listid;
		}

		$subscriptionresults = array();
		if(!empty($listids)){
			$querySubscription = 'SELECT count(subid) as total,listid,status FROM '.acymailing_table('listsub').' WHERE listid IN ('.implode(',', $listids).') GROUP BY listid, status';
			$countresults = acymailing_loadObjectList($querySubscription);
			foreach($countresults as $oneResult){
				$subscriptionresults[$oneResult->listid][intval($oneResult->status)] = $oneResult->total;
			}
		}

		foreach($rows as $i => $oneRow){
			$rows[$i]->nbsub = intval(@$subscriptionresults[$oneRow->listid][1]);
			$rows[$i]->nbunsub = intval(@$subscriptionresults[$oneRow->listid][-1]);
			$rows[$i]->nbwait = intval(@$subscriptionresults[$oneRow->listid][2]);
		}

		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		if(acymailing_isAdmin()) {
			$acyToolbar = acymailing_get('helper.toolbar');
			if (acymailing_isAllowed($config->get('acl_lists_filter', 'all'))) {
				$acyToolbar->link(acymailing_completeLink('filter'), acymailing_translation('ACY_FILTERS'), 'filter');
				$acyToolbar->divider();
			}

			if (acymailing_isAllowed($config->get('acl_lists_manage', 'all'))) $acyToolbar->add();
			if (acymailing_isAllowed($config->get('acl_lists_manage', 'all'))) $acyToolbar->edit();
			if (acymailing_isAllowed($config->get('acl_lists_delete', 'all'))) $acyToolbar->delete();
			if (acymailing_isAllowed($config->get('acl_lists_manage', 'all')) || acymailing_isAllowed($config->get('acl_lists_manage', 'all')) || acymailing_isAllowed($config->get('acl_lists_delete', 'all'))) $acyToolbar->divider();
			$acyToolbar->help('list-listing');
			$acyToolbar->setTitle(acymailing_translation('LISTS'), 'list');
			$acyToolbar->display();
		}

		$order = new stdClass();
		$order->ordering = false;
		$order->orderUp = 'orderup';
		$order->orderDown = 'orderdown';
		$order->reverse = false;
		if($pageInfo->filter->order->value == 'a.ordering'){
			$order->ordering = true;
			if($pageInfo->filter->order->dir == 'desc'){
				$order->orderUp = 'orderdown';
				$order->orderDown = 'orderup';
				$order->reverse = true;
			}
		}

		$filters = new stdClass();
		$creatorfilterType = acymailing_get('type.creatorfilter');
		$creatorfilterType->type = 'list';
		$filters->creator = $creatorfilterType->display('filter_creator', $selectedCreator, 'list');
		$listcategoryType = acymailing_get('type.categoryfield');
		$filters->category = $listcategoryType->getFilter('list', 'filter_category', $selectedCategory, ' onchange="document.adminForm.submit();"');

		$this->config = $config;
		$this->filters = $filters;
		$this->order = $order;
		$toggleClass = acymailing_get('helper.toggle');
		$this->toggleClass = $toggleClass;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
	}

	function form(){
		$listClass = acymailing_get('class.list');
		$listid = acymailing_getCID('listid');

		if(!empty($listid)){
			$list = $listClass->get($listid);

			if(empty($list->listid)){
				acymailing_display('List '.$listid.' not found', 'error');
				$listid = 0;
			}
		}

		if(empty($listid)){
			$list = new stdClass();
			$list->visible = 1;
			$list->description = '';
			$list->category = '';
			$list->published = 1;
			$list->creatorname = acymailing_currentUserName();
			$list->access_manage = 'none';
			$list->access_sub = 'all';
			$list->languages = 'all';
			$colors = array('#3366ff', '#7240A4', '#7A157D', '#157D69', '#ECE649');
			$list->color = $colors[rand(0, count($colors) - 1)];
		}

		$editor = acymailing_get('helper.editor');
		$editor->name = 'editor_description';
		$editor->content = $list->description;
		$editor->setDescription();

		$script = '
			document.addEventListener("DOMContentLoaded", function(){
				acymailing.submitbutton = function(pressbutton) {
					if (pressbutton == \'cancel\') {
						acymailing.submitform(pressbutton,document.adminForm);
						return;
					}
					if(window.document.getElementById("name").value.length < 2){alert(\''.acymailing_translation('ENTER_TITLE', true).'\'); return false;}';
		$script .= $editor->jsCode();
		$script .= 'acymailing.submitform(pressbutton,document.adminForm);
				};
			 }); ';
		$script .= 'function affectUser(idcreator,name,email){
			window.document.getElementById("creatorname").innerHTML = name;
			window.document.getElementById("listcreator").value = idcreator;
		}';


		acymailing_addScript(true, $script);

		if(acymailing_isAdmin()) {
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->addButtonOption('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
			$acyToolbar->save();
			$acyToolbar->cancel();
			$acyToolbar->divider();
			$acyToolbar->help('list-form');
			$acyToolbar->setTitle(acymailing_translation('LIST'), 'list&task=edit&listid=' . $listid);
			$acyToolbar->display();
		}

		$colorBox = acymailing_get('type.color');
		$this->colorBox = $colorBox;
		if(acymailing_level(1)){
			$this->welcomeMsg = acymailing_get('type.welcome');
			$this->languages = acymailing_get('type.listslanguages');
		}
		$unsubMsg = acymailing_get('type.unsub');
		$this->unsubMsg = $unsubMsg;
		$this->list = $list;
		$this->editor = $editor;
	}
}
views/data/index.html000060400000000054152455705230010612 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/data/view.html.php000060400000024442152455705230011252 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class dataViewdata extends acymailingView{
	
	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function genericimport(){
		$this->chosen = false;

		$isAdmin = false;
		if(acymailing_isAdmin()){
			$isAdmin = true;

			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('finalizeimport', acymailing_translation('IMPORT'), 'import', false, '');
			$acyToolbar->link(acymailing_completeLink('subscriber'), acymailing_translation('ACY_CANCEL'), 'cancel');
			$acyToolbar->divider();
			$acyToolbar->help('data-import', 'secondpage');
			$acyToolbar->setTitle(acymailing_translation('IMPORT'), 'data&task=import');
			$acyToolbar->display();
		}

		$config = acymailing_config();
		$this->config = $config;

		$selectedParams = array();
		$selectedParams = explode(',', $config->get('import_params', 'import_confirmed,generatename'));

		$this->selectedParams = $selectedParams;

		$lists = acymailing_getVar('array', 'importlists', array());
		$listClass = acymailing_get('class.list');
		$allLists = acymailing_isAdmin() ? $listClass->getLists() : $listClass->getFrontendLists();

		$listsName = array();
		$unsubListsName = array();
		foreach($allLists as $oneList){
			if($lists[$oneList->listid] == -1) $unsubListsName[] = $oneList->name;
			if($lists[$oneList->listid] == 1) $listsName[] = $oneList->name;
			if($lists[$oneList->listid] == 2) $listsName[] = $oneList->name.' + '.acymailing_translation('CAMPAIGN');
		}
		$createList = acymailing_getVar('string', 'createlist');
		if(!empty($createList)) $listsName[] = $createList;
		if(!empty($listsName)) $this->lists = implode(', ', $listsName);
		if(!empty($unsubListsName)) $this->unsublists = implode(', ', $unsubListsName);

		$importFrom = acymailing_getVar('cmd', 'importfrom');
		$this->type = $importFrom;
		$this->isAdmin = $isAdmin;
	}

	function import(){

		$listClass = acymailing_get('class.list');
		$config = acymailing_config();

		$isAdmin = false;
		if(acymailing_isAdmin()){
			$isAdmin = true;

			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('doimport', acymailing_translation('IMPORT'), 'import', false, '');
			$acyToolbar->link(acymailing_completeLink('subscriber'), acymailing_translation('ACY_CANCEL'), 'cancel');
			$acyToolbar->divider();
			$acyToolbar->help('data-import');
			$acyToolbar->setTitle(acymailing_translation('IMPORT'), 'data&task=import');
			$acyToolbar->display();
		}

		$importData = array();
		$importData['textarea'] = acymailing_translation('IMPORT_TEXTAREA');
		$importData['file'] = acymailing_translation('ACY_FILE');
		if(acymailing_isAllowed($config->get('acl_subscriber_zohoimport', 'all'))) $importData['zohocrm'] = 'ZohoCRM';


		$isAdmin = false;
		if(acymailing_isAdmin()){
			$isAdmin = true;
			$importData['joomla'] = acymailing_translation('IMPORT_JOOMLA');
			$importData['contact'] = 'com_contact';
			$importData['database'] = acymailing_translation('DATABASE');
			$importData['ldap'] = 'LDAP';
			$importData['zohocrm'] = 'ZohoCRM';
			if(acymailing_level(3)) $importData['fbleads'] = 'Facebook Leads';


			$possibleImport = array();
			$possibleImport[acymailing_getPrefix().'acajoom_subscribers'] = array('acajoom', 'Acajoom');
			$possibleImport[acymailing_getPrefix().'ccnewsletter_subscribers'] = array('ccnewsletter', 'ccNewsletter');
			$possibleImport[acymailing_getPrefix().'letterman_subscribers'] = array('letterman', 'Letterman');
			$possibleImport[acymailing_getPrefix().'communicator_subscribers'] = array('communicator', 'Communicator');
			$possibleImport[acymailing_getPrefix().'yanc_subscribers'] = array('yanc', 'Yanc');
			$possibleImport[acymailing_getPrefix().'vemod_news_mailer_users'] = array('vemod', 'Vemod News Mailer');
			$possibleImport[acymailing_getPrefix().'jnews_subscribers'] = array('jnews', 'jNews');
			$possibleImport['civicrm_email'] = array('civi', 'CiviCRM');
			$possibleImport[acymailing_getPrefix().'sobipro_field'] = array('sobipro', 'SobiPro');
			$possibleImport[acymailing_getPrefix().'nspro_subs'] = array('nspro', 'NS Pro');

			$tables = acymailing_getTableList();
			foreach($tables as $mytable){
				if(isset($possibleImport[$mytable])){
					$importData[$possibleImport[$mytable][0]] = $possibleImport[$mytable][1];
				}
			}

			$this->tables = $tables;

			$civifile = ACYMAILING_ROOT.'administrator'.DS.'components'.DS.'com_civicrm'.DS.'civicrm.settings.php';
			if(empty($importData['civicrm_email']) && file_exists($civifile)){
				$importData['civi'] = 'CiviCRM';
			}
		}


		$importvalues = array();
		foreach($importData as $div => $name){
			$importvalues[] = acymailing_selectOption($div, $name);
		}
		$js = 'var currentoption = \'textarea\';
		function updateImport(newoption){document.getElementById(currentoption).style.display = "none";document.getElementById(newoption).style.display = \'block\';currentoption = newoption;}';

		$function = acymailing_getVar('cmd', 'importfrom');
		if(!empty($function)){
			$js .= 'window.addEventListener("load", function(){ updateImport(\''.$function.'\'); });';
		}
		if($config->get('ldap_host') && acymailing_isAdmin()){
			$js .= 'window.addEventListener("load", function(){ updateldap(); });';
		}
		acymailing_addScript(true, $js);

		$this->importvalues = $importvalues;
		$this->importdata = $importData;

		$lists = acymailing_isAdmin() ? $listClass->getLists() : $listClass->getFrontendLists();

		$subscribeOptions = array();
		$subscribeOptions[] = acymailing_selectOption(0, acymailing_translation('JOOMEXT_NO'));
		$subscribeOptions[] = acymailing_selectOption(-1, acymailing_translation('UNSUBSCRIBE'));
		$subscribeOptions[] = acymailing_selectOption(1, acymailing_translation('SUBSCRIBE'));
		$campaignValues = $subscribeOptions;
		$campaignValues[] = acymailing_selectOption(2, acymailing_translation('JOOMEXT_YES_CAMPAIGN'));
		if(acymailing_level(3)){
			$listsOfId = array();
			foreach($lists as $oneList){
				$listsOfId[] = $oneList->listid;
			}
			$listCampaign = $listClass->getCampaigns($listsOfId);
			foreach($lists as $key => $oneList){
				if(!empty($listCampaign[$oneList->listid])){
					$lists[$key]->campaign = implode(',', $listCampaign[$oneList->listid]);
				}
			}
		}

		$this->lists = $lists;
		$this->subscribeOptions = $subscribeOptions;
		$this->campaignValues = $campaignValues;
		$this->config = $config;
		$this->isAdmin = $isAdmin;
	}

	function export(){
		$listClass = acymailing_get('class.list');
		$fields = acymailing_getColumns('#__acymailing_subscriber');
		$fieldsList = array();
		$fieldsList['listid'] = 'smallint unsigned';
		$fieldsList['listname'] = 'varchar';

		$config = acymailing_config();
		$selectedFields = explode(',', $config->get('export_fields', 'email,name'));
		$selectedLists = explode(',', $config->get('export_lists'));
		$selectedFilters = explode(',', $config->get('export_filters', 'subscribed'));

		$isAdmin = false;
		if(acymailing_isAdmin()){
			$isAdmin = true;

			$acyToolbar = acymailing_get('helper.toolbar');
			if(acymailing_isNoTemplate()){
				$acyToolbar->custom('doexport', acymailing_translation('ACY_EXPORT'), 'export', false, '');
				$acyToolbar->setTitle(acymailing_translation('ACY_EXPORT'));
				$acyToolbar->topfixed = false;
			}else{
				$acyToolbar->custom('doexport', acymailing_translation('ACY_EXPORT'), 'export', false, '');
				$acyToolbar->link(acymailing_completeLink('subscriber'), acymailing_translation('ACY_CANCEL'), 'cancel');
				$acyToolbar->divider();
				$acyToolbar->help('data-export');
				$acyToolbar->setTitle(acymailing_translation('ACY_EXPORT'), 'data&task=export');
			}
			$acyToolbar->display();
		}

		$charsetType = acymailing_get('type.charset');
		$this->charset = $charsetType;

		if(acymailing_isAdmin()){
			$lists = $listClass->getLists();
		}else $lists = $listClass->getFrontendLists();

		$this->lists = $lists;
		$this->fields = $fields;
		$this->fieldsList = $fieldsList;
		$this->selectedfields = $selectedFields;
		$this->selectedlists = $selectedLists;
		$this->selectedFilters = $selectedFilters;
		$this->config = $config;
		$this->isAdmin = $isAdmin;

		if(acymailing_getVar('int', 'sessionvalues')){
			if(!empty($_SESSION['acymailing']['exportusers'])){
				$i = 1;
				$subids = array();
				foreach($_SESSION['acymailing']['exportusers'] as $subid){
					$subids[] = (int)$subid;
					$i++;
					if($i > 10) break;
				}

				if(!empty($subids)){
					$users = acymailing_loadObjectList('SELECT DISTINCT `name`,`email` FROM `#__acymailing_subscriber` WHERE `subid` IN ('.implode(',', $subids).') LIMIT 10');
					$this->users = $users;
				}
			}elseif(!empty($_SESSION['acymailing']['exportlist'])){
				$filterList = $_SESSION['acymailing']['exportlist'];
				$this->exportlist = $filterList;
				$filterListStatus = $_SESSION['acymailing']['exportliststatus'];
				$this->exportliststatus = $filterListStatus;
			}
		}

		if(acymailing_getVar('int', 'fieldfilters')) $this->fieldfilters = true;

		if(acymailing_getVar('int', 'sessionquery')){
			acymailing_session();
			$exportQuery = $_SESSION['acymailing']['acyexportquery'];
			if(!empty($exportQuery)){
				$users = acymailing_loadObjectList('SELECT DISTINCT s.`name`,s.`email` '.$exportQuery.' LIMIT 10');
				$this->users = $users;

				if(strpos($exportQuery, 'userstats')){
					$otherFields = array('userstats.mailid','userstats.senddate', 'userstats.open', 'userstats.opendate', 'userstats.bounce', 'userstats.bouncerule', 'userstats.ip', 'userstats.html', 'userstats.fail', 'userstats.sent', 'userstats.browser', 'userstats.browser_version', 'userstats.is_mobile', 'userstats.mobile_os', 'userstats.user_agent');
					$this->otherfields = $otherFields;
				}
				if(strpos($exportQuery, 'urlclick')){
					$otherFields = array('url.name', 'url.url', 'urlclick.date', 'urlclick.ip', 'urlclick.click');
					$this->otherfields = $otherFields;
				}
				if(strpos($exportQuery, 'history')){
					$otherFields = array('hist.data', 'hist.date');
					$this->otherfields = $otherFields;
				}
			}
		}

		if(acymailing_level(3)){
			$geolocFields = acymailing_getColumns('#__acymailing_geolocation');
			$this->geolocfields = $geolocFields;
		}
	}
}
views/data/tmpl/file.php000060400000001335152455705230011224 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><table class="acymailing_table">
	<tr id="trfileupload">
		<td class="acykey">
			<?php echo acymailing_translation('UPLOAD_FILE'); ?>
		</td>
		<td>
			<input type="file" style="width:auto;" name="importfile"/>
			<?php echo '<br />'.(acymailing_translation_sprintf('MAX_UPLOAD', (acymailing_bytes(ini_get('upload_max_filesize')) > acymailing_bytes(ini_get('post_max_size'))) ? ini_get('post_max_size') : ini_get('upload_max_filesize'))); ?>
		</td>
	</tr>
</table>

views/data/tmpl/jnews.php000060400000002446152455705230011437 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$resultUsers = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('jnews_subscribers', false));
$resultLists = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('jnews_lists', false));
$resultNews = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('jnews_mailings', false));

echo acymailing_translation_sprintf('USERS_IN_COMP', $resultUsers, 'jNews');
if(!empty($resultLists)){
	echo '<div class="acyblockoptions"><span class="acyblocktitle">'.acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'jNews').'</span>';
	echo acymailing_translation_sprintf('IMPORT_X_LISTS', $resultLists).'<br />';
	echo acymailing_translation_sprintf('IMPORT_LIST_TOO', 'jNews').acymailing_boolean("jnews_lists");
	echo '</div>';
}
if(!empty($resultNews)){
	echo '<div class="acyblockoptions"><span class="acyblocktitle">'.acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'jNews').'</span>';
	echo acymailing_translation_sprintf('IMPORT_NEWSLETTERS_TOO', 'jNews').acymailing_boolean("jnews_news");
}
views/data/tmpl/import.php000060400000005002152455705230011612 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php $config = acymailing_config(); ?>
<div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" enctype="multipart/form-data" id="adminForm">
		<?php if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />';
		acymailing_formOptions(); ?>
		<div style="width:100%;">
			<div id="import_mode_container">
				<div id="import_mode" class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>">
					<span class="acyblocktitle"><?php echo acymailing_translation('IMPORT_FROM'); ?></span>
					<?php echo acymailing_radio($this->importvalues, 'importfrom', 'class="inputbox" size="1" onclick="updateImport(this.value);"', 'value', 'text', acymailing_getVar('cmd', 'importfrom', 'textarea')); ?>
				</div>
			</div>
			<div id="import_options" class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>">
				<?php foreach($this->importdata as $div => $name){
					echo '<div id="'.$div.'"';
					if($div != acymailing_getVar('cmd', 'importfrom', 'textarea')) echo ' style="display:none"';
					echo '>';
					echo '<span class="acyblocktitle">'.$name.'</span>';
					include(dirname(__FILE__).DS.$div.'.php');
					echo '</div>';
				} ?>
			</div>
			<div class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>" id="importlists">
				<span class="acyblocktitle"><?php echo acymailing_translation('SUBSCRIPTION'); ?></span>
				<?php if(acymailing_isAllowed($this->config->get('acl_lists_manage', 'all'))){ ?>
					<table class="acymailing_table" cellpadding="1">
						<tr class="<?php echo "row1"; ?>" id="importcreatelist">
							<td colspan="2">
								<?php echo acymailing_translation('IMPORT_SUBSCRIBE_CREATE').' : <input type="text" name="createlist" placeholder="'.acymailing_translation('LIST_NAME').'" />'; ?>
							</td>
						</tr>
					</table>
				<?php }
				$currentPage = 'import';
				$currentValues = acymailing_getVar('none', 'importlists');
				$listid = acymailing_getVar('int', 'listid');
				include_once(ACYMAILING_BACK.'views'.DS.'list'.DS.'tmpl'.DS.'filter.lists.php');
				?>
			</div>
		</div>
	</form>
	<div style="clear: both;"></div>
</div>
views/data/tmpl/vemod.php000060400000000706152455705230011420 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
	$resultUsers = acymailing_loadResult('SELECT count(*) FROM `#__vemod_news_mailer_users`');
	
	echo acymailing_translation_sprintf('USERS_IN_COMP',$resultUsers,'Vemod News Mailer');

views/data/tmpl/database.php000060400000003176152455705230012056 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$subfields = acymailing_getColumns('#__acymailing_subscriber');

$config = acymailing_config();
$postFields = (array)@unserialize($config->get('import_db_fields', ''));
?>
<table <?php echo $this->isAdmin ? '' : 'class="admintable table" cellspacing="1"' ?>>
	<tr>
		<td class="acykey"><?php echo acymailing_translation('TABLENAME'); ?></td>
		<td><input type="text" name="tablename" style="width:200px" size="80" value="<?php echo $this->escape($config->get('import_db_table', '')); ?>"/></td>
	</tr>
	<?php
	if(!empty($subfields)){
		foreach($subfields as $oneField => $type){
			if(in_array($oneField, array('subid', 'confirmed', 'confirmed_date', 'confirmed_ip', 'lastopen_date', 'lastsent_date', 'lastclick_date', 'enabled', 'key', 'userid', 'accept', 'html', 'created'))) continue;
			echo '<tr><td class="acykey">'.$oneField.'</td><td><input style="width:200px" type="text" name="fields['.$oneField.']" value="'.@$postFields[$oneField].'" /></td></tr>';
		}
	}
	if($this->config->get('require_confirmation')){ ?>
		<tr id="trdbconfirm">
			<td class="acykey">
				<?php echo acymailing_translation('IMPORT_CONFIRMED'); ?>
			</td>
			<td>
				<?php echo acymailing_boolean("import_confirmed_database", '', acymailing_getVar('int', 'import_confirmed_database', 1), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
			</td>
		</tr>
	<?php }
	?>
</table>
views/data/tmpl/contact.php000060400000001070152455705230011734 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
	try{
		$resultUsers = acymailing_loadResult("SELECT count(*) FROM `#__contact_details` WHERE `email_to` LIKE '%@%'");
	}catch(Exception $e){
		$resultUsers = 0;
		acymailing_display($e->getMessage(),'error');
	}


	echo acymailing_translation_sprintf('USERS_IN_COMP',$resultUsers,'com_contact');
views/data/tmpl/zohocrm.php000060400000013044152455705230011766 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$listClass = acymailing_get('class.list');
$this->data = $listClass->getLists('listid');
$this->values = array();
$this->values[] = acymailing_selectOption('0', '- - -');
foreach($this->data as $onelist){
	$this->values[] = acymailing_selectOption($onelist->listid, $onelist->name);
}
$zohoFields = $this->config->get('zoho_fields');
$value['zoho_fields'] = empty($zohoFields) ? array() : unserialize($zohoFields);
$zohoList = $this->config->get('zoho_list');
$value['zoho_list'] = empty($zohoList) ? 'Leads' : $zohoList;

if(empty($value['zoho_fields'])) $value['zoho_fields'] = array('First Name' => 'name');
?>
<span class="acyblocktitle"><?php echo acymailing_translation('Options'); ?></span>
<table <?php echo $this->isAdmin ? 'class="acymailing_table"' : 'class="admintable table" cellspacing="1"' ?>>
	<?php if($this->config->get('require_confirmation')){ ?>
		<tr id="trfileconfirm">
			<td class="acykey">
				<?php echo acymailing_translation('IMPORT_CONFIRMED'); ?>
			</td>
			<td>
				<?php
				echo acymailing_boolean("zoho_confirmed", '', $this->config->get('zoho_confirmed'), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO'));
				?>
			</td>
		</tr>
	<?php } ?>
	<tr id="trfileoverwrite">
		<td class="acykey">
			<?php echo acymailing_translation('OVERWRITE_EXISTING'); ?>
		</td>
		<td>
			<?php
			echo acymailing_boolean("zoho_overwrite", '', $this->config->get('zoho_overwrite'), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
		</td>
	</tr>
	<tr id="trzohodelete">
		<td class="acykey">
			<?php echo acymailing_translation('DELETE_USERS'); ?>
		</td>
		<td>
			<?php
			echo acymailing_boolean("zoho_delete", '', $this->config->get('zoho_delete'), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
		</td>
	</tr>
	<tr id="trzohoimportnew">
		<td class="acykey">
			<?php echo acymailing_translation('ACY_ZOHO_IMPORT_NEW'); ?>
		</td>
		<td>
			<?php
			echo acymailing_boolean("zoho_importnew", '', $this->config->get('zoho_importnew'), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO').' : '.acymailing_translation('ALL_USERS')); ?>
		</td>
	</tr>
	<tr id="trzohogeneratename">
		<td class="acykey">
			<?php echo acymailing_tooltip(acymailing_translation('ACY_ZOHO_GENERATE_NAME_DESC'), acymailing_translation('ACY_ZOHO_GENERATE_NAME'), '', acymailing_translation('ACY_ZOHO_GENERATE_NAME')); ?>
		</td>
		<td>
			<?php $generateFrom = array();
			$generateFrom[] = acymailing_selectOption('fromemail', acymailing_translation('ACY_ZOHO_GENERATE_NAME_FROM_EMAIL'));
			$generateFrom[] = acymailing_selectOption('fromconcat', acymailing_translation('ACY_ZOHO_GENERATE_NAME_FROM_FIELDS'));
			echo acymailing_radio($generateFrom, "zoho_generate_name", 'class="inputbox" size="1"', 'value', 'text', $this->config->get('zoho_generate_name', 'fromemail')); ?>
		</td>
	</tr>
	<tr id="trzohoapikey">
		<td class="acykey">
			<?php echo 'Auth Token'; ?>
		</td>
		<td>
			<input class="inputbox" type="text" name="zoho_apikey" size="35" value="<?php echo $this->escape($this->config->get('zoho_apikey')); ?>">
		</td>
	</tr>
	<tr id="trzoholist">
		<td class="acykey">
			<?php echo acymailing_translation('ACY_ZOHOLIST'); ?>
		</td>
		<td>
			<?php $lists = array();
			$lists[] = acymailing_selectOption('Leads', 'Leads');
			$lists[] = acymailing_selectOption('Contacts', 'Contacts');
			$lists[] = acymailing_selectOption('Vendors', 'Vendors');
			echo acymailing_select($lists, "zoho_list", 'class="inputbox" size="1"', 'value', 'text', $value['zoho_list']); ?>
		</td>
	</tr>
	<tr id="trzohocv">
		<td class="acykey">
			<?php echo acymailing_tooltip(acymailing_translation('CUSTOM_VIEW_DESC'), acymailing_translation('CUSTOM_VIEW'), '', acymailing_translation('CUSTOM_VIEW')); ?>
		</td>
		<td>
			<input class="inputbox" type="text" name="zoho_cv" size="35" value="<?php echo $this->escape($this->config->get('zoho_cv')); ?>">
		</td>
	</tr>
</table>


<span class="acyblocktitle" style="margin-top: 20px;"><?php echo acymailing_translation('FIELD'); ?></span>
<?php
$subfields = acymailing_getColumns('#__acymailing_subscriber');
$acyfields = array();
$acyfields[] = acymailing_selectOption('', ' - - - ');
if(!empty($subfields)){
	foreach($subfields as $oneField => $typefield){
		if(in_array($oneField, array('subid', 'confirmed', 'enabled', 'key', 'userid', 'accept', 'html', 'created', 'zohoid', 'zoholist', 'email'))) continue;
		$acyfields[] = acymailing_selectOption($oneField, $oneField);
	}
}
?>
<table <?php echo $this->isAdmin ? 'class="acymailing_table"' : 'class="admintable table" cellspacing="1"' ?>>
	<?php
	echo '<tr><td class="acykey">'.acymailing_translation('ACY_LOADZOHOFIELDS').'</td><td>';
	echo '<input type="submit" class="btn" onclick="acymailing.submitbutton(\'loadZohoFields\')" value="'.acymailing_translation('ACY_LOADFIELDS').'"></td></tr>';

	$fields = explode(',', $config->get('zoho_fieldsname', 'First Name,Last Name,Date of Birth'));

	foreach($fields as $oneField){
		$fieldValue = '';
		if(!empty($value['zoho_fields'][$oneField])) $fieldValue = $value['zoho_fields'][$oneField];
		echo '<tr><td class="acykey">'.$oneField.'</td><td><div id="zoho_fields">'.acymailing_select($acyfields, "zoho_fields[".$oneField."]", 'class="inputbox" size="1"', 'value', 'text', $fieldValue).'</div></td></tr>';
	}
	?>
</table>


views/data/tmpl/index.html000060400000000054152455705230011566 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/data/tmpl/letterman.php000060400000000721152455705230012276 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
	$resultUsers = acymailing_loadResult('SELECT count(*) FROM '.acymailing_table('letterman_subscribers',false));
	
	echo acymailing_translation_sprintf('USERS_IN_COMP',$resultUsers,'Letterman');
views/data/tmpl/joomla.php000060400000002073152455705230011566 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$resultUsers = acymailing_loadResult('SELECT count('.$this->cmsUserVars->id.') FROM '.acymailing_table($this->cmsUserVars->table, false));

$resultAcymailing = acymailing_loadResult('SELECT count(subid) FROM '.acymailing_table('subscriber').' WHERE userid > 0');

echo acymailing_translation_sprintf('ACY_IMPORT_NB_J_USERS', $resultUsers).'<br />';
echo acymailing_translation_sprintf('ACY_IMPORT_NB_ACY_USERS', $resultAcymailing).'<br />';
?>
<br/>
<br/>
<?php echo acymailing_translation('ACY_IMPORT_JOOMLA_1'); ?>
<ol>
	<li><?php echo acymailing_translation('ACY_IMPORT_JOOMLA_2'); ?></li>
	<li><?php echo acymailing_translation('ACY_IMPORT_JOOMLA_3'); ?></li>
	<li><?php echo acymailing_translation('ACY_IMPORT_JOOMLA_4'); ?></li>
	<li><?php echo acymailing_translation('ACY_IMPORT_JOOMLA_5'); ?></li>
</ol>
views/data/tmpl/textarea.php000060400000001016152455705230012116 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><textarea style="width:99%;height:180px;" rows="10" name="textareaentries">
<?php $text = acymailing_getVar('string', "textareaentries");
if(empty($text)){ ?>
name,email
Adrien,adrien@example.com
John,john@example.com
<?php }else{
	echo $text;
} ?>
</textarea>
views/data/tmpl/acajoom.php000060400000001661152455705230011720 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$resultUsers = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('acajoom_subscribers', false));
$resultLists = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('acajoom_lists', false));

echo acymailing_translation_sprintf('USERS_IN_COMP', $resultUsers, 'Acajoom');

if(!empty($resultLists)){
	echo '<div class="acyblockoptions"><span class="acyblocktitle">'.acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'Acajoom').'</span>';
	echo acymailing_translation_sprintf('IMPORT_X_LISTS', $resultLists).'<br />';
	echo acymailing_translation_sprintf('IMPORT_LIST_TOO', 'Acajoom').acymailing_boolean("acajoom_lists");
	echo '</div>';
}
views/data/tmpl/ccnewsletter.php000060400000002761152455705230013013 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$resultUsers = acymailing_loadResult('SELECT count(*) FROM '.acymailing_table('ccnewsletter_subscribers', false));

$resultLists = array();
$resultNews = array();

if(in_array(acymailing_getPrefix().'ccnewsletter_groups', $this->tables)){
	$resultLists = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('ccnewsletter_groups', false));

	$resultNews = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('ccnewsletter_newsletters', false));
}

echo acymailing_translation_sprintf('USERS_IN_COMP', $resultUsers, 'ccNewsletter');

if(!empty($resultLists)){
	echo '<div class="acyblockoptions"><span class="acyblocktitle">'.acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'ccNewsletter').'</span>';
	echo acymailing_translation_sprintf('IMPORT_X_LISTS', $resultLists).'<br />';
	echo acymailing_translation_sprintf('IMPORT_LIST_TOO', 'ccNewsletter').acymailing_boolean("ccNewsletter_lists");
	echo '</div>';
}
if(!empty($resultNews)){
	echo '<div class="acyblockoptions"><span class="acyblocktitle">'.acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'ccNewsletter').'</span>';
	echo acymailing_translation_sprintf('IMPORT_NEWSLETTERS_TOO', 'ccNewsletter').acymailing_boolean("ccNewsletter_news");
}
views/data/tmpl/civi.php000060400000001231152455705230011232 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$importHelper = acymailing_get('helper.import');
$importHelper->setciviprefix();
try{
	$resultUsers = acymailing_loadResult('SELECT count(*) FROM '.$importHelper->civiprefix.'email WHERE is_primary = 1');
	echo acymailing_translation_sprintf('USERS_IN_COMP', $resultUsers, 'CiviCRM');
}catch(Exception $e){
	echo("Error counting users from CiviCRM. CiviCRM table probably doesn't exists");
}


views/data/tmpl/yanc.php000060400000001561152455705230011240 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$resultUsers = acymailing_loadResult('SELECT count(*) FROM `#__yanc_subscribers`');
$resultLists = acymailing_loadResult('SELECT count(*) FROM `#__yanc_letters`');

echo acymailing_translation_sprintf('USERS_IN_COMP', $resultUsers, 'Yanc');

if(!empty($resultLists)){
	echo '<div class="acyblockoptions"><span class="acyblocktitle">'.acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'Yanc').'</span>';
	echo acymailing_translation_sprintf('IMPORT_X_LISTS', $resultLists).'<br />';
	echo acymailing_translation_sprintf('IMPORT_LIST_TOO', 'Yanc').acymailing_boolean("yanc_lists");
	echo '</div>';
}
views/data/tmpl/communicator.php000060400000000727152455705230013011 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
	$resultUsers = acymailing_loadResult('SELECT count(*) FROM '.acymailing_table('communicator_subscribers',false));
	
	echo acymailing_translation_sprintf('USERS_IN_COMP',$resultUsers,'Communicator');
views/data/tmpl/export.php000060400000021731152455705230011630 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'data', true); ?>" method="post" name="adminForm" id="adminForm">
		<style>
			#acy_content .oneBlock{
			<?php if(acymailing_isAdmin()){ ?> float: left;
				width: 49%;
				padding: 5px;
				min-width: 500px;
			<?php }else{ ?> width: 100%;
			<?php } ?>
			}
		</style>
		<div style="width:100%;">
			<div class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>">
				<span class="acyblocktitle"><?php echo acymailing_translation('FIELD_EXPORT'); ?></span>
				<table class="acymailing_smalltable">
					<?php
					$k = 0;
					if(!empty($this->fields)){
						foreach($this->fields as $fieldName => $fieldType){
							?>
							<tr class="<?php echo "row$k"; ?>" id="userField_<?php echo $fieldName; ?>">
								<td>
									<?php echo $fieldName ?>
								</td>
								<td align="center" style="text-align:center">
									<?php echo acymailing_boolean("exportdata[".$fieldName."]", '', in_array($fieldName, $this->selectedfields) ? 1 : 0); ?>
								</td>
							</tr>
							<?php
							$k = 1 - $k;
						}
					}
					if(!empty($this->otherfields)){

						foreach($this->otherfields as $fieldName){
							?>
							<tr class="<?php echo "row$k"; ?>" id="userField_<?php echo $fieldName; ?>">
								<td>
									<?php echo $fieldName ?>
								</td>
								<td align="center" style="text-align:center">
									<?php echo acymailing_boolean("exportdataother[".$fieldName."]", '', in_array($fieldName, $this->selectedfields) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO'), str_replace('.', '_', $fieldName)); ?>
								</td>
							</tr>
							<?php
							$k = 1 - $k;
						}
					}
					if(!empty($this->fieldsList)){
						foreach($this->fieldsList as $fieldName => $fieldType){
							?>
							<tr class="<?php echo "row$k"; ?>" id="userField_<?php echo $fieldName; ?>">
								<td>
									<?php echo $fieldName ?>
								</td>
								<td align="center" style="text-align:center">
									<?php echo acymailing_boolean("exportdatalist[".$fieldName."]", '', in_array($fieldName, $this->selectedfields) ? 1 : 0); ?>
								</td>
							</tr>
							<?php
							$k = 1 - $k;
						}
					}
					if(!empty($this->geolocfields)){
						?>
						<tr class="<?php echo "row$k"; ?>" id="userField_<?php echo $fieldName; ?>">
							<td>
								<?php echo acymailing_translation('ACYEXPORT_GEOLOC_VALUE'); ?>
							</td>
							<td align="center" style="text-align:center">
								<?php
								$values = array(acymailing_selectOption('asc', acymailing_translation('SEPARATOR_FIRST_GEOL_SAVED')), acymailing_selectOption('desc', acymailing_translation('ACYEXPORT_LAST_GEOL_SAVED')));
								echo acymailing_select($values, 'exportgeolocorder', '', 'value', 'text', $this->config->get('exportgeolocorder', 'asc')); ?>
							</td>
						</tr>
						<?php
						$k = 1 - $k;

						foreach($this->geolocfields as $fieldName => $fieldType){
							if(in_array($fieldName, array('geolocation_id', 'geolocation_subid'))) continue;
							?>
							<tr class="<?php echo "row$k"; ?>" id="userField_<?php echo $fieldName; ?>">
								<td>
									<?php echo $fieldName ?>
								</td>
								<td align="center" style="text-align:center">
									<?php echo acymailing_boolean("exportdatageoloc[".$fieldName."]", '', in_array($fieldName, $this->selectedfields) ? 1 : 0); ?>
								</td>
							</tr>
							<?php
							$k = 1 - $k;
						}
					}
					?>
					<tr class="<?php echo "row$k";
					$k = 1 - $k; ?>" id="userField_exportFormat">
						<td>
							<?php echo acymailing_translation('EXPORT_FORMAT'); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo $this->charset->display('exportformat', $this->config->get('export_format', 'UTF-8')); ?>
						</td>
					</tr>
					<tr class="<?php echo "row$k"; $k = 1 - $k; ?>" id="userField_separator">
						<td>
							<?php echo acymailing_translation('ACY_SEPARATOR'); ?>
						</td>
						<td align="center" nowrap="nowrap">
							<?php
							$values = array(acymailing_selectOption('semicolon', acymailing_translation('SEPARATOR_SEMICOLON')), acymailing_selectOption('comma', acymailing_translation('SEPARATOR_COMMA')));
							$data = str_replace(array(';', ','), array('semicolon', 'comma'), $this->config->get('export_separator', ';'));
							if($data == 'colon') $data = 'comma';
							echo acymailing_radio($values, 'exportseparator', '', 'value', 'text', $data);
							?>
						</td>
					</tr>
					<tr class="<?php echo "row$k"; ?>" id="userField_excel">
						<td>
							<?php echo acymailing_tooltip(acymailing_translation('ACY_EXCEL_SECURITY_DESC'), acymailing_translation('ACY_EXCEL_SECURITY'), '', acymailing_translation('ACY_EXCEL_SECURITY')); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo acymailing_boolean("export_excelsecurity", '', $this->config->get('export_excelsecurity', 0) == 1 ? 1 : 0); ?>
						</td>
					</tr>
				</table>
			</div>
			<?php if (empty($this->users)){ ?>
			<div class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>">
				<span class="acyblocktitle"><?php echo acymailing_translation('ACY_FILTERS'); ?></span>
				<table class="acymailing_smalltable">
					<tr class="row0">
						<td>
							<?php echo acymailing_translation('EXPORT_SUB_LIST'); ?>
						</td>
						<td align="center" nowrap="nowrap">
							<?php echo acymailing_boolean("exportfilter[subscribed]", 'onchange="if(this.value == 1){document.getElementById(\'exportlists\').style.display = \'block\'; }else{document.getElementById(\'exportlists\').style.display = \'none\'; }"', (in_array('subscribed', $this->selectedFilters) || !empty($this->exportlist)) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO').' : '.acymailing_translation('ALL_USERS')); ?>
						</td>
					</tr>
					<tr class="row1">
						<td>
							<?php echo acymailing_translation('EXPORT_REGISTERED'); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo acymailing_boolean("exportfilter[registered]", '', in_array('registered', $this->selectedFilters) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO').' : '.acymailing_translation('ALL_USERS')); ?>
						</td>
					</tr>
					<tr class="row0">
						<td>
							<?php echo acymailing_translation('EXPORT_CONFIRMED'); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo acymailing_boolean("exportfilter[confirmed]", '', in_array('confirmed', $this->selectedFilters) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO').' : '.acymailing_translation('ALL_USERS')); ?>
						</td>
					</tr>
					<tr class="row1">
						<td>
							<?php echo acymailing_translation('EXPORT_ENABLED'); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo acymailing_boolean("exportfilter[enabled]", '', in_array('enabled', $this->selectedFilters) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO').' : '.acymailing_translation('ALL_USERS')); ?>
						</td>
					</tr>
				</table>
				</id>
				<?php } ?>
			</div>
			<div class="<?php echo $this->isAdmin ? 'acyblockoptions' : 'onelineblockoptions'; ?>" id="exportlists" <?php echo (in_array('subscribed', $this->selectedFilters) || !empty($this->exportlist) || !empty($this->users)) ? '' : 'style="display:none"' ?> >
				<?php
				if(empty($this->users)){ ?>
					<span class="acyblocktitle"><?php echo acymailing_translation('LISTS'); ?></span>
					<?php
					$currentPage = 'export';
					include_once(ACYMAILING_BACK.'views'.DS.'list'.DS.'tmpl'.DS.'filter.lists.php');
				}else{ ?>
					<span class="acyblocktitle"><?php echo acymailing_translation('USERS'); ?></span>
					<table class="acymailing_table" cellpadding="1">
						<?php
						$k = 0;
						foreach($this->users as $row){
							?>
							<tr class="<?php echo "row$k"; ?>">
								<td><?php echo htmlspecialchars($row->name, ENT_QUOTES, 'UTF-8'); ?></td>
								<td><?php echo htmlspecialchars($row->email, ENT_QUOTES, 'UTF-8'); ?></td>
							</tr>
							<?php $k = 1 - $k;
						}

						if(count($this->users) >= 10){
							?>
							<tr class="<?php echo "row$k"; ?>">
								<td>...</td>
								<td>...</td>
							</tr>
						<?php } ?>
					</table>
				<?php } ?>
			</div>
			<input type="hidden" name="sessionvalues" value="<?php echo empty($this->users) ? 0 : acymailing_getVar('int', 'sessionvalues'); ?>"/>
			<input type="hidden" name="sessionquery" value="<?php echo empty($this->users) ? 0 : acymailing_getVar('int', 'sessionquery'); ?>"/>
			<?php acymailing_formOptions(); ?>
	</form>
	<div class="clr"></div>
</div>
views/data/tmpl/fbleads.php000060400000005402152455705230011704 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><table class="acymailing_table">
	<tr>
		<td class="acykey">
			<label for="fbleads_token"><?php echo acymailing_tooltip(acymailing_translation('ACY_FBLEADS_TOKEN_DESC'), acymailing_translation('ACY_FBLEADS_TOKEN'), '', acymailing_translation('ACY_FBLEADS_TOKEN')); ?></label>
		</td>
		<td>
			<input type="text" style="width:160px" name="fbleads_token" id="fbleads_token" value="<?php echo $this->escape($this->config->get('fbleads_token')); ?>"/>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<label for="fbleads_adid"><?php echo acymailing_tooltip(acymailing_translation('ACY_FBLEADS_AD_FORM_ID_DESC'), 'Ad ID', '', 'Ad ID'); ?></label>
		</td>
		<td>
			<input type="text" style="width:160px" name="fbleads_adid" id="fbleads_adid" value="<?php echo $this->escape($this->config->get('fbleads_adid')); ?>"/>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<label for="fbleads_formid"><?php echo acymailing_tooltip(acymailing_translation('ACY_FBLEADS_AD_FORM_ID_DESC'), 'Form ID', '', 'Form ID'); ?></label>
		</td>
		<td>
			<input type="text" style="width:160px" name="fbleads_formid" id="fbleads_formid" value="<?php echo $this->escape($this->config->get('fbleads_formid')); ?>"/>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<label for="fbleads_mincreated"><?php echo acymailing_translation('ACY_FBLEADS_MINCREATED'); ?></label>
		</td>
		<td>
			<?php echo acymailing_calendar($this->config->get('fbleads_mincreated'), 'fbleads_mincreated', 'fbleads_mincreated', '%Y-%m-%d', array('style' => 'width:100px')); ?>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<label for="fbleads_maxcreated"><?php echo acymailing_translation('ACY_FBLEADS_MAXCREATED'); ?></label>
		</td>
		<td>
			<?php echo acymailing_calendar($this->config->get('fbleads_maxcreated'), 'fbleads_maxcreated', 'fbleads_maxcreated', '%Y-%m-%d', array('style' => 'width:100px')); ?>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<label for="fbleads_email"><?php echo acymailing_translation('EMAILCAPTION'); ?></label>
		</td>
		<td>
			<input type="text" style="width:160px" placeholder="email" name="fbleads_email" id="fbleads_email" value="<?php echo $this->escape($this->config->get('fbleads_email', 'email')); ?>"/>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<label for="fbleads_name"><?php echo acymailing_translation('NAMECAPTION'); ?></label>
		</td>
		<td>
			<input type="text" style="width:160px" placeholder="full_name" name="fbleads_name" id="fbleads_name" value="<?php echo $this->escape($this->config->get('fbleads_name', 'full_name')); ?>"/>
		</td>
	</tr>
</table>
views/data/tmpl/ajaxencoding.php000060400000015066152455705230012745 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><span class="acyblocktitle"><?php echo acymailing_translation('ACY_MATCH_DATA'); ?></span>
<?php
$config = acymailing_config();
$encodingHelper = acymailing_get('helper.encoding');
$filename = strtolower(acymailing_getVar('cmd', 'filename'));
$encoding = acymailing_getVar('cmd', 'encoding');

$extension = '.'.acymailing_fileGetExt($filename);
$uploadPath = ACYMAILING_MEDIA.'import'.DS.str_replace(array('.', ' '), '_', substr($filename, 0, strpos($filename, $extension))).$extension;

if(!file_exists($uploadPath)){
	acymailing_display(acymailing_translation_sprintf('FAIL_OPEN', '<b><i>'.htmlspecialchars($uploadPath, ENT_COMPAT, 'UTF-8').'</i></b>'), 'error');
	return;
}
$this->config = acymailing_config();
$this->content = file_get_contents($uploadPath);
if(empty($encoding)){
	$encoding = $encodingHelper->detectEncoding($this->content);
}
$content = $encodingHelper->change($this->content, $encoding, 'UTF-8');

$content = str_replace(array("\r\n", "\r"), "\n", $content);
$this->lines = explode("\n", $content);

$this->separator = ',';
$listSeparators = array("\t", ';', ',');
foreach($listSeparators as $sep){
	if(strpos($this->lines[0], $sep) !== false){
		$this->separator = $sep;
		break;
	}
}

$nbPreviewLines = 0;
$i = 0;

while(isset($this->lines[$i])){
	if(empty($this->lines[$i])){
		unset($this->lines[$i]);
		continue;
	}else $nbPreviewLines++;

	if(strpos($this->lines[$i], '"') !== false){
		$j = $i + 1;
		$position = -1;

		while($j < ($i + 30)){
			$quoteOpened = substr($this->lines[$i], $position + 1, 1) == '"';

			if($quoteOpened){
				$nextQuotePosition = strpos($this->lines[$i], '"', $position + 2);
				if($nextQuotePosition === false){
					if(!isset($this->lines[$j])) break;

					$this->lines[$i] .= "\n".rtrim($this->lines[$j], $this->separator);
					unset($this->lines[$j]);
					$j++;
					continue;
				}else{
					$quoteOpened = false;

					if(strlen($this->lines[$i]) - 1 == $nextQuotePosition){
						break;
					}

					$position = $nextQuotePosition + 1;
				}
			}else{
				$nextSeparatorPosition = strpos($this->lines[$i], $this->separator, $position + 1);
				if($nextSeparatorPosition === false){
					break;
				}else{ // If found the next separator, add the value in $data and change the position
					$position = $nextSeparatorPosition;
				}
			}
		}

		$this->lines = array_merge($this->lines);
	}

	if($nbPreviewLines == 10) break;

	if($nbPreviewLines != 1){
		$i++;
		continue;
	}

	if(strpos($this->lines[$i], '@')){
		$noHeader = 1;
	}else $noHeader = 0;

	$columnNames = explode($this->separator, $this->lines[$i]);
	$nbColumns = count($columnNames);
	if(!empty($i)) unset($this->lines[$i]);
	ksort($this->lines);
}
$this->lines = array_values($this->lines);
$nbLines = count($this->lines);

?>
<table <?php echo acymailing_isAdmin() ? 'class="acymailing_table"' : 'class="adminlist"'; ?> cellspacing="10" cellpadding="10" align="center" id="importdata">
	<?php
	if($noHeader || !isset($this->lines[1])){
		$firstValueLine = $columnNames;
	}else{
		$firstValueLine = explode($this->separator, $this->lines[1]);
		foreach($firstValueLine as &$oneValue){
			$oneValue = trim($oneValue, '\'" ');
		}
	}

	$fieldAssignment = array();
	$fieldAssignment[] = acymailing_selectOption("0", '- - -');
	$fieldAssignment[] = acymailing_selectOption("1", acymailing_translation('ACY_IGNORE'));
	if(acymailing_isAllowed($this->config->get('acl_extra_fields_import', 'all'))){
		$createField = acymailing_selectOption("2", acymailing_translation('ACY_CREATE_FIELD'));
		if(!acymailing_level(3)){
			$createField->disable = true;
			$createField->text .= ' ('.acymailing_translation('ONLY_FROM_ENTERPRISE').')';
		}
		$fieldAssignment[] = $createField;
	}
	$separator = acymailing_selectOption("3", '-------------------------------------');
	$separator->disable = true;
	$fieldAssignment[] = $separator;

	$fields = array_keys(acymailing_getColumns('#__acymailing_subscriber'));
	$fields[] = 'listids';
	$fields[] = 'listname';

	foreach($fields as $oneField){
		$fieldAssignment[] = acymailing_selectOption($oneField, $oneField);
	}

	$fields[] = '1';

	echo '<tr class="row0"><td align="center" valign="top"><strong>'.acymailing_tooltip(acymailing_translation('ACY_ASSIGN_COLUMNS_DESC'), null, null, acymailing_translation('ACY_ASSIGN_COLUMNS')).'</strong>'.($nbColumns > 5 ? '<br/><a style="text-decoration:none;" href="#" onclick="ignoreAllOthers();">'.acymailing_translation('ACY_IGNORE_UNASSIGNED').'</a>' : '').'</td>';

	$alreadyFound = array();
	foreach($columnNames as $key => &$oneColumn){
		$oneColumn = strtolower(trim($oneColumn, '\'" '));
		$customValue = '';
		$default = acymailing_getVar('cmd', 'fieldAssignment'.$key);
		if(empty($default) && $default !== 0){
			$default = (in_array($oneColumn, $fields) ? $oneColumn : '0');

			if(!$default && !empty($firstValueLine)){
				if(isset($firstValueLine[$key]) && strpos($firstValueLine[$key], '@')){
					$default = 'email';
				}elseif($nbColumns == 2) $default = 'name';
			}
			if(in_array($default, $alreadyFound)) $default = '0';
			$alreadyFound[] = $default;
		}elseif($default == 2){
			$customValue = acymailing_getVar('cmd', 'newcustom'.$key);
		}

		echo '<td align="center" valign="top">'.acymailing_select($fieldAssignment, 'fieldAssignment'.$key, 'size="1" onchange="checkNewCustom('.$key.')" style="width:180px;"', 'value', 'text', $default).'<br />';

		echo '<input style="width:170px;'.(empty($customValue) ? 'display:none;"' : '" value="'.$customValue.'" required').' type="text" id="newcustom'.$key.'" name="newcustom" placeholder="'.acymailing_translation('FIELD_COLUMN').'..."/></td>';
	}
	echo '</tr>';

	if(!$noHeader){
		foreach($columnNames as &$oneColumn){
			$oneColumn = htmlspecialchars($oneColumn, ENT_COMPAT | ENT_IGNORE, 'UTF-8');
		}
		echo '<tr class="row1"><td align="center"><strong>'.acymailing_translation('ACY_IGNORE_LINE').'</strong></td><td align="center">['.implode(']</td><td align="center">[', $columnNames).']</td></tr>';
	}

	for($i = 1 - $noHeader; $i < 11 - $noHeader && $i < $nbLines; $i++){
		$values = explode($this->separator, $this->lines[$i]);

		foreach($values as &$oneValue){
			$oneValue = htmlspecialchars(trim($oneValue, '\'" '), ENT_COMPAT | ENT_IGNORE, 'UTF-8');
		}
		echo '<tr class="row'.(1 - $i % 2).'"><td align="center"><strong>'.($i + $noHeader).'</strong></td><td align="center">'.implode('</td><td align="center">', $values).'</td></tr>';
	}
	?>
</table>
views/data/tmpl/ldap.php000060400000011003152455705230011216 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(!function_exists('ldap_connect')){
	acymailing_display('LDAP Extension not loaded on your server.<br />Please enable the LDAP php extension.', 'warning');
	return;
}

$js = 'function updateldap(){
		document.getElementById("ldap_fields").innerHTML = "<span class=\"onload\"></span>";
		queryString = "'.acymailing_prepareAjaxURL('data').'&task=ajaxload&importfrom=ldap";
		queryString += "&ldap_host="+document.getElementById("ldap_host").value;
		queryString += "&ldap_port="+document.getElementById("ldap_port").value;
		queryString += "&ldap_basedn="+document.getElementById("ldap_basedn").value;
		queryString += "&ldap_username="+document.getElementById("ldap_username").value;
		queryString += "&ldap_password="+document.getElementById("ldap_password").value;

		var xhr = new XMLHttpRequest();
		xhr.open("GET", queryString);
		xhr.onload = function(){
			document.getElementById("ldap_fields").innerHTML = xhr.responseText;
		}
		xhr.send();
	}';
acymailing_addScript(true, $js);
?>
<div class="onelineblockoptions">
	<span class="acyblocktitle"><?php echo acymailing_translation('ACY_CONFIGURATION'); ?></span>
	<table <?php echo $this->isAdmin ? 'class="acymailing_table"' : 'class="admintable table" cellspacing="1"' ?>>
		<?php if($this->config->get('require_confirmation')){ ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('IMPORT_CONFIRMED'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("ldap_import_confirm", '', $this->config->get('ldap_import_confirm', 1), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
				</td>
			</tr>
		<?php } ?>
		<tr>
			<td class="acykey">
				<?php echo acymailing_translation('GENERATE_NAME'); ?>
			</td>
			<td>
				<?php echo acymailing_boolean("ldap_generatename", '', $this->config->get('ldap_generatename', 1), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
			</td>
		</tr>
		<tr>
			<td class="acykey">
				<?php echo acymailing_translation('OVERWRITE_EXISTING'); ?>
			</td>
			<td>
				<?php echo acymailing_boolean("ldap_overwriteexisting", '', $this->config->get('ldap_overwriteexisting', 0), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
			</td>
		</tr>
		<tr>
			<td class="acykey">
				<?php echo 'Delete AcyMailing user if it does not exists in LDAP'; ?>
			</td>
			<td>
				<?php echo acymailing_boolean("ldap_deletenotexists", '', $this->config->get('ldap_deletenotexists', 0), acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
			</td>
		</tr>
	</table>
</div>

<div class="onelineblockoptions">
	<span class="acyblocktitle" style="margin-top: 20px;">Server</span>
	<table <?php echo $this->isAdmin ? 'class="acymailing_table"' : 'class="admintable table" cellspacing="1"' ?>>
		<tr>
			<td class="acykey">
				<label for="ldap_host">Host</label>
			</td>
			<td>
				<input onchange="updateldap();" type="text" style="width:160px" name="ldap_host" id="ldap_host" value="<?php echo $this->escape($this->config->get('ldap_host')); ?>"/>
			</td>
		</tr>
		<tr>
			<td class="acykey">
				<label for="ldap_port">Port</label>
			</td>
			<td>
				<input onchange="updateldap();" type="text" style="width:50px" name="ldap_port" id="ldap_port" value="<?php echo $this->escape($this->config->get('ldap_port')); ?>"/>
			</td>
		</tr>
		<tr>
			<td class="acykey">
				<label for="ldap_username">RDN</label>
			</td>
			<td>
				<input onchange="updateldap();" type="text" style="width:160px" name="ldap_username" id="ldap_username" value="<?php echo $this->escape($this->config->get('ldap_username')); ?>"/>
			</td>
		</tr>
		<tr>
			<td class="acykey">
				<label for="ldap_password"><?php echo acymailing_translation('SMTP_PASSWORD'); ?></label>
			</td>
			<td>
				<input onchange="updateldap();" type="password" style="width:160px" name="ldap_password" id="ldap_password" value="<?php echo $this->escape($this->config->get('ldap_password')); ?>"/>
			</td>
		</tr>
		<tr>
			<td class="acykey">
				<label for="ldap_basedn">Base DN</label>
			</td>
			<td>
				<input onchange="updateldap();" type="text" style="width:200px" name="ldap_basedn" id="ldap_basedn" value="<?php echo $this->escape($this->config->get('ldap_basedn')); ?>"/>
			</td>
		</tr>
	</table>
</div>
<div id="ldap_fields"></div>
views/data/tmpl/sobipro.php000060400000004740152455705230011765 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
	$config = acymailing_config();
	$sobiproInfo = unserialize($config->get('sobipro_import'));

	$query='SELECT a.fid, a.nid, fieldType, section, b.name, filter FROM #__sobipro_field as a JOIN #__sobipro_object as b ON a.section = b.id  WHERE (fieldType = "inbox" AND ( filter = "title" OR filter = "0" OR filter = "")) OR (fieldType = "inbox" AND filter = "email") ORDER BY `section`';
	$nidResult = acymailing_loadObjectList($query);

	$section = array();

	foreach($nidResult as $oneResult){
		if(!isset($section[$oneResult->section])) {
			$section[$oneResult->section] = array();
			$section[$oneResult->section]['sectionName'] = $oneResult->name;
			$section[$oneResult->section]['sectionID'] = $oneResult->section;
			$section[$oneResult->section]['email'] = array(acymailing_selectOption('', '- - -'));
			$section[$oneResult->section]['name'] = array(acymailing_selectOption('', '- - -'));
		}
		if(($oneResult->fieldType=='inbox' && $oneResult->filter=='email')){
			$section[$oneResult->section]['email'][] = acymailing_selectOption($oneResult->fid, $oneResult->nid);
		}
		if(($oneResult->fieldType == 'inbox' && (($oneResult->filter == "title") || ($oneResult->filter == "0") || ($oneResult->filter == "")))){
			$section[$oneResult->section]['name'][] = acymailing_selectOption($oneResult->fid, $oneResult->nid);
		}
	}
	?>
	<table>
	<thead>
	<tr>
		<th><?php echo acymailing_translation('TAG_CATEGORIES');?></th><th><?php echo acymailing_translation('JOOMEXT_EMAIL'); ?></th><th><?php echo acymailing_translation('JOOMEXT_NAME'); ?></th>
	</tr>
	</thead>
	<tbody>
	<?php
	foreach($section as $oneSection){
	?>
		<tr>
			<td><?php echo $oneSection['sectionName']; ?></td>
			<td><?php echo acymailing_select($oneSection['email'], 'config['.$oneSection['sectionID'].'][sobiEmail]' , 'size="1"', 'value', 'text', isset($sobiproInfo[$oneSection['sectionID']]['sobiEmail']) ? $sobiproInfo[$oneSection['sectionID']]['sobiEmail'] : ''); ?></td>
			<td><?php echo acymailing_select($oneSection['name'], 'config['.$oneSection['sectionID'].'][sobiName]' , 'size="1"', 'value', 'text', isset($sobiproInfo[$oneSection['sectionID']]['sobiName']) ? $sobiproInfo[$oneSection['sectionID']]['sobiName'] : '' ); ?></td>
		</tr>
	<?php
	}
	?>
	</tbody>
	</table>
views/data/tmpl/nspro.php000060400000002123152455705230011442 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
$resultUsers = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('nspro_subs', false));
$resultLists = acymailing_loadResult('SELECT count(id) FROM '.acymailing_table('nspro_lists', false));
?>

<table <?php echo $this->isAdmin ? 'class="acymailing_table"' : 'class="admintable table" cellspacing="1"' ?>>
	<tr>
		<td colspan="2">
			<?php echo acymailing_translation_sprintf('USERS_IN_COMP', $resultUsers, 'NS Pro'); ?>
			<br/>
			<?php echo acymailing_translation_sprintf('LISTS_IN_COMP', $resultLists, 'NS Pro'); ?>
			<br/>
			<?php echo acymailing_translation_sprintf('IMPORT_X_LISTS', $resultLists); ?>
		</td>
	</tr>
	<tr>
		<td class="acykey">
			<?php echo acymailing_translation_sprintf('IMPORT_LIST_TOO', 'NS Pro'); ?>
		</td>
		<td>
			<?php echo acymailing_boolean("nspro_lists"); ?>
		</td>
	</tr>
</table>
views/data/tmpl/genericimport.php000060400000021255152455705230013157 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" enctype="multipart/form-data" id="adminForm">
		<input type="hidden" name="import_type" id="import_type" value="<?php echo $this->type; ?>"/>
		<input type="hidden" name="filename" id="filename" value="<?php echo acymailing_getVar('cmd', 'filename'); ?>"/>
		<input type="hidden" name="import_columns" id="import_columns" value=""/>
		<input type="hidden" name="createlist" id="createlist" value="<?php echo acymailing_getVar('string', 'createlist'); ?>"/>
		<?php
		$checkedLists = acymailing_getVar('array', 'importlists', array(), '');
		foreach($checkedLists as $key => $oneList){
			echo '<input type="hidden" name="importlists['.intval($key).']" id="importlists'.intval($key).'-'.intval($oneList).'" value="'.intval($oneList).'"/>';
		}

		if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />';
		acymailing_formOptions(); ?>

		<div class="onelineblockoptions" id="matchdata">
			<?php include_once(ACYMAILING_BACK.'views'.DS.'data'.DS.'tmpl'.DS.'ajaxencoding.php'); ?>
			<div class="loading" align="center"><?php echo acymailing_translation_sprintf('ACY_FIRST_LINES', ($nbLines < 11 - $noHeader ? ($nbLines - 1 + $noHeader) : 10)); ?></div>
		</div>

		<div class="onelineblockoptions">
			<span class="acyblocktitle">Parameters</span>
			<table class="acymailing_table" cellspacing="1">
				<tr id="trfilecharset">
					<td class="acykey">
						<?php echo acymailing_translation('CHARSET_FILE'); ?>
					</td>
					<td>
						<?php
						$charsetType = acymailing_get('type.charset');
						$charsetType->addinfo = 'onchange="changeCharset();"';
						$this->type = empty($this->type) ? '' : $this->type;
						if($this->type == 'textarea'){
							$default = 'UTF-8';
						}elseif($this->type == 'file'){
							$default = $encodingHelper->detectEncoding($this->content);
						}
						echo $charsetType->display('charsetconvert', $default);
						?>
						<span id="loadingEncoding"></span>
					</td>
				</tr>
				<?php if($this->config->get('require_confirmation')){ ?>
					<tr id="trfileconfirm">
						<td class="acykey">
							<?php echo acymailing_translation('IMPORT_CONFIRMED'); ?>
						</td>
						<td>
							<?php echo acymailing_boolean("import_confirmed", '', in_array('import_confirmed', $this->selectedParams) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
						</td>
					</tr>
				<?php } ?>
				<tr id="trfilegenerate">
					<td class="acykey">
						<?php echo acymailing_translation('GENERATE_NAME'); ?>
					</td>
					<td>
						<?php echo acymailing_boolean("generatename", '', in_array('generatename', $this->selectedParams) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
					</td>
				</tr>
				<tr id="trfileblock">
					<td class="acykey">
						<?php echo acymailing_translation('IMPORT_BLOCKED'); ?>
					</td>
					<td>
						<?php echo acymailing_boolean("importblocked", '', in_array('importblocked', $this->selectedParams) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
					</td>
				</tr>
				<tr id="trfileoverwrite">
					<td class="acykey">
						<?php echo acymailing_translation('OVERWRITE_EXISTING'); ?>
					</td>
					<td>
						<?php echo acymailing_boolean("overwriteexisting", '', in_array('overwriteexisting', $this->selectedParams) ? 1 : 0, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
					</td>
				</tr>
			</table>
		</div>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('SUBSCRIPTION'); ?></span>
			<table class="acymailing_table" cellspacing="1">
				<tr id="trsumup">
					<td>
						<?php
						echo acymailing_translation('ACY_IMPORT_LISTS').' : '.(empty($this->lists) ? acymailing_translation('ACY_NONE') : htmlspecialchars($this->lists, ENT_COMPAT, 'UTF-8'));
						echo '<br />'.acymailing_translation('ACY_IMPORT_UNSUB_LISTS').' : '.(empty($this->unsublists) ? acymailing_translation('ACY_NONE') : htmlspecialchars($this->unsublists, ENT_COMPAT, 'UTF-8'));
						?>
					</td>
				</tr>
			</table>
		</div>
	</form>
	<script language="javascript" type="text/javascript">
		<!--
		document.addEventListener("DOMContentLoaded", function(){
			acymailing.submitbutton = function(pressbutton){
				if(pressbutton == 'finalizeimport'){
					var subval = true;
					var errors = "";
					var string = "";
					var emailField = false;
					var columns = "";
					var selectedFields = Array();
					var fieldNb = <?php echo $nbColumns; ?>;
					if(isNaN(fieldNb)) fieldNb = 1;

					for(var i = 0; i < fieldNb; i++){
						if(document.getElementById("newcustom" + i).required){
							string = document.getElementById("newcustom" + i).value;
							if(string == ""){
								subval = false;
								errors += "\nNew custom field's name (column " + (i + 1) + ")";
							}else{
								if(!string.match(/^[A-Za-z][A-Za-z0-9_]+$/)){
									subval = false;
									errors += "\nPlease enter a valid field name for the column n°" + (i + 1) + ": spaces, uppercase and special characters are not allowed";
								}else{
									if(string != 1 && selectedFields.indexOf(string) != -1){
										subval = false;
										errors += "\nDuplicate field \"" + string + "\" for the column n°" + (i + 1);
									}else{
										if(string != 0){
											selectedFields.push(string);
										}
									}
									columns += "," + string;
								}
							}
						}else{
							string = document.getElementById("fieldAssignment" + i).value;
							if(string == 0){
								subval = false;
								errors += "\nAssign the column " + (i + 1) + " to a field";
							}

							if(string == 'email'){
								emailField = true;
							}

							if(string != 1 && selectedFields.indexOf(string) != -1){
								subval = false;
								errors += "\nDuplicate field \"" + string + "\" for the column " + (i + 1);
							}else{
								selectedFields.push(string);
							}

							columns += "," + string;
						}
					}

					if(!emailField){
						subval = false;
						errors += "\nPlease assign a column for the e-mail field";
					}

					if(subval == false){
						alert("<?php echo acymailing_translation('FILL_ALL'); ?>:\n" + errors);
						return false;
					}

					if(columns.substr(0, 1) == ","){
						columns = columns.substring(1);
					}

					document.getElementById("import_columns").value = columns;
				}

				acymailing.submitform(pressbutton, document.adminForm);
			}
		});

		function checkNewCustom(key){
			if(document.getElementById("fieldAssignment" + key).value == 2){
				document.getElementById("newcustom" + key).style.display = "";
				document.getElementById("newcustom" + key).required = true;
			}else{
				document.getElementById("newcustom" + key).style.display = "none";
				document.getElementById("newcustom" + key).required = false;
			}
		}

		function changeCharset(){
			var URL = "<?php echo acymailing_prepareAjaxURL((acymailing_isAdmin() ? 'front' : '').'data'); ?>&encoding=" + document.getElementById("charsetconvert").value + "&task=ajaxencoding&filename=<?php echo urlencode($filename); ?>";
			var selectedDropdowns = "";
			var fieldNb = <?php echo $nbColumns; ?>;
			if(isNaN(fieldNb)) fieldNb = 1;

			for(var i = 0; i < fieldNb; i++){
				selectedDropdowns += "&fieldAssignment" + i + "=" + document.getElementById("fieldAssignment" + i).value;
				if(document.getElementById("newcustom" + i).required){
					selectedDropdowns += "&newcustom" + i + "=" + document.getElementById("newcustom" + i).value;
				}
			}

			URL += selectedDropdowns;


			document.getElementById("loadingEncoding").innerHTML = '<span class=\"onload\"></span>';
			document.getElementById("importdata").style.opacity = "0.5";
			document.getElementById("importdata").style.filter = 'alpha(opacity=50)';

			var xhr = new XMLHttpRequest();
			xhr.open("GET", URL);
			xhr.onload = function(){
				document.getElementById("matchdata").innerHTML = xhr.responseText;
				document.getElementById("loadingEncoding").innerHTML = '';
			}
			xhr.send();
		}

		function ignoreAllOthers(){
			var fieldNb = document.adminForm.newcustom.length;
			if(isNaN(fieldNb)) fieldNb = 1;

			for(var i = 0; i < fieldNb; i++){
				if(document.getElementById("fieldAssignment" + i).value == 0){
					document.getElementById("fieldAssignment" + i).value = 1;
				}
			}
		}
		-->
	</script>
</div>
views/file/index.html000060400000000054152455705230010620 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/file/view.html.php000060400000015004152455705230011252 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class FileViewFile extends acymailingView{
	
	function display($tpl = null){
		acymailing_addStyle(false, ACYMAILING_CSS.'frontendedition.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'frontendedition.css'));

		acymailing_setNoTemplate();

		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function css(){
		$file = acymailing_getVar('cmd', 'file');
		if(!preg_match('#^([-A-Z0-9]*)_([-_A-Z0-9]*)$#i', $file, $result)){
			acymailing_display('Could not load the file '.$file.' properly');
			exit;
		}
		$type = $result[1];
		$fileName = $result[2];

		$content = acymailing_getVar('string', 'csscontent');
		if(empty($content) && file_exists(ACYMAILING_MEDIA.'css'.DS.$type.'_'.$fileName.'.css')) $content = file_get_contents(ACYMAILING_MEDIA.'css'.DS.$type.'_'.$fileName.'.css');

		if(strpos($fileName, 'default') !== false){
			$fileName = 'custom'.str_replace('default', '', $fileName);
			$i = 1;
			while(file_exists(ACYMAILING_MEDIA.'css'.DS.$type.'_'.$fileName.'.css')){
				$fileName = 'custom'.$i;
				$i++;
			}
		}

		if(acymailing_isNoTemplate()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('savecss', acymailing_translation('ACY_SAVE'), 'save', false);
			$acyToolbar->setTitle($type.'_'.$fileName.'.css');
			$acyToolbar->topfixed = false;
			$acyToolbar->display();
		}

		$this->content = $content;
		$this->fileName = $fileName;
		$this->type = $type;
	}


	function language(){

		$this->setLayout('default');

		$code = acymailing_getVar('cmd', 'code');
		if(empty($code)){
			acymailing_display('Code not specified', 'error');
			return;
		}

		$file = new stdClass();
		$file->name = $code;
		$path = acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing.ini';
		$file->path = $path;

		
		$showLatest = true;
		$loadLatest = false;

		if(file_exists($path)){
			$file->content = acymailing_fileGetContent($path);
			if(empty($file->content)){
				acymailing_display('File not found : '.$path, 'error');
			}
		}else{
			$loadLatest = true;
			acymailing_enqueueMessage(acymailing_translation('LOAD_ENGLISH_1').'<br />'.acymailing_translation('LOAD_ENGLISH_2').'<br />'.acymailing_translation('LOAD_ENGLISH_3'), 'info');
			$file->content = acymailing_fileGetContent(acymailing_getLanguagePath(ACYMAILING_ROOT, ACYMAILING_DEFAULT_LANGUAGE).DS.ACYMAILING_DEFAULT_LANGUAGE.'.com_acymailing.ini');
		}

		$custompath = acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing_custom.ini';
		if(file_exists($custompath)){
			$file->customcontent = acymailing_fileGetContent($custompath);
		}

		if($loadLatest || acymailing_getVar('cmd', 'task') == 'latest'){
			if(file_exists(acymailing_getLanguagePath(ACYMAILING_ROOT, $code))){
				acymailing_addScript(false, ACYMAILING_UPDATEURL.'languageload&code='.acymailing_getVar('cmd', 'code'));
			}else{
				acymailing_enqueueMessage('The specified language "'.htmlspecialchars($code, ENT_COMPAT, 'UTF-8').'" is not installed on your site', 'warning');
			}
			$showLatest = false;
		}elseif(acymailing_getVar('cmd', 'task') == 'save'){
			$showLatest = false;
		}

		if(acymailing_isNoTemplate()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->save();
			$acyToolbar->custom('share', acymailing_translation('SHARE'), 'share', false);
			$acyToolbar->setTitle(acymailing_translation('ACY_FILE').' : '.$this->escape($file->name));
			$acyToolbar->topfixed = false;
			$acyToolbar->display();
		}

		$this->showLatest = $showLatest;
		$this->file = $file;
	}

	function share(){
		$file = new stdClass();
		$file->name = acymailing_getVar('cmd', 'code');

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->custom('share', acymailing_translation('SHARE'), 'share', false, "if(confirm('".acymailing_translation('CONFIRM_SHARE_TRANS', true)."')){ acymailing.submitbutton('send');} return false;");
		$acyToolbar->setTitle(acymailing_translation('SHARE').' : '.$this->escape($file->name));
		$acyToolbar->topfixed = false;
		$acyToolbar->display();

		$this->file = $file;
	}

	function select(){
		$config = acymailing_config();
		$uploadFolders = acymailing_getFilesFolder('upload', true);
		$uploadFolder = acymailing_getVar('string', 'currentFolder', $uploadFolders[0]);
		$uploadPath = acymailing_cleanPath(ACYMAILING_ROOT.trim(str_replace('/', DS, trim($uploadFolder)), DS));
		$map = acymailing_getVar('string', 'id');

		$uploadedFile = acymailing_getVar('array', 'uploadedFile', array(), 'files');
		if(!empty($uploadedFile) && !empty($uploadedFile['name'])){
			$uploaded = acymailing_importFile($uploadedFile, $uploadPath, in_array($map, array('thumb', 'readmore')));
			if($uploaded){
				$script = 'parent.document.getElementById("'.$map.'").value = "'.str_replace(DS, '/', $uploadFolder).'/'.$uploaded.'";';
				if(in_array($map, array('thumb', 'readmore'))){
					$script .= 'parent.document.getElementById("'.$map.'preview").src = "'.acymailing_rootURI().str_replace(DS, '/', $uploadFolder).'/'.$uploaded.'";';
				}else{
					$script .= 'parent.document.getElementById("'.$map.'selection").innerHTML = "'.$uploaded.'";';
					$script .= "parent.document.getElementById('".$map."suppr').style.display = 'inline';";
				}
				$script .= 'window.parent.acymailing.closeBox();';
				acymailing_addScript(true, $script);
			}
		}

		$fileToDelete = acymailing_getVar('string', 'filename', '');
		if(!empty($fileToDelete) && file_exists($uploadPath.DS.$fileToDelete) && empty($uploadedFile)){
			$checkAttach = acymailing_loadResultArray('SELECT mailid FROM #__acymailing_mail WHERE attach LIKE \'%"'.$uploadFolder.'/'.$fileToDelete.'"%\'');

			if(!empty($checkAttach)){
				acymailing_display(acymailing_translation_sprintf('ACY_CANT_DELETEFILE', implode($checkAttach, ', ')), 'error');
			}else{
				if(acymailing_deleteFile($uploadPath.DS.$fileToDelete)){
					acymailing_display(acymailing_translation('ACY_DELETED_FILE_SUCCESS'), 'success');
				}else{
					acymailing_display(acymailing_translation('ACY_DELETED_FILE_ERROR'), 'error');
				}
			}
		}

		$displayType = acymailing_getVar('string', 'displayType', 'icons');
		$this->config = $config;
		$this->uploadFolder = $uploadFolder;
		$this->uploadFolders = $uploadFolders;
		$this->uploadPath = $uploadPath;
		$this->map = $map;
		$this->displayType = $displayType;
	}
}
views/file/tmpl/default.php000060400000003031152455705230011732 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<form action="<?php echo acymailing_completeLink('file', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<div class="onelineblockoptions">
			<div class="acyblocktitle"><?php echo acymailing_translation('ACY_FILE').' : '.@$this->escape($this->file->name); ?>
				<?php if(!empty($this->showLatest)){ ?>
					<button type="button" class="acymailing_button" onclick="acymailing.submitbutton('latest')" style="margin-left: 15px !important;"> <?php echo acymailing_translation('LOAD_LATEST_LANGUAGE'); ?> <i class="acyicon-import" style="margin-left: 10px;"></i></button>
				<?php } ?>
			</div>
			<textarea style="width:660px;height:200px;" rows="18" name="content" id="translation"><?php echo @$this->file->content; ?></textarea>
		</div>

		<div class="onelineblockoptions">
			<div class="acyblocktitle"><?php echo acymailing_translation('CUSTOM_TRANS'); ?></div>
			<?php echo acymailing_translation('CUSTOM_TRANS_DESC'); ?>
			<textarea style="width:660px;height:50px;" rows="5" name="customcontent"><?php echo @$this->file->customcontent; ?></textarea>
		</div>

		<div class="clr"></div>
		<input type="hidden" name="code" value="<?php echo @$this->escape($this->file->name); ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/file/tmpl/share.php000060400000001753152455705230011421 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<form action="<?php echo acymailing_completeLink('file', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<div class="acyblockoptions">
			<?php acymailing_display(acymailing_translation('SHARE_CONFIRMATION_1').'<br />'.acymailing_translation('SHARE_CONFIRMATION_2').'<br />'.acymailing_translation('SHARE_CONFIRMATION_3'), 'info'); ?><br/>
			<textarea rows="8" name="mailbody" style="width:620px;height: 100px;">Hi Acyba team,
Here is a new version of the language file, I translated few more strings...</textarea>
		</div>
		<div class="clr"></div>

		<input type="hidden" name="code" value="<?php echo $this->file->name; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/file/tmpl/select.php000060400000023735152455705230011602 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="maincontent" style="border: 1px solid rgb(233, 233, 233);">
	<form action="<?php echo acymailing_completeLink('file', true); ?>" method="post" name="adminForm" id="adminForm" enctype="multipart/form-data" style="margin:0px;">
		<div id="folderarea" style="box-shadow: 0px 4px 4px -4px rgba(0, 0, 0, 0.3);padding:15px;">
			<button style="float: right;" class="btn" onclick="changeDisplay(event);" id="btn_change_display" title="<?php echo acymailing_translation('ACY_DISPLAY_NOICON'); ?>"><i id="iconTypeDisplay" class="acyicon-list_view"></i></button>
			<?php
			$folders = acymailing_generateArborescence($this->uploadFolders);
			$filetreeType = acymailing_get('type.filetree');
			$filetreeType->display($folders, $this->uploadFolder, 'currentFolder', 'changeFolder(path)');
			?>
		</div>
		<script type="text/javascript">
			var clickedDel = false;
			document.addEventListener("DOMContentLoaded", function(){
				display(document.getElementById('displayType').value);
			});
			function changeFolder(folderName){
				var url = window.location.href;
				if (url.indexOf('?') > -1){
					var lastParam = url.substring(url.lastIndexOf('&') + 1);
					if(url.indexOf('pictName') > -1){
						var temp = url.split('&');
						for(var i=0;i<temp.length;i++){
							if(temp[i].indexOf('pictName') > -1){
							temp.splice(i, 1);
								i--;
							}
						}
						url = temp.join('&');
						lastParam = url.substring(url.lastIndexOf('&') + 1);
					}
					if(lastParam == 'task=createFolder')url = url.replace(lastParam,'task=browse&e_name=ACY_NAME_AREA');
					lastParam = lastParam.split('=');
					if(lastParam=='selected_folder')
					url = url.replace(lastParam, 'selected_folder='+folderName);
					else

					url += '&currentFolder='+folderName;
				}else{
					url += '?currentFolder='+folderName;
				}
				window.location.href = url;
			}

			function changeDisplay(event){
				event.preventDefault();
				if(document.getElementById('displayPict').style.display == ''){
					display('list');
				}else{
					display('icons');
				}
			}
			function display(type){
				if(type == 'list'){
					document.getElementById('displayPict').style.display = 'none';
					document.getElementById('displayLine').style.display = '';
					document.getElementById('btn_change_display').title = '<?php echo acymailing_translation('ACY_DISPLAY_ICON'); ?>';
					document.getElementById('iconTypeDisplay').className = 'acyicon-image_view';
					document.getElementById('displayType').value = 'list';
				}else{
					document.getElementById('displayPict').style.display = '';
					document.getElementById('displayLine').style.display = 'none';
					document.getElementById('btn_change_display').title = '<?php echo acymailing_translation('ACY_DISPLAY_NOICON'); ?>';
					document.getElementById('iconTypeDisplay').className = 'acyicon-list_view';
					document.getElementById('displayType').value = 'icons';
				}
			}
			function diplayDeleteBtn(id, action){
				if(action == 'display'){
					document.getElementById('acy_attachment_delete_' + id + '').style.display = '';
				}else{
					document.getElementById('acy_attachment_delete_' + id + '').style.display = 'none';
				}
			}
			function confirmDeleteFile(event, fileName){
				event.preventDefault();
				clickedDel = true;
				var divText = document.getElementById('confirmTxtAttach');
				divText.innerHTML = '<?php echo acymailing_translation('ACY_VALIDDELETEITEMS'); ?>' + '<br /><span class="acy_folder_name">(' + fileName + ')</span><br />';
				var divDelete = document.getElementById('confirmOkAttach');
				divDelete.onclick = function(event){
					event.preventDefault();
					deleteFile(fileName);
				};

				var divConfirm = document.getElementById('confirmBoxAttach');
				divConfirm.style.display = 'inline';
			}
			function deleteFile(fileName){
				var urlFile = window.location.href;
				if(urlFile.lastIndexOf('#') == urlFile.length - 1){
					urlFile = urlFile.substr(0, urlFile.length - 1);
				}
				var lastParam = urlFile.substring(urlFile.lastIndexOf('&') + 1);
				if(lastParam.indexOf('filename=') > -1){
					urlFile = urlFile.substring(0, urlFile.indexOf('filename=') - 1);
				}
				if(urlFile.indexOf('?') > -1){
					window.location.href = urlFile + '&task=<?php echo acymailing_getVar('cmd', 'task', ''); ?>&id=<?php echo acymailing_getVar('cmd', 'id', ''); ?>&filename=' + fileName;
				}else{
					window.location.href = urlFile + '?task=<?php echo acymailing_getVar('cmd', 'task', ''); ?>&id=<?php echo acymailing_getVar('cmd', 'id', ''); ?>&filename=' + fileName;
				}
			}
		</script>
		<div id="filesarea" style="width:100%;height:460px;overflow-x: hidden;text-align: center;">
			<?php
			if(file_exists($this->uploadPath)) $files = acymailing_getFiles($this->uploadPath);
			$imageExtensions = array('jpg', 'jpeg', 'png', 'gif', 'ico', 'bmp');

			if(in_array($this->map, array('thumb', 'readmore'))){
				$allowedExtensions = $imageExtensions;
			}else{
				$allowedExtensions = explode(',', $this->config->get('allowedfiles'));
				$allowedExtensions = array_merge($allowedExtensions, $imageExtensions);
			}

			$displayList = '<div id="displayLine" style="display: none; text-align: left;">';
			echo '<div id="displayPict">';
			if(!empty($files)){
				$k = 0;
				$displayList .= '<table class="acymailing_smalltable">';
				foreach($files as $file){
					if(strrpos($file, '.') === false) continue;

					$ext = strtolower(substr($file, strrpos($file, '.') + 1));
					if(!in_array($ext, $allowedExtensions)) continue;

					$filesFound = true;

					echo '<div style="float: left; text-align: center; position: relative;">';

					$linkStart = '<a href="#" style="text-decoration:none;" onclick="if(clickedDel == false){';
					$linkStart .= "parent.document.getElementById('".$this->map."').value = '".str_replace(DS, '/', $this->uploadFolder)."/$file';";
					if(in_array($this->map, array('thumb', 'readmore'))){
						$linkStart .= "parent.document.getElementById('".$this->map."preview').src = '".acymailing_rootURI().str_replace(DS, '/', $this->uploadFolder)."/$file'; ";
					}else{
						$linkStart .= "parent.document.getElementById('".$this->map."selection').innerHTML = '$file'; ";
						$linkStart .= "parent.document.getElementById('".$this->map."suppr').style.display = 'inline';";
					}
					$linkStart .= 'window.parent.acymailing.closeBox();}">';

					echo $linkStart;

					$structPict = '<div onmouseover="diplayDeleteBtn('.$k.', \'display\');" onmouseout="diplayDeleteBtn('.$k.', \'hide\');">';
					$structPict .= '<div style="width: 160px;height: 160px;margin: 14px;border: 1px solid rgb(233, 233, 233);border-radius:4px;overflow: hidden;" onmouseover="this.style.opacity = 0.5;" onmouseout="this.style.opacity = 1;" title="'.$file.'">';
					if(strlen($file) > 20){
						$structPict .= '<span title="'.str_replace('"', '', $file).'">'.substr(rtrim($file, $ext), 0, 17).'...'.$ext.'</span>';
					}else{
						$structPict .= $file;
					}

					if(in_array($ext, $imageExtensions)){
						$imgPath = ACYMAILING_LIVE.$this->uploadFolder.'/'.$file;
					}else{
						$imgPath = ACYMAILING_LIVE.ACYMAILING_MEDIA_FOLDER.'/images/file.png';
					}
					$structPict .= '<br /><img src="'.$imgPath.'" style="margin-top:5px;max-width:150px;"/>';
					$structPict .= '</div>';
					$structPict .= '<img class="acy_attachment_delete" id="acy_attachment_delete_'.$k.'" src="'.ACYMAILING_LIVE.ACYMAILING_MEDIA_FOLDER.DS.'images'.DS.'editor'.DS.'delete.png" onclick="confirmDeleteFile(event, \''.$file.'\')" style="display: none;"/>';
					$structPict .= '</div>';

					echo $structPict;
					echo '</a></div>';


					$displayList .= '<tr><td width="30" style="padding-left: 10px;">'.$linkStart.'<img src="'.$imgPath.'" style="max-width:24px;"/></a></td>';
					$displayList .= '<td>'.$linkStart.$file.'</a></td>';
					$displayList .= '<td><img class="acy_attachment_delete" src="'.ACYMAILING_LIVE.ACYMAILING_MEDIA_FOLDER.DS.'images'.DS.'editor'.DS.'delete.png" onclick="confirmDeleteFile(event, \''.$file.'\')"/></td></tr>';
					$k++;
				}
				$displayList .= '</table>';
			}
			echo '</div>';
			$displayList .= '</div>';
			echo $displayList;

			if(empty($filesFound)) acymailing_display(acymailing_translation('NO_FILE_FOUND'), 'warning');
			?>
			<div class="confirmBoxAttach" id="confirmBoxAttach" style="display: none;">
				<div id="acy_popup_content">
					<span class="confirmTxtAttach" id="confirmTxtAttach"></span><br/>
					<button class="acymailing_button" id="confirmCancelAttach" onclick="event.preventDefault(); clickedDel=false;  document.getElementById('confirmBoxAttach').style.display='none';" style="padding: 6px 15px 6px 10px;">
						<i class="acyicon-cancel" style="margin-right: 5px; font-size: 16px;top: 2px; position: relative;"></i><?php echo acymailing_translation('ACY_CANCEL'); ?>
					</button>
					<button class="acymailing_button acymailing_button_delete" id="confirmOkAttach" style="padding: 8px 15px 6px 10px;">
						<i class="acyicon-delete" style="margin-right: 5px; font-size: 12px;"></i><?php echo acymailing_translation('ACY_DELETE'); ?>
					</button>
				</div>
			</div>
		</div>

		<div id="uploadarea" style="text-align: center;box-shadow: 0px -4px 4px -4px rgba(0, 0, 0, 0.3);padding: 10px 0px 10px 0px;">
			<input type="file" style="width:auto;" name="uploadedFile"/><br/>
			<input type="hidden" id="displayType" name="displayType" value="<?php echo $this->displayType; ?>"/>
			<input type="hidden" name="currentFolder" value="<?php echo htmlspecialchars($this->uploadFolder, ENT_COMPAT, 'UTF-8'); ?>"/>
			<input type="hidden" name="id" value="<?php echo htmlspecialchars($this->map, ENT_COMPAT, 'UTF-8'); ?>"/>
			<?php acymailing_formOptions(); ?>
			<button class="acymailing_button_grey" type="button" onclick="document.adminForm.task.value='select';submit();"> <?php echo acymailing_translation('IMPORT'); ?> </button>
		</div>
	</form>
</div>
views/file/tmpl/index.html000060400000000054152455705230011574 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/file/tmpl/css.php000060400000001441152455705230011101 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink('file', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<textarea style="width:98%;height:350px;" rows="20" name="csscontent"><?php echo $this->content; ?></textarea>

		<input type="hidden" name="file" value="<?php echo $this->type.'_'.$this->fileName; ?>"/>
		<input type="hidden" name="var" value="<?php echo acymailing_getVar('cmd', 'var'); ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/stats/view.html.php000060400000074352152455705230011504 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class StatsViewStats extends acymailingView{

	var $searchFields = array('b.subject', 'b.alias', 'a.mailid');
	var $selectFields = array('b.subject', 'b.alias', 'b.type', 'a.*', 'a.bouncedetails');
	var $searchHistory = array('b.subject', 'c.email', 'c.name');
	var $historyFields = array('a.*', 'b.subject', 'c.email', 'c.name');
	var $detailSearchFields = array('b.subject', 'b.alias', 'a.mailid', 'c.name', 'c.email', 'a.subid');
	var $detailSelectFields = array('b.subject', 'b.alias', 'c.name', 'c.email', 'b.type', 'a.ip', 'a.*');


	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function unsubchart(){
		$mailid = acymailing_getVar('int', 'mailid');
		if(empty($mailid)) return;

		acymailing_addStyle(false, ACYMAILING_CSS.'acyprint.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acyprint.css'), 'text/css', 'print');

		$entries = acymailing_loadObjectList('SELECT * FROM #__acymailing_history WHERE mailid = '.intval($mailid).' AND action="unsubscribed" LIMIT 10000');

		if(empty($entries)){
			acymailing_display("No data recorded for that Newsletter", 'warning');
			return;
		}

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->link(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=unsubchart&export=1&mailid='.acymailing_getVar('int', 'mailid'), true), acymailing_translation('ACY_EXPORT'), 'export');
		$acyToolbar->directPrint();
		$acyToolbar->setTitle(acymailing_translation('ACTION_UNSUBSCRIBED'));
		$acyToolbar->display();

		$unsubreasons = array();
		$unsubreasons['NO_REASON'] = 0;
		foreach($entries as $oneEntry){
			if(empty($oneEntry->data)){
				$unsubreasons['NO_REASON']++;
				continue;
			}

			$allReasons = explode("\n", $oneEntry->data);
			$added = false;
			foreach($allReasons as $oneReason){
				list($reason, $value) = explode('::', $oneReason);
				if(empty($value) || $reason != 'REASON') continue;
				$unsubreasons[$value] = @$unsubreasons[$value] + 1;
				$added = true;
			}
			if(!$added) $unsubreasons['NO_REASON']++;
		}

		$finalReasons = array();
		foreach($unsubreasons as $oneReason => $total){
			$name = $oneReason;
			if(preg_match('#^[A-Z_]*$#', $name)) $name = acymailing_translation($name);
			$finalReasons[$name] = $total;
		}

		arsort($finalReasons);

		acymailing_addScript(false, "https://www.google.com/jsapi");

		$this->unsubreasons = $finalReasons;

		if(acymailing_getVar('cmd', 'export')){
			$exportHelper = acymailing_get('helper.export');
			$exportHelper->exportOneData($finalReasons, 'unsub_'.acymailing_getVar('int', 'mailid'));
		}
	}

	function forward(){
		$this->unsubscribed();
	}

	function unsubscribed(){

		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName().$this->getLayout();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.date', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$selectedMail = acymailing_getUserVar($paramBase."filter_mail", 'filter_mail', 0, 'int');
		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getVar('int', 'start', acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int'));

		$filters = array();
		$filters[] = "a.action = ".acymailing_escapeDB($this->getLayout());

		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $this->searchHistory)." LIKE $searchVal";
		}

		if(!empty($selectedMail)){
			$filters[] = 'a.mailid = '.$selectedMail;
		}

		$query = 'SELECT '.implode(' , ', $this->historyFields).' FROM '.acymailing_table('history').' as a';
		$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
		$query .= ' JOIN '.acymailing_table('subscriber').' as c on a.subid = c.subid';
		$query .= ' WHERE ('.implode(') AND (', $filters).')';
		if(!empty($pageInfo->filter->order->value)) $query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;

		if(empty($pageInfo->limit->value)) $pageInfo->limit->value = 100;

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		$queryCount = 'SELECT COUNT(*) FROM #__acymailing_history as a';
		if(!empty($pageInfo->search)){
			$queryCount .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
			$queryCount .= ' JOIN '.acymailing_table('subscriber').' as c on a.subid = c.subid';
		}
		$queryCount .= ' WHERE ('.implode(') AND (', $filters).')';
		
		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$query = 'SELECT DISTINCT a.mailid FROM `#__acymailing_history` as a WHERE a.action = '.acymailing_escapeDB($this->getLayout()).' AND a.mailid > 0';
		$allMailids = acymailing_loadResultArray($query);

		$emails = array();
		if(!empty($allMailids)){
			if(!empty($selectedMail) && !in_array($selectedMail, $allMailids)) array_unshift($allMailids, $selectedMail);
			$query = 'SELECT subject, mailid FROM `#__acymailing_mail` WHERE mailid IN ('.implode(',', $allMailids).') ORDER BY mailid DESC';
			$emails = acymailing_loadObjectList($query);
		}


		$newsletters = array();
		$newsletters[] = acymailing_selectOption('0', acymailing_translation('ALL_EMAILS'));
		foreach($emails as $oneMail){
			if(!empty($oneMail->subject)) $oneMail->subject = acyEmoji::Decode($oneMail->subject);
			$newsletters[] = acymailing_selectOption($oneMail->mailid, $oneMail->subject);
		}
		$filterMail = acymailing_select($newsletters, 'filter_mail', 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int)$selectedMail);

		if(acymailing_isAdmin() && acymailing_isNoTemplate()){
			$acyToolbar = acymailing_get('helper.toolbar');
			if(!empty($rows)) $acyToolbar->custom('export'.ucfirst(acymailing_getVar('cmd', 'task')), acymailing_translation('ACY_EXPORT'), 'export', false, '');
			$acyToolbar->custom('', acymailing_translation('ACY_CANCEL'), 'cancel', false, 'location.href=\''.acymailing_completeLink('diagram&task=mailing&mailid='.acymailing_getVar('int', 'filter_mail'), true).'\';');
			$acyToolbar->setTitle(acymailing_translation($this->getLayout() == 'forward' ? 'FORWARDED' : 'UNSUBSCRIBECAPTION'));
			$acyToolbar->topfixed = false;
			$acyToolbar->display();
		}elseif(acymailing_isNoTemplate()){
			$filterMail = '<input type="hidden" value="'.acymailing_getVar('int', 'mailid').'" name="mailid" />';
			$filterMail .= '<input type="hidden" value="'.acymailing_getVar('int', 'filter_mail').'" name="filter_mail" />';
		}

		$this->filterMail = $filterMail;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;

		$this->setLayout('unsubscribed');
	}

	function detaillisting(){

		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();
		$config = acymailing_config();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName().$this->getLayout();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.senddate', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$selectedMail = acymailing_getUserVar($paramBase."filter_mail", 'filter_mail', 0, 'int');
		$selectedStatus = acymailing_getUserVar($paramBase."filter_status", 'filter_status', 0, 'string');
		$selectedBounce = acymailing_getUserVar($paramBase."filter_bounce", 'filter_bounce', 0, 'string');

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $this->detailSearchFields)." LIKE $searchVal";
		}

		if(!empty($selectedMail)) $filters[] = 'a.mailid = '.$selectedMail;
		if(!empty($selectedStatus)){
			if($selectedStatus == 'bounce'){
				$filters[] = 'a.bounce > 0';
			}elseif($selectedStatus == 'open') $filters[] = 'a.open > 0';
			elseif($selectedStatus == 'notopen') $filters[] = 'a.open < 1';
			elseif($selectedStatus == 'failed') $filters[] = 'a.fail > 0';
		}
		if(!empty($selectedStatus) && $selectedStatus == 'bounce' && !empty($selectedBounce)) $filters[] = 'a.bouncerule='.acymailing_escapeDB($selectedBounce);

		$extrajoin = '';

		$query = 'SELECT '.implode(' , ', $this->detailSelectFields);
		$query .= ' FROM '.acymailing_table('userstats').' as a';
		$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
		$query .= ' JOIN '.acymailing_table('subscriber').' as c on a.subid = c.subid';
		$query .= $extrajoin;
		if(!empty($filters)) $query .= ' WHERE ('.implode(') AND (', $filters).')';
		if(!empty($pageInfo->filter->order->value)) $query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;

		if(empty($pageInfo->limit->value)) $pageInfo->limit->value = 100;

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		if($rows === null){
			acymailing_display(substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			if(file_exists(ACYMAILING_BACK.'install.joomla.php')){
				include_once(ACYMAILING_BACK.'install.joomla.php');
				$installClass = new acymailingInstall();
				$installClass->fromVersion = '3.7.0';
				$installClass->update = true;
				$installClass->updateSQL();
			}
		}

		$queryCount = 'SELECT COUNT(a.subid) FROM #__acymailing_userstats as a';
		$queryCount .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
		if(!empty($pageInfo->search)){
			$queryCount .= ' JOIN '.acymailing_table('subscriber').' as c on a.subid = c.subid';
		}
		$queryCount .= $extrajoin;
		if(!empty($filters)) $queryCount .= ' WHERE ('.implode(') AND (', $filters).')';
		
		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$toggleClass = acymailing_get('helper.toggle');

		$maildetailstatstype = acymailing_get('type.detailstatsmail');
		$deliverstatus = acymailing_get('type.deliverstatus');
		$filtersType = new stdClass();
		if(!acymailing_isAdmin()){
			$filtersType->mail = '<input type="hidden" value="'.$selectedMail.'" name="filter_mail" />';
			$mailClass = acymailing_get('class.mail');
			$this->mailing = $mailClass->get($selectedMail);
		}else{
			$filtersType->mail = $maildetailstatstype->display('filter_mail', $selectedMail);
		}
		$filtersType->status = $deliverstatus->display('filter_status', $selectedStatus);

		$detailstatsbouncetype = acymailing_get('type.detailstatsbounce');
		if(!empty($selectedStatus) && $selectedStatus == 'bounce'){
			$filtersType->bounce = $detailstatsbouncetype->display('filter_bounce', $selectedBounce);
		}else $filtersType->bounce = '';

		if(acymailing_isAdmin()){
			$acyToolbar = acymailing_get('helper.toolbar');
			if(acymailing_isNoTemplate()){
				if(acymailing_isAllowed($config->get('acl_subscriber_export', 'all'))) $acyToolbar->custom('export', acymailing_translation('ACY_EXPORT'), 'export', false);
				$acyToolbar->custom('', acymailing_translation('ACY_CANCEL'), 'cancel', false, 'location.href=\''.acymailing_completeLink('diagram&task=mailing&mailid='.acymailing_getVar('int', 'filter_mail'), true).'\';');
				$acyToolbar->setTitle(acymailing_translation('DETAILED_STATISTICS'));
				$acyToolbar->topfixed = false;
			}else{
				if(acymailing_isAllowed($config->get('acl_subscriber_export', 'all'))){
					$acyToolbar->custom('export', acymailing_translation('ACY_EXPORT'), 'export', false);
				}
				$acyToolbar->link(acymailing_completeLink('stats'), acymailing_translation('GLOBAL_STATISTICS'), 'cancel');
				$acyToolbar->divider();
				$acyToolbar->help('statistics');
				$acyToolbar->setTitle(acymailing_translation('DETAILED_STATISTICS'), 'stats&task=detaillisting');
			}
			$acyToolbar->display();
		}
		
		if(acymailing_isNoTemplate()){
			$filtersType->mail = '<input type="hidden" value="'.acymailing_getVar('int', 'mailid').'" name="mailid" />';
			$filtersType->mail .= '<input type="hidden" value="'.acymailing_getVar('int', 'filter_mail').'" name="filter_mail" />';
		}

		$this->filters = $filtersType;
		$this->toggleClass = $toggleClass;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
	}

	function listing(){
		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();
		$config = acymailing_config();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName().$this->getLayout();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.senddate', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$selectedTags = acymailing_getUserVar($paramBase."filter_tags", 'filter_tags', array(), 'array');

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $this->searchFields)." LIKE $searchVal";
		}

		$listClass = acymailing_get('class.list');
		if(acymailing_isAdmin()) {
			$lists = $listClass->getLists();
		}else {
			$lists = $listClass->getFrontendLists();
		}
		$msgType = array();
		$msgType[] = acymailing_selectOption('0', acymailing_translation('ALL_EMAILS'));
		$msgType[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('NEWSLETTER'));
		if(acymailing_isAdmin()) $msgType[] = acymailing_selectOption('news', acymailing_translation('ALL_LISTS'));
		foreach($lists as $oneList){
			$msgType[] = acymailing_selectOption('list_'.$oneList->listid, $oneList->name);
		}
		$msgType[] = acymailing_selectOption('</OPTGROUP>');

		if(acymailing_isAdmin()) {
			$msgType[] = acymailing_selectOption('notification', acymailing_translation('NOTIFICATIONS'));
			if (acymailing_level(1)) {
				$msgType[] = acymailing_selectOption('autonews', acymailing_translation('AUTONEW'));
				$msgType[] = acymailing_selectOption('joomlanotification', acymailing_translation('JOOMLA_NOTIFICATIONS'));
			}
			if (acymailing_level(3)) {
				$listCampaign = acymailing_get('class.list');
				$listCampaign->type = 'campaign';
				$campaigns = $listCampaign->getLists();
				$msgType[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('FOLLOWUP'));
				$msgType[] = acymailing_selectOption('followup', acymailing_translation('ACY_ALL_CAMPAIGNS'));
				foreach ($campaigns as $oneCamp) {
					$msgType[] = acymailing_selectOption('camp_' . $oneCamp->listid, $oneCamp->name);
				}
				$msgType[] = acymailing_selectOption('</OPTGROUP>');
			}
			$msgType[] = acymailing_selectOption('welcome', acymailing_translation('MSG_WELCOME'));
			$msgType[] = acymailing_selectOption('unsub', acymailing_translation('MSG_UNSUB'));
			if (acymailing_level(3)) {
				$msgType[] = acymailing_selectOption('action', acymailing_translation('ACY_DISTRIBUTION'));
			}
		}

		$selectedMsgType = acymailing_getUserVar($paramBase."filter_msg", 'filter_msg', 0, 'string');
		$msgTypeChoice = acymailing_select($msgType, "filter_msg", 'class="inputbox" style="max-width: 200px;" onchange="document.adminForm.limitstart.value=0;document.adminForm.submit( );"', 'value', 'text', $selectedMsgType);
		$extraJoin = '';

		if(!empty($selectedMsgType)){
			$subfilter = substr($selectedMsgType, 0, 5);
			if($subfilter == 'camp_' || $subfilter == 'list_'){
				$filters[] = " b.type = '".($subfilter == 'camp_' ? 'followup' : 'news')."'";
				$filters[] = " lm.listid = ".substr($selectedMsgType, 5);
				$extraJoin .= " JOIN #__acymailing_listmail AS lm ON a.mailid = lm.mailid";
			}else{
				$filters[] = " b.type = '".$selectedMsgType."'";
			}
		}elseif (!acymailing_isAdmin()) {
			if (!empty($lists)) {
				$frontListsIds = array();
				foreach ($lists as $oneList) {
					$frontListsIds[] = $oneList->listid;
				}
				$extraJoin .= " JOIN #__acymailing_listmail AS lm ON a.mailid = lm.mailid";
				$filters[] = 'lm.listid IN (' . implode(',', $frontListsIds) . ')';
			}
		}

		if(!empty($selectedTags) && count($selectedTags) > 1){
			$tagCondition = array();
			foreach($selectedTags as $oneTag){
				if(strpos($oneTag, '|') === false) continue;
				$tag = explode('|', $oneTag);
				$tagCondition[] = intval($tag[0]);
			}
			$extraJoin .= ' JOIN #__acymailing_tagmail AS tm ON b.mailid = tm.mailid AND tagid IN ('.implode(',', $tagCondition).') ';
		}

		$query = 'SELECT '.implode(' , ', $this->selectFields);
		$query .= ', CASE WHEN (a.senthtml+a.senttext) <= a.bounceunique THEN 0 ELSE (a.openunique/(a.senthtml+a.senttext-a.bounceunique)) END AS openprct';
		$query .= ', CASE WHEN (a.senthtml+a.senttext) <= a.bounceunique THEN 0 ELSE (a.clickunique/(a.senthtml+a.senttext-a.bounceunique)) END AS clickprct';
		$query .= ', CASE WHEN a.openunique = 0 THEN 0 ELSE (a.clickunique/a.openunique) END AS efficiencyprct';
		$query .= ', CASE WHEN (a.senthtml+a.senttext) <= a.bounceunique THEN 0 ELSE (a.unsub/(a.senthtml+a.senttext-a.bounceunique)) END AS unsubprct';
		$query .= ', (a.senthtml+a.senttext) as totalsent';
		$query .= ', CASE WHEN (a.senthtml+a.senttext) = 0 THEN 0 ELSE (a.bounceunique/(a.senthtml+a.senttext)) END AS bounceprct';
		$query .= ' FROM '.acymailing_table('stats').' as a';
		$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
		if(!empty($extraJoin)) $query .= $extraJoin;
		if(!empty($filters)) $query .= ' WHERE ('.implode(') AND (', $filters).')';
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' GROUP BY b.mailid ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		if($rows === null){
			acymailing_display(substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			if(file_exists(ACYMAILING_BACK.'install.joomla.php')){
				include_once(ACYMAILING_BACK.'install.joomla.php');
				$installClass = new acymailingInstall();
				$installClass->fromVersion = '3.6.0';
				$installClass->update = true;
				$installClass->updateSQL();
			}
		}

		$queryCount = 'SELECT COUNT(a.mailid) FROM '.acymailing_table('stats').' as a';
		if(!empty($pageInfo->search) || !empty($filters) || !empty($extraJoin)){
			$queryCount .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
			if(!empty($extraJoin)) $queryCount .= $extraJoin;
		}
		if(!empty($filters)) $queryCount .= ' WHERE ('.implode(') AND (', $filters).')';

		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		if(acymailing_level(3)) {
			$tagfieldtype = acymailing_get('type.tagfield');
			$tagfieldtype->onclick = 'document.adminForm.submit();';
			$tagChoice = $tagfieldtype->display('filter_tags', 'listing', $selectedTags);
			$this->filterTag = $tagChoice;
		}

		$menuparams = new acyParameter();

		if(acymailing_isAdmin()) {
			$acyToolbar = acymailing_get('helper.toolbar');

			$acyToolbar->divider();
			$acyToolbar->custom('compare', trim(acymailing_translation('ACY_COMPARE'), '.') . (empty($_SESSION['acycomparison']) ? '' : ' (' . count($_SESSION['acycomparison']) . ')'), 'detailed-stat', false);
			$acyToolbar->custom('addcompare', acymailing_translation('ACY_ADD'), 'addcompare', true, '', acymailing_translation('ACY_ADD_COMPARE'));
			$acyToolbar->custom('resetcompare', acymailing_translation('JOOMEXT_RESET'), 'resetcompare', false);
			$acyToolbar->divider();
			$acyToolbar->custom('exportglobal', acymailing_translation('ACY_EXPORT'), 'export', false);
			if (acymailing_isAllowed($config->get('acl_statistics_delete', 'all'))) $acyToolbar->delete();
			$acyToolbar->divider();
			$acyToolbar->help('statistics');
			$acyToolbar->setTitle(acymailing_translation('GLOBAL_STATISTICS'), 'stats');
			$acyToolbar->display();
		}else {
			$menuparams = new acyParameter(array(
				'number' => 1,
				'opens' => 1,
				'clicks' => 1,
				'efficiency' => 0,
				'unsubscribe' => 1,
				'forward' => 0,
				'sent' => 1,
				'bounces' => 0,
				'failed' => 0,
				'id' => 1
			));

			$menu = acymailing_getMenu();

			if(is_object($menu)){
				$menuparams = new acyParameter($menu->params);
			}
		}

		$this->menuparams = $menuparams;
		$this->config = $config;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
		$this->filterMsg = $msgTypeChoice;
	}

	function mailinglist($export = 0){
		$mailid = acymailing_getVar('int', 'mailid');
		if(empty($mailid)) return;

		acymailing_addStyle(false, ACYMAILING_CSS.'acyprint.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acyprint.css'), 'text/css', 'print');

		$mailClass = acymailing_get('class.mail');
		$mailing = $mailClass->get($mailid);

		$mydata = array();
		$isData = true;

		if($mailing->type == 'followup'){
			$query = 'SELECT l.listid, l.name, l.color FROM #__acymailing_list l';
			$query .= ' JOIN #__acymailing_listcampaign lc ON l.listid = lc.listid';
			$query .= ' JOIN #__acymailing_listmail lm ON lc.campaignid = lm.listid';
			$query .= ' WHERE lm.mailid = '.intval($mailid).' ORDER BY l.ordering';
			$sqlRes = acymailing_loadObjectList($query);
		}else{
			$query = 'SELECT lm.listid, l.name, l.color FROM #__acymailing_list l';
			$query .= ' JOIN #__acymailing_listmail lm ON l.listid=lm.listid';
			$query .= ' WHERE lm.mailid='.intval($mailid).' ORDER BY l.ordering';
			$sqlRes = acymailing_loadObjectList($query);
		}

		if(empty($sqlRes)){
			$query = 'SELECT listid, name, color FROM #__acymailing_list';
			$query .= ' WHERE welmailid='.intval($mailid).' OR unsubmailid='.intval($mailid).' GROUP BY listid';
			$sqlRes = acymailing_loadObjectList($query);
			if(empty($sqlRes)){
				acymailing_display("This newsletter is not assigned to any list", 'warning');
				$isData = false;
				return;
			}
		}

		$arrayColors = array();
		$arrayList = array();
		foreach($sqlRes as $list){
			$mydata[$list->listid] = array();
			$mydata[$list->listid]['listid'] = $list->listid;
			$mydata[$list->listid]['listname'] = $list->name;
			$mydata[$list->listid]['nbMailSent'] = 0;
			$mydata[$list->listid]['nbHtml'] = 0;
			$mydata[$list->listid]['nbOpen'] = 0;
			$mydata[$list->listid]['nbOpenRatio'] = 0;
			$mydata[$list->listid]['nbClic'] = 0;
			$mydata[$list->listid]['nbClicRatio'] = 0;
			$mydata[$list->listid]['nbForward'] = 0;
			$mydata[$list->listid]['nbBounce'] = 0;
			$mydata[$list->listid]['nbBounceRatio'] = 0;
			$mydata[$list->listid]['nbUnsub'] = 0;
			$mydata[$list->listid]['nbUnsubRatio'] = 0;

			$mydata[$list->listid]['color'] = (!empty($list->color) ? $list->color : '#162955');
			array_push($arrayColors, (!empty($list->color) ? $list->color : '#162955'));
			array_push($arrayList, $list->listid);
		}
		$listColors = "'".implode("', '", $arrayColors)."'";
		$listListes = implode(',', $arrayList);

		$query = 'SELECT ls.listid, COUNT(*) as nbSent, SUM(IF(html=1, 1, 0)) as nbHtml, SUM(IF(open<>0, 1, 0)) as nbOpen, SUM(IF(bounce<>0, 1, 0)) as nbBounce ';
		$query .= ' FROM #__acymailing_userstats us JOIN #__acymailing_listsub ls ON us.subid = ls.subid';
		$query .= ' WHERE ls.listid IN ('.$listListes.') AND us.mailid='.intval($mailid).' GROUP BY ls.listid';
		$sqlRes = acymailing_loadObjectList($query);
		$totalSent = 0;
		if(!empty($sqlRes)){
			foreach($sqlRes as $lineRes){
				$mydata[$lineRes->listid]['nbMailSent'] = $lineRes->nbSent;
				$mydata[$lineRes->listid]['nbHtml'] = $lineRes->nbHtml;
				$mydata[$lineRes->listid]['nbOpen'] = $lineRes->nbOpen;
				$mydata[$lineRes->listid]['nbOpenRatio'] = number_format($lineRes->nbOpen / $mydata[$lineRes->listid]['nbHtml'] * 100, 1);
				$mydata[$lineRes->listid]['nbBounce'] = $lineRes->nbBounce;
				$mydata[$lineRes->listid]['nbBounceRatio'] = number_format($lineRes->nbBounce / $mydata[$lineRes->listid]['nbMailSent'] * 100, 1);
				$totalSent += $lineRes->nbSent;
			}
		}else{
			acymailing_display("No statistics recorded", 'warning');
			$isData = false;
			return;
		}

		$query = 'SELECT ls.listid, COUNT(DISTINCT(uc.subid)) AS nbClic FROM #__acymailing_urlclick as uc JOIN #__acymailing_listsub as ls ON uc.subid=ls.subid';
		$query .= ' WHERE ls.listid IN ('.$listListes.') AND uc.mailid='.intval($mailid).' GROUP BY ls.listid';
		$sqlRes = acymailing_loadObjectList($query);
		if(!empty($sqlRes)){
			foreach($sqlRes as $lineRes){
				$mydata[$lineRes->listid]['nbClic'] = $lineRes->nbClic;
				$mydata[$lineRes->listid]['nbClicRatio'] = number_format($lineRes->nbClic / $mydata[$lineRes->listid]['nbHtml'] * 100, 1);
			}
		}

		$query = 'SELECT ls.listid, SUM(IF(h.action=\'forward\', 1, 0)) as nbForward, SUM(IF(h.action=\'unsubscribed\', 1, 0)) as nbUnsub';
		$query .= ' FROM #__acymailing_history as h JOIN #__acymailing_listsub ls ON h.subid=ls.subid';
		$query .= ' WHERE ls.listid IN ('.$listListes.') AND h.mailid='.intval($mailid).' GROUP BY ls.listid';
		$sqlRes = acymailing_loadObjectList($query);
		if(!empty($sqlRes)){
			foreach($sqlRes as $lineRes){
				$mydata[$lineRes->listid]['nbForward'] = $lineRes->nbForward;
				$mydata[$lineRes->listid]['nbUnsub'] = $lineRes->nbUnsub;
				$mydata[$lineRes->listid]['nbUnsubRatio'] = number_format($lineRes->nbUnsub / $mydata[$lineRes->listid]['nbMailSent'] * 100, 1);
			}
		}

		if(acymailing_isAdmin() && acymailing_isNoTemplate()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('', acymailing_translation('ACY_EXPORT'), 'export', false, 'location.href=\''.acymailing_completeLink('stats&task=mailinglist&export=1&mailid='.acymailing_getVar('int', 'mailid'), true).'\';');
			$acyToolbar->directPrint();
			$acyToolbar->setTitle($mailing->subject);
			$acyToolbar->topfixed = false;
			$acyToolbar->display();
		}
		$this->mydata = $mydata;
		$this->mailing = $mailing;
		$this->listColors = $listColors;
		$this->isData = $isData;
		$this->totalSent = $totalSent;

		if(acymailing_getVar('cmd', 'export')){
			$exportHelper = acymailing_get('helper.export');
			$config = acymailing_config();
			$encodingClass = acymailing_get('helper.encoding');

			$exportHelper->addHeaders('mailingList_'.acymailing_getVar('int', 'mailid'));

			$eol = "\r\n";
			$before = '"';
			$separator = '"'.str_replace(array('semicolon', 'comma'), array(';', ','), $config->get('export_separator', ';')).'"';
			$exportFormat = $config->get('export_format', 'UTF-8');
			$after = '"';

			$titles = array(acymailing_translation('LIST'), acymailing_translation('LIST_NAME'), acymailing_translation('ACY_SENT_EMAILS'), acymailing_translation('SENT_HTML'), acymailing_translation('OPEN'), acymailing_translation('OPEN').' (%)', acymailing_translation('CLICKED_LINK'), acymailing_translation('CLICKED_LINK').' (%)', acymailing_translation('FORWARDED'), acymailing_translation('BOUNCES'), acymailing_translation('BOUNCES').' (%)', acymailing_translation('UNSUBSCRIBED'), acymailing_translation('UNSUBSCRIBED').' (%)', acymailing_translation('COLOUR'));
			$titleLine = $before.implode($separator, $titles).$after.$eol;
			echo $titleLine;

			foreach($mydata as $listid => $listDetails){
				$line = '';
				foreach($listDetails as $name => $value){
					$line .= $value.$separator;
				}
				$line = substr($line, 0, strlen($line) - strlen($separator));
				$line = $before.$encodingClass->change($line, 'UTF-8', $exportFormat).$after.$eol;
				echo $line;
			}
			exit;
		}
	}

	function compare(){
		if(empty($_SESSION['acycomparison'])){
			acymailing_enqueueMessage(acymailing_translation('ACY_MIN_COMPARE'), 'info');
			acymailing_redirect(acymailing_completeLink('stats', false, true));
			return;
		}

		acymailing_arrayToInteger($_SESSION['acycomparison']);

		$rows = acymailing_loadObjectList('SELECT stats.*, mail.subject, mail.alias 
							FROM '.acymailing_table('stats').' AS stats 
							JOIN '.acymailing_table('mail').' AS mail 
								ON stats.mailid = mail.mailid 
							WHERE stats.mailid IN ('.implode(',', $_SESSION['acycomparison']).')');

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->custom('exportglobal', acymailing_translation('ACY_EXPORT'), 'export', false);
		$acyToolbar->custom('resetcompare', acymailing_translation('JOOMEXT_RESET'), 'resetcompare', false);
		$acyToolbar->cancel();
		$acyToolbar->divider();
		$acyToolbar->help('compare');
		$acyToolbar->setTitle(acymailing_translation('ACY_COMPARE_PAGE'), 'stats&task=compare');
		$acyToolbar->display();

		$this->rows = $rows;
	}
}
views/stats/index.html000060400000000054152455705230011037 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/stats/tmpl/unsubchart.php000060400000003172152455705230012711 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php if(empty($this->unsubreasons)) return; ?>
<script language="JavaScript" type="text/javascript">
	function drawChart(){
		var dataTable = new google.visualization.DataTable();
		dataTable.addColumn('string');
		dataTable.addColumn('number');

		<?php
		$i = 0;
		$numberReasons = count($this->unsubreasons);
		foreach($this->unsubreasons as $oneRule => $total ){
				if($total < 2 && $numberReasons > 10) continue;
			?>
		dataTable.addRows(1);
		dataTable.setValue(<?php echo $i ?>, 0, '<?php echo addslashes($oneRule); ?>');
		dataTable.setValue(<?php echo $i ?>, 1, <?php echo intval($total); ?>);
		<?php 	$i++;
		} ?>

		var vis = new google.visualization.ColumnChart(document.getElementById('unsubchart'));
		var options = {
			width: '100%', height: 400, is3D: true, legendTextStyle: {color: '#333333'}, legend: 'none'
		};
		vis.draw(dataTable, options);
	}
	google.load("visualization", "1", {packages: ["corechart"]});
	google.setOnLoadCallback(drawChart);
</script>
<div id="acy_content">
	<div id="iframedoc"></div>
	<div id="unsubchart"></div>
	<table id="unsublist" class="adminlist table table-striped">
		<?php

		arsort($this->unsubreasons);
		foreach($this->unsubreasons as $oneRule => $total){
			if(preg_match('#^[A-Z_]*$#', $oneRule)) $oneRule = acymailing_translation($oneRule);
			echo '<tr><td>'.$total.'</td><td>'.$oneRule.'</td></tr>';
		}
		?>
	</table>
</div>
views/stats/tmpl/detaillisting.php000060400000014512152455705230013367 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<?php if(!acymailing_isAdmin()) include(dirname(__FILE__).DS.'menu.detaillisting.php') ?>
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats', acymailing_isNoTemplate()); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<tr>
				<td>
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td class="tablegroup_options">
					<?php echo $this->filters->status; ?>
					<?php echo $this->filters->mail; ?>
					<?php echo $this->filters->bounce; ?>
				</td>
			</tr>
		</table>

		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titledate">
					<?php echo acymailing_gridSort(acymailing_translation('SEND_DATE'), 'a.senddate', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
				</th>
				<?php $selectedMail = acymailing_getVar('int', 'filter_mail');
				if(empty($selectedMail)){ ?>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_SUBJECT'), 'b.subject', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
					</th>
				<?php } ?>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_USER'), 'c.email', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_gridSort(acymailing_translation('RECEIVED_VERSION'), 'a.html', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_gridSort(acymailing_translation('OPEN'), 'a.open', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
				</th>
				<th class="title titledate">
					<?php echo acymailing_gridSort(acymailing_translation('OPEN_DATE'), 'a.opendate', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
				</th>
				<?php if(acymailing_level(3)){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('BOUNCES'), 'a.bounce', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
					</th>
				<?php } ?>
				<th class="title titletoggle">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_SENT'), 'a.sent', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, acymailing_getVar('cmd', 'task')); ?>
				</th>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="10">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;
			for($i = 0, $a = count($this->rows); $i < $a; $i++){
				$row =& $this->rows[$i];
				$row->subject = acyEmoji::Decode($row->subject);
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo $this->pagination->getRowOffset($i); ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo acymailing_getDate($row->senddate); ?>
					</td>
					<?php if(empty($selectedMail)){ ?>
						<td>
							<?php
							$text = '<b>'.acymailing_translation('ACY_ID').' : </b>'.$row->mailid;
							$text .= '<br /><b>'.acymailing_translation('JOOMEXT_ALIAS').' : </b>'.$row->alias;

							if($row->type == 'followup'){
								$ctrl = 'followup';
							}else{
								$ctrl = 'newsletter';
							}
							echo acymailing_tooltip($text, $row->subject, '', $row->subject, acymailing_completeLink($ctrl.'&task=preview&mailid='.$row->mailid));
							?>
						</td>
					<?php } ?>
					<td>
						<?php
						$text = '<b>'.acymailing_translation('ACY_NAME').' : </b>'.$row->name;
						$text .= '<br /><b>'.acymailing_translation('ACY_ID').' : </b>'.$row->subid;
						$link = acymailing_isNoTemplate() ? '' : acymailing_completeLink('subscriber&task=edit&subid='.$row->subid);
						echo acymailing_tooltip($text, $row->email, '', $row->name.' ( '.$row->email.' )', $link);
						?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->html ? acymailing_translation('HTML') : acymailing_translation('JOOMEXT_TEXT'); ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->open; ?>
					</td>
					<td align="center" style="text-align:center">
						<?php if(!empty($row->opendate)) echo acymailing_getDate($row->opendate); ?>
					</td>
					<?php if(acymailing_level(3)){ ?>
						<td align="center" style="text-align:center">
							<?php
							if($row->bounce == 0){
								echo $row->bounce;
							}else{
								if(empty($row->bouncerule)){
									$text = acymailing_translation('NO_RULE_SAVED');
								}else{
									$found = preg_match('#^([A-Z0-9_]*) \[#Uis', $row->bouncerule, $match);
									$text = $found ? str_replace($match[1], acymailing_translation($match[1]), $row->bouncerule) : $row->bouncerule;
								}
								echo acymailing_tooltip($text, acymailing_translation('ACY_RULE'), '', $row->bounce);
							} ?>
						</td>
					<?php } ?>
					<td align="center" style="text-align:center" title="<?php echo acymailing_translation('ACY_SENT').': '.$row->sent.' - '.acymailing_translation('FAILED').': '.$row->fail; ?>">
						<?php echo $this->toggleClass->display('visible', empty($row->fail) ? true : false); ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>

		<input type="hidden" name="defaulttask" value="detaillisting"/>

		<?php acymailing_formOptions($this->pageInfo->filter->order);
		if(acymailing_getVar('int', 'listid')){ ?>
			<input type="hidden" name="listid" value="<?php echo acymailing_getVar('int', 'listid'); ?>"/>
		<?php } ?>
	</form>
</div>
views/stats/tmpl/index.html000060400000000054152455705230012013 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/stats/tmpl/compare.php000060400000015046152455705230012164 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
    <div id="iframedoc"></div>
    <form action="<?php echo acymailing_completeLink('stats'); ?>" method="post" name="adminForm" id="adminForm" style="text-align: center;">
        <div class="onelineblockoptions">
            <table class="acymailing_table">

            <?php
            $properties = array('JOOMEXT_SUBJECT','SEND_DATE','ACY_SENT','OPEN','CLICKED_LINK','ACY_CLICK_EFFICIENCY','UNSUBSCRIBE','FORWARDED','BOUNCES','FAILED');

            foreach($properties as $oneProp){
                echo '<tr><td>'.acymailing_translation($oneProp).'</td>';
                for($i = 0, $a = count($this->rows); $i < $a; $i++) {
                    $row =& $this->rows[$i];
                    $cleanSent = $row->senthtml + $row->senttext - $row->bounceunique;

                    if($oneProp != 'JOOMEXT_SUBJECT') echo '<td>';

                    if($oneProp == 'JOOMEXT_SUBJECT'){
                        echo '<td style="width: '.(100/(count($this->rows)+1)).'%;">';
                        $row->subject = acyEmoji::Decode($row->subject); ?>
                        <input type="hidden" name="cid[]" value="<?php echo $row->mailid; ?>">
                        <?php echo acymailing_popup(acymailing_completeLink('diagram&task=mailing&mailid='.$row->mailid, true), strlen($row->subject) > 30 ? acymailing_tooltip($row->subject, '', '', substr($row->subject, 0, 30).'...') : $row->subject, '', 800, 590); ?>
                    <?php }elseif($oneProp == 'SEND_DATE'){ ?>
                        <span style="font-size: 10px;"><?php echo acymailing_getDate($row->senddate); ?></span>
                    <?php }elseif($oneProp == 'ACY_SENT'){ ?>
                        <?php $text = '<b>'.acymailing_translation('HTML').' : </b>'.$row->senthtml;
                        $text .= '<br /><b>'.acymailing_translation('JOOMEXT_TEXT').' : </b>'.$row->senttext;
                        $title = acymailing_translation('ACY_SENT');
                        echo acymailing_tooltip($text, $title, '', $row->senthtml + $row->senttext, acymailing_completeLink('stats&task=detaillisting&filter_status=0&filter_mail='.$row->mailid)); ?>
                    <?php }elseif($oneProp == 'OPEN'){
                        if(!empty($row->senthtml)){
                            $text = '<b>'.acymailing_translation('OPEN_UNIQUE').' : </b>'.$row->openunique.' / '.$cleanSent;
                            $text .= '<br /><b>'.acymailing_translation('OPEN_TOTAL').' : </b>'.$row->opentotal;
                            $pourcent = ($cleanSent == 0 ? '0%' : (substr($row->openunique / $cleanSent * 100, 0, 5)).'%');
                            $title = acymailing_translation_sprintf('PERCENT_OPEN', $pourcent);
                            echo acymailing_tooltip($text, $title, '', $pourcent, acymailing_completeLink('stats&task=detaillisting&filter_status=open&filter_mail='.$row->mailid));
                        }
                    }elseif($oneProp == 'CLICKED_LINK'){
                        $text = '<b>'.acymailing_translation('UNIQUE_HITS').' : </b>'.$row->clickunique.' / '.$cleanSent;
                        $text .= '<br /><b>'.acymailing_translation('TOTAL_HITS').' : </b>'.$row->clicktotal;
                        $pourcent = ($cleanSent == 0 ? '0%' : (substr($row->clickunique / $cleanSent * 100, 0, 5)).'%');
                        $title = acymailing_translation_sprintf('PERCENT_CLICK', $pourcent);
                        echo acymailing_tooltip($text, $title, '', $pourcent, acymailing_completeLink('statsurl&filter_mail='.$row->mailid));
                    }elseif($oneProp == 'ACY_CLICK_EFFICIENCY'){
                        $text = '<b>'.acymailing_translation('UNIQUE_HITS').' : </b>'.$row->clickunique.' / '.$row->openunique;
                        $text .= '<br /><b>'.acymailing_translation('OPEN_UNIQUE').' : </b>'.$row->openunique;
                        $pourcentEfficiency = ($row->openunique == 0 ? '0%' : (substr($row->clickunique / $row->openunique * 100, 0, 5)).'%');
                        $title = acymailing_translation_sprintf('ACY_CLICK_EFFICIENCY_DESC', $pourcentEfficiency);
                        echo acymailing_tooltip($text, $title, '', $pourcentEfficiency, acymailing_completeLink('statsurl&filter_mail='.$row->mailid));
                    }elseif($oneProp == 'UNSUBSCRIBE'){
                        echo acymailing_popup(acymailing_completeLink('stats&task=unsubchart&mailid='.$row->mailid, true), '<i class="acyicon-statistic"></i>', '', 800, 590);
                        $pourcent = ($cleanSent == 0) ? '0%' : (substr($row->unsub / $cleanSent * 100, 0, 5)).'%';
                        $text = $row->unsub.' / '.$cleanSent;
                        $title = acymailing_translation('UNSUBSCRIBE');
                        echo acymailing_popup(acymailing_completeLink('stats&start=0&task=unsubscribed&filter_mail='.$row->mailid, true), acymailing_tooltip($text, $title, '', $pourcent), '', 800, 590);
                    }elseif($oneProp == 'FORWARDED'){
                        echo acymailing_popup(acymailing_completeLink('stats&start=0&task=forward&filter_mail='.$row->mailid, true), $row->forward, '', 800, 590);
                    }elseif($oneProp == 'BOUNCES'){
                        echo acymailing_popup(acymailing_completeLink('bounces&task=chart&mailid='.$row->mailid, true), '<i class="acyicon-statistic"></i>', '', 800, 590);
                        $text = $row->bounceunique.' / '.($row->senthtml + $row->senttext);
                        $title = acymailing_translation('BOUNCES');
                        $pourcent = (empty($row->senthtml) AND empty($row->senttext)) ? '0%' : (substr($row->bounceunique / ($row->senthtml + $row->senttext) * 100, 0, 5)).'%';
                        echo acymailing_tooltip($text, $title, '', $pourcent, acymailing_completeLink('stats&task=detaillisting&filter_status=bounce&filter_mail='.$row->mailid));
                    }else{ ?>
                        <a href="<?php echo acymailing_completeLink('stats&task=detaillisting&filter_status=failed&filter_mail='.$row->mailid); ?>">
                            <?php echo $row->fail; ?>
                        </a>
                    <?php }

                    echo '</td>';
                }
                echo '</tr>';
            }
            ?>
            </table>
        </div>
        <?php acymailing_formOptions(); ?>
    </form>
</div>
views/stats/tmpl/unsubscribed.php000060400000010432152455705230013220 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats', true); ?>" method="post" name="adminForm" id="adminForm">
		<?php if(!acymailing_isAdmin()){ ?>
			<fieldset class="acyheaderarea">
				<?php if(!empty($this->rows[0]->subject)) $this->rows[0]->subject = acyEmoji::Decode($this->rows[0]->subject); ?>
				<div class="acyheader icon-48-stats" style="float: left;"><?php echo(!empty($this->rows) ? $this->rows[0]->subject : acymailing_translation('UNSUBSCRIBECAPTION')); ?></div>
				<div class="toolbar" id="toolbar" style="float: right;">
					<table>
						<tr>
							<?php if(acymailing_isNoTemplate() && !empty($this->rows)){ ?>
								<td><a onclick="acymailing.submitbutton('export<?php echo ucfirst(acymailing_getVar('cmd', 'task')); ?>'); return false;" href="#"><span class="icon-32-acyexport" title="<?php echo acymailing_translation('ACY_EXPORT', true); ?>"></span><?php echo acymailing_translation('ACY_EXPORT'); ?></a></td>
								<td>
								</td>
							<?php } ?>
							<?php if(acymailing_getVar('int', 'fromdetail') == 1){ ?>
								<td><a href="<?php echo acymailing_completeLink('frontdiagram&task=mailing&mailid='.acymailing_getVar('int', 'filter_mail'), true); ?>"><span class="icon-32-cancel" title="<?php echo acymailing_translation('ACY_CANCEL', true); ?>"></span><?php echo acymailing_translation('ACY_CANCEL'); ?></a></td>
							<?php } ?>
						</tr>
					</table>
				</div>
			</fieldset>
		<?php } ?>


		<table class="acymailing_table_options ">
			<tr>
				<td width="100%">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td style="padding-left: 15px;">
					<?php echo $this->filterMail; ?>
				</td>
			</tr>
		</table>

		<table class="acymailing_table" cellspacing="1" align="center">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titledate">
					<?php echo acymailing_gridSort(acymailing_translation('FIELD_DATE'), 'a.date', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_USER'), 'c.email', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title">
					<?php echo acymailing_translation('ACY_DETAILS'); ?>
				</th>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="4">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;
			$i = 0;
			foreach($this->rows as $row){
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" valign="top">
						<?php echo $i + 1; ?>
					</td>
					<td align="center" valign="top">
						<?php echo acymailing_getDate($row->date); ?>
					</td>
					<td align="center" style="text-align:center">
						<?php
						$text = '<b>'.acymailing_translation('ACY_NAME').' : </b>'.$row->name;
						$text .= '<br /><b>'.acymailing_translation('ACY_ID').' : </b>'.$row->subid;
						echo acymailing_tooltip($text, $row->email, '', $row->email);
						?>
					</td>
					<td valign="top">
						<?php
						$data = explode("\n", $row->data);
						foreach($data as $value){
							if(!strpos($value, '::')){
								echo $value;
								continue;
							}
							list($part1, $part2) = explode("::", $value);
							if(empty($part2)) continue;
							if(preg_match('#^[A-Z_]*$#', $part2)) $part2 = acymailing_translation($part2);
							echo '<b>'.acymailing_translation($part1).' : </b>'.$part2.'<br />';
						}
						?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
				$i++;
			}
			?>
			</tbody>
		</table>

		<input type="hidden" name="defaulttask" value="<?php echo acymailing_getVar('cmd', 'task'); ?>"/>
		<input type="hidden" name="fromdetail" value="<?php echo acymailing_getVar('int', 'fromdetail'); ?>"/>
		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
</div>
views/stats/tmpl/menu.mailinglist.php000060400000002064152455705230014011 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><fieldset class="acyheaderarea">
	<div class="acyheader icon-48-stats" style="float: left;"><?php echo $this->mailing->subject; ?></div>
	<div class="toolbar" id="toolbar" style="float: right;">
		<table>
			<tr>
				<td><a href="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl').'&task=mailinglist&export=1&mailid='.acymailing_getVar('int', 'mailid'), true); ?>"><span class="icon-32-acyexport" title="<?php echo acymailing_translation('ACY_EXPORT', true); ?>"></span><?php echo acymailing_translation('ACY_EXPORT'); ?></a></td>
				<td><a onclick="window.print(); return false;" href="#"><span class="icon-32-acyprint" title="<?php echo acymailing_translation('ACY_PRINT', true); ?>"></span><?php echo acymailing_translation('ACY_PRINT'); ?></a></td>
			</tr>
		</table>
	</div>
</fieldset>
views/stats/tmpl/listing.php000060400000033042152455705230012203 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<?php if(!acymailing_isAdmin()){ ?>
	<fieldset>
		<div class="acyheader icon-48-stats" style="float: left;"><?php echo acymailing_translation('GLOBAL_STATISTICS'); ?></div>
		<div class="toolbar" id="acytoolbar" style="float: right;">
			<table>
				<tr>
					<td id="acybutton_stats_exportglobal"><a onclick="acymailing.submitbutton('exportglobal'); return false;" href="#" ><span class="icon-32-acyexport" title="<?php echo acymailing_translation('ACY_EXPORT'); ?>"></span><?php echo acymailing_translation('ACY_EXPORT'); ?></a></td>
					<?php if(acymailing_isAllowed($this->config->get('acl_statistics_delete','all'))){ ?><td id="acybutton_stats_delete"><a onclick="javascript:if(document.adminForm.boxchecked.value==0){alert('<?php echo acymailing_translation('PLEASE_SELECT',true);?>');}else{if(confirm('<?php echo acymailing_translation('ACY_VALIDDELETEITEMS',true); ?>')){acymailing.submitbutton('remove');}} return false;" href="#" ><span class="icon-32-delete" title="<?php echo acymailing_translation('ACY_DELETE'); ?>"></span><?php echo acymailing_translation('ACY_DELETE'); ?></a></td><?php } ?>
				</tr>
			</table>
		</div>
	</fieldset>
	<?php } ?>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats'); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<tr>
				<td>
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td class="tablegroup_options">
					<span class="statistics_filter" id="statfilter" align="left"><?php echo $this->filterMsg; ?></span>
					<?php if(!empty($this->filterTag)){ ?><span class="statistics_filter" id="statfilter" align="left"><?php echo $this->filterTag; ?></span><?php } ?>
				</td>
			</tr>
		</table>
		<?php if(!acymailing_isAdmin()) echo '<div class="acyslide">'; ?>
		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<?php if($this->menuparams->get('number', '1') == 1){ ?>
					<th class="title titlenum">
						<?php echo acymailing_translation('ACY_NUM'); ?>
					</th>
				<?php } ?>
				<th class="title titlebox">
					<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
				</th>
				<th class="title statsubjectsenddate">
					<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_SUBJECT'), 'b.subject', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing').' - '.acymailing_gridSort(acymailing_translation('SEND_DATE'), 'a.senddate', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
				</th>
				<?php if($this->menuparams->get('opens', '1') == 1){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('OPEN'), 'openprct', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
				<?php if(acymailing_level(1)){ ?>
					<?php if($this->menuparams->get('clicks', '1') == 1){ ?>
						<th class="title titletoggle">
							<?php echo acymailing_gridSort(acymailing_translation('CLICKED_LINK'), 'clickprct', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
						</th>
					<?php } ?>
					<?php if($this->menuparams->get('efficiency', '1') == 1){ ?>
						<th class="title titletoggle">
							<?php echo acymailing_gridSort(acymailing_translation('ACY_CLICK_EFFICIENCY'), 'efficiencyprct', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
						</th>
					<?php } ?>
				<?php } ?>
				<?php if($this->menuparams->get('unsubscribe', '1') == 1){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('UNSUBSCRIBE'), 'unsubprct', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
				<?php if(acymailing_level(1) && $this->menuparams->get('forward', '1') == 1){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('FORWARDED'), 'a.forward', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
				<?php if($this->menuparams->get('sent', '1') == 1){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_SENT'), 'totalsent', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
				<?php if(acymailing_level(3) && $this->menuparams->get('bounces', '1') == 1){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('BOUNCES'), 'bounceprct', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
				<?php if($this->menuparams->get('failed', '1') == 1){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('FAILED'), 'a.fail', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
				<?php if(acymailing_level(3) && acymailing_isAdmin()){ ?>
					<th class="title titletoggle" style="font-size: 12px;">
						<?php echo acymailing_translation('STATS_PER_LIST'); ?>
					</th>
				<?php } ?>
				<?php if($this->menuparams->get('id', '1') == 1){ ?>
					<th class="title titleid titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.mailid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, 'listing'); ?>
					</th>
				<?php } ?>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="14">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->rows); $i < $a; $i++){
				$row =& $this->rows[$i];
				$row->subject = acyEmoji::Decode($row->subject);
				if(acymailing_level(3)){
					$cleanSent = $row->senthtml + $row->senttext - $row->bounceunique;
				}else{
					$cleanSent = $row->senthtml + $row->senttext;
				}
				?>
				<tr class="<?php echo "row$k"; ?>">
					<?php if($this->menuparams->get('number', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<?php echo $this->pagination->getRowOffset($i); ?>
						</td>
					<?php } ?>
					<td align="center" style="text-align:center">
						<?php echo acymailing_gridID($i, $row->mailid); ?>
					</td>
					<td>
						<?php
						if(acymailing_level(2)) {
							echo acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'diagram&task=mailing&mailid='.$row->mailid, true), '<i class="acyicon-statistic"></i><span class="acy_stat_subject">'.acymailing_tooltip('<b>'.acymailing_translation('JOOMEXT_ALIAS').' : </b>'.$row->alias, '', '', $row->subject).'</span>', '', 800, 590);
						}else{
							echo '<span class="acy_stat_subject">'.acymailing_tooltip('<b>'.acymailing_translation('JOOMEXT_ALIAS').' : </b>'.$row->alias, ' ', '', $row->subject).'</span>';
						}
						echo '<br /><span class="acy_stat_date"><b>'.acymailing_translation('SEND_DATE').' : </b>'.acymailing_getDate($row->senddate).'</span>'; ?>
					</td>
					<?php if($this->menuparams->get('opens', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<?php
							if(!empty($row->senthtml)){
								$text = '<b>'.acymailing_translation('OPEN_UNIQUE').' : </b>'.$row->openunique.' / '.$cleanSent;
								$text .= '<br /><b>'.acymailing_translation('OPEN_TOTAL').' : </b>'.$row->opentotal;
								$pourcent = ($cleanSent == 0 ? '0%' : (substr($row->openunique / $cleanSent * 100, 0, 5)).'%');
								$title = acymailing_translation_sprintf('PERCENT_OPEN', $pourcent);
								echo acymailing_tooltip($text, $title, '', $pourcent, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=detaillisting&filter_status=open&filter_mail='.$row->mailid));
							}
							?>
						</td>
					<?php } ?>
					<?php if(acymailing_level(1)){ ?>
						<?php if($this->menuparams->get('clicks', '1') == 1){ ?>
							<td align="center" style="text-align:center">
								<?php
								if(!empty($row->senthtml)){
									$text = '<b>'.acymailing_translation('UNIQUE_HITS').' : </b>'.$row->clickunique.' / '.$cleanSent;
									$text .= '<br /><b>'.acymailing_translation('TOTAL_HITS').' : </b>'.$row->clicktotal;
									$pourcent = ($cleanSent == 0 ? '0%' : (substr($row->clickunique / $cleanSent * 100, 0, 5)).'%');
									$title = acymailing_translation_sprintf('PERCENT_CLICK', $pourcent);
									echo acymailing_tooltip($text, $title, '', $pourcent, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'statsurl&filter_mail='.$row->mailid));
								}
								?>
							</td>
						<?php } ?>
						<?php if($this->menuparams->get('efficiency', '1') == 1){ ?>
							<td align="center" style="text-align:center">
								<?php
								if(!empty($row->senthtml)){
									$text = '<b>'.acymailing_translation('UNIQUE_HITS').' : </b>'.$row->clickunique.' / '.$row->openunique;
									$text .= '<br /><b>'.acymailing_translation('OPEN_UNIQUE').' : </b>'.$row->openunique;
									$pourcentEfficiency = ($row->openunique == 0 ? '0%' : (substr($row->clickunique / $row->openunique * 100, 0, 5)).'%');
									$title = acymailing_translation_sprintf('ACY_CLICK_EFFICIENCY_DESC', $pourcentEfficiency);
									echo acymailing_tooltip($text, $title, '', $pourcentEfficiency, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'statsurl&filter_mail='.$row->mailid));
								}
								?>
							</td>
						<?php } ?>
					<?php } ?>
					<?php if($this->menuparams->get('unsubscribe', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<?php
							echo acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=unsubchart&mailid='.$row->mailid, true), '<i class="acyicon-statistic"></i>', '', 800, 590);
							$pourcent = ($cleanSent == 0) ? '0%' : (substr($row->unsub / $cleanSent * 100, 0, 5)).'%';
							$text = $row->unsub.' / '.$cleanSent;
							$title = acymailing_translation('UNSUBSCRIBE');
							echo acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&start=0&task=unsubscribed&filter_mail='.$row->mailid, true), acymailing_tooltip($text, $title, '', $pourcent), '', 800, 590);
							?>
						</td>
					<?php } ?>
					<?php if(acymailing_level(1) && $this->menuparams->get('forward', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<?php echo acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&start=0&task=forward&filter_mail='.$row->mailid, true), $row->forward, '', 800, 590); ?>
						</td>
					<?php } ?>
					<?php if($this->menuparams->get('sent', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<?php $text = '<b>'.acymailing_translation('HTML').' : </b>'.$row->senthtml;
							$text .= '<br /><b>'.acymailing_translation('JOOMEXT_TEXT').' : </b>'.$row->senttext;
							$title = acymailing_translation('ACY_SENT');
							echo acymailing_tooltip($text, $title, '', $row->senthtml + $row->senttext, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=detaillisting&filter_status=0&filter_mail='.$row->mailid)); ?>
						</td>
					<?php } ?>
					<?php if(acymailing_level(3) && $this->menuparams->get('bounces', '1') == 1){ ?>
						<td align="center" style="text-align:center" nowrap="nowrap">
							<?php echo acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'bounces&task=chart&mailid='.$row->mailid, true), '<i class="acyicon-statistic"></i>', '', 800, 590);
							$text = $row->bounceunique.' / '.($row->senthtml + $row->senttext);
							$title = acymailing_translation('BOUNCES');
							$pourcent = (empty($row->senthtml) AND empty($row->senttext)) ? '0%' : (substr($row->bounceunique / ($row->senthtml + $row->senttext) * 100, 0, 5)).'%';
							echo acymailing_tooltip($text, $title, '', $pourcent, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=detaillisting&filter_status=bounce&filter_mail='.$row->mailid)); ?>
						</td>
					<?php } ?>
					<?php if($this->menuparams->get('failed', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<a href="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=detaillisting&filter_status=failed&filter_mail='.$row->mailid); ?>">
								<?php echo $row->fail; ?>
							</a>
						</td>
					<?php } ?>
					<?php if(acymailing_level(3) && acymailing_isAdmin()){ ?>
						<td align="center" style="text-align:center">
							<?php echo acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'stats&task=mailinglist&mailid='.$row->mailid, true), '<i class="acyicon-statistic"></i>', '', 800, 590); ?>
						</td>
					<?php } ?>
					<?php if($this->menuparams->get('id', '1') == 1){ ?>
						<td align="center" style="text-align:center">
							<?php echo $row->mailid; ?>
						</td>
					<?php } ?>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>
		<?php
		if(!acymailing_isAdmin()) echo '</div>';
		if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />';
		acymailing_formOptions($this->pageInfo->filter->order);
		?>
	</form>
</div>
views/stats/tmpl/menu.detaillisting.php000060400000002732152455705230014333 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><fieldset>
	<div class="acyheader icon-48-stats" style="float: left;"><?php echo $this->mailing->subject; ?></div>
	<div class="toolbar" id="toolbar" style="float: right;">
		<table>
			<tr>
				<?php
				$config = acymailing_config();
				if(acymailing_isAllowed($config->get('acl_subscriber_export', 'all'))){ ?>
					<td><a onclick="acymailing.submitbutton('export'); return false;" href="#"><span class="icon-32-acyexport" title="<?php echo acymailing_translation('ACY_EXPORT', true); ?>"></span><?php echo acymailing_translation('ACY_EXPORT'); ?></a></td>
				<?php }

				if(acymailing_isNoTemplate()){
					$link = 'frontdiagram&task=mailing&mailid='.acymailing_getVar('cmd', 'mailid').'&listid='.acymailing_getVar('cmd', 'listid');
				}else{
					$link = 'frontstats&listid='.acymailing_getVar('int', 'listid').'&filter_msg='.acymailing_getVar('int', 'filter_msg').'&mailid='.acymailing_getVar('int', 'filter_mail');
				}
				?>
				<td><a href="<?php echo acymailing_completeLink($link, acymailing_isNoTemplate()); ?>"><span class="icon-32-cancel" title="<?php echo acymailing_translation('ACY_CANCEL', true); ?>"></span><?php echo acymailing_translation('ACY_CANCEL'); ?></a></td>
			</tr>
		</table>
	</div>
</fieldset>
views/stats/tmpl/mailinglist.php000060400000031102152455705230013041 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<?php
	if(empty($this->isData)) return;
	if(!acymailing_isAdmin() && acymailing_isNoTemplate()) include(dirname(__FILE__).DS.'menu.mailinglist.php'); ?>
	<style type="text/css">
		.mailingListChart{
			float: left;
			margin: 2px;
		}

		.noDataChart{
			display: none;
		}
	</style>
	<script type="text/javascript" src="https://www.google.com/jsapi"></script>
	<script language="JavaScript" type="text/javascript">
		function getDataMailSent(){
			var data = new google.visualization.DataTable();
			data.addColumn('string', 'Name');
			data.addColumn('number', 'Value');
			data.addRows(<?php echo count($this->mydata); ?>);
			<?php
			$array_detail = array();
			$i = 0;
			foreach($this->mydata as $list){
				echo 'data.setValue('. $i .', 0, \''. str_replace("'", "\'", $list['listname']) .'\'); ';
				echo 'data.setValue('. $i .', 1, '. $list['nbMailSent'] .'); ';
				$i++;
				$nbSentRatio = number_format($list['nbMailSent'] / $this->totalSent * 100, 1);
				array_push($array_detail, $list['listname'] .': '. $list['nbMailSent'] . ' ('. $nbSentRatio .'%)');
			}
			$detailSent = implode("\n", $array_detail); ?>
			return data;
		}

		function drawMailSent(){
			var vis = new google.visualization.PieChart(document.getElementById('chartMailSent'));
			var options = {
				width: 350, height: 350, colors: [<?php echo $this->listColors; ?>], legend: 'right', title: '<?php echo str_replace("'", "\'", acymailing_translation('ACY_SENT_EMAILS')); ?>', legendTextStyle: {color: '#333333'}, pieSliceText: 'value', is3D: true
			};
			vis.draw(getDataMailSent(), options);
		}

		var optionsColumnChart = {
			width: 350, height: 350, colors: [<?php echo $this->listColors; ?>], legend: 'none', vAxis: {minValue: 0, maxValue: 100}
		};

		function getDataOpen(){
			var data = new google.visualization.DataTable();
			data.addColumn('string', 'Columns');
			<?php foreach($this->mydata as $list){
				echo 'data.addColumn(\'number\', \''. str_replace("'", "\'", $list['listname']) .'\'); ';
			} ?>
			data.addRows(1);
			data.setValue(0, 0, '');
			<?php $i = 1;
			$array_detail = array();
			$dataOpen = false;
			foreach($this->mydata as $list){
				if(!$dataOpen && $list['nbOpenRatio'] > 0) $dataOpen = true;
				echo 'data.setValue(0,'. $i .', '. $list['nbOpenRatio'] .'); ';
				array_push($array_detail, $list['listname'] .': '. $list['nbOpen'] .' ('. $list['nbOpenRatio'] .'%)');
				$i++;
			}
			$detailOpen = implode("\n", $array_detail); ?>
			return data;
		}
		function drawOpen(){
			var vis = new google.visualization.ColumnChart(document.getElementById('chartMailOpen'));
			optionsColumnChart['title'] = '<?php echo str_replace("'", "\'", acymailing_translation('OPEN')); ?> (%)';
			<?php if(!$dataOpen) {echo	"optionsColumnChart['vAxis'] = {minValue:0, maxValue:100};";}
			else echo	"optionsColumnChart['vAxis'] = {minValue:0};"; ?>
			vis.draw(getDataOpen(), optionsColumnChart);
		}

		function getDataBounce(){
			var data = new google.visualization.DataTable();
			data.addColumn('string', 'Columns');
			<?php foreach($this->mydata as $list){
				echo 'data.addColumn(\'number\', \''. str_replace("'", "\'", $list['listname']) .'\'); ';
			} ?>
			data.addRows(1);
			data.setValue(0, 0, '');
			<?php $i = 1;
			$array_detail = array();
			$dataBounce = false;
			foreach($this->mydata as $list){
				if(!$dataBounce && $list['nbBounceRatio'] > 0) $dataBounce = true;
				echo 'data.setValue(0,'. $i .', '. $list['nbBounceRatio'] .'); ';
				array_push($array_detail, $list['listname'] .': '. $list['nbBounce'] .' ('. $list['nbBounceRatio'] .'%)');
				$i++;
			}
			$detailBounce = implode("\n", $array_detail); ?>
			return data;
		}
		function drawBounce(){
			var vis = new google.visualization.ColumnChart(document.getElementById('chartBounce'));
			optionsColumnChart['title'] = '<?php echo str_replace("'", "\'", acymailing_translation('BOUNCES')); ?> (%)';
			<?php if(!$dataBounce) {echo	"optionsColumnChart['vAxis'] = {minValue:0, maxValue:100};";}
			else echo	"optionsColumnChart['vAxis'] = {minValue:0};"; ?>
			vis.draw(getDataBounce(), optionsColumnChart);
		}

		function getDataClic(){
			var data = new google.visualization.DataTable();
			data.addColumn('string', 'Columns');
			<?php foreach($this->mydata as $list){
				echo 'data.addColumn(\'number\', \''. str_replace("'", "\'", $list['listname']) .'\'); ';
			} ?>
			data.addRows(1);
			data.setValue(0, 0, '');
			<?php $i = 1;
			$array_detail = array();
			$dataClic = false;
			foreach($this->mydata as $list){
				if(!$dataClic && $list['nbClicRatio'] > 0) $dataClic = true;
				echo 'data.setValue(0,'. $i .', '. $list['nbClicRatio'] .'); ';
				array_push($array_detail, $list['listname'] .': '. $list['nbClic'] .' ('. $list['nbClicRatio'] .'%)');
				$i++;
			}
			$detailClic = implode("\n", $array_detail); ?>
			return data;
		}
		function drawClic(){
			var vis = new google.visualization.ColumnChart(document.getElementById('chartClic'));
			optionsColumnChart['title'] = '<?php echo str_replace("'", "\'", acymailing_translation('CLICKED_LINK')); ?> (%)';
			<?php if(!$dataClic) {echo	"optionsColumnChart['vAxis'] = {minValue:0, maxValue:100};";}
			else echo	"optionsColumnChart['vAxis'] = {minValue:0};"; ?>
			vis.draw(getDataClic(), optionsColumnChart);
		}

		function getDataUnsub(){
			var data = new google.visualization.DataTable();
			data.addColumn('string', 'Columns');
			<?php foreach($this->mydata as $list){
				echo 'data.addColumn(\'number\', \''. str_replace("'", "\'", $list['listname']) .'\'); ';
			} ?>
			data.addRows(1);
			data.setValue(0, 0, '');
			<?php $i = 1;
			$array_detail = array();
			$dataUnsub = false;
			foreach($this->mydata as $list){
				if(!$dataUnsub && $list['nbUnsubRatio'] > 0) $dataUnsub = true;
				echo 'data.setValue(0,'. $i .', '. $list['nbUnsubRatio'] .'); ';
				array_push($array_detail, $list['listname'] .': '. $list['nbUnsub'] .' ('. $list['nbUnsubRatio'] .'%)');
				$i++;
			}
			$detailUnsub = implode("\n", $array_detail); ?>
			return data;
		}
		function drawUnsub(){
			var vis = new google.visualization.ColumnChart(document.getElementById('chartUnsubscribed'));
			optionsColumnChart['title'] = '<?php echo str_replace("'", "\'", acymailing_translation('UNSUBSCRIBED')); ?> (%)';
			<?php if(!$dataUnsub) {echo	"optionsColumnChart['vAxis'] = {minValue:0, maxValue:100};";}
			else echo	"optionsColumnChart['vAxis'] = {minValue:0};"; ?>
			vis.draw(getDataUnsub(), optionsColumnChart);
		}

		function getDataForward(){
			var data = new google.visualization.DataTable();
			data.addColumn('string', 'Columns');
			<?php foreach($this->mydata as $list){
				echo 'data.addColumn(\'number\', \''. str_replace("'", "\'", $list['listname']) .'\'); ';
			} ?>
			data.addRows(1);
			data.setValue(0, 0, '');
			<?php $i = 1;
			$array_detail = array();
			$dataForward = false;
			foreach($this->mydata as $list){
				echo 'data.setValue(0,'. $i .', '. $list['nbForward'] .'); ';
				if(!$dataForward && $list['nbForward'] != 0) $dataForward = true;
				array_push($array_detail, $list['listname'] .': '. $list['nbForward']);
				$i++;
			}
			$detailForward = implode("\n", $array_detail); ?>
			return data;
		}
		function drawForward(){
			var vis = new google.visualization.ColumnChart(document.getElementById('chartForward'));
			optionsColumnChart['title'] = '<?php echo str_replace("'", "\'", acymailing_translation('FORWARDED')); ?>';
			<?php if(!$dataForward) {echo	"optionsColumnChart['vAxis'] = {minValue:0, maxValue:100};";}
			else echo	"optionsColumnChart['vAxis'] = {minValue:0};"; ?>
			vis.draw(getDataForward(), optionsColumnChart);
		}

		google.load("visualization", "1", {packages: ["corechart"]});
		google.setOnLoadCallback(drawMailSent);
		google.setOnLoadCallback(drawOpen);
		google.setOnLoadCallback(drawBounce);
		google.setOnLoadCallback(drawClic);
		google.setOnLoadCallback(drawUnsub);
		google.setOnLoadCallback(drawForward);

		function showData(typeGraph){
			if(document.getElementById('exporteddata_' + typeGraph).style.display == 'none'){
				document.getElementById('exporteddata_' + typeGraph).style.display = '';
			}else{
				document.getElementById('exporteddata_' + typeGraph).style.display = 'none';
			}
		}
	</script>

	<div id="iframedoc"></div>
	<?php echo acymailing_translation('SEND_DATE').' : <span class="statnumber">'.acymailing_getDate($this->mailing->senddate); ?></span><br/>

	<div class="acychart mailingListChart" width="350px" height="350px">
		<div id="chartMailSent"></div>
		<img style="position:relative;cursor:pointer;margin-top:-30px;" onclick="showData('sent');" class="donotprint" src="<?php echo ACYMAILING_IMAGES.'smallexport.png'; ?>" alt="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" title="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" width="30px"/>
		<textarea cols="25" rows="9" id="exporteddata_sent" style="display:none;position:absolute;margin-top:-160px;z-index:2;width:300px;" class="donotprint"><?php echo $detailSent; ?></textarea>
	</div>
	<div class="acychart mailingListChart" width="350px" height="350px">
		<div id="chartMailOpen"></div>
		<img style="position:relative;cursor:pointer;margin-top:-30px;" onclick="showData('open');" class="donotprint" src="<?php echo ACYMAILING_IMAGES.'smallexport.png'; ?>" alt="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" title="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" width="30px"/>
		<textarea cols="35" rows="9" id="exporteddata_open" style="display:none;position:absolute;margin-top:-160px;z-index:2;width:300px;" class="donotprint"><?php echo $detailOpen; ?></textarea>
	</div>

	<!--[if !IE]><!-->
	<div style="page-break-after: always;">&nbsp;</div>
	<!--<![endif]-->
	<div class="acychart mailingListChart" width="350px" height="350px">
		<div id="chartClic"></div>
		<img style="position:relative;cursor:pointer;margin-top:-30px;" onclick="showData('clic');" class="donotprint" src="<?php echo ACYMAILING_IMAGES.'smallexport.png'; ?>" alt="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" title="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" width="30px"/>
		<textarea cols="35" rows="9" id="exporteddata_clic" style="display:none;position:absolute;margin-top:-160px;z-index:2;width:300px;" class="donotprint"><?php echo $detailClic; ?></textarea>
	</div>
	<div class="acychart mailingListChart <?php echo($dataForward == false ? 'noDataChart' : ''); ?>" width="350px" height="350px">
		<div id="chartForward"></div>
		<img style="position:relative;cursor:pointer;margin-top:-30px;" onclick="showData('forward');" class="donotprint" src="<?php echo ACYMAILING_IMAGES.'smallexport.png'; ?>" alt="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" title="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" width="30px"/>
		<textarea cols="35" rows="9" id="exporteddata_forward" style="display:none;position:absolute;margin-top:-160px;z-index:2;width:300px;" class="donotprint"><?php echo $detailClic; ?></textarea>
	</div>

	<?php echo($dataForward != false ? '<!--[if !IE]><!--><div style="page-break-after: always">&nbsp;</div><!--<![endif]-->' : ''); ?>
	<div class="acychart mailingListChart" width="350px" height="350px">
		<div id="chartBounce"></div>
		<img style="position:relative;cursor:pointer;margin-top:-30px;" onclick="showData('bounce');" class="donotprint" src="<?php echo ACYMAILING_IMAGES.'smallexport.png'; ?>" alt="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" title="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" width="30px"/>
		<textarea cols="35" rows="9" id="exporteddata_bounce" style="display:none;position:absolute;margin-top:-160px;z-index:2;width:300px;" class="donotprint"><?php echo $detailBounce; ?></textarea>
	</div>
	<?php echo($dataForward == false ? '<!--[if !IE]><!--><div style="page-break-after: always">&nbsp;</div><!--<![endif]-->' : ''); ?>
	<div class="acychart mailingListChart" width="350px" height="350px">
		<div id="chartUnsubscribed"></div>
		<img style="position:relative;cursor:pointer;margin-top:-30px;" onclick="showData('unsub');" class="donotprint" src="<?php echo ACYMAILING_IMAGES.'smallexport.png'; ?>" alt="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" title="<?php echo acymailing_translation('VIEW_DETAILS', true) ?>" width="30px"/>
		<textarea cols="35" rows="9" id="exporteddata_unsub" style="display:none;position:absolute;margin-top:-160px;z-index:2;width:300px;" class="donotprint"><?php echo $detailUnsub; ?></textarea>
	</div>
</div>
views/update/view.html.php000060400000006134152455705230011621 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class UpdateViewUpdate extends acymailingView{

    function display($tpl = null){

        $function = $this->getLayout();
        if(method_exists($this, $function)) $this->$function();

        parent::display($tpl);
    }

    function acysms(){
        $acyToolbar = acymailing_get('helper.toolbar');
        $acyToolbar->setTitle('AcySMS');
        $acyToolbar->display();

        $js = '
        function installAcySMS(){
            var progressbar = document.getElementById("progressbar");
            var information = document.getElementById("information");
            progressbar.style.width = "10%";
            information.innerHTML = "'.htmlspecialchars(acymailing_translation('ACY_DOWNLOADING'), ENT_QUOTES, 'UTF-8').'";
					
            var xhr = new XMLHttpRequest();
            xhr.open("GET", "'.acymailing_prepareAjaxURL('file').'&task=downloadAcySMS");
            xhr.onload = function(){
                if(xhr.responseText == "success") {
                    progressbar.style.width = "40%";
                    document.getElementById("information").innerHTML = "'.htmlspecialchars(acymailing_translation('ACY_INSTALLING'), ENT_QUOTES, 'UTF-8').'";
                    installPackage();
                }else{
                    document.getElementById("information").innerHTML = "'.str_replace('"', '\"', acymailing_translation_sprintf('ACY_FAILED_INSTALL', '<a href="https://www.acyba.com/download-area/download/component-acysms/level-express.html" target="_blank">', '</a>')).'";
                }
            };
            xhr.send();
        }

        function installPackage(){
            var progress = 40;
            var interval = setInterval(function(){
                if(progress >= 70) clearInterval(interval);
                if(progressbar.style.width != "100%") {
                    progress += 10;
                    progressbar.style.width = progress + "%";
                }
            }, 4000);
					
            var xhr = new XMLHttpRequest();
            xhr.open("GET", "'.acymailing_prepareAjaxURL('file').'&task=installPackage");
            xhr.onload = function(){
                if(xhr.responseText == "success") {
                    progressbar.style.width = "100%";
                    setTimeout(function(){ 
                        document.getElementById("meter").style.display = "none"; 
                        document.getElementById("postinstall").style.display = ""; 
                    }, 2000);
                }else{
                    document.getElementById("information").innerHTML = "'.str_replace('"', '\"', acymailing_translation_sprintf('ACY_FAILED_INSTALL', '<a href="https://www.acyba.com/download-area/download/component-acysms/level-express.html" target="_blank">', '</a>')).'";
                }
            };
            xhr.send();
        }';

        acymailing_addScript(true, $js);
    }
}
views/update/index.html000060400000000054152455705230011163 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/update/tmpl/acysms.php000060400000015527152455705230012165 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content" class="installacysms">
    <div id="iframedoc"></div>
    <span style="font-weight: bold;"><i class="acyicon-statistic" style="margin-right: 10px;vertical-align:middle;"></i><?php echo acymailing_translation('ACY_SMS_PRESENTATION'); ?></span>
    <div id="startbutton" class="myacymailingarea"><button onclick="document.getElementById('meter').style.display = '';document.getElementById('startbutton').style.display = 'none';installAcySMS();"><?php echo acymailing_translation('ACY_TRY_IT'); ?></button></div>
    <div id="meter" style="display:none;">
        <div>
            <span id="progressbar"></span>
            <div id="information"></div>
        </div>
    </div>
    <div id="postinstall" style="display:none;font-weight: bold;margin-top: 15px;">
        <?php echo acymailing_translation_sprintf('ACY_INSTALLED', '<a href="https://www.acyba.com/member-area/your-subscription.html#acysms-uexpress" target="_blank">', '</a>'); ?>
        <div class="myacymailingarea"><a href="index.php?option=com_acysms" ><button><?php echo acymailing_translation('ACY_TRY_IT'); ?></button></a></div>
    </div>

    <div id="acy_main_features" style="max-width: 980px;margin:auto;margin-top:50px;">
        <div class="contentsize shadowleft" style="padding-top: 0px;">
            <div class="row-fluid">
                <div class="span8">
                    <h4>Send personalized messages</h4>
                    <ul>
                        <li><strong>Filter your users</strong> for targeted communication. Revive the customers who bought a product or the attenders of an event...</li>
                        <li>Create <strong>marketing campaigns</strong> with follow-up messages. <strong>Automatically send a SMS</strong> to your contact X days after his subscription.</li>
                        <li><strong>Personalize your communication</strong> using information from the user profile (ex: Happy birthday "John"!)</li>
                    </ul>
                </div>
                <div class="span4"><img style="margin-top: 40px;" src="https://www.acyba.com/images/main_features_acysms/acysms1.png" alt=""></div>
            </div>
        </div>
        <div class="greybg">
            <div class="contentsize shadowright">
                <div class="row-fluid">
                    <div class="span4"><img src="https://www.acyba.com/images/main_features_acysms/acysms2.png" alt=""></div>
                    <div class="span8">
                        <h4>Increase your sales thanks to sms</h4>
                        <ul>
                            <li>Send <strong>coupons and special offers</strong> via SMS to your customers.</li>
                            <li>Generate automatic messages for their orders ("Your order is shipped today"). <strong>Send reminders</strong> when the order is confirmed or shipped.</li>
                            <li>Combine AcySMS with <strong>your online store</strong>. AcySMS is integrated with the main e-commerce solutions for Joomla (Virtuemart, HikaShop, RedShop, MijoShop).</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
        <div class="contentsize shadowleft">
            <div class="row-fluid">
                <div class="span8">
                    <h4>GET STATISTICS ON EACH CAMPAIGN</h4>
                    <ul>
                        <li>Analyze the success of your campaigns, thanks to <strong>powerful statistics</strong>.&nbsp;</li>
                        <li>Check <strong>how many messages were sent</strong> and how many have failed. Get a detailed error if your message has not been sent.</li>
                        <li>AcySMS handles <strong>delivery reports</strong>, so that you can check who has received your message.</li>
                    </ul>
                </div>
                <div class="span4"><img src="https://www.acyba.com/images/main_features_acysms/acysms3.png" alt=""></div>
            </div>
        </div>
        <div class="greybg">
            <div class="contentsize shadowright">
                <div class="row-fluid">
                    <div class="span4"><img src="https://www.acyba.com/images/main_features_acysms/acysms4.png" alt=""></div>
                    <div class="span8">
                        <h4>PERFORM ACTIONS DEPENDING ON THE ANSWERS</h4>
                        <ul>
                            <li><strong>Unsubscribe users</strong> automatically from your lists ("STOP" word).</li>
                            <li>Send a specific message <strong>depending on the answer</strong> you received on your first SMS/Text Message.</li>
                            <li>As an option, you can even <strong>forward the SMS answer</strong> to the administrator.</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
        <div class="contentsize shadowleft">
            <div class="row-fluid">
                <div class="span8">
                    <h4>MANAGE AND ORGANIZE YOUR CONTACTS</h4>
                    <ul>
                        <li>Create new <strong>contacts</strong> or complete the current ones by adding <strong>custom fields</strong> to their profile.</li>
                        <li><strong>Add users</strong> directly inside AcySMS or <strong>use a user list</strong> that you already have in another component.</li>
                        <li>AcySMS is <strong>integrated with the main user management and e-commerce </strong><strong>extensions </strong> (AcyMailing, CB, JoomSocial, VM, HikaShop, RedShop, MijoShop)</li>
                    </ul>
                </div>
                <div class="span4"><img src="https://www.acyba.com/images/main_features_acysms/acysms5.png" alt=""></div>
            </div>
        </div>
        <div class="greybg">
            <div class="contentsize shadowright">
                <div class="row-fluid">
                    <div class="span4"><img src="https://www.acyba.com/images/main_features_acysms/acysms6.png" alt=""></div>
                    <div class="span8">
                        <h4>CHOOSE AMONG MANY GATEWAYS</h4>
                        <ul>
                            <li>More than 40 SMS providers available, so that you can find the <strong>best price</strong>.</li>
                            <li>Choose your favorite gateway and send <strong>SMS/</strong><strong>Text Messaging campaigns worldwide</strong>.</li>
                            <li><strong>No commitment</strong>. You only pay for what you use.</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
views/update/tmpl/index.html000060400000000054152455705230012137 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/cpanel/tmpl/interface.php000060400000045506152455705230012606 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="config_interface">
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('MESSAGES'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('DISPLAY_MSG_SUBSCRIPTION_DESC').'<br /><br /><i>'.($this->config->get('require_confirmation', 0) ? acymailing_translation('CONFIRMATION_SENT') : acymailing_translation('SUBSCRIPTION_OK')).'</i>', acymailing_translation('DISPLAY_MSG_SUBSCRIPTION'), '', acymailing_translation('DISPLAY_MSG_SUBSCRIPTION')); ?>
				</td>
				<td>
					<?php echo $this->elements->subscription_message; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('DISPLAY_MSG_CONFIRM_DESC').'<br /><br /><i>'.acymailing_translation('SUBSCRIPTION_CONFIRMED').'</i>', acymailing_translation('DISPLAY_MSG_CONFIRM'), '', acymailing_translation('DISPLAY_MSG_CONFIRM')); ?>
				</td>
				<td>
					<?php echo $this->elements->confirmation_message; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('DISPLAY_MSG_UNSUBSCRIPTION_DESC'), acymailing_translation('DISPLAY_MSG_UNSUBSCRIPTION'), '', acymailing_translation('DISPLAY_MSG_UNSUBSCRIPTION')); ?>
				</td>
				<td>
					<?php echo $this->elements->unsubscription_message; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('DISPLAY_MSG_CONFIRMATION_DESC'), acymailing_translation('DISPLAY_MSG_CONFIRMATION'), '', acymailing_translation('DISPLAY_MSG_CONFIRMATION')); ?>
				</td>
				<td>
					<?php echo $this->elements->confirm_message; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('DISPLAY_MSG_WELCOME_DESC'), acymailing_translation('DISPLAY_MSG_WELCOME'), '', acymailing_translation('DISPLAY_MSG_WELCOME')); ?>
				</td>
				<td>
					<?php echo $this->elements->welcome_message; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('DISPLAY_MSG_UNSUB_DESC'), acymailing_translation('DISPLAY_MSG_UNSUB'), '', acymailing_translation('DISPLAY_MSG_UNSUB')); ?>
				</td>
				<td>
					<?php echo $this->elements->unsub_message; ?>
				</td>
			</tr>
		</table>
	</div>
	<div class="onelineblockoptions">
		<span class="acyblocktitle">CSS</span>
		<table class="acymailing_table" cellspacing="1">
			<?php if(!empty($this->elements->css_module)){ ?>
			<tr>
				<td class="acykey">
					<?php
					if('joomla' == 'wordpress'){
						echo acymailing_translation('ACY_CSS_WIDGET');
					}else{
						echo acymailing_tooltip(acymailing_translation('CSS_MODULE_DESC'), acymailing_translation('CSS_MODULE'), '', acymailing_translation('CSS_MODULE'));
					}
					?>
				</td>
				<td>
					<?php echo $this->elements->css_module; ?>
				</td>
			</tr>
			<?php } ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('CSS_FRONTEND_DESC'), acymailing_translation('CSS_FRONTEND'), '', acymailing_translation('CSS_FRONTEND')); ?>
				</td>
				<td>
					<?php echo $this->elements->css_frontend; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('ACY_CSS_BACKEND_DESC'), acymailing_translation('ACY_CSS_BACKEND'), '', acymailing_translation('ACY_CSS_BACKEND')); ?>
				</td>
				<td>
					<?php echo $this->elements->css_backend; ?>
				</td>
			</tr>
			<?php if(ACYMAILING_J30 && !empty($this->elements->bootstrap_frontend)){ ?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_translation('USE_BOOTSTRAP_FRONTEND'); ?>
					</td>
					<td>
						<?php echo $this->elements->bootstrap_frontend; ?>
					</td>
				</tr>
			<?php } ?>
		</table>
	</div>
	<?php if(!empty($this->elements->use_sef)){ ?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('FEATURES'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('FORWARD_DESC'), acymailing_translation('FORWARD_FEATURE'), '', acymailing_translation('FORWARD_FEATURE')); ?>
				</td>
				<td>
					<?php echo $this->elements->forward; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('USE_SEF_DESC'), acymailing_translation('USE_SEF'), '', acymailing_translation('USE_SEF')); ?>
				</td>
				<td>
					<?php echo $this->elements->use_sef; ?>
				</td>
			</tr>
			<?php
			if(acymailing_level(3)){
				?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('ACY_FEATURE_SEND_IN_ARTICLE_DESC'), acymailing_translation('ACY_FEATURE_SEND_IN_ARTICLE'), '', acymailing_translation('ACY_FEATURE_SEND_IN_ARTICLE')); ?>
					</td>
					<td class="acykey">
						<?php echo $this->elements->edit_send_in_article ?>
					</td>
				</tr>
				<?php
			}
			?>
		</table>
	</div>
	<?php } ?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('TRACKING'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('TRACKINGSYSTEM'); ?>
				</td>
				<td>
					<?php echo $this->elements->tracking_system; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_TRACKINGSYSTEM_EXTERNAL_LINKS'); ?>
				</td>
				<td>
					<?php echo $this->elements->tracking_system_external_website; ?>
				</td>
			</tr>
		</table>
	</div>
	<?php if(!empty($this->elements->acymailing_menu)) { ?>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('MENU'); ?></span>
			<table class="acymailing_table" cellspacing="1">
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('ACYMAILING_MENU_DESC'), acymailing_translation('ACYMAILING_MENU'), '', acymailing_translation('ACYMAILING_MENU')); ?>
					</td>
					<td>
						<?php echo $this->elements->acymailing_menu; ?>
					</td>
				</tr>
			</table>
		</div>
	<?php
		}
		if(!empty($this->elements->editor)){
	?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('ACY_EDITOR'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('EDITOR_DESC'), acymailing_translation('ACY_EDITOR'), '', acymailing_translation('ACY_EDITOR')); ?>
				</td>
				<td>
					<?php echo $this->elements->editor; ?>
				</td>
			</tr>
		</table>
	</div>
	<?php
		}
		if(!empty($this->elements->indexFollow)){
	?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('ARCHIVE_SECTION'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<?php
			if(file_exists(ACYMAILING_ROOT.'components'.DS.'com_jcomments'.DS.'jcomments.php')){
				$jcomments = ($this->config->get('comments_feature') == 'jcomments') ? 'checked="checked"' : '';
			}else{
				$jcomments = 'disabled="disabled"';
			}
			if(file_exists(ACYMAILING_ROOT.'components'.DS.'com_rscomments')){
				$rscomments = ($this->config->get('comments_feature') == 'rscomments') ? 'checked="checked"' : '';
			}else{
				$rscomments = 'disabled="disabled"';
			}
			if(file_exists(ACYMAILING_ROOT.'components'.DS.'com_komento')){
				$komento = ($this->config->get('comments_feature') == 'komento') ? 'checked="checked"' : '';
			}else{
				$komento = 'disabled="disabled"';
			}
			if(file_exists(ACYMAILING_ROOT.'plugins'.DS.'content'.DS.'jom_comment_bot.php')){
				$jomcomment = ($this->config->get('comments_feature') == 'jomcomment') ? 'checked="checked"' : '';
			}else{
				$jomcomment = 'disabled="disabled"';
			}
			if($this->config->get('comments_feature') == 'disqus'){
				$disqus = 'checked="checked"';
			}else{
				$disqus = '';
			}
			$no_checked = $this->config->get('comments_feature') ? '' : 'checked="checked"';

			?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('COMMENTS_ENABLED_DESC'), acymailing_translation('COMMENTS_ENABLED'), '', acymailing_translation('COMMENTS_ENABLED')); ?>
				</td>
				<td>
					<div class="controls">
						<input onclick="updateCommentsOption();" name="config[comments_feature]" id="config_comments_feature" value="" <?php echo $no_checked; ?> size="1" type="radio"/>
						<label for="config_comments_feature"><?php echo acymailing_translation('JOOMEXT_NO'); ?></label>
						<?php if('joomla' == 'joomla') { ?>
						<input onclick="updateCommentsOption();" name="config[comments_feature]" id="config_comments_feature_rscomments" value="rscomments" <?php echo $rscomments; ?> size="1" type="radio"/>
						<label for="config_comments_feature_rscomments">RSComments</label>
						<input onclick="updateCommentsOption();" name="config[comments_feature]" id="config_comments_feature_komento" value="komento" <?php echo $komento; ?> size="1" type="radio"/>
						<label for="config_comments_feature_komento">Komento</label>
						<input onclick="updateCommentsOption();" name="config[comments_feature]" id="config_comments_feature_jcomments" value="jcomments" <?php echo $jcomments; ?> size="1" type="radio"/>
						<label for="config_comments_feature_jcomments">jComments</label>
						<input onclick="updateCommentsOption();" name="config[comments_feature]" id="config_comments_feature_jomcomment" value="jomcomment" <?php echo $jomcomment; ?> size="1" type="radio"/>
						<label for="config_comments_feature_jomcomment">jomComment</label>
						<?php } ?>
						<input onclick="updateCommentsOption();" name="config[comments_feature]" id="config_comments_feature_disqus" value="disqus" <?php echo $disqus; ?> size="1" type="radio"/>
						<label for="config_comments_feature_disqus">Disqus</label>
					</div>
					<label for="config_disqus_shortname" style="display:<?php echo empty($disqus) ? "none" : "inline-block"; ?>;" id="config_disqus_shortname_label">Shortname : </label>
					<input type="text" name="config[disqus_shortname]" id="config_disqus_shortname" value="<?php echo $this->config->get('disqus_shortname'); ?>" size="1" style="width:100px;float:none;<?php if(empty($disqus)) echo "display:none;"; ?>"/>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('SUBJECT_DISPLAY_DESC'), acymailing_translation('SUBJECT_DISPLAY'), '', acymailing_translation('SUBJECT_DISPLAY')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[frontend_subject]", '', $this->config->get('frontend_subject', 1)); ?>
				</td>
			</tr>
			<?php if(!ACYMAILING_J16){ ?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('FRONTEND_PDF_DESC'), acymailing_translation('FRONTEND_PDF'), '', acymailing_translation('FRONTEND_PDF')); ?>
					</td>
					<td>
						<?php echo acymailing_boolean("config[frontend_pdf]", '', $this->config->get('frontend_pdf', 0)); ?>
					</td>
				</tr>
			<?php } ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('FRONTEND_PRINT_DESC'), acymailing_translation('FRONTEND_PRINT'), '', acymailing_translation('FRONTEND_PRINT')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[frontend_print]", '', $this->config->get('frontend_print', 0)); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('SHOW_DESCRIPTION_DESC'), acymailing_translation('SHOW_DESCRIPTION'), '', acymailing_translation('SHOW_DESCRIPTION')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[show_description]", '', $this->config->get('show_description', 1)); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('SHOW_FILTER_DESC'), acymailing_translation('SHOW_FILTER'), '', acymailing_translation('SHOW_FILTER')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[show_filter]", '', $this->config->get('show_filter', 1)); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_ORDER'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[show_order]", '', $this->config->get('show_order', 1)); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('SHOW_SENDDATE_DESC'), acymailing_translation('SHOW_SENDDATE'), '', acymailing_translation('SHOW_SENDDATE')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[show_senddate]", '', $this->config->get('show_senddate', 1)); ?>
				</td>
			</tr>
			<?php if(acymailing_level(1)){ ?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_translation_sprintf('SHOW_COLUMN_X', '<b><i>'.acymailing_translation('RECEIVE_VIA_EMAIL').'</i></b>'); ?>
					</td>
					<td>
						<?php echo acymailing_boolean("config[show_receiveemail]", '', $this->config->get('show_receiveemail', 0)); ?>
					</td>
				</tr>
			<?php } ?>
			<tr>
				<td class="acykey" valign="top">
					<?php echo acymailing_tooltip(acymailing_translation('OPEN_POPUP_DESC'), acymailing_translation('OPEN_POPUP'), '', acymailing_translation('OPEN_POPUP')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[open_popup]", '', $this->config->get('open_popup', 1)); ?>
					<div style="margin-top:10px;">
						<?php echo acymailing_translation('CAPTCHA_WIDTH'); ?> <input type="text" name="config[popup_width]" style="float:none;width:40px" value="<?php echo intval($this->config->get('popup_width', 750)); ?>"/> x <?php echo acymailing_translation('CAPTCHA_HEIGHT'); ?> <input type="text" name="config[popup_height]" style="float:none;width:40px"
																																																																		value="<?php echo intval($this->config->get('popup_height', 550)); ?>"/>
					</div>
				</td>
			</tr>
			<tr id="indexfollow">
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('ARCHIVE_INDEX_FOLLOW_DESC'), acymailing_translation('ARCHIVE_INDEX_FOLLOW'), '', acymailing_translation('ARCHIVE_INDEX_FOLLOW')); ?>
				</td>
				<td>
					<?php echo $this->elements->indexFollow; ?>
				</td>
			</tr>
		</table>
	</div>
	<?php } ?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('UNSUB_PAGE'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(str_replace('UNSUB_INTRO', acymailing_translation('UNSUB_INTRO'), $this->config->get('unsub_intro', 'UNSUB_INTRO')), acymailing_translation('UNSUB_INTRODUCTION'), '', acymailing_translation('UNSUB_INTRODUCTION')); ?>
				</td>
				<td>
					<textarea style="width:300px;" rows="5" name="config[unsub_intro]"><?php echo $this->config->get('unsub_intro', 'UNSUB_INTRO'); ?></textarea>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('UNSUB_DISP_CHOICE'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[unsub_dispoptions]", '', $this->config->get('unsub_dispoptions', 1)); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_UNSUB_DISP_OTHER_SUBS'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[unsub_dispothersubs]", '', $this->config->get('unsub_dispothersubs', 0)); ?>
				</td>
			</tr>
			<tr>
				<td valign="top" class="acykey">
					<?php echo acymailing_translation('UNSUB_DISP_SURVEY'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[unsub_survey]", 'onclick="displaySurvey(this.value)"', $this->config->get('unsub_survey', 1));
					$reasons = unserialize($this->config->get('unsub_reasons'));
					?>
					<div id="unsub_reasons_area" class="acymailing_deploy" <?php if(!$this->config->get('unsub_survey', 1)) echo 'style="display:none"'; ?> >
						<div id="unsub_reasons">
							<?php
							foreach($reasons as $i => $oneReason){
								if(preg_match('#^[A-Z_]*$#', $oneReason)){
									$trans = acymailing_translation($oneReason);
								}else{
									$trans = $oneReason;
								}
								echo '<span style="font-size:8px">'.$trans.'</span><br /><input type="text" style="width:300px;margin-bottom: 3px;" value="'.$this->escape($oneReason).'" name="unsub_reasons[]" /><br />';
							} ?>
						</div>
						<a onclick="addUnsubReason();return false;" href='#' title="<?php echo $this->escape(acymailing_translation('FIELD_ADDVALUE')); ?>">
							<button class="acymailing_button_grey" onclick="return false">
								<?php echo acymailing_translation('FIELD_ADDVALUE'); ?>
							</button>
						</a>
					</div>
				</td>
			</tr>
		</table>
	</div>
	<?php if(!empty($this->elements->acyrss_format)){ ?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle">RSS</span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_TYPE'); ?>
				</td>
				<td>
					<?php echo $this->elements->acyrss_format; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_NAME'); ?>
				</td>
				<td>
					<input type="text" style="width:200px" name="config[acyrss_name]" value="<?php echo $this->escape($this->config->get('acyrss_name', '')); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_DESCRIPTION'); ?>
				</td>
				<td>
					<textarea style="width:300px;" rows="5" name="config[acyrss_description]"><?php echo $this->config->get('acyrss_description', ''); ?></textarea>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('MAX_ARTICLE'); ?>
				</td>
				<td>
					<input type="text" style="width:50px" name="config[acyrss_element]" value="<?php echo intval($this->config->get('acyrss_element', 20)); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_ORDER'); ?>
				</td>
				<td>
					<?php echo $this->elements->acyrss_order; ?>
				</td>
			</tr>
		</table>
	</div>
	<?php }
	if(acymailing_level(3) && 'joomla' == 'joomla') include(dirname(__FILE__).DS.'interface_enterprise.php'); ?>
	<script language="javascript" type="text/javascript">
		<!--
		function updateCommentsOption(){
			if(document.getElementById("config_comments_feature_disqus").checked){
				document.getElementById('config_disqus_shortname_label').style.display = 'inline-block';
				document.getElementById('config_disqus_shortname').style.display = '';
			}else{
				document.getElementById('config_disqus_shortname_label').style.display = 'none';
				document.getElementById('config_disqus_shortname').style.display = 'none';
			}
		}
		//-->
	</script>
</div>
views/cpanel/tmpl/subscription.php000060400000025670152455705230013372 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="page-subscription">
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('SUBSCRIPTION'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('ALLOW_VISITOR_DESC'), acymailing_translation('ALLOW_VISITOR'), '', acymailing_translation('ALLOW_VISITOR')); ?>
				</td>
				<td>
					<?php echo $this->elements->allow_visitor; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REQUIRE_CONFIRM_DESC'), acymailing_translation('REQUIRE_CONFIRM'), '', acymailing_translation('REQUIRE_CONFIRM')); ?>
				</td>
				<td>
					<?php echo $this->elements->require_confirmation; ?>
					<?php echo $this->elements->editConfEmail; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('AUTO_SUBSCRIBE_DESC'), acymailing_translation('AUTO_SUBSCRIBE'), '', acymailing_translation('AUTO_SUBSCRIBE')); ?>
				</td>
				<td>
					<input class="inputbox" id="configautosub" name="config[autosub]" type="text" style="width:100px" value="<?php echo $this->escape($this->config->get('autosub', 'None')); ?>">
					<?php echo acymailing_popup(acymailing_completeLink('chooselist', true).'&amp;task=autosub&amp;values='.$this->config->get('autosub', 'None').'&amp;control=config', '<button class="acymailing_button_grey" onclick="return false">'.acymailing_translation('SELECT').'</button>', '', 650, 375, 'linkconfigautosub'); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('ALLOW_MODIFICATION_DESC'), acymailing_translation('ALLOW_MODIFICATION'), '', acymailing_translation('ALLOW_MODIFICATION')); ?>
				</td>
				<td>
					<?php echo $this->elements->allow_modif; ?>
					<?php echo $this->elements->editModifEmail; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('GENERATE_NAME'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[generate_name]", '', $this->config->get('generate_name', 1)); ?>
				</td>
			</tr>
		</table>
	</div>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('NOTIFICATIONS'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_CREATE_DESC'), acymailing_translation('NOTIF_CREATE'), '', acymailing_translation('NOTIF_CREATE')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_created]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_created')); ?>">
					<?php echo $this->elements->edit_notification_created; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_UNSUB_DESC'), acymailing_translation('NOTIF_UNSUB'), '', acymailing_translation('NOTIF_UNSUB')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_unsub]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_unsub')); ?>">
					<?php echo $this->elements->edit_notification_unsub; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_UNSUBALL_DESC'), acymailing_translation('NOTIF_UNSUBALL'), '', acymailing_translation('NOTIF_UNSUBALL')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_unsuball]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_unsuball')); ?>">
					<?php echo $this->elements->edit_notification_unsuball; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_REFUSE_DESC'), acymailing_translation('NOTIF_REFUSE'), '', acymailing_translation('NOTIF_REFUSE')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_refuse]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_refuse')); ?>">
					<?php echo $this->elements->edit_notification_refuse; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_CONTACT_DESC'), acymailing_translation('NOTIF_CONTACT'), '', acymailing_translation('NOTIF_CONTACT')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_contact]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_contact')); ?>">
					<?php echo $this->elements->edit_notification_contact; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_CONTACT_MENU_DESC'), acymailing_translation('NOTIF_CONTACT_MENU'), '', acymailing_translation('NOTIF_CONTACT_MENU')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_contact_menu]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_contact_menu')); ?>">
					<?php echo $this->elements->edit_notification_contact_menu; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('NOTIF_CONFIRM_DESC'), acymailing_translation('NOTIF_CONFIRM'), '', acymailing_translation('NOTIF_CONFIRM')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[notification_confirm]" style="width:200px" value="<?php echo $this->escape($this->config->get('notification_confirm')); ?>">
					<?php echo $this->elements->edit_notification_confirm; ?>
				</td>
			</tr>
		</table>
	</div>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('REDIRECTIONS'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REDIRECTION_CONFIRM_DESC'), acymailing_translation('REDIRECTION_CONFIRM'), '', acymailing_translation('REDIRECTION_CONFIRM')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" id="confirm_redirect" name="config[confirm_redirect]" style="width:250px" value="<?php echo $this->escape($this->config->get('confirm_redirect')); ?>">
				</td>
			</tr>
			<?php $redirectMessageModule = 'joomla' == 'joomla' ? '<br /><br /><i>'.acymailing_translation('REDIRECTION_NOT_MODULE').'</i>' : ''; ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REDIRECTION_SUB_DESC').$redirectMessageModule, acymailing_translation('REDIRECTION_SUB'), '', acymailing_translation('REDIRECTION_SUB')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" id="sub_redirect" name="config[sub_redirect]" style="width:250px" value="<?php echo $this->escape($this->config->get('sub_redirect')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REDIRECTION_MODIF_DESC').$redirectMessageModule, acymailing_translation('REDIRECTION_MODIF'), '', acymailing_translation('REDIRECTION_MODIF')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" id="modif_redirect" name="config[modif_redirect]" style="width:250px" value="<?php echo $this->escape($this->config->get('modif_redirect')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REDIRECTION_UNSUB_DESC').$redirectMessageModule, acymailing_translation('REDIRECTION_UNSUB'), '', acymailing_translation('REDIRECTION_UNSUB')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" id="unsub_redirect" name="config[unsub_redirect]" style="width:250px" value="<?php echo $this->escape($this->config->get('unsub_redirect')); ?>">
				</td>
			</tr>
			<?php if('joomla' == 'joomla') { ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REDIRECTION_MODULE_DESC'), acymailing_translation('REDIRECTION_MODULE'), '', acymailing_translation('REDIRECTION_MODULE')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" id="module_redirect" name="config[module_redirect]" style="width:250px" value="<?php echo $this->escape($this->config->get('module_redirect')); ?>">
				</td>
			</tr>
			<?php } ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_REDIRECT_TAGS'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[redirect_tags]", '', $this->config->get('redirect_tags', 0)); ?>
				</td>
			</tr>
		</table>
	</div>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('GEOLOCATION'); ?></span>
		<script language="JavaScript" type="text/javascript">
			function testAPI(id, newvalue){
				window.document.getElementById(id).className = 'onload';

				var xhr = new XMLHttpRequest();
				xhr.open('GET', '<?php echo acymailing_prepareAjaxURL('toggle'); ?>&task=' + id + '&value=' + newvalue);
				xhr.onload = function(){
					window.document.getElementById(id).innerHTML = xhr.responseText;
					window.document.getElementById(id).className = 'loading';
				};
				xhr.send();
			}
		</script>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('GEOLOCATION_TYPE_DESC'), acymailing_translation('GEOLOCATION_TYPE'), '', acymailing_translation('GEOLOCATION_TYPE')); ?>
				</td>
				<td>
					<?php echo $this->elements->geolocation; ?>
				</td>
			</tr>
			<?php if($this->elements->geoloc_api_key){ ?>
				<tr>
					<td class="acykey">
						<a href="http://ipinfodb.com/register.php" target="_blank"><?php echo acymailing_tooltip(acymailing_translation('GEOLOCATION_API_KEY_DESC'), 'IPInfoDB API key', '', 'IPInfoDB API key'); ?></a>
					</td>
					<td>
						<?php echo $this->elements->geoloc_api_key; ?>
					</td>
				</tr>
				<tr>
					<td colspan="2">

						<span id="testApiKey" class="acymailing_button_grey">
							<i class="acyicon-location"></i>
							<a style="color:#666;text-decoration:none;" href="javascript:void(0);" onclick="testAPI('testApiKey',window.document.getElementById('geoloc_api_key').value)"><?php echo acymailing_translation('GEOLOC_TEST_API_KEY'); ?></a>
						</span>
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<a href="https://www.acyba.com/acymailing/350-acymailing-geolocation.html#accountsetup" target="_blank"><?php echo acymailing_tooltip(acymailing_translation('ACY_GOOGLE_MAP_KEY_DESC'), acymailing_translation('ACY_GOOGLE_MAP_KEY'), '', acymailing_translation('ACY_GOOGLE_MAP_KEY')) ?></a>
					</td>
					<td>
						<?php echo $this->elements->google_map_api_key; ?>
					</td>
				</tr>
			<?php } ?>
		</table>
	</div>
</div>
views/cpanel/tmpl/queue.php000060400000013201152455705230011755 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="page-queue">
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('QUEUE_PROCESS'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<?php if(acymailing_level(1)){ ?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('QUEUE_PROCESSING_DESC'), acymailing_translation('QUEUE_PROCESSING'), '', acymailing_translation('QUEUE_PROCESSING')); ?>
					</td>
					<td>
						<?php echo $this->elements->queue_type; ?>
					</td>
				</tr>
				<tr id="method_auto" <?php echo ($this->config->get('queue_type', 'auto') == 'onlyauto' || $this->config->get('queue_type', 'auto') == 'auto') ? '' : 'style="display:none"'; ?>>
					<td class="acykey">
						<?php echo acymailing_translation('AUTO_SEND_PROCESS'); ?>
					</td>
					<td>
						<?php echo acymailing_translation_sprintf('SEND_X_EVERY_Y', '<input class="inputbox" type="text" name="config[queue_nbmail_auto]" style="width:50px" value="'.intval($this->config->get('queue_nbmail_auto')).'" />', $this->elements->cron_frequency); ?>
					</td>
				</tr>
			<?php } ?>
			<tr id="method_manual" <?php echo ($this->config->get('queue_type', 'auto') == 'onlyauto') ? 'style="display:none"' : ''; ?>>
				<td class="acykey">
					<?php echo acymailing_translation('MANUAL_SEND_PROCESS'); ?>
				</td>
				<td>
					<?php echo acymailing_translation_sprintf('SEND_X_WAIT_Y', '<input class="inputbox" type="text" name="config[queue_nbmail]" style="width:50px" value="'.intval($this->config->get('queue_nbmail')).'" />', $this->elements->queue_pause); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('MAX_NB_TRY_DESC'), acymailing_translation('MAX_NB_TRY'), '', acymailing_translation('MAX_NB_TRY')); ?>
				</td>
				<td>
					<?php echo acymailing_translation_sprintf('CONFIG_TRY', '<input class="inputbox" type="text" name="config[queue_try]" style="width:50px" value="'.intval($this->config->get('queue_try')).'">');
					echo ' '.acymailing_translation_sprintf('CONFIG_TRY_ACTION', $this->bounceaction->display('maxtry', $this->config->get('bounce_action_maxtry'))); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_MAX_EXECUTION_TIME'); ?>
				</td>
				<td>
					<?php
					echo acymailing_translation_sprintf('ACY_TIMEOUT_SERVER', ini_get('max_execution_time')).'<br />';
					$maxexecutiontime = intval($this->config->get('max_execution_time'));
					if(intval($this->config->get('last_maxexec_check')) > (time() - 20)){
						echo acymailing_translation_sprintf('ACY_TIMEOUT_CURRENT', $maxexecutiontime);
					}else{
						if(!empty($maxexecutiontime)){
							echo acymailing_translation_sprintf('ACY_MAX_RUN', $maxexecutiontime).'<br />';
						}
						echo '<span id="timeoutcheck" ><a href="javascript:void(0);" onclick="detectTimeout(\'timeoutcheck\')">'.acymailing_translation('ACY_TIMEOUT_AGAIN').'</a></span>';
					}
					?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_ORDER_SEND_QUEUE'); ?>
				</td>
				<td>
					<?php
					$ordering = array();
					$ordering[] = acymailing_selectOption("subid, ASC", 'subid ASC');
					$ordering[] = acymailing_selectOption("subid, DESC", 'subid DESC');
					$ordering[] = acymailing_selectOption("rand", acymailing_translation('ACY_RANDOM'));
					echo acymailing_select($ordering, 'config[sendorder]', 'size="1" style="width:150px;" onchange="if(this.value == \'rand\'){alert(\''.acymailing_translation('ACY_NO_RAND_FOR_MULTQUEUE').'\')}"', 'value', 'text', $this->config->get('sendorder', 'subid,ASC'));
					?>
				</td>
			</tr>
		</table>
	</div>
	<?php if(acymailing_level(1)){
		include(dirname(__FILE__).DS.'cron.php');
	}
	if(acymailing_level(3)){ ?>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('PRIORITY'); ?></span>
			<table class="acymailing_table" cellspacing="1">
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('NEWS_PRIORITY_DESC'), acymailing_translation('NEWS_PRIORITY'), '', acymailing_translation('NEWS_PRIORITY')); ?>
					</td>
					<td>
						<input class="inputbox" type="text" name="config[priority_newsletter]" style="width:50px" value="<?php echo intval($this->config->get('priority_newsletter', 3)); ?>">
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('FOLLOW_PRIORITY_DESC'), acymailing_translation('FOLLOW_PRIORITY'), '', acymailing_translation('FOLLOW_PRIORITY')); ?>
					</td>
					<td>
						<input class="inputbox" type="text" name="config[priority_followup]" style="width:50px" value="<?php echo intval($this->config->get('priority_followup', 2)); ?>">
					</td>
				</tr>
			</table>
		</div>
	<?php }
	if(acymailing_level(1) && !empty($this->elements->cron_plugins)){ ?>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('PLUGINS'); ?></span>
			<table class="acymailing_table" cellspacing="1">
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('ACY_DAILY_HOUR_PLUGINS_DESC'), acymailing_translation('ACY_DAILY_HOUR_PLUGINS'), '', acymailing_translation('ACY_DAILY_HOUR_PLUGINS')); ?>
					</td>
					<td>
						<?php echo $this->elements->cron_plugins; ?>
					</td>
				</tr>
			</table>
		</div>
	<?php } ?>
</div>
views/cpanel/tmpl/acl.php000060400000004203152455705230011372 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="page-acl">
	<?php echo acymailing_cmsACL(); ?>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('ACY_ACL'); ?></span>
		<?php
		if(!acymailing_level(3)){
			echo '<a target="_blank" href="'.ACYMAILING_REDIRECT.'acymailing-features#mail">'.acymailing_translation('ONLY_FROM_ENTERPRISE').'</a>';
		}else{ ?>
			<table class="acymailing_table" cellspacing="1">
				<?php
				$acltable = acymailing_get('type.acltable');
				$aclcats['campaign'] = array('manage', 'delete', 'copy');
				$aclcats['configuration'] = array('manage');
				$aclcats['extra_fields'] = array('import');
				$aclcats['cpanel'] = array('manage');
				$aclcats['distribution'] = array('manage', 'copy', 'delete');
				$aclcats['lists'] = array('manage', 'delete', 'filter');
				$aclcats['newsletters'] = array('manage', 'delete', 'send', 'schedule', 'spam_test', 'copy', 'lists', 'attachments', 'sender_informations', 'meta_data', 'abtesting', 'inbox_actions');
				$aclcats['queue'] = array('manage', 'delete', 'process');
				$aclcats['simple_sending'] = array('manage');
				$aclcats['autonewsletters'] = array('manage', 'delete');
				$aclcats['tags'] = array('view');
				$aclcats['templates'] = array('view', 'manage', 'delete', 'copy');
				$aclcats['statistics'] = array('manage', 'delete');
				$aclcats['subscriber'] = array('view', 'manage', 'delete', 'export', 'import', 'zohoimport');
				foreach($aclcats as $category => $actions){ ?>
					<tr>
						<td width="185" class="acykey" valign="top">
							<?php $trans = acymailing_translation('ACY_'.strtoupper($category));
							if($trans == 'ACY_'.strtoupper($category)) $trans = acymailing_translation(strtoupper($category));
							echo $trans;
							?>
						</td>
						<td>
							<?php echo $acltable->display($category, $actions) ?>
						</td>
					</tr>
				<?php } ?>
			</table>
		<?php } ?>
	</div>
</div>
views/cpanel/tmpl/default.php000060400000004321152455705230012260 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink('cpanel'); ?>" method="post" name="adminForm" autocomplete="off" id="adminForm">
		<?php acymailing_formOptions();

		echo $this->tabs->startPane('config_tab');

		echo $this->tabs->startPanel(acymailing_translation('MAIL_CONFIG'), 'config_mail');
		include(dirname(__FILE__).DS.'mail.php');
		echo $this->tabs->endPanel();

		echo $this->tabs->startPanel(acymailing_translation('QUEUE_PROCESS'), 'config_queue');
		include(dirname(__FILE__).DS.'queue.php');
		echo $this->tabs->endPanel();

		echo $this->tabs->startPanel(acymailing_translation('SUBSCRIPTION'), 'config_subscription');
		include(dirname(__FILE__).DS.'subscription.php');
		echo $this->tabs->endPanel();

		echo $this->tabs->startPanel(acymailing_translation('INTERFACE'), 'config_interface');
		include(dirname(__FILE__).DS.'interface.php');
		echo $this->tabs->endPanel();

		echo $this->tabs->startPanel(acymailing_translation('SECURITY'), 'config_security');
		include(dirname(__FILE__).DS.'security.php');
		echo $this->tabs->endPanel();

		if(file_exists(dirname(__FILE__).DS.'others.php')){
			echo $this->tabs->startPanel(acymailing_translation('OTHERS'), 'config_others');
			include(dirname(__FILE__).DS.'others.php');
			echo $this->tabs->endPanel();
		}

		echo $this->tabs->startPanel(acymailing_translation('ACCESS_LEVEL'), 'config_acl');
		include(dirname(__FILE__).DS.'acl.php');
		echo $this->tabs->endPanel();

		if(!empty($this->plugins) || !empty($this->integrationplugins)) {
			echo $this->tabs->startPanel(acymailing_translation('PLUGINS'), 'config_plugins');
			include(dirname(__FILE__) . DS . 'plugins.php');
			echo $this->tabs->endPanel();
		}

		echo $this->tabs->startPanel(acymailing_translation('LANGUAGES'), 'config_languages');
		include(dirname(__FILE__).DS.'languages.php');
		echo $this->tabs->endPanel();

		echo $this->tabs->endPane();
		?>

		<div class="clr"></div>

	</form>
</div>
views/cpanel/tmpl/index.html000060400000000054152455705230012117 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/cpanel/tmpl/languages.php000060400000002713152455705230012605 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="config_languages">
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('LANGUAGES') ?></span>
		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_translation('ACY_EDIT'); ?>
				</th>
				<th class="title">
					<?php echo acymailing_translation('ACY_NAME'); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_translation('ACY_ID'); ?>
				</th>
			</tr>
			</thead>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->languages); $i < $a; $i++){
				$row =& $this->languages[$i];
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo $i + 1; ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->edit; ?>
					</td>
					<td>
						<?php echo $row->name; ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->language; ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>
	</div>
</div>
views/cpanel/tmpl/security.php000060400000013061152455705230012504 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="page-security">
	<?php if(acymailing_level(1)){
	}else{ ?>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('CAPTCHA'); ?></span>
			<table class="acymailing_table" cellspacing="1">
				<tr>
					<td class="acykey">
						<?php echo acymailing_translation('ENABLE_CATCHA'); ?>
					</td>
					<td>
						<?php echo acymailing_getUpgradeLink('essential'); ?>
					</td>
				</tr>
			</table>
		</div>
	<?php } ?>

	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('ADVANCED_EMAIL_VERIFICATION'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('CHECK_DOMAIN_EXISTS'); ?>
				</td>
				<td>
					<?php
					if(function_exists('getmxrr')){
						echo acymailing_boolean("config[email_checkdomain]", '', $this->config->get('email_checkdomain', 0));
					}else{
						echo 'Function getmxrr not enabled';
					}
					?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation_sprintf('X_INTEGRATION', 'BotScout'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[email_botscout]", '', $this->config->get('email_botscout', 0)); ?>
					<br/>API Key: <input class="inputbox" type="text" name="config[email_botscout_key]" style="width:100px;float:none;" value="<?php echo $this->escape($this->config->get('email_botscout_key')) ?>"/>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation_sprintf('X_INTEGRATION', 'StopForumSpam'); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[email_stopforumspam]", '', $this->config->get('email_stopforumspam', 0)); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('IPTIMECHECK_DESC'), acymailing_translation('IPTIMECHECK'), '', acymailing_translation('IPTIMECHECK')); ?>
				</td>
				<td>
					<?php echo acymailing_boolean("config[email_iptimecheck]", '', $this->config->get('email_iptimecheck', 0)); ?>
				</td>
			</tr>
		</table>
	</div>

	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('ACY_FILES'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('ALLOWED_FILES_DESC'), acymailing_translation('ALLOWED_FILES'), '', acymailing_translation('ALLOWED_FILES')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[allowedfiles]" style="width:250px" value="<?php echo $this->escape(strtolower(str_replace(' ', '', $this->config->get('allowedfiles')))); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('UPLOAD_FOLDER_DESC'), acymailing_translation('UPLOAD_FOLDER'), '', acymailing_translation('UPLOAD_FOLDER')); ?>
				</td>
				<td>
					<?php $uploadfolder = $this->config->get('uploadfolder');
					if(empty($uploadfolder)) $uploadfolder = ACYMAILING_MEDIA_FOLDER.'/upload'; ?>
					<input class="inputbox" type="text" name="config[uploadfolder]" style="width:250px" value="<?php echo $this->escape($uploadfolder); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('MEDIA_FOLDER_DESC'), acymailing_translation('MEDIA_FOLDER'), '', acymailing_translation('MEDIA_FOLDER')); ?>
				</td>
				<td>
					<?php $mediafolder = $this->config->get('mediafolder', ACYMAILING_MEDIA_FOLDER.'/upload');
					if(empty($mediafolder)) $mediafolder = ACYMAILING_MEDIA_FOLDER.'/upload'; ?>
					<input class="inputbox" type="text" name="config[mediafolder]" style="width:250px" value="<?php echo $this->escape($mediafolder); ?>"/>
				</td>
			</tr>
		</table>
	</div>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('DATABASE_MAINTENANCE'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<?php if(acymailing_level(1)){ ?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('DATABASE_MAINTENANCE_DESC').'<br />'.acymailing_translation('DATABASE_MAINTENANCE_DESC2'), acymailing_translation('DELETE_DETAILED_STATS'), '', acymailing_translation('DELETE_DETAILED_STATS')); ?>
					</td>
					<td>
						<?php echo $this->elements->delete_stats; ?>
					</td>
				</tr>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('DATABASE_MAINTENANCE_DESC').'<br />'.acymailing_translation('DATABASE_MAINTENANCE_DESC2'), acymailing_translation('DELETE_HISTORY'), '', acymailing_translation('DELETE_HISTORY')); ?>
					</td>
					<td>
						<?php echo $this->elements->delete_history; ?>
					</td>
				</tr>
			<?php } ?>
			<?php if(acymailing_level(3)){ ?>
				<tr>
					<td class="acykey">
						<?php echo acymailing_tooltip(acymailing_translation('ACY_DELETE_CHARTS_DESC'), acymailing_translation('ACY_DELETE_CHARTS'), '', acymailing_translation('ACY_DELETE_CHARTS')); ?>
					</td>
					<td>
						<?php echo $this->elements->delete_charts; ?>
					</td>
				</tr>
			<?php } ?>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('DATABASE_INTEGRITY'); ?>
				</td>
				<td>
					<?php echo $this->elements->checkDB; ?>
				</td>
			</tr>
		</table>
	</div>
</div>
views/cpanel/tmpl/plugins.php000060400000011052152455705230012314 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="config_plugins">

	<div class="acyblockoptions" style="width: 42%;min-width: 480px;">
		<span class="acyblocktitle"><?php echo acymailing_translation('PLUG_TAG') ?></span>
		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title">
					<?php echo acymailing_translation('ACY_NAME'); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_translation('ACY_IS_UPDATE') ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_translation('ENABLED'); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_translation('ACY_ID'); ?>
				</th>
			</tr>
			</thead>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->plugins); $i < $a; $i++){
				$row =& $this->plugins[$i];

				$publishedid = 'published_'.$row->id;
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo $i + 1 ?>
					</td>
					<td>
						<a target="_blank" href="<?php echo !ACYMAILING_J16 ? 'index.php?option=com_plugins&amp;view=plugin&amp;client=site&amp;task=edit&amp;cid[]=' : 'index.php?option=com_plugins&amp;task=plugin.edit&amp;extension_id=';
						echo $row->id ?>"><?php echo $row->name; ?></a>
					</td>
					<td style="text-align: center">
						<?php if(empty($row->needUpDate)){
							echo '<a href="#" class="acyicon-apply" onclick="return false;"></a>';
						}else{
							echo '<a href="https://www.acyba.com/acymailing/plugins.html#'.$row->element.'" class="acyicon-cancel" target="_blank"></a>';
						} ?>
					</td>
					<td align="center" style="text-align:center">
						<span id="<?php echo $publishedid ?>" class="loading"><?php echo $this->toggleClass->toggle($publishedid, $row->published, 'plugins') ?></span>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->id; ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>
	</div>
	<div class="acyblockoptions" style="width: 42%;min-width: 480px;">
		<span class="acyblocktitle"><?php echo acymailing_translation('PLUG_INTE') ?></span>
		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title">
					<?php echo acymailing_translation('ACY_NAME'); ?>
				</th>
				<th class="title">
					<?php echo acymailing_translation('ACY_IS_UPDATE') ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_translation('ENABLED'); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_translation('ACY_ID'); ?>
				</th>
			</tr>
			</thead>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->integrationplugins); $i < $a; $i++){
				$row =& $this->integrationplugins[$i];

				$publishedid = 'published_'.$row->id;
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo $i + 1 ?>
					</td>
					<td>
						<a target="_blank" href="<?php echo !ACYMAILING_J16 ? 'index.php?option=com_plugins&amp;view=plugin&amp;client=site&amp;task=edit&amp;cid[]=' : 'index.php?option=com_plugins&amp;task=plugin.edit&amp;extension_id=';
						echo $row->id ?>"><?php echo $row->name; ?></a>
					</td>
					<td style="text-align: center">
						<?php if(empty($row->needUpDate)){
							echo '<a href="#" class="acyicon-apply" target="blank"></a>';
						}else{
							echo '<a href="https://www.acyba.com/acymailing/plugins.html#'.$row->element.'" class="acyicon-cancel" target="_blank"></a>';
						} ?>
					</td>
					<td align="center" style="text-align:center">
						<span id="<?php echo $publishedid ?>" class="spanloading"><?php echo $this->toggleClass->toggle($publishedid, $row->published, 'plugins') ?></span>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->id; ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>
	</div>
	<span class="acymailing_button" style="margin:15px;">
		<i class="acyicon-import"></i>
		<a style="margin-left:5px;color:#fff;text-decoration: none;" href="https://www.acyba.com/acymailing/plugins.html" target="_blank"><?php echo acymailing_translation('MORE_PLUGINS'); ?></a>
	</span>
</div>
views/cpanel/tmpl/mail.php000060400000047423152455705230011570 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="page-mail">
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('SENDER_INFORMATIONS'); ?></span>
		<table class="acymailing_table" cellspacing="1">
			<tr>
				<td width="185" class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('FROM_NAME_DESC'), acymailing_translation('FROM_NAME'), '', acymailing_translation('FROM_NAME')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[from_name]" style="width:200px" value="<?php echo $this->escape($this->config->get('from_name')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('FROM_ADDRESS_DESC'), acymailing_translation('FROM_ADDRESS'), '', acymailing_translation('FROM_ADDRESS')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" onchange="if(this.value.indexOf('@') == -1){ alert('Wrong email address supplied for the <?php echo addslashes(acymailing_translation('FROM_ADDRESS')); ?> field: '+this.value); return false; }" id="fromemail" name="config[from_email]" style="width:200px" value="<?php echo $this->escape($this->config->get('from_email')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REPLYTO_NAME_DESC'), acymailing_translation('REPLYTO_NAME'), '', acymailing_translation('REPLYTO_NAME')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" name="config[reply_name]" style="width:200px" value="<?php echo $this->escape($this->config->get('reply_name')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('REPLYTO_ADDRESS_DESC'), acymailing_translation('REPLYTO_ADDRESS'), '', acymailing_translation('REPLYTO_ADDRESS')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" onchange="if(this.value.indexOf('@') == -1){ alert('Wrong email address supplied for the <?php echo addslashes(acymailing_translation('REPLYTO_ADDRESS')); ?> field: '+this.value); return false; }" id="replyemail" name="config[reply_email]" style="width:200px" value="<?php echo $this->escape($this->config->get('reply_email')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('BOUNCE_ADDRESS_DESC'), acymailing_translation('BOUNCE_ADDRESS'), '', acymailing_translation('BOUNCE_ADDRESS')); ?>
				</td>
				<td>
					<input class="inputbox" type="text" onchange="if(this.value.indexOf('@') == -1){ alert('Wrong email address supplied for the <?php echo addslashes(acymailing_translation('BOUNCE_ADDRESS')); ?> field: '+this.value); return false; }" id="bounceemail" name="config[bounce_email]" style="width:200px" value="<?php echo $this->escape($this->config->get('bounce_email')); ?>">
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_tooltip(acymailing_translation('ADD_NAMES_DESC'), acymailing_translation('ADD_NAMES'), '', acymailing_translation('ADD_NAMES')); ?>
				</td>
				<td>
					<?php echo $this->elements->add_names; ?>
				</td>
			</tr>
		</table>
	</div>

	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('MAIL_CONFIG'); ?></span>

		<div id="mailer_method">
			<?php $mailerMethod = $this->config->get('mailer_method', 'phpmail');
			if(!in_array($mailerMethod, array('elasticemail', 'smtp', 'qmail', 'sendmail', 'phpmail'))) $mailerMethod = 'phpmail';
			?>
			<?php
			if(!ACYMAILING_J30 || ACYMAILING_J40 || 'joomla' == 'wordpress'){
				?>
				<div class="acyblockoptions" style="float: left;">
					<span class="acyblocktitle" style="font-size:13px;"><?php echo acymailing_translation('SEND_SERVER'); ?></span>
					<span><input type="radio" name="config[mailer_method]" onclick="updateMailer('phpmail')" value="phpmail" <?php if($mailerMethod == 'phpmail') echo 'checked="checked"'; ?> id="mailer_phpmail"/><label for="mailer_phpmail"> PHP Mail Function</label></span>
					<span><input type="radio" name="config[mailer_method]" onclick="updateMailer('sendmail')" value="sendmail" <?php if($mailerMethod == 'sendmail') echo 'checked="checked"'; ?> id="mailer_sendmail"/><label for="mailer_sendmail"> SendMail</label></span>
					<span><input type="radio" name="config[mailer_method]" onclick="updateMailer('qmail')" value="qmail" <?php if($mailerMethod == 'qmail') echo 'checked="checked"'; ?> id="mailer_qmail"/><label for="mailer_qmail"> QMail</label></span>
				</div>
				<div class="acyblockoptions" style="float: left; margin-left: 20px;">
					<span class="acyblocktitle" style="font-size:13px;"><?php echo acymailing_translation('SEND_EXTERNAL'); ?></span>
					<span><input type="radio" name="config[mailer_method]" onclick="updateMailer('smtp')" value="smtp" <?php if($mailerMethod == 'smtp') echo 'checked="checked"'; ?> id="mailer_smtp"/><label for="mailer_smtp"> SMTP Server</label></span>
					<span><input type="radio" name="config[mailer_method]" onclick="updateMailer('elasticemail')" value="elasticemail" <?php if($mailerMethod == 'elasticemail') echo 'checked="checked"'; ?> id="mailer_elasticemail"/><label for="mailer_elasticemail"> Elastic Email</label></span>
				</div>
				<?php
			}else{
				$values = array('<div class="acyblockoptions" style="padding:10px;"><span class="acyblocktitle" style="font-size:13px;">'.acymailing_translation('SEND_SERVER').'</span>',
					acymailing_selectOption('phpmail', 'PHP Mail Function'),
					acymailing_selectOption('sendmail', 'SendMail'),
					acymailing_selectOption('qmail', 'QMail'),
					'</div><div class="acyblockoptions" style="padding:10px;"><span class="acyblocktitle" style="font-size:13px;">'.acymailing_translation('SEND_EXTERNAL').'</span>',
					acymailing_selectOption('smtp', 'SMTP Server'),
					acymailing_selectOption('elasticemail', 'Elastic Email'),
					'</div>');
				echo acymailing_radio($values, 'config[mailer_method]', 'onchange="updateMailer(this.value)"', 'value', 'text', $mailerMethod);
			}
			?>
		</div>
		<div style="clear: both;"></div>
		<div id="mailer_method_config">
			<div id="sendmail_config" style="display:none" class="acymailing_deploy">
				<span class="acyblocktitle">SendMail</span>
				<table class="acymailing_table" cellspacing="1">
					<tr>
						<td width="185" class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SENDMAIL_PATH_DESC'), acymailing_translation('SENDMAIL_PATH'), '', acymailing_translation('SENDMAIL_PATH')); ?>
						</td>
						<td>
							<input class="inputbox" type="text" name="config[sendmail_path]" style="width:160px" value="<?php echo $this->config->get('sendmail_path', '/usr/sbin/sendmail') ?>"/>
						</td>
					</tr>
				</table>
			</div>
			<div id="smtp_config" style="display:none" class="acymailing_deploy">
				<span class="acyblocktitle"><?php echo acymailing_translation('SMTP_CONFIG'); ?></span>
				<table class="acymailing_table" cellspacing="1">
					<tr>
						<td width="185" class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SMTP_SERVER_DESC'), acymailing_translation('SMTP_SERVER'), '', acymailing_translation('SMTP_SERVER')); ?>
						</td>
						<td>
							<input class="inputbox" type="text" name="config[smtp_host]" style="width:160px" value="<?php echo $this->escape($this->config->get('smtp_host')); ?>"/>
						</td>
					</tr>
					<tr>
						<td class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SMTP_PORT_DESC'), acymailing_translation('SMTP_PORT'), '', acymailing_translation('SMTP_PORT')); ?>
						</td>
						<td>
							<input class="inputbox" type="text" name="config[smtp_port]" style="width:50px" value="<?php echo $this->escape($this->config->get('smtp_port')); ?>"/>
						</td>
					</tr>
					<tr>
						<td class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SMTP_SECURE_DESC'), acymailing_translation('SMTP_SECURE'), '', acymailing_translation('SMTP_SECURE')); ?>
						</td>
						<td>
							<?php echo $this->elements->smtp_secured; ?>
						</td>
					</tr>
					<tr>
						<td class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SMTP_ALIVE_DESC'), acymailing_translation('SMTP_ALIVE'), '', acymailing_translation('SMTP_ALIVE')); ?>
						</td>
						<td>
							<?php echo $this->elements->smtp_keepalive; ?>
						</td>
					</tr>
					<tr>
						<td class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SMTP_AUTHENT_DESC'), acymailing_translation('SMTP_AUTHENT'), '', acymailing_translation('SMTP_AUTHENT')); ?>
						</td>
						<td>
							<?php echo $this->elements->smtp_auth; ?>
						</td>
					</tr>
					<tr>
						<td class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('USERNAME_DESC'), acymailing_translation('ACY_USERNAME'), '', acymailing_translation('ACY_USERNAME')); ?>
						</td>
						<td>
							<input class="inputbox" autocomplete="off" type="text" name="config[smtp_username]" style="width:200px" value="<?php echo $this->escape(acymailing_punycode($this->config->get('smtp_username'), 'emailToUTF8')); ?>"/>
						</td>
					</tr>
					<tr>
						<td class="acykey">
							<?php echo acymailing_tooltip(acymailing_translation('SMTP_PASSWORD_DESC'), acymailing_translation('SMTP_PASSWORD'), '', acymailing_translation('SMTP_PASSWORD')); ?>
						</td>
						<td>
							<input class="inputbox" autocomplete="off" type="text" name="config[smtp_password]" style="width:200px" value="<?php echo str_repeat('*', strlen($this->config->get('smtp_password'))); ?>"/>
						</td>
					</tr>
				</table>
				<?php echo $this->toggleClass->toggleText('guessport', '', 'config', acymailing_translation('ACY_GUESSPORT')); ?>
			</div>
			<div id="elasticemail_config" style="display:none" class="acymailing_deploy">
				<span class="acyblocktitle">Elastic Email</span>
				<?php echo acymailing_translation_sprintf('SMTP_DESC', 'Elastic Email'); ?>

				<table class="acymailing_table" cellspacing="1">
					<tr>
						<td width="185" class="acykey">
							<?php echo acymailing_translation('ACY_USERNAME'); ?>
						</td>
						<td>
							<input class="inputbox" autocomplete="off" type="text" name="config[elasticemail_username]" style="width:160px" value="<?php echo $this->config->get('elasticemail_username', '') ?>"/>
						</td>
					</tr>
					<tr>
						<td width="185" class="acykey">
							API Key
						</td>
						<td>
							<input class="inputbox" autocomplete="off" type="text" name="config[elasticemail_password]" style="width:160px" value="<?php echo str_repeat('*', strlen($this->config->get('elasticemail_password'))); ?>"/>
						</td>
					</tr>
					<tr>
						<td width="185" class="acykey">
							<?php echo acymailing_translation('SMTP_PORT'); ?>
						</td>
						<td>
							<?php
							$elasticPort = array();
							$elasticPort[] = acymailing_selectOption('25', 25);
							$elasticPort[] = acymailing_selectOption('2525', 2525);
							$elasticPort[] = acymailing_selectOption('rest', 'REST API');
							echo acymailing_radio($elasticPort, 'config[elasticemail_port]', 'size="1" ', 'value', 'text', $this->config->get('elasticemail_port', 'rest'));
							?>
						</td>
					</tr>
				</table>
				<?php echo acymailing_translation('NO_ACCOUNT_YET').' <a href="'.ACYMAILING_REDIRECT.'elasticemail" target="_blank" >'.acymailing_translation('CREATE_ACCOUNT').'</a>'; ?>
				<?php echo '<br /><a href="'.ACYMAILING_REDIRECT.'smtp_services" target="_blank">'.acymailing_translation('TELL_ME_MORE').'</a>'; ?>
			</div>
		</div>
	</div>
	<div class="onelineblockoptions">
		<span class="acyblocktitle"><?php echo acymailing_translation('ACY_SERVER_CONFIGURATION'); ?></span>
		<table width="100%">
			<tr>
				<td width="50%" valign="top">
					<table class="acymailing_table" cellspacing="1">
						<?php if(!empty($this->elements->special_chars)){ ?>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('ACY_SPECIAL_CHARS_DESC'), acymailing_translation('ACY_SPECIAL_CHARS'), '', acymailing_translation('ACY_SPECIAL_CHARS')); ?>
							</td>
							<td>
								<?php echo $this->elements->special_chars; ?>
							</td>
						</tr>
						<?php } ?>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('ENCODING_FORMAT_DESC'), acymailing_translation('ENCODING_FORMAT'), '', acymailing_translation('ENCODING_FORMAT')); ?>
							</td>
							<td>
								<?php echo $this->elements->encoding_format; ?>
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('CHARSET_DESC'), acymailing_translation('CHARSET'), '', acymailing_translation('CHARSET')); ?>
							</td>
							<td>
								<?php echo $this->elements->charset; ?>
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('WORD_WRAPPING_DESC'), acymailing_translation('WORD_WRAPPING'), '', acymailing_translation('WORD_WRAPPING')); ?>
							</td>
							<td>
								<input class="inputbox" type="text" name="config[word_wrapping]" style="width:50px" value="<?php echo $this->config->get('word_wrapping', 0) ?>">
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('ACY_SSLCHOICE_DESC'), acymailing_translation('ACY_SSLCHOICE'), '', acymailing_translation('ACY_SSLCHOICE')); ?>
							</td>
							<td>
								<?php echo $this->elements->ssl_links; ?>
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('EMBED_IMAGES_DESC'), acymailing_translation('EMBED_IMAGES'), '', acymailing_translation('EMBED_IMAGES')); ?>
							</td>
							<td>
								<?php echo $this->elements->embed_images; ?>
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('EMBED_ATTACHMENTS_DESC'), acymailing_translation('EMBED_ATTACHMENTS'), '', acymailing_translation('EMBED_ATTACHMENTS')); ?>
							</td>
							<td>
								<?php echo $this->elements->embed_files; ?>
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('MULTIPLE_PART_DESC'), acymailing_translation('MULTIPLE_PART'), '', acymailing_translation('MULTIPLE_PART')); ?>
							</td>
							<td>
								<?php echo $this->elements->multiple_part; ?>
							</td>
						</tr>
						<tr>
							<td class="acykey">
								<?php echo acymailing_tooltip(acymailing_translation('ACY_DKIM_DESC'), acymailing_translation('ACY_DKIM'), '', acymailing_translation('ACY_DKIM')); ?>
							</td>
							<td>
								<?php echo $this->elements->dkim; ?>
							</td>
						</tr>
					</table>
				</td>
			</tr>
			<tr>
				<td valign="top">

					<?php
					if(acymailing_level(1)){
						?>
						<div class="acyblockoptions acymailing_deploy" id="dkim_config" <?php echo ($this->config->get('dkim', 0) == 1) ? 'style="display:block"' : 'style="display:none"' ?> >
							<span class="acyblocktitle"><?php echo acymailing_translation('ACY_DKIM'); ?></span>
							<?php
							$domain = $this->config->get('dkim_domain', '');
							if(empty($domain)){
								$domain = preg_replace(array('#^https?://(www\.)*#i', '#^www\.#'), '', ACYMAILING_LIVE);
								$domain = substr($domain, 0, strpos($domain, '/'));
							}

							if(($this->config->get('dkim_selector', 'acy') != 'acy' && $this->config->get('dkim_selector', 'acy') != '') || $this->config->get('dkim_passphrase', '') != '' || acymailing_getVar('int', 'dkimletme')){
								?>
								<table class="acymailing_table" cellspacing="1">
									<tr>
										<td width="185" class="acykey">
											<?php echo acymailing_translation('DKIM_DOMAIN'); ?>
										</td>
										<td>
											<input class="inputbox" type="text" id="dkim_domain" name="config[dkim_domain]" style="width:160px" value="<?php echo $this->escape($domain); ?>"/> *
										</td>
									</tr>
									<tr>
										<td width="185" class="acykey">
											<?php echo acymailing_translation('DKIM_SELECTOR'); ?>
										</td>
										<td>
											<input class="inputbox" type="text" id="dkim_selector" name="config[dkim_selector]" style="width:160px" value="<?php echo $this->escape($this->config->get('dkim_selector', 'acy')); ?>"/> *
										</td>
									</tr>
									<tr>
										<td width="185" class="acykey">
											<?php echo acymailing_translation('DKIM_PRIVATE'); ?>
										</td>
										<td>
											<textarea cols="65" rows="16" id="dkim_private" style="width:460px;font-size:10px;" name="config[dkim_private]"><?php echo $this->config->get('dkim_private', ''); ?></textarea> *
										</td>
									</tr>
									<tr>
										<td width="185" class="acykey">
											<?php echo acymailing_translation('DKIM_PASSPHRASE'); ?>
										</td>
										<td>
											<input class="inputbox" type="text" id="dkim_passphrase" name="config[dkim_passphrase]" style="width:160px" value="<?php echo $this->escape($this->config->get('dkim_passphrase', '')); ?>"/>
										</td>
									</tr>
									<tr>
										<td width="185" class="acykey">
											<?php echo acymailing_translation('DKIM_IDENTITY'); ?>
										</td>
										<td>
											<input class="inputbox" type="text" id="dkim_identity" name="config[dkim_identity]" style="width:160px" value="<?php echo $this->escape($this->config->get('dkim_identity', '')); ?>"/>
										</td>
									</tr>
									<tr>
										<td width="185" class="acykey">
											<?php echo acymailing_translation('DKIM_PUBLIC'); ?>
										</td>
										<td>
											<textarea cols="65" rows="5" id="dkim_public" style="width:460px;font-size:10px;" name="config[dkim_public]"><?php echo $this->config->get('dkim_public', ''); ?></textarea>
										</td>
									</tr>
								</table>
							<?php }else{
								if($this->config->get('dkim_private', '') == '' || $this->config->get('dkim_public', '') == ''){
									echo 'Please save your AcyMailing configuration page first';
									acymailing_addScript(false, 'https://www.acyba.com/index.php?option=com_updateme&ctrl=generatedkim');
									?>
									<input type="hidden" id="dkim_private" name="config[dkim_private]"/>
									<input type="hidden" id="dkim_public" name="config[dkim_public]"/>

									<?php
								}else{
									$publicKey = trim(str_replace(array('acy._domainkey	IN	TXT	"', 'v=DKIM1;k=rsa;g=*;s=email;h=sha1;t=s;p=', '-----BEGIN PUBLIC KEY-----', '-----END PUBLIC KEY-----', "\n"), '', $this->config->get('dkim_public', '')), '"');

									echo acymailing_translation_sprintf('DKIM_CONFIGURE', '<input class="inputbox" type="text" id="dkim_domain" name="config[dkim_domain]" style="width:120px;" value="'.$this->escape($domain).'" />'); ?><br/>
									<?php echo acymailing_translation('DKIM_KEY') ?> <input type="text" readonly="readonly" onclick="select();" style="width:80px;font-size:10px;" value="acy._domainkey"/>
									<br/><?php echo acymailing_translation('DKIM_VALUE') ?> <input type="text" readonly="readonly" onclick="select();" style="width:220px;font-size:10px;" value="v=DKIM1;s=email;t=s;p=<?php echo $this->escape($publicKey); ?>"/>
									<br/><input type="checkbox" value="1" id="dkimletme" name="dkimletme"/> <label for="dkimletme"><?php echo acymailing_translation('DKIM_LET_ME'); ?></label>
									<?php
								}
								echo '<br />';
							} ?>
							<span class="acymailing_button_grey">
								<i class="acyicon-help"></i>
								<a style="color:#666;text-decoration: none;" href="https://www.acyba.com/acymailing/156-acymailing-dkim.html" target="_blank"><?php echo acymailing_translation('ACY_HELP'); ?></a>
							</span>
						</div>
						<?php
					}
					?>
				</td>
			</tr>
		</table>
	</div>
</div>
views/cpanel/index.html000060400000000054152455705230011143 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/cpanel/view.html.php000060400000074551152455705230011611 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class CpanelViewCpanel extends acymailingView{
	
	function display($tpl = null){
		$toggleClass = acymailing_get('helper.toggle');
		$config = acymailing_config();

		$language = acymailing_getLanguageTag();

		$styleRemind = 'float:right;margin-right:30px;position:relative;';
		$loadLink = acymailing_popup(acymailing_completeLink('file', true).'&amp;task=latest&amp;code='.$language, acymailing_translation('LOAD_LATEST_LANGUAGE'), '', 800, 500, '', ' onclick="window.document.getElementById(\'acymailing_messages_warning\').style.display = \'none\';return true;" ');
		if(!file_exists(acymailing_getLanguagePath(ACYMAILING_ROOT, $language).DS.$language.'.com_acymailing.ini')){
			if($config->get('errorlanguagemissing', 1)){
				$notremind = '<small style="'.$styleRemind.'">'.$toggleClass->delete('acymailing_messages_warning', 'errorlanguagemissing_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>';
				acymailing_enqueueMessage(acymailing_translation('MISSING_LANGUAGE').' '.$loadLink.' '.$notremind, 'warning');
			}
		}elseif(version_compare(acymailing_translation('ACY_LANG_VERSION'), $config->get('version'), '<')){
			if($config->get('errorlanguageupdate', 1)){
				$notremind = '<small style="'.$styleRemind.'">'.$toggleClass->delete('acymailing_messages_warning', 'errorlanguageupdate_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>';
				acymailing_enqueueMessage(acymailing_translation('UPDATE_LANGUAGE').' '.$loadLink.' '.$notremind, 'warning');
			}
		}

		if($config->get('wronghttpsoption', 1) && $config->get('ssl_links', 1) == 0){
			if((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] == 443) {
				$notremind = '<small style="'.$styleRemind.'">'.$toggleClass->delete('acymailing_messages_error', 'wronghttpsoption_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>';
				acymailing_enqueueMessage('If your site uses HTTPS on front-end, please make sure to turn On the "'.acymailing_translation('ACY_SSLCHOICE').'" option otherwise the links in your newsletters may not work properly (the unsubscribe link for instance).'.$notremind, 'error');
			}
		}

		$indexes = array('listsub', 'stats', 'list', 'mail', 'userstats', 'urlclick', 'history', 'template', 'queue', 'subscriber');
		$addIndexes = array('We recently optimized our database...');
		foreach($indexes as $oneTable){
			if($config->get('optimize_'.$oneTable, 1)) continue;
			$addIndexes[] = 'Please '.$toggleClass->toggleText('addindex', $oneTable, 'config', 'click here').' to add indexes on the '.$oneTable.' table';
		}
		if(count($addIndexes) > 1) acymailing_enqueueMessage($addIndexes, 'warning');



		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->custom('test', acymailing_translation('SEND_TEST'), 'send', false);
		$acyToolbar->divider();
		$acyToolbar->addButtonOption('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
		$acyToolbar->save();
		$acyToolbar->cancel();
		$acyToolbar->divider();
		$acyToolbar->help('config');
		$acyToolbar->setTitle(acymailing_translation('ACY_CONFIGURATION'), 'cpanel');
		$acyToolbar->display();

		$elements = new stdClass();
		$elements->add_names = acymailing_boolean("config[add_names]", '', $config->get('add_names', true));
		$elements->embed_images = acymailing_boolean("config[embed_images]", '', $config->get('embed_images', 0));
		$elements->embed_files = acymailing_boolean("config[embed_files]", '', $config->get('embed_files', 1));
		$elements->multiple_part = acymailing_boolean("config[multiple_part]", '', $config->get('multiple_part', 0));

		$mailerMethods = array('elasticemail', 'smtp', 'sendmail');
		$js = "function updateMailer(mailermethod){"."\n";
		foreach($mailerMethods as $oneMethod){
			$js .= " window.document.getElementById('".$oneMethod."_config').style.display = 'none'; "."\n";
		}
		$js .= "if(window.document.getElementById(mailermethod+'_config')) {window.document.getElementById(mailermethod+'_config').style.display = 'block';} }";
		$js .= 'document.addEventListener("DOMContentLoaded", function(){ updateMailer(\''.$config->get('mailer_method', 'phpmail').'\'); });';
		acymailing_addScript(true, $js);

		$encodingval = array();
		$encodingval[] = acymailing_selectOption('binary', 'Binary');
		$encodingval[] = acymailing_selectOption('quoted-printable', 'Quoted-printable');
		$encodingval[] = acymailing_selectOption('7bit', '7 Bit');
		$encodingval[] = acymailing_selectOption('8bit', '8 Bit');
		$encodingval[] = acymailing_selectOption('base64', 'Base 64');
		$elements->encoding_format = acymailing_select($encodingval, "config[encoding_format]", 'size="1" style="width:150px;"', 'value', 'text', $config->get('encoding_format', 'base64'));

		$charset = acymailing_get('type.charset');
		$elements->charset = $charset->display("config[charset]", $config->get('charset', 'UTF-8'));

		$securedVals = array();
		$securedVals[] = acymailing_selectOption('', '- - -');
		$securedVals[] = acymailing_selectOption('ssl', 'SSL');
		$securedVals[] = acymailing_selectOption('tls', 'TLS');
		$elements->smtp_secured = acymailing_select($securedVals, "config[smtp_secured]", 'size="1" style="width:100px;"', 'value', 'text', $config->get('smtp_secured'));

		$elements->smtp_auth = acymailing_boolean("config[smtp_auth]", '', $config->get('smtp_auth', 0));
		$elements->smtp_keepalive = acymailing_boolean("config[smtp_keepalive]", '', $config->get('smtp_keepalive', 1));

		$elements->allow_visitor = acymailing_boolean("config[allow_visitor]", '', $config->get('allow_visitor', 1));

		$elements->subscription_message = acymailing_boolean("config[subscription_message]", '', $config->get('subscription_message', 1));
		$elements->confirmation_message = acymailing_boolean("config[confirmation_message]", '', $config->get('confirmation_message', 1));
		$elements->unsubscription_message = acymailing_boolean("config[unsubscription_message]", '', $config->get('unsubscription_message', 1));
		$elements->welcome_message = acymailing_boolean("config[welcome_message]", '', $config->get('welcome_message', 1));
		$elements->unsub_message = acymailing_boolean("config[unsub_message]", '', $config->get('unsub_message', 1));
		$elements->confirm_message = acymailing_boolean("config[confirm_message]", '', $config->get('confirm_message', 0));

		if(acymailing_level(1)){
			$js = "function updateDKIM(dkimval){
						if(dkimval == 1){document.getElementById('dkim_config').style.display = 'block';}
						else{document.getElementById('dkim_config').style.display = 'none';}
						};";
			acymailing_addScript(true, $js);
			if(function_exists('openssl_sign')){
				$elements->dkim = acymailing_boolean("config[dkim]", 'onclick="updateDKIM(this.value)"', $config->get('dkim', 0));
			}else{
				$elements->dkim = '<input type="hidden" name="config[dkim]" value="0" />PHP Extension openssl not enabled';
			}

			$js = "function updateQueueProcess(newvalue){";
			$js .= "if(newvalue == 'onlyauto') {window.document.getElementById('method_auto').style.display = ''; window.document.getElementById('method_manual').style.display = 'none';}";
			$js .= "if(newvalue == 'auto') {window.document.getElementById('method_auto').style.display = ''; window.document.getElementById('method_manual').style.display = '';}";
			$js .= "if(newvalue == 'manual') {window.document.getElementById('method_auto').style.display = 'none'; window.document.getElementById('method_manual').style.display = '';}";
			$js .= '};';

			acymailing_addScript(true, $js);

			$queueType = array();
			$queueType[] = acymailing_selectOption('onlyauto', acymailing_translation('AUTO_ONLY'));
			$queueType[] = acymailing_selectOption('auto', acymailing_translation('AUTO_MAN'));
			$queueType[] = acymailing_selectOption('manual', acymailing_translation('MANUAL_ONLY'));
			$elements->queue_type = acymailing_radio($queueType, "config[queue_type]", 'onclick="updateQueueProcess(this.value);"', 'value', 'text', $config->get('queue_type', 'auto'));
		}else{
			$elements->dkim = acymailing_getUpgradeLink('essential');
		}

		$js = 'var selectedHTTPS = '.($config->get('ssl_links', 0) == 0 ? 'false;' : 'true;').'
		function confirmHTTPS(element){
			var clickedHTTPS = (element == 1);
			if(clickedHTTPS == selectedHTTPS) return true;
			if(clickedHTTPS){
				var cnfrm = confirm(\''.str_replace("'", "\'", acymailing_translation('ACY_SSLCHOICE_CONFIRMATION')).'\');
				if(!cnfrm){';
		if(ACYMAILING_J30){
			$js .= 'var labels = document.getElementById(\'config_ssl_linksfieldset\').getElementsByTagName(\'label\');
					if(labels[0].hasClass(\'btn-success\')){
						labels[1].click();
						return true;
					}else{
						labels[0].click();
						return true;
					}';
		}else{
			$js .= 'return false;';
		}
		$js .= '}
			}
			selectedHTTPS = clickedHTTPS;
			return true;
		}';
		acymailing_addScript(true, $js);
		$elements->ssl_links = acymailing_boolean("config[ssl_links]", 'onclick="return confirmHTTPS(this.value);"', $config->get('ssl_links', 0));

		$delayTypeManual = acymailing_get('type.delay');
		$elements->queue_pause = $delayTypeManual->display('config[queue_pause]', $config->get('queue_pause'), 0);
		$delayTypeAuto = acymailing_get('type.delay');
		$delayTypeAuto->onChange = "window.document.getElementById('autoFrequencyWarning').style.display='inline';";
		$onChangeMsg = '<span style="display:none;color:red;" id="autoFrequencyWarning">'.acymailing_translation('ACY_CRON_CHANGE_FREQUENCY_WARNING').'</span>';
		$elements->cron_frequency = $delayTypeAuto->display('config[cron_frequency]', $config->get('cron_frequency'), 2).$onChangeMsg;

		$js = "function detectTimeout(id){
				try{
					window.document.getElementById(id).className = 'onload';
					window.document.getElementById(id).innerHTML = '".str_replace("'", "\'", acymailing_translation('ACY_CLOSE_TIMEOUT'))."';

					var xhr = new XMLHttpRequest();
					xhr.open('GET', '".acymailing_prepareAjaxURL('stats')."&task=detecttimeout&seckey=".$config->get('security_key')."');
					xhr.onload = function(){
						document.getElementById(id).innerHTML = 'Done!';
						window.document.getElementById(id).className = 'loading';
					}
					xhr.send();
				}catch(err){
					alert('Could not load the max execution time value : '+err);
				}
				return;
		}";
		$maxexecutiontime = $config->get('max_execution_time');
		if(empty($maxexecutiontime) && (intval($config->get('last_maxexec_check')) < (time() - 60))){
			$js .= 'window.addEventListener("load", function() {detectTimeout(\'timeoutcheck\')});';
		}
		acymailing_addScript(true, $js);

		$script = '';

		$cssval = array('css_frontend' => 'component', 'css_module' => 'module', 'css_backend' => 'backend');
		foreach($cssval as $configval => $type){
			$myvals = array();
			$myvals[] = acymailing_selectOption('', acymailing_translation('ACY_NONE'));

			if($configval == 'css_backend'){
				$myvals[] = acymailing_selectOption('backend_custom', acymailing_translation('ACY_CUSTOM'));
				$editFileName = $config->get('css_backend', 'default');
			}else{
				$regex = '^'.$type.'_([-_a-z0-9]*)\.css$';
				$allCSSFiles = acymailing_getFiles(ACYMAILING_MEDIA.'css', $regex);

				$family = '';
				foreach($allCSSFiles as $oneFile){
					preg_match('#'.$regex.'#i', $oneFile, $results);
					$fileName = str_replace('default_', '', $results[1]);
					$fileNameArray = explode('_', $fileName);
					if(count($fileNameArray) == 2){
						if($fileNameArray[0] != $family){
							if(!empty($family)) $myvals[] = acymailing_selectOption('</OPTGROUP>');
							$family = $fileNameArray[0];
							$myvals[] = acymailing_selectOption('<OPTGROUP>', ucfirst($family));
						}
						unset($fileNameArray[0]);
						$fileName = implode('_', $fileNameArray);
					}

					$fileName = ucwords(str_replace('_', ' ', $fileName));
					$myvals[] = acymailing_selectOption($results[1], $fileName);
				}
				if(!empty($family)) $myvals[] = acymailing_selectOption('</OPTGROUP>');
				$editFileName = $type.'_'.$config->get($configval, 'default');
			}

			$currentVal = $config->get($configval, 'default');
			$aStyle = empty($currentVal) ? ' style="display:none" ' : '';
			$js = 'onchange="updateCSSLink(\''.$configval.'\',\''.$type.'\',this.value);"';

			$elements->$configval = acymailing_select($myvals, 'config['.$configval.']', 'class="inputbox" size="1" '.$js, 'value', 'text', $config->get($configval, 'default'), $configval.'_choice');
			$linkEdit = acymailing_completeLink("file", true)."&amp;task=css&amp;var=".$configval."&amp;file='+".$configval."+'";
			$elements->$configval .= ' '.acymailing_popup($linkEdit, '<i class="acyicon-edit" style="margin: 5px 5px 0px 5px; display: inline-block;"></i>', '', 800, 500, $configval.'_link', $aStyle);

			$script .= ' var '.$configval.' = "'.$editFileName.'"; ';
		}

		$script .= "
		function updateCSSLink(myid,type,newval){
			if(newval){
				document.getElementById(myid+'_link').style.display = '';
			}else{
				document.getElementById(myid+'_link').style.display = 'none';
			}
			
			if(myid == 'css_backend') filename = newval;
			else filename = type+'_'+newval;
			
			document.getElementById(myid+'_link').href = '".acymailing_completeLink('file&task=css', true)."&var='+myid+'&file='+filename;
			window[myid] = filename;
		}";
		acymailing_addScript(true, $script);

		$elements->colortype = acymailing_get('type.color');

		$link = 'index.php?option=com_acymailing&amp;tmpl=component&amp;ctrl=email&amp;task=edit&amp;mailid=send-in-article';
		$elements->edit_send_in_article = acymailing_popup($link, '<button class="acymailing_button_grey" onclick="return false">'.acymailing_translation('ACY_EDIT_ARTICLE_EMAIL').'</button>', '', 900, 700);

		if(acymailing_level(1)){
			$trackingMode = $config->get('trackingsystem', 'acymailing');
			$tracking_system = '<input type="checkbox" name="config[trackingsystem][]" id="trackingsystem[0]" value="acymailing" style="margin-left:10px" '.(stripos($trackingMode, 'acymailing') !== false ? 'checked="checked"' : '').'/> <label for="trackingsystem[0]">Acymailing</label>';
			$tracking_system .= '<input type="checkbox" name="config[trackingsystem][]" id="trackingsystem[1]" value="google" style="margin-left:10px;" '.(stripos($trackingMode, 'google') !== false ? 'checked="checked"' : '').'/> <label for="trackingsystem[1]">Google Analytics</label>';
			$tracking_system .= '<input type="hidden" name="config[trackingsystem][]" value="1"/>';
			$tracking_system_external_website = acymailing_boolean("config[trackingsystemexternalwebsite]", ' id="trackingsystemexternalwebsite"', $config->get('trackingsystemexternalwebsite', 1));
		}else{
			$tracking_system = acymailing_getUpgradeLink('essential');
			$tracking_system_external_website = acymailing_getUpgradeLink('essential');
		}
		$elements->tracking_system = $tracking_system;
		$elements->tracking_system_external_website = $tracking_system_external_website;

		if(acymailing_level(3)){
			$geolocAvailable = true;
			$geolocation = '<input type="hidden" name="config[geolocation]" value="0"/>';
			$geoloc_api_key = '';
			$google_map_api_key = '';
			if(!function_exists('curl_init')){
				$geolocAvailable = false;
				$geolocation .= 'The AcyMailing geolocation plugin needs the CURL library installed but it seems that it is not available on your server. Please contact your web hosting to set it up.';
			}
			if(!function_exists('json_decode')){
				if(!$geolocAvailable) $geolocation .= '<br />';
				$geolocAvailable = false;
				$geolocation .= 'The AcyMailing geolocation plugin can only work with PHP 5.2 at least. Please ask your web hosting to update your PHP version.';
			}

			if($geolocAvailable){
				$geoloc = $config->get('geolocation', '');
				$geolocation = '<span style="white-space:nowrap"><input type="checkbox" name="config[geolocation][]" id="geolocation_0" value="creation" style="margin-left:10px" '.(stripos($geoloc, 'creation') !== false ? 'checked="checked"' : '').'/> <label for="geolocation_0">'.acymailing_translation('ON_USER_CREATE').'</label></span>';
				$geolocation .= ' <span style="white-space:nowrap"><input type="checkbox" name="config[geolocation][]" id="geolocation_1" value="modify" style="margin-left:10px;" '.(stripos($geoloc, 'modify') !== false ? 'checked="checked"' : '').'/> <label for="geolocation_1">'.acymailing_translation('ON_USER_CHANGE').'</label></span>';
				$geolocation .= ' <span style="white-space:nowrap"><input type="checkbox" name="config[geolocation][]" id="geolocation_2" value="confirm" style="margin-left:10px;" '.(stripos($geoloc, 'confirm') !== false ? 'checked="checked"' : '').'/> <label for="geolocation_2">'.acymailing_translation('GEOLOC_CONFIRM_SUB').'</label></span>';
				$geolocation .= ' <span style="white-space:nowrap"><input type="checkbox" name="config[geolocation][]" id="geolocation_3" value="clic" style="margin-left:10px;" '.(stripos($geoloc, 'clic') !== false ? 'checked="checked"' : '').'/> <label for="geolocation_3">'.acymailing_translation('ON_USER_CLICK').'</label></span>';
				$geolocation .= ' <span style="white-space:nowrap"><input type="checkbox" name="config[geolocation][]" id="geolocation_4" value="open" style="margin-left:10px;" '.(stripos($geoloc, 'open') !== false ? 'checked="checked"' : '').'/> <label for="geolocation_4">'.acymailing_translation('ON_OPEN_NEWS').'</label></span>';
				$geolocation .= ' <span style="white-space:nowrap"><input type="checkbox" name="config[geolocation][]" id="geolocation_5" value="unsubscription" style="margin-left:10px;" '.(stripos($geoloc, 'unsubscription') !== false ? 'checked="checked"' : '').'/> <label for="geolocation_5">'.acymailing_translation('GEOLOC_UNSUB').'</label></span>';
				$geolocation .= '<input type="hidden" name="config[geolocation][]" value="1"/>';
				$geoloc_api_key = '<input class="inputbox" type="text" id="geoloc_api_key" name="config[geoloc_api_key]" style="width:450px" value="'.$this->escape($config->get('geoloc_api_key', '')).'">';
				$google_map_api_key = '<input class"inputbox" type="text" id="google_map_api_key" name="config[google_map_api_key]" style="width:450px" value="'.$this->escape($config->get('google_map_api_key', '')).'">';
			}
		}else{
			$geolocation = acymailing_getUpgradeLink('enterprise');
			$geoloc_api_key = false;
			$google_map_api_key = false;
		}
		$elements->geolocation = $geolocation;
		$elements->geoloc_api_key = $geoloc_api_key;
		$elements->google_map_api_key = $google_map_api_key;


		$link = acymailing_completeLink('email', true).'&amp;task=edit&amp;mailid=';
		$button = '<button class="acymailing_button_grey" onclick="return false">'.acymailing_translation('EDIT_NOTIFICATION_MAIL').'</button>';
		
		$elements->editConfEmail = acymailing_popup($link.'confirmation', '<button class="acymailing_button_grey" onclick="return false">'.acymailing_translation('EDIT_CONF_MAIL').'</button>', '', 800, 500, 'confirmemail');
		
		$elements->edit_notification_created = acymailing_popup($link.'notification_created', $button);
		$elements->edit_notification_refuse = acymailing_popup($link.'notification_refuse', $button);
		$elements->edit_notification_unsuball = acymailing_popup($link.'notification_unsuball', $button);
		$elements->edit_notification_unsub = acymailing_popup($link.'notification_unsub', $button);
		$elements->edit_notification_contact = acymailing_popup($link.'notification_contact', $button);
		$elements->edit_notification_contact_menu = acymailing_popup($link.'notification_contact_menu', $button);
		$elements->edit_notification_confirm = acymailing_popup($link.'notification_confirm', $button);
		$elements->editModifEmail = acymailing_popup($link.'modif', $button, '', 800, 500, 'modifemail');

		$link = acymailing_completeLink('cpanel', true).'&amp;task=checkDB';
		$elements->checkDB = acymailing_popup($link, '<button class="acymailing_button_grey" onclick="return false">'.acymailing_translation('DATABASE_INTEGRITY').'</button>');

		$js = "function addUnsubReason(){
			var input = document.createElement('input');
			input.name = 'unsub_reasons[]';
			input.style.width = '300px';
			input.style.margin = '3px 0px';
			input.type = 'text';
			document.getElementById('unsub_reasons').appendChild(input);
			var br = document.createElement('br');
			document.getElementById('unsub_reasons').appendChild(br);
		}
		function displaySurvey(surveyval){
			if(surveyval == 1){
				document.getElementById('unsub_reasons_area').style.display = 'block';
			}else{
				document.getElementById('unsub_reasons_area').style.display = 'none';
			}
		}
		";
		acymailing_addScript(true, $js);


		$langs = acymailing_getLanguages();
		$languages = array();

		foreach ($langs as $lang => $obj) {
			if (strlen($lang) != 5 || $lang == "xx-XX") continue;

			$oneLanguage = new stdClass();
			$oneLanguage->language = $lang;
			$oneLanguage->name = $obj->name;

			$linkEdit = acymailing_completeLink('file').'&task=language&code=' . $lang;
			$icon = $obj->exists ? 'edit' : 'new';
			$oneLanguage->edit = acymailing_popup($linkEdit, '<i class="acyicon-'.$icon.'" id="image' . $lang . '"></i>');

			$languages[] = $oneLanguage;
		}

		$js = "function updateConfirmation(newvalue){";
		$js .= "if(newvalue == 0) {window.document.getElementById('confirmemail').style.display = 'none'; window.document.getElementById('confirm_redirect').disabled = true;}else{window.document.getElementById('confirmemail').style.display = 'inline'; window.document.getElementById('confirm_redirect').disabled = false;}";
		$js .= '}';
		$js .= "function updateModification(newvalue){ if(newvalue != 'none') {window.document.getElementById('modifemail').style.display = 'none';}else{window.document.getElementById('modifemail').style.display = 'inline';}} ";
		$js .= 'window.addEventListener("load", function(){ updateModification(\''.$config->get('allow_modif', 'data').'\'); updateConfirmation('.$config->get('require_confirmation', 0).'); });';
		acymailing_addScript(true, $js);

		$elements->require_confirmation = acymailing_boolean("config[require_confirmation]", 'onclick="updateConfirmation(this.value)"', $config->get('require_confirmation', 0));

		$allowmodif = array();
		$allowmodif[] = acymailing_selectOption("none", acymailing_translation('JOOMEXT_NO'));
		$allowmodif[] = acymailing_selectOption("data", acymailing_translation('ONLY_SUBSCRIPTION'));
		$allowmodif[] = acymailing_selectOption("all", acymailing_translation('JOOMEXT_YES'));
		$elements->allow_modif = acymailing_radio($allowmodif, "config[allow_modif]", 'size="1" onclick="updateModification(this.value)"', 'value', 'text', $config->get('allow_modif', 'data'));

		if('joomla' == 'joomla') {
			$indexType = $config->get('indexFollow', '');
			$indexFollow = '<div style="float: left;"><input type="checkbox" name="config[indexFollow][]" id="indexFollow[0]" value="noindex" style="margin-left:10px" '.(stripos($indexType, 'noindex') !== false ? 'checked="checked"' : '').'/> <label for="indexFollow[0]">noindex</label></div>';
			$indexFollow .= '<div style="float: left;"><input type="checkbox" name="config[indexFollow][]" id="indexFollow[1]" value="nofollow" style="margin-left:10px" '.(stripos($indexType, 'nofollow') !== false ? 'checked="checked"' : '').'/> <label for="indexFollow[1]">nofollow</label></div>';
			$indexFollow .= '<input type="hidden" name="config[indexFollow][]" value="1"/>';
			$elements->indexFollow = $indexFollow;
			
			if(!ACYMAILING_J16){
				$query = 'SELECT a.name, a.id as itemid, b.title  FROM `#__menu` as a JOIN `#__menu_types` as b on a.menutype = b.menutype WHERE a.access = 0 ORDER BY b.title ASC,a.ordering ASC';
			}else{
				$orderby = ACYMAILING_J30 ? 'a.lft' : 'a.ordering';
				$query = 'SELECT a.alias as name, a.id as itemid, b.title  FROM `#__menu` as a JOIN `#__menu_types` as b on a.menutype = b.menutype WHERE a.access = 1 AND a.client_id=0 AND a.parent_id != 0 ORDER BY b.title ASC,'.$orderby.' ASC';
			}

			$joomMenus = acymailing_loadObjectList($query);

			$menuvalues = array();
			$menuvalues[] = acymailing_selectOption('0', acymailing_translation('ACY_NONE'));
			$lastGroup = '';
			foreach($joomMenus as $oneMenu){
				if($oneMenu->title != $lastGroup){
					if(!empty($lastGroup)) $menuvalues[] = acymailing_selectOption('</OPTGROUP>');
					$menuvalues[] = acymailing_selectOption('<OPTGROUP>', $oneMenu->title);
					$lastGroup = $oneMenu->title;
				}
				$menuvalues[] = acymailing_selectOption($oneMenu->itemid, $oneMenu->name);
			}

			$elements->acymailing_menu = acymailing_select($menuvalues, 'config[itemid]', 'size="1"', 'value', 'text', $config->get('itemid'));


			$acyrss_format = array();
			$acyrss_format[] = acymailing_selectOption('', acymailing_translation('ACY_NONE'));
			$acyrss_format[] = acymailing_selectOption('rss', 'RSS feed');
			$acyrss_format[] = acymailing_selectOption('atom', 'Atom feed');
			$acyrss_format[] = acymailing_selectOption('both', acymailing_translation('ACY_ALL'));
			$elements->acyrss_format = acymailing_select($acyrss_format, "config[acyrss_format]", 'size="1"', 'value', 'text', $config->get('acyrss_format', ''));

			$acyrss_order = array();
			$acyrss_order[] = acymailing_selectOption('senddate', acymailing_translation('SEND_DATE'));
			$acyrss_order[] = acymailing_selectOption('mailid', acymailing_translation('ACY_ID'));
			$acyrss_order[] = acymailing_selectOption('subject', acymailing_translation('ACY_TITLE'));
			$elements->acyrss_order = acymailing_select($acyrss_order, "config[acyrss_order]", 'size="1"', 'value', 'text', $config->get('acyrss_order', 'senddate'));
			
			if(version_compare(JVERSION, '3.1.2', '>=')) $elements->special_chars = acymailing_boolean("config[special_chars]", '', $config->get('special_chars', 0));

			$bootstrapFrontValues = array();
			$bootstrapFrontValues[] = acymailing_selectOption(0, acymailing_translation('JOOMEXT_NO'));
			$bootstrapFrontValues[] = acymailing_selectOption(1, 'Bootstrap 2');
			$bootstrapFrontValues[] = acymailing_selectOption(2, 'Bootstrap 3');
			$elements->bootstrap_frontend = acymailing_radio($bootstrapFrontValues, "config[bootstrap_frontend]", '', 'value', 'text', $config->get('bootstrap_frontend', 0));
			
			if(acymailing_level(1)){
				$js = 'var selectedForward = '.$config->get('forward', 0).'
					function confirmForward(clickedForward){
						if(clickedForward == selectedForward || clickedForward != 1) return true;

						var cnfrm = confirm(\''.str_replace("'", "\'", acymailing_translation('ACY_FORWARDCHOICE_CONFIRMATION')).'\');
						if(!cnfrm) return true;';

				if(ACYMAILING_J30){
					$js .= '
					var labels = document.getElementById("config_forwardfieldset").getElementsByTagName("label");
					for(oneLabel in labels){
						if(isNaN(oneLabel)) continue;
						if(labels[oneLabel].getAttribute("for") == "config_forward2"){
							labels[oneLabel].click();
						}
					}';
				}else{
					$js .= 'document.getElementById("config[forward]2").checked = true;';
				}

				$js .= '}';
				acymailing_addScript(true, $js);

				$forwardValues = array();
				$forwardValues[] = acymailing_selectOption(0, acymailing_translation('JOOMEXT_NO'));
				$forwardValues[] = acymailing_selectOption(1, acymailing_translation('JOOMEXT_YES'));
				$forwardValues[] = acymailing_selectOption(2, acymailing_translation('JOOMEXT_YES_FORWARD'));
				$elements->forward = acymailing_radio($forwardValues, "config[forward]", 'onclick="confirmForward(this.value);"', 'value', 'text', $config->get('forward', 0));

				$nextDate = $config->get('cron_plugins_next', time());

				$listHours = array();
				$listMinutess = array();
				for($i = 0; $i < 24; $i++){
					$value = $i < 10 ? '0'.$i : $i;
					$listHours[] = acymailing_selectOption($value, $value);
				}
				$hours = acymailing_select($listHours, 'cronplghours', 'class="inputbox" size="1" style="width:60px;"', 'value', 'text', acymailing_getDate($nextDate, 'H'));
				for($i = 0; $i < 60; $i += 5){
					$value = $i < 10 ? '0'.$i : $i;
					$listMinutess[] = acymailing_selectOption($value, $value);
				}
				$defaultMin = floor(acymailing_getDate($nextDate, 'i') / 5) * 5;
				$minutes = acymailing_select($listMinutess, 'cronplgminutes', 'class="inputbox" size="1" style="width:60px;"', 'value', 'text', $defaultMin);
				$elements->cron_plugins = $hours.' : '.$minutes;
			}else{
				$elements->forward = acymailing_getUpgradeLink('essential');
			}

			$elements->use_sef = acymailing_boolean("config[use_sef]", '', $config->get('use_sef', 0));
			
			$editorType = acymailing_get('type.editor');
			$elements->editor = $editorType->display('config[editor]', $config->get('editor'));

			if (!ACYMAILING_J16) {
				$plugins = acymailing_loadObjectList("SELECT name, element, published,id FROM `#__plugins` WHERE `folder` = 'acymailing' AND `element` NOT LIKE 'plg%' ORDER BY published DESC, name ASC");
			} else {
				$plugins = acymailing_loadObjectList("SELECT name, element, enabled as published,extension_id as id FROM `#__extensions` WHERE `state` <> -1 AND `folder` = 'acymailing' AND `type`= 'plugin' AND `element` NOT LIKE 'plg%' ORDER BY enabled DESC, name ASC");
			}

			if (!ACYMAILING_J16) {
				$integrationplugins = acymailing_loadObjectList("SELECT name, element, published,id FROM `#__plugins` WHERE (`folder` != 'acymailing' OR `element` LIKE 'plg%') AND (`name` LIKE '%acymailing%' OR `element` LIKE '%acymailing%') ORDER BY published DESC, name ASC");
			} else {
				$integrationplugins = acymailing_loadObjectList("SELECT name, element, enabled as published ,extension_id as id FROM `#__extensions` WHERE `state` <> -1 AND (`folder` != 'acymailing' OR `element` LIKE 'plg%') AND `type` = 'plugin' AND (`name` LIKE '%acymailing%' OR `element` LIKE '%acymailing%') ORDER BY enabled DESC, name ASC");
			}

			$pluginsNeedUpDate = json_decode($config->get('pluginNeedUpdate', ''));
			if(!empty($pluginsNeedUpDate)){
				foreach($plugins as $plugin){
					if(!in_array($plugin->id, $pluginsNeedUpDate)) continue;
					$plugin->needUpDate = true;
				}
				foreach($integrationplugins as $plugin){
					if(!in_array($plugin->id, $pluginsNeedUpDate)) continue;
					$plugin->needUpDate = true;
				}
			}

			$this->plugins = $plugins;
			$this->integrationplugins = $integrationplugins;

			if((!ACYMAILING_J16 AND !file_exists(ACYMAILING_ROOT.'plugins'.DS.'acymailing'.DS.'tagsubscriber.php')) OR (ACYMAILING_J16 AND !file_exists(ACYMAILING_ROOT.'plugins'.DS.'acymailing'.DS.'tagsubscriber'.DS.'tagsubscriber.php'))) acymailing_checkPluginsFolders();
		}

		$this->bounceaction = acymailing_get('type.bounceaction');
		$this->config = $config;
		$this->languages = $languages;
		$this->elements = $elements;

		$this->tabs = acymailing_get('helper.acytabs');
		$this->toggleClass = $toggleClass;

		return parent::display($tpl);
	}
}
views/email/index.html000060400000000054152455705230010770 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/email/view.html.php000060400000037141152455705230011430 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class EmailViewEmail extends acymailingView{

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();


		parent::display($tpl);
	}

	function form(){
		$mailid = acymailing_getCID('mailid');
		if(empty($mailid)) $mailid = acymailing_getVar('string', 'mailid');

		$mailClass = acymailing_get('class.mail');
		$mail = $mailClass->get($mailid);

		if(empty($mail)){
			$config = acymailing_config();

			$mail = new stdClass();
			$mail->created = time();
			$mail->fromname = $config->get('from_name');
			$mail->fromemail = $config->get('from_email');
			$mail->replyname = $config->get('reply_name');
			$mail->replyemail = $config->get('reply_email');
			$mail->subject = '';
			$mail->type = acymailing_getVar('string', 'type');
			$mail->published = 1;
			$mail->visible = 0;
			$mail->html = 1;
			$mail->body = '';
			$mail->altbody = '';
			$mail->tempid = 0;
			$mail->alias = '';
		};

		$values = new stdClass();
		$values->maxupload = (acymailing_bytes(ini_get('upload_max_filesize')) > acymailing_bytes(ini_get('post_max_size'))) ? ini_get('post_max_size') : ini_get('upload_max_filesize');


		$toggleClass = acymailing_get('helper.toggle');

		if(acymailing_isAdmin()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('', acymailing_translation('ACY_TEMPLATES'), 'template', false, 'displayTemplates(); return false;');
			$acyToolbar->custom('', acymailing_translation('TAGS'), 'tag', false, 'try{IeCursorFix();}catch(e){}; displayTags(); return false;');
			$acyToolbar->divider();
			$acyToolbar->custom('test', acymailing_translation('SEND_TEST'), 'send', false);
			$acyToolbar->custom('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
			$acyToolbar->setTitle(acymailing_translation('ACY_EDIT'));
			$acyToolbar->topfixed = false;
			$acyToolbar->display();
		}

		$editor = acymailing_get('helper.editor');
		$editor->setTemplate($mail->tempid);
		$editor->name = 'editor_body';
		$editor->content = $mail->body;

		$js = "function updateAcyEditor(htmlvalue){";
		$js .= 'if(htmlvalue == \'0\'){window.document.getElementById("htmlfieldset").style.display = \'none\'}else{window.document.getElementById("htmlfieldset").style.display = \'block\'}';
		$js .= '}';

		$script = '
		var attachmentNb = 1;
		function addFileLoader(){
			if(attachmentNb > 9) return;
			window.document.getElementById("attachmentsdiv"+attachmentNb).style.display = "";
			attachmentNb++;
		}';

		$script .= "function deleteAttachment(i){
			document.getElementById('attachments'+i+'selection').innerHTML = '';
			document.getElementById('attachments'+i+'suppr').style.display = 'none';
			document.getElementById('attachments'+i).value = '';
			return;
		}";

		$script .= '
			document.addEventListener("DOMContentLoaded", function(){
				acymailing.submitbutton = function(pressbutton) {
					if (pressbutton == \'cancel\') {
						acymailing.submitform(pressbutton,document.adminForm);
						return;
					}';

		$url = acymailing_currentURL();
		if(strpos($url, 'send-in-article') !== false){
			$script .= '
						if(pressbutton == \'apply\' || pressbutton == \'test\'){
							var content = '.$editor->getContent().';
							var match = content.match(/{joomlacontent:current/);
							if(match == null){
								alert("'.acymailing_translation('ACY_TAG_ARTICLE').'");
								return false;
							}
						}';
		}

		$script .= 'if(window.document.getElementById("subject").value.length < 2){alert(\''.acymailing_translation('ENTER_SUBJECT', true).'\'); return false;}';
		$script .= $editor->jsCode();
		$script .= 'acymailing.submitform(pressbutton,document.adminForm);
				};
			 }); ';

		$script .= "var zoneToTag = 'editor';
		function insertTag(tag){
			if(zoneToTag == 'editor'){
				try{
					if(window.parent.tinymce){ parentTinymce = window.parent.tinymce; window.parent.tinymce = false; }
					jInsertEditorText(tag,'editor_body');
					if(typeof parentTinymce !== 'undefined'){ window.parent.tinymce = parentTinymce; }
					document.getElementById('iframetag').style.display = 'none';
					displayTags();
					return true;
				} catch(err){
					alert('Your editor does not enable AcyMailing to automatically insert the tag, please copy/paste it manually in your Newsletter');
					return false;
				}
			}else{
				try{
					simpleInsert(zoneToTag, tag);
					return true;
				} catch(err){
					alert('Error inserting the tag in the '+ zoneToTag + 'zone. Please copy/paste it manually in your Newsletter.');
					return false;
				}
			}
		}
		
		function simpleInsert(myField, myValue) {
			myField = document.getElementById(myField);
			if (document.selection) {
				myField.focus();
				sel = document.selection.createRange();
				sel.text = myValue;
			} else if (myField.selectionStart || myField.selectionStart == '0') {
				var startPos = myField.selectionStart;
				var endPos = myField.selectionEnd;
				myField.value = myField.value.substring(0, startPos)
					+ myValue
					+ myField.value.substring(endPos, myField.value.length);
			} else if (myField.tagName == 'DIV') {
				myField.innerHTML += myValue;
				document.getElementById('subject').value += myValue;
			} else {
				myField.value += myValue;
			}
		}
		
		document.addEventListener('DOMContentLoaded', function(){
			setTimeout(function() {
				document.getElementById('htmlfieldset').addEventListener('click', function(){
					zoneToTag = 'editor';
				});	
				
				var ediframe = document.getElementById('htmlfieldset').getElementsByTagName('iframe');
				if(ediframe && ediframe[0]){
					var children = ediframe[0].contentDocument.getElementsByTagName('*');
					for (var i = 0; i < children.length; i++) {
						children[i].addEventListener('click', function(){
							zoneToTag = 'editor';
						});			
					}
				}		
			}, 1000);
		});";

		$typeMail = 'news';
		if(strpos($mail->alias, 'notification') !== false){
			$typeMail = 'notification';
		}

		$iFrame = "'<iframe src=\'".acymailing_completeLink((acymailing_isAdmin() ? '' : 'front')."tag&task=tag&type=".$typeMail, true)."\' width=\'100%\' height=\'100%\' scrolling=\'auto\'></iframe>'";
		$script .= "var openTag = true;
					function displayTags(){
						var box = document.getElementById('iframetag');
						if(openTag){
							box.innerHTML = ".$iFrame.";
							box.style.display = 'block';
						}else{
							box.style.display = 'none';
						}
						
						if(openTag){
							box.className = 'slide_open';
						}else{
							box.className = box.className.replace('slide_open', '');
						}
						openTag = !openTag;
					}";

		$iFrame = "'<iframe src=\'".acymailing_completeLink((acymailing_isAdmin() ? '' : 'front')."template&task=theme", true)."\' width=\'100%\' height=\'100%\' scrolling=\'auto\'></iframe>'";
		$script .= "var openTemplate = true;
					function displayTemplates(){
						var box = document.getElementById('iframetemplate');
						if(openTemplate){
							box.innerHTML = ".$iFrame.";
							box.style.display = 'block';
						}else{
							box.style.display = 'none';
						}
						
						if(openTemplate){
							box.className = 'slide_open';
						}else{
							box.className = box.className.replace('slide_open', '');
						}
						openTemplate = !openTemplate;
					}";

		$script .= "function changeTemplate(newhtml,newtext,newsubject,stylesheet,fromname,fromemail,replyname,replyemail,tempid){
			if(newhtml.length>2){".$editor->setContent('newhtml')."}
			var vartextarea = document.getElementById('altbody');
			if(newtext.length>2) vartextarea.innerHTML = newtext;
			document.getElementById('tempid').value = tempid;
			
			if(fromname.length>1){document.getElementById('fromname').value = fromname;}
			if(fromemail.length>1){document.getElementById('fromemail').value = fromemail;}
			if(replyname.length>1){document.getElementById('replyname').value = replyname;}
			if(replyemail.length>1){document.getElementById('replyemail').value = replyemail;}
			if(newsubject.length>1){
				var subjectObj = document.getElementById('subject');
				if(subjectObj.tagName.toLowerCase() == 'input'){
					subjectObj.value = newsubject;
				}else{
				    subjectObj.innerHTML = newsubject;
				}
			}
			
			".$editor->setEditorStylesheet('tempid')."
			document.getElementById('iframetemplate').style.display = 'none';
			displayTemplates();
		}";

		$plugin = acymailing_getPlugin('acymailing', 'tagcontent');
		$this->params = new acyParameter($plugin->params);
		$this->acypluginsHelper = acymailing_get('helper.acyplugins');

		$contenttype = array();
		$contenttype[] = acymailing_selectOption("title", acymailing_translation('TITLE_ONLY'));
		$contenttype[] = acymailing_selectOption("intro", acymailing_translation('INTRO_ONLY'));
		$contenttype[] = acymailing_selectOption("text", acymailing_translation('FIELD_TEXT'));
		$contenttype[] = acymailing_selectOption("full", acymailing_translation('FULL_TEXT'));

		$titlelink = array();
		$titlelink[] = acymailing_selectOption("link", acymailing_translation('JOOMEXT_YES'));
		$titlelink[] = acymailing_selectOption("0", acymailing_translation('JOOMEXT_NO'));

		$authorname = array();
		$authorname[] = acymailing_selectOption("author", acymailing_translation('JOOMEXT_YES'));
		$authorname[] = acymailing_selectOption("0", acymailing_translation('JOOMEXT_NO'));

		$picts = array();
		$picts[] = acymailing_selectOption("1", acymailing_translation('JOOMEXT_YES'));
		$pictureHelper = acymailing_get('helper.acypict');
		if($pictureHelper->available()) $picts[] = acymailing_selectOption("resized", acymailing_translation('RESIZED'));
		$picts[] = acymailing_selectOption("0", acymailing_translation('JOOMEXT_NO'));

		if($mail->html == 1){
			$script .= "var zoneEditor = 'editor_body';";
		}else{
			$script .= "var zoneEditor = 'altbody';";
		}

		$script .= '
		
		var zoneToTag = \'altbody\';
		function initTagZone(html){ if(html == 0){ zoneEditor = \'altbody\'; }else{ zoneEditor = \'editor_body\'; }}
		
		var previousSelection = false;
		function insertTagCurrent(){
		var tag = \'{joomlacontent:current|\';
			var display = document.querySelector(\'input[name = "contenttype"]:checked\').value;
			var format = document.getElementById(\'contentformat\').value;
			var displayPict = document.querySelector(\'input[name = "pict"]:checked\').value;
			var clickTitle = document.querySelector(\'input[name = "titlelink"]:checked\').value;
			var author = document.querySelector(\'input[name = "author"]:checked\').value;
			var facebook = document.getElementById(\'facebook\').checked ;
			var linkedin = document.getElementById(\'linkedin\').checked;
			var twitter = document.getElementById(\'twitter\').checked;
			var google = document.getElementById(\'google\').checked;
			
			if(display == \'title\'){
				tag = tag + \' type:\'+display+\'|\';
			}else{
				tag = tag + \' type:\'+display+\'| format:\'+format+\'| pict:\'+displayPict+\'|\';
			}
			
			if(clickTitle == \'link\'){
				tag = tag + \' link|\';
			}
			if(author == \'author\'){
				tag = tag + \' author|\';
			}
			if(facebook || linkedin || twitter || google){
				tag = tag + \' share:\';
				if(facebook) tag = tag + \'facebook,\';
				if(linkedin) tag = tag + \'linkedin,\';
				if(twitter) tag = tag + \'twitter,\';
				if(google) tag = tag + \'google,\';
				tag = tag.slice(0, -1);
				tag = tag + \'|\';
			}
			tag = tag.slice(0, -1);
			tag = tag + \'}\';
			if(zoneEditor == \'editor_body\'){
				try{
					jInsertEditorText(tag,\'editor_body\',previousSelection);
					return true;
				} catch(err){
					alert(\'Your editor does not enable AcyMailing to automatically insert the tag, please copy / paste it manually in your Newsletter\');
					return false;
				}
			} else{
				try{
					simpleInsert(document.getElementById(zoneToTag), tag);
					return true;
				} catch(err){
					alert(\'Error inserting the tag in the \'+ zoneToTag + \'zone.Please copy / paste it manually in your Newsletter.\');
					return false;
				}
			}
		}
		
		function updateTag(){
			var display = document.querySelector(\'input[name = "contenttype"]:checked\').value;
			if(display == \'title\'){
				document.getElementById(\'format\').style.display = \'none\' ;
			}
			else if(display != \'title\'){
				document.getElementById(\'format\').style.display = \'table-row\' ;
			}
		}';

		acymailing_addScript(true, $js.$script);

		$this->picts = $picts;
		$this->titlelink = $titlelink;
		$this->authorname = $authorname;
		$this->contenttype = $contenttype;
		$this->toggleClass = $toggleClass;
		$this->editor = $editor;
		$this->values = $values;
		$this->mail = $mail;
		$tabs = acymailing_get('helper.acytabs');
		$this->tabs = $tabs;
	}

	function listing(){
		$article_id = acymailing_getVar('int', 'articleId');
		if(empty($article_id)) return;

		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();

		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$selectedCategory = acymailing_getUserVar($paramBase."filter_category", 'filter_category', 0, 'string');

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = "a.name LIKE $searchVal OR a.description LIKE $searchVal OR a.listid LIKE $searchVal";
		}
		$filters[] = "a.type = 'list'";
		if(!empty($selectedCategory)) $filters[] = 'a.category = '.acymailing_escapeDB($selectedCategory);

		if(!acymailing_isAdmin()){
			$listClass = acymailing_get('class.list');
			$lists = $listClass->getFrontendLists('listid');

			$filters[] = 'listid IN ('.implode(',', array_keys($lists)).')';
		}

		$query = 'SELECT a.*, d.name as creatorname, d.username, d.email';
		$query .= ' FROM '.acymailing_table('list').' as a';
		$query .= ' LEFT JOIN '.acymailing_table('users', false).' as d on a.userid = d.id';
		$query .= ' WHERE ('.implode(') AND (', $filters).')';
		$query .= ' ORDER BY a.name ASC';

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		$queryCount = 'SELECT COUNT(a.listid) FROM  '.acymailing_table('list').' as a';
		if(!empty($pageInfo->search)) $queryCount .= ' LEFT JOIN '.acymailing_table('users', false).' as d on a.userid = d.id';
		$queryCount .= ' WHERE ('.implode(') AND (', $filters).')';

		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		if(acymailing_isAdmin()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('sendArticle', acymailing_translation('SEND'), 'send');
			$acyToolbar->setTitle(acymailing_translation('ACY_SELECT_LIST'), 'list');
			$acyToolbar->display();
		}

		$filters = new stdClass();
		$listcategoryType = acymailing_get('type.categoryfield');
		$filters->category = $listcategoryType->getFilter('list', 'filter_category', $selectedCategory, ' onchange="document.adminForm.submit();"');

		acymailing_addStyle(true, '.acyicon-send + span { display: inline-block !important; margin-left: 5px; }');

		$this->filters = $filters;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
	}
}
views/email/tmpl/param.form.php000060400000020542152455705230012526 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?>	<?php echo $this->tabs->startPane('mail_tab'); ?>
	<?php echo $this->tabs->startPanel(acymailing_translation('INFOS'), 'mail_infos'); ?>
	<br style="font-size:1px"/>

	<div class="onelineblockoptions">
		<table class="acymailing_smalltable" width="100%">
			<tr>
				<td class="paramlist_key">
					<label for="subject">
						<?php echo acymailing_translation('JOOMEXT_SUBJECT'); ?>
					</label>
				</td>
				<td class="paramlist_value">
					<input onClick="zoneToTag='subject';" type="text" name="data[mail][subject]" id="subject" class="inputbox" style="width:80%" value="<?php echo $this->escape(@$this->mail->subject); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<?php echo acymailing_translation('SEND_HTML'); ?>
				</td>
				<td class="paramlist_value">
					<?php echo acymailing_boolean("data[mail][html]", 'onchange="updateAcyEditor(this.value)"', $this->mail->html); ?>
				</td>
			</tr>
			<?php
			$jflanguages = acymailing_get('type.jflanguages');
			if($jflanguages->multilingue){ ?>
				<tr>
					<td class="paramlist_key">
						<label for="jlang">
							<?php echo acymailing_translation('ACY_LANGUAGE'); ?>
						</label>
					</td>
					<td class="paramlist_value">
						<?php
						$jflanguages->sef = true;
						echo $jflanguages->displayJLanguages('data[mail][language]', empty($this->mail->language) ? '' : $this->mail->language);
						?>
					</td>
				</tr>
			<?php } ?>
		</table>
	</div>
	<?php if($this->mail->type == 'article'){ ?>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('ACY_INSERT_TAG_ARTICLE'); ?></span>
			<table class="acymailing_smalltable">
				<tr>
					<td>
						<?php echo acymailing_translation('DISPLAY'); ?>
					</td>
					<td colspan="2">
						<?php echo acymailing_radio($this->contenttype, 'contenttype', 'size="1" onclick="updateTag();"', 'value', 'text', 'intro'); ?>
					</td>
					<td>
						<?php $jflanguages = acymailing_get('type.jflanguages');
						$jflanguages->onclick = 'onchange="updateTag();"';
						echo $jflanguages->display('lang', ''); ?>
					</td>
				</tr>
				<tr id="format" class="acyplugformat">
					<td valign="top">
						<?php echo acymailing_translation('FORMAT'); ?>
					</td>
					<td valign="top">
						<?php echo $this->acypluginsHelper->getFormatOption('tagcontent'); ?>
					</td>
					<td valign="top"><?php echo acymailing_translation('DISPLAY_PICTURES'); ?></td>
					<td valign="top"><?php echo acymailing_radio($this->picts, 'pict', 'size="1" onclick="updateTag();"', 'value', 'text', '1'); ?>
						<span id="pictsize" style="display:none;"><br/><?php echo acymailing_translation('CAPTCHA_WIDTH') ?>
							<input name="pictwidth" type="text" onchange="updateTag();" value="150" style="width:30px;"/>
								x <?php echo acymailing_translation('CAPTCHA_HEIGHT') ?>
							<input name="pictheight" type="text" onchange="updateTag();" value="150" style="width:30px;"/>
						</span>
					</td>
				</tr>
				<tr>
					<td>
						<?php echo acymailing_translation('CLICKABLE_TITLE'); ?>
					</td>
					<td>
						<?php echo acymailing_radio($this->titlelink, 'titlelink', 'size="1" onclick="updateTag();"', 'value', 'text', 'link'); ?>
					</td>
					<td>
						<?php echo acymailing_translation('AUTHOR_NAME'); ?>
					</td>
					<td>
						<?php echo acymailing_radio($this->authorname, 'author', 'size="1" onclick="updateTag();"', 'value', 'text', '0'); ?>
					</td>
				</tr>
				<tr>
					<td>
						<?php echo acymailing_translation('SHARE'); ?>
					</td>
					<?php
					$socialMedias = array('facebook' => 'Facebook', 'linkedin' => 'LinkedIn', 'twitter' => 'Twitter', 'google' => 'Google+');

					$cpt = 1;
					foreach($socialMedias as $key => $oneSocial){
						if($cpt == 4){
							$cpt = 1;
							echo '</tr><tr><td/>';
						}
						echo '<td><input value="'.$key.'" name="socialshare" id="'.$key.'" type="checkbox" onclick="updateTag();" /> ';
						echo '<label for="'.$key.'">'.$oneSocial.'</label></td>';
						$cpt++;
					}
					while($cpt != 4){
						$cpt++;
						echo '<td/>';
					}
					?>
				</tr>
			</table>
			<a class="acymailing_button" style="width: 95%; text-align: center" onclick="insertTagCurrent(); return false;"><?php echo acymailing_translation('INSERT_TAG'); ?></a>
		</div>
	<?php } ?>
	<?php echo $this->tabs->endPanel(); ?>
	<?php echo $this->tabs->startPanel(acymailing_translation('ATTACHMENTS'), 'mail_attachments'); ?>
	<br style="font-size:1px"/>

	<div class="acyblockoptions" style="float:none;">
		<?php if(!empty($this->mail->attach)){
			echo '<div class="acyblockoptions" style="float:none;">
				<span class="acyblocktitle">'.acymailing_translation('ATTACHED_FILES').'</span>';
			foreach($this->mail->attach as $idAttach => $oneAttach){
				$idDiv = 'attach_'.$idAttach;
				echo '<div id="'.$idDiv.'">'.$oneAttach->filename.' ('.(round($oneAttach->size / 1000, 1)).' Ko)';
				echo $this->toggleClass->delete($idDiv, $this->mail->mailid.'_'.$idAttach, 'mail');
				echo '</div>';
			}

			echo '</div>';
		} ?>
		<div id="loadfile">
			<?php
			$uploadfileType = acymailing_get('type.uploadfile');
			for($i = 0; $i < 10; $i++){
				echo '<div'.($i == 0 ? '' : ' style="display:none;"').' id="attachmentsdiv'.$i.'">'.$uploadfileType->display(false, 'attachments', $i).'<a style="display:none" href="javascript:void(0);" id="attachments'.$i.'suppr" onclick="deleteAttachment('.$i.');"><span class="hasTooltip acyicon-delete" title="Delete" ></span></a></div>';
			}
			?>
		</div>
		<a href="javascript:void(0);" onclick='addFileLoader()'><?php echo acymailing_translation('ADD_ATTACHMENT'); ?></a>
		<?php echo acymailing_translation_sprintf('MAX_UPLOAD', $this->values->maxupload); ?>
	</div>
	<?php echo $this->tabs->endPanel();
	echo $this->tabs->startPanel(acymailing_translation('SENDER_INFORMATIONS'), 'mail_sender');
	$config = acymailing_config(); ?>
	<br style="font-size:1px"/>

	<div class="onelineblockoptions">
		<table width="100%" class="acymailing_smalltable">
			<tr>
				<td class="paramlist_key">
					<?php echo acymailing_translation('FROM_NAME'); ?>
				</td>
				<td class="paramlist_value">
					<input placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" type="text" id="fromname" name="data[mail][fromname]" style="width:200px" value="<?php echo $this->escape($this->mail->fromname); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<?php echo acymailing_translation('FROM_ADDRESS'); ?>
				</td>
				<td class="paramlist_value">
					<input onchange="validateEmail(this.value, '<?php echo addslashes(acymailing_translation('FROM_ADDRESS')); ?>')" placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" type="text" id="fromemail" name="data[mail][fromemail]" style="width:200px" value="<?php echo $this->escape($this->mail->fromemail); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<?php echo acymailing_translation('REPLYTO_NAME'); ?>
				</td>
				<td class="paramlist_value">
					<input placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" type="text" id="replyname" name="data[mail][replyname]" style="width:200px" value="<?php echo $this->escape($this->mail->replyname); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<?php echo acymailing_translation('REPLYTO_ADDRESS'); ?>
				</td>
				<td class="paramlist_value">
					<input onchange="validateEmail(this.value, '<?php echo addslashes(acymailing_translation('REPLYTO_ADDRESS')); ?>')" placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" type="text" id="replyemail" name="data[mail][replyemail]" style="width:200px" value="<?php echo $this->escape($this->mail->replyemail); ?>"/>
				</td>
			</tr>
		</table>
	</div>
	<?php echo acymailing_getFunctionsEmailCheck();

	echo $this->tabs->endPanel();
	$this->config = acymailing_config();
	if(acymailing_level(3) && acymailing_isAllowed($this->config->get('acl_newsletters_inbox_actions', 'all')) && acymailing_isPluginEnabled('acymailing', 'plginboxactions')) include(ACYMAILING_BACK.'views'.DS.'newsletter'.DS.'tmpl'.DS.'inboxactions.php');
	echo $this->tabs->endPane(); ?>
views/email/tmpl/listing.php000060400000005463152455705230012142 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>&tmpl=component" method="post" name="adminForm" id="adminForm">
	<table class="acymailing_table_options">
		<tr>
			<td width="100%">
				<?php acymailing_listingsearch($this->pageInfo->search); ?>
			</td>
			<td nowrap="nowrap">
				<?php echo $this->filters->category; ?>
			</td>
		</tr>
	</table>

	<table class="acymailing_table" cellpadding="1">
		<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titlebox">
					<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
				</th>
				<th class="title titlecolor">

				</th>
				<th class="title">
					<?php echo acymailing_translation('LIST_NAME'); ?>
				</th>
				<th class="title titlesender">
					<?php echo acymailing_translation('CREATOR'); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_translation('ACY_ID'); ?>
				</th>
			</tr>
		</thead>
		<tfoot>
			<tr>
				<td colspan="12">
					<?php
					echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter();
					?>
				</td>
			</tr>
		</tfoot>
		<tbody id="acymailing_sortable_listing">
		<?php
		$k = 0;
		$ordering = '';
		for($i = 0; $i < count($this->rows); $i++){
			$row =& $this->rows[$i];
			$ordering .= ',"order['.$i.']='.$row->ordering.'"';

			$publishedid = 'published_'.$row->listid;
			$visibleid = 'visible_'.$row->listid;
			?>
			<tr class="<?php echo "row$k"; ?>">
				<td align="center" style="text-align:center">
					<?php echo $this->pagination->getRowOffset($i); ?>
				</td>
				<td align="center" style="text-align:center">
					<?php echo acymailing_gridID($i, $row->listid); ?>
				</td>
				<td width="12">
					<?php echo '<div class="roundsubscrib rounddisp" style="background-color:'.$this->escape($row->color).'"></div>'; ?>
				</td>
				<td>
					<?php
					echo acymailing_tooltip($row->description, $row->name, 'tooltip.png', $row->name);
					?>
				</td>
				<td align="center" style="text-align:center">
					<?php if(!empty($row->userid)) echo $row->creatorname; ?>
				</td>
				<td align="center" style="text-align:center">
					<?php echo $row->listid; ?>
				</td>
			</tr>
			<?php
			$k = 1 - $k;
		}
		?>
		</tbody>
	</table>

	<input type="hidden" name="articleId" value="<?php echo acymailing_getVar('int', 'articleId'); ?>">
	<?php
		$order = new stdClass();
		$order->value = 'name';
		$order->dir = 'asc';
		acymailing_formOptions($order, 'chooseListBeforeSend');
	?>
</form>
views/email/tmpl/form.php000060400000003271152455705230011427 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl'), true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" enctype="multipart/form-data">
		<div id="iframetemplate"></div>
		<div id="iframetag"></div>

		<?php include(dirname(__FILE__).DS.'param.'.basename(__FILE__)); ?>
		<br/>

		<div class="onelineblockoptions" id="htmlfieldset"<?php if(empty($this->mail->html)) echo ' style="display:none;"'; ?>>
			<span class="acyblocktitle"><?php echo acymailing_translation('HTML_VERSION'); ?></span>
			<?php echo $this->editor->display(); ?>
		</div>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('TEXT_VERSION'); ?></span>
			<textarea onClick="zoneToTag='altbody';" style="width:98%;min-height:150px;" rows="20" name="data[mail][altbody]" id="altbody" placeholder="<?php echo acymailing_translation('AUTO_GENERATED_HTML'); ?>"><?php echo @$this->mail->altbody; ?></textarea>
		</div>

		<div class="clr"></div>
		<input type="hidden" name="cid[]" value="<?php echo @$this->mail->mailid; ?>"/>
		<?php if(!empty($this->mail->type)){ ?>
			<input type="hidden" name="data[mail][type]" value="<?php echo $this->mail->type; ?>"/>
		<?php } ?>
		<input type="hidden" id="tempid" name="data[mail][tempid]" value="<?php echo @$this->mail->tempid; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/email/tmpl/index.html000060400000000054152455705230011744 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/newsletter/tmpl/param.form.php000060400000020653152455705230013636 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(acymailing_isAllowed($this->config->get('acl_newsletters_lists', 'all')) || acymailing_isAllowed($this->config->get('acl_newsletters_attachments', 'all')) || acymailing_isAllowed($this->config->get('acl_newsletters_sender_informations', 'all')) || acymailing_isAllowed($this->config->get('acl_newsletters_meta_data', 'all')) || (acymailing_isAllowed($this->config->get('acl_newsletters_inbox_actions', 'all')) && acymailing_isPluginEnabled('acymailing', 'plginboxactions'))){ ?>
	<div id="newsletterparams">

		<?php echo $this->tabs->startPane('news_tab');

		if(!acymailing_isAllowed($this->config->get('acl_newsletters_lists', 'all')) || $this->type == 'joomlanotification'){
			acymailing_addStyle(true, " .mail_receivers_acl{display:none;} ");
			echo '<div class="mail_receivers_acl">';
		}else{
			echo $this->tabs->startPanel(acymailing_translation('LISTS'), 'mail_receivers');
		} ?>
		<?php
		if(empty($this->lists)){
			echo '<span>'.acymailing_translation('LIST_CREATE').'</span>';
		}else{
			echo '<span>'.acymailing_translation('LIST_RECEIVERS').'</span>';
			include_once(ACYMAILING_BACK.'views'.DS.'newsletter'.DS.'tmpl'.DS.'filter.lists.php');

			if(acymailing_level(2) && acymailing_isAllowed($this->config->get('acl_lists_filter', 'all'))) include_once(dirname(__FILE__).DS.'filters.php');
		}
		if(!acymailing_isAllowed($this->config->get('acl_newsletters_lists', 'all')) || $this->type == 'joomlanotification'){
			echo '</div>';
		}else echo $this->tabs->endPanel();

		if(acymailing_isAllowed($this->config->get('acl_newsletters_attachments', 'all'))){
			echo $this->tabs->startPanel(acymailing_translation('ATTACHMENTS'), 'mail_attachments');
			if(!empty($this->mail->attach)){
				echo '<div class="onelineblockoptions">
					<span class="acyblocktitle">'.acymailing_translation('ATTACHED_FILES').'</span>';

				foreach($this->mail->attach as $idAttach => $oneAttach){
					$idDiv = 'attach_'.$idAttach;
					echo '<div id="'.$idDiv.'" style="text-overflow: ellipsis;overflow: hidden;" title="'.$oneAttach->filename.'">'.$oneAttach->filename.' ('.(round($oneAttach->size / 1000, 1)).' Ko)';
					echo $this->toggleClass->delete($idDiv, $this->mail->mailid.'_'.$idAttach, 'mail');
					echo '</div>';
				}

				echo '</div>';
			} ?>
			<div id="loadfile">
				<?php
				$uploadfileType = acymailing_get('type.uploadfile');
				for($i = 0; $i < 10; $i++){
					echo '<div'.($i == 0 ? '' : ' style="display:none;"').' id="attachmentsdiv'.$i.'">'.$uploadfileType->display(false, 'attachments', $i).'<a style="display:none" href="javascript:void(0);" id="attachments'.$i.'suppr" onclick="deleteAttachment('.$i.');"><span class="hasTooltip acyicon-delete" title="Delete" ></span></a></div>';
				}
				?>
			</div>
			<a href="javascript:void(0);" onclick='addFileLoader()'><?php echo acymailing_translation('ADD_ATTACHMENT'); ?></a>
			<?php echo acymailing_translation_sprintf('MAX_UPLOAD', $this->values->maxupload); ?>
			<?php echo $this->tabs->endPanel();
		}

		if(!acymailing_isAllowed($this->config->get('acl_newsletters_sender_informations', 'all'))){
			acymailing_addStyle(true, " .mail_sender_acl{display:none;} ");
			echo '<div id="mail_sender_acl" style="display:none" >';
		}else{
			echo $this->tabs->startPanel(acymailing_translation('SENDER_INFORMATIONS'), 'mail_sender');
		} ?>
		<table width="100%" class="acymailing_table" id="senderinformationfieldset">
			<tr>
				<td class="paramlist_key">
					<label for="fromname"><?php echo acymailing_translation('FROM_NAME'); ?></label>
				</td>
				<td class="paramlist_value">
					<input placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" id="fromname" type="text" name="data[mail][fromname]" style="width:200px; max-width:80%;" value="<?php echo $this->escape(@$this->mail->fromname); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<label for="fromemail"><?php echo acymailing_translation('FROM_ADDRESS'); ?></label>
				</td>
				<td class="paramlist_value">
					<input onchange="validateEmail(this.value, '<?php echo addslashes(acymailing_translation('FROM_ADDRESS')); ?>')" placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" id="fromemail" type="text" name="data[mail][fromemail]" style="width:200px; max-width:80%;" value="<?php echo $this->escape(@$this->mail->fromemail); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<label for="replyname"><?php echo acymailing_translation('REPLYTO_NAME'); ?></label>
				</td>
				<td class="paramlist_value">
					<input placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" id="replyname" type="text" name="data[mail][replyname]" style="width:200px; max-width:80%;" value="<?php echo $this->escape(@$this->mail->replyname); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<label for="replyemail"><?php echo acymailing_translation('REPLYTO_ADDRESS'); ?></label>
				</td>
				<td class="paramlist_value">
					<input onchange="validateEmail(this.value, '<?php echo addslashes(acymailing_translation('REPLYTO_ADDRESS')); ?>')" placeholder="<?php echo acymailing_translation('USE_DEFAULT_VALUE'); ?>" class="inputbox" id="replyemail" type="text" name="data[mail][replyemail]" style="width:200px; max-width:80%;" value="<?php echo $this->escape(@$this->mail->replyemail); ?>"/>
				</td>
			</tr>
			<tr>
				<td class="paramlist_key">
					<label for="bccaddresses"><?php echo acymailing_translation('ACY_BCC_ADDRESS'); ?></label>
				</td>
				<td class="paramlist_value">
					<input placeholder="address@example.com" class="inputbox" id="bccaddresses" type="text" name="data[mail][bccaddresses]" style="width:200px; max-width:80%;" value="<?php echo $this->escape(@$this->mail->bccaddresses); ?>"/>
				</td>
			</tr>
			<?php
			if(acymailing_level(1)){
				echo '<tr>
					<td class="paramlist_key">'.acymailing_translation('FAVICON').'</td><td class="paramlist_value">';
				if(!empty($this->mail->favicon) && !empty($this->mail->favicon->filename)){
					echo '<div id="attach_favicon">'.$this->mail->favicon->filename.' ('.(round($this->mail->favicon->size / 1000, 1)).' Ko)';
					echo $this->toggleClass->delete('attach_favicon', $this->mail->mailid.'_favicon', 'favicon');
					echo '</div>';
				}
				?>
				<div id="loadfile">
					<?php
					echo '<div id="favicondiv">'.$uploadfileType->display(false, 'favicon', '').'</div>';
					?>
				</div>
				<?php echo acymailing_translation_sprintf('MAX_UPLOAD', $this->values->maxupload);
				echo '</td></tr>';
			} ?>
		</table>

		<?php echo acymailing_getFunctionsEmailCheck();

		if(!acymailing_isAllowed($this->config->get('acl_newsletters_sender_informations', 'all'))){
			echo '</div>';
		}else{
			echo $this->tabs->endPanel();
		}

		if($this->type == 'joomlanotification'){
			acymailing_addStyle(true, " .mail_metadata_jnotif{display:none;} ");
			echo '<div class="mail_metadata_jnotif">';
		}else{
			if(acymailing_isAllowed($this->config->get('acl_newsletters_meta_data', 'all'))){
				echo $this->tabs->startPanel(acymailing_translation('META_DATA'), 'mail_metadata'); ?>
				<table width="100%" class="acymailing_table" id="metadatatable">
					<tr>
						<td class="paramlist_key">
							<label for="metakey"><?php echo acymailing_translation('META_KEYWORDS'); ?></label>
						</td>
						<td class="paramlist_value">
							<textarea id="metakey" name="data[mail][metakey]" rows="5" style="width:200px; max-width:80%;"><?php echo @$this->mail->metakey; ?></textarea>
						</td>
					</tr>
					<tr>
						<td class="paramlist_key">
							<label for="metadesc"><?php echo acymailing_translation('META_DESC'); ?></label>
						</td>
						<td class="paramlist_value">
							<textarea id="metadesc" name="data[mail][metadesc]" rows="5" style="width:200px; max-width:80%;"><?php echo @$this->mail->metadesc; ?></textarea>
						</td>
					</tr>
				</table>
				<?php
				echo $this->tabs->endPanel();
			}
		}
		if($this->type == 'joomlanotification') echo '</div>';
		if(acymailing_level(3) && acymailing_isAllowed($this->config->get('acl_newsletters_inbox_actions', 'all')) && acymailing_isPluginEnabled('acymailing', 'plginboxactions')) include(dirname(__FILE__).DS.'inboxactions.php');
		echo $this->tabs->endPane(); ?>
	</div>
<?php } ?>
views/newsletter/tmpl/upload.php000060400000001563152455705230013057 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<form action="<?php echo acymailing_completeLink('file', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" enctype="multipart/form-data">
		<div id="iframedoc"></div>
		<div style="text-align:center;padding-top:20px;"><input type="file" style="width:auto" name="uploadedfile"/><br />
			<?php echo (acymailing_translation_sprintf('MAX_UPLOAD', (acymailing_bytes(ini_get('upload_max_filesize')) > acymailing_bytes(ini_get('post_max_size'))) ? ini_get('post_max_size') : ini_get('upload_max_filesize'))); ?>
		</div>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/newsletter/tmpl/previewcontent.php000060400000006320152455705230014643 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php if($this->mail->html){ ?>
	<style type="text/css">
		.previewsize{
			background-image: url('<?php echo ACYMAILING_IMAGES?>preview_icons.png');
			background-repeat: no-repeat;
			cursor: pointer;
			height: 25px;
			display: block;
			float: left;
			margin-right: 5px;
		}

		.previewpict:hover, .previewpictenabled{
			background-position: -284px 0px;
		}

		.previewpict, .previewpictenabled:hover{
			background-position: -284px -33px;
		}

		.preview320{
			background-position: 0px 0px;
		}

		.preview320:hover, .preview320enabled{
			background-position: 0px -33px;
		}

		.preview480{
			background-position: -65px 0px;
		}

		.preview480:hover, .preview480enabled{
			background-position: -65px -33px;
		}

		.preview768{
			background-position: -136px 0px;
		}

		.preview768:hover, .preview768enabled{
			background-position: -136px -33px;
		}

		.previewmax{
			background-position: -211px 0px;
		}

		.previewmax:hover, .previewmaxenabled{
			background-position: -211px -33px;
		}
	</style>

	<div class="<?php echo acymailing_isAdmin() ? 'acyblockoptions' : 'onelineblockoptions'; ?> acyblock_newsletter" width="100%" id="htmlfieldset" style="clear:both;">
		<span class="acyblocktitle donotprint"> <?php echo acymailing_translation('HTML_VERSION'); ?></span>

		<div style="float:right;width:340px;clear:both" id="acypreview_resize">
			<span class="previewsize preview320" id="preview320" style="width:55px;" onclick="previewResize('342px','480px');previewSizeClick(this);"></span>
			<span class="previewsize preview480" id="preview480" style="width:61px;" onclick="previewResize('502px','320px');previewSizeClick(this);"></span>
			<span class="previewsize preview768" id="preview768" style="width:65px" onclick="previewResize('790px','1024px');previewSizeClick(this);"></span>
			<span class="previewsize previewmaxenabled" id="previewmax" style="width:63px;" onclick="previewResize('100%','100%');previewSizeClick(this);"></span>
			<span class="previewsize previewpictenabled" id="previewpict" style="width:46px;margin-left:20px;" onclick="switchPict();"></span>
		</div>

		<div class="newsletter_body" id="newsletter_preview_area"><?php echo $this->mail->body; ?></div>

	</div>
<?php
} ?>

<div class="<?php echo (acymailing_isAdmin() ? 'acyblockoptions' : 'onelineblockoptions'); ?> acyblock_newsletter donotprint" id="textfieldset">
	<span class="acyblocktitle donotprint"><?php echo acymailing_translation('TEXT_VERSION'); ?></span>
	<?php echo nl2br($this->escape($this->mail->altbody)); ?>
</div>
<?php
if(!empty($this->mail->attachments)){
	echo '<div class="'.(acymailing_isAdmin() ? 'acyblockoptions' : 'onelineblockoptions').' newsletter_attachments donotprint adminform">
		<span class="acyblocktitle">'.acymailing_translation('ATTACHMENTS').'</span>
		<table>';
	foreach($this->mail->attachments as $attachment){
		echo '<tr><td><a href="'.$attachment->url.'" target="_blank">'.$attachment->name.'</a></td></tr>';
	}
	echo '</table></div>';
}
?>

<div class="clr"></div>
views/newsletter/tmpl/listing.php000060400000022263152455705230013244 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content" class="acynewsletterlisting">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<?php if(acymailing_isAdmin()){ ?>
			<tr>
				<td nowrap="nowrap" width="100%">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td nowrap="nowrap">
					<?php echo $this->filters->list;
					echo $this->filters->creator;
					echo $this->filters->date;
					echo $this->filters->type;
					echo $this->filters->tags; ?>
				</td>
			</tr>
			<?php }else{ ?>
			<tr>
				<td nowrap="nowrap" width="100%">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td>
					<?php echo $this->filters->list; ?>
				</td>
			</tr>
			<tr>
				<td>
					<?php echo $this->filters->tags; ?>
				</td>
				<td valign="top">
					<?php echo $this->filters->date; ?>
				</td>
			</tr>
			<?php } ?>
		</table>

		<table class="acymailing_table">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titlebox">
					<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
				</th>
				<th class="title" colspan="3">
					<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_SUBJECT'), 'a.subject', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<?php if(acymailing_isAdmin()){ ?>
					<th class="title titlelist" style="text-align: left;">
						<?php echo acymailing_translation('LISTS'); ?>
					</th>
				<?php } ?>
				<th class="title titledate">
					<?php echo acymailing_gridSort(acymailing_translation('SEND_DATE'), 'a.senddate', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titlesender">
					<?php echo acymailing_gridSort(acymailing_translation('SENDER_INFORMATIONS'), 'a.fromname', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titlesender">
					<?php echo acymailing_gridSort(acymailing_translation('CREATOR'), 'b.name', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<?php if(acymailing_isAdmin()){ ?>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_VISIBLE'), 'a.visible', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_PUBLISHED'), 'a.published', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
				<?php } ?>
				<th class="title titleid">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.mailid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="11">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;
			$i = 0;
			foreach($this->rows as &$row){
				$publishedid = 'published_'.$row->mailid;
				$visibleid = 'visible_'.$row->mailid;
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo $this->pagination->getRowOffset($i); ?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo acymailing_gridID($i, $row->mailid); ?>
					</td>
					<td align="center" style="text-align:center; width: 25px;">
						<?php
						if(acymailing_level(2)){
							if(acymailing_isAllowed($this->config->get('acl_statistics_manage', 'all')) && !empty($row->senddate)){
								if(acymailing_isAdmin()){
									$urlStat = acymailing_completeLink('diagram&task=mailing&mailid='.$row->mailid, true);
								}else{
									$urlStat = acymailing_completeLink('frontdiagram&task=mailing&mailid='.$row->mailid, true);
								} ?>
								<span class="acystatsbutton"><?php echo acymailing_popup($urlStat, acymailing_isAdmin() ? '<i class="acyicon-statistic"></i>' : '<img src="'.ACYMAILING_IMAGES.'icons/icon-16-stats.png" alt="'.acymailing_translation('STATISTICS', true).'"/>', '', 800, 590); ?></span>
							<?php }
						} ?>
					</td>
					<td align="center" style="text-align:center; width: 18px;">
						<?php
						if(acymailing_isAdmin()){
							if(acymailing_level(3) && acymailing_isAllowed($this->config->get('acl_'.$this->aclCat.'_abtesting', 'all')) && !empty($row->abtesting)){
								$abDetail = unserialize($row->abtesting);
								$urlAbTest = acymailing_completeLink('newsletter&task=abtesting&mailid='.$abDetail['mailids'], true);
								?>
								<span class="acyabtestbutton"><?php echo acymailing_popup($urlAbTest, acymailing_isAdmin() ? '<i class="acyicon-ABtesting"></i>' : '<img src="'.ACYMAILING_IMAGES.'icons/icon-16-acyabtesting.png" alt="'.acymailing_translation('ABTESTING', true).'"/>', '', 800, 590); ?></span>
							<?php }
						}
						?>
					</td>
					<td>
						<?php
						$row->subject = acyEmoji::Decode($row->subject);
						$subjectLine = acymailing_dispSearch($row->subject, $this->pageInfo->search);
						echo acymailing_tooltip('<b>'.acymailing_translation('JOOMEXT_ALIAS').' : </b>'.acymailing_dispSearch($row->alias, $this->pageInfo->search), '', '', $subjectLine, acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'newsletter&task=edit&mailid='.$row->mailid));
						?>
					</td>
					<?php if(acymailing_isAdmin()){ ?>
						<td>
							<?php
							if(!empty($this->mailToLists[$row->mailid])){
								foreach($this->mailToLists[$row->mailid] as $oneList){
									echo '<div class="roundsubscrib roundsub" style="background-color:'.htmlspecialchars($this->listColor[$oneList]->color, ENT_COMPAT, 'UTF-8').';">'.acymailing_tooltip('', $this->listColor[$oneList]->name, '', '&nbsp;&nbsp;&nbsp;&nbsp;').'</div>';
								}
							}
							?>
						</td>
					<?php } ?>
					<td align="center" style="text-align:center">
						<?php echo acymailing_getDate($row->senddate);
						if(!empty($row->countqueued) && acymailing_isAllowed($this->config->get('acl_queue_delete', 'all'))){ ?>
							<br/>
							<button class="acymailing_button"
									onclick="if(confirm('<?php echo str_replace("'", "\'", acymailing_translation_sprintf('ACY_VALID_DELETE_FROM_QUEUE', $row->countqueued)); ?>')){ window.location.href = '<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'newsletter&task=cancelNewsletter&'.acymailing_getFormToken().'&mailid='.$row->mailid); ?>'; } return false;"><?php echo acymailing_translation('ACY_CANCEL'); ?></button>
						<?php } ?>
					</td>
					<td align="center" style="text-align:center">
						<?php
						if(empty($row->fromname)) $row->fromname = $this->config->get('from_name');
						if(empty($row->fromemail)) $row->fromemail = $this->config->get('from_email');
						if(empty($row->replyname)) $row->replyname = $this->config->get('reply_name');
						if(empty($row->replyemail)) $row->replyemail = $this->config->get('reply_email');
						if(!empty($row->fromname)){
							$text = '<b>'.acymailing_translation('FROM_NAME').' : </b>'.$row->fromname;
							$text .= '<br /><b>'.acymailing_translation('FROM_ADDRESS').' : </b>'.$row->fromemail;
							$text .= '<br /><br /><b>'.acymailing_translation('REPLYTO_NAME').' : </b>'.$row->replyname;
							$text .= '<br /><b>'.acymailing_translation('REPLYTO_ADDRESS').' : </b>'.$row->replyemail;
							echo acymailing_tooltip($text, '', '', $row->fromname);
						}
						?>
					</td>
					<td align="center" style="text-align:center">
						<?php
						if(!empty($row->name)){
							$text = '<b>'.acymailing_translation('JOOMEXT_NAME').' : </b>'.$row->name;
							$text .= '<br /><b>'.acymailing_translation('ACY_USERNAME').' : </b>'.$row->username;
							$text .= '<br /><b>'.acymailing_translation('JOOMEXT_EMAIL').' : </b>'.$row->email;
							$text .= '<br /><b>'.acymailing_translation('ACY_ID').' : </b>'.$row->userid;
							echo acymailing_tooltip($text, $row->name, '', $row->name, acymailing_isAdmin() ? acymailing_userEditLink().$row->userid : '');
						}
						?>
					</td>
					<?php if(acymailing_isAdmin()){ ?>
						<td align="center" style="text-align:center">
							<span id="<?php echo $visibleid ?>" class="loading"><?php echo $this->toggleClass->toggle($visibleid, (int)$row->visible, 'mail') ?></span>
						</td>
						<td align="center" style="text-align:center">
							<span id="<?php echo $publishedid ?>" class="loading"><?php echo $this->toggleClass->toggle($publishedid, (int)$row->published, 'mail') ?></span>
						</td>
					<?php } ?>
					<td width="1%" align="center">
						<?php echo $row->mailid; ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
				$i++;
			}
			?>
			</tbody>
		</table>

		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
</div>
views/newsletter/tmpl/form.php000060400000006061152455705230012534 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'newsletter'); ?>" method="post" name="adminForm" id="adminForm" enctype="multipart/form-data">
		<input type="hidden" name="cid[]" value="<?php echo @$this->mail->mailid; ?>"/>
		<input type="hidden" id="tempid" name="data[mail][tempid]" value="<?php echo @$this->mail->tempid; ?>"/>
		<?php $type = empty($this->mail->type) ? 'news' : $this->mail->type; ?>
		<input type="hidden" name="data[mail][type]" value="<?php echo $type; ?>"/>
		<?php acymailing_formOptions(); ?>
		<div style="clear: both;">
			<div class="confirmBoxMM" id="confirmBoxMM" style="display: none;">
				<div id="acy_popup_content">
					<span class="confirmTxtMM" id="confirmTxtMM"></span><br/>
					<button class="acymailing_button" id="confirmCancelMM" onclick="document.getElementById('confirmBoxMM').style.display='none';document.getElementById('modal-background').style.display='none';return false;" style="padding: 6px 15px 6px 10px;">
						<i class="acyicon-cancel" id="cancelSave" style="margin-right: 5px; font-size: 16px;top: 2px; position: relative;"></i><?php echo acymailing_translation('ACY_CANCEL'); ?>
					</button>
					<button class="acymailing_button acymailing_button_delete" id="confirmOkMM" style="padding: 8px 15px 6px 10px;" onclick="acymailing.submitform(pressbutton,document.adminForm)">
						<i class="acyicon-save" id="iconAction" style="margin-right: 5px; font-size: 12px;"></i><span id="textBtnAction"><?php echo acymailing_translation('ACY_SAVE'); ?></span>
					</button>
				</div>
			</div>
			<div id="modal-background" style="display: none;"></div>
			<div id="newsletterLeftColumn">
				<div class="acyblockoptions acyblock_newsletter">
					<span class="acyblocktitle"><?php echo acymailing_translation('ACY_NEWSLETTER_INFORMATION'); ?></span>
					<?php include(dirname(__FILE__).DS.'info.'.basename(__FILE__)); ?>
				</div>
				<div class="acyblockoptions acyblock_newsletter" id="htmlfieldset">
					<span class="acyblocktitle"> <?php echo acymailing_translation('HTML_VERSION'); ?></span>
					<?php echo $this->editor->display(); ?>
				</div>
				<div class="acyblockoptions acyblock_newsletter" id="textfieldset">
					<span class="acyblocktitle"> <?php echo acymailing_translation('TEXT_VERSION'); ?></span>
					<textarea style="width:98%;min-height:250px;" rows="20" name="data[mail][altbody]" id="altbody" placeholder="<?php echo acymailing_translation('AUTO_GENERATED_HTML'); ?>" onClick="zoneToTag='altbody';"><?php echo $this->escape(@$this->mail->altbody); ?></textarea>
				</div>
			</div>
			<div id="newsletterRightColumn" class="acyblockoptions">
				<?php include(dirname(__FILE__).DS.'param.'.basename(__FILE__)); ?>
			</div>
		</div>
		<div class="clr"></div>
	</form>
</div>
views/newsletter/tmpl/inboxactions.php000060400000006402152455705230014270 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
echo $this->tabs->startPanel(acymailing_translation('ACY_INBOX_ACTIONS'), 'mail_inboxactions'); ?>
<?php
if($this->config->get('inboxactionswhitelist', 1)){
	$toggleClass = acymailing_get('helper.toggle');
	$notremind = '<small style="float:right;margin-right:30px;position:relative;">'.$toggleClass->delete('acymailing_messages_warning', 'inboxactionswhitelist_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>';
	acymailing_display(acymailing_translation('ACY_INBOX_ACTIONS_WHITELIST').' <a target="_blank" href="'.ACYMAILING_REDIRECT.'inboxactions">'.acymailing_translation('TELL_ME_MORE').'</a>'.$notremind, 'warning');
}
?>
	<table width="100%" class="acymailing_smalltable" id="metadatatable">
		<tr>
			<td class="paramlist_key">
				<label for="datamailparamsaction">
					<?php echo acymailing_translation('ACY_ACTION'); ?>
				</label>
			</td>
			<td class="paramlist_value">
				<?php $ordering = array();
				$ordering[] = acymailing_selectOption("none", acymailing_translation('ACY_NONE'));
				$ordering[] = acymailing_selectOption("confirm", acymailing_translation('ACY_BUTTON_CONFIRM'));
				$ordering[] = acymailing_selectOption("save", acymailing_translation('ACY_BUTTON_SAVE'));
				$ordering[] = acymailing_selectOption("goto", acymailing_translation('ACY_GOTO'));
				echo acymailing_select($ordering, 'data[mail][params][action]', 'size="1" onchange="displayActionOptions(this.value);" style="width:150px;"', 'value', 'text', @$this->mail->params['action']); ?>
			</td>
		</tr>
		<tr class="action_option action_goto action_confirm action_save">
			<td class="paramlist_key">
				<label for="iba_actionbtntext">
					<?php echo acymailing_translation('ACY_BUTTON_TEXT'); ?>
				</label>
			</td>
			<td class="paramlist_value">
				<input id="iba_actionbtntext" type="text" name="data[mail][params][actionbtntext]" rows="5" cols="30" value="<?php echo @$this->mail->params['actionbtntext']; ?>"/>
			</td>
		</tr>
		<tr class="action_option action_goto action_confirm action_save">
			<td class="paramlist_key">
				<label for="iba_actionurl">
					<?php echo acymailing_translation('URL'); ?>
				</label>
			</td>
			<td class="paramlist_value">
				<input id="iba_actionurl" type="text" name="data[mail][params][actionurl]" placeholder="http://..." rows="5" cols="30" value="<?php echo @$this->mail->params['actionurl']; ?>"/>
			</td>
		</tr>
	</table>
	<script type="text/javascript">
		<!--
		function displayActionOptions(selected){
			var options = document.querySelectorAll(".action_option");
			for(var c = 0; c < options.length; c++){
				if(options[c].style){
					options[c].style.display = 'none';
				}
			}
			if(selected == "none") return;

			options = document.querySelectorAll(".action_" + selected);
			for(var c = 0; c < options.length; c++){
				if(options[c].style){
					options[c].style.display = '';
				}
			}
		}
		displayActionOptions('<?php echo empty($this->mail->params['action']) ? 'none' : $this->mail->params['action']; ?>');
		-->
	</script>
<?php echo $this->tabs->endPanel();
views/newsletter/tmpl/preview.php000060400000005235152455705230013254 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<?php include(dirname(__FILE__).DS.'test.php');
	if($this->type != 'joomlanotification'){ ?>
		<div <?php echo (acymailing_isAdmin()) ? 'class="acyblockoptions" style="width:42%;min-width:480px;"' : 'class="onelineblockoptions"'; ?> id="receiversinfo">
			<span class="acyblocktitle"><?php echo acymailing_translation('NEWSLETTER_SENT_TO'); ?></span>

			<table class="<?php echo (acymailing_isAdmin()) ? 'acymailing_table' : 'adminlist table table-striped'; ?>" cellspacing="1" align="center">
				<tbody>
				<?php if(!empty($this->lists)){
					$k = 0;
					$listids = array();
					foreach($this->lists as $row){
						$listids[] = $row->listid;
						?>
						<tr class="<?php echo "row$k"; ?>">
							<td>
								<?php
								if(!$row->published) echo '<a href="'.acymailing_completeLink('list&task=edit&listid='.$row->listid).'" title="'.acymailing_translation('LIST_PUBLISH', true).'"><img style="margin:0px;" src="'.ACYMAILING_IMAGES.'warning.png" alt="Warning" /></a> ';
								echo acymailing_tooltip($row->description, $row->name, '', $row->name);
								echo ' ( '.acymailing_translation_sprintf('ACY_SELECTED_USERS', $row->nbsub).' )';
								echo '<div class="roundsubscrib rounddisp" style="background-color:'.$row->color.'"></div>';
								?>
							</td>
						</tr>
						<?php $k = 1 - $k;
					}
				}else{ ?>
					<tr>
						<td>
							<?php echo acymailing_translation('EMAIL_AFFECT'); ?>
						</td>
					</tr>
				<?php } ?>
				</tbody>
			</table>
			<?php
			$filterClass = acymailing_get('class.filter');
			if(!empty($this->mail->filter)){
				$resultFilters = $filterClass->displayFilters($this->mail->filter);
				if(!empty($resultFilters)){
					echo '<br />'.acymailing_translation('RECEIVER_LISTS').'<br />'.acymailing_translation('FILTER_ONLY_IF');
					echo '<ul><li>'.implode('</li><li>', $resultFilters).'</li></ul>';
				}
			}

			if(!empty($this->lists)){
				?>
				<div style="text-align:center;font-size:14px;padding-top:10px;margin:10px 30px;border-top: 1px solid #ccc;">
					<?php
					$nbTotalReceivers = $filterClass->countReceivers($listids, $this->mail->filter, $this->mail->mailid);
					echo acymailing_translation_sprintf('SENT_TO_NUMBER', '<span style="font-weight:bold;" id="nbreceivers" >'.$nbTotalReceivers.'</span>');
					?>
				</div>
			<?php } ?>
		</div>
	<?php }
	include(dirname(__FILE__).DS.'previewcontent.php'); ?>
</div>
views/newsletter/tmpl/index.html000060400000000054152455705230013051 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/newsletter/tmpl/info.form.php000060400000011156152455705230013467 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><table<?php if(!acymailing_isAdmin()){
	echo ' class="acymailing_table" style="margin: 10px 0px;"';
} ?> width="100%">
	<tr>
		<td class="acykey" id="subjectkey" valign="top">
			<label for="subject">
				<?php echo acymailing_translation('JOOMEXT_SUBJECT'); ?>
			</label>
		</td>
		<td id="subjectinput">
			<div>
				<input type="text" name="data[mail][subject]" id="subject" style="width:80%;" class="inputbox" value="<?php echo $this->escape(@$this->mail->subject); ?>" onClick="zoneToTag='subject';"/>
			</div>
		</td>
		<td class="acykey" id="publishedkey" valign="top">
			<label for="published">
				<?php echo acymailing_translation('ACY_PUBLISHED'); ?>
			</label>
		</td>
		<td id="publishedinput" valign="top">
			<?php echo ($this->mail->published == 2) ? acymailing_translation('SCHED_NEWS') : acymailing_boolean("data[mail][published]", '', $this->mail->published, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
		</td>
	</tr>
	<tr>
		<td class="acykey" id="aliaskey">
			<label for="alias">
				<?php echo acymailing_translation('JOOMEXT_ALIAS'); ?>
			</label>
		</td>
		<td id="aliasinput">
			<input class="inputbox" type="text" name="data[mail][alias]" id="alias" style="width:80%;" value="<?php echo @$this->mail->alias; ?>" <?php echo($this->type == 'joomlanotification' ? 'readonly' : ''); ?>/>
		</td>
		<?php if ($this->type != 'joomlanotification'){ ?>
		<td class="acykey" id="visiblekey">
			<label for="visible">
				<?php echo acymailing_translation('JOOMEXT_VISIBLE'); ?>
			</label>
		</td>
		<td id="visibleinput">
			<?php echo acymailing_boolean("data[mail][visible]", '', $this->mail->visible, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
		</td>
	</tr>
	<tr>
		<td class="acykey" id="createdkey" valign="top">
			<label for="createdinput">
				<?php echo acymailing_translation('CREATED_DATE'); ?>
			</label>
		</td>
		<td id="createdinput" valign="top">
			<?php echo acymailing_getDate(@$this->mail->created); ?>
		</td>
		<?php } ?>
		<td class="acykey" id="sendhtmlkey">
			<label for="data_mail_htmlfieldset">
				<?php echo acymailing_translation('SEND_HTML'); ?>
			</label>
		</td>
		<td id="sendhtmlinput">
			<?php echo acymailing_boolean("data[mail][html]", 'onclick="updateAcyEditor(this.value); initTagZone(this.value);"', $this->mail->html, acymailing_translation('JOOMEXT_YES'), acymailing_translation('JOOMEXT_NO')); ?>
		</td>
	</tr>
	<?php if($this->type != 'joomlanotification'){ ?>
		<tr class="hidewp">
			<td class="acykey" id="picturekey" valign="top">
				<label for="pictureinput">
					<?php echo acymailing_translation('ACY_THUMBNAIL'); ?>
				</label>
			</td>
			<td id="pictureinput" valign="top">
				<?php
				$uploadfileType = acymailing_get('type.uploadfile');
				echo $uploadfileType->display(true, 'thumb', $this->mail->thumb, 'data[mail][thumb]');
				?>
			</td>
			<td class="acykey" id="summarykey" valign="top">
				<label for="summaryfield">
					<?php echo acymailing_translation('ACY_SUMMARY'); ?>
				</label>
			</td>
			<td id="summaryinput" valign="top">
				<textarea placeholder="<?php echo acymailing_translation('ACY_SUMMARY_PLACEHOLDER') ?>" style="width:80%;height:60px;" id="summaryfield" name="data[mail][summary]"><?php echo $this->escape(@$this->mail->summary); ?></textarea>
			</td>
		</tr>
		<?php
		?>
		<?php if(!empty($this->mail->senddate)){ ?>
			<tr>
				<td class="acykey" id="senddatekey">
					<label for="senddateinput">
						<?php echo acymailing_translation('SEND_DATE'); ?>
					</label>
				</td>
				<td id="senddateinput">
					<?php echo acymailing_getDate(@$this->mail->senddate); ?>
				</td>
				<td class="acykey" id="sentbykey">
					<label for="sentbyinput">
						<?php if(!empty($this->mail->sentby)) echo acymailing_translation('SENT_BY'); ?>
					</label>
				</td>
				<td id="sentbyinput">
					<?php echo @$this->sentbyname; ?>
				</td>
			</tr>
		<?php }
	}
	$jflanguages = acymailing_get('type.jflanguages');
	if($jflanguages->multilingue){
		?>
		<tr>
			<td class="acykey" id="languagekey">
				<label for="jlang">
					<?php echo acymailing_translation('ACY_LANGUAGE'); ?>
				</label>
			</td>
			<td id="languageinput" colspan="3">
				<?php
				$jflanguages->sef = true;
				echo $jflanguages->displayJLanguages('data[mail][language]', empty($this->mail->language) ? '' : $this->mail->language);
				?>
			</td>
		</tr>
	<?php } ?>
</table>
views/newsletter/tmpl/abtesting.php000060400000020262152455705230013550 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content" class="abTestingPage">
	<div id="iframedoc"></div>
	<?php
	if(empty($this->mailid) && empty($this->validationStatus)){
		acymailing_display(acymailing_translation('PLEASE_SELECT_NEWSLETTERS'), 'warning');
		return;
	}
	if(!empty($this->missingMail)) return;
	if($this->validationStatus == 'abTestFinalSend') return; ?>

	<script type="text/javascript">
		function updateReceivers(prct){
			newVal = Math.floor(prct.value *<?php echo $this->nbTotalReceivers; ?> / 100);
			document.getElementById('nbtestreceivers').innerHTML = newVal;
		}
	</script>
	<form action="<?php echo acymailing_completeLink('newsletter', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<input type="hidden" name="mailid" value="<?php echo $this->mailid; ?>"/>

		<div class="onelineblockoptions">
			<?php echo acymailing_translation_sprintf('ABTESTING_PART_RECEIVER', '<input type="text" id="abTesting_prct" name="abTesting_prct" style="width:30px;" value="'.$this->abTestDetail['prct'].'" oninput="updateReceivers(this)">%'); ?>
			<div class="abtesting_mails">
				<table class="acymailing_smalltable">
					<?php
					echo '<thead><tr><th width="45%">'.acymailing_translation('NEWSLETTER').'</th>';
					if(!empty($this->savedValues)){
						echo '<th>'.acymailing_translation('OPEN').'</th><th>'.acymailing_translation('CLICKED_LINK').'</th><th>'.acymailing_translation('ACY_CLICK_EFFICIENCY').'</th><th>'.acymailing_translation('ACY_SENT_EMAILS').'</th>';
						if(!empty($this->abTestDetail['status']) && $this->abTestDetail['status'] == 'testSendOver' && $this->validationStatus != 'abTestAdd' && $this->abTestDetail['action'] == 'manual') echo '<th>'.acymailing_translation('SEND').'</th>';
					}
					echo '</tr></thead>';
					foreach($this->mailsdetails as $oneMail){
						echo '<tr><td>'.$oneMail->subject.'</td>';
						if(!empty($this->savedValues)){
							$open = (!empty($this->statMail[$oneMail->mailid]) ? $this->statMail[$oneMail->mailid]->openunique : '0');
							$click = (!empty($this->statMail[$oneMail->mailid]) ? $this->statMail[$oneMail->mailid]->clickunique : '0');
							$sent = (!empty($this->statMail[$oneMail->mailid]) ? $this->statMail[$oneMail->mailid]->senthtml + $this->statMail[$oneMail->mailid]->senttext : '0');
							if(acymailing_level(3)) $bounceunique = (!empty($this->statMail[$oneMail->mailid]) ? $this->statMail[$oneMail->mailid]->bounceunique : '0');
							if($sent != 0){
								if(acymailing_level(3)){
									$cleanSent = $sent - $bounceunique;
								}else $cleanSent = $sent;
								$openPrct = (!empty($this->statMail[$oneMail->mailid]) && !empty($cleanSent) ? round($this->statMail[$oneMail->mailid]->openunique / $cleanSent * 100) : '0');
								$clickPrct = (!empty($this->statMail[$oneMail->mailid]) && !empty($cleanSent) ? round($this->statMail[$oneMail->mailid]->clickunique / $cleanSent * 100) : '0');
								$efficiencyPrct = (!empty($this->statMail[$oneMail->mailid]) && !empty($open) ? round($click / $open * 100) : '0');
							}else{
								$openPrct = 0;
								$clickPrct = 0;
								$efficiencyPrct = 0;
							}
							$openTxt = (!empty($cleanSent) ? $open.' / '.$cleanSent.' ('.$openPrct.'%)' : $open);
							$clickTxt = (!empty($cleanSent) ? $click.' / '.$cleanSent.' ('.$clickPrct.'%)' : $click);
							echo '<td style="text-align:center">'.$openTxt.'</td>';
							echo '<td style="text-align:center">'.$clickTxt.'</td>';
							echo '<td style="text-align:center">'.$click.' / '.$open.' ('.$efficiencyPrct.'%)</td>';
							echo '<td style="text-align:center">'.$sent.'</td>';
						}
						if(!empty($this->abTestDetail['status']) && $this->abTestDetail['status'] == 'testSendOver' && $this->validationStatus != 'abTestAdd' && $this->abTestDetail['action'] == 'manual'){
							echo '<td><a class="acymailing_button" href="'.acymailing_completeLink('newsletter&task=complete_abtest&mailToSend='.$oneMail->mailid, true).'">'.acymailing_translation('SEND').'</a></td>';
						}
						echo '</tr>';
					} ?>
				</table>
			</div>
			<div>
				<div class="acyblocktitle"><?php echo acymailing_translation('NEWSLETTER_SENT_TO'); ?></div>
				<table class="acymailing_smalltable">
					<tbody>
					<?php if(!empty($this->lists)){
						$k = 0;
						$listids = array();
						foreach($this->lists as $row){
							?>
							<tr class="<?php echo "row$k"; ?>">
								<td>
									<?php
									if(!$row->published) echo '<a href="'.acymailing_completeLink('list&task=edit&listid='.$row->listid).'" title="'.acymailing_translation('LIST_PUBLISH', true).'"><img style="margin:0px;" src="'.ACYMAILING_IMAGES.'warning.png" alt="Warning" /></a> ';
									echo acymailing_tooltip($row->description, $row->name, '', $row->name);
									echo ' ( '.acymailing_translation_sprintf('ACY_SELECTED_USERS', $row->nbsub).' )';
									echo '<div class="roundsubscrib rounddisp" style="background-color:'.$row->color.'"></div>';
									?>
								</td>
							</tr>
							<?php $k = 1 - $k;
						}
					}else{ ?>
						<tr>
							<td>
								<?php echo acymailing_translation('EMAIL_AFFECT'); ?>
							</td>
						</tr>
					<?php } ?>
					</tbody>
				</table>
				<?php
				if(!empty($this->mailReceiver->filter)){
					$resultFilters = $this->filterClass->displayFilters($this->mailReceiver->filter);
					if(!empty($resultFilters)){
						echo '<br />'.acymailing_translation('RECEIVER_LISTS').'<br />'.acymailing_translation('FILTER_ONLY_IF');
						echo '<ul><li>'.implode('</li><li>', $resultFilters).'</li></ul>';
					}
				}

				if(!empty($this->lists)){
					?>
					<div style="text-align:center;font-size:14px;padding-top:10px;margin:10px 30px;border-top: 1px solid #ccc;">
						<?php

						echo acymailing_translation_sprintf('ABTESTING_SENTTO_NUMBER', '<span style="font-weight:bold;" id="nbtestreceivers" >'.$this->nbTestReceivers.'</span>', '<span style="font-weight:bold;" id="nbreceivers" >'.$this->nbTotalReceivers.'</span>');
						?>
					</div>
				<?php } ?>
			</div>
			<?php echo acymailing_translation_sprintf('ABTESTING_MODIFY_RECEIVERS', '<a target="_blank" href="'.acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'newsletter&task=edit&mailid='.$this->mailsdetails[0]->mailid).'">'.$this->mailsdetails[0]->subject.'</a>'); ?>
		</div>
		<div class="onelineblockoptions">
			<?php echo acymailing_translation_sprintf('ABTESTING_DELAY_ACTION', '<input type="text" id="abTesting_delay" name="abTesting_delay" style="width:30px;" value="'.$this->abTestDetail['delay'].'">'); ?>
			<div class="abtesting_actions">
				<div style="margin-bottom: 5px;"><input type="radio" name="abTesting_action" id="abTesting_action_manual" value="manual" <?php echo ($this->abTestDetail['action'] == 'manual') ? 'checked="checked"' : ''; ?>><label for="abTesting_action_manual" class="radiobtn"><?php echo acymailing_translation('DO_NOTHING'); ?></label></div>
				<div style="margin-bottom: 5px;"><input type="radio" name="abTesting_action" id="abTesting_action_open" value="open" <?php echo ($this->abTestDetail['action'] == 'open') ? 'checked="checked"' : ''; ?>><label for="abTesting_action_open" class="radiobtn"><?php echo acymailing_translation('ABTESTING_ACTION_GENERATE_OPEN'); ?></label></div>
				<div style="margin-bottom: 5px;"><input type="radio" name="abTesting_action" id="abTesting_action_click" value="click" <?php echo ($this->abTestDetail['action'] == 'click') ? 'checked="checked"' : ''; ?>><label for="abTesting_action_click" class="radiobtn"><?php echo acymailing_translation('ABTESTING_ACTION_GENERATE_CLICK'); ?></label></div>
				<div style="margin-bottom: 5px;"><input type="radio" name="abTesting_action" id="abTesting_action_mix" value="mix" <?php echo ($this->abTestDetail['action'] == 'mix') ? 'checked="checked"' : ''; ?>><label for="abTesting_action_mix" class="radiobtn"><?php echo acymailing_translation('ABTESTING_ACTION_GENERATE_MIX'); ?></label></div>
			</div>
		</div>
		<input type="hidden" name="nbTotalReceivers" value="<?php echo $this->nbTotalReceivers; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/newsletter/tmpl/filters.php000060400000006120152455705230013235 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

acymailing_importPlugin('acymailing');
$typesFilters = array();
$outputFilters = implode('', acymailing_trigger('onAcyDisplayFilters', array(&$typesFilters, 'mail')));

if(empty($typesFilters)) return;

$filterClass = acymailing_get('class.filter');
$filterClass->addJSFilterFunctions();

$js = '';
$datatype = "filter";
if(!empty($this->mail->$datatype)){
	foreach($this->mail->{$datatype}['type'] as $block => $oneFilter){
		$jsFunction = "if(!document.getElementById('addButton_$block')) addOrBlock();
					document.getElementById('addButton_$block').click();";

		foreach($oneFilter as $num => $oneType) {
			if (empty($oneType)) continue;
			$js .= "
				if(!document.getElementById('" . $datatype . "type$num')){
					" . $jsFunction . "
				}
				
				document.getElementById('" . $datatype . "type$num').value= '$oneType';
				update" . ucfirst($datatype) . "($num);";
			if (empty($this->mail->{$datatype}[$num][$oneType])) continue;

			foreach ($this->mail->{$datatype}[$num][$oneType] as $key => $value) {
				$js .= "
				try{
					document.adminForm.elements['" . $datatype . "[$num][$oneType][$key]'].value = '" . addslashes(str_replace(array("\n", "\r"), ' ', $value)) . "';
					if(document.adminForm.elements['" . $datatype . "[$num][$oneType][$key]'].type && document.adminForm.elements['" . $datatype . "[$num][$oneType][$key]'].type == 'checkbox'){
						document.adminForm.elements['" . $datatype . "[$num][$oneType][$key]'].checked = 'checked';
					}
				}catch(e){}";
			}

			if ($datatype == 'filter') $js .= " countresults($num);";
		}
	}
}

acymailing_addScript(true, "document.addEventListener(\"DOMContentLoaded\", function(){ $js });");

$typevaluesFilters = array();
$typevaluesFilters[] = acymailing_selectOption('', acymailing_translation('FILTER_SELECT'));
foreach($typesFilters as $oneType => $oneName){
	$typevaluesFilters[] = acymailing_selectOption($oneType, $oneName);
}

?>
<br/>
<div class="acy_filter_mail">
	<input type="hidden" name="data[mail][filter]" value=""/>

	<div id="acybase_filters" style="display:none">
		<div id="filters_original">
			<?php echo acymailing_select($typevaluesFilters, "filter[type][__block__][__num__]", 'class="inputbox" size="1" onchange="updateFilter(__num__);countresults(__num__);"', 'value', 'text', '', 'filtertype__num__'); ?>
			<span id="countresult___num__"></span>

			<div class="acyfilterarea" id="filterarea___num__"></div>
		</div>
		<?php echo $outputFilters; ?>
	</div>
	<?php echo acymailing_translation('RECEIVER_LISTS').' '.acymailing_translation('RECEIVER_FILTER'); ?>
	<div class="onelineblockoptions" id="filtersblock">
		<span class="acyblocktitle"><?php echo acymailing_translation('ACY_FILTERS'); ?></span>
		<button id="acyorbutton" class="acymailing_button" onclick="addOrBlock();return false;"><?php echo ucfirst(acymailing_translation('ACY_OR')); ?></button>
	</div>
</div>
views/newsletter/tmpl/test.php000060400000005167152455705230012556 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><form action="<?php echo acymailing_completeLink($this->ctrl); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" <?php if(in_array($this->type, array('news', 'autonews'))){
	if(acymailing_isAdmin()) echo 'style="width:42%;min-width:480px;float:left;margin-right:15px;"';
} ?>>
	<div class="<?php if(acymailing_isAdmin()){
		echo 'acyblockoptions';
	}else{
		echo 'onelineblockoptions';
	} ?> acyblock_newsletter" id="sendatest">
		<span class="acyblocktitle"><?php echo acymailing_translation('SEND_TEST'); ?></span>

		<table width="100%">
			<tr>
				<td valign="top" width="100px;" nowrap="nowrap">
					<?php echo acymailing_translation('SEND_TEST_TO'); ?>
				</td>
				<td>
					<?php echo $this->testreceiverType->display($this->infos->test_selection, $this->infos->test_group, $this->infos->test_emails); ?>
				</td>
			</tr>
			<tr>
				<td nowrap="nowrap">
					<?php echo acymailing_translation('SEND_VERSION'); ?>
				</td>
				<td>
					<?php if($this->mail->html){
						echo acymailing_boolean('test_html', '', $this->infos->test_html, acymailing_translation('HTML'), acymailing_translation('JOOMEXT_TEXT'));
					}else{
						echo acymailing_translation('JOOMEXT_TEXT');
						echo '<input type="hidden" name="test_html" value="0" />';
					} ?>
				</td>
			</tr>
			<tr>
				<td valign="top"><?php echo acymailing_translation('SEND_COMMENT'); ?></td>
				<td>
					<div><textarea placeholder="<?php echo acymailing_translation('SEND_COMMENT_DESC'); ?>" name="commentTest" id="commentTest" style="width:90%;height:80px;"><?php echo acymailing_getVar('string', 'commentTest', ''); ?></textarea></div>
				</td>
			</tr>
			<tr>
				<td>

				</td>
				<td style="padding-top:10px;">
					<button type="submit" class="acymailing_button" onclick="document.adminForm.task.value='sendtest';var val = document.getElementById('message_receivers').value; if(val != ''){ setUser(val); }"><?php echo acymailing_translation('SEND_TEST') ?></button>
				</td>
			</tr>
		</table>
	</div>
	<input type="hidden" name="cid[]" value="<?php echo $this->mail->mailid; ?>"/>
	<?php if(!empty($this->lists)){
		$firstList = reset($this->lists);
		$myListId = $firstList->listid;
	}else{
		$myListId = acymailing_getVar('int', 'listid', 0);
	}
	if(!empty($myListId)){
		?> <input type="hidden" name="listid" value="<?php echo $myListId; ?>"/> <?php } ?>
	<?php acymailing_formOptions(); ?>
</form>
views/newsletter/tmpl/filter.lists.php000060400000015753152455705230014223 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(empty($currentPage)) $currentPage = 'mail';

foreach($this->lists as $oneList){
	$listids[] = $oneList->listid;
}
if(count($this->lists) > 10){
	?>
	<script language="javascript" type="text/javascript">
		<!--
		var listids = new Array(<?php echo implode(',', $listids); ?>);
		function acymailing_searchAList(){
			var filter = document.getElementById("acymailing_searchList").value.toLowerCase();
			for(var i = 0; i < listids.length; i++){
				var itemName = document.getElementById("listName_" + listids[i]).innerHTML.toLowerCase();
				if(itemName.indexOf(filter) > -1){
					document.getElementById("acylistrow_" + listids[i]).style.display = "table-row";
				}else{
					document.getElementById("acylistrow_" + listids[i]).style.display = "none";
				}
			}
		}
		//-->
	</script>
	<div style="margin-bottom:10px;"><input onkeyup="acymailing_searchAList();" type="text" style="width: 200px;max-width:100%;margin-bottom:5px;" placeholder="<?php echo acymailing_translation('ACY_SEARCH'); ?>" id="acymailing_searchList"></div>
<?php }

$k = 0;
$i = 0;

$orderedList = array();
$listsPerCategory = array();
$languages = array();
foreach($this->lists as $row){
	$orderedList[$row->category][$row->listid] = $row;
	$listsPerCategory[$row->category][$row->listid] = $row->listid;
	if(count($this->lists) < 4) continue;

	$languages['all'][$row->listid] = $row->listid;
	if($row->languages == 'all') continue;
	$lang = explode(',', trim($row->languages, ','));
	foreach($lang as $oneLang){
		$languages[strtolower($oneLang)][$row->listid] = $row->listid;
	}
}
ksort($orderedList);
$allCats = array_keys($orderedList);
$categorizedLists = array();
foreach($orderedList as $oneCategory){
	$categorizedLists = array_merge($categorizedLists, $oneCategory);
}

echo '<table class="acymailing_table" id="lists_choice"><tbody>';

$filter_list = acymailing_getVar('int', 'filter_list');
if(empty($filter_list)) $filter_list = acymailing_getVar('int', 'listid');
$selectedLists = explode(',', acymailing_getVar('string', 'listids'));

foreach($categorizedLists as $row){
	if(empty($row->category)) $row->category = acymailing_translation('ACY_NO_CATEGORY');
	if(count($allCats) > 1 && (empty($currentCatgeory) || $row->category != $currentCatgeory)){
		$currentCatgeory = $row->category;
		?>
		<tr class="<?php echo "row$k"; ?>">
			<td colspan="2">
				<a href="#" onclick="checkCats('<?php echo htmlspecialchars(str_replace("'", "\'", $row->category == acymailing_translation('ACY_NO_CATEGORY') ? -1 : $row->category), ENT_QUOTES, "UTF-8"); ?>'); return false;"><strong><?php echo htmlspecialchars($row->category, ENT_QUOTES, "UTF-8"); ?></strong></a>
			</td>
		</tr>
		<?php
	}

	$checked = (bool)($row->{$currentPage.'id'} || // The list was selected before
					  (empty($row->mailid) && empty($this->mail->mailid) && $filter_list == $row->listid) || // When creating a new newsletter when filtering by list from the listing
					  (empty($this->mail->mailid) && count($this->lists) == 1) || // When creating a newsletter and only one list available
					  (in_array($row->listid, $selectedLists))); // Selected lists on the previous page

	$classList = $checked ? 'acy_list_checked' : 'acy_list_unchecked';
	echo '<tr id="acylistrow_'.$row->listid.'" class="row'.$k.' '.$classList.'" onclick="toggleList(\''.$row->listid.'\', null);">
		<td style="display:none;" id="listId_'.$row->listid.'">'.$row->listid.'</td>
		<td style="display:none;" id="listName_'.$row->listid.'">'.$row->name.'</td>
		<td class="acytdcheckbox"><input name="data[list'.$currentPage.']['.$row->listid.']" id="datalistmail'.$row->listid.'" type="hidden" value="'.(int)$checked.'" /></td>
		<td>
			<div class="roundsubscrib rounddisp" style="background-color:'.$row->color.'"></div>';
	$text = '<b>'.acymailing_translation('ACY_ID').' : </b>'.$row->listid;
	$text .= '<br />'.$row->description;
	echo acymailing_tooltip($text, $row->name, 'tooltip.png', $row->name).'
		</td>
	</tr>';

	$k = 1 - $k;
	$i++;
}

if(count($this->lists) > 3){ ?>
	<tr>
		<td></td>
		<td nowrap="nowrap">
			<script language="javascript" type="text/javascript">
				<!--
				var selectedLists = new Array();
				<?php
				foreach($languages as $val => $listids){
					echo "selectedLists['$val'] = new Array('".implode("','", $listids)."'); ";
				}
				?>
				function updateStatus(selection){
					<?php
					$listidAll = "selectedLists['all'][i]+'listmail";
					$listidSelection = "selectedLists[selection][i]+'listmail";
					?>
					for(var i = 0; i < selectedLists['all'].length; i++){
						if(document.getElementById('acylistrow_' + selectedLists['all'][i]).style.display == 'none') continue;
						toggleList(selectedLists['all'][i], 0);
					}
					if(!selectedLists[selection]) return;
					for(i = 0; i < selectedLists[selection].length; i++){
						if(document.getElementById('acylistrow_' + selectedLists[selection][i]).style.display == 'none') continue;
						toggleList(selectedLists[selection][i], 1);
					}
				}
				-->
			</script>
			<?php
			$selectList = array();
			$selectList[] = acymailing_selectOption('none', acymailing_translation('ACY_NONE'));
			foreach($languages as $oneLang => $values){
				if($oneLang == 'all') continue;
				$selectList[] = acymailing_selectOption($oneLang, ucfirst($oneLang));
			}
			$selectList[] = acymailing_selectOption('all', acymailing_translation('ACY_ALL'));
			echo acymailing_radio($selectList, "selectlists", 'onclick="updateStatus(this.value);"', 'value', 'text');
			?>
		</td>
	</tr>
<?php } ?>
</tbody>
</table>

<script language="javascript" type="text/javascript">
	<!--
	function toggleList(id, value){
		var valueField = document.getElementById('datalistmail' + id);
		var row = document.getElementById('acylistrow_' + id);

		if(value == 1 || (valueField.value == 0 && value != 0)){
			valueField.value = 1;
			row.className = row.className.replace('acy_list_unchecked', 'acy_list_checked');
		}else{
			valueField.value = 0;
			row.className = row.className.replace('acy_list_checked', 'acy_list_unchecked');
		}
	}

	var listsCats = new Array();

	<?php
	foreach($listsPerCategory as $val => $listids){
		if(empty($val)) $val = '-1';
		echo "listsCats['".str_replace("'", "\'", $val)."'] = new Array('".implode("','", $listids)."'); ";
	}

	?>
	function checkCats(selection){
		if(!listsCats[selection]) return;
		var select = 0;
		for(var i = 0; i < listsCats[selection].length; i++){
			if(document.getElementById('acylistrow_' + listsCats[selection][i]).style.display == 'none') continue;
			if(document.getElementById('datalistmail' + listsCats[selection][i]).value == 0){
				select = 1;
				break;
			}
		}

		for(i = 0; i < listsCats[selection].length; i++){
			if(document.getElementById('acylistrow_' + listsCats[selection][i]).style.display == 'none') continue;
			toggleList(listsCats[selection][i], select);
		}
	}
	-->
</script>
views/newsletter/index.html000060400000000054152455705230012075 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/newsletter/view.html.php000060400000111111152455705230012523 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class NewsletterViewNewsletter extends acymailingView{
	var $type = 'news';
	var $ctrl = 'newsletter';
	var $nameListing = 'NEWSLETTERS';
	var $nameForm = 'NEWSLETTER';
	var $icon = 'newsletter';
	var $aclCat = 'newsletters';
	var $doc = 'newsletters';

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){
		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$config = acymailing_config();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.mailid', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';

		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$selectedList = acymailing_getUserVar($paramBase."filter_list", 'filter_list', 0, 'int');
		$selectedCreator = acymailing_getUserVar($paramBase."filter_creator", 'filter_creator', 0, 'int');
		$selectedTags = acymailing_getUserVar($paramBase."filter_tags", 'filter_tags', array(), 'array');
		
		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$searchMap = array('a.mailid', 'a.alias', 'a.subject', 'a.fromname', 'a.fromemail', 'a.replyname', 'a.replyemail', 'a.userid', 'b.'.$this->cmsUserVars->name, 'b.'.$this->cmsUserVars->username, 'b.'.$this->cmsUserVars->email);
		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $searchMap)." LIKE $searchVal";
		}

		if($this->type == 'news'){
			$actionExists = acymailing_loadResult('SELECT mailid FROM #__acymailing_mail WHERE type = "action" LIMIT 1');

			$selectedType = acymailing_getUserVar($paramBase."filter_type", 'filter_type', 'news', 'string');
			if(!empty($selectedType) && $actionExists){
				$filters[] = 'a.type = '.acymailing_escapeDB($selectedType);
			}else{
				$filters[] = 'a.type IN ("news","action")';
			}
		}else{
			$filters[] = 'a.type = \''.$this->type.'\'';
		}

		if(!empty($selectedList)) $filters[] = 'c.listid = '.$selectedList;
		if(!empty($selectedCreator)) $filters[] = 'a.userid = '.$selectedCreator;
		if($this->type == 'news'){
			$selectedDate = acymailing_getUserVar($paramBase."filter_date", 'filter_date', 0, 'string');
			if(!empty($selectedDate)){
				if(strlen($selectedDate) > 4){
					$filters[] = 'DATE_FORMAT(FROM_UNIXTIME(senddate),"%Y-%m") = '.acymailing_escapeDB($selectedDate);
				}else $filters[] = 'DATE_FORMAT(FROM_UNIXTIME(senddate),"%Y") = '.acymailing_escapeDB($selectedDate);
			}
		}

		$selection = array('a.mailid', 'a.alias', 'a.subject', 'a.fromname', 'a.fromemail', 'a.replyname', 'a.replyemail', 'a.userid', 'b.'.$this->cmsUserVars->name.' AS name', 'b.'.$this->cmsUserVars->username.' AS username', 'b.'.$this->cmsUserVars->email.' AS email', 'a.created', 'a.frequency', 'a.senddate', 'a.published', 'a.type', 'a.visible', 'a.abtesting');

		if(empty($selectedList)){
			if(acymailing_isAdmin()){
				$query = 'SELECT '.implode(',', $selection).' FROM '.acymailing_table('mail').' as a';
				$queryCount = 'SELECT COUNT(a.mailid) FROM '.acymailing_table('mail').' as a';
			}else{
				$query = 'SELECT '.implode(',', $selection).' FROM '.acymailing_table('listmail').' as c';
				$query .= ' JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
				$queryCount = 'SELECT COUNT(DISTINCT c.mailid) FROM '.acymailing_table('listmail').' as c';
				$queryCount .= ' JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
			}
		}else{
			$query = 'SELECT '.implode(',', $selection).' FROM '.acymailing_table('listmail').' as c';
			$query .= ' JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
			$queryCount = 'SELECT COUNT(c.mailid) FROM '.acymailing_table('listmail').' as c';
			$queryCount .= ' JOIN '.acymailing_table('mail').' as a on a.mailid = c.mailid ';
		}

		$query .= ' LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as b on a.userid = b.'.$this->cmsUserVars->id;

		if(!empty($selectedTags) && count($selectedTags) > 1){
			$tagCondition = array();
			foreach($selectedTags as $oneTag){
				if(strpos($oneTag, '|') === false) continue;
				$tag = explode('|', $oneTag);
				$tagCondition[] = intval($tag[0]);
			}
			$query .= ' JOIN #__acymailing_tagmail AS tm ON a.mailid = tm.mailid AND tagid IN ('.implode(',', $tagCondition).') ';
			$queryCount .= ' JOIN #__acymailing_tagmail AS tm ON a.mailid = tm.mailid AND tagid IN ('.implode(',', $tagCondition).') ';
		}

		$query .= ' WHERE ('.implode(') AND (', $filters).')';

		if(!empty($pageInfo->search)) $queryCount .= ' LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as b on a.userid = b.'.$this->cmsUserVars->id;

		$queryCount .= ' WHERE ('.implode(') AND (', $filters).')';

		$listClass = acymailing_get('class.list');
		if(!acymailing_isAdmin()){
			$lists = $listClass->getFrontendLists();
			if(!empty($lists)){
				$frontListsIds = array();
				if(empty($selectedList)){
					foreach($lists as $oneList){
						$frontListsIds[] = $oneList->listid;
					}
					$query .= ' AND c.listid IN ('.implode(',', $frontListsIds).')';
					$queryCount .= ' AND c.listid IN ('.implode(',', $frontListsIds).')';
				}
			}
			$query .= ' GROUP BY a.mailid ';
		}

		if(!empty($pageInfo->filter->order->value) && !in_array($pageInfo->filter->order->value, array('a.date', 'c.email'))){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		$rows = acymailing_loadObjectList($query, 'mailid', $pageInfo->limit->start, $pageInfo->limit->value);

		if(!empty($rows)){
			$queueCount = acymailing_loadObjectList('SELECT COUNT(*) AS countqueued, mailid FROM '.acymailing_table('queue').' WHERE mailid IN ('.implode(',', array_keys($rows)).') GROUP BY mailid');
			if(!empty($queueCount)){
				foreach($queueCount as $oneQueueCount){
					$rows[$oneQueueCount->mailid]->countqueued = $oneQueueCount->countqueued;
				}
			}
		}

		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$isAdmin = false;
		if(acymailing_isAdmin()){
			$isAdmin = true;

			$buttonPreview = acymailing_translation('ACY_PREVIEW');
			$acyToolbar = acymailing_get('helper.toolbar');
			if($this->type == 'autonews'){
				$acyToolbar->custom('generate', acymailing_translation('GENERATE'), 'process', false, '');
			}elseif($this->type == 'news'){
				$buttonPreview .= ' / '.acymailing_translation('SEND');
			}

			$acyToolbar->custom('preview', $buttonPreview, 'search', true);

			if(acymailing_level(3) && acymailing_isAllowed($config->get('acl_'.$this->aclCat.'_abtesting', 'all')) && $this->type == 'news') $acyToolbar->popup('ABtesting', acymailing_translation('ABTESTING'), acymailing_completeLink('newsletter&task=abtesting', true), 800, 600);

			if(acymailing_level(3)){
				$acyToolbar->popup('import', acymailing_translation('IMPORT'), acymailing_completeLink("newsletter&task=upload", true), 450, 200);
			}
			if(acymailing_level(3) || acymailing_isAllowed($config->get('acl_'.$this->aclCat.'_copy', 'all'))) $acyToolbar->divider();

			$acyToolbar->add();
			$acyToolbar->edit();
			if(acymailing_isAllowed($config->get('acl_'.$this->aclCat.'_copy', 'all'))) $acyToolbar->copy();
			if(acymailing_isAllowed($config->get('acl_'.$this->aclCat.'_delete', 'all'))) $acyToolbar->delete();
			$acyToolbar->divider();
			$acyToolbar->help($this->doc);
			$acyToolbar->setTitle(acymailing_translation($this->nameListing), $this->ctrl);
			$acyToolbar->display();
		}

		$filters = new stdClass();
		if(acymailing_isAdmin()){
			$listmailType = acymailing_get('type.listsmail');
			$listmailType->type = $this->type;
			$filters->list = $listmailType->display('filter_list', $selectedList);
		}else{
			$accessibleLists = array();
			$accessibleLists[] = acymailing_selectOption('0', acymailing_translation('ALL_LISTS'));
			foreach($lists as $oneList){
				$accessibleLists[] = acymailing_selectOption($oneList->listid, $oneList->name);
			}
			$filters->list = acymailing_select($accessibleLists, 'filter_list', 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int)$selectedList);
		}
		$creatorfilterType = acymailing_get('type.creatorfilter');
		$creatorfilterType->type = $this->type;

		$filters->creator = $creatorfilterType->display('filter_creator', $selectedCreator, 'mail');

		if($this->type == 'news'){
			$senddates = acymailing_loadResultArray('SELECT DATE_FORMAT(FROM_UNIXTIME(senddate),"%Y-%m") AS date FROM #__acymailing_mail WHERE senddate IS NOT NULL AND senddate != 0 AND type = "news" GROUP BY date ORDER BY date DESC');
			$sendFilter = array();
			$sendFilter[] = acymailing_selectOption('0', acymailing_translation('SEND_DATE'));
			if(!empty($senddates)){
				$currentYear = '';
				foreach($senddates as $oneSenddate){
					list($year, $month) = explode('-', $oneSenddate);
					if($year != $currentYear){
						$sendFilter[] = acymailing_selectOption($year, '- '.$year.' -');
						$currentYear = $year;
					}
					$sendFilter[] = acymailing_selectOption($oneSenddate, acymailing_date(strtotime($oneSenddate.'-15'), ACYMAILING_J16 ? 'F' : '%B', false));
				}
			}
			$filters->date = acymailing_select($sendFilter, 'filter_date', 'class="inputbox" size="1" onchange="document.adminForm.submit();"', 'value', 'text', $selectedDate);

			if(empty($actionExists)){
				$filters->type = '';
			}else{
				$typeFilter = array();
				$typeFilter[] = acymailing_selectOption('', acymailing_translation('ACY_TYPE'));
				$typeFilter[] = acymailing_selectOption('news', acymailing_translation('NEWSLETTER'));
				$typeFilter[] = acymailing_selectOption('action', acymailing_translation('ACY_DISTRIBUTION'));
				$filters->type = acymailing_select($typeFilter, 'filter_type', 'class="inputbox" size="1" onchange="document.adminForm.submit();"', 'value', 'text', $selectedType);
			}
		}

		if(acymailing_level(3)){
			$tagfieldtype = acymailing_get('type.tagfield');
			$tagfieldtype->onclick = 'document.adminForm.submit();';
			$filters->tags = $tagfieldtype->display('filter_tags', 'listing', $selectedTags);
		}else{
			$filters->tags = '';
		}

		$mailToLists = array();
		foreach($rows as $row){
			$queryList = "SELECT listid FROM #__acymailing_listmail WHERE mailid=".$row->mailid;
			$listMail = acymailing_loadObjectList($queryList, 'listid');
			$mailToLists[$row->mailid] = array_keys($listMail);
		}
		$listColor = acymailing_loadObjectList("SELECT listid, color, name FROM #__acymailing_list", 'listid');
		$this->mailToLists = $mailToLists;
		$this->listColor = $listColor;


		$this->filters = $filters;
		$toggleClass = acymailing_get('helper.toggle');
		$this->toggleClass = $toggleClass;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
		$delay = acymailing_get('type.delaydisp');
		$this->delay = $delay;
		$this->config = $config;
		$this->isAdmin = $isAdmin;

		if($this->type == 'autonews'){
			$frequency = acymailing_get('type.frequency');
			$this->frequencyType = $frequency;
		}
	}

	function form(){
		$_SESSION['timeOnModification'] = time();
		$this->chosen = false;
		$mailid = acymailing_getCID('mailid');
		$templateClass = acymailing_get('class.template');
		$config = acymailing_config();

		if(!empty($mailid)){
			$mailClass = acymailing_get('class.mail');
			$mail = $mailClass->get($mailid);

			if(empty($mail->mailid)){
				acymailing_display('Newsletter '.$mailid.' not found', 'error');
				$mailid = 0;
			}
		}

		if(empty($mailid)){
			$mail = new stdClass();
			$mail->created = time();
			$mail->published = 0;
			$mail->thumb = '';
			if($this->type == 'followup') $mail->published = 1;
			$mail->visible = 1;
			$mail->html = 1;
			$mail->body = '';
			$mail->altbody = '';
			$mail->tempid = 0;

			$templateid = acymailing_getVar('int', 'templateid');
			$email = acymailing_currentUserEmail();
			if(empty($templateid) AND !empty($email)){
				$subscriberClass = acymailing_get('class.subscriber');
				$currentSubscriber = $subscriberClass->get($email);
				if(!empty($currentSubscriber->template)) $templateid = $currentSubscriber->template;
			}

			if(empty($templateid)){
				$myTemplate = $templateClass->getDefault();
			}else{
				$myTemplate = $templateClass->get($templateid);
			}

			if(!empty($myTemplate->tempid)){
				$mail->body = acymailing_absoluteURL($myTemplate->body);
				$mail->altbody = $myTemplate->altbody;
				$mail->tempid = $myTemplate->tempid;
				$mail->subject = $myTemplate->subject;
				$mail->replyname = $myTemplate->replyname;
				$mail->replyemail = $myTemplate->replyemail;
				$mail->fromname = $myTemplate->fromname;
				$mail->fromemail = $myTemplate->fromemail;
			}

			if($this->type == 'autonews'){
				$mail->frequency = 2592000;
			}

			if(!acymailing_isAdmin()){
				if($config->get('frontend_sender', 0)){
					$mail->fromname = acymailing_currentUserName();
					$mail->fromemail = acymailing_currentUserEmail();
				}else{
					if(empty($mail->fromname)) $mail->fromname = $config->get('from_name');
					if(empty($mail->fromemail)) $mail->fromemail = $config->get('from_email');
				}

				if($config->get('frontend_reply', 0)){
					$mail->replyname = acymailing_currentUserName();
					$mail->replyemail = acymailing_currentUserEmail();
				}else{
					if(empty($mail->replyname)) $mail->replyname = $config->get('reply_name');
					if(empty($mail->replyemail)) $mail->replyemail = $config->get('reply_email');
				}
			}
		}

		$sentbyname = '';
		if(!empty($mail->sentby)){
			$sentbyname = acymailing_loadResult('SELECT `'.$this->cmsUserVars->name.'` AS name FROM '.acymailing_table($this->cmsUserVars->table, false).' WHERE `'.$this->cmsUserVars->id.'`= '.intval($mail->sentby).' LIMIT 1');
		}
		$this->sentbyname = $sentbyname;

		if(acymailing_getVar('none', 'task', '') == 'replacetags'){
			$mailerHelper = acymailing_get('helper.mailer');
			$templateClass = acymailing_get('class.template');
			$mail->template = $templateClass->get($mail->tempid);

			acymailing_importPlugin('acymailing');
			$mailerHelper->triggerTagsWithRightLanguage($mail, false);

			if(!empty($mail->altbody)) $mail->altbody = $mailerHelper->textVersion($mail->altbody, false);
		}

		$extraInfos = '';
		$lists = array();
		$values = new stdClass();
		if($this->type == 'followup'){
			$campaignid = acymailing_getVar('int', 'campaign', 0);
			$extraInfos .= '&campaign='.$campaignid;

			$values->delay = acymailing_get('type.delay');
			$this->campaignid = $campaignid;
		}else{
			$listmailClass = acymailing_get('class.listmail');
			$lists = $listmailClass->getLists($mailid);
		}

		if(acymailing_isAdmin()){


			$acyToolbar = acymailing_get('helper.toolbar');
			if(acymailing_isAllowed($config->get('acl_templates_view', 'all'))){
				$acyToolbar->popup('template', acymailing_translation('ACY_TEMPLATE'), acymailing_completeLink("template&task=theme", true));
			}

			if(acymailing_isAllowed($config->get('acl_tags_view', 'all'))) $acyToolbar->popup('tag', acymailing_translation('TAGS'), acymailing_completeLink("tag&task=tag&type=".$this->type, true));

			if(in_array($this->type, array('news', 'followup')) && acymailing_isAllowed($config->get('acl_tags_view', 'all'))){
				$acyToolbar->custom('replacetags', acymailing_translation('REPLACE_TAGS'), 'replacetag', false);
			}

			$buttonPreview = acymailing_translation('ACY_PREVIEW');
			if($this->type == 'news'){
				$buttonPreview .= ' / '.acymailing_translation('SEND');
			}
			$acyToolbar->custom('savepreview', $buttonPreview, 'search', false, '');
			$acyToolbar->divider();
			$acyToolbar->addButtonOption('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
			if(acymailing_isAdmin() && acymailing_level(1)){
				$acyToolbar->addButtonOption('saveastmpl', acymailing_translation('ACY_SAVEASTMPL'), 'saveastmpl', false);
			}
			$acyToolbar->save();
			$acyToolbar->cancel();
			$acyToolbar->divider();
			$acyToolbar->help($this->doc, 'stepbystep');
			$acyToolbar->setTitle(acymailing_translation($this->nameForm), $this->ctrl.'&task=edit&mailid='.$mailid.$extraInfos);
			$acyToolbar->display();
		}

		$values->maxupload = (acymailing_bytes(ini_get('upload_max_filesize')) > acymailing_bytes(ini_get('post_max_size'))) ? ini_get('post_max_size') : ini_get('upload_max_filesize');


		$toggleClass = acymailing_get('helper.toggle');
		if(!acymailing_isAdmin()){
			$toggleClass->ctrl = 'frontnewsletter';
			$toggleClass->extra = '&listid='.acymailing_getVar('int', 'listid');

			$copyAllLists = $lists;
			$userid = acymailing_currentUserId();
			foreach($copyAllLists as $listid => $oneList){
				if(!$oneList->published || empty($userid)){
					unset($lists[$listid]);
					continue;
				}
				if($oneList->access_manage == 'all') continue;
				if($userid == (int)$oneList->userid) continue;
				if(!acymailing_isAllowed($oneList->access_manage)){
					unset($lists[$listid]);
					continue;
				}
			}

			if(empty($lists)){
				acymailing_enqueueMessage('You don\'t have the rights to add or edit an e-mail', 'error');
				acymailing_redirect(acymailing_completeLink('frontnewsletter', false, true));
			}
		}


		$editor = acymailing_get('helper.editor');
		$editor->setTemplate($mail->tempid);
		$editor->name = 'editor_body';
		$editor->content = $mail->body;
		$editor->prepareDisplay();

		$js = 'function updateAcyEditor(htmlvalue){
			if(htmlvalue == "0"){
				window.document.getElementById("htmlfieldset").style.display = "none";
			}else{
				window.document.getElementById("htmlfieldset").style.display = "block";
			}
		}';

		$script = '
		var attachmentNb = 1;
		function addFileLoader(){
			if(attachmentNb > 9) return;
			window.document.getElementById("attachmentsdiv"+attachmentNb).style.display = "";
			attachmentNb++;
		}';


		$script .= '
		document.addEventListener("DOMContentLoaded", function(){
			acymailing.submitbutton = function(pressbutton) {
				if (pressbutton == "cancel") {
					acymailing.submitform(pressbutton,document.adminForm);
					return;
				}
				';

		if(!acymailing_isAdmin()){
			$script .= '
				if(document.getElementsByClassName("acy_list_checked").length < 1){
					alert("'.acymailing_translation('SELECT_LISTS', true).'");
					return false;
				}
				';
		}

		$script .= '
			var subjectObj = window.document.getElementById("subject");
			if(subjectObj.tagName.toLowerCase() == "input"){
				subjectValue = subjectObj.value;
			}else{
				subjectValue = subjectObj.innerHTML;
			}
			
			if(subjectValue.length < 2){
				alert("'.acymailing_translation('ENTER_SUBJECT', true).'");
				return false;
			}
			
			subjectValue = subjectValue.replace(/<img[^>]+>/g,"");
			aliasValue = document.getElementById("alias").value;
			if(subjectValue.length < 2 && aliasValue < 2){
				alert("'.acymailing_translation('ACY_ENTER_SUBJECT_OR_ALIAS', true).'");
				return false;
			}
			'.$editor->jsCode().'
			
			if(pressbutton == "save" || pressbutton == "apply" || pressbutton == "savepreview" || pressbutton == "replacetags" || pressbutton == "saveastmpl"){
				var emailVars = ["fromemail", "replyemail"];
				var val = "";
				for(var key in emailVars){
					if(isNaN(key)) continue;
					val = document.getElementById(emailVars[key]).value;
					if(!validateEmail(val, emailVars[key])){
						return;
					}
				}
				';

		if(!empty($mail->mailid)){
			$urlCheckVersion = acymailing_prepareAjaxURL((acymailing_isAdmin() ? '' : 'front').'newsletter').'&task=checkifedited&mailId='.$mail->mailid;
			$script .= '
				var popup = false;
				var xhr = new XMLHttpRequest();
				xhr.open("GET", "'.$urlCheckVersion.'");
				xhr.onreadystatechange = function(){
					if (xhr.readyState === 4) {
						var response = xhr.responseText.toString();
						var responseSplit = response.split("|");
						
						if(xhr.status !== 200 || response.indexOf("|") == -1 || responseSplit[0] == '.acymailing_currentUserId().'){
							acymailing.submitform(pressbutton,document.adminForm);
							return false;
						}
						
						document.getElementById("confirmTxtMM").innerHTML = responseSplit[1] + " '.acymailing_translation('ACY_SAVE_ANYWAY_NAME', true).'";
						document.getElementById("confirmBoxMM").style.display="inline";
						document.getElementById("modal-background").style.display="inline";
					}
				}
				xhr.send();
				
				return false;
			}
		};
				';
		}else{
			$script .= '}
			acymailing.submitform(pressbutton,document.adminForm);
		};';
		}

		$script .= '});';


		$script .= $editor->jsMethods();

		$script .= "
		function changeTemplate(newhtml,newtext,newsubject,stylesheet,fromname,fromemail,replyname,replyemail,tempid){
			if(newhtml.length>2){".$editor->setContent('newhtml')."}
			var vartextarea = document.getElementById('altbody');
		    if(newtext.length>2) vartextarea.innerHTML = newtext;
			document.getElementById('tempid').value = tempid;
			if(fromname.length>1){
				fromname = fromname.replace('&amp;', '&');
				document.getElementById('fromname').value = fromname;
			}
			if(fromemail.length>1){document.getElementById('fromemail').value = fromemail;}
			if(replyname.length>1){
				replyname = replyname.replace('&amp;', '&');
				document.getElementById('replyname').value = replyname;
			}
			if(replyemail.length>1){document.getElementById('replyemail').value = replyemail;}
			if(newsubject.length>1){
				newsubject = newsubject.replace('&amp;', '&');
				var subjectObj = document.getElementById('subject');
				if(subjectObj.tagName.toLowerCase() == 'input'){
					subjectObj.value = newsubject;
				}else{
				    subjectObj.innerHTML = newsubject;
				}
			}
			".$editor->setEditorStylesheet('tempid')."
		}
		";

		if($mail->html == 1){
			$script .= "var zoneEditor = 'editor_body';";
		}else{
			$script .= "var zoneEditor = 'altbody';";
		}
		$script .= "
			document.addEventListener('DOMContentLoaded', function(){
				setTimeout(function() {
					document.getElementById('htmlfieldset').addEventListener('click', function(){
						zoneToTag = 'editor';
					});	
					
					var ediframe = document.getElementById('htmlfieldset').getElementsByTagName('iframe');
					if(ediframe && ediframe[0]){
						var children = ediframe[0].contentDocument.getElementsByTagName('*');
						for (var i = 0; i < children.length; i++) {
							children[i].addEventListener('click', function(){
								zoneToTag = 'editor';
							});			
						}
					}		
				}, 1000);
			});
		
			var zoneToTag = 'editor';
			function initTagZone(html){ if(html == 0){ zoneEditor = 'altbody'; }else{ zoneEditor = 'editor_body'; }}
		";

		$script .= "var previousSelection = false;
			function insertTag(tag){
				if(zoneEditor == 'editor_body' && zoneToTag == 'editor'){
					try{
						jInsertEditorText(tag,'editor_body',previousSelection);
						return true;
					} catch(err){
						alert('Your editor does not enable AcyMailing to automatically insert the tag, please copy/paste it manually in your Newsletter');
						return false;
					}
				} else{
					try{
						simpleInsert(zoneToTag, tag);
						return true;
					} catch(err){
						alert('Error inserting the tag in the '+ zoneToTag + 'zone. Please copy/paste it manually in your Newsletter.');
						return false;
					}
				}
			}
				
			function simpleInsert(myField, myValue) {
				myField = document.getElementById(myField);

				if (document.selection) {
					myField.focus();
					sel = document.selection.createRange();
					sel.text = myValue;
				} else if (myField.selectionStart || myField.selectionStart == '0') {
					var startPos = myField.selectionStart;
					var endPos = myField.selectionEnd;
					myField.value = myField.value.substring(0, startPos)
						+ myValue
						+ myField.value.substring(endPos, myField.value.length);
				} else if (myField.tagName == 'DIV') {
					myField.innerHTML += myValue;
					document.getElementById('subject').value += myValue;
				} else {
					myField.value += myValue;
				}
			}";

		$script .= "function deleteAttachment(i){
			document.getElementById('attachments'+i+'selection').innerHTML = '';
			document.getElementById('attachments'+i+'suppr').style.display = 'none';
			document.getElementById('attachments'+i).value = '';
			return;
		}";

		acymailing_addScript(true, $js.$script);

		$css = '#confirmBoxMM {
			width: 370px;
			background: rgba(255, 255, 255, 0.8);
			border: 1px solid #d6d6d6;
			padding: 5px;
			border-radius: 5px;
			box-shadow: 1px 1px 5px #dddddd;
			-moz-box-shadow: 1px 1px 5px #dddddd;
			-webkit-box-shadow: 1px 1px 5px #dddddd;
			position: fixed;
			left: 43%;
			top: 40%;
			z-index: 999;
		}
		
		#modal-background{
			position: fixed;
			top: 0px;
			right: 0px;
			left: 0px;
			bottom: 0px;
			z-index: 998;
			background-color: #000;
			opacity: 0.8;
		}
		
		#confirmOkMM:hover{
			-moz-transition: 0.3s;
		  	-o-transition: 0.3s;
		  	-webkit-transition: 0.3S
			transition: 0.3s;
			opacity: 0.7;
		}';

		if(!empty($mail->mailid)) acymailing_addStyle(true, $css);
		$installedPlugin = acymailing_getPlugin('acymailing', 'emojis');
		if(!empty($installedPlugin)){
			$params = new acyParameter($installedPlugin->params);
			if(acymailing_isPluginEnabled('acymailing', 'emojis') && $params->get('subject', 1) == 1){
				if(!ACYMAILING_J30){
					acymailing_addScript(false, ACYMAILING_JS.'jquery/jquery-1.9.1.min.js?v='.filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'jquery'.DS.'jquery-1.9.1.min.js'));
					acymailing_addScript(false, ACYMAILING_JS.'jquery/jquery-ui.min.js?v='.filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'jquery'.DS.'jquery-ui.min.js'));
				}

				acymailing_addScript(false, acymailing_rootURI().'plugins/editors/acyeditor/acyeditor/ckeditor/plugins/smiley/emojionearea.js?v='.filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'plugins'.DS.'smiley'.DS.'emojionearea.js'));
				acymailing_addScript(false, acymailing_rootURI().'plugins/editors/acyeditor/acyeditor/ckeditor/plugins/smiley/dialogs/emojimap.js?v='.filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'plugins'.DS.'smiley'.DS.'dialogs'.DS.'emojimap.js'));
				acymailing_addStyle(false, acymailing_rootURI().'plugins/editors/acyeditor/acyeditor/ckeditor/plugins/smiley/emojionearea.css?v='.filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'plugins'.DS.'smiley'.DS.'emojionearea.css'));
				acymailing_addScript(true, '
					document.addEventListener("DOMContentLoaded", function(){
						jQuery("#subject").emojioneArea({
							pickerPosition: "bottom",
							shortnames: true
						});
					});
				');
			}
		}

		if($this->type == 'autonews'){
			$this->frequencyType = acymailing_get('type.frequency');
			$this->generatingMode = acymailing_get('type.generatemode');
		}

		$this->toggleClass = $toggleClass;
		$this->lists = $lists;
		$this->editor = $editor;
		$this->mail = $mail;
		$tabs = acymailing_get('helper.acytabs');

		$this->tabs = $tabs;
		$this->values = $values;
		$this->config = $config;
	}

	function preview(){
		$mailid = acymailing_getCID('mailid');
		$config = acymailing_config();

		$mailerHelper = acymailing_get('helper.mailer');
		$mailerHelper->loadedToSend = false;
		$mail = $mailerHelper->load($mailid);

		$userClass = acymailing_get('class.subscriber');
		$receiver = $userClass->get(acymailing_currentUserEmail());
		$mail->sendHTML = true;
		acymailing_trigger('acymailing_replaceusertags', array(&$mail, &$receiver, false));
		if(!empty($mail->altbody)) $mail->altbody = $mailerHelper->textVersion($mail->altbody, false);

		$listmailClass = acymailing_get('class.listmail');
		$lists = $listmailClass->getReceivers($mail->mailid, true, false);

		$testreceiverType = acymailing_get('type.testreceiver');

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$infos = new stdClass();
		$infos->test_selection = acymailing_getUserVar($paramBase.".test_selection", 'test_selection', '', 'string');
		$infos->test_group = acymailing_getUserVar($paramBase.".test_group", 'test_group', '', 'string');
		$infos->test_emails = acymailing_getUserVar($paramBase.".test_emails", 'test_emails', '', 'string');
		$infos->test_html = acymailing_getUserVar($paramBase.".test_html", 'test_html', 1, 'int');

		if(acymailing_isAdmin()){


			$acyToolbar = acymailing_get('helper.toolbar');
			if(acymailing_isAllowed($config->get('acl_'.$this->aclCat.'_spam_test', 'all'))){
				$acyToolbar->popup('spamtest', acymailing_translation('SPAM_TEST'), acymailing_completeLink("send&task=spamtest&mailid=".$mailid, true));
			}
			if($this->type == 'news'){
				if(acymailing_level(1) && acymailing_isAllowed($config->get('acl_newsletters_schedule', 'all'))){
					if($mail->published == 2){
						$acyToolbar->custom('unschedule', acymailing_translation('UNSCHEDULE'), 'schedule', false);
					}else{
						$acyToolbar->popup('schedule', acymailing_translation('SCHEDULE'), acymailing_completeLink("send&task=scheduleready&mailid=".$mailid, true));
					}
				}
				if(acymailing_isAllowed($config->get('acl_newsletters_send', 'all'))){
					$acyToolbar->popup('send', acymailing_translation('SEND'), acymailing_completeLink("send&task=sendready&mailid=".$mailid, true));
				}
			}


			$acyToolbar->divider();
			$acyToolbar->custom('edit', acymailing_translation('ACY_EDIT'), 'edit', false);
			$acyToolbar->cancel();
			$acyToolbar->divider();
			$acyToolbar->help($this->doc);
			$acyToolbar->setTitle(acymailing_translation('ACY_PREVIEW').' : '.$mail->subject, $this->ctrl.'&task=preview&mailid='.$mailid);
			$acyToolbar->display();
		}

		preg_match('@href="{unsubscribe:(.*)}"@', $mail->body, $match);//we get the tag unsubscribe
		if(!empty($match)){
			$mail->body = str_replace($match[0], 'href="'.$match[1].'"', $mail->body);
		}

		$this->lists = $lists;
		$this->infos = $infos;
		$this->testreceiverType = $testreceiverType;
		$this->mail = $mail;

		if($mail->html){
			$templateClass = acymailing_get('class.template');
			if(!empty($mail->tempid)) $templateClass->createTemplateFile($mail->tempid);
			$templateClass->displayPreview('newsletter_preview_area', $mail->tempid, $mail->subject);
		}
	}

	function upload(){
		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->custom('douploadnewsletter', acymailing_translation('IMPORT'), 'import', false);
		$acyToolbar->setTitle(acymailing_translation('IMPORT'));
		$acyToolbar->topfixed = false;
		$acyToolbar->display();
	}

	function abtesting(){
		$mailids = acymailing_getVar('string', 'mailid');
		$validationStatus = acymailing_getVar('string', 'validationStatus');
		$noMsg = false;
		$noBtn = false;
		if((!empty($mailids) && strpos($mailids, ',') !== false)){
			$warningMsg = array();

			$mailsArray = explode(',', $mailids);
			acymailing_arrayToInteger($mailsArray);

			$mailids = implode(',', $mailsArray);
			$this->mailid = $mailids;
			$query = 'SELECT abtesting FROM #__acymailing_mail WHERE mailid IN ('.implode(',', $mailsArray).') AND abtesting IS NOT NULL';
			$resDetail = acymailing_loadResultArray($query);
			if(!empty($resDetail) && count($resDetail) != count($mailsArray)){
				$titlePage = acymailing_translation('ABTESTING');
				acymailing_display(acymailing_translation('ABTESTING_MISSINGEMAIL'), 'warning');
				$this->missingMail = true;
			}else{
				$abTestDetail = array();
				if(empty($resDetail)){
					$abTestDetail['mailids'] = $mailids;
					$abTestDetail['prct'] = 10;
					$abTestDetail['delay'] = 2;
					$abTestDetail['action'] = 'manual';
				}else{
					$abTestDetail = unserialize($resDetail[0]);
					$savedIds = explode(',', $abTestDetail['mailids']);
					sort($savedIds);
					sort($mailsArray);
					if(!empty($abTestDetail['status']) && in_array($abTestDetail['status'], array('inProgress', 'testSendOver', 'abTestFinalSend')) && $savedIds != $mailsArray){
						$warningMsg[] = acymailing_translation('ABTESTING_TESTEXIST');
						$mailsArray = $savedIds;
						$mailids = implode(',', $mailsArray);
					}
					$this->savedValues = true;
					if($abTestDetail['status'] == 'inProgress') $warningMsg[] = acymailing_translation('ABTESTING_INPROGRESS');
				}

				if($validationStatus == 'abTestAdd') $noMsg = true;

				if(!empty($abTestDetail['status']) && $abTestDetail['status'] == 'abTestFinalSend' && !empty($abTestDetail['newMail'])){
					$mailInQueueErrorMsg = acymailing_translation('ABTESTING_FINALMAILINQUEUE');
					$mailTocheck = '='.$abTestDetail['newMail'];
				}else{
					$mailInQueueErrorMsg = acymailing_translation('ABTESTING_TESTMAILINQUEUE');
					$mailTocheck = ' IN ('.implode(',', $mailsArray).')';
				}
				$query = "SELECT COUNT(*) FROM #__acymailing_queue WHERE mailid".$mailTocheck;
				$queueCheck = acymailing_loadResult($query);
				if(!empty($queueCheck) && $validationStatus != 'abTestAdd'){
					acymailing_enqueueMessage($mailInQueueErrorMsg, 'error');
					$noMsg = true;
				}

				if(!empty($resDetail) && empty($queueCheck) && in_array($abTestDetail['status'], array('inProgress', 'abTestFinalSend'))){
					if($abTestDetail['status'] == 'inProgress'){
						$abTestDetail['status'] = 'testSendOver';
					}else $abTestDetail['status'] = 'completed';
					$query = "UPDATE #__acymailing_mail SET abtesting=".acymailing_escapeDB(serialize($abTestDetail))." WHERE mailid IN (".implode(',', $mailsArray).")";
					acymailing_query($query);
				}

				if(!empty($abTestDetail['status']) && $abTestDetail['status'] == 'testSendOver') acymailing_enqueueMessage(acymailing_translation('ABTESTING_READYTOSEND'), 'info');
				if(!empty($abTestDetail['status']) && $abTestDetail['status'] == 'completed') acymailing_enqueueMessage(acymailing_translation('ABTESTING_COMPLETE'), 'info');

				$this->abTestDetail = $abTestDetail;

				$nbMails = count($mailsArray);
				$titleStr = "A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z";
				$titlePage = acymailing_translation_sprintf('ABTESTING_TITLE', substr($titleStr, 0, min($nbMails, 26) * 2 - 1));
				$mailClass = acymailing_get('class.mail');
				$mailsDetails = array();
				foreach($mailsArray as $mailid){
					$mailsDetails[] = $mailClass->get($mailid);
				}
				$this->mailsdetails = $mailsDetails;

				$mailerHelper = acymailing_get('helper.mailer');
				$mailerHelper->loadedToSend = false;
				$mailReceiver = $mailerHelper->load($mailsArray[0]);
				$listmailClass = acymailing_get('class.listmail');
				$lists = $listmailClass->getReceivers($mailReceiver->mailid, true, false);
				$this->lists = $lists;
				$this->mailReceiver = $mailReceiver;
				$filterClass = acymailing_get('class.filter');
				$this->filterClass = $filterClass;
				$listids = array();
				foreach($lists as $oneList){
					$listids[] = $oneList->listid;
				}
				$nbTotalReceivers = $filterClass->countReceivers($listids, $this->mailReceiver->filter, $this->mailReceiver->mailid);
				if($nbTotalReceivers < 50){
					$warningMsg[] = acymailing_translation_sprintf('ABTESTING_NOTENOUGHUSER', $nbTotalReceivers);
					$noBtn = true;
				}
				$this->nbTotalReceivers = $nbTotalReceivers;
				$this->nbTestReceivers = floor($nbTotalReceivers * $abTestDetail['prct'] / 100);

				if($noMsg || $noBtn) $noButton = true;

				$queryStat = 'SELECT mailid, openunique, clickunique, senthtml, senttext, bounceunique FROM #__acymailing_stats WHERE mailid IN ('.$mailids.')';
				$resStat = acymailing_loadObjectList($queryStat, 'mailid');
				if(!empty($resStat)){
					$this->statMail = $resStat;
					$warningMsg[] = acymailing_translation('ABTESTING_STAT_WARNING');
				}
				if(!empty($warningMsg) && $noMsg == false) acymailing_enqueueMessage(implode('<br />', $warningMsg), 'warning');
			}
		}else{
			$titlePage = acymailing_translation('ABTESTING');
		}

		$this->validationStatus = $validationStatus;
		$this->titlePage = $titlePage;

		$acyToolbar = acymailing_get('helper.toolbar');
		if(empty($noButton) && (!empty($this->mailid) || !empty($this->validationStatus))){
			$acyToolbar->custom('test', acymailing_translation('ABTESTING_TEST'), 'test', false, "if(confirm('".acymailing_translation('PROCESS_CONFIRMATION', true)."')){acymailing.submitbutton('abtest');} return false;");
		}
		$acyToolbar->help('a-b-testing');
		$acyToolbar->setTitle(acymailing_translation('ABTESTING'));
		$acyToolbar->topfixed = false;
		$acyToolbar->display();
	}
}
views/dashboard/view.html.php000060400000016327152455705230012273 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class dashboardViewDashboard extends acymailingView{

	function display($tpl = null){
		$config = acymailing_config();

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->help('dashboard');
		$acyToolbar->setTitle(acymailing_translation('ACY_CPANEL'), 'dashboard');
		$acyToolbar->display();

		$userQuery = 'SELECT (confirmed + enabled) AS addition, COUNT(subid) AS total FROM #__acymailing_subscriber GROUP BY addition';
		$userResult = acymailing_loadObjectList($userQuery, 'addition');

		$userStats = new stdClass();
		$userStats->nbUnconfirmedAndDisabled = (empty($userResult[0]->total) ? 0 : $userResult[0]->total);
		$userStats->nbConfirmed = (empty($userResult[1]->total) ? 0 : $userResult[1]->total);
		$userStats->nbConfirmed += (empty($userResult[2]->total) ? 0 : $userResult[2]->total);
		$userStats->total = $userStats->nbConfirmed + $userStats->nbUnconfirmedAndDisabled;

		$userStats->confirmedPercent = (empty($userStats->total) ? 0 : round((($userStats->nbConfirmed * 100) / $userStats->total), 0));

		$listsQuery = "SELECT COUNT(DISTINCT(l.listid)) FROM #__acymailing_list as l LEFT JOIN #__acymailing_listsub as ls ON l.listid=ls.listid WHERE l.type='list' AND ls.status=1 AND ls.subid IS NOT NULL";
		$atLeastOneSub = acymailing_loadResult($listsQuery);

		$nbLists = acymailing_loadResult('SELECT COUNT(listid) FROM #__acymailing_list WHERE type = "list"');

		$listStats = new stdClass();
		$listStats->atLeastOneSub = $atLeastOneSub;
		$listStats->noSub = $nbLists - $atLeastOneSub;
		$listStats->total = $nbLists;

		$listStats->subscribedPercent = (empty($nbLists) ? 0 : round((($atLeastOneSub * 100) / $nbLists), 0));

		$nlQuery = 'SELECT count(mailid) AS total, published FROM #__acymailing_mail WHERE type = "news" GROUP BY published';
		$nlResult = acymailing_loadObjectList($nlQuery, 'published');

		$nlStats = new stdClass();
		$nlStats->nbUnpublished = (empty($nlResult[0]->total) ? 0 : $nlResult[0]->total);
		$nlStats->nbpublished = (empty($nlResult[1]->total) ? 0 : $nlResult[1]->total);
		$nlStats->total = $nlStats->nbpublished + $nlStats->nbUnpublished;

		$nlStats->publishedPercent = (empty($nlStats->total) ? 0 : round((($nlStats->nbpublished * 100) / $nlStats->total), 0));


		$this->nlStats = $nlStats;
		$this->userStats = $userStats;
		$this->listStats = $listStats;
		$this->config = $config;




		$geolocParam = $config->get('geolocation');
		if(!empty($geolocParam) && $geolocParam != 1){
			$condition = '';
			if(strpos($geolocParam, 'creation') !== false){
				$condition = " WHERE geolocation_type='creation'";
			}

			$nbUsersToGet = 100;
			$query = 'SELECT geolocation_type, geolocation_subid, geolocation_country_code, geolocation_city, geolocation_country, geolocation_state';
			$query .= ' FROM #__acymailing_geolocation'.$condition.' GROUP BY geolocation_subid ORDER BY geolocation_created DESC LIMIT '.$nbUsersToGet;
			$geoloc = acymailing_loadObjectList($query);

			if(!empty($geoloc)){
				$markCities = array();
				$diffCountries = false;
				$dataDetails = array();
				$addresses = array();
				foreach($geoloc as $mark){
					$indexCity = array_search($mark->geolocation_city, $markCities);
					if($indexCity === false){
						array_push($markCities, $mark->geolocation_city);
						array_push($dataDetails, 1);
						$addresses[] = $mark->geolocation_city.' '.$mark->geolocation_state.' '.$mark->geolocation_country;
					}else{
						$dataDetails[$indexCity] += 1;
					}

					if(!$diffCountries){
						if(!empty($region) && $region != $mark->geolocation_country_code){
							$region = 'world';
							$diffCountries = true;
						}else{
							$region = $mark->geolocation_country_code;
						}
					}
				}
				$this->geoloc_city = $markCities;
				$this->geoloc_details = $dataDetails;
				$this->geoloc_region = $region;
				$this->geoloc_addresses = $addresses;
				$this->nbUsersToGet = $nbUsersToGet;
			}
		}

		acymailing_addScript(false, "https://www.google.com/jsapi");
		$statsusers = acymailing_loadObjectList("SELECT count(`subid`) as total, DATE_FORMAT(FROM_UNIXTIME(`created`),'%Y-%m-%d') as subday FROM ".acymailing_table('subscriber')." WHERE `created` > 100000 GROUP BY subday ORDER BY subday DESC LIMIT 15");
		$this->statsusers = $statsusers;

		$users10 = acymailing_loadObjectList('SELECT name,email,html,confirmed,subid,created FROM '.acymailing_table('subscriber').' ORDER BY subid DESC LIMIT 10');
		$this->users = $users10;

		$toggleClass = acymailing_get('helper.toggle');
		$this->toggleClass = $toggleClass;


		$listStatusQuery = 'SELECT count(subid) AS total, list.name AS listname, list.listid, listsub.status FROM #__acymailing_list AS list JOIN #__acymailing_listsub AS listsub ON list.listid = listsub.listid GROUP BY listsub.listid, listsub.status';
		$listStatusResult = acymailing_loadObjectList($listStatusQuery);

		$listStatusData = array();
		foreach($listStatusResult as $oneResult){
			$listStatusData[$oneResult->listname][$oneResult->status] = $oneResult->total;
		}
		$this->listStatusData = $listStatusData;


		$newsletters = acymailing_loadObjectList("SELECT count(userstats.`mailid`) as total, DATE_FORMAT(FROM_UNIXTIME(`senddate`), '%Y-%m-%d') AS send_date,
						SUM(CASE WHEN fail>0 THEN 1 ELSE 0 END) AS nbFailed
						FROM ".acymailing_table('userstats')." AS userstats
						WHERE userstats.senddate > ".intval(time() - 2628000)."
						GROUP BY send_date
						ORDER BY send_date DESC");

		$this->newsletters = $newsletters;



		$progressBarSteps = new stdClass();
		$progressBarSteps->listCreated = (!empty($listStats->total) ? 1 : 0);
		$progressBarSteps->contactCreated = (!empty($userStats->total) ? 1 : 0);
		$progressBarSteps->newsletterCreated = (!empty($nlStats->total) ? 1 : 0);

		$result = acymailing_loadResult('SELECT subid FROM #__acymailing_userstats LIMIT 1');

		$progressBarSteps->newsletterSent = (!empty($result) ? 1 : 0);
		$this->progressBarSteps = $progressBarSteps;

		$news = @simplexml_load_file('https://www.acyba.com/acynews.xml');
		if(!empty($news->news)) {
			
			$currentLanguage = acymailing_getLanguageTag();

			$latestNews = null;
			foreach ($news->news as $oneNews) {
				if (!empty($latestNews) && strtotime($latestNews->date) > strtotime($oneNews->date)) break;

				if (empty($oneNews->published) || (strtolower($oneNews->language) != strtolower($currentLanguage) && (strtolower($oneNews->language) != 'default' || !empty($latestNews)))) continue;

				if (!empty($oneNews->extension) && strtolower($oneNews->extension) != 'acymailing') continue;

				if (!empty($oneNews->cms) && strtolower($oneNews->cms) != 'joomla') continue;

				if (!empty($oneNews->level) && strtolower($oneNews->level) != strtolower($config->get('level'))) continue;

				if (!empty($oneNews->version)) {
					list($version, $operator) = explode('_', $oneNews->version);
					if(!version_compare($config->get('version'), $version, $operator)) continue;
				}

				$latestNews = $oneNews;
			}

			if (!empty($latestNews)) {
				$this->contentToDisplay = $latestNews;
				$this->config = $config;
			}
		}

		parent::display($tpl);
	}
}
views/dashboard/index.html000060400000000054152455705230011630 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/dashboard/tmpl/users.php000060400000004175152455705230012471 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><br style="font-size:1px;"/>
<div id="dash_users">

	<h1 class="acy_graphtitle"> <?php echo acymailing_translation('ACY_LAST_TEN_SUBSCRIBERS') ?> </h1>
	<table class="acymailing_table" cellpadding="1">
		<thead>
		<tr>
			<th class="title">
				<?php echo acymailing_translation('JOOMEXT_NAME'); ?>
			</th>
			<th class="title">
				<?php echo acymailing_translation('JOOMEXT_EMAIL'); ?>
			</th>
			<th class="title titledate">
				<?php echo acymailing_translation('CREATED_DATE'); ?>
			</th>
			<th class="title titletoggle">
				<?php echo acymailing_translation('RECEIVE_HTML'); ?>
			</th>
			<?php if($this->config->get('require_confirmation', 1)){ ?>
				<th class="title titletoggle">
					<?php echo acymailing_translation('CONFIRMED'); ?>
				</th>
			<?php } ?>
		</tr>
		</thead>
		<tbody>
		<?php
		$k = 0;
		foreach($this->users as $oneUser){
			$row =& $oneUser;

			$confirmedid = 'confirmed_'.$row->subid;
			$htmlid = 'html_'.$row->subid;

			?>
			<tr class="<?php echo "row$k"; ?>">
				<td>
					<?php echo $this->escape($row->name); ?>
				</td>
				<td>
					<a href="<?php echo acymailing_completeLink('subscriber&task=edit&subid='.$row->subid) ?>"><?php echo $this->escape($row->email); ?></a>
				</td>
				<td align="center" style="text-align:center">
					<?php echo acymailing_getDate($row->created); ?>
				</td>
				<td align="center" style="text-align:center">
					<span id="<?php echo $htmlid ?>" class="loading"><?php echo $this->toggleClass->toggle($htmlid, $row->html, 'subscriber') ?></span>
				</td>
				<?php if($this->config->get('require_confirmation', 1)){ ?>
					<td align="center" style="text-align:center">
						<span id="<?php echo $confirmedid ?>" class="loading"><?php echo $this->toggleClass->toggle($confirmedid, $row->confirmed, 'subscriber') ?></span>
					</td>
				<?php } ?>
			</tr>
			<?php
			$k = 1 - $k;
		}
		?>
		</tbody>
	</table>
</div>
views/dashboard/tmpl/stats.php000060400000012232152455705230012457 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="dashboard_mainstat">
	<div class="acydashboard_content">
		<div class="acycircles">
			<div class="circle stat_subscribers" onclick="displayDetails('userStatisticDetails');">

				<!-- circle animation 1 -->
				<div class="progressdiv" data-percent="<?php echo $this->userStats->confirmedPercent; ?>" data-title="<?php echo $this->userStats->total; ?>">
					<svg class="acyprogress" width="178" height="178" viewport="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg">
						<circle r="80" cx="89" cy="89" fill="#fff" stroke-dasharray="502.4" stroke-dashoffset="0" stroke="#93bfeb"></circle>
						<circle class="bar" r="80" cx="89" cy="89" fill="transparent" stroke-dasharray="502.4" stroke-dashoffset="0"></circle>
					</svg>
				</div>
				<span class="circle_title"><?php echo acymailing_translation('ACY_DASHBOARD_USERS'); ?></span>
				<span class="circle_informations">
					<span class="stats_blue_point"></span> <?php echo acymailing_translation('ENABLED'); ?>
					<span class="stats_grey_point"></span> <?php echo acymailing_translation('DISABLED'); ?>
				</span>
				<br/>
				<button class="acymailing_button"><?php echo acymailing_translation_sprintf("ACY_MORE_USER_STATISTICS", acymailing_translation('USERS')) ?></button>
			</div>

			<div class="circle stat_lists" onclick="displayDetails('listStatisticDetails');">

				<!-- circle animation 2 -->
				<div class="progressdiv" data-percent="<?php echo $this->listStats->subscribedPercent; ?>" data-title="<?php echo $this->listStats->total; ?>">
					<svg class="acyprogress" width="178" height="178" viewport="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg">
						<circle r="80" cx="89" cy="89" fill="#fff" stroke-dasharray="502.4" stroke-dashoffset="0" stroke="#c9c472"></circle>
						<circle class="bar" r="80" cx="89" cy="89" fill="transparent" stroke-dasharray="502.4" stroke-dashoffset="0"></circle>
					</svg>
				</div>
				<span class="circle_title"><?php echo acymailing_translation('ACY_DASHBOARD_LISTS'); ?></span>
				<span class="circle_informations">
					<span class="stats_green_point"></span> <?php echo acymailing_translation('ACY_ATLEASTONE'); ?>
					<span class="stats_grey_point"></span> <?php echo acymailing_translation('ACY_NOSUB'); ?>
				</span>
				<br/>
				<button class="acymailing_button"><?php echo acymailing_translation_sprintf("ACY_MORE_LIST_STATISTICS", acymailing_translation('LISTS')) ?></button>

			</div>
			<div class="circle stat_newsletters" onclick="displayDetails('newsletterStatisticDetails');">
				<!-- circle animation 3 -->
				<div class="progressdiv" data-percent="<?php echo $this->nlStats->publishedPercent; ?>" data-title="<?php echo $this->nlStats->total; ?>">
					<svg class="acyprogress" width="178" height="178" viewport="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg">
						<circle r="80" cx="89" cy="89" fill="#fff" stroke-dasharray="502.4" stroke-dashoffset="0" stroke="#7c95ad"></circle>
						<circle class="bar" r="80" cx="89" cy="89" fill="transparent" stroke-dasharray="502.4" stroke-dashoffset="0"></circle>
					</svg>
				</div>
				<span class="circle_title"><?php echo acymailing_translation('ACY_DASHBOARD_NEWSLETTERS'); ?></span>
				<span class="circle_informations">
					<span class="stats_darkblue_point"></span> <?php echo acymailing_translation('ACY_PUBLISHED'); ?>
					<span class="stats_grey_point"></span> <?php echo acymailing_translation('ACY_UNPUBLISHED'); ?>
				</span>
				<br/>
				<button class="acymailing_button"><?php echo acymailing_translation_sprintf("ACY_MORE_NEWSLETTER_STATISTICS", acymailing_translation('NEWSLETTER')) ?></button>
			</div>
		</div>
		<div class="acygraph">
			<div id="userStatisticDetails" style="display: none;">
				<?php
				if(acymailing_isAllowed($this->config->get('acl_subscriber_manage', 'all'))){
					echo '<div id="userLocations">';
					include(dirname(__FILE__).DS.'userlocations.php');
					echo '</div>';
				}
				?>
				<?php
				if(acymailing_isAllowed($this->config->get('acl_subscriber_manage', 'all'))){
					echo '<div id="userStatsDiagram">';
					include(dirname(__FILE__).DS.'userstats.php');
					echo '</div>';
				}

				if(acymailing_isAllowed($this->config->get('acl_subscriber_manage', 'all'))){
					echo '<div id="recentUserListing">';
					include(dirname(__FILE__).DS.'users.php');
					echo '</div>';
				}
				?>
			</div>
			<div id="listStatisticDetails" style="display: none;">
				<?php
				if(acymailing_isAllowed($this->config->get('acl_lists_manage', 'all'))){
					echo '<div id="listStatsDiagram">';
					include(dirname(__FILE__).DS.'liststats.php');
					echo '</div>';
				}
				?>

			</div>
			<div id="newsletterStatisticDetails" style="display: none;">
				<?php
				if(acymailing_isAllowed($this->config->get('acl_queue_manage', 'all'))){
					echo '<div id="queueStatsDiagram">';
					include(dirname(__FILE__).DS.'queuestats.php');
					echo '</div>';
				}
				?>
			</div>
		</div>
	</div>
</div>


views/dashboard/tmpl/index.html000060400000000054152455705230012604 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/dashboard/tmpl/userstats.php000060400000003434152455705230013362 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(empty($this->statsusers)) echo acymailing_translation("ACY_NO_STATISTICS");
else{ ?>

	<script language="JavaScript" type="text/javascript">
		function statsusers() {
			var dataTable = new google.visualization.DataTable();
			dataTable.addRows(<?php echo count($this->statsusers); ?>);

			dataTable.addColumn('date');
			dataTable.addColumn('number', '<?php echo acymailing_translation('USERS',true); ?>');

			<?php
			$i = count($this->statsusers)-1;
			foreach($this->statsusers as $oneResult){
				echo "dataTable.setValue($i, 0, new Date('".substr($oneResult->subday,0,4)."','".intval(substr($oneResult->subday,5,2) - 1)."','".substr($oneResult->subday,8,2)."')); ";
				echo "dataTable.setValue($i, 1, ".intval(@$oneResult->total)."); ";
				if($i-- == 0) break;
			}
			?>
			var container = document.getElementsByClassName('acygraph')[0];
			var width = container.getBoundingClientRect().width;

			var vis = new google.visualization.ColumnChart(document.getElementById('statsusers'));
			var options = {
				height: 300,
				legend: 'none',
				vAxis: {minValue: 0},
				hAxis: {format: 'dd MMM'},
				backgroundColor: 'transparent',
				colors: ['#adccea'],
				width: width
			};

			vis.draw(dataTable, options);
		}
		google.load("visualization", "1", {packages: ["corechart"]});
		google.setOnLoadCallback(statsusers);

	</script>
	<h1 class="acy_graphtitle"> <?php echo acymailing_translation('ACY_SUBSCRIPTION_CHRONOLOGY') ?> </h1>
	<div id="statsusers" style="width:100%;text-align:center;margin-bottom:20px"></div>
<?php } ?>
views/dashboard/tmpl/default.php000060400000015517152455705230012756 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>

	<script type="text/javascript">
		function displayDetails(detailsDivID){

			var oldDisplay = document.getElementById(detailsDivID).style.display;

			document.getElementById('userStatisticDetails').style.display = "none";
			document.getElementById('newsletterStatisticDetails').style.display = "none";
			document.getElementById('listStatisticDetails').style.display = "none";

			if(oldDisplay == 'block'){
				document.getElementById(detailsDivID).style.display = 'none';
			}else{
				document.getElementById(detailsDivID).style.display = 'block';
			}
		}

		(function(){
			window.onload = function(){
				var circles = document.querySelectorAll('.acyprogress');
				for(var i = 0; i < 3; i++){
					var totalProgress = circles[i].querySelector('circle').getAttribute('stroke-dasharray');
					var progress = circles[i].parentNode.getAttribute('data-percent');
					circles[i].querySelector('.bar').style['stroke-dashoffset'] = totalProgress * progress / 100;
				}
			}
		})();
	</script>

	<div id="dashboard_mainview">

		<?php
		if(!empty($this->contentToDisplay) && $this->config->get('dashboardnews', 0) < strtotime($this->contentToDisplay->date)){
			$toggleHelper = acymailing_get('helper.toggle');
			$notremind = '<small style="float:right;margin-right:30px;position:relative;">' . $toggleHelper->delete('acydashboard_specialcontent', 'dashboardnews_'.strtotime($this->contentToDisplay->date), 'config', false, acymailing_translation('DONT_REMIND')) . '</small>';

			echo '<div class="acydashboard_specialcontent onelineblockoptions" id="acydashboard_specialcontent">'.$notremind;
			if(!empty($this->contentToDisplay->title)) echo '<span class="acyblocktitle">'.$this->contentToDisplay->title.'</span>';
			if (strtoupper($this->contentToDisplay->type) == 'URL') {
				$height = !empty($this->contentToDisplay->height) ? $this->contentToDisplay->height : 'auto';
				echo '<iframe frameborder="0" src="' . $this->contentToDisplay->content . '" width="100%" height="' . $height . '" scrolling="auto"></iframe>';
			} else {
				echo $this->contentToDisplay->content;
			}
			echo '</div>';
		}
		include(dirname(__FILE__).DS.'stats.php');
		?>

		<!-- dashboard progress bar -->
		<div id="dashboard_progress">
			<!-- progress bar -->
			<div class="acydashboard_progressbar">
				<table width="100%">

					<tr>
						<td width="25%" class="acydashboard_plane1 <?php echo(!empty($this->progressBarSteps->listCreated) ? 'acystepdone' : ''); ?>" height="36"></td>
						<td width="25%" class="acydashboard_plane2 <?php echo(!empty($this->progressBarSteps->contactCreated) ? 'acystepdone' : ''); ?>" height="36"></td>
						<td width="25%" class="acydashboard_plane3 <?php echo(!empty($this->progressBarSteps->newsletterCreated) ? 'acystepdone' : ''); ?>" height="36"></td>
						<td width="25%" class="acydashboard_plane4 <?php echo(!empty($this->progressBarSteps->newsletterSent) ? 'acystepdone' : ''); ?>" height="36"></td>

					</tr>
					<tr class="acydashboard_progressbar_colors">
						<td width="25%" height="3" class="acydashboard_progress1"><span class="<?php echo(!empty($this->progressBarSteps->listCreated) ? 'acystepdone' : ''); ?>"></span></td>
						<td width="25%" height="3" class="acydashboard_progress2"><span class="<?php echo(!empty($this->progressBarSteps->contactCreated) ? 'acystepdone' : ''); ?>"></span></td>
						<td width="25%" height="3" class="acydashboard_progress3"><span class="<?php echo(!empty($this->progressBarSteps->newsletterCreated) ? 'acystepdone' : ''); ?>"></span></td>
						<td width="25%" height="3" class="acydashboard_progress4"><span class="<?php echo(!empty($this->progressBarSteps->newsletterSent) ? 'acystepdone' : ''); ?>"></span></td>
					</tr>
				</table>
			</div>

			<!-- progress steps -->
			<div class="acydashboard_progress_steps">
				<a href="<?php echo acymailing_completeLink('list'); ?>">
					<div class="acydashboard_progress_block acydashboard_step1">
						<div class="step_image"></div>
						<div class="step_info"><span class="step_title"><?php echo acymailing_translation('MAILING_LISTS'); ?></span><?php echo acymailing_translation('ACY_MAILING_LIST_STEP_DESC'); ?></div>
					</div>
				</a>

				<a href="<?php echo acymailing_completeLink('subscriber'); ?>">
					<div class="acydashboard_progress_block acydashboard_step2">
						<div class="step_image"></div>
						<div class="step_info"><span class="step_title"><?php echo acymailing_translation('ACY_CONTACTS'); ?></span><?php echo acymailing_translation('ACY_MAILING_CONTACT_STEP_DESC'); ?>                        </div>
					</div>
				</a>

				<a href="<?php echo acymailing_completeLink('newsletter'); ?>">
					<div class="acydashboard_progress_block acydashboard_step3">
						<div class="step_image"></div>
						<div class="step_info"><span class="step_title"><?php echo acymailing_translation('NEWSLETTERS'); ?></span><?php echo acymailing_translation('ACY_MAILING_NEWSLETTER_STEP_DESC'); ?>                        </div>
					</div>
				</a>

				<a href="<?php echo acymailing_completeLink('queue'); ?>">
					<div class="acydashboard_progress_block acydashboard_step4">
						<div class="step_image"></div>
						<div class="step_info"><span class="step_title"><?php echo acymailing_translation('SEND_PROCESS'); ?></span><?php echo acymailing_translation('ACY_MAILING_SEND_PROCESS_STEP_DESC'); ?></div>
					</div>
				</a>
			</div>

			<div id="acy_stepbystep"><?php echo acymailing_translation('ACY_STEP_BY_STEP_DESC1').'<br />'.acymailing_translation('ACY_STEP_BY_STEP_DESC2').' '.acymailing_translation('ACY_STEP_BY_STEP_DESC3').'<br />'.acymailing_translation('ACY_STEP_BY_STEP_DESC4'); ?><br/>

				<form target="_blank" action="https://www.acyba.com/index.php?option=com_acymailing&ctrl=sub" method="post">
					<input id="user_name" type="text" name="user[name]" value="" placeholder="<?php echo acymailing_translation('NAMECAPTION'); ?>"/>
					<input id="user_email" type="text" name="user[email]" value="" placeholder="<?php echo acymailing_translation('EMAILCAPTION'); ?>"/>
					<br/>
					<input class="acymailing_button" type="submit" value="<?php echo acymailing_translation('SUBSCRIBE'); ?>" name="Submit"/>
					<input type="hidden" name="acyformname" value="formAcymailing1"/>
					<input type="hidden" name="ctrl" value="sub"/>
					<input type="hidden" name="task" value="optin"/>
					<input type="hidden" name="option" value="com_acymailing"/>
					<input type="hidden" name="visiblelists" value=""/>
					<input type="hidden" name="hiddenlists" value="23"/>
					<input type="hidden" name="redirect" value="https://www.acyba.com"/>
				</form>
			</div>
		</div>
	</div>
</div>
views/dashboard/tmpl/liststats.php000060400000003415152455705230013356 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(empty($this->listStatusData)) echo acymailing_translation("ACY_NO_STATISTICS");
else{

	$data = "['List Name', '".acymailing_translation('UNSUBSCRIBED')."', '".acymailing_translation('PENDING_SUBSCRIPTION')."', '".acymailing_translation('SUBSCRIBED')."',],";
	foreach($this->listStatusData as $listName => $oneStat){
		$data .= "['".addslashes($listName)."', ".(empty($oneStat[-1]) ? 0 : $oneStat[-1]).", ".(empty($oneStat[2]) ? 0 : $oneStat[2]).", ".(empty($oneStat[1]) ? 0 : $oneStat[1]).",],";
	}
	?>

	<script language="JavaScript" type="text/javascript">
		google.load("visualization", "1", {packages: ["corechart"]});
		google.setOnLoadCallback(drawChart);

		function drawChart() {
			var data = google.visualization.arrayToDataTable([

				<?php echo rtrim($data, ','); ?>
			]);

			var container = document.getElementsByClassName('acygraph')[0];
			var width = container.getBoundingClientRect().width;

			var view = new google.visualization.DataView(data);
			var options = {
				height: 450,
				width: width,
				isStacked: true,
				backgroundColor: 'transparent',
				colors: ['#ed8585', '#adccea', '#dde281'],
				hAxis: {slantedText: true, slantedTextAngle: 40, textStyle: {fontSize: 13}}
			};
			var chart = new google.visualization.ColumnChart(document.getElementById("liststats"));
			chart.draw(view, options);
		}
	</script>
	<h1 class="acy_graphtitle"> <?php echo acymailing_translation('ACY_SUB_STATUS_PER_LIST') ?> </h1>
	<div id="liststats" style="text-align:center;margin-bottom:20px"></div>
<?php } ?>
views/dashboard/tmpl/queuestats.php000060400000004467152455705230013537 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
if(empty($this->newsletters)) echo acymailing_translation("ACY_NO_STATISTICS");
else{ ?>

	<script language="JavaScript" type="text/javascript">
		function statsqueue() {
			var dataTable = new google.visualization.DataTable();

			dataTable.addColumn('date');
			dataTable.addColumn('number', '<?php echo acymailing_translation('ACY_SENT_EMAILS'); ?>');
			dataTable.addColumn('number', '<?php echo acymailing_translation('FAILED'); ?>');

			<?php
			$i = -1;
			$statsdetailsSentDate = '';
			$mindate = 0;
			$maxdate = 0;

			foreach($this->newsletters as $oneResult){
				$date = strtotime(substr($oneResult->send_date,0,4)."-".intval(substr($oneResult->send_date,5,2))."-".substr($oneResult->send_date,8,2));
				if(empty($mindate) || $date < $mindate) $mindate = $date;
				if(empty($maxdate) || $date > $maxdate) $maxdate = $date;



				if($statsdetailsSentDate != $oneResult->send_date){
					$i++;
					echo 'dataTable.addRow();';
					echo "dataTable.setValue($i, 0, new Date(".$date."*1000));";
					$statsdetailsSentDate = $oneResult->send_date;
				}
				echo "dataTable.setValue($i, 1, ".intval(@$oneResult->total)."); ";
				echo "dataTable.setValue($i, 2, ".intval(@$oneResult->nbFailed)."); ";
			}
			?>

			var container = document.getElementsByClassName('acygraph')[0];
			var width = container.getBoundingClientRect().width;

			var vis = new google.visualization.ColumnChart(document.getElementById('statsqueue'));
			var options = {
				height: 400,
				width: width,
				backgroundColor: 'transparent',
				hAxis: {
					format: ' MMM d, y',
					maxValue: new Date(<?php echo $maxdate+86400; ?> * 1000),
					minValue: new Date(<?php echo $mindate-86400; ?> * 1000)
				},
				colors: ['#adccea', '#ed8585']
			};

		vis.draw(dataTable, options);
		}
		google.load("visualization", "1", {packages: ["corechart"]});
		google.setOnLoadCallback(statsqueue);

	</script>
	<h1 class="acy_graphtitle"> <?php echo acymailing_translation('ACY_NEWSLETTER_STATUS') ?> </h1>
	<div id="statsqueue" style="text-align:center;width:100%,margin-bottom:20px"></div>
<?php } ?>
views/dashboard/tmpl/userlocations.php000060400000004377152455705230014226 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php if(!empty($this->geoloc_details)){
	$config = acymailing_config();
	$google_map_api_key = $config->get('google_map_api_key');
	if(empty($google_map_api_key)){
		acymailing_display('<a href="'.acymailing_completeLink('cpanel').'" onclick="localStorage.setItem(\'acyconfig_tab\', \'config_subscription\');">'.acymailing_translation('ACY_NEED_GOOGLE_MAP_API_KEY').'</a>', 'info');
	}else{ ?>
		<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
		<script language="javascript" type="text/javascript">
			google.charts.load('current', {
				packages: ['geochart', 'corechart'],
				mapsApiKey: '<?php echo $google_map_api_key; ?>'
			});
			google.charts.setOnLoadCallback(drawMarkersMap);

			var chart;
			var data;

			var mapOptions = {
				legend: 'none', height: 400, displayMode: 'markers', colorAxis: {colors: ['', '#a8a12c']}, sizeAxis: {minSize: 2, maxSize: 10, minValue: 1, maxValue: 15}, enableRegionInteractivity: 'true', backgroundColor: 'transparent', region: '<?php echo $this->geoloc_region; ?>'
			};
			function drawMarkersMap(){
				data = new google.visualization.DataTable();
				data.addColumn('string', 'Address');
				data.addColumn('number', 'Color');
				data.addColumn('number', 'Size');
				data.addColumn({type: 'string', role: 'tooltip'});
				<?php
				$myData = array();
				foreach($this->geoloc_city as $key => $city){
					$toolTipTxt = str_replace("'", "\'", acymailing_translation('GEOLOC_NB_USERS')).': '.$this->geoloc_details[$key];
					$myData[] = "['".str_replace("'", "\'", $this->geoloc_addresses[$key])."', 1, ".$this->geoloc_details[$key].", '".$toolTipTxt."']";
				}
				echo "data.addRows([".implode(", ", $myData)."]);";
				?>

				chart = new google.visualization.GeoChart(document.getElementById('mapGeoloc_div'));
				chart.draw(data, mapOptions);
			}

		</script>
		<h1 class="acy_graphtitle"><?php echo acymailing_translation_sprintf('ACY_SUBSCRIBERS_LOCATIONS', $this->nbUsersToGet) ?></h1>
		<div id="mapGeoloc_div"></div>
		<?php
	}
} ?>
views/notification/view.html.php000060400000010673152455705230013030 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
include(ACYMAILING_BACK.'views'.DS.'newsletter'.DS.'view.html.php');

class NotificationViewNotification extends NewsletterViewNewsletter{
	var $type = 'joomlanotification';
	var $ctrl = 'notification';
	var $nameListing = 'JOOMLA_NOTIFICATIONS';
	var $nameForm = 'JOOMLA_NOTIFICATIONS';
	var $doc = 'joomlanotification';
	var $icon = 'joomlanotification';
	var $filters = array();


	function listing(){
		$config = acymailing_config();

		if(!class_exists('plgSystemAcymailingClassMail')){
			$warning_msg = acymailing_translation('ACY_WARNINGOVERRIDE_DISABLED_1').' <a href="'.acymailing_completeLink('cpanel').'">'.acymailing_translation_sprintf('ACY_WARNINGOVERRIDE_DISABLED_2', ' acymailingclassmail (Override Joomla mailing system plugin)').'</a>';
			acymailing_enqueueMessage($warning_msg, 'notice');
		}

		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->elements = new stdClass();
		$pageInfo->limit = new stdClass();
		$this->filters[] = '`type` = '.acymailing_escapeDB($this->type);

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'mailid', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'asc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'asc') $pageInfo->filter->order->dir = 'desc';

		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$this->filters[] = "subject LIKE $searchVal OR body LIKE $searchVal";
		}

		$filters = new stdClass();
		if(ACYMAILING_J16){
			$pageInfo->category = acymailing_getUserVar($paramBase.".category", 'category', '0', 'string');
			if(!empty($pageInfo->category)){
				$this->filters[] = "alias LIKE '".acymailing_getEscaped($pageInfo->category, true)."-%'";
			}
			$catvalues = array();
			$catvalues[] = acymailing_selectOption('0', acymailing_translation('ACY_ALL'));
			$catvalues[] = acymailing_selectOption('joomla', 'Joomla!');
			$catvalues[] = acymailing_selectOption('jomsocial', 'JomSocial');
			$catvalues[] = acymailing_selectOption('seblod', 'SEBLOD');
			$filters->category = acymailing_select($catvalues, 'category', 'size="1" style="width:150px" onchange="acymailing.submitform();"', 'value', 'text', $pageInfo->category);
		}

		$query = 'SELECT mailid, subject, alias, fromname, published, fromname, fromemail, replyname, replyemail FROM #__acymailing_mail WHERE ('.implode(') AND (', $this->filters).')';

		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		$queryCount = 'SELECT count(mailid) FROM #__acymailing_mail WHERE ('.implode(') AND (', $this->filters).')';
		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($rows);
		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->custom('preview', acymailing_translation('ACY_PREVIEW'), 'search', true);
		$acyToolbar->edit();
		$acyToolbar->delete();

		$acyToolbar->divider();
		$acyToolbar->help($this->doc);
		$acyToolbar->setTitle(acymailing_translation($this->nameListing), $this->ctrl);
		$acyToolbar->display();

		$toggleClass = acymailing_get('helper.toggle');
		$this->toggleClass = $toggleClass;
		$this->pageInfo = $pageInfo;
		$this->config = $config;
		$this->rows = $rows;
		$this->pagination = $pagination;
		$this->filters = $filters;
	}

	function form(){
		return parent::form();
	}

	function preview(){
		return parent::preview();
	}

}
views/notification/tmpl/preview.php000060400000000575152455705230013550 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
<?php include(ACYMAILING_BACK.'views'.DS.'newsletter'.DS.'tmpl'.DS.'preview.php'); ?>
</div>
views/notification/tmpl/index.html000060400000000054152455705230013343 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/notification/tmpl/form.php000060400000006203152455705230013024 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<div id="acymailing_edit">
		<form action="<?php echo acymailing_completeLink('notification'); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" enctype="multipart/form-data">

			<div style="float: left; width: 60%;">
				<div class="confirmBoxMM" id="confirmBoxMM" style="display: none;">
					<div id="acy_popup_content">
						<span class="confirmTxtMM" id="confirmTxtMM"></span><br/>
						<button class="acymailing_button" id="confirmCancelMM" onclick="document.getElementById('confirmBoxMM').style.display='none';document.getElementById('modal-background').style.display='none';return false;" style="padding: 6px 15px 6px 10px;">
							<i class="acyicon-cancel" id="cancelSave" style="margin-right: 5px; font-size: 16px;top: 2px; position: relative;"></i><?php echo acymailing_translation('ACY_CANCEL'); ?>
						</button>
						<button class="acymailing_button acymailing_button_delete" id="confirmOkMM" style="padding: 8px 15px 6px 10px;" onclick="acymailing.submitform(pressbutton,document.adminForm)">
							<i class="acyicon-save" id="iconAction" style="margin-right: 5px; font-size: 12px;"></i><span id="textBtnAction"><?php echo acymailing_translation('ACY_SAVE'); ?></span>
						</button>
					</div>
				</div>
				<div id="modal-background" style="display: none;"></div>
				<div class="acyblockoptions acyblock_newsletter">
					<span class="acyblocktitle"><?php echo acymailing_translation('ACY_NEWSLETTER_INFORMATION'); ?></span>
					<?php include(ACYMAILING_BACK.'views'.DS.'newsletter'.DS.'tmpl'.DS.'info.form.php'); ?>
				</div>
				<div class="acyblockoptions acyblock_newsletter" style="width:90%" id="htmlfieldset">
					<span class="acyblocktitle"><?php echo acymailing_translation('HTML_VERSION'); ?></span>
					<?php echo $this->editor->display(); ?>
				</div>
				<div class="acyblockoptions acyblock_newsletter" style="width:90%" id="textfieldset">
					<span class="acyblocktitle"><?php echo acymailing_translation('TEXT_VERSION'); ?></span>
					<textarea style="width:98%" rows="20" name="data[mail][altbody]" id="altbody" placeholder="<?php echo acymailing_translation('AUTO_GENERATED_HTML'); ?>" onClick="zoneToTag='altbody';"><?php echo @$this->mail->altbody; ?></textarea>
				</div>
			</div>

			<div class="acyblockoptions" style="float:left; width:30%">
				<?php include(ACYMAILING_BACK.'views'.DS.'newsletter'.DS.'tmpl'.DS.'param.form.php'); ?>
			</div>


			<div class="clr"></div>
			<input type="hidden" name="cid[]" value="<?php echo @$this->mail->mailid; ?>"/>
			<input type="hidden" id="tempid" name="data[mail][tempid]" value="<?php echo @$this->mail->tempid; ?>"/>
			<input type="hidden" name="data[mail][type]" value="joomlanotification"/>
			<?php if(!empty($this->Itemid)) echo '<input type="hidden" name="Itemid" value="'.$this->Itemid.'" />';
			acymailing_formOptions(); ?>
		</form>
	</div>
</div>
views/notification/tmpl/listing.php000060400000010111152455705230013523 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink('notification'); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<tr>
				<td width="100%">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td nowrap="nowrap">
					<?php if(!empty($this->filters->category)) echo $this->filters->category; ?>
				</td>
			</tr>
		</table>
		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title titlebox">
					<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
				</th>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_SUBJECT'), 'subject', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_ALIAS'), 'alias', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titlesender">
					<?php echo acymailing_gridSort(acymailing_translation('SENDER_INFORMATIONS'), 'fromname', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_PUBLISHED'), 'published', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'mailid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="7">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->rows); $i < $a; $i++){
				$row =& $this->rows[$i];
				$publishedid = 'published_'.$row->mailid;
				?>
				<tr class="<?php echo "row$k"; ?>">
					<td align="center" style="text-align:center">
						<?php echo acymailing_gridID($i, $row->mailid); ?>
					</td>
					<td>
						<?php
						$subjectLine = str_replace('<ADV>', $this->escape('<ADV>'), $row->subject);
						echo acymailing_tooltip('<b>'.acymailing_translation('JOOMEXT_ALIAS').' : </b>'.$row->alias, ' ', '', $subjectLine, acymailing_completeLink('notification&task=edit&mailid='.$row->mailid)); ?>
					</td>
					<td><?php echo $row->alias; ?></td>
					<td align="center" style="text-align:center">
						<?php
						if(empty($row->fromname)) $row->fromname = $this->config->get('from_name');
						if(empty($row->fromemail)) $row->fromemail = $this->config->get('from_email');
						if(empty($row->replyname)) $row->replyname = $this->config->get('reply_name');
						if(empty($row->replyemail)) $row->replyemail = $this->config->get('reply_email');
						if(!empty($row->fromname)){
							$text = '<b>'.acymailing_translation('FROM_NAME').' : </b>'.$row->fromname;
							$text .= '<br /><b>'.acymailing_translation('FROM_ADDRESS').' : </b>'.$row->fromemail;
							$text .= '<br /><br /><b>'.acymailing_translation('REPLYTO_NAME').' : </b>'.$row->replyname;
							$text .= '<br /><b>'.acymailing_translation('REPLYTO_ADDRESS').' : </b>'.$row->replyemail;
							echo acymailing_tooltip($text, ' ', '', $row->fromname);
						}
						?>
					</td>
					<td align="center" style="text-align:center">
						<span id="<?php echo $publishedid ?>" class="loading"><?php echo $this->toggleClass->toggle($publishedid, (int)$row->published, 'mail') ?></span>
					</td>
					<td width="1%" align="center">
						<?php echo $row->mailid; ?>
					</td>
				</tr>
			<?php } ?>
			</tbody>
		</table>

		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
</div>
views/notification/index.html000060400000000054152455705230012367 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/send/view.html.php000060400000002125152455705230011264 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class SendViewSend extends acymailingView{

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function sendconfirm(){

		$mailid = acymailing_getCID('mailid');
		$mailClass = acymailing_get('class.mail');
		$listmailClass = acymailing_get('class.listmail');
		$queueClass = acymailing_get('class.queue');
		$mail = $mailClass->get($mailid);

		$values = new stdClass();
		$values->nbqueue = $queueClass->nbQueue($mailid);

		if(empty($values->nbqueue)){
			$lists = $listmailClass->getReceivers($mailid);
			$this->lists = $lists;

			$values->alreadySent = acymailing_loadResult('SELECT count(subid) FROM `#__acymailing_userstats` WHERE `mailid` = '.intval($mailid));
		}

		$this->values = $values;
		$this->mail = $mail;
	}


}
views/send/index.html000060400000000054152455705230010632 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/send/tmpl/sendconfirm.php000060400000011641152455705230012635 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink('send'); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<div>
			<?php $displayWarning = false;
			$config = acymailing_config();
			$toggleClass = acymailing_get('helper.toggle');
			if(empty($this->values->nbqueue)){
				if(!empty($this->lists)){
					?>
					<div class="onelineblockoptions">
						<span class="acyblocktitle"><?php echo acymailing_translation('NEWSLETTER_SENT_TO'); ?></span>
						<table class="acymailing_table" cellspacing="1" align="center">
							<tbody>
							<?php
							$k = 0;
							$listids = array();
							foreach($this->lists as $row){
								$listids[] = $row->listid;
								if($row->nbsub > 100) $displayWarning = true;
								?>
								<tr class="<?php echo "row$k"; ?>">
									<td>
										<?php
										echo acymailing_tooltip($row->description, $row->name, 'tooltip.png', $row->name);
										echo ' ( '.acymailing_translation_sprintf('ACY_SELECTED_USERS', $row->nbsub).' )';
										?>
									</td>
								</tr>
								<?php
								$k = 1 - $k;
							} ?>
							</tbody>
						</table>
						<?php
						$filterClass = acymailing_get('class.filter');

						if(!empty($this->mail->filter)){
							$resultFilters = $filterClass->displayFilters($this->mail->filter);
							if(!empty($resultFilters)){
								echo '<br />'.acymailing_translation('RECEIVER_LISTS').'<br />'.acymailing_translation('FILTER_ONLY_IF');
								echo '<ul><li>'.implode('</li><li>', $resultFilters).'</li></ul>';
							}
						}

						$nbTotalReceivers = $nbTotalReceiversAll = $filterClass->countReceivers($listids, $this->mail->filter);
						?>
					</div>
					<?php if(!empty($this->values->alreadySent)){
						$filterClass->onlynew = true;
						$nbTotalReceivers = $nbTotalReceiversAlready = $filterClass->countReceivers($listids, $this->mail->filter, $this->mail->mailid);
						acymailing_display(acymailing_translation_sprintf('ALREADY_SENT', $this->values->alreadySent).'<br />'.acymailing_translation('REMOVE_ALREADY_SENT').'<br />'.acymailing_boolean("onlynew", 'onclick="if(this.value == 1){document.getElementById(\'nbreceivers\').innerHTML = \''.$nbTotalReceiversAlready.'\';}else{document.getElementById(\'nbreceivers\').innerHTML = \''.$nbTotalReceiversAll.'\'}"', 1, acymailing_translation('JOOMEXT_YES'), acymailing_translation('SEND_TO_ALL')), 'warning');
					}elseif($displayWarning){

						if($config->get('warninglimitation', 1)){
							$notremind = '<small style="float:right;margin-right:30px;position:relative;">'.$toggleClass->delete('acymailing_messages_warning', 'warninglimitation_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>';
							acymailing_display(acymailing_translation('WARNING_LIMITATION').'<br /><a target="_blank" href="'.ACYMAILING_HELPURL.'send-process">'.acymailing_translation('WARNING_LIMITATION_CONFIG').'</a>'.$notremind, 'warning');
						}
					}
				}else{
					acymailing_display(acymailing_translation('EMAIL_AFFECT'), 'warning');
				}
			}else{
				acymailing_display(acymailing_translation_sprintf('NB_PENDING_EMAIL', $this->values->nbqueue, '<b><i>'.$this->mail->subject.'</i></b>').'<br />'.acymailing_translation('SEND_CONTINUE'), 'info');
				?>
				<input type="hidden" name="totalsend" value="<?php echo $this->values->nbqueue; ?>"/>
			<?php
			}
			?>
			<?php if(!empty($this->mail->mailid) AND (!empty($this->lists) OR !empty($this->values->nbqueue))){
				if(!acymailing_level(1) && $config->get('warningautomaticprocess', 1)){
					$notremind = '<small style="float:right;margin-right:30px;position:relative;">'.$toggleClass->delete('acymailing_messages_warning', 'warningautomaticprocess_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>';
					acymailing_display(acymailing_translation('ACY_WARNING_FREESENDPROCESS').$notremind, 'warning');
				}

				?>
				<div style="text-align:center;font-size:14px;padding:20px;">
					<?php if(empty($this->values->nbqueue)) echo acymailing_translation_sprintf('SENT_TO_NUMBER', '<span style="font-weight:bold;" id="nbreceivers" >'.$nbTotalReceivers.'</span>').'<br />'; ?>
					<input onclick="document.adminForm.task.value='<?php echo empty($this->values->nbqueue) ? 'send' : 'continuesend'; ?>';" class="acymailing_button" style="padding:10px 30px;margin:5px;font-size:14px;cursor:pointer;" type="submit" value="<?php echo empty($this->values->nbqueue) ? acymailing_translation('SEND') : acymailing_translation('CONTINUE') ?>"/>
				</div>
			<?php } ?>
		</div>
		<div class="clr"></div>
		<input type="hidden" name="cid[]" value="<?php echo $this->mail->mailid; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/send/tmpl/index.html000060400000000054152455705230011606 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/send/tmpl/addqueue.php000060400000003150152455705230012117 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><form action="<?php echo acymailing_completeLink('send', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
	<div class="onelineblockoptions">
		<table class="acymailing_table">
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('ACY_USER'); ?>
				</td>
				<td>
					<?php echo acymailing_tooltip('Name : '.$this->subscriber->name.'<br />ID : '.$this->subscriber->subid, $this->subscriber->email, 'tooltip.png', $this->subscriber->email); ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('NEWSLETTER'); ?>
				</td>
				<td>
					<?php echo $this->emaildrop; ?>
				</td>
			</tr>
			<tr>
				<td class="acykey">
					<?php echo acymailing_translation('SEND_DATE'); ?>
				</td>
				<td>
					<?php echo acymailing_calendar(acymailing_getDate(time(), '%Y-%m-%d'), 'senddate', 'senddate', '%Y-%m-%d', array('style' => 'width:100px'));
					echo '&nbsp; @ '.$this->hours.' : '.$this->minutes; ?>
				</td>
			</tr>
			<tr>
				<td>
				</td>
				<td>
					<button class="acymailing_button" onclick="document.adminForm.task.value='scheduleone';" type="submit"><?php echo acymailing_translation('SCHEDULE'); ?></button>
				</td>
			</tr>
		</table>
	</div>
	<input type="hidden" name="subid" value="<?php echo $this->subscriber->subid; ?>"/>
	<?php acymailing_formOptions(); ?>
</form>
views/filter/index.html000060400000000054152455705230011166 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/filter/tmpl/index.html000060400000000054152455705230012142 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/filter/tmpl/form.php000060400000022745152455705230011634 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><style type="text/css">
	div.plugarea{
		padding: 5px;
	}
</style>
<div id="acy_content">
	<div id="iframedoc"></div>
	<div id="acybase_filters" style="display:none">
		<div id="filters_original">
			<?php echo acymailing_select($this->typevaluesFilters, "filter[type][__block__][__num__]", 'class="inputbox chzn-done" size="1" onchange="updateFilter(__num__);countresults(__num__);"', 'value', 'text', '', 'filtertype__num__'); ?>
			<span id="countresult___num__"></span>

			<div class="acyfilterarea" id="filterarea___num__"></div>
		</div>
		<?php echo $this->outputFilters; ?>
		<div id="actions_original">
			<?php echo acymailing_select($this->typevaluesActions, "action[type][0][__num__]", 'class="inputbox chzn-done" size="1" onchange="updateAction(__num__);"', 'value', 'text', '', 'actiontype__num__'); ?>
			<div class="acyfilterarea" id="actionarea___num__"></div>
		</div>
		<?php echo $this->outputActions; ?>
	</div>
	<?php if(!empty($this->filteredUsers)){ ?>
		<div class="acyblockoptions" id="filteredUsers">
			<span class="acyblocktitle"><?php
				$usersCount = $this->filteredUsers['countTotal'];
				echo acymailing_translation_sprintf('ACY_FILTEREDUSERS', count($this->filteredUsers['users']), $usersCount); ?>
			</span>

			<div id="acyFilteredUsers">
				<table class="acymailing_table" id="filteredUsersTable">
					<thead>
					<tr>
						<th class="title titlenum"><?php echo acymailing_translation('ACY_ID'); ?></th>
						<th class="title titlenum"><?php echo acymailing_translation('JOOMEXT_NAME'); ?></th>
						<th class="title titlenum"><?php echo acymailing_translation('JOOMEXT_EMAIL'); ?></th>
					</tr>
					</thead>
					<tbody>
					<?php
					$k = 0;
					foreach($this->filteredUsers['users'] as $user){
						?>
						<tr class="row<?php echo $k; ?>">
							<td align="center" style="text-align:center"><?php echo $user->subid; ?></td>
							<td align="center" style="text-align:center"><?php echo $user->name; ?></td>
							<td align="center" style="text-align:center"><?php echo '<a href="'.acymailing_completeLink('subscriber&task=edit&subid='.$user->subid).'" target="_blank">'.$user->email.'</a>'; ?></td>
						</tr>
						<?php
						$k = 1 - $k;
					} ?>
					</tbody>
				</table>
			</div>
		</div>
	<?php } ?>
	<form action="<?php echo acymailing_completeLink('filter', acymailing_isNoTemplate()); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<?php if(acymailing_isNoTemplate()){
			if(empty($this->subid)){
				acymailing_display(acymailing_translation('PLEASE_SELECT_USERS'), 'warning');
				return;
			}
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('process', acymailing_translation('PROCESS'), 'process', false);
			$acyToolbar->setTitle(acymailing_translation('ACTIONS'), '');
			$acyToolbar->topfixed = false;
			$acyToolbar->display();

			$subIds = explode(',', $this->subid);
			acymailing_arrayToInteger($subIds);
			$this->subid = implode(',', $subIds);
			?>

			<input type="hidden" name="subid" value="<?php echo $this->subid; ?>"/>
		<?php } ?>
		<div class="acyblockoptions" id="filterinfo" <?php if(empty($this->filter->filid)) echo 'style="display:none"'; ?> >
			<span class="acyblocktitle"><?php echo acymailing_translation('ACY_FILTER'); ?></span>
			<table width="100%" class="paramlist admintable">
				<tr>
					<td class="paramlist_key">
						<label for="title"><?php echo acymailing_translation('ACY_TITLE'); ?></label>
					</td>
					<td class="paramlist_value">
						<input class="inputbox" id="title" type="text" name="data[filter][name]" style="width:250px" value="<?php echo $this->escape(@$this->filter->name); ?>"/>
					</td>
					<td width="50%" rowspan="3" class="acyfiltertriggertitle">
						<span class="acyblocktitle"><?php echo acymailing_translation('AUTO_TRIGGER_FILTER'); ?></span>
						<?php foreach($this->triggers as $key => $triggerName){ ?>
							<?php if(is_object($triggerName)){
								echo $triggerName->name;
								foreach($triggerName->triggers as $subkey => $subTriggerName){ ?>
									<div class="acyautofiltertriggers">
										<input id="trigger_<?php echo $subkey; ?>" type="checkbox" name="trigger[<?php echo $subkey; ?>]" value="1" <?php if(isset($this->filter->trigger[$subkey])) echo 'checked="checked"'; ?> />
										<label for="trigger_<?php echo $subkey; ?>"><?php echo $subTriggerName; ?></label>
									</div>
								<?php }
							}else{ ?>
								<div class="acyautofiltertriggers">
									<input id="trigger_<?php echo $key; ?>" type="checkbox" name="trigger[<?php echo $key; ?>]" value="1" <?php if(isset($this->filter->trigger[$key])) echo 'checked="checked"'; ?> />
									<label for="trigger_<?php echo $key; ?>"><?php echo $triggerName; ?></label><?php echo ($key == 'daycron') ? ' '.$this->hours.' : '.$this->minutes.' '.$this->nextDate : ''; ?>
								</div>
							<?php } ?>
						<?php } ?>
					</td>
				</tr>
				<tr>
					<td class="paramlist_key" valign="top">
						<label for="description"><?php echo acymailing_translation('ACY_DESCRIPTION'); ?></label>
					</td>
					<td class="paramlist_value" valign="top">
						<textarea id="description" style="width:300px;" rows="5" name="data[filter][description]"><?php echo @$this->filter->description; ?></textarea>
					</td>
				</tr>
				<tr>
					<td class="paramlist_key">
						<label for="published"><?php echo acymailing_translation('ACY_PUBLISHED'); ?></label>
					</td>
					<td class="paramlist_value">
						<?php echo acymailing_boolean("data[filter][published]", '', @$this->filter->published); ?>
					</td>
				</tr>
			</table>
		</div>
		<?php if(empty($this->subid)){ ?>
			<div class="acyblockoptions" id="filters_block">
				<span class="acyblocktitle"><?php echo acymailing_translation('ACY_FILTERS'); ?></span>
				<button id="acyorbutton" class="acymailing_button" onclick="addOrBlock();return false;"><?php echo ucfirst(acymailing_translation('ACY_OR')); ?></button>
			</div>
		<?php } ?>
		<div class="acyblockoptions" id="actions_block">
			<span class="acyblocktitle"><?php echo acymailing_translation('ACTIONS'); ?></span>

			<div id="allactions"></div>
			<button class="acymailing_button" onclick="addAction();return false;"><?php echo acymailing_translation('ADD_ACTION'); ?></button>
		</div>

		<div class="clr"></div>

		<input type="hidden" name="filid" value="<?php echo @$this->filter->filid; ?>"/>
		<input type="hidden" name="limitstart" value="0">

		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
		<!--</form>-->
		<?php if(!empty($this->subid)){ ?>
			<div class="acyblockoptions" id="selectedUsers">
				<span class="acyblocktitle"><?php echo acymailing_translation('USERS'); ?></span>

				<div style="display:none"></div>
				<table class="acymailing_table" cellpadding="1">
					<?php
					$k = 0;
					foreach($this->users as $row){
						?>
						<tr class="<?php echo "row$k"; ?>">
							<td><?php echo $row->name; ?></td>
							<td><?php echo $row->email; ?></td>
						</tr>
						<?php $k = 1 - $k;
					}

					if(count($this->users) >= 10){
						?>
						<tr class="<?php echo "row$k"; ?>">
							<td>...</td>
							<td>...</td>
						</tr>
					<?php } ?>
				</table>
			</div>
		<?php } ?>
		<?php if(!(empty($this->filters) && $this->pageInfo->search == "")){ ?>
			<br/><br/>
			<div class="acyblockoptions" id="existing_filters">
				<span class="acyblocktitle"><?php echo acymailing_translation('EXISTING_FILTERS'); ?></span>
				<table class="acymailing_table_options">
					<tr>
						<td width="100%">
							<?php acymailing_listingsearch($this->pageInfo->search); ?>
						</td>
					</tr>
				</table>
				<table class="acymailing_table" cellpadding="1">
					<thead>
					<tr>
						<th class="title">
							<?php echo acymailing_gridSort(acymailing_translation('ACY_FILTER'), 'name', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
						</th>
						<th class="title titletoggle">
							<?php echo acymailing_translation('ACY_PUBLISHED'); ?>
						</th>
						<th class="title titletoggle">
							<?php echo acymailing_translation('ACY_DELETE'); ?>
						</th>
						<th class="title titleid">
							<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'filid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
						</th>
					</tr>
					</thead>
					<tbody>
					<?php
					$k = 0;
					foreach($this->filters as $row){
						$publishedid = 'published_'.$row->filid;
						$id = 'filter_'.$row->filid;
						?>
						<tr class="<?php echo "row$k"; ?>" id="<?php echo $id; ?>">
							<td>
								<?php echo acymailing_tooltip($row->description, $row->name, '', $row->name, acymailing_completeLink('filter&task=edit&filid='.$row->filid)); ?>
							</td>
							<td align="center" style="text-align:center">
								<span id="<?php echo $publishedid ?>" class="loading"><?php echo $this->toggleClass->toggle($publishedid, (int)$row->published, 'filter') ?></span>
							</td>
							<td align="center" style="text-align:center">
								<?php echo $this->toggleClass->delete($id, $row->filid.'_'.$row->filid, 'filter', true); ?>
							</td>
							<td width="1%" align="center">
								<?php echo $row->filid; ?>
							</td>
						</tr>
						<?php
						$k = 1 - $k;
					}
					?>
					</tbody>
				</table>
			</div>
		<?php } ?>
		<div class="clr"></div>
	</form>
</div>
views/filter/tmpl/load.php000060400000003552152455705230011603 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
acymailing_cmsLoaded();
?>
<table class="adminlist table table-striped table-hover" cellpadding="1">
	<thead>
		<tr>
			<th class="title">
				<?php echo acymailing_translation('ACY_FILTER'); ?>
			</th>
			<th class="title titletoggle">
				<?php echo acymailing_translation('PUBLISHED'); ?>
			</th>
			<th class="title titletoggle" >
				<?php echo acymailing_translation( 'DELETE' ); ?>
			</th>
			<th class="title titleid">
				<?php echo acymailing_translation( 'ACY_ID' ); ?>
			</th>
		</tr>
	</thead>
	<tbody>
		<?php
			$k = 0;
			foreach($this->filters as $row){
				$publishedid = 'published_'.$row->filid;
				$id = 'filter_'.$row->filid;
		?>
			<tr class="<?php echo "row$k"; ?>" id="<?php echo $id; ?>">
				<td style="cursor:pointer" onclick="window.top.location.href = '<?php echo acymailing_completeLink('filter&task=edit&filid='.$row->filid); ?>';">
					<?php
						echo acymailing_tooltip($row->description, $row->name, '', $row->name);
					?>
				</td>
				<td align="center" style="text-align:center" >
						<span id="<?php echo $publishedid ?>" class="loading"><?php echo $this->toggleClass->toggle($publishedid,(int) $row->published,'filter') ?></span>
				</td>
				<td align="center" style="text-align:center" >
					<?php echo $this->toggleClass->delete($id,$row->filid.'_'.$row->filid,'filter',true); ?>
				</td>
				<td width="1%" align="center" style="cursor:pointer" onclick="window.top.location.href = '<?php echo acymailing_completeLink('filter&task=edit&filid='.$row->filid); ?>';">
					<?php echo $row->filid; ?>
				</td>
			</tr>
		<?php
				$k = 1-$k;
			}
		?>
	</tbody>
</table>

views/filter/view.html.php000060400000031521152455705230011622 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class FilterViewFilter extends acymailingView{

	var $chosen = false;

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function form(){

		$config = acymailing_config();
		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();

		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'name', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'asc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));


		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		if(acymailing_getVar('none', 'task') == 'filterDisplayUsers'){
			$action = array();
			$action['type'] = array(0 => array('displayUsers'));
			$action[] = array('displayUsers' => array());

			$filterClass = acymailing_get('class.filter');
			$filterClass->subid = acymailing_getVar('string', 'subid');
			$filterClass->execute(acymailing_getVar('none', 'filter'), $action, 200000);

			if(!empty($filterClass->report)){
				$this->filteredUsers = $filterClass->report[0];
			}
		}

		$filid = acymailing_getCID('filid');

		$filterClass = acymailing_get('class.filter');
		if(!empty($filid) && acymailing_getVar('cmd', 'task', '') != 'filterDisplayUsers'){
			$filter = $filterClass->get($filid);
		}else{
			$filter = new stdClass();
			$filter->action = acymailing_getVar('none', 'action');
			$filter->filter = acymailing_getVar('none', 'filter');
			$filter->published = 1;
		}

		acymailing_importPlugin('acymailing');

		$typesFilters = array();
		$typesActions = array();

		$outputFilters = implode('', acymailing_trigger('onAcyDisplayFilters', array(&$typesFilters, 'massactions')));
		$outputActions = implode('', acymailing_trigger('onAcyDisplayActions', array(&$typesActions)));

		$typevaluesFilters = array();
		$typevaluesActions = array();
		$typevaluesFilters[] = acymailing_selectOption('', acymailing_translation('FILTER_SELECT'));
		$typevaluesActions[] = acymailing_selectOption('', acymailing_translation('ACTION_SELECT'));
		foreach($typesFilters as $oneType => $oneName){
			$typevaluesFilters[] = acymailing_selectOption($oneType, $oneName);
		}
		foreach($typesActions as $oneType => $oneName){
			$typevaluesActions[] = acymailing_selectOption($oneType, $oneName);
		}

		$js = "function updateAction(actionNum){
				var actiontype = window.document.getElementById('actiontype'+actionNum);
				if(actiontype == 'undefined' || actiontype == null) return;
				currentActionType = actiontype.value;
				if(!currentActionType){
					window.document.getElementById('actionarea_'+actionNum).innerHTML = '';
					return;
				}
				actionArea = 'action__num__'+currentActionType;
				window.document.getElementById('actionarea_'+actionNum).innerHTML = window.document.getElementById(actionArea).innerHTML.replace(/__num__/g,actionNum);
				if(typeof(window['onAcyDisplayAction_'+currentActionType]) == 'function') {
					try{ window['onAcyDisplayAction_'+currentActionType](actionNum); }catch(e){alert('Error in the onAcyDisplayAction_'+currentActionType+' function : '+e); }
				}

			}";

		$js .= "var numActions = 0;
				function addAction(){
					var newdiv = document.createElement('div');
					newdiv.id = 'action'+numActions;
					newdiv.className = 'plugarea';
					newdiv.innerHTML = document.getElementById('actions_original').innerHTML.replace(/__num__/g, numActions);
					var allactions = document.getElementById('allactions');
					if(allactions != 'undefined' && allactions != null){
						allactions.appendChild(newdiv);
						updateAction(numActions);
						numActions++;
						
						if(numActions > 1){
							var del = document.createElement('i');
							del.setAttribute('class', 'acyicon-cancel deleteFilter');
							del.onclick = function(){
								this.parentNode.remove(); 
								return false;
							}
							var num = numActions - 1;
							var sp2 = document.getElementById('actiontype' + num.toString());
							var parentDiv = sp2.parentNode;
							parentDiv.insertBefore(del, sp2.nextSibling);
						}
					}
				}
				";

		$js .= "document.addEventListener(\"DOMContentLoaded\", function(){ addAction(); });";

		$js .= '
			document.addEventListener("DOMContentLoaded", function(){
				acymailing.submitbutton = function(pressbutton) {
					if (pressbutton != \'save\') {
						acymailing.submitform(pressbutton,document.adminForm);
						return;
					}';
		if(ACYMAILING_J30){
			$js .= "if(window.document.getElementById('filterinfo').style.display == 'none'){
						window.document.getElementById('filterinfo').style.display = 'block';
						return false;}
					if(window.document.getElementById('title').value.length < 2){alert('".acymailing_translation('ENTER_TITLE', true)."'); return false;}";
		}else{
			$js .= "if(window.document.getElementById('filterinfo').style.display == 'none'){
						window.document.getElementById('filterinfo').style.display = 'block';
						return false;}
					if(window.document.getElementById('title').value.length < 2){alert('".acymailing_translation('ENTER_TITLE', true)."'); return false;}";
		}
		
		$js .= "
					acymailing.submitform(pressbutton,document.adminForm);
				};
			 }); ";

		acymailing_addScript(true, $js);

		$filterClass->addJSFilterFunctions();

		$js = '';
		$data = array('action', 'filter');

		foreach($data as $datatype){
			if(empty($filter->$datatype)) continue;
			$blockNum = 0;
			$dataNum = 0;
			foreach($filter->{$datatype}['type'] as $block => $oneFilter){
				if($datatype == 'action'){
					$jsFunction = 'addAction();';
				}else{
					$jsFunction = '
						if(!document.getElementById(\'addButton_'.$blockNum.'\')) addOrBlock();
						document.getElementById(\'addButton_'.$blockNum.'\').click();';
				}

				foreach($oneFilter as $num => $oneType) {
					if(empty($oneType)) continue;

					$js .= "
						
						if(!document.getElementById('" . $datatype . "type$dataNum')){
							" . $jsFunction . "
						}
						
						document.getElementById('" . $datatype . "type$dataNum').value = '$oneType';
						update" . ucfirst($datatype) . "($dataNum);";
					if(empty($filter->{$datatype}[$num][$oneType])) continue;

					foreach($filter->{$datatype}[$num][$oneType] as $key => $value) {
						if (is_array($value)) {
							$js .= "try{\r\n";
							foreach ($value as $subkey => $subval) {
								$js .= "document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key][$subkey]'].value = '" . addslashes(str_replace(array("\n", "\r"), ' ', $subval)) . "';\r\n";
								$js .= "if(document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key][$subkey]'].type && document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key][$subkey]'].type == 'checkbox'){
									document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key][$subkey]'].checked = 'checked';
								}\r\n";
							}
							$js .= "}catch(e){}";
						}
						$myVal = is_array($value) ? implode(',', $value) : $value;
						$js .= "
						try{
							document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key]'].value = '" . addslashes(str_replace(array("\n", "\r"), ' ', $myVal)) . "';
							if(document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key]'].type && document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key]'].type == 'checkbox'){
								document.adminForm.elements['" . $datatype . "[$dataNum][$oneType][$key]'].checked = 'checked';
							}
						}catch(e){}";
					}

					$js .= "
						if(typeof(onAcyDisplay" . ucfirst($datatype) . "_" . $oneType . ") == 'function'){
							try{
								onAcyDisplay" . ucfirst($datatype) . "_" . $oneType . "($dataNum);
							}catch(e){
								alert('Error in the onAcyDisplay" . ucfirst($datatype) . "_" . $oneType . " function : '+e);
							}
						}";

					if($datatype == 'filter') $js .= " countresults($dataNum);";
					$dataNum++;
				}
				$blockNum++;
			}
		}

		$listid = acymailing_getVar('int', 'listid');
		if(!empty($listid)){
			$js .= "
				document.getElementById('actiontype0').value = 'list';
				updateAction(0);
				document.adminForm.elements['action[0][list][selectedlist]'].value = '".$listid."';";
		}

		acymailing_addScript(true, "document.addEventListener(\"DOMContentLoaded\", function(){ $js });");

		$triggers = array();
		$triggers['daycron'] = acymailing_translation('AUTO_CRON_FILTER');

		if(empty($filter->daycron)){
			$nextDate = $config->get('cron_plugins_next', time());
		}else{
			$nextDate = $filter->daycron;
		}

		$listHours = array();
		$listMinutess = array();
		for($i = 0; $i < 24; $i++){              
			$value = $i < 10 ? '0'.$i : $i;
			$listHours[] = acymailing_selectOption($value, $value);
		}
		$hours = acymailing_select($listHours, 'triggerhours', 'class="inputbox" size="1" style="width:60px;"', 'value', 'text', acymailing_getDate($nextDate, 'H'));
		for($i = 0; $i < 60; $i += 5){          
			$value = $i < 10 ? '0'.$i : $i;
			$listMinutess[] = acymailing_selectOption($value, $value);
		}
		$defaultMin = floor(acymailing_getDate($nextDate, 'i') / 5) * 5;
		$minutes = acymailing_select($listMinutess, 'triggerminutes', 'class="inputbox" size="1" style="width:60px;"', 'value', 'text', $defaultMin);
		$this->hours = $hours;
		$this->minutes = $minutes;

		$this->nextDate = !empty($nextDate) ? ' ('.acymailing_translation('NEXT_RUN').' : '.acymailing_getDate($nextDate, '%d %B %Y  %H:%M').')' : '';

		$triggers['allcron'] = acymailing_translation('ACY_EACH_TIME');
		$triggers['subcreate'] = acymailing_translation('ON_USER_CREATE');
		$triggers['subchange'] = acymailing_translation('ON_USER_CHANGE');
		acymailing_trigger('onAcyDisplayTriggers', array(&$triggers));

		$name = empty($filter->name) ? '' : ' : '.$filter->name;

		if(!acymailing_isNoTemplate()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('filterDisplayUsers', acymailing_translation('FILTER_VIEW_USERS'), 'user', false, '');
			$acyToolbar->custom('process', acymailing_translation('PROCESS'), 'process', false, '');
			$acyToolbar->divider();
			if(acymailing_level(3)){
				$acyToolbar->save();
				if(!empty($filter->filid)) $acyToolbar->link(acymailing_completeLink('filter&task=edit&filid=0'), acymailing_translation('ACY_NEW'), 'new');
			}
			$acyToolbar->link(acymailing_completeLink('dashboard'), acymailing_translation('ACY_CLOSE'), 'cancel');
			$acyToolbar->divider();
			$acyToolbar->help('filter');
			$acyToolbar->setTitle(acymailing_translation('ACY_MASS_ACTIONS').$name, 'filter&task=edit&filid='.$filid);
			$acyToolbar->display();
		}else{
			acymailing_setPageTitle(acymailing_translation('ACY_MASS_ACTIONS').$name);
		}

		$subid = acymailing_getVar('string', 'subid');
		if(!empty($subid)){
			$subArray = explode(',', trim($subid, ','));
			acymailing_arrayToInteger($subArray);

			$users = acymailing_loadObjectList('SELECT `name`,`email` FROM `#__acymailing_subscriber` WHERE `subid` IN ('.implode(',', $subArray).')');
			if(!empty($users)){
				$this->users = $users;
				$this->subid = $subid;
			}
		}

		$this->typevaluesFilters = $typevaluesFilters;
		$this->typevaluesActions = $typevaluesActions;
		$this->outputFilters = $outputFilters;
		$this->outputActions = $outputActions;
		$this->filter = $filter;
		$this->pageInfo = $pageInfo;

		$this->triggers = $triggers;
		if(acymailing_isNoTemplate()){
			acymailing_addStyle(false, ACYMAILING_CSS.'frontendedition.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'frontendedition.css'));
		}

		if(acymailing_level(3) && !acymailing_isNoTemplate()){
			$query = 'SELECT * FROM '.acymailing_table('filter');

			if(!empty($pageInfo->search)){
				$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
				$query .= ' WHERE LOWER(name) LIKE'.$searchVal;
			}

			if(!empty($pageInfo->filter->order->value) && (($pageInfo->filter->order->value === "name") || ($pageInfo->filter->order->value === "filid"))){
				$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
			}

			$filters = acymailing_loadObjectList($query);

			$toggleClass = acymailing_get('helper.toggle');
			$this->toggleClass = $toggleClass;
			$this->filters = $filters;
		}
	}
}
views/template/index.html000060400000000054152455705230011514 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/template/tmpl/index.html000060400000000054152455705230012470 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/template/tmpl/listing.php000060400000011230152455705230012653 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<?php $saveOrder = $this->pageInfo->filter->order->value == 'a.ordering' && strtolower($this->pageInfo->filter->order->dir) == 'asc';	?>
	<form action="<?php echo acymailing_completeLink('template'); ?>" method="post" name="adminForm" id="adminForm">
		<table class="acymailing_table_options">
			<tr>
				<td width="100%">
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td nowrap="nowrap">
					<?php
					?>
				</td>
			</tr>
		</table>

		<table class="acymailing_table" cellpadding="1" id="templateListing">
			<thead>
			<tr>
				<th class="title titlenum">
					<?php echo acymailing_translation('ACY_NUM'); ?>
				</th>
				<th class="title titleorder" style="width:32px !important; padding-left:1px; padding-right:1px;">
					<?php echo acymailing_gridSort('<i class="icon-menu-2"></i>', 'a.ordering', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value, null, 'asc', 'JGRID_HEADING_ORDERING'); ?>
				</th>
				<th class="title titlebox">
					<input type="checkbox" name="toggle" value="" onclick="acymailing.checkAll(this);"/>
				</th>
				<th class="title">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_TEMPLATE'), 'a.name', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_DEFAULT'), 'a.premium', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titletoggle">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_PUBLISHED'), 'a.published', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.tempid', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
				</th>
			</tr>
			</thead>
			<tfoot>
			<tr>
				<td colspan="7">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
			<tbody id="acymailing_sortable_listing">
			<?php
			$k = 0;
			$ordering = '';

			for($i = 0, $a = count($this->rows); $i < $a; $i++){
				$row =& $this->rows[$i];
				$ordering .= ',"order['.$i.']='.$row->ordering.'"';

				$publishedid = 'published_'.$row->tempid;
				$premiumid = 'premium_'.$row->tempid;
				?>
				<tr class="<?php echo "row$k"; ?>" acyorderid="<?php echo $row->tempid; ?>">
					<td align="center" style="text-align:center;">
						<?php echo $this->pagination->getRowOffset($i); ?>
					</td>
					<?php $iconClass = 'acyicon-draghandle';
					if(!$saveOrder) $iconClass .= ' acyinactive-handler" title="Sort the listing by ordering first'; ?>
					<td class="<?php echo $iconClass; ?>"><img alt="" src="<?php echo ACYMAILING_IMAGES; ?>icons/drag.png" /></td>
					<td align="center" style="text-align:center;">
						<?php echo acymailing_gridID($i, $row->tempid); ?>
					</td>
					<td>
						<?php if(!empty($row->thumb)){ ?>
							<a href="<?php echo acymailing_completeLink('template&task=edit&tempid='.$row->tempid); ?>">
								<img class="template_thumbnail" src="<?php echo rtrim(acymailing_rootURI(), '/').'/'.strip_tags($row->thumb) ?>" style="float:left;width:100px;margin-right:10px;"/>
							</a>
						<?php } ?>
						<a href="<?php echo acymailing_completeLink('template&task=edit&tempid='.$row->tempid); ?>"><?php echo acymailing_dispSearch($row->name, $this->pageInfo->search); ?></a><br/>
						<?php echo acymailing_absoluteURL(nl2br($row->description)); ?>
					</td>
					<td align="center" style="text-align:center;">
						<span id="<?php echo $premiumid ?>"><?php echo $this->toggleClass->toggle($premiumid, $row->premium, 'template') ?></span>
					</td>
					<td align="center" style="text-align:center;">
						<span id="<?php echo $publishedid ?>"><?php echo $this->toggleClass->toggle($publishedid, $row->published, 'template') ?></span>
					</td>
					<td width="1%" align="center" style="text-align:center;">
						<?php echo acymailing_dispSearch($row->tempid, $this->pageInfo->search); ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>

		<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
	</form>
</div>

<?php if($saveOrder) acymailing_sortablelist('template', ltrim($ordering, ',')); ?>
views/template/tmpl/theme.php000060400000012362152455705230012313 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><style type="text/css">
	div.templatedescription{
		color: #819197;
		text-align: center;
	}

	div.templatedescription img{
		display: block;
		clear: both;
		margin: auto;
		margin-bottom: 10px;
		border: 1px solid #EEEEEE;
		padding: 5px;
		background-color: #fff;
		max-height: 200px;
		max-width: 190px;
	}

	div.templatearea{
		border: 1px solid #e5e5e5;
		background-color: #fff;
		margin: 9px 7px;
		padding: 2px;
		width: 205px;
		position: relative;
		display: inline-block;
		vertical-align: top;
		background: #fff;
		text-align: center;
		cursor: pointer;
		min-height: 260px;
	}

	div.templatearea:after, div.templatearea:before{
		content: " ";
		position: absolute;
		width: 50%;
		height: 100px;
		z-index: -10;
	}

	div.templatearea:before{
		bottom: 7px;
		left: 5px;
		transform: rotate(-3deg);
		box-shadow: 7px 6px 8px #333;
	}

	div.templatearea:after{
		bottom: 7px;
		right: 5px;
		transform: rotate(3deg);
		box-shadow: -7px 6px 8px #333;
	}

	div.templatearea:hover{
		background-color: #e9ecf3;
	}

	div.templatetitle{
		color: #4a7cac;
		text-align: center;
		font-family: cursive;
		font-style: normal;
		margin-bottom: 10px;
		text-shadow: 0 1px 0 #FFFFFF;
		font-size: 14px;
	}

	body{
		background-color: #f6f7f9 !important;
		min-width: 650px !important;
		height: auto;
	}

	html{
		overflow-y: auto;
	}

	.rt-container, .rt-block{
		width: auto !important;
		background-color: #f6f7f9 !important;
	}

	#adminForm{
		text-align: center;
	}

	ul{
		list-style-type: none;
	}

	ul li{
		display: inline-block;
	}

</style>
<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'template', true); ?>" method="post" name="adminForm" id="adminForm">
	<?php if($this->pageInfo->elements->total > $this->pageInfo->elements->page || !empty($this->pageInfo->search) || !empty($this->pageInfo->category)){ ?>
		<table class="acymailing_table_options" cellpadding="1" style="width:100%;">
			<tr>
				<td>
					<?php acymailing_listingsearch($this->pageInfo->search); ?>
				</td>
				<td>
					<?php
					if(acymailing_level(3)){
						$listcategoryType = acymailing_get('type.categoryfield');
						echo $listcategoryType->getFilter('template', 'category', $this->pageInfo->category, ' onchange="document.adminForm.limitstart.value=0;this.form.submit();" style="width:150px;"');
					}
					?>
				</td>
			</tr>
		</table>
	<?php } ?>
	<?php $num = 0;
	if(empty($this->pageInfo->limit->start)){
		$num++;
		?>
		<div class="templatearea emptytemplate" onclick="applyTemplate(0);">
			<div class="templatetitle"><?php echo acymailing_translation('ACY_NONE'); ?></div>
			<div style="display:none" id="stylesheet_0"></div>
			<div style="display:none" id="htmlcontent_0"><br/></div>
			<div style="display:none" id="textcontent_0"></div>
			<div style="display:none" id="subject_0"></div>
			<div style="display:none" id="replyname_0"></div>
			<div style="display:none" id="replyemail_0"></div>
			<div style="display:none" id="fromname_0"></div>
			<div style="display:none" id="fromemail_0"></div>
		</div>
	<?php
	}
	for($i = 0, $a = count($this->rows); $i < $a; $i++){
		$row =& $this->rows[$i];
		$row->subject = acyEmoji::Decode($row->subject);
		$num++;
		?>
		<div class="templatearea" onclick="applyTemplate(<?php echo $row->tempid?>);">
			<div class="templatetitle"><?php echo acymailing_dispSearch($row->name, $this->pageInfo->search); ?></div>
			<div class="templatedescription">
				<?php if(!empty($row->thumb)){ ?>
					<img src="<?php echo ACYMAILING_LIVE.$row->thumb ?>"/>
				<?php } ?>
				<?php echo acymailing_absoluteURL(nl2br($row->description)); ?>
			</div>
			<div style="display:none" id="stylesheet_<?php echo $row->tempid;?>"><?php echo $row->stylesheet;?></div>
			<div style="display:none" id="htmlcontent_<?php echo $row->tempid;?>"><?php echo acymailing_absoluteURL($row->body);?></div>
			<div style="display:none" id="textcontent_<?php echo $row->tempid;?>"><?php echo $row->altbody;?></div>
			<div style="display:none" id="subject_<?php echo $row->tempid;?>"><?php echo $row->subject;?></div>
			<div style="display:none" id="replyname_<?php echo $row->tempid;?>"><?php echo $row->replyname;?></div>
			<div style="display:none" id="replyemail_<?php echo $row->tempid;?>"><?php echo $row->replyemail;?></div>
			<div style="display:none" id="fromname_<?php echo $row->tempid;?>"><?php echo $row->fromname;?></div>
			<div style="display:none" id="fromemail_<?php echo $row->tempid;?>"><?php echo $row->fromemail;?></div>
		</div>
	<?php } ?>
	<?php if($this->pageInfo->elements->total > $this->pageInfo->elements->page || !empty($this->pageInfo->search) || !empty($this->pageInfo->category)){ ?>
		<table style="width:100%;margin-top:20px;">
			<tfoot>
			<tr>
				<td style="text-align:center;" colspan="2">
					<?php echo $this->pagination->getListFooter();
					echo $this->pagination->getResultsCounter(); ?>
				</td>
			</tr>
			</tfoot>
		</table>
	<?php } ?>
	<input type="hidden" name="defaulttask" value="theme"/>
	<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
</form>

views/template/tmpl/upload.php000060400000002043152455705230012470 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<form action="<?php echo acymailing_completeLink('template', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" enctype="multipart/form-data">
		<div id="iframedoc"></div>
		<div style="text-align:center;padding-top:20px;"><input type="file" style="width:auto" name="uploadedfile"/>
			<?php echo '<br />'.(acymailing_translation_sprintf('MAX_UPLOAD', (acymailing_bytes(ini_get('upload_max_filesize')) > acymailing_bytes(ini_get('post_max_size'))) ? ini_get('post_max_size') : ini_get('upload_max_filesize'))); ?></div>
		<br/><br/><a class="downloadmore" href="https://www.acyba.com/acymailing/templates-pack.html" target="_blank"><?php echo acymailing_translation('MORE_TEMPLATES'); ?></a>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/template/tmpl/form.php000060400000030654152455705230012160 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>
	<form action="<?php echo acymailing_completeLink('template'); ?>" method="post" name="adminForm" id="adminForm" class="templateManagement" enctype="multipart/form-data">
		<div class="acyblockoptions" id="sendtest" style="float:none;<?php if(acymailing_getVar('cmd', 'task') != 'test') echo 'display:none;'; ?>">
			<span class="acyblocktitle"><?php echo acymailing_translation('SEND_TEST'); ?></span>
			<table>
				<tr>
					<td valign="top">
						<?php echo acymailing_translation('SEND_TEST_TO'); ?>
					</td>
					<td>
						<?php echo $this->testreceiverType->display($this->infos->test_selection, $this->infos->test_group, $this->infos->test_emails); ?>
					</td>
				</tr>
				<tr>
					<td/>
					<td>
						<button type="submit" class="acymailing_button" onclick="var val = document.getElementById('message_receivers').value; if(val != ''){ setUser(val); } acymailing.submitbutton('test');return false;"><?php echo acymailing_translation('SEND_TEST') ?></button>
					</td>
				</tr>
			</table>
		</div>

		<div class="acyblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('ACY_TEMPLATE_INFORMATIONS'); ?></span>
			<table>
				<tr>
					<td>
						<label for="name">
							<?php echo acymailing_translation('TEMPLATE_NAME'); ?>
						</label>
					</td>
					<td>
						<input type="text" name="data[template][name]" id="name" class="inputbox" style="width:200px" value="<?php echo $this->escape(@$this->template->name); ?>"/>
					</td>
				</tr>
				<tr>
					<td>
						<label for="published">
							<?php echo acymailing_translation('ACY_PUBLISHED'); ?>
						</label>
					</td>
					<td>
						<?php echo acymailing_boolean("data[template][published]", '', @$this->template->published); ?>
					</td>
				</tr>
				<tr>
					<td>
						<label for="default">
							<?php echo acymailing_translation('ACY_DEFAULT'); ?>
						</label>
					</td>
					<td>
						<?php echo acymailing_boolean("data[template][premium]", '', @$this->template->premium); ?>
					</td>
				</tr>
				<?php if(acymailing_level(3)){ ?>
					<tr>
						<td>
							<label for="datatemplatecategory">
								<?php echo acymailing_translation('ACY_CATEGORY'); ?>
							</label>
						</td>
						<td>
							<?php $catType = acymailing_get('type.categoryfield');
							echo $catType->display('template', 'data[template][category]', $this->template->category); ?>
						</td>
					</tr>
				<?php } ?>
				<tr>
					<td>
						<label for="thumb">
							<?php echo acymailing_translation('ACY_THUMBNAIL'); ?>
						</label>
					</td>
					<td>
						<?php
						$uploadfileType = acymailing_get('type.uploadfile');
						echo $uploadfileType->display(true, 'thumb', $this->template->thumb, 'data[template][thumb]');
						?>
					</td>
				</tr>
				<tr>
					<td valign="top">
						<label for="description">
							<?php echo acymailing_translation('ACY_DESCRIPTION'); ?>
						</label>
					</td>
					<td>
						<textarea id="description" name="editor_description" style="width:90%;height:80px;"><?php echo @$this->template->description; ?></textarea>
					</td>
				</tr>
				<tr>
					<td>
						<label for="subject">
							<?php echo acymailing_translation('JOOMEXT_SUBJECT'); ?>
						</label>
					</td>
					<td>
						<div>
							<input onClick="zoneToTag='subject';" type="text" id="subject" name="data[template][subject]" class="inputbox" style="width:80%" value="<?php echo $this->escape(@$this->template->subject); ?>"/>
						</div>
					</td>
				</tr>
				<tr>
					<td class="paramlist_key">
						<label for="fromname"><?php echo acymailing_translation('FROM_NAME'); ?></label>
					</td>
					<td class="paramlist_value">
						<input class="inputbox" id="fromname" type="text" name="data[template][fromname]" style="width:200px" value="<?php echo $this->escape(@$this->template->fromname); ?>"/>
					</td>
				</tr>
				<tr>
					<td class="paramlist_key">
						<label for="fromemail"><?php echo acymailing_translation('FROM_ADDRESS'); ?></label>
					</td>
					<td class="paramlist_value">
						<input onchange="validateEmail(this.value, '<?php echo addslashes(acymailing_translation('FROM_ADDRESS')); ?>')" class="inputbox" id="fromemail" type="text" name="data[template][fromemail]" style="width:200px" value="<?php echo $this->escape(@$this->template->fromemail); ?>"/>
					</td>
				</tr>
				<tr>
					<td class="paramlist_key">
						<label for="replyname"><?php echo acymailing_translation('REPLYTO_NAME'); ?></label>
					</td>
					<td class="paramlist_value">
						<input class="inputbox" id="replyname" type="text" name="data[template][replyname]" style="width:200px" value="<?php echo $this->escape(@$this->template->replyname); ?>"/>
					</td>
				</tr>
				<tr>
					<td class="paramlist_key">
						<label for="replyemail"><?php echo acymailing_translation('REPLYTO_ADDRESS'); ?></label>
					</td>
					<td class="paramlist_value">
						<input onchange="validateEmail(this.value, '<?php echo addslashes(acymailing_translation('REPLYTO_ADDRESS')); ?>')" class="inputbox" id="replyemail" type="text" name="data[template][replyemail]" style="width:200px" value="<?php echo $this->escape(@$this->template->replyemail); ?>"/>
					</td>
				</tr>
			</table>
		</div>
		<?php echo acymailing_getFunctionsEmailCheck(); ?>

		<div class="acyblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('ACY_STYLES'); ?></span>
			<?php
			echo $this->tabs->startPane('template_css');
			echo $this->tabs->startPanel(acymailing_translation('STYLE_IND'), 'template_css_classes'); ?>
			<br style="font-size:1px"/>

			<table width="100%">
				<tbody id="classtable">
				<tr>
					<td>
						<label for="bgcolor">
							<?php echo acymailing_translation('BACKGROUND_COLOUR'); ?>
						</label>
					</td>
					<td>
						<?php echo $this->colorBox->displayAll('', 'styles[color_bg]', @$this->template->styles['color_bg']); ?>
					</td>
				</tr>
				<?php $tagList = array('tag_h1' => 'Title h1', 'tag_h2' => 'Title h2', 'tag_h3' => 'Title h3', 'tag_h4' => 'Title h4', 'tag_h5' => 'Title h5', 'tag_h6' => 'Title h6', 'tag_a' => acymailing_translation('ACY_LINK_STYLE'), 'acymailing_unsub' => acymailing_translation('STYLE_UNSUB'), 'acymailing_content' => acymailing_translation('CONTENT_AREA'), 'acymailing_title' => acymailing_translation('CONTENT_HEADER'), 'acymailing_readmore' => acymailing_translation('CONTENT_READMORE'), 'acymailing_online' => acymailing_translation('STYLE_VIEW'));
				foreach($tagList as $value => $text){ ?>
					<tr>
						<td><span id="name_<?php echo $value; ?>" style="<?php echo str_replace('!important', '', $this->escape(@$this->template->styles[$value])); ?>"><?php echo $text; ?></span></td>
						<td><input id="style_<?php echo $value; ?>" type="text" style="width:200px" onclick="showthediv('<?php echo $value; ?>',event);" name="styles[<?php echo $value; ?>]" value="<?php echo $this->escape(@$this->template->styles[$value]); ?>"/></td>
					</tr>
					<?php
					if($value == 'acymailing_readmore'){
						?>
						<tr>
							<td><?php echo acymailing_translation('READMORE_PICTURE'); ?></span></td>
							<td>
								<?php echo $uploadfileType->display(true, 'readmore', $this->template->readmore, 'data[template][readmore]'); ?>
							</td>
						</tr>
					<?php
					}
				}
				?>
				<tr>
					<td>
						<ul id="name_tag_ul" style="<?php echo $this->escape(@$this->template->styles['tag_ul']); ?>">
							<li id="name_tag_li2" style="<?php echo $this->escape(@$this->template->styles['tag_li']); ?>">ul</li>
							<li id="name_tag_li" style="<?php echo $this->escape(@$this->template->styles['tag_li']); ?>">li</li>
						</ul>
					</td>
					<td><input type="text" id="style_tag_ul" onclick="showthediv('tag_ul',event);" style="width:200px" name="styles[tag_ul]" value="<?php echo $this->escape(@$this->template->styles['tag_ul']); ?>"/>
						<br/><input type="text" id="style_tag_li" onclick="showthediv('tag_li',event);" style="width:200px" name="styles[tag_li]" value="<?php echo $this->escape(@$this->template->styles['tag_li']); ?>"/></td>
				</tr>
				<?php
				unset($this->template->styles['color_bg']);
				unset($this->template->styles['tag_ul']);
				unset($this->template->styles['tag_li']);
				if(!empty($this->template->styles)){
					foreach($this->template->styles as $className => $style){
						if(isset($tagList[$className])) continue;
						?>
						<tr>
							<td><span id="name_<?php echo $className ?>" style="<?php echo $this->escape($style); ?>"><?php echo $className ?></span></td>
							<td><input id="style_<?php echo $className ?>" type="text" style="width:200px" onclick="showthediv('<?php echo $className; ?>',event);" name="styles[<?php echo $className; ?>]" value="<?php echo $this->escape($style); ?>"/></td>
						</tr>
					<?php
					} ?>

				<?php }
				?>
				</tbody>
			</table>

			<a onclick="addStyle();return false;" href="#"><?php echo acymailing_translation('ADD_STYLE'); ?></a>
			<?php echo $this->tabs->startPanel(acymailing_translation('TEMPLATE_STYLESHEET'), 'template_css_stylesheet'); ?>
			<br style="font-size:1px"/>
			<?php
			$messages = array();
			if(version_compare(PHP_VERSION, '5.0.0', '<')) $messages[] = 'Please make sure you use at least PHP 5.0.0';
			if(!class_exists('DOMDocument')){
				$messages[] = 'DOMDocument class not found';
			}else{
				$xmldoc = @ new DOMDocument;
				if(!is_object($xmldoc) || !method_exists($xmldoc, 'loadHTML')){
					$messages[] = 'Please make sure that php_domxml.dll on windows is removed before using the domdocument class as they cannot coexist.';
				}
			}
			if(!function_exists('mb_convert_encoding')) $messages[] = 'The php extension mbstring is not installed';
			if(!empty($messages)){
				$messages[] = 'The stylesheet can not be used';
				acymailing_display($messages, 'warning');
			}else{ ?>
				<textarea onmouseover="document.getElementById('wysija').style.display = 'none'" name="data[template][stylesheet]" style="width:98%; min-width: 300px; min-height: 300px;" rows="25" id="acystylesheettextarea"><?php echo @$this->template->stylesheet; ?></textarea>
			<?php }
			echo $this->tabs->endPanel();
			echo $this->tabs->startPanel(acymailing_translation('ACY_HEADER'), 'template_css_header'); ?>
			<textarea name="data[template][header]" id="headertags" cols="10" rows="24" style="width: 98%; margin-top: 30px; font-size: 15px;"><?php echo $this->template->header ?></textarea>
			<?php
			echo $this->tabs->endPanel();
			echo $this->tabs->endPane(); ?>
		</div>
		<?php if(acymailing_level(3)){
			$acltype = acymailing_get('type.acl'); ?>
			<div class="acyblockoptions">
				<span class="acyblocktitle"><?php echo acymailing_translation('ACCESS_LEVEL'); ?></span>
				<?php echo $acltype->display('data[template][access]', $this->template->access); ?>
			</div>
		<?php } ?>
		<div class="acyblockoptions" style="width:90%" id="htmlfieldset">
			<span class="acyblocktitle"><?php echo acymailing_translation('HTML_VERSION'); ?></span>
			<?php echo $this->editor->display(); ?>
		</div>
		<div class="acyblockoptions" style="width:90%;" id="textfieldset">
			<span class="acyblocktitle"><?php echo acymailing_translation('TEXT_VERSION'); ?></span>
			<textarea onClick="zoneToTag='altbody';" style="width:98%;min-height:250px;" rows="20" name="data[template][altbody]" id="altbody" placeholder="<?php echo acymailing_translation('AUTO_GENERATED_HTML'); ?>"><?php echo @$this->template->altbody; ?></textarea>
		</div>
		<div class="clr"></div>
		<input type="hidden" name="cid[]" value="<?php echo @$this->template->tempid; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
	<div style="display:none;position:absolute;background-color:transparent;" id="wysija">
		<?php echo $this->colorBox->displayOne('wysijacolor', "", ""); ?>
		<select style="width:75px;height:17px;margin:0px;font-size:11px;" class="chzn-done" id="style_select_wysija" onchange="getValueSelect()">
			<?php $nbs = array('8', '10', '11', '12', '14', '16', '18', '20', '22', '24', '26', '36');
			echo "<option value=''>Font Size</option>";
			foreach($nbs as $nb){
				echo "<option value='".$nb."px'>$nb px.</option>";
			} ?>
		</select>

		<span id="B" onclick="spanChange('B')" class="belement"></span><span id="I" class="ielement" onclick="spanChange('I')"></span><span class="uelement" id="U" onclick="spanChange('U')"></span>
	</div>
</div>
views/template/view.html.php000060400000047476152455705230012170 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class TemplateViewTemplate extends acymailingView{

	var $selection = array('a.tempid', 'a.name', 'a.description', 'a.created', 'a.published', 'a.premium', 'a.ordering', 'a.thumb');
	var $filters = array();
	var $button = true;
	var $chosen = false;

	function display($tpl = null){

		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){
		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();
		$config = acymailing_config();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName().$this->getLayout();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.ordering', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'asc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$pageInfo->category = acymailing_getUserVar($paramBase.".category", 'category', '0', 'string');

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$this->filters[] = "a.name LIKE $searchVal OR a.description LIKE $searchVal OR a.tempid LIKE $searchVal";
		}

		if(!empty($pageInfo->category) && $pageInfo->category != acymailing_translation('ACY_ALL_CATEGORIES')){
			$this->filters[] = 'a.category LIKE '.acymailing_escapeDB($pageInfo->category);
		}

		$query = 'SELECT '.implode(',', $this->selection).' FROM '.acymailing_table('template').' as a';
		if(!empty($this->filters)){
			$query .= ' WHERE ('.implode(') AND (', $this->filters).')';
		}
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		try{
			$this->rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);
		}catch(Exception $e){
			$this->rows = null;
		}

		if($this->rows === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			if(file_exists(ACYMAILING_BACK.'install.joomla.php')){
				include_once(ACYMAILING_BACK.'install.joomla.php');
				$installClass = new acymailingInstall();
				$installClass->fromVersion = '4.1.0';
				$installClass->update = true;
				$installClass->updateSQL();
			}
		}

		$queryCount = 'SELECT COUNT(a.tempid) FROM '.acymailing_table('template').' as a';
		if(!empty($this->filters)){
			$queryCount .= ' WHERE ('.implode(') AND (', $this->filters).')';
		}
		
		$pageInfo->elements->total = acymailing_loadResult($queryCount);
		$pageInfo->elements->page = count($this->rows);

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		if($this->button){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->popup('import', acymailing_translation('IMPORT'), acymailing_completeLink("template&task=upload", true), 450, 250);

			$acyToolbar->custom('export', acymailing_translation('ACY_EXPORT'), 'export', true);
			$acyToolbar->divider();
			$acyToolbar->add();
			$acyToolbar->edit();
			if(acymailing_isAllowed($config->get('acl_templates_copy', 'all'))){
				$acyToolbar->copy();
			}
			if(acymailing_isAllowed($config->get('acl_templates_delete', 'all'))) $acyToolbar->delete();

			$acyToolbar->divider();
			$acyToolbar->help('template', 'listing');
			$acyToolbar->setTitle(acymailing_translation('ACY_TEMPLATES'), 'template');
			$acyToolbar->display();
		}


		$toggleClass = acymailing_get('helper.toggle');

		$order = new stdClass();
		$order->ordering = false;
		$order->orderUp = 'orderup';
		$order->orderDown = 'orderdown';
		$order->reverse = false;
		if($pageInfo->filter->order->value == 'a.ordering'){
			$order->ordering = true;
			if($pageInfo->filter->order->dir == 'desc'){
				$order->orderUp = 'orderdown';
				$order->orderDown = 'orderup';
				$order->reverse = true;
			}
		}

		$filters = new stdClass();


		$this->filters = $filters;
		$this->order = $order;
		$this->toggleClass = $toggleClass;
		$this->rows = $this->rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
	}

	function form(){
		$tempid = acymailing_getCID('tempid');
		$config = acymailing_config();

		if(!empty($tempid)){
			$templateClass = acymailing_get('class.template');
			$template = $templateClass->get($tempid);
			if(!empty($template->body)) $template->body = acymailing_absoluteURL($template->body);

			if(empty($template->tempid)){
				acymailing_display('Template '.$tempid.' not found', 'error');
				$tempid = 0;
			}
		}

		if(empty($tempid)){
			$template = new stdClass();
			$template->body = '';
			$template->tempid = 0;
			$template->published = 1;
			$template->access = 'all';
			$template->category = '';
			$template->thumb = '';
			$template->readmore = '';
			$template->header = '';
		}

		$editor = acymailing_get('helper.editor');
		$editor->setTemplate($template->tempid);
		$editor->name = 'editor_body';
		$editor->content = $template->body;
		$editor->prepareDisplay();

		$script = '
			document.addEventListener("DOMContentLoaded", function(){
				acymailing.submitbutton = function(pressbutton) {
					if (pressbutton == \'cancel\') {
						acymailing.submitform(pressbutton,document.adminForm);
						return;
					}
					
					if(pressbutton == \'save\' || pressbutton == \'test\' || pressbutton == \'apply\'){
						var emailVars = ["fromemail","replyemail"];
						var val = "";
						for(var key in emailVars){
							if(isNaN(key)) continue;
							val = document.getElementById(emailVars[key]).value;
							if(!validateEmail(val, emailVars[key])){
								return;
							}
						}
					}';
		$script .= 'if(window.document.getElementById("name").value.length < 2){alert(\''.acymailing_translation('ENTER_TITLE', true).'\'); return false;}';
		$script .= "if(pressbutton == 'test' && window.document.getElementById('sendtest') && window.document.getElementById('sendtest').style.display == 'none'){ window.document.getElementById('sendtest').style.display = 'block'; return false;}";
		$script .= $editor->jsCode();
		$script .= 'acymailing.submitform(pressbutton,document.adminForm);
				};
			 }); ';

		$script .= "var zoneToTag = 'editor';
			function insertTag(tag){
				if(zoneToTag == 'editor'){
					try{
						jInsertEditorText(tag,'editor_body');
						return true;
					} catch(err){
						alert('Your editor does not enable AcyMailing to automatically insert the tag, please copy/paste it manually in your Newsletter');
						return false;
					}
				}else{
					try{
						simpleInsert(zoneToTag, tag);
						return true;
					} catch(err){
						alert('Error inserting the tag in the '+ zoneToTag + 'zone. Please copy/paste it manually in your Newsletter.');
						return false;
					}
				}
			}
			function simpleInsert(myField, myValue) {
				myField = document.getElementById(myField);
				if (document.selection) {
					myField.focus();
					sel = document.selection.createRange();
					sel.text = myValue;
				} else if (myField.selectionStart || myField.selectionStart == '0') {
					var startPos = myField.selectionStart;
					var endPos = myField.selectionEnd;
					myField.value = myField.value.substring(0, startPos)
						+ myValue
						+ myField.value.substring(endPos, myField.value.length);
				} else if (myField.tagName == 'DIV') {
					myField.innerHTML += myValue;
					document.getElementById('subject').value += myValue;
				} else {
					myField.value += myValue;
				}
			}
			document.addEventListener('DOMContentLoaded', function(){
				setTimeout(function() {
					document.getElementById('htmlfieldset').addEventListener('click', function(){
						zoneToTag = 'editor';
					});	
					
					var ediframe = document.getElementById('htmlfieldset').getElementsByTagName('iframe');
					if(ediframe && ediframe[0]){
						var children = ediframe[0].contentDocument.getElementsByTagName('*');
						for (var i = 0; i < children.length; i++) {
							children[i].addEventListener('click', function(){
								zoneToTag = 'editor';
							});			
						}
					}		
				}, 1000);
			});";

		$script .= 'function addStyle(){
			var myTable=window.document.getElementById("classtable");
			var newline = document.createElement(\'tr\');
			var column = document.createElement(\'td\');
			var column2 = document.createElement(\'td\');
			var input = document.createElement(\'input\');
			var input2 = document.createElement(\'input\');
			input.type = \'text\';
			input2.type = \'text\';
			input.style.width = \'180px\';
			input2.style.width = \'200px\';
			input.name = \'otherstyles[classname][]\';
			input2.name = \'otherstyles[style][]\';
			input.placeholder = "'.str_replace('"', '\"', acymailing_translation('CLASS_NAME', true)).'";
			input2.placeholder = "'.str_replace('"', '\"', acymailing_translation('CSS_STYLE', true)).'";
			column.appendChild(input);
			column2.appendChild(input2);
			newline.appendChild(column);
			newline.appendChild(column2);
			myTable.appendChild(newline);
		}';

		$script .= 'var currentValueId = \'\';
				function showthediv(valueid, e){
					if(currentValueId != valueid){
						try{
							document.getElementById(\'wysija\').style.left = jQuery(e.target).position().left-50+"px";
							document.getElementById(\'wysija\').style.top = jQuery(e.target).position().top-40+"px";
						}catch(err){
							document.getElementById(\'wysija\').style.left = e.x-50+"px";
							document.getElementById(\'wysija\').style.top = e.y-40+"px";
						}
						currentValueId = valueid;
					}
					document.getElementById(\'wysija\').style.display = \'block\';
					initDiv();
				}

				function spanChange(span){
					input = currentValueId;
					if (document.getElementById(span).className == span.toLowerCase()+"elementselected"){
						document.getElementById(span).className = span.toLowerCase()+"element";
						if(span == "B"){
							document.getElementById("name_"+currentValueId).style.fontWeight = "";
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value.replace(/font-weight *: *bold(;)?/i, "");
						}
						if(span == "I"){
							document.getElementById("name_"+currentValueId).style.fontStyle = "";
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value.replace(/font-style *: *italic(;)?/i, "");
						}
						if(span == "U"){
							document.getElementById("name_"+currentValueId).style.textDecoration="";
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value.replace(/text-decoration *: *underline(;)?/i,"");
						}

					}else{
						 document.getElementById(span).className = span.toLowerCase()+"elementselected";
						if(span == "B"){
							document.getElementById("name_"+currentValueId).style.fontWeight = "bold";
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value + "font-weight:bold;";
						}
						if(span == "I"){
							document.getElementById("name_"+currentValueId).style.fontStyle = "italic";
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value + "font-style:italic;";
						}
						if(span == "U"){
							document.getElementById("name_"+currentValueId).style.textDecoration="underline";
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value + "text-decoration:underline;";
						}
					}
				}
				function getValueSelect(){
					selec = currentValueId;
					var myRegex2 = new RegExp(/font-size *:[^;]*;/i);
					var MyValue = document.getElementById("style_select_wysija").value;
					document.getElementById("name_"+currentValueId).style.fontSize = MyValue;
					if(document.getElementById("style_"+currentValueId).value.search(myRegex2) != -1){
						if(MyValue == ""){
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value.replace(myRegex2, "");
						}else{
							document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value.replace(myRegex2, "font-size:"+MyValue+";");
						}
					}else{
						document.getElementById("style_"+currentValueId).value = document.getElementById("style_"+currentValueId).value + "font-size:"+MyValue+";";
					}
				}

				function initDiv(){

					var RegexSize = new RegExp(/font-size *:[^;]*(;)?/gi);
					var RegexColor = new RegExp(/([^a-z-])color *:[^;]*(;)?/gi);


					document.getElementById("colorexamplewysijacolor").style.backgroundColor = "#000000";
					document.getElementById("colordivwysijacolor").style.display = "none";
					spaced = document.getElementById("style_"+currentValueId).value.substr(0,1);
					if(spaced != " "){
						stringToQuery = \' \' + document.getElementById("style_"+currentValueId).value;
					}else{
						stringToQuery = document.getElementById("style_"+currentValueId).value;
					}
					NewColor = stringToQuery.match(RegexColor);
					if(NewColor != null){
						NewColor = NewColor[0].match(/:[^;!]*/gi);
						NewColor = NewColor[0].replace(/(:| )/gi,"");
						document.getElementById("colorexamplewysijacolor").style.backgroundColor = NewColor;
					}


					document.getElementById("U").className = "uelement";
					document.getElementById("I").className = "ielement";
					document.getElementById("B").className = "belement";

					if(document.getElementById("style_"+currentValueId).value.search(/font-weight: *bold(;)?/i) != -1){
						document.getElementById("B").className += "selected";
					}
					if(document.getElementById("style_"+currentValueId).value.search(/font-style: *italic(;)?/i) != -1){
						document.getElementById("I").className += "selected";
					}
					if(document.getElementById("style_"+currentValueId).value.search(/text-decoration: *underline(;)?/i) != -1){
						document.getElementById("U").className += "selected";
					}


					NewSize = stringToQuery.match(RegexSize);
					document.getElementById("style_select_wysija").options[0].selected = true;
					if(NewSize != null){
						NewSize = NewSize[0].match(/:[^;]*/gi);
						NewSize = NewSize[0].replace(" ","");
						NewSize = NewSize.substr(1);
						for(var i = 0; i < document.getElementById("style_select_wysija").length; i++){
							if(document.getElementById("style_select_wysija").options[i].value == NewSize){
								document.getElementById("style_select_wysija").options[i].selected = true;
							}
						}
					}
				}';

		acymailing_addScript(true, $script);

		$installedPlugin = acymailing_getPlugin('acymailing', 'emojis');
		if(!empty($installedPlugin)){
			$params = new acyParameter($installedPlugin->params);
			if(acymailing_isPluginEnabled('acymailing', 'emojis') && $params->get('subject', 1) == 1) {
				if(!ACYMAILING_J30){
					acymailing_addScript(false, ACYMAILING_JS.'jquery/jquery-1.9.1.min.js?v='.filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'jquery'.DS.'jquery-1.9.1.min.js'));
					acymailing_addScript(false, ACYMAILING_JS.'jquery/jquery-ui.min.js?v='.filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'jquery'.DS.'jquery-ui.min.js'));
				}
				acymailing_addScript(false, acymailing_rootURI().'plugins/editors/acyeditor/acyeditor/ckeditor/plugins/smiley/emojionearea.js?v='.filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'plugins'.DS.'smiley'.DS.'emojionearea.js'));
				acymailing_addScript(false, acymailing_rootURI().'plugins/editors/acyeditor/acyeditor/ckeditor/plugins/smiley/dialogs/emojimap.js?v='.filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'plugins'.DS.'smiley'.DS.'dialogs'.DS.'emojimap.js'));
				acymailing_addStyle(false, acymailing_rootURI().'plugins/editors/acyeditor/acyeditor/ckeditor/plugins/smiley/emojionearea.css?v='.filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'plugins'.DS.'smiley'.DS.'emojionearea.css'));

				acymailing_addScript(true, '
					jQuery(document).ready(function() {
						jQuery("#subject").emojioneArea({
							pickerPosition: "bottom",
							shortnames: true
						});
					});
				');
			}
		}

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$infos = new stdClass();
		$infos->test_selection = acymailing_getUserVar($paramBase.".test_selection", 'test_selection', '', 'string');
		$infos->test_group = acymailing_getUserVar($paramBase.".test_group", 'test_group', '', 'string');
		$infos->test_emails = acymailing_getUserVar($paramBase.".test_emails", 'test_emails', '', 'string');


		$acyToolbar = acymailing_get('helper.toolbar');
		if(acymailing_isAllowed($config->get('acl_tags_view', 'all'))) $acyToolbar->popup('tag', acymailing_translation('TAGS'), acymailing_completeLink("tag&task=tag&type=news", true), 780, 550);
		$acyToolbar->custom('test', acymailing_translation('SEND_TEST'), 'send', false);
		$acyToolbar->divider();
		$acyToolbar->addButtonOption('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
		$acyToolbar->save();
		$acyToolbar->cancel();
		$acyToolbar->divider();
		$acyToolbar->help('template', 'templatecreation');
		$acyToolbar->setTitle(acymailing_translation('ACY_TEMPLATE'), 'template&task=edit&tempid='.$tempid);
		$acyToolbar->display();


		$this->editor = $editor;
		$testreceiverType = acymailing_get('type.testreceiver');
		$this->testreceiverType = $testreceiverType;
		$this->template = $template;
		$colorBox = acymailing_get('type.color');
		$this->colorBox = $colorBox;
		$this->infos = $infos;

		$tabs = acymailing_get('helper.acytabs');
		$this->tabs = $tabs;
	}

	function theme(){
		$this->selection[] = 'a.*';
		$this->filters[] = 'a.published = 1';

		if(acymailing_level(3)){
			$groups = acymailing_getGroupsByUser(acymailing_currentUserId(), false);
			$condGroup = '';
			foreach($groups as $group){
				$condGroup .= ' OR a.access LIKE (\'%,'.$group.',%\')';
			}
			$this->filters[] = 'a.access = \'all\''.$condGroup;
		}

		$this->button = false;
		acymailing_display(acymailing_translation('CHANGE_TEMPLATE'), 'warning', false);
		$this->listing();

		$js = "function applyTemplate(tempid){
			window.parent.changeTemplate(window.document.getElementById('htmlcontent_'+tempid).innerHTML,
										window.document.getElementById('textcontent_'+tempid).innerHTML,
										window.document.getElementById('subject_'+tempid).innerHTML,
										window.document.getElementById('stylesheet_'+tempid).innerHTML,
										window.document.getElementById('fromname_'+tempid).innerHTML,
										window.document.getElementById('fromemail_'+tempid).innerHTML,
										window.document.getElementById('replyname_'+tempid).innerHTML,
										window.document.getElementById('replyemail_'+tempid).innerHTML,
										tempid);
			acymailing.closeBox(true); }";
		acymailing_addScript(true, $js);
	}

	function upload(){
		if(acymailing_isNoTemplate()){
			$acyToolbar = acymailing_get('helper.toolbar');
			$acyToolbar->custom('doupload', acymailing_translation('IMPORT'), 'import', false);
			$acyToolbar->divider();
			$acyToolbar->help('template-upload');
			$acyToolbar->setTitle(acymailing_translation('ACY_TEMPLATE'));
			$acyToolbar->topfixed = false;
			$acyToolbar->display();
		}
	}
}
views/chooselist/index.html000060400000000054152455705230012055 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/chooselist/view.html.php000060400000003530152455705230012510 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class chooselistViewchooselist extends acymailingView
{

	function display($tpl = null)
	{
		$function = $this->getLayout();
		if(method_exists($this,$function)) $this->$function();

		parent::display($tpl);
	}

	function listing(){

		$listClass = acymailing_get('class.list');
		$rows = $listClass->getLists();

		$selectedLists = acymailing_getVar('string', 'values', '', '');

		if(strtolower($selectedLists) == 'all'){
			foreach($rows as $id => $oneRow){
				$rows[$id]->selected = true;
			}
		}elseif(!empty($selectedLists)){
			$selectedLists = explode(',',$selectedLists);
			foreach($rows as $id => $oneRow){
				if(in_array($oneRow->listid,$selectedLists)){
					$rows[$id]->selected = true;
				}
			}
		}

		$fieldName = acymailing_getVar('string', 'task');
		$controlName = acymailing_getVar('string', 'control', 'params');
		$popup = acymailing_getVar('string', 'popup', '1');

		$this->rows = $rows;
		$this->selectedLists = $selectedLists;
		$this->fieldName = $fieldName;
		$this->controlName = $controlName;
		$this->popup = $popup;
	}


	function customfields(){

		$fieldsClass = acymailing_get('class.fields');
		$fake = null;
		$rows = $fieldsClass->getFields('module', $fake);

		$selected = acymailing_getVar('string', 'values', '', '');
		$selectedvalues = explode(',',$selected);
		foreach($rows as $id => $oneRow){
			if(in_array($oneRow->namekey,$selectedvalues)){
				$rows[$id]->selected = true;
			}
		}

		$this->fieldsClass = $fieldsClass;
		$this->rows = $rows;
		$controlName = acymailing_getVar('string', 'control', 'params');
		$this->controlName = $controlName;
	}
}
views/chooselist/tmpl/customfields.php000060400000006573152455705230014262 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<script language="javascript" type="text/javascript">
	<!--
		var selectedContents = new Array();
		var allElements = <?php echo count($this->rows);?>;
		<?php
			foreach($this->rows as $oneRow){
				if(!empty($oneRow->selected)){
					echo "selectedContents['".$oneRow->namekey."'] = 'content';";
				}
			}
		?>
		function applyContent(contentid,rowClass){
			if(selectedContents[contentid]){
				window.document.getElementById('content'+contentid).className = rowClass;
				delete selectedContents[contentid];
			}else{
				window.document.getElementById('content'+contentid).className = 'selectedrow';
				selectedContents[contentid] = 'content';
			}
		}

		function insertTag(){
			var tag = '';
			for(var i in selectedContents){
				if(selectedContents[i] == 'content'){
					allElements--;
					if(tag != '') tag += ',';
					tag = tag + i;
				}
			}

			var textbox = window.top.document.getElementById('<?php echo $this->controlName; ?>customfields');
			textbox.value = tag;

			<?php if('joomla' == 'wordpress'){ ?>
				if(textbox.form && textbox.form.querySelector('input[type="submit"]')){
					textbox.form.querySelector('input[type="submit"]').removeAttribute('disabled');
					textbox.form.querySelector('input[type="submit"]').value = '<?php echo __('Save'); ?>';
				}
			<?php } ?>

			parent.acymailing.setOnclickPopup('link<?php echo $this->controlName; ?>customfields', '<?php echo acymailing_completeLink('chooselist&task=customfields&control='.$this->controlName); ?>&values='+tag, 650, 375);
			acymailing.closeBox(true);
		}
	//-->
	</script>
	<style type="text/css">
		table.acymailing_table tr.selectedrow td{
			background-color:#FDE2BA;
		}
	</style>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'chooselist') ?>" method="post" name="adminForm" id="adminForm">
		<div style="float:right;margin-bottom : 10px">
			<button class="acymailing_button_grey" id="insertButton" onclick="insertTag(); return false;"><?php echo acymailing_translation('ACY_APPLY'); ?></button>
		</div>
		<div style="clear:both"></div>
		<table class="acymailing_table" cellpadding="1">
			<thead>
				<tr>
					<th class="title">
					</th>
					<th class="title">
						<?php echo acymailing_translation('FIELD_COLUMN'); ?>
					</th>
					<th class="title">
						<?php echo acymailing_translation('FIELD_LABEL'); ?>
					</th>
					<th class="title titleid">
						<?php echo acymailing_translation('ACY_ID'); ?>
					</th>
				</tr>
			</thead>
			<tbody>
				<?php
					$k = 0;

					foreach($this->rows as $row){
				?>
					<tr class="<?php echo empty($row->selected) ? "row$k" : 'selectedrow'; ?>" id="content<?php echo $row->namekey; ?>" onclick="applyContent('<?php echo $row->namekey."','row$k'"?>);" style="cursor:pointer;">
						<td class="acytdcheckbox"></td>
						<td>
						<?php echo $row->namekey; ?>
						</td>
						<td>
						<?php echo $this->fieldsClass->trans($row->fieldname); ?>
						</td>
						<td align="center" style="text-align:center" >
							<?php echo $row->fieldid; ?>
						</td>
					</tr>
				<?php
						$k = 1-$k;
					}
				?>
			</tbody>
		</table>
	</form>
</div>
views/chooselist/tmpl/index.html000060400000000054152455705230013031 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/chooselist/tmpl/listing.php000060400000007626152455705230013232 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<script language="javascript" type="text/javascript">
		<!--
		var selectedContents = new Array();
		var allElements = <?php echo count($this->rows);?>;
		<?php
			foreach($this->rows as $oneRow){
				if(!empty($oneRow->selected)){
					echo "selectedContents[".$oneRow->listid."] = 'content';";
				}
			}
		?>
		function applyContent(contentid, rowClass) {
			if (selectedContents[contentid]) {
				window.document.getElementById('content' + contentid).className = rowClass;
				delete selectedContents[contentid];
			} else {
				window.document.getElementById('content' + contentid).className = 'selectedrow';
				selectedContents[contentid] = 'content';
			}
		}

		function insertTag() {
			var tag = '';
			for (var i in selectedContents) {
				if (selectedContents[i] == 'content') {
					allElements--;
					if (tag != '') tag += ',';
					tag = tag + i;
				}
			}
			<?php if(acymailing_getVar('int', 'all', 1) == 1){ ?>if (allElements == 0) tag = 'All';<?php } ?>
			if (allElements == <?php echo count($this->rows);?>) tag = 'None';

			<?php if(empty($this->popup)){ ?>

				window.parent.document.getElementById('<?php echo $this->controlName.$this->fieldName; ?>').value = tag;
				window.parent.displayLists();

			<?php }else{ ?>

				var textbox = window.top.document.getElementById('<?php echo $this->controlName.$this->fieldName; ?>');
				textbox.value = tag;

				<?php if('joomla' == 'wordpress'){ ?>
					if(textbox.form && textbox.form.querySelector('input[type="submit"]')){
						textbox.form.querySelector('input[type="submit"]').removeAttribute('disabled');
						textbox.form.querySelector('input[type="submit"]').value = '<?php echo __('Save'); ?>';
					}
				<?php } ?>

				parent.acymailing.setOnclickPopup('link<?php echo $this->controlName.$this->fieldName; ?>', '<?php echo htmlspecialchars_decode(acymailing_completeLink('chooselist&task='.$this->fieldName.'&control='.$this->controlName)); ?>&values='+tag, 650, 375);
				acymailing.closeBox(true);

			<?php } ?>
		}
		//-->
	</script>
	<style type="text/css">
		table.acymailing_table tr.selectedrow td{
			background-color: #f3f7fc;
		}
	</style>
	<form action="<?php echo acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'chooselist'); ?>" method="post" name="adminForm" id="adminForm">
		<div style="float:right;margin-bottom : 10px">
			<button class="acymailing_button_grey" id="insertButton" onclick="insertTag(); return false;"><?php echo acymailing_translation('ACY_APPLY'); ?></button>
		</div>
		<div style="clear:both"/>
		<table class="acymailing_table" cellpadding="1">
			<thead>
			<tr>
				<th class="title">

				</th>
				<th class="title titlecolor">

				</th>
				<th class="title">
					<?php echo acymailing_translation('LIST_NAME'); ?>
				</th>
				<th class="title titleid">
					<?php echo acymailing_translation('ACY_ID'); ?>
				</th>
			</tr>
			</thead>
			<tbody>
			<?php
			$k = 0;

			for($i = 0, $a = count($this->rows); $i < $a; $i++){
				$row =& $this->rows[$i];
				?>
				<tr class="<?php echo empty($row->selected) ? "row$k" : 'selectedrow'; ?>" id="content<?php echo $row->listid ?>" onclick="applyContent(<?php echo $row->listid.",'row$k'" ?>);" style="cursor:pointer;">
					<td class="acytdcheckbox"></td>
					<td>
						<?php echo '<div class="roundsubscrib rounddisp" style="background-color:'.$row->color.'"></div>'; ?>
					</td>
					<td>
						<?php
						echo acymailing_tooltip($row->description, $row->name, 'tooltip.png', $row->name);
						?>
					</td>
					<td align="center" style="text-align:center">
						<?php echo $row->listid; ?>
					</td>
				</tr>
				<?php
				$k = 1 - $k;
			}
			?>
			</tbody>
		</table>
	</form>
</div>
views/queue/view.html.php000060400000015463152455705230011470 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class QueueViewQueue extends acymailingView{
	var $searchFields = array('b.name', 'b.email', 'c.subject', 'a.mailid', 'a.subid');
	var $selectFields = array('b.name', 'b.email', 'c.subject', 'c.type', 'c.published', 'a.mailid', 'a.subid', 'a.senddate', 'a.priority', 'a.try');

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function preview(){
		$mailid = acymailing_getVar('int', 'mailid');
		$subid = acymailing_getVar('int', 'subid');

		$mailerHelper = acymailing_get('helper.mailer');
		$mailerHelper->loadedToSend = false;
		$mail = $mailerHelper->load($mailid);

		$userClass = acymailing_get('class.subscriber');
		$receiver = $userClass->get($subid);
		if(empty($receiver)) die(acymailing_translation_sprintf('SEND_ERROR_USER', $subid));
		if(empty($mail)) die('Newsletter not found: '.$mailid);
		$mail->sendHTML = $mail->html && $receiver->html;

		$receiver->paramqueue = acymailing_loadResult('SELECT paramqueue FROM #__acymailing_queue WHERE mailid = '.intval($mailid).' AND subid = '.intval($subid));

		acymailing_trigger('acymailing_replaceusertags', array(&$mail, &$receiver, false));
		if(!empty($mail->altbody)) $mail->altbody = $mailerHelper->textVersion($mail->altbody, false);

		if($mail->html){
			$templateClass = acymailing_get('class.template');
			$templateClass->displayPreview('newsletter_preview_area', $mail->tempid, $mail->subject);
		}

		$this->mail = $mail;

		$acyToolbar = acymailing_get('helper.toolbar');
		$acyToolbar->setTitle($this->mail->subject);
		$acyToolbar->directPrint();
		$acyToolbar->topfixed = false;
		$acyToolbar->display();
	}

	function listing(){
		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();

		$config = acymailing_config();

		$paramBase = ACYMAILING_COMPONENT.'.'.$this->getName();
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.senddate', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'asc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));

		$pageInfo->selectedMail = acymailing_getUserVar($paramBase."filter_mail", 'filter_mail', 0, 'int');

		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$filters = array();
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $this->searchFields)." LIKE $searchVal";
		}

		if(!empty($pageInfo->selectedMail)) $filters[] = 'a.mailid = '.intval($pageInfo->selectedMail);

		$query = 'SELECT '.implode(' , ', $this->selectFields);
		$query .= ' FROM '.acymailing_table('queue').' as a';
		$query .= ' JOIN '.acymailing_table('subscriber').' as b on a.subid = b.subid';
		$query .= ' JOIN '.acymailing_table('mail').' as c on a.mailid = c.mailid';
		if(!empty($filters)) $query .= ' WHERE ('.implode(') AND (', $filters).')';
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir.', a.`subid` ASC';
		}

		if(empty($pageInfo->limit->value)) $pageInfo->limit->value = 100;
		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);
		if(empty($rows) && $pageInfo->limit->start != 0){
			$pageInfo->limit->start = 0;
			$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);
		}

		$pageInfo->elements->page = count($rows);

		if($pageInfo->limit->value > $pageInfo->elements->page){
			$pageInfo->elements->total = $pageInfo->limit->start + $pageInfo->elements->page;
		}else{
			$queryCount = 'SELECT COUNT(a.mailid) FROM '.acymailing_table('queue').' as a';
			if(!empty($pageInfo->search)){
				$queryCount .= ' JOIN '.acymailing_table('subscriber').' as b on a.subid = b.subid';
				$queryCount .= ' JOIN '.acymailing_table('mail').' as c on a.mailid = c.mailid';
			}
			if(!empty($filters)) $queryCount .= ' WHERE ('.implode(') AND (', $filters).')';

			$pageInfo->elements->total = acymailing_loadResult($queryCount);
		}

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$mailqueuetype = acymailing_get('type.queuemail');
		$filtersType = new stdClass();
		$filtersType->mail = $mailqueuetype->display('filter_mail', $pageInfo->selectedMail);


		$acyToolbar = acymailing_get('helper.toolbar');
		if(acymailing_isAllowed($config->get('acl_queue_process', 'all'))){
			$acyToolbar->popup('process', acymailing_translation('PROCESS'), acymailing_completeLink("queue&task=process&mailid=".$pageInfo->selectedMail, true));
		}
		if(!empty($pageInfo->elements->total) AND acymailing_isAllowed($config->get('acl_queue_delete', 'all'))){
			$onClick = "if (confirm('".str_replace("'", "\'", acymailing_translation_sprintf('CONFIRM_DELETE_QUEUE', $pageInfo->elements->total))."')){acymailing.submitbutton('remove');}";
			$acyToolbar->custom('remove', acymailing_translation('ACY_DELETE'), 'delete', false, $onClick);
		}

		$acyToolbar->divider();
		$acyToolbar->help('queue-listing');
		$acyToolbar->setTitle(acymailing_translation('QUEUE'), 'queue');
		$acyToolbar->display();

		$toggleClass = acymailing_get('helper.toggle');

		$this->toggleClass = $toggleClass;
		$this->filters = $filtersType;
		$this->rows = $rows;
		$this->pageInfo = $pageInfo;
		$this->pagination = $pagination;
	}

	function process(){

		$mailid = acymailing_getCID('mailid');
		$queueClass = acymailing_get('class.queue');
		$queueStatus = $queueClass->queueStatus($mailid);
		$nextqueue = $queueClass->queueStatus($mailid, true);
		if(acymailing_level(1)){
			$scheduleClass = acymailing_get('helper.schedule');
			$scheduleNewsletter = $scheduleClass->getScheduled();
			$this->schedNews = $scheduleNewsletter;
		}

		if(empty($queueStatus) AND empty($scheduleNewsletter)) acymailing_display(acymailing_translation('NO_PROCESS'), 'info');

		$infos = new stdClass();
		$infos->mailid = $mailid;
		$this->queue = $queueStatus;
		$this->nextqueue = $nextqueue;
		$this->infos = $infos;
	}
}
views/queue/tmpl/preview.php000060400000000643152455705230012202 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div class="newsletter_body" id="newsletter_preview_area">
	<?php echo $this->mail->sendHTML ? $this->mail->body : nl2br($this->mail->altbody); ?>
</div>
views/queue/tmpl/listing.php000060400000010451152455705230012170 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<div id="iframedoc"></div>

	<?php if(empty($this->pageInfo->search) && empty($this->rows) && empty($pageInfo->selectedMail)){
		acymailing_display(acymailing_translation('ACY_EMPTY_QUEUE'),'info');
		echo '</div>';
		return;
	}
		?>

		<form action="<?php echo acymailing_completeLink('queue'); ?>" method="post" name="adminForm" id="adminForm">
			<table class="acymailing_table_options">
				<tr>
					<td width="100%">
						<?php acymailing_listingsearch($this->pageInfo->search); ?>
					</td>
					<td nowrap="nowrap">
						<?php echo $this->filters->mail; ?>
					</td>
				</tr>
			</table>

			<table class="acymailing_table" cellpadding="1">
				<thead>
				<tr>
					<th class="title titlenum">
						<?php echo acymailing_translation('ACY_NUM'); ?>
					</th>
					<th class="title titledate">
						<?php echo acymailing_gridSort(acymailing_translation('SEND_DATE'), 'a.senddate', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('JOOMEXT_SUBJECT'), 'c.subject', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_USER'), 'b.email', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('PRIORITY'), 'a.priority', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titletoggle">
						<?php echo acymailing_gridSort(acymailing_translation('TRY'), 'a.try', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
					<th class="title titletoggle">
						<?php echo acymailing_translation('ACY_DELETE'); ?>
					</th>
					<th class="title titletoggle" nowrap="nowrap">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_PUBLISHED'), 'c.published', $this->pageInfo->filter->order->dir, $this->pageInfo->filter->order->value); ?>
					</th>
				</tr>
				</thead>
				<tfoot>
				<tr>
					<td colspan="10">
						<?php echo $this->pagination->getListFooter();
						echo $this->pagination->getResultsCounter(); ?>
					</td>
				</tr>
				</tfoot>
				<tbody>
				<?php
				$k = 0;

				for($i = 0, $a = count($this->rows); $i < $a; $i++){
					$row =& $this->rows[$i];
					$id = 'queue'.$i;
					?>
					<tr class="<?php echo "row$k"; ?>" id="<?php echo $id; ?>">
						<td align="center" style="text-align:center">
							<?php echo $this->pagination->getRowOffset($i); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo acymailing_getDate($row->senddate); ?>
						</td>
						<td>
							<?php
							$row->subject = acyEmoji::Decode($row->subject);
							echo acymailing_popup(acymailing_completeLink('queue&task=preview&mailid='.$row->mailid.'&subid='.$row->subid, true), acymailing_dispSearch($row->subject, $this->pageInfo->search), '', 800, 590); ?>
						</td>
						<td>
							<?php
							echo acymailing_tooltip(acymailing_translation('ACY_NAME').' : '.$row->name.'<br />'.acymailing_translation('ACY_ID').' : '.$row->subid, $row->email, 'tooltip.png', $row->name.' ( '.$row->email.' )', acymailing_completeLink('subscriber&task=edit&subid='.$row->subid));
							?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo $row->priority; ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo $row->try; ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo $this->toggleClass->delete($id, $row->subid.'_'.$row->mailid, 'queue'); ?>
						</td>
						<td align="center" style="text-align:center">
							<?php echo $this->toggleClass->display('published', $row->published); ?>
						</td>
					</tr>
					<?php
					$k = 1 - $k;
				}
				?>
				</tbody>
			</table>

			<?php acymailing_formOptions($this->pageInfo->filter->order); ?>
		</form>
</div>
views/queue/tmpl/process.php000060400000006660152455705230012204 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php acymailing_display(acymailing_translation_sprintf('QUEUE_STATUS', acymailing_getDate(time())), 'info'); ?>
<form action="<?php echo acymailing_completeLink('queue', true); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
	<div>
		<?php if(!empty($this->queue)){ ?>
			<div class="onelineblockoptions">
				<span class="acyblocktitle"><?php echo acymailing_translation('QUEUE_READY'); ?></span>
				<table class="acymailing_table" cellspacing="1" align="center">
					<tbody>
					<?php $k = 0;
					$total = 0;
					foreach($this->queue as $mailid => $row){
						$total += $row->nbsub;
						?>

						<tr class="<?php echo "row$k"; ?>">
							<td>
								<?php
								$row->subject = acyEmoji::Decode($row->subject);
								echo acymailing_translation_sprintf('EMAIL_READY', $row->mailid, $row->subject, $row->nbsub);
								?>
							</td>
						</tr>
						<?php
						$k = 1 - $k;
					} ?>
					</tbody>
				</table>
				<br/>
				<input type="hidden" name="totalsend" value="<?php echo $total; ?>"/>
				<input class="acymailing_button_grey" type="submit" onclick="document.adminForm.task.value='continuesend';" value="<?php echo acymailing_translation('SEND'); ?>">
			</div>
		<?php } ?>

		<?php if(!empty($this->schedNews)){ ?>
			<div class="onelineblockoptions">
				<span class="acyblocktitle"><?php echo acymailing_translation('SCHEDULE_NEWS'); ?></span>
				<table class="acymailing_table" cellspacing="1" align="center">
					<tbody>
					<?php $k = 0;
					$sendButton = false;
					foreach($this->schedNews as $row){
						if($row->senddate < time()) $sendButton = true; ?>
						<tr class="<?php echo "row$k"; ?>">
							<td>
								<?php
								$row->subject = acyEmoji::Decode($row->subject);
								echo acymailing_translation_sprintf('QUEUE_SCHED', $row->mailid, $row->subject, acymailing_getDate($row->senddate));
								?>
							</td>
						</tr>
						<?php
						$k = 1 - $k;
					} ?>
					</tbody>
				</table>
				<?php if($sendButton){ ?><br/><input class="acymailing_button" onclick="document.adminForm.task.value='genschedule';" type="submit" value="<?php echo acymailing_translation('GENERATE', true); ?>"><?php } ?>
			</div>
		<?php } ?>

		<?php if(!empty($this->nextqueue)){ ?>
			<div class="onelineblockoptions">
				<span class="acyblocktitle"><?php echo acymailing_translation_sprintf('QUEUE_STATUS', acymailing_getDate(time())); ?></span>
				<table class="acymailing_table" cellspacing="1" align="center">
					<tbody>
					<?php $k = 0;
					foreach($this->nextqueue as $mailid => $row){ ?>
						<tr class="<?php echo "row$k"; ?>">
							<td>
								<?php
								$row->subject = acyEmoji::Decode($row->subject);
								echo acymailing_translation_sprintf('EMAIL_READY', $row->mailid, $row->subject, $row->nbsub);
								echo '<br />'.acymailing_translation_sprintf('QUEUE_NEXT_SCHEDULE', acymailing_getDate($row->senddate));
								?>
							</td>
						</tr>
						<?php
						$k = 1 - $k;
					} ?>
					</tbody>
				</table>
			</div>
		<?php } ?>
	</div>
	<div class="clr"></div>
	<input type="hidden" name="mailid" value="<?php echo $this->infos->mailid; ?>"/>
	<?php
	acymailing_setVar('ctrl', 'send');
	acymailing_formOptions();
	?>
</form>
views/queue/tmpl/index.html000060400000000054152455705230012001 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/queue/index.html000060400000000054152455705230011025 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/tag/index.html000060400000000054152455705230010454 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/tag/view.html.php000060400000004645152455705230011117 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class TagViewTag extends acymailingView{

	function display($tpl = null){
		$function = $this->getLayout();
		if(method_exists($this, $function)) $this->$function();

		parent::display($tpl);
	}

	function tag(){
		acymailing_addStyle(false, ACYMAILING_CSS.'frontendedition.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'frontendedition.css'));

		acymailing_importPlugin('acymailing');
		$tagsfamilies = acymailing_trigger('acymailing_getPluginType');

		$defaultFamily = reset($tagsfamilies);
		if(!is_object($defaultFamily)) $defaultFamily = end($tagsfamilies);
		$fctplug = acymailing_getUserVar(ACYMAILING_COMPONENT.".tag", 'fctplug', $defaultFamily->function, 'cmd');

		ob_start();
		$defaultContents = acymailing_trigger($fctplug);
		$defaultContent = ob_get_clean();

		$js = 'function insertTag(){if(window.parent.insertTag(window.document.getElementById(\'tagstring\').value)) {acymailing.closeBox(true);}}';
		$js .= 'function setTag(tagvalue){window.document.getElementById(\'tagstring\').value = tagvalue;}';
		$js .= 'function showTagButton(){window.document.getElementById(\'insertButton\').style.display = \'inline\'; window.document.getElementById(\'tagstring\').style.display=\'inline\';}';
		$js .= 'function hideTagButton(){}';
		$js .= 'try{window.parent.previousSelection = window.parent.getPreviousSelection(); }catch(err){window.parent.previousSelection=false; }';

		acymailing_addScript(true, $js);


		$this->fctplug = $fctplug;
		$type = acymailing_getVar('string', 'type', 'news');
		$this->type = $type;
		$this->defaultContent = $defaultContent;
		$this->tagsfamilies = $tagsfamilies;
		$ctrl = acymailing_getVar('string', 'ctrl');
		$this->ctrl = $ctrl;
	}

	function form(){
		$plugin = acymailing_getVar('string', 'plugin');
		$plugin = preg_replace('#[^a-zA-Z0-9_]#Uis', '', $plugin);
		$templatePath = ACYMAILING_MEDIA.'plugins'.DS.$plugin.'.php';
		$body = '';
		if(file_exists($templatePath)) $body = file_get_contents($templatePath);
		$help = acymailing_getVar('string', 'help');
		$help = preg_replace('#[^a-zA-Z0-9]#Uis', '', $help);
		$help = empty($help) ? $plugin : $help;

		$this->help = $help;
		$this->plugin = $plugin;
		$this->body = $body;
	}
}
views/tag/tmpl/form.php000060400000003152152455705230011111 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div id="acy_content">
	<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off">
		<?php
		$toolbar = acymailing_get('helper.toolbar');
		$toolbar->help('plugin-'.$this->help);
		$toolbar->divider();
		$toolbar->custom('apply', acymailing_translation('ACY_SAVE', true), 'save', false);
		$toolbar->topfixed = false;
		$toolbar->setTitle(acymailing_translation('ACY_CUSTOMTEMPLATE'));
		$toolbar->display();
		?>
		<div id="iframedoc" style="clear:both;position:relative;"></div>
		<div class="onelineblockoptions">
			<table class="acymailing_table" width="100%">
				<tr>
					<td class="paramlist_key">
						<label for="subject">
							<?php echo acymailing_translation('TEMPLATE_NAME'); ?>
						</label>
					</td>
					<td class="paramlist_value">
						<?php echo $this->plugin; ?>.php
					</td>
				</tr>
			</table>
		</div>
		<fieldset class="adminform" style="width:95%;" id="textfieldset">
			<legend><?php echo acymailing_translation('ACY_TEMPLATE'); ?></legend>
			<textarea style="width:99%;height:250px;" rows="16" name="templatebody" id="templatebody"><?php echo $this->body; ?></textarea>
		</fieldset>

		<div class="clr"></div>

		<input type="hidden" name="plugin" value="<?php echo $this->plugin; ?>"/>
		<?php acymailing_formOptions(); ?>
	</form>
</div>
views/tag/tmpl/index.html000060400000000054152455705230011430 0ustar00<html><body bgcolor="#FFFFFF"></body></html>views/tag/tmpl/tag.php000060400000005236152455705230010726 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><style type="text/css">
	body{
		height: auto;
		min-width: 650px !important;
	}

	html{
		overflow-y: auto;
	}

	.rt-container, .rt-block{
		width: auto !important;
		background-color: #f6f7f9 !important;
	}
</style>
<div id="acy_content">
	<div id="acymailing_edit" class="acytagpopup">
		<?php
		if(empty($this->tagsfamilies)) acymailing_checkPluginsFolders();
		?>
		<table width="100%">
			<tr>
				<td class="familymenu" valign="top">
					<?php
					foreach($this->tagsfamilies as $id => $oneFamily){
						if(empty($oneFamily)) continue;
						if($oneFamily->function == $this->fctplug){
							$help = empty($oneFamily->help) ? '' : $oneFamily->help;
							$class = ' class="selected" ';
						}else $class = '';
						echo '<a'.$class.' href="'.acymailing_completeLink($this->ctrl.'&task=tag&type='.$this->type.'&fctplug='.$oneFamily->function, true).'" >'.$oneFamily->name.'</a>';
					}
					?>
				</td>
				<?php if(!empty($help) AND acymailing_isAdmin()){ ?>
					<td valign="top">
						<div style="float:right;padding-right:5px;" class="toolbar">
							<?php
							$toolbar = acymailing_get('helper.toolbar');
							$toolbar->help($help);
							?>
							<button onclick="displayDoc();return false;" class="toolbar acymailing_button" style="margin-bottom: 5px;"><i class="acyicon-help" style="margin: 0px 5px;" title="<?php echo acymailing_translation('ACY_HELP'); ?>"></i><?php echo acymailing_translation('ACY_HELP'); ?></button>
						</div>
					</td>
				<?php } ?>
			</tr>
		</table>
		<div id="iframedoc" style="clear:both;position:relative;"></div>
		<div id="inserttagdiv">
			<input type="text" class="inputbox" style="width:300px;" id="tagstring" name="tagstring" value="" onclick="this.select();">
			<button class="acymailing_button" id="insertButton" onclick="insertTag();"><?php echo acymailing_translation('INSERT_TAG') ?></button>
		</div>
		<form action="<?php echo acymailing_completeLink(acymailing_getVar('cmd', 'ctrl')); ?>" method="post" name="adminForm" id="adminForm" autocomplete="off" enctype="multipart/form-data">
			<div id="plugarea">
				<?php echo $this->defaultContent; ?>
			</div>
			<div class="clr"></div>

			<input type="hidden" id="fctplug" name="fctplug" value="<?php echo $this->fctplug; ?>"/>
			<input type="hidden" name="type" value="<?php echo $this->type; ?>"/>
			<input type="hidden" name="defaulttask" value="tag"/>
			<?php acymailing_formOptions(); ?>
		</form>
	</div>
</div>
helpers/import.php000060400000221407152455705230010243 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyimportHelper{

	var $importUserInLists = array();
	var $totalInserted = 0;
	var $totalTry = 0;
	var $totalValid = 0;
	var $allSubid = array();
	var $db;
	var $dispatcher;
	var $forceconfirm = false;
	var $charsetConvert;
	var $generatename = true;
	var $overwrite = false;
	var $importblocked = false;
	var $removeSep = 0;
	var $dispresults = true;

	var $tablename = '';
	var $equFields = array();
	var $dbwhere = array(); //handle where on import via filter to only import new users for example

	var $subscribedUsers = array();

	public function __construct(){
		acymailing_increasePerf();
		acymailing_importPlugin('acymailing');
		
		global $acymailingCmsUserVars;
		$this->cmsUserVars = $acymailingCmsUserVars;
	}

	private function getImportedLists(){
		$lists = acymailing_getVar('array', 'importlists', array());

		$newListName = acymailing_getVar('string', 'createlist');
		if(empty($newListName)) return $lists;

		$newList = new stdClass();
		$newList->name = $newListName;
		$newList->published = 1;
		$colors = array('#3366ff', '#7240A4', '#7A157D', '#157D69', '#ECE649');
		$newList->color = $colors[rand(0, count($colors) - 1)];

		$listClass = acymailing_get('class.list');
		$listid = $listClass->save($newList);

		if(!empty($listid)) $lists[$listid] = 1;

		return $lists;
	}

	function database($onlyimport = false){

		$this->forceconfirm = acymailing_getVar('int', 'import_confirmed_database');

		$table = empty($this->tablename) ? trim(acymailing_getVar('string', 'tablename')) : $this->tablename;

		if(empty($table)){
			$listTables = acymailing_getTableList();
			acymailing_enqueueMessage(acymailing_translation_sprintf('SPECIFYTABLE', implode(' | ', $listTables)), 'notice');
			return false;
		}

		if(empty($this->tablename)){
			$newConfig = new stdClass();
			$newConfig->import_db_table = trim(acymailing_getVar('string', 'tablename'));
			$newConfig->import_db_fields = serialize(acymailing_getVar('array', 'fields', array()));

			$config = acymailing_config();
			$config->save($newConfig);
		}

		$fields = acymailing_getColumns($table);
		if(empty($fields)){
			$listTables = acymailing_getTableList();
			acymailing_enqueueMessage(acymailing_translation_sprintf('SPECIFYTABLE', implode(' | ', $listTables)), 'notice');
			return false;
		}

		$fields = array_keys($fields);
		$equivalentFields = empty($this->equFields) ? acymailing_getVar('array', 'fields', array()) : $this->equFields;

		if(empty($equivalentFields['email'])){
			acymailing_enqueueMessage(acymailing_translation('SPECIFYFIELDEMAIL'), 'notice');
			return false;
		}

		$select = array();
		foreach($equivalentFields as $acyField => $tableField){
			$tableField = trim($tableField);
			if(empty($tableField)) continue;
			if(!in_array($tableField, $fields)){
				acymailing_enqueueMessage(acymailing_translation_sprintf('SPECIFYFIELD', $tableField, implode(' | ', $fields)), 'notice');
				return false;
			}
			$select['`'.$acyField.'`'] = '`'.$tableField.'`';
		}

		if(empty($select['`created`'])){
			$select['`created`'] = time();
		}
		if($this->forceconfirm && empty($select['`confirmed`'])){
			$select['`confirmed`'] = 1;
		}

		$query = 'INSERT IGNORE INTO `#__acymailing_subscriber` ('.implode(' , ', array_keys($select)).') SELECT '.implode(' , ', $select).' FROM '.$table.' WHERE '.$select['`email`'].' LIKE \'%@%\'';
		if(!empty($this->dbwhere)) $query .= ' AND ( '.implode(' ) AND (', $this->dbwhere).' )';

		$affectedRows = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $affectedRows));

		if($onlyimport) return true;

		$query = 'SELECT b.subid FROM '.$table.' as a JOIN '.acymailing_table('subscriber').' as b on a.'.$select['`email`'].' = b.`email`';
		$this->allSubid = acymailing_loadResultArray($query);

		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function textarea(){
		$content = acymailing_getVar('string', 'textareaentries');
		$path = $this->_createUploadFolder();
		$filename = uniqid('import_').'.csv';

		acymailing_writeFile($path.$filename, $content);
		acymailing_setVar('filename', $filename);

		return true;
	}

	private function _createUploadFolder(){
		$folderPath = acymailing_cleanPath(ACYMAILING_ROOT.trim(html_entity_decode(str_replace('/', DS, ACYMAILING_MEDIA_FOLDER).DS.'import'))).DS;
		if(!is_dir($folderPath)){
			acymailing_createDir($folderPath, true, true);
		}

		if(!is_writable($folderPath)){
			@chmod($folderPath, '0755');
			if(!is_writable($folderPath)){
				acymailing_enqueueMessage(acymailing_translation_sprintf('WRITABLE_FOLDER', $folderPath), 'notice');
			}
		}
		return $folderPath;
	}

	function file(){
		$importFile = acymailing_getVar('array', 'importfile', array(), 'files');

		if(empty($importFile['name'])){
			acymailing_enqueueMessage(acymailing_translation('BROWSE_FILE'), 'notice');
			return false;
		}

		$extension = strtolower(acymailing_fileGetExt($importFile['name']));
		if(in_array($extension, array('xls', 'xlsx'))){
			acymailing_display('Excel files are not supported.<br />Please convert your file into CSV :<ol><li>Open your file with Excel</li><li>Select File => Save as...</li><li>For the type, select "CSV (separator: semi-colon) (*.csv)"</li></ol>', 'error');
			return false;
		}

		$fileError = $_FILES['importfile']['error'];
		if($fileError > 0){
			switch($fileError){
				case 1:
					acymailing_display('The uploaded file exceeds the upload_max_filesize directive in php configuration.', 'error');
					return false;
				case 2:
					acymailing_display('The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.', 'error');
					return false;
				case 3:
					acymailing_display('The uploaded file was only partially uploaded.', 'error');
					return false;
				case 4:
					acymailing_display('No file was uploaded.', 'error');
					return false;
				default:
					acymailing_display('Error uploading the file on the server, unknown error '.$fileError, 'error');
					return false;
			}
		}

		$config = acymailing_config();

		$uploadPath = $this->_createUploadFolder();

		$attachment = new stdClass();
		$attachment->filename = uniqid('import_').'.csv';
		acymailing_setVar('filename', $attachment->filename);

		$attachment->size = $importFile['size'];

		if(!preg_match('#\.('.str_replace(array(',', '.'), array('|', '\.'), $config->get('allowedfiles')).')$#Ui', $attachment->filename, $extension) || preg_match('#\.(php.?|.?htm.?|pl|py|jsp|asp|sh|cgi)$#Ui', $attachment->filename)){
			acymailing_enqueueMessage(acymailing_translation_sprintf('ACCEPTED_TYPE', htmlspecialchars(substr($attachment->filename, strrpos($attachment->filename, '.') + 1), ENT_COMPAT, 'UTF-8'), $config->get('allowedfiles')), 'notice');
			return false;
		}

		if(!acymailing_uploadFile($importFile['tmp_name'], $uploadPath.$attachment->filename)){
			if(!move_uploaded_file($importFile['tmp_name'], $uploadPath.$attachment->filename)){
				acymailing_enqueueMessage(acymailing_translation_sprintf('FAIL_UPLOAD', '<b><i>'.htmlspecialchars($importFile['tmp_name'], ENT_COMPAT, 'UTF-8').'</i></b>', '<b><i>'.htmlspecialchars($uploadPath.$attachment->filename, ENT_COMPAT, 'UTF-8').'</i></b>'), 'error');
			}
		}
		return true;
	}

	function finalizeImport(){
		$config = acymailing_config();

		$this->forceconfirm = acymailing_getVar('int', 'import_confirmed');
		$this->generatename = acymailing_getVar('int', 'generatename');
		$this->importblocked = acymailing_getVar('int', 'importblocked');
		$this->overwrite = acymailing_getVar('int', 'overwriteexisting');

		$newConfig = new stdClass();
		$paramTmp = array();
		if($this->forceconfirm == 1) $paramTmp[] = 'import_confirmed';
		if($this->generatename == 1) $paramTmp[] = 'generatename';
		if($this->importblocked == 1) $paramTmp[] = 'importblocked';
		if($this->overwrite == 1) $paramTmp[] = 'overwriteexisting';

		$importParams = 'import_params';
		$newConfig->$importParams = implode(',', $paramTmp);
		$config->save($newConfig);

		$filename = strtolower(acymailing_getVar('cmd', 'filename'));
		$extension = '.'.acymailing_fileGetExt($filename);
		$filename = str_replace(array('.', ' '), '_', substr($filename, 0, strpos($filename, $extension))).$extension;
		$uploadPath = ACYMAILING_MEDIA.'import'.DS.$filename;

		if(!file_exists($uploadPath)){
			acymailing_enqueueMessage('Uploaded file not found: '.$uploadPath, 'error');
			return;
		}

		$importColumns = acymailing_getVar('string', 'import_columns');
		if(empty($importColumns)){
			acymailing_enqueueMessage('Columns not found', 'error');
			return false;
		}
		$columns = explode(',', $importColumns);
		$acyColumns = acymailing_getColumns('#__acymailing_subscriber');
		foreach($columns as $oneColumn){
			if($oneColumn == 1 || $oneColumn == 'listids' || $oneColumn == 'listname' || isset($acyColumns[$oneColumn])) continue; // Ignored or existing column
			$checkColumn = preg_replace('#[^A-Za-z0-9_]#Uis', '', $oneColumn);
			if(empty($checkColumn)){
				acymailing_enqueueMessage('Invalid field name: '.$oneColumn, 'error');
				return false;
			}
			$oneColumn = $checkColumn;

			if(!acymailing_level(3)){ // Make sure we can't create a custom field
				acymailing_enqueueMessage(acymailing_translation('EXTRA_FIELDS').' '.acymailing_translation('ONLY_FROM_ENTERPRISE'), 'error');
				return false;
			}

			if(empty($ordering)){
				$ordering = acymailing_loadResult('SELECT MAX(ordering) FROM #__acymailing_fields');
			}
			$ordering++;
			acymailing_query('ALTER TABLE `#__acymailing_subscriber` ADD `'.acymailing_secureField(strtolower($oneColumn)).'` TEXT NOT NULL DEFAULT ""');
			$query = "INSERT INTO `#__acymailing_fields` (`fieldname`, `namekey`, `type`, `value`, `published`, `ordering`, `options`, `core`, `required`, `backend`, `frontcomp`, `default`, `listing`, `frontlisting`, `frontform`) VALUES
			(".acymailing_escapeDB($oneColumn).", ".acymailing_escapeDB(strtolower($oneColumn)).", 'text', '', 1, ".intval($ordering).", '', 0, 0, 1, 0, '',0,0,1);";
			acymailing_query($query);
		}

		$contentFile = file_get_contents($uploadPath);

		if(acymailing_getVar('cmd', 'charsetconvert', '') != ''){
			$encodingHelper = acymailing_get('helper.encoding');
			$contentFile = $encodingHelper->change($contentFile, acymailing_getVar('cmd', 'charsetconvert'), 'UTF-8');
		}

		$cutContent = str_replace(array("\r\n", "\r"), "\n", $contentFile);
		$allLines = explode("\n", $cutContent);

		$listSeparators = array("\t", ';', ',');
		$separator = ',';
		foreach($listSeparators as $sep){
			if(strpos($allLines[0], $sep) !== false){
				$separator = $sep;
				break;
			}
		}
		$importColumns = str_replace(',', $separator, $importColumns);

		if(strpos($allLines[0], '@')){
			$contentFile = $importColumns."\n".$contentFile;
		}else{
			$allLines[0] = $importColumns;
			$contentFile = implode("\n", $allLines);
		}

		$this->_handleContent($contentFile);
		$this->_displaySubscribedResult();

		unlink($uploadPath);
		$this->_cleanImportFolder();
	}

	public function _cleanImportFolder(){
		
		$files = acymailing_getFiles(ACYMAILING_MEDIA.'import', '.', false, true, array());
		foreach($files as $oneFile){
			if(acymailing_fileGetExt($oneFile) != 'csv') continue;
			if(filectime($oneFile) < time() - 86400) unlink($oneFile);
		}
	}

	public function _handleContent(&$contentFile){
		$success = true;

		$contentFile = str_replace(array("\r\n", "\r"), "\n", $contentFile);
		$importLines = explode("\n", $contentFile);

		$i = 0;
		$this->header = '';
		$this->allSubid = array();
		while(empty($this->header) && $i < 10){
			$this->header = trim($importLines[$i]);
			$i++;
		}

		if(strpos($this->header, '@') && !strpos($this->header, ',') && !strpos($this->header, ';') && !strpos($this->header, "\t")){
			$this->header = 'email';
			$i--;
		}

		if(!$this->_autoDetectHeader()){
			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_HEADER', htmlspecialchars($this->header, ENT_COMPAT, 'UTF-8')), 'error');
			acymailing_enqueueMessage(acymailing_translation('IMPORT_EMAIL'), 'error');
			acymailing_enqueueMessage(acymailing_translation('IMPORT_EXAMPLE'), 'error');
			return false;
		}

		$numberColumns = count($this->columns);

		$userHelper = acymailing_get('helper.user');

		$encodingHelper = acymailing_get('helper.encoding');

		$importUsers = array();

		$errorLines = array();

		$countUsersBeforeImport = acymailing_loadResult('SELECT COUNT(subid) FROM `#__acymailing_subscriber`');

		$listClass = acymailing_get('class.list');
		$allLists = $listClass->getLists('name');

		while(isset($importLines[$i])){
			if(strpos($importLines[$i], '"') !== false){
				$data = array();
				$j = $i + 1;
				$position = -1;

				while($j < ($i + 30)){

					$quoteOpened = substr($importLines[$i], $position + 1, 1) == '"';

					if($quoteOpened){
						$nextQuotePosition = strpos($importLines[$i], '"', $position + 2);
						while($nextQuotePosition !== false && $nextQuotePosition + 1 != strlen($importLines[$i]) && substr($importLines[$i], $nextQuotePosition + 1, 1) != $this->separator){
							$nextQuotePosition = strpos($importLines[$i], '"', $nextQuotePosition + 1);
						}
						if($nextQuotePosition === false){
							if(!isset($importLines[$j])) break;

							$importLines[$i] .= "\n".$importLines[$j];
							$importLines[$i] = rtrim($importLines[$i], $this->separator);
							unset($importLines[$j]);
							$j++;
							continue;
						}else{

							if(strlen($importLines[$i]) - 1 == $nextQuotePosition){
								$data[] = substr($importLines[$i], $position + 1);
								break;
							}
							$data[] = substr($importLines[$i], $position + 1, $nextQuotePosition + 1 - ($position + 1));
							$position = $nextQuotePosition + 1;
						}
					}else{
						$nextSeparatorPosition = strpos($importLines[$i], $this->separator, $position + 1);
						if($nextSeparatorPosition === false){
							$data[] = substr($importLines[$i], $position + 1);
							break;
						}else{ // If found the next separator, add the value in $data and change the position
							$data[] = substr($importLines[$i], $position + 1, $nextSeparatorPosition - ($position + 1));
							$position = $nextSeparatorPosition;
						}
					}
				}

				$importLines = array_merge($importLines);
			}else{
				$data = explode($this->separator, rtrim(trim($importLines[$i]), $this->separator));
			}

			if(!empty($this->removeSep)){
				for($b = $numberColumns + $this->removeSep - 1; $b >= $numberColumns; $b--){
					if(isset($data[$b]) AND (strlen($data[$b]) == 0 || $data[$b] == ' ')){
						unset($data[$b]);
					}
				}
			}

			$i++;
			if(empty($importLines[$i - 1])) continue;

			$this->totalTry++;
			if(count($data) > $numberColumns){
				$copy = $data;
				foreach($copy as $oneelem => $oneval){
					if(!empty($oneval[0]) AND $oneval[0] == '"' AND $oneval[strlen($oneval) - 1] != '"' AND isset($copy[$oneelem + 1]) AND $copy[$oneelem + 1][strlen($copy[$oneelem + 1]) - 1] == '"'){
						$data[$oneelem] = $copy[$oneelem].$this->separator.$copy[$oneelem + 1];
						unset($data[$oneelem + 1]);
					}
				}
				$data = array_values($data);
			}

			if(count($data) < $numberColumns){
				for($a = count($data); $a < $numberColumns; $a++){
					$data[$a] = '';
				}
			}

			if(count($data) != $numberColumns){
				$success = false;
				static $errorcount = 0;
				if(empty($errorcount)){
					acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_ARGUMENTS', $numberColumns), 'error');
				}
				$errorcount++;
				if($errorcount < 20){
					acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_ERRORLINE', '<b><i>'.htmlspecialchars($importLines[$i - 1], ENT_COMPAT, 'UTF-8').'</i></b>'), 'notice');
				}elseif($errorcount == 20){
					acymailing_enqueueMessage('...', 'notice');
				}

				if($this->totalTry == 1) return false;
				if(empty($errorLines)) $errorLines[] = $importLines[0];
				$errorLines[] = $importLines[$i - 1];
				continue;
			}

			$newUser = new stdClass();

			$emailKey = array_search('email', $this->columns);
			$newUser->email = trim(strip_tags($data[$emailKey]), '\'" ');
			if(!empty($newUser->email)) $newUser->email = acymailing_punycode($newUser->email);
			$newUser->email = trim(str_replace(array(' ', "\t"), '', $encodingHelper->change($newUser->email, 'UTF-8', 'ISO-8859-1')));
			if(!$userHelper->validEmail($newUser->email)){
				$success = false;
				static $errorcountfail = 0;
				$errorcountfail++;
				if($errorcountfail < 10){
					acymailing_enqueueMessage(acymailing_translation_sprintf('NOT_VALID_EMAIL', '<b><i>'.htmlspecialchars($newUser->email, ENT_COMPAT | ENT_IGNORE, 'UTF-8').'</i></b>').' | '.($i - 1).' : '.$importLines[$i - 1], 'notice');
				}elseif($errorcountfail == 10){
					acymailing_enqueueMessage('...', 'notice');
				}
				if(empty($errorLines)) $errorLines[] = $importLines[0];
				$errorLines[] = $importLines[$i - 1];
				continue;
			}

			foreach($data as $num => $value){
				if($num == $emailKey) continue;

				$field = $this->columns[$num];

				if($field == 1) continue;

				if($field == 'listids'){
					$liststosub = explode('-', trim($value, '\'" 	'));
					foreach($liststosub as $onelistid){
						$this->importUserInLists[intval(trim($onelistid))][] = acymailing_escapeDB($newUser->email);
					}
					continue;
				}

				if($field == 'listname'){
					$liststosub = explode('-', trim($value, '\'" 	'));
					foreach($liststosub as $onelistName){
						if(empty($onelistName)) continue;
						$onelistName = trim($onelistName);
						if(empty($allLists[$onelistName])){
							$newList = new stdClass();
							$newList->name = $onelistName;
							$newList->published = 1;
							$colors = array('#3366ff', '#7240A4', '#7A157D', '#157D69', '#ECE649');
							$newList->color = $colors[rand(0, count($colors) - 1)];
							$listid = $listClass->save($newList);
							$newList->listid = $listid;
							$allLists[$onelistName] = $newList;
						}
						$this->importUserInLists[intval($allLists[$onelistName]->listid)][] = acymailing_escapeDB($newUser->email);
					}
					continue;
				}

				if($value == 'null'){
					$newUser->$field = '';
				}else{
					$newUser->$field = trim(strip_tags($value), '\'" 	');
				}
			}

			unset($newUser->subid);
			unset($newUser->userid);

			$importUsers[] = $newUser;
			$this->totalValid++;

			if($this->totalValid % 50 == 0){
				$this->_insertUsers($importUsers);
				$importUsers = array();
			}
		}

		if(!empty($errorLines)){
			$filename = strtolower(acymailing_getVar('cmd', 'filename', ''));
			if(!empty($filename)){
				$extension = '.'.acymailing_fileGetExt($filename);
				$filename = str_replace(array('.', ' '), '_', substr($filename, 0, strpos($filename, $extension))).$extension;
				$errorFile = implode("\n", $errorLines);
				acymailing_writeFile(ACYMAILING_MEDIA.'import'.DS.'error_'.$filename, $errorFile);
				acymailing_enqueueMessage('<a target="_blank" href="'.acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'data&task=downloadimport').'&filename=error_'.preg_replace('#\.[^.]*$#', '', $filename).'" >'.acymailing_translation('ACY_DOWNLOAD_IMPORT_ERRORS').'</a>', 'notice');
			}
		}
		$this->_insertUsers($importUsers);

		$countUsersAfterImport = acymailing_loadResult('SELECT COUNT(subid) FROM `#__acymailing_subscriber`');
		$this->totalInserted = $countUsersAfterImport - $countUsersBeforeImport;

		if($this->dispresults){
			acymailing_enqueueMessage(acymailing_translation_sprintf('ACY_IMPORT_REPORT', $this->totalTry, $this->totalInserted, $this->totalTry - $this->totalValid, $this->totalValid - $this->totalInserted));
		}

		$this->_subscribeUsers();
		return $success;
	}

	function _subscribeUsers(){

		if(empty($this->allSubid)) return true;

		$subdate = time();

		$listClass = acymailing_get('class.list');

		if(empty($this->importUserInLists)){
			$lists = $this->getImportedLists();

			if(acymailing_level(3)){
				$campaignClass = acymailing_get('helper.campaign');
				$listCampaign = $listClass->getCampaigns(array_keys($lists));
			}else{
				$listCampaign = array();
			}

			foreach($lists as $listid => $val){
				if(empty($val)) continue;

				if($val == -1){
					$dateColumn = 'unsubdate';
					$status = -1;
				}else{
					$dateColumn = 'subdate';
					$status = 1;
				}

				$nbsubscribed = 0;
				$listid = (int)$listid;
				$query = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (listid,subid,'.$dateColumn.',status) VALUES ';
				$b = 0;
				$currentSubids = array();
				foreach($this->allSubid as $subid){
					$currentSubids[] = $subid;
					$b++;

					if($b > 200){
						$query = rtrim($query, ',');
						if($val == -1){
							$query .= ' ON DUPLICATE KEY UPDATE status = -1';
							$nbsubscribed = -acymailing_loadResult('SELECT COUNT(*) FROM #__acymailing_listsub WHERE listid = '.$listid.' AND status != -1 AND subid IN ('.implode(',', $currentSubids).')');
						}
						$affected = acymailing_query($query);
						$nbsubscribed += intval($affected);
						$b = 0;
						$currentSubids = array();
						$query = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (listid,subid,'.$dateColumn.',status) VALUES ';
					}

					$query .= "($listid,$subid,$subdate,$status),";
				}
				$query = rtrim($query, ',');
				if($val == -1){
					$query .= ' ON DUPLICATE KEY UPDATE status = -1';
					if(!empty($currentSubids)){
						$nbsubscribed = -acymailing_loadResult('SELECT COUNT(*) FROM #__acymailing_listsub WHERE listid = '.$listid.' AND status != -1 AND subid IN ('.implode(',', $currentSubids).')');
					}
				}
				$affected = acymailing_query($query);
				$nbsubscribed += intval($affected);

				if(isset($this->subscribedUsers[$listid])){
					$this->subscribedUsers[$listid]->nbusers += $nbsubscribed;
				}else{
					$myList = $listClass->get($listid);
					$myList->status = $val;
					$this->subscribedUsers[$listid] = $myList;
					$this->subscribedUsers[$listid]->nbusers = $nbsubscribed;
				}

				if(in_array($val, array(2, -1)) && !empty($listCampaign[$listid])){
					$function = $val == 2 ? 'autoSubCampaign' : 'unsubCampaign';
					foreach($listCampaign[$listid] as $campaignId){
						$campaignClass->$function($this->allSubid, $campaignId);
					}
				}
			}
		}else{
			foreach($this->importUserInLists as $listid => $arrayEmails){
				if(empty($listid)) continue;

				$listid = (int)$listid;
				$query = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (listid,subid,subdate,status) ';
				$query .= "SELECT $listid,`subid`,$subdate,1 FROM ".acymailing_table('subscriber')." WHERE `email` IN (";
				$query .= implode(',', $arrayEmails).')';
				$nbsubscribed = acymailing_query($query);
				$nbsubscribed = intval($nbsubscribed);

				if(isset($this->subscribedUsers[$listid])){
					$this->subscribedUsers[$listid]->nbusers += $nbsubscribed;
				}else{
					$myList = $listClass->get($listid);
					$this->subscribedUsers[$listid] = $myList;
					$this->subscribedUsers[$listid]->nbusers = $nbsubscribed;
				}
			}
		}

		return true;
	}

	function _displaySubscribedResult(){
		foreach($this->subscribedUsers as $myList){
			if(empty($myList->status) || $myList->status != -1){
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $myList->nbusers, '<b><i>'.$myList->name.'</i></b>'));
			}else{
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_UNSUBSCRIBE_CONFIRMATION', $myList->nbusers, '<b><i>'.$myList->name.'</i></b>'));
			}
		}
	}

	function _insertUsers($users){
		if(empty($users)) return true;

		$importedCols = array_keys(get_object_vars($users[0]));
		if($this->forceconfirm) $importedCols[] = 'confirmed';
		if($this->importblocked) $importedCols[] = 'enabled';

		foreach($users as $a => $oneUser){
			$this->_checkData($users[$a]);
		}

		$columns = reset($users);
		$colNames = array_keys(get_object_vars($columns));

		acymailing_trigger('onAcyBeforeUserImport', array(&$users));

		$query = 'INSERT'.($this->overwrite ? '' : ' IGNORE').' INTO '.acymailing_table('subscriber').' (`'.implode('`,`', $colNames).'`) VALUES (';
		$values = array();
		$allemails = array();
		foreach($users as $a => $oneUser){
			$value = array();
			acymailing_trigger('onAcyBeforeUserImport', array(&$oneUser));
			foreach($oneUser as $map => $oneValue){
				if($map == 'enabled' && !empty($this->importblocked) && $this->importblocked == true){
					$value[] = 0;
				}elseif($map != 'subid'){
					$value[] = acymailing_escapeDB($oneValue);
				}else{
					$value[] = $oneValue;
				}
				if($map == 'email'){
					$allemails[] = acymailing_escapeDB($oneValue);
				}
			}
			$values[] = implode(',', $value);
		}
		$query .= implode('),(', $values).')';
		if($this->overwrite){
			$query .= ' ON DUPLICATE KEY UPDATE ';
			foreach($importedCols as &$oneColumn){
				$oneColumn = '`'.$oneColumn.'`=VALUES(`'.$oneColumn.'`)';
			}
			$query .= implode(',', $importedCols);
		}

		acymailing_query($query);

		acymailing_trigger('onAcyAfterUserImport', array(&$users));

		$this->allSubid = array_merge($this->allSubid, acymailing_loadResultArray('SELECT subid FROM '.acymailing_table('subscriber').' WHERE email IN ('.implode(',', $allemails).')'));

		return true;
	}


	function _checkData(&$user){
		if(empty($user->created)){
			$user->created = time();
		}elseif(!is_numeric($user->created)) $user->created = strtotime($user->created);

		if(!isset($user->accept) || strlen($user->accept) == 0) $user->accept = 1;
		if(!isset($user->enabled) || strlen($user->enabled) == 0) $user->enabled = 1;
		if(!isset($user->html) || strlen($user->html) == 0) $user->html = 1;
		if(empty($user->source)) $user->source = 'import';

		if(!empty($user->confirmed_date) && !is_numeric($user->confirmed_date)) $user->confirmed_date = strtotime($user->confirmed_date);
		if(!empty($user->lastclick_date) && !is_numeric($user->lastclick_date)) $user->lastclick_date = strtotime($user->lastclick_date);
		if(!empty($user->lastopen_date) && !is_numeric($user->lastopen_date)) $user->lastopen_date = strtotime($user->lastopen_date);
		if(!empty($user->lastsent_date) && !is_numeric($user->lastsent_date)) $user->lastsent_date = strtotime($user->lastsent_date);


		if(empty($user->name) AND $this->generatename) $user->name = ucwords(trim(str_replace(array('.', '_', '-', 1, 2, 3, 4, 5, 6, 7, 8, 9, 0), ' ', substr($user->email, 0, strpos($user->email, '@')))));

		if((!isset($user->confirmed) || strlen($user->confirmed) == 0) AND $this->forceconfirm) $user->confirmed = 1;

		if(empty($user->key)) $user->key = acymailing_generateKey(14);
	}


	function _autoDetectHeader(){
		$this->separator = ',';

		$this->header = str_replace("\xEF\xBB\xBF", "", $this->header);

		$listSeparators = array("\t", ';', ',');
		foreach($listSeparators as $sep){
			if(strpos($this->header, $sep) !== false){
				$this->separator = $sep;
				break;
			}
		}


		$this->columns = explode($this->separator, $this->header);

		for($i = count($this->columns) - 1; $i >= 0; $i--){
			if(strlen($this->columns[$i]) == 0){
				unset($this->columns[$i]);
				$this->removeSep++;
			}
		}

		$columns = acymailing_getColumns('#__acymailing_subscriber');
		foreach($columns as $i => $oneColumn){
			$columns[strtolower($i)] = $oneColumn;
		}

		foreach($this->columns as $i => $oneColumn){
			$this->columns[$i] = strtolower(trim($oneColumn, '\'" '));
			if(in_array($this->columns[$i], array('listids', 'listname'))) continue;
			if(!isset($columns[$this->columns[$i]]) && $this->columns[$i] != 1){
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_ERROR_FIELD', '<b><i>'.htmlspecialchars($this->columns[$i], ENT_COMPAT, 'UTF-8').'</i></b>', implode(' | ', array_diff(array_keys($columns), array('subid', 'userid', 'key')))), 'error');
				return false;
			}
		}

		if(!in_array('email', $this->columns)) return false;

		return true;
	}

	function joomla(){
		$query = 'UPDATE IGNORE '.acymailing_table($this->cmsUserVars->table, false).' as b, '.acymailing_table('subscriber').' as a SET a.email = b.'.$this->cmsUserVars->email.', a.name = b.'.$this->cmsUserVars->name.', a.enabled = 1 - b.block WHERE a.userid = b.'.$this->cmsUserVars->id.' AND a.userid > 0';
		$nbUpdated = acymailing_query($query);

		$query = 'UPDATE IGNORE '.acymailing_table($this->cmsUserVars->table, false).' as b, '.acymailing_table('subscriber').' as a SET a.userid = b.'.$this->cmsUserVars->id.' WHERE a.email = b.'.$this->cmsUserVars->email;
		$affected = acymailing_query($query);
		$nbUpdated += intval($affected);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_UPDATE', $nbUpdated));

		$query = 'SELECT subid FROM '.acymailing_table('subscriber').' as a LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as b on a.userid = b.'.$this->cmsUserVars->id.' WHERE b.'.$this->cmsUserVars->id.' IS NULL AND a.userid > 0';
		$deletedSubid = acymailing_loadResultArray($query);

		$query = 'SELECT subid FROM '.acymailing_table('subscriber').' as a LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as b on a.email = b.'.$this->cmsUserVars->email.' WHERE b.'.$this->cmsUserVars->id.' IS NULL AND a.userid > 0';
		$deletedSubid = array_merge(acymailing_loadResultArray($query), $deletedSubid);

		if(!empty($deletedSubid)){
			$userClass = acymailing_get('class.subscriber');
			$deletedUsers = $userClass->delete($deletedSubid);
			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_DELETE', $deletedUsers));
		}

		$time = time();
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`userid`,`created`,`enabled`,`accept`,`html`) SELECT `'.$this->cmsUserVars->email.'`,`'.$this->cmsUserVars->name.'`,1-`'.$this->cmsUserVars->blocked.'`,`'.$this->cmsUserVars->id.'`,UNIX_TIMESTAMP(`'.$this->cmsUserVars->registered.'`),1-`'.$this->cmsUserVars->blocked.'`,1,1 FROM '.acymailing_table($this->cmsUserVars->table, false);
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		$lists = $this->getImportedLists();
		$listsSubscribe = array();
		foreach($lists as $listid => $val){
			if(!empty($val)) $listsSubscribe[] = (int)$listid;
		}

		if(empty($listsSubscribe)) return true;

		if(acymailing_level(3)){
			$listClass = acymailing_get('class.list');
			$campaignClass = acymailing_get('helper.campaign');
			$listCampaign = $listClass->getCampaigns(array_keys($lists));
			foreach($lists as $listid => $val){
				if($val == 2 && !empty($listCampaign[$listid])){
					$query = 'SELECT sub.subid FROM #__acymailing_subscriber sub LEFT JOIN #__acymailing_listsub list ON sub.subid=list.subid AND list.listid='.intval($listid).' WHERE list.subid IS NULL AND sub.userid > 0 ';
					$listSubidNotInList = acymailing_loadResultArray($query);
					if(empty($listSubidNotInList)) continue;
					foreach($listCampaign[$listid] as $campaignId){
						$campaignClass->autoSubCampaign($listSubidNotInList, $campaignId);
					}
				}
			}
		}

		$query = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (`listid`,`subid`,`subdate`,`status`) ';
		$query .= 'SELECT a.`listid`, b.`subid` ,'.$time.',1 FROM '.acymailing_table('list').' as a, '.acymailing_table('subscriber').' as b  WHERE a.`listid` IN ('.implode(',', $listsSubscribe).') AND b.`userid` > 0';
		$nbsubscribed = acymailing_query($query);
		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIPTION', $nbsubscribed));

		return true;
	}

	function acajoom(){
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (email,name,confirmed,created,enabled,accept,html) SELECT email,name,confirmed,UNIX_TIMESTAMP(`subscribe_date`),1-blacklist,1,receive_html FROM '.acymailing_table('acajoom_subscribers', false);
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		if(acymailing_getVar('int', 'acajoom_lists', 0) == 1) $this->_importAcajoomLists();

		$query = 'SELECT b.subid FROM '.acymailing_table('acajoom_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function _importYancLists(){
		$query = 'SELECT `id`, `name`, `description`, `state` as `published` FROM `#__yanc_letters`';
		$yancLists = acymailing_loadObjectList($query, 'id');

		$query = 'SELECT `listid`, `alias` FROM '.acymailing_table('list').' WHERE `alias` IN (\'yanclist'.implode('\',\'yanclist', array_keys($yancLists)).'\')';
		$joomLists = acymailing_loadObjectList($query, 'alias');

		$listClass = acymailing_get('class.list');
		$time = time();

		foreach($yancLists as $oneList){
			$oneList->alias = 'yanclist'.$oneList->id;
			$oneList->userid = acymailing_currentUserId();

			$yancListId = $oneList->id;
			if(isset($joomLists[$oneList->alias])){
				$joomListId = $joomLists[$oneList->alias]->listid;
			}else{
				unset($oneList->id);
				$joomListId = $listClass->save($oneList);
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_LIST', '<b><i>'.$oneList->name.'</i></b>'));
			}

			$querySelect = 'SELECT DISTINCT c.subid,'.$joomListId.','.$time.',1 FROM `#__yanc_subscribers` as a ';
			$querySelect .= 'JOIN '.acymailing_table('subscriber').' as c on a.email = c.email ';
			$querySelect .= 'WHERE a.lid = '.$yancListId.' AND a.state = 1 AND c.subid > 0';
			$queryInsert = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (subid,listid,subdate,status) ';

			$affected = acymailing_query($queryInsert.$querySelect);

			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $affected, '<b><i>'.$oneList->name.'</i></b>'));
		}

		return true;
	}

	private function _importccNewsletterNews(){
		$replacements = array();
		$replacements['[unsubscribe link]'] = '{unsubscribe}'.acymailing_translation('UNSUBSCRIBE').'{/unsubscribe}';
		$replacements['[view online link]'] = '{readonline}'.acymailing_translation('VIEW_ONLINE').'{/readonline}';
		$replacements['[sitename]'] = '{config:sitename}';
		$replacements['[name]'] = '{subtag:name}';

		$fields = array();
		$fields['groupid'] = '`groupid`';

		$fields['subject'] = '`name`';
		$fields['body'] = '`body`';
		$fields['published'] = '`enabled`';
		$fields['senddate'] = 'UNIX_TIMESTAMP(`lastsentdate`)';
		$fields['type'] = '"news"';
		$fields['visible'] = '1';
		$fields['html'] = '1';


		$query = 'SELECT ';
		foreach($fields as $as => $select){
			$query .= $select.' as '.$as.',';
		}
		$query = rtrim($query, ',');
		$query .= ' FROM #__ccnewsletter_newsletters WHERE `enabled` >= 0';
		$ccNewsletters = acymailing_loadObjectList($query);

		if(empty($ccNewsletters)) return true;

		$mailClass = acymailing_get('class.mail');
		$lists = array();
		foreach($ccNewsletters as $oneNewsletter){
			$ccList = $oneNewsletter->groupid;
			unset($oneNewsletter->groupid);

			$oneNewsletter->subject = str_replace(array_keys($replacements), $replacements, $oneNewsletter->subject);
			$oneNewsletter->body = str_replace(array_keys($replacements), $replacements, $oneNewsletter->body);
			$acyId = $mailClass->save($oneNewsletter);
			$lists[$acyId] = 'ccnewsletterlist'.$ccList;
		}

		acymailing_enqueueMessage(acymailing_translation_sprintf('NB_IMPORT_NEWSLETTER', '<b>'.count($lists).'</b>'));

		$query = 'SELECT listid, alias FROM #__acymailing_list WHERE alias LIKE "ccnewsletterlist%"';
		$acylists = acymailing_loadObjectList($query, 'alias');

		$equ = array();
		foreach($lists as $mailid => $cclist){
			if(empty($acylists[$cclist])) continue;
			$equ[] = $mailid.','.$acylists[$cclist]->listid;
		}

		if(empty($equ)) return true;
		$query = 'INSERT IGNORE INTO #__acymailing_listmail (`mailid`, `listid`) VALUES ('.implode('),(', $equ).')';
		acymailing_query($query);

		return true;
	}

	private function _importccNewsletterLists(){
		$query = 'SELECT `id`, `group_name` as `name`, `public` as `visible`, `enabled` as `published` FROM '.acymailing_table('ccnewsletter_groups', false).' ORDER BY `ordering` ASC';
		$compLists = acymailing_loadObjectList($query, 'id');

		$query = 'SELECT `listid`, `alias` FROM '.acymailing_table('list').' WHERE `alias` IN (\'ccnewsletterlist'.implode('\',\'ccnewsletterlist', array_keys($compLists)).'\')';
		$joomLists = acymailing_loadObjectList($query, 'alias');

		$listClass = acymailing_get('class.list');

		foreach($compLists as $oneList){
			$oneList->alias = 'ccnewsletterlist'.$oneList->id;
			$compListId = $oneList->id;
			if(isset($joomLists[$oneList->alias])){
				$joomListId = $joomLists[$oneList->alias]->listid;
			}else{
				unset($oneList->id);
				$joomListId = $listClass->save($oneList);
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_LIST', '<b><i>'.$oneList->name.'</i></b>'));
			}

			$querySelect = 'SELECT DISTINCT c.subid,'.$joomListId.',UNIX_TIMESTAMP(b.`sdate`),1 FROM '.acymailing_table('ccnewsletter_g_to_s', false).' as a ';
			$querySelect .= 'JOIN '.acymailing_table('ccnewsletter_subscribers', false).' as b on a.subscriber_id = b.id ';
			$querySelect .= 'JOIN '.acymailing_table('subscriber').' as c on b.email = c.email ';
			$querySelect .= 'WHERE a.group_id = '.$compListId.' AND c.subid > 0';
			$queryInsert = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (subid,listid,subdate,status) ';

			$affected = acymailing_query($queryInsert.$querySelect);

			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $affected, '<b><i>'.$oneList->name.'</i></b>'));
		}

		return true;
	}

	private function _importjnewsNews(){
		$replacements = array();
		$replacements['#{tag:unsubscribe}#i'] = '{unsubscribe}'.acymailing_translation('UNSUBSCRIBE').'{/unsubscribe}';
		$replacements['#{tag:subscriptions}#i'] = '{modify}'.acymailing_translation('MODIFY_SUBSCRIPTION').'{/modify}';
		$replacements['#{tag:viewonline[^}]*}#i'] = '{readonline}'.acymailing_translation('VIEW_ONLINE').'{/readonline}';
		$replacements['#{tag:confirm}#i'] = '{confirm}'.acymailing_translation('CONFIRM_SUBSCRIPTION').'{/confirm}';
		$replacements['#{tag:firstname}#i'] = '{subtag:name|part:first}';
		$replacements['#{tag:name}#i'] = '{subtag:name}';
		$replacements['#{tag:email}#i'] = '{subtag:email}';
		$replacements['#{tag:title}#i'] = '{mail:subject}';
		$replacements['#{tag:issuenb}#i'] = '{mail:mailid}';

		$fields = array();
		$fields['id'] = '`id`';
		$fields['subject'] = '`subject`';
		$fields['body'] = '`htmlcontent`';
		$fields['altbody'] = '`textonly`';
		$fields['published'] = '`published`';
		$fields['senddate'] = '`send_date`';
		$fields['created'] = '`createdate`';
		$fields['userid'] = '`author_id`';
		$fields['type'] = '"news"';
		$fields['visible'] = '`visible`';
		$fields['html'] = '`html`';

		$query = 'SELECT ';
		foreach($fields as $as => $select){
			$query .= $select.' as '.$as.',';
		}
		$query = rtrim($query, ',');
		$query .= ' FROM #__jnews_mailings WHERE `mailing_type` = 1';
		$jnewsNewsletters = acymailing_loadObjectList($query);

		if(empty($jnewsNewsletters)) return true;

		$mailClass = acymailing_get('class.mail');
		$mailids = array();
		foreach($jnewsNewsletters as $oneNewsletter){
			$jnewsid = $oneNewsletter->id;
			unset($oneNewsletter->id);

			$oneNewsletter->published = min($oneNewsletter->published, 1);
			$oneNewsletter->subject = preg_replace(array_keys($replacements), $replacements, $oneNewsletter->subject);
			$oneNewsletter->body = preg_replace(array_keys($replacements), $replacements, $oneNewsletter->body);
			$mailids[$jnewsid] = $mailClass->save($oneNewsletter);
		}

		acymailing_enqueueMessage(acymailing_translation_sprintf('NB_IMPORT_NEWSLETTER', '<b>'.count($mailids).'</b>'));

		$query = 'SELECT listid, alias FROM #__acymailing_list WHERE alias LIKE "jnewslist%"';
		$acylists = acymailing_loadObjectList($query, 'alias');

		$query = 'SELECT list_id,mailing_id FROM #__jnews_listmailings WHERE mailing_id IN ('.implode(',', array_keys($mailids)).')';
		$jnewslistmailings = acymailing_loadObjectList($query);

		$equ = array();
		foreach($jnewslistmailings as $jnewsids){
			if(empty($acylists['jnewslist'.$jnewsids->list_id])) continue;
			if(empty($mailids[$jnewsids->mailing_id])) continue;
			$equ[] = $mailids[$jnewsids->mailing_id].','.$acylists['jnewslist'.$jnewsids->list_id]->listid;
		}

		if(empty($equ)) return true;
		$query = 'INSERT IGNORE INTO #__acymailing_listmail (`mailid`, `listid`) VALUES ('.implode('),(', $equ).')';
		acymailing_query($query);

		return true;
	}

	private function _importjnewsLists(){
		$query = 'SELECT `id`, `list_name` as `name`, `hidden` as `visible`, `list_desc` as `description`, `published`, `owner` as `userid` FROM '.acymailing_table('jnews_lists', false);
		$jnewsLists = acymailing_loadObjectList($query, 'id');

		$query = 'SELECT `listid`, `alias` FROM '.acymailing_table('list').' WHERE `alias` IN (\'jnewslist'.implode('\',\'jnewslist', array_keys($jnewsLists)).'\')';
		$joomLists = acymailing_loadObjectList($query, 'alias');

		$listClass = acymailing_get('class.list');

		foreach($jnewsLists as $oneList){
			$oneList->alias = 'jnewslist'.$oneList->id;
			$jnewsListId = $oneList->id;
			if(isset($joomLists[$oneList->alias])){
				$joomListId = $joomLists[$oneList->alias]->listid;
			}else{
				unset($oneList->id);
				$joomListId = $listClass->save($oneList);
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_LIST', '<b><i>'.$oneList->name.'</i></b>'));
			}

			$querySelect = 'SELECT DISTINCT c.subid,'.$joomListId.',a.subdate,a.unsubdate,1-(2*a.unsubscribe) FROM '.acymailing_table('jnews_listssubscribers', false).' as a ';
			$querySelect .= 'JOIN '.acymailing_table('jnews_subscribers', false).' as b on a.subscriber_id = b.id ';
			$querySelect .= 'JOIN '.acymailing_table('subscriber').' as c on b.email = c.email ';
			$querySelect .= 'WHERE a.list_id = '.$jnewsListId.' AND c.subid > 0';
			$queryInsert = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (subid,listid,subdate,unsubdate,status) ';

			$affected = acymailing_query($queryInsert.$querySelect);

			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $affected, '<b><i>'.$oneList->name.'</i></b>'));
		}

		return true;
	}

	private function _importAcajoomLists(){
		$query = 'SELECT `id`, `list_name` as `name`, `hidden` as `visible`, `list_desc` as `description`, `published`, `owner` as `userid` FROM '.acymailing_table('acajoom_lists', false);
		$acaLists = acymailing_loadObjectList($query, 'id');

		$query = 'SELECT `listid`, `alias` FROM '.acymailing_table('list').' WHERE `alias` IN (\'acajoomlist'.implode('\',\'acajoomlist', array_keys($acaLists)).'\')';
		$joomLists = acymailing_loadObjectList($query, 'alias');

		$listClass = acymailing_get('class.list');
		$time = time();

		foreach($acaLists as $oneList){
			$oneList->alias = 'acajoomlist'.$oneList->id;
			$acaListId = $oneList->id;
			if(isset($joomLists[$oneList->alias])){
				$joomListId = $joomLists[$oneList->alias]->listid;
			}else{
				unset($oneList->id);
				$joomListId = $listClass->save($oneList);
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_LIST', '<b><i>'.$oneList->name.'</i></b>'));
			}

			$querySelect = 'SELECT DISTINCT c.subid,'.$joomListId.','.$time.',1 FROM '.acymailing_table('acajoom_queue', false).' as a ';
			$querySelect .= 'JOIN '.acymailing_table('acajoom_subscribers', false).' as b on a.subscriber_id = b.id ';
			$querySelect .= 'JOIN '.acymailing_table('subscriber').' as c on b.email = c.email ';
			$querySelect .= 'WHERE a.list_id = '.$acaListId.' AND c.subid > 0';
			$queryInsert = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (subid,listid,subdate,status) ';

			$affected = acymailing_query($queryInsert.$querySelect);

			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $affected, '<b><i>'.$oneList->name.'</i></b>'));
		}

		return true;
	}

	function letterman(){
		$time = time();
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `subscriber_email`,`subscriber_name`,`confirmed`,UNIX_TIMESTAMP(`subscribe_date`),1,1,1 FROM '.acymailing_table('letterman_subscribers', false);
		$insertedUsers = acymailing_query($query);

		if($insertedUsers == -1){
			$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `email`,`name`,`confirmed`,'.$time.',1,1,1 FROM '.acymailing_table('letterman_subscribers', false);
			$insertedUsers = acymailing_query($query);
			$query = 'SELECT b.subid FROM '.acymailing_table('letterman_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email';
		}else{
			$query = 'SELECT b.subid FROM '.acymailing_table('letterman_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.subscriber_email = b.email';
		}

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function yanc(){
		$oneSubscriber = acymailing_loadObject('SELECT * FROM #__yanc_subscribers LIMIT 1');
		if(!isset($oneSubscriber->state)){
			acymailing_query("ALTER IGNORE TABLE `#__yanc_subscribers` ADD `state` INT NOT NULL DEFAULT '1'");
		}

		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`, `ip`) SELECT `email`,`name`,`confirmed`,UNIX_TIMESTAMP(`date`),`state`,1,`html`,`ip` FROM '.acymailing_table('yanc_subscribers', false)." WHERE email LIKE '%@%'";
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		if(acymailing_getVar('int', 'yanc_lists', 0) == 1) $this->_importYancLists();

		$query = 'SELECT b.subid FROM '.acymailing_table('yanc_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}


	function vemod(){
		$time = time();
		$query = "INSERT IGNORE INTO ".acymailing_table('subscriber')." (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `email`,`name`,1,'.$time.',1,1,`mailformat` FROM `#__vemod_news_mailer_users` WHERE `email` LIKE '%@%' ";
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		$query = 'SELECT b.subid FROM `#__vemod_news_mailer_users` as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function contact(){
		$time = time();
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber')." (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `email_to`,`name`,1,'.$time.',1,1,1 FROM `#__contact_details` WHERE email_to LIKE '%@%'";
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		$query = 'SELECT b.subid FROM `#__contact_details` as a JOIN '.acymailing_table('subscriber').' as b on a.email_to = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function ccnewsletter(){
		$ccfields = acymailing_getColumns('#__ccnewsletter_subscribers');

		$fields = array();
		$fields['email'] = '`email`';
		$fields['name'] = '`name`';
		$fields['confirmed'] = '`enabled`';
		$fields['created'] = 'UNIX_TIMESTAMP(`sdate`)';
		$fields['enabled'] = '`enabled`';
		$fields['accept'] = 1;
		$fields['html'] = isset($ccfields['plainText']) ? '1-`plainText`' : 1;

		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`'.implode('`,`', array_keys($fields)).'`) SELECT '.implode(',', $fields).' FROM '.acymailing_table('ccnewsletter_subscribers', false);
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		if(acymailing_getVar('int', 'ccNewsletter_lists', 0) == 1) $this->_importccNewsletterLists();
		if(acymailing_getVar('int', 'ccNewsletter_news', 0) == 1) $this->_importccNewsletterNews();


		$query = 'SELECT b.subid FROM '.acymailing_table('ccnewsletter_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email WHERE b.subid > 0';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function jnews(){
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `email`,`name`,`confirmed`,`subscribe_date`, 1-`blacklist`,1,`receive_html` FROM '.acymailing_table('jnews_subscribers', false);
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		if(acymailing_getVar('int', 'jnews_lists', 0) == 1) $this->_importjnewsLists();
		if(acymailing_getVar('int', 'jnews_news', 0) == 1) $this->_importjnewsNews();

		$query = 'SELECT b.subid FROM '.acymailing_table('jnews_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function nspro(){
		$time = time();
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `email`,`name`,`confirmed`,UNIX_TIMESTAMP(`datetime`), 1,1,1 FROM '.acymailing_table('nspro_subs', false);
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		if(acymailing_getVar('int', 'nspro_lists', 0) == 1) $this->_importnsproLists();

		$query = 'SELECT b.subid FROM '.acymailing_table('nspro_subs', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.email = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	private function _importnsproLists(){

		$query = 'SELECT `id`, `lname` as `name`, 1 as `visible`, `notes` as `description`, `published`, '.intval(acymailing_currentUserId()).' as `userid` FROM '.acymailing_table('nspro_lists', false);
		$nsprolists = acymailing_loadObjectList($query, 'id');

		$query = 'SELECT `listid`, `alias` FROM '.acymailing_table('list').' WHERE `alias` IN (\'nsprolist'.implode('\',\'nsprolist', array_keys($nsprolists)).'\')';
		$joomLists = acymailing_loadObjectList($query, 'alias');

		$listClass = acymailing_get('class.list');

		foreach($nsprolists as $oneList){
			$oneList->alias = 'nsprolist'.$oneList->id;
			$nsproListId = $oneList->id;
			if(isset($joomLists[$oneList->alias])){
				$joomListId = $joomLists[$oneList->alias]->listid;
			}else{
				unset($oneList->id);
				$joomListId = $listClass->save($oneList);
				acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_LIST', '<b><i>'.$oneList->name.'</i></b>'));
			}

			$querySelect = 'SELECT DISTINCT c.subid,'.$joomListId.',c.created,1 FROM '.acymailing_table('nspro_subs', false).' as a ';
			$querySelect .= 'JOIN '.acymailing_table('subscriber').' as c on a.email = c.email ';
			$querySelect .= 'WHERE a.mailing_lists LIKE "'.$nsproListId.'" OR a.mailing_lists LIKE "%,'.$nsproListId.',%" OR a.mailing_lists LIKE "'.$nsproListId.',%"  OR a.mailing_lists LIKE "%,'.$nsproListId.'"';
			$queryInsert = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (subid,listid,subdate,status) ';

			$affected = acymailing_query($queryInsert.$querySelect);

			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $affected, '<b><i>'.$oneList->name.'</i></b>'));
		}

		return true;
	}

	function communicator(){
		$time = time();
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT `subscriber_email`,`subscriber_name`,`confirmed`,'.$time.',1,1,1 FROM '.acymailing_table('communicator_subscribers', false);
		$insertedUsers = acymailing_query($query);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		$query = 'SELECT b.subid FROM '.acymailing_table('communicator_subscribers', false).' as a JOIN '.acymailing_table('subscriber').' as b on a.subscriber_email = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();

		return true;
	}

	function civi_import(){
		$this->setciviprefix();
		$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) ';
		$query .= 'SELECT CONVERT(civiemail.email USING utf8),CONVERT(civicontact.`first_name` USING utf8),1,'.time().', 1-`do_not_email`,1 - civicontact.is_opt_out,1 ';
		$query .= 'FROM '.$this->civiprefix.'email as civiemail JOIN '.$this->civiprefix.'contact as civicontact ON civicontact.id = civiemail.contact_id ';
		$query .= 'WHERE civicontact.is_deleted = 0 AND civiemail.is_primary = 1 AND civiemail.email LIKE \'%@%\'';

		return acymailing_query($query);
	}

	function setciviprefix(){
		if(!empty($this->civiprefix)) return;
		$this->civiprefix = 'civicrm_';
		$civifile = ACYMAILING_ROOT.'administrator'.DS.'components'.DS.'com_civicrm'.DS.'civicrm.settings.php';
		if(!defined('CIVICRM_DSN') && file_exists($civifile)) include_once($civifile);
		if(defined('CIVICRM_DSN')){
			$infos = parse_url(CIVICRM_DSN);
			$db = trim($infos['path'], '/');
			if(!empty($db)) $this->civiprefix = '`'.$db.'`.civicrm_';
		}
	}

	function civi(){
		$this->setciviprefix();

		$insertedUsers = $this->civi_import();
		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $insertedUsers));

		$query = 'SELECT b.subid FROM '.$this->civiprefix.'email as a JOIN '.acymailing_table('subscriber').' as b on CONVERT(a.email USING utf8) = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();
	}

	function ldap(){
		$config = acymailing_config();

		acymailing_query("DELETE FROM #__acymailing_config WHERE namekey LIKE 'ldapfield_%'");

		if(!$this->ldap_init()) return false;

		$ldapfields = acymailing_getVar('none', 'ldapfield');
		if(empty($ldapfields)){
			acymailing_enqueueMessage(acymailing_translation('SPECIFYFIELDEMAIL'), 'notice');
			return false;
		}

		$newConfig = new stdClass();

		$this->dispresults = false;
		$newConfig->ldap_import_confirm = $this->forceconfirm = acymailing_getVar('int', 'ldap_import_confirm');
		$newConfig->ldap_generatename = $this->generatename = acymailing_getVar('int', 'ldap_generatename');
		$newConfig->ldap_overwriteexisting = $this->overwrite = acymailing_getVar('int', 'ldap_overwriteexisting');
		$newConfig->ldap_deletenotexists = $this->ldap_deletenotexists = acymailing_getVar('int', 'ldap_deletenotexists');
		if($this->ldap_deletenotexists){
			$subfields = array_keys(acymailing_getColumns('#__acymailing_subscriber'));
			if(!in_array('ldapentry', $subfields)){
				acymailing_query("ALTER TABLE #__acymailing_subscriber ADD COLUMN ldapentry TINYINT UNSIGNED DEFAULT 0");
			}else{
				acymailing_query("UPDATE #__acymailing_subscriber SET ldapentry = 0");
			}

			$this->overwrite = 1;
		}
		$newConfig->ldap_subfield = $this->ldap_subfield = acymailing_getVar('string', 'ldap_subfield');
		if(!empty($this->ldap_subfield)){
			$allValues = acymailing_getVar('none', 'ldap_subcond');
			$allLists = acymailing_getVar('none', 'ldap_sublists');
			$this->ldap_subscribe = array();
			foreach($allValues as $i => $oneValue){
				$oneValue = strtolower(trim($oneValue));
				if(strlen($oneValue) < 1) continue;
				if(isset($this->ldap_subscribe[$oneValue])){
					$this->ldap_subscribe[$oneValue] .= '-'.intval($allLists[$i]);
				}else{
					$this->ldap_subscribe[$oneValue] = intval($allLists[$i]);
				}
				$valcond = 'ldap_subcond_'.$i;
				$vallist = 'ldap_sublists_'.$i;
				$newConfig->$valcond = $allValues[$i];
				$newConfig->$vallist = $allLists[$i];
			}

			acymailing_query("DELETE FROM #__acymailing_config WHERE namekey LIKE 'ldap_subcond%' OR namekey LIKE 'ldap_sublists%'");
		}

		$this->ldap_equivalent = array();
		$this->ldap_selectedFields = array();
		foreach($ldapfields as $oneField => $acyField){
			if(empty($acyField)) continue;
			$configname = 'ldapfield_'.strtolower($oneField);
			$newConfig->$configname = $acyField;
			$this->ldap_equivalent[$acyField] = $oneField;
			$this->ldap_selectedFields[] = $oneField;
		}

		if(!empty($this->ldap_subfield) AND !in_array($this->ldap_subfield, $this->ldap_selectedFields)){
			$this->ldap_selectedFields[] = $this->ldap_subfield;
		}

		$config->save($newConfig);

		if(empty($this->ldap_equivalent['email'])){
			acymailing_enqueueMessage(acymailing_translation('SPECIFYFIELDEMAIL'), 'notice');
			return false;
		}

		$startChars = 'abcdefghijklmnopqrstuvwxyz0123456789_-+&.';

		$nbChars = strlen($startChars);
		$result = true;
		for($i = 0; $i < $nbChars; $i++){
			if(!$this->ldap_import($this->ldap_equivalent['email'].'='.$startChars[$i].'*@*')) $result = false;
		}

		acymailing_enqueueMessage(acymailing_translation_sprintf('ACY_IMPORT_REPORT', $this->totalTry, $this->totalInserted, $this->totalTry - $this->totalValid, $this->totalValid - $this->totalInserted));

		if($this->ldap_deletenotexists){
			$allSubids = acymailing_loadResultArray("SELECT subid FROM #__acymailing_subscriber WHERE ldapentry = 0");
			$subscriberClass = acymailing_get('class.subscriber');
			$nbAffected = $subscriberClass->delete($allSubids);
			acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_DELETE', $nbAffected));
			acymailing_query("ALTER TABLE #__acymailing_subscriber DROP COLUMN ldapentry");
		}

		$this->_displaySubscribedResult();

		return $result;
	}

	function ldap_import($search){
		$searchResult = ldap_search($this->ldap_conn, $this->ldap_basedn, $search, $this->ldap_selectedFields);
		if(!$searchResult){
			acymailing_display('Could not search for elements<br />'.ldap_error($this->ldap_conn), 'warning');
			return false;
		}
		$entries = ldap_get_entries($this->ldap_conn, $searchResult);

		if(empty($entries) || empty($entries['count'])) return true;

		$content = '"'.implode('","', array_keys($this->ldap_equivalent)).'"';
		if($this->ldap_deletenotexists) $content .= ',"ldapentry"';
		if(!empty($this->ldap_subfield)) $content .= ',"listids"';
		$content .= "\n";
		for($i = 0; $i < $entries['count']; $i++){
			foreach($this->ldap_equivalent as $ldapField){
				$fieldVal = isset($entries[$i][$ldapField][0]) ? $entries[$i][$ldapField][0] : '';
				$content .= '"'.$fieldVal.'",';
			}
			if($this->ldap_deletenotexists) $content .= '"1",';
			if(!empty($this->ldap_subfield)){
				static $errorsLists = array();
				if(isset($entries[$i][$this->ldap_subfield][0])){
					$condvalue = strtolower(trim($entries[$i][$this->ldap_subfield][0]));
					if(isset($this->ldap_subscribe[$condvalue])){
						$content .= $this->ldap_subscribe[$condvalue].',';
					}else{
						if(!isset($errorsLists[$condvalue]) AND count($errorsLists) < 5){
							$errorsLists[$condvalue] = true;
							acymailing_enqueueMessage('Could not find a list for the value "'.$condvalue.'" of the field '.$this->ldap_subfield, 'notice');
						}
						$content .= '"",';
					}
				}else{
					$content .= '"",';
				}
			}
			$content = rtrim($content, ',');
			$content .= "\n";
		}
		return $this->_handleContent($content);
	}


	function ldap_init(){
		$config = acymailing_config();
		$newConfig = new stdClass();
		$newConfig->ldap_host = trim(acymailing_getVar('string', 'ldap_host'));
		$newConfig->ldap_port = acymailing_getVar('int', 'ldap_port');
		if(empty($newConfig->ldap_port)) $newConfig->ldap_port = 389;
		$newConfig->ldap_basedn = trim(acymailing_getVar('string', 'ldap_basedn'));
		$this->ldap_basedn = $newConfig->ldap_basedn;
		$newConfig->ldap_username = trim(acymailing_getVar('string', 'ldap_username'));
		$newConfig->ldap_password = trim(acymailing_getVar('string', 'ldap_password'));

		$config->save($newConfig);

		if(empty($newConfig->ldap_host)) return false;

		acymailing_displayErrors();
		$this->ldap_conn = ldap_connect($newConfig->ldap_host, $newConfig->ldap_port);
		if(!$this->ldap_conn){
			acymailing_display('Could not connect to LDAP server : '.$newConfig->ldap_host.':'.$newConfig->ldap_port, 'warning');
			return false;
		}

		ldap_set_option($this->ldap_conn, LDAP_OPT_PROTOCOL_VERSION, 3);
		ldap_set_option($this->ldap_conn, LDAP_OPT_REFERRALS, 0);

		if(empty($newConfig->ldap_username)){
			$bindResult = ldap_bind($this->ldap_conn);
		}else{
			$bindResult = ldap_bind($this->ldap_conn, $newConfig->ldap_username, $newConfig->ldap_password);
		}

		if(!$bindResult){
			acymailing_display('Could not bind to the LDAP directory '.$newConfig->ldap_host.':'.$newConfig->ldap_port.' with specified username and password<br />'.ldap_error($this->ldap_conn), 'warning');
			return false;
		}

		acymailing_enqueueMessage('Successfully connected to '.$newConfig->ldap_host.':'.$newConfig->ldap_port, 'success');

		return true;
	}

	function ldap_ajax(){

		if(!$this->ldap_init()) return;

		$config = acymailing_config();

		$searchResult = @ldap_search($this->ldap_conn, trim(acymailing_getVar('string', 'ldap_basedn')), 'mail=*@*', array(), 0, 5);
		if(!$searchResult){
			acymailing_display('Could not search for elements<br />'.ldap_error($this->ldap_conn), 'warning');
			return false;
		}
		$entries = ldap_get_entries($this->ldap_conn, $searchResult);

		$fields = array();
		$dropdown = array();
		$object = new stdClass();
		$object->text = ' - - - ';
		$object->value = 0;
		$dropdown[] = $object;
		foreach($entries as $oneEntry){
			if(!is_array($oneEntry)) continue;
			foreach($oneEntry as $field => $value){
				if(!is_numeric($field)) continue;
				$value = strtolower($value);
				if($value == 'objectclass') continue;
				$fields[$value] = $value;
				$object = new stdClass();
				$object->text = $value;
				$object->value = $value;
				$dropdown[$value] = $object;
			}
		}

		if(empty($fields)){
			acymailing_display('Could not load elements<br />'.ldap_error($this->ldap_conn), 'warning');
			return false;
		}

		$subfields = acymailing_getColumns('#__acymailing_subscriber');

		$acyfields = array();
		$acyfields[] = acymailing_selectOption('', ' - - - ');
		foreach($subfields as $oneField => $typefield){
			if(in_array($oneField, array('subid', 'confirmed', 'enabled', 'key', 'userid', 'accept', 'html', 'created'))) continue;
			$acyfields[] = acymailing_selectOption($oneField, $oneField);
		}

		echo '<div class="onelineblockoptions"><span class="acyblocktitle">'.acymailing_translation('USER_FIELDS').'</span>
<table class="acymailing_table" cellspacing="1">';
		foreach($fields as $oneField){
			echo '<tr><td class="acykey" >'.$oneField.'</td><td>'.acymailing_select($acyfields, 'ldapfield['.$oneField.']', 'size="1"', 'value', 'text', $config->get('ldapfield_'.$oneField)).'</td></tr>';
		}
		echo '</table></div>';

		echo '<div class="onelineblockoptions"><span class="acyblocktitle">'.acymailing_translation('SUBSCRIPTION').'</span>';
		echo 'Subscribe the user based on the values of the field '.acymailing_select($dropdown, 'ldap_subfield', 'size="1"', 'value', 'text', $config->get('ldap_subfield')).':';
		$listClass = acymailing_get('class.list');
		$lists = $listClass->getLists('listid');

		for($i = 0; $i < 5; $i++){
			echo '<br />Subscribe to list '.acymailing_select($lists, 'ldap_sublists['.$i.']', 'class="inputbox" size="1" style="width: 150px;" ', 'listid', 'name', (int)$config->get('ldap_sublists_'.$i)).' if the value is <input style="width: 150px;" type="text" value="'.htmlspecialchars($config->get('ldap_subcond_'.$i), ENT_COMPAT, 'UTF-8').'" name="ldap_subcond['.$i.']" />';
		}
		echo '</div>';

	}

	function zohocrm($action = ''){
		$zohoHelper = acymailing_get('helper.zoho');
		$subscriberClass = acymailing_get('class.subscriber');
		$tableInfos = array_keys(acymailing_getColumns('#__acymailing_subscriber'));
		$config = acymailing_config();
		if(!in_array('zohoid', $tableInfos)){
			$query = 'ALTER TABLE #__acymailing_subscriber ADD COLUMN zohoid VARCHAR(255)';
			acymailing_query($query);
			$query = 'ALTER TABLE `#__acymailing_subscriber` ADD INDEX(`zohoid`)';
			acymailing_query($query);
		}
		if(!in_array('zoholist', $tableInfos)){
			$query = 'ALTER TABLE #__acymailing_subscriber ADD COLUMN zoholist CHAR(1)';
			acymailing_query($query);
		}

		if($action == 'update'){
			$list = $config->get('zoho_list');
			$zohoHelper->authtoken = $authtoken = $config->get('zoho_apikey');
			$zohoHelper->customView = $config->get('zoho_cv');
			$fields = unserialize($config->get('zoho_fields'));
			$confirmedUsers = $config->get('zoho_confirmed');
			$delete = $config->get('zoho_delete');
			$generateName = $config->get('zoho_generate_name', 'fromemail');
			$importnew = $config->get('zoho_importnew', 0);
		}else{
			$list = acymailing_getVar('none', 'zoho_list');
			$fields = acymailing_getVar('none', 'zoho_fields');
			$zohoHelper->authtoken = $authtoken = acymailing_getVar('none', 'zoho_apikey');
			$zohoHelper->customView = acymailing_getVar('none', 'zoho_cv');
			$overwrite = acymailing_getVar('none', 'zoho_overwrite');
			$confirmedUsers = acymailing_getVar('none', 'zoho_confirmed');
			$delete = acymailing_getVar('none', 'zoho_delete');
			$newConfig = new stdClass();
			$newConfig->zoho_fields = serialize($fields);
			$newConfig->zoho_list = $list;
			$newConfig->zoho_apikey = $zohoHelper->authtoken;
			$newConfig->zoho_cv = $zohoHelper->customView;
			$newConfig->zoho_overwrite = $overwrite;
			$newConfig->zoho_confirmed = $confirmedUsers;
			$newConfig->zoho_delete = $delete;
			$newConfig->zoho_generate_name = $generateName = acymailing_getVar('none', 'zoho_generate_name', 'fromemail');
			$newConfig->zoho_importnew = $importnew = acymailing_getVar('none', 'zoho_importnew', 0);
			$newConfig->zoho_importdate = date('Y-m-d H:i:s');
			$config->save($newConfig);
		}

		if($config->get('zoho_overwrite', false)) $this->overwrite = true;
		if(empty($authtoken)){
			acymailing_enqueueMessage('Pleaser enter a valid API key', 'notice');
			return false;
		}

		$this->allSubid = array();
		$indexDec = 200;
		$res = $zohoHelper->sendInfo($list);
		while(!empty($res)){
			$zohoUsers = $zohoHelper->parseXML($res, $list, $fields, $confirmedUsers, $generateName);
			if(empty($zohoUsers) && $zohoHelper->nbUserRead == 0) break;
			$this->_insertUsers($zohoUsers);
			if($zohoHelper->nbUserRead < 200) break; // No further iteration needed
			$zohoUsers = array();
			$zohoHelper->fromIndex = $zohoHelper->fromIndex + $indexDec;
			$zohoHelper->toIndex = $zohoHelper->toIndex + $indexDec;
			if(!empty($zohoHelper->conn)) $zohoHelper->close();
			$res = $zohoHelper->sendInfo($list);
		}
		$this->_subscribeUsers();
		if(acymailing_getVar('int', 'zoho_delete') == '1'){
			$zohoHelper->deleteAddress($this->allSubid, $list);
		}else{
			$query = 'SELECT DISTINCT b.subid FROM #__acymailing_subscriber AS a JOIN #__acymailing_subscriber AS b ON a.zohoid = b.zohoid WHERE a.zohoid IS NOT NULL AND b.subid < a.subid';
			$result = acymailing_loadResultArray($query);
			$subscriberClass->delete($result);
		}
		if(!empty($zohoHelper->conn)) $zohoHelper->close();

		$this->_displaySubscribedResult();
		if(!empty($zohoHelper->error) && acymailing_isDebug()) acymailing_enqueueMessage(acymailing_translation_sprintf($zohoHelper->error), 'notice');
	}

	function sobipro(){
		$config = acymailing_config();

		$sobiproImport = acymailing_getVar('array', 'config', array(), 'POST');
		$newConfig = new stdClass();
		$affectedRows = 0;
		$newConfig->sobipro_import = serialize($sobiproImport);
		$config->save($newConfig);

		foreach($sobiproImport as $oneImport => $oneValue){
			$query = 'SELECT fid, nid FROM #__sobipro_field WHERE fid="'.$oneValue['sobiEmail'].'" OR fid="'.$oneValue['sobiName'].'"';
			$nidResult = acymailing_loadObjectList($query, "fid");
			if(empty($nidResult[$oneValue['sobiEmail']]) OR empty($nidResult[$oneValue['sobiName']])) continue;
			$time = time();
			$query = 'INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`,`name`,`confirmed`,`created`,`enabled`,`accept`,`html`) SELECT b.baseData AS email, a.baseData AS name, 1 as confirmed, '.$time.' as created, 1 as enabled, 1 as accept, 1 as html FROM #__sobipro_field_data AS a LEFT JOIN #__sobipro_field_data AS b ON a.sid=b.sid WHERE a.`fid` = '.$nidResult[$oneValue["sobiName"]]->fid.' AND b.`fid` = '.$nidResult[$oneValue["sobiEmail"]]->fid.' AND b.baseData LIKE "%@%" AND b.baseData IS NOT NULL AND a.baseData IS NOT NULL ORDER by a.sid ';
			$affected = acymailing_query($query);
			$affectedRows += intval($affected);
		}
		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $affectedRows));
		$query = 'SELECT b.subid FROM `#__sobipro_field_data` as a JOIN '.acymailing_table('subscriber').' as b on a.baseData = b.email';
		$this->allSubid = acymailing_loadResultArray($query);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();
		return true;
	}

	function fbleads(){
		$config = acymailing_config();

		$token = acymailing_getVar('none', 'fbleads_token');
		$adid = acymailing_getVar('none', 'fbleads_adid');
		$formid = acymailing_getVar('none', 'fbleads_formid');
		$mincreated = acymailing_getVar('none', 'fbleads_mincreated');
		$maxcreated = acymailing_getVar('none', 'fbleads_maxcreated');
		$emailfield = acymailing_getVar('none', 'fbleads_email');
		$namefield = acymailing_getVar('none', 'fbleads_name');

		$newConfig = new stdClass();
		$newConfig->fbleads_token = $token;
		$newConfig->fbleads_adid = $adid;
		$newConfig->fbleads_formid = $formid;
		$newConfig->fbleads_mincreated = $mincreated;
		$newConfig->fbleads_maxcreated = $maxcreated;
		$newConfig->fbleads_email = $emailfield;
		$newConfig->fbleads_name = $namefield;

		$config->save($newConfig);

		if(!function_exists('curl_exec')){
			acymailing_enqueueMessage('The curl extension must be enabled on your server to be able to use this import option', 'notice');
			return false;
		}

		if(empty($token)){
			acymailing_enqueueMessage(acymailing_translation('ACY_FBLEADS_ENTER_TOKEN'), 'notice');
			return false;
		}

		if(empty($adid) && empty($formid)){
			acymailing_enqueueMessage(acymailing_translation('ACY_FBLEADS_ENTER_ID'), 'notice');
			return false;
		}

		if(empty($emailfield)){
			acymailing_enqueueMessage('You must at least specify the email field\'s code', 'notice');
			return false;
		}

		$filtering = array();

		if(!empty($mincreated)){
			$mincreated = strtotime($mincreated);
			if(empty($mincreated) || $mincreated == -1){
				acymailing_enqueueMessage(acymailing_translation_sprintf('FIELD_CONTENT_VALID', '"'.acymailing_translation('ACY_FBLEADS_MINCREATED').'"'), 'notice');
			}else{
				$filter = new stdClass();
				$filter->field = "time_created";
				$filter->operator = "GREATER_THAN";
				$filter->value = $mincreated;

				$filtering[] = $filter;
			}
		}

		if(!empty($maxcreated)){
			$maxcreated = strtotime($maxcreated);
			if(empty($maxcreated) || $maxcreated == -1){
				acymailing_enqueueMessage(acymailing_translation_sprintf('FIELD_CONTENT_VALID', '"'.acymailing_translation('ACY_FBLEADS_MAXCREATED').'"'), 'notice');
			}else{
				$filter = new stdClass();
				$filter->field = "time_created";
				$filter->operator = "LESS_THAN";
				$filter->value = $maxcreated;

				$filtering[] = $filter;
			}
		}

		if(empty($formid)) $formid = $adid;
		$url = 'https://graph.facebook.com/v2.8/'.$formid.'/leads?limit=1000000&access_token='.$token;
		if(!empty($filtering)) $url .= '&filtering='.urlencode(json_encode($filtering));

		$curl = curl_init();
		curl_setopt($curl, CURLOPT_URL,$url);
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($curl, CURLOPT_COOKIESESSION, true);
		$return = curl_exec($curl);

		if(!$return){
			acymailing_enqueueMessage('An unkown error occurred: '.curl_error($curl), 'error');
			curl_close($curl);
			return true;
		}

		curl_close($curl);
		
		$return = json_decode($return, true);
		
		if(!empty($return['error']['message'])){
			acymailing_enqueueMessage($return['error']['message'], 'error');
			return true;
		}

		if(empty($return['data'])) {
			acymailing_enqueueMessage(acymailing_translation('ACY_FBLEADS_NONE'), 'info');
			return true;
		}

		$leads = '';
		$time = time();
		foreach($return['data'] as $oneLead){
			$email = '';
			$name = '';
			foreach($oneLead['field_data'] as $oneField){
				if($oneField['name'] == $emailfield) $email = $oneField['values'][0];
				if(!empty($namefield) && $oneField['name'] == $namefield) $name = $oneField['values'][0];
			}

			$leads .= '('.acymailing_escapeDB($email).(empty($namefield) ? '' : ','.acymailing_escapeDB($name)).','.$time.'),';
			$emails[] = acymailing_escapeDB($email);
		}
		$leads = rtrim($leads, ',');

		$affectedRows = acymailing_query('INSERT IGNORE INTO '.acymailing_table('subscriber').' (`email`'.(empty($namefield) ? '' : ',`name`').',`created`) VALUES '.$leads);

		acymailing_enqueueMessage(acymailing_translation_sprintf('IMPORT_NEW', $affectedRows));
		$this->allSubid = acymailing_loadResultArray('SELECT subid FROM '.acymailing_table('subscriber').' WHERE `created` = '.$time);
		$this->_subscribeUsers();
		$this->_displaySubscribedResult();
		return true;
	}
}
helpers/encoding.php000060400000004644152455705230010521 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


class acyencodingHelper{

	function change($data, $input, $output){

		$input = strtoupper(trim($input));
		$output = strtoupper(trim($output));

		$supportedEncodings = array("BIG5", "ISO-8859-1", "ISO-8859-2", "ISO-8859-3", "ISO-8859-4", "ISO-8859-5", "ISO-8859-6", "ISO-8859-7", "ISO-8859-8", "ISO-8859-9", "ISO-8859-10", "ISO-8859-13", "ISO-8859-14", "ISO-8859-15", "ISO-2022-JP", "US-ASCII", "UTF-7", "UTF-8", "UTF-16", "WINDOWS-1251", "WINDOWS-1252", "ARMSCII-8", "ISO-8859-16");
		if(!in_array($input, $supportedEncodings)){
			acymailing_enqueueMessage('Encoding not supported: '.$input, 'error');
		}elseif(!in_array($output, $supportedEncodings)){
			acymailing_enqueueMessage('Encoding not supported: '.$output, 'error');
		}

		if($input == $output) return $data;

		if($input == 'UTF-8' && $output == 'ISO-8859-1'){
			$data = str_replace(array('€', '„', '“'), array('EUR', '"', '"'), $data);
		}

		if(function_exists('iconv')){
			set_error_handler('acymailing_error_handler_encoding');
			$encodedData = iconv($input, $output."//IGNORE", $data);
			restore_error_handler();
			if(!empty($encodedData) && !acymailing_error_handler_encoding('result')){
				return $encodedData;
			}
		}

		if(function_exists('mb_convert_encoding')){
			return mb_convert_encoding($data, $output, $input);
		}

		if($input == 'UTF-8' && $output == 'ISO-8859-1'){
			return utf8_decode($data);
		}

		if($input == 'ISO-8859-1' && $output == 'UTF-8'){
			return utf8_encode($data);
		}

		return $data;
	}

	function detectEncoding(&$content){

		if(!function_exists('mb_check_encoding')) return '';

		$toTest = array('UTF-8');
		
		$tag = acymailing_getLanguageTag();

		if($tag == 'el-GR'){
			$toTest[] = 'ISO-8859-7';
		}
		$toTest[] = 'ISO-8859-1';
		$toTest[] = 'ISO-8859-2';
		$toTest[] = 'Windows-1252';

		foreach($toTest as $oneEncoding){
			if(mb_check_encoding($content, $oneEncoding)) return $oneEncoding;
		}

		return '';
	}

}//endclass

function acymailing_error_handler_encoding($errno, $errstr = ''){
	static $error = false;
	if(is_string($errno) && $errno == 'result'){
		$currentError = $error;
		$error = false;
		return $currentError;
	}
	$error = true;
	return true;
}
helpers/acypict.php000060400000013323152455705230010361 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acypictHelper{

	var $error;
	var $maxHeight;
	var $maxWidth;
	var $destination;

	function __construct(){
		
	}

	function removePictures($text){
		$return = preg_replace('#< *img[^>]*>#Ui','',$text);
		$return = preg_replace('#< *div[^>]*class="jce_caption"[^>]*>[^<]*(< *div[^>]*>[^<]*<\/div>)*[^<]*<\/div>#Ui','',$return);
		return $return;
	}

	function available(){
		if(!function_exists('gd_info')){
			$this->error = 'The GD library is not installed.';
			return false;
		}
		if(!function_exists('getimagesize')){
			$this->error = 'Cound not find getimagesize function';
			return false;
		}
		if(!function_exists('imagealphablending')){
			$this->error = "Please make sure you're using GD 2.0.1 or later version";
			return false;
		}
		return true;
	}

	function resizePictures($input){
		$this->destination = ACYMAILING_MEDIA.'resized'.DS;
		acymailing_createDir($this->destination);
		$content = acymailing_absoluteURL($input);

		preg_match_all('#<img([^>]*)>#Ui',$content,$results);
		if(empty($results[1])) return $input;

		$replace = array();

		foreach($results[1] as $onepicture){
			if(strpos($onepicture,'donotresize') !== false) continue;

			if(!preg_match('#src="([^"]*)"#Ui',$onepicture,$path)) continue;
			$imageUrl = $path[1];

			$base = str_replace(array('http://www.','https://www.','http://','https://'),'',ACYMAILING_LIVE);
			$replacements = array('https://www.'.$base,'http://www.'.$base,'https://'.$base,'http://'.$base);
			foreach($replacements as $oneReplacement){
				if(strpos($imageUrl,$oneReplacement) === false) continue;
				$imageUrl = str_replace(array($oneReplacement,'/'),array(ACYMAILING_ROOT,DS),urldecode($imageUrl));
				break;
			}

			$newPicture = $this->generateThumbnail($imageUrl);

			if(!$newPicture){
				$newDimension = 'max-width:'.$this->maxWidth.'px;max-height:'.$this->maxHeight.'px;';
				if(strpos($onepicture, 'style="') !== false){
					$replace[$onepicture] = preg_replace('#style="([^"]*)"#Uis', 'style="'.$newDimension.'$1"', $onepicture);
				}else{
					$replace[$onepicture] = ' style="'.$newDimension.'" '.$onepicture;
				}
				continue;
			}

			$newPicture['file'] = preg_replace('#^'.preg_quote(ACYMAILING_ROOT,'#').'#i',ACYMAILING_LIVE,$newPicture['file']);
			$newPicture['file'] = str_replace(DS,'/',$newPicture['file']);
			$replaceImage = array();
			$replaceImage[$path[1]] = $newPicture['file'];
			if(preg_match_all('#(width|height)(:|=) *"?([0-9]+)#i',$onepicture,$resultsSize)){
				foreach($resultsSize[0] as $i => $oneArg){
					$newVal = (strtolower($resultsSize[1][$i]) == 'width') ? $newPicture['width'] : $newPicture['height'];
					if($newVal > $resultsSize[3][$i]) continue;
					$replaceImage[$oneArg] = str_replace($resultsSize[3][$i],$newVal,$oneArg);
				}
			}

			$replace[$onepicture] = str_replace(array_keys($replaceImage),$replaceImage,$onepicture);

		}

		if(!empty($replace)){
			$input = str_replace(array_keys($replace),$replace,$content);
		}

		return $input;
	}

	function generateThumbnail($picturePath){

 		list($currentwidth, $currentheight) = getimagesize($picturePath);
 		if(empty($currentwidth) || empty($currentheight)) return false;
 		$factor = min($this->maxWidth/$currentwidth,$this->maxHeight/$currentheight);
		if($factor>=1) return false;
		$newWidth = round($currentwidth*$factor);
		$newHeight = round($currentheight*$factor);

		if(strpos($picturePath,'http') === 0){
			$filename = substr($picturePath,strrpos($picturePath,'/')+1);
		}else{
			$filename = basename($picturePath);
		}

		if(substr($picturePath,0,10) == 'data:image'){
			preg_match('#data:image/([^;]{1,5});#',$picturePath,$resultextension);
			if(empty($resultextension[1])) return false;
			$extension = $resultextension[1];
			$name = md5($picturePath);
		}else{
			$extension = strtolower(substr($filename,strrpos($filename,'.')+1));
			$name = strtolower(substr($filename,0,strrpos($filename,'.')));
			$name .= substr(@filemtime($picturePath),-4);
		}

		$newImage = md5($picturePath).'-'.$name.'thumb'.$this->maxWidth.'x'.$this->maxHeight.'.'.$extension;
		if(empty($this->destination)){
			$newFile = dirname($picturePath).DS.$newImage;
		}else{
			$newFile = $this->destination.$newImage;
		}

		if(file_exists($newFile)) return array('file' => $newFile,'width' => $newWidth,'height' => $newHeight);

		switch($extension){
			case 'gif':
				$img = ImageCreateFromGIF($picturePath);
				break;
			case 'jpg':
			case 'jpeg':
				$img = ImageCreateFromJPEG($picturePath);
				break;
			case 'png':
				$img = ImageCreateFromPNG($picturePath);
				break;
			default:
				return false;
		}

		$thumb = ImageCreateTrueColor($newWidth, $newHeight);

		if(in_array($extension,array('gif','png'))){
			imagealphablending($thumb, false);
			imagesavealpha($thumb,true);
		}

		if(function_exists("imagecopyresampled")){
			imagecopyresampled($thumb, $img, 0, 0, 0, 0, $newWidth, $newHeight,$currentwidth, $currentheight);
		}else{
			ImageCopyResized($thumb, $img, 0, 0, 0, 0, $newWidth, $newHeight,$currentwidth, $currentheight);
		}
		ob_start();
		switch($extension){
			case 'gif':
				$status = imagegif($thumb);
				break;
			case 'jpg':
			case 'jpeg':
				$status = imagejpeg($thumb,null,100);
				break;
			case 'png':
				$status = imagepng($thumb,null,0);
				break;
		}
		$imageContent = ob_get_clean();
		$status = $status && acymailing_writeFile($newFile,$imageContent);
		imagedestroy($thumb);
		imagedestroy($img);

		if(!$status) $newFile = $picturePath;

		return array('file' => $newFile,'width' => $newWidth,'height' => $newHeight);
	}
}

helpers/update.php000060400000147045152455705230010220 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyupdateHelper{

	var $db;
	var $errors = array();
	var $bouncerulesversion = 13;

	function __construct(){
		global $acymailingCmsUserVars;
		$this->cmsUserVars = $acymailingCmsUserVars;
	}

	function fixDoubleExtension(){

		if(!ACYMAILING_J16) return;

		$results = acymailing_loadObjectList("SELECT extension_id FROM #__extensions WHERE type='component' AND element = 'com_acymailing' AND extension_id > 0 ORDER BY client_id ASC, extension_id ASC");
		if(empty($results) || count($results) == 1) return;

		$validExtension = reset($results)->extension_id;

		$toDelete = array();
		for($i = 1; $i < count($results); $i++){
			$toDelete[] = $results[$i]->extension_id;
		}


		$tablesToUpdate = array('#__menu' => 'component_id');
		foreach($tablesToUpdate as $table => $field){
			acymailing_query("UPDATE ".$table." SET ".$field." = ".intval($validExtension)." WHERE ".$field." IN (".implode(',', $toDelete).")");
		}
		$tablesToCheck = array('#__updates' => 'extension_id', '#__update_sites_extensions' => 'extension_id', '#__extensions' => 'extension_id');
		foreach($tablesToCheck as $table => $field){
			acymailing_query("DELETE FROM ".$table." WHERE ".$field." IN (".implode(',', $toDelete).")");
		}
	}

	function fixMenu(){
		if(!ACYMAILING_J16) return;

		$extensionid = acymailing_loadResult("SELECT extension_id FROM #__extensions WHERE type='component' AND element LIKE '%acymailing' LIMIT 1");
		if(empty($extensionid)) return;

		acymailing_query("UPDATE #__menu SET component_id = ".intval($extensionid).",published = 1 WHERE link LIKE '%com_acymailing%' AND component_id = 0 AND client_id = 1");
	}

	function installTables(){
		echo '<h2 style="color:red">The installation failed, some tables are missing, we will try to create them now...</h2>';

		$queries = file_get_contents(ACYMAILING_BACK.'tables.sql');
		$queriesTable = explode("CREATE TABLE", $queries);

		$success = true;
		foreach($queriesTable as $oneQuery){
			$oneQuery = trim($oneQuery);
			if(empty($oneQuery)) continue;
			$res = acymailing_query("CREATE TABLE ".$oneQuery);
			if($res === false){
				echo '<br /><br /><span style="color:red">Error creating table : '.acymailing_getDBError().'</span><br />';
				$success = false;
			}else{
				echo '<br /><span style="color:green">Table successfully created</span>';
			}
		}

		if($success){
			echo '<h2 style="color:orange">Please install again AcyMailing via the Joomla Extensions manager, the tables are now created so the installation will work</h2>';
		}else{
			echo '<h2 style="color:red">Some tables could not be created, please fix the above issues and then install again AcyMailing.</h2>';
		}
	}

	function addUpdateSite(){
		$config = acymailing_config();

		$newconfig = new stdClass();
		$newconfig->website = ACYMAILING_LIVE;
		$newconfig->max_execution_time = 0;

		$config->save($newconfig);

		if(!ACYMAILING_J16) return false;

		acymailing_query("DELETE FROM #__updates WHERE element = 'com_acymailing'");

		$query = "SELECT update_site_id FROM #__update_sites WHERE location LIKE '%acymailing%' AND type LIKE 'extension'";
		$update_site_id = acymailing_loadResult($query);

		$object = new stdClass();
		$object->name = 'AcyMailing';
		$object->type = 'extension';
		$object->location = 'http://www.acyba.com/component/updateme/updatexml/component-acymailing/level-'.$config->get('level').'/file-extension.xml';

		$object->enabled = 1;

		if(empty($update_site_id)){
			$update_site_id = acymailing_insertObject("#__update_sites", $object);
		}else{
			$object->update_site_id = $update_site_id;
			acymailing_updateObject("#__update_sites", $object, 'update_site_id');
		}

		$query = "SELECT extension_id FROM #__extensions WHERE `name` LIKE 'acymailing' AND type LIKE 'component'";
		$extension_id = acymailing_loadResult($query);
		if(empty($update_site_id) OR empty($extension_id)) return false;

		$query = 'INSERT IGNORE INTO #__update_sites_extensions (update_site_id, extension_id) values ('.$update_site_id.','.$extension_id.')';
		acymailing_query($query);
		return true;
	}

	function installFields(){
		$query = "INSERT IGNORE INTO `#__acymailing_fields` (`fieldname`, `namekey`, `type`, `value`, `published`, `ordering`, `options`, `core`, `required`, `backend`, `frontcomp`, `default`, `listing`, `frontlisting`, `frontform`) VALUES
		('NAMECAPTION', 'name', 'text', '', 1, 1, '', 1, 1, 1, 1, '',1,1,1),
		('EMAILCAPTION', 'email', 'text', '', 1, 2, '', 1, 1, 1, 1, '',1,1,1),
		('RECEIVE', 'html', 'radio', '0::JOOMEXT_TEXT\n1::HTML', 1, 3, '', 1, 1, 1, 1, '1',1,0,1);";
		acymailing_query($query);
	}

	function installNotifications(){
		$notifications = acymailing_loadResultArray('SELECT `alias` FROM `#__acymailing_mail` WHERE `type` = \'notification\' OR `type` = \'article\'');

		$data = array();

		if(!in_array('notification_created', $notifications)) $data[] = "('New Subscriber on your website : {user:email}', '<p>Hello {subtag:name},</p><p>A new user has been created in AcyMailing : </p><blockquote><p>Name : {user:name}</p><p>Email : {user:email}</p><p>IP : {user:ip} </p><p>Subscription : {user:subscription}</p></blockquote>', '', 1, 'notification', 0,'notification_created', 1,0,NULL,'')";
		if(!in_array('notification_unsuball', $notifications)) $data[] = "('A User unsubscribed from all your lists : {user:email}', '<p>Hello {subtag:name},</p><p>The user {user:name} : {user:email} unsubscribed from all your lists</p><p>Subscription : {user:subscription}</p><p>{survey}</p>', '', 1, 'notification', 0, 'notification_unsuball', 1,0,NULL,'')";
		if(!in_array('notification_unsub', $notifications)) $data[] = "('A User unsubscribed : {user:email}', '<p>Hello {subtag:name},</p><p>The user {user:name} : {user:email} unsubscribed from your list</p><p>Subscription : {user:subscription}</p><p>{survey}</p>', '', 1, 'notification', 0, 'notification_unsub', 1,0,NULL,'')";
		if(!in_array('notification_refuse', $notifications)) $data[] = "('A User refuses to receive e-mails from your website : {user:email}', '<p>The User {user:name} : {user:email} refuses to receive any e-mail anymore from your website.</p><p>Subscription : {user:subscription}</p><p>{survey}</p>', '', 1, 'notification',0,'notification_refuse', 1,0,NULL,'')";
		if(!in_array('notification_contact', $notifications)) $data[] = "('New contact from your website : {user:email}', '<p>Hello {subtag:name},</p><p>A user submitted the form : </p><blockquote><p>Name : {user:name}</p><p>Email : {user:email}</p><p>IP : {user:ip} </p><p>Subscription : {user:subscription}</p></blockquote>', '', 1, 'notification', 0,'notification_contact', 1,0,NULL,'')";
		if(!in_array('notification_contact_menu', $notifications)) $data[] = "('A user subscribed or modified his subscription : {user:email}', '<p>Hello {subtag:name},</p><p>A user submitted the form : </p><blockquote><p>Name : {user:name}</p><p>Email : {user:email}</p><p>IP : {user:ip} </p><p>Subscription : {user:subscription}</p></blockquote>', '', 1, 'notification', 0,'notification_contact_menu', 1,0,NULL,'')";
		if(!in_array('notification_confirm', $notifications)) $data[] = "('A user confirmed his subscription : {user:email}', '<p>Hello {subtag:name},</p><p>A user confirmed his subscription : </p><blockquote><p>Name : {user:name}</p><p>Email : {user:email}</p><p>IP : {user:ip} </p><p>Subscription : {user:subscription}</p></blockquote>', '', 1, 'notification', 0,'notification_confirm', 1,0,NULL,'')";

		$conftemplate = (int)acymailing_loadResult("SELECT tempid FROM #__acymailing_template WHERE namekey = 'newsletter-4'");

		if(!in_array('confirmation', $notifications)){
			$bodyNotif = $this->getFormatedNotification('{subtag:name|ucfirst}, {trans:PLEASE_CONFIRM_SUB}', '<h1>Hello {subtag:name|ucfirst},</h1>
			<p>{trans:CONFIRM_MSG}<br /><br />{trans:CONFIRM_MSG_ACTIVATE}</p>
			<br />
			<p style="text-align:center;"><strong>{confirm}{trans:CONFIRM_SUBSCRIPTION}{/confirm}</strong></p>');
			$data[] = "('{subtag:name|ucfirst}, {trans:PLEASE_CONFIRM_SUB}', ".acymailing_escapeDB($bodyNotif).", '',1, 'notification', 0, 'confirmation', 1,".$conftemplate.',\'a:3:{s:6:"action";s:7:"confirm";s:13:"actionbtntext";s:28:"{trans:CONFIRM_SUBSCRIPTION}";s:9:"actionurl";s:19:"{confirm}{/confirm}";}\',"")';
		}else{
			$confirmParams = acymailing_loadResult('SELECT `params` FROM `#__acymailing_mail` WHERE `alias` = \'confirmation\'');
			if(empty($confirmParams)){
				acymailing_query('UPDATE `#__acymailing_mail` SET `params` = \'a:3:{s:6:"action";s:7:"confirm";s:13:"actionbtntext";s:28:"{trans:CONFIRM_SUBSCRIPTION}";s:9:"actionurl";s:19:"{confirm}{/confirm}";}\' WHERE `alias` = \'confirmation\'');
			}
		}

		if(!in_array('report', $notifications)) $data[] = "('AcyMailing Cron Report {mainreport}', '<p>{report}</p><p>{detailreport}</p>', '',1, 'notification',0,  'report', 1,0,NULL,'')";
		if(!in_array('modif', $notifications)) $data[] = "('Modify your subscription', '<p>Hello {subtag:name}, </p><p>You requested some changes on your subscription,</p><p>Please {modify}click here{/modify} to be identified as the owner of this account and then modify your subscription.</p>', '',1, 'notification', 0, 'modif', 1,0,NULL,'')";

		if(!in_array('send-in-article', $notifications)){
			$body = $this->getFormatedNotification('{joomlacontent:current| type:title}', '{joomlacontent:current| type:intro| format:TOP_LEFT| pict:1| link}');
			$data[] = "('{joomlacontent:current| type:title}', ".acymailing_escapeDB($body).", '', 1, 'article', 0, 'send-in-article', 1, ".$conftemplate.", NULL, '')";
		}

		if('joomla' == 'joomla') $data = array_merge($data, $this->getJoomlaNotifications($conftemplate));

		if(!empty($data)){
			acymailing_query("INSERT INTO `#__acymailing_mail` (`subject`, `body`, `altbody`, `published`, `type`, `visible`, `alias`, `html`, `tempid`, `params`, `summary`) VALUES ".implode(',', $data));
		}
	}

	function getFormatedNotification($subject, $body){
		return '<div style="text-align: center; width: 100%; background-color:#ffffff;">
		<table align="center" border="0" cellpadding="0" cellspacing="0" class="w600" style="text-align: justify; margin: auto; width: 600px;">
			<tbody>
				<tr class="acyeditor_delete" style="line-height: 0px;" id="zone_2">
					<td class="w600" colspan="5" style="background-color: #69b4c0;" valign="bottom" width="600" id="zone_3"><img id="zone_29" alt=" - - - " border="0" src="'.ACYMAILING_MEDIA_URL.'templates/newsletter-4/images/top.png"></td>
				</tr>
				<tr class="acyeditor_delete" id="zone_4">
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_5"></td>
					<td class="w520 acyeditor_text" colspan="3" height="80" style="text-align: left; background-color: #ebebeb;" width="520" id="zone_6"><strong>​</strong>​​​​​​​​<img alt="-" border="0" src="'.ACYMAILING_MEDIA_URL.'templates/newsletter-4/images/message_icon.png" style="float: left; margin-right: 10px;">
						<h3>'.$subject.'<span style="display: none;">&nbsp;</span></h3>
					</td>
					<td class="acyeditor_picture w40" style="background-color: #ebebeb;" width="40" id="zone_7"></td>
				</tr>
				<tr class="acyeditor_delete" id="zone_8">
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_9"></td>
					<td class="w20" style="background-color: #fff;" width="20" id="zone_10"></td>
					<td class="w480" height="20" style="background-color: #fff;" width="480" id="zone_11"></td>
					<td class="w20" style="background-color: #fff;" width="20" id="zone_12"></td>
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_13"></td>
				</tr>
				<tr class="acyeditor_delete" id="zone_14">
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_15"></td>
					<td class="w20" style="background-color: #fff;" width="20" id="zone_16"></td>
					<td class="w480 pict acyeditor_text" style="background-color: #fff; text-align: left;" width="480" id="zone_17">'.$body.'</td>
					<td class="w20" style="background-color: #fff;" width="20" id="zone_18"></td>
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_19"></td>
				</tr>
				<tr class="acyeditor_delete" id="zone_20">
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_21"></td>
					<td class="w20" style="background-color: #fff;" width="20" id="zone_22"></td>
					<td class="w480" height="20" style="background-color: #fff;" width="480" id="zone_23"></td>
					<td class="w20" style="background-color: #fff;" width="20" id="zone_24"></td>
					<td class="w40" style="background-color: #ebebeb;" width="40" id="zone_25"></td>
				</tr>
				<tr class="acyeditor_delete" style="line-height: 0px;" id="zone_26">
					<td class="w600" colspan="5" style="background-color: #ebebeb;" width="600" id="zone_27"><img id="zone_31" alt=" - - - " border="0" src="'.ACYMAILING_MEDIA_URL.'templates/newsletter-4/images/bottom.png"></td>
				</tr>
			</tbody>
		</table>
		</div>';
	}

	function getJoomlaNotifications($conftemplate){
		$data = array();

		if(!acymailing_level(1)) return $data;

		$JNotifications = acymailing_loadResultArray('SELECT LCASE(`alias`) FROM `#__acymailing_mail` WHERE `type` = \'joomlanotification\'');

		if(ACYMAILING_J30){
			if(!in_array(strtolower('joomla-directRegNoPwd-j3'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_BODY_NOPW|param1|param2|param3}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-directRegNoPwd-j3', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-directReg-j3'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_BODY|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-directReg-j3', 1, ".$conftemplate.",NULL,'')";
			}
		}elseif(ACYMAILING_J16){
			if(!in_array(strtolower('joomla-directReg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_BODY|param1|param2|param3}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-directReg', 1, ".$conftemplate.",NULL,'')";
			}
		}
		if(ACYMAILING_J16){
			if(!in_array(strtolower('joomla-ownActivReg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_WITH_ACTIVATION_BODY|param1|param2|param3|param4|param5|param6}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-ownActivReg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-ownActivRegNoPwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_WITH_ACTIVATION_BODY_NOPW|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-ownActivRegNoPwd', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-adminActivReg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_WITH_ADMIN_ACTIVATION_BODY|param1|param2|param3|param4|param5|param6}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-adminActivReg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-adminActivRegNoPwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_WITH_ADMIN_ACTIVATION_BODY_NOPW|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-adminActivRegNoPwd', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-usernameReminder'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_USERNAME_REMINDER_SUBJECT|param1}', '{trans:COM_USERS_EMAIL_USERNAME_REMINDER_BODY|param1|param2|param3}');
				$data[] = "('{trans:COM_USERS_EMAIL_USERNAME_REMINDER_SUBJECT|param1}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-usernameReminder', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-confirmActiv'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_SUBJECT|param1|param2}', '{trans:COM_USERS_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_BODY|param1|param2|param3}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_SUBJECT|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-confirmActiv', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-resetPwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_PASSWORD_RESET_SUBJECT|param1}', '{trans:COM_USERS_EMAIL_PASSWORD_RESET_BODY|param1|param2|param3}');
				$data[] = "('{trans:COM_USERS_EMAIL_PASSWORD_RESET_SUBJECT|param1}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-resetPwd', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-regByAdmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:PLG_USER_JOOMLA_NEW_USER_EMAIL_SUBJECT}', '{trans:PLG_USER_JOOMLA_NEW_USER_EMAIL_BODY|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:PLG_USER_JOOMLA_NEW_USER_EMAIL_SUBJECT}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-regByAdmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-regNotifAdmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_USERS_EMAIL_REGISTERED_NOTIFICATION_TO_ADMIN_BODY|param1|param2|param3}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-regNotifAdmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-regNotifAdminActiv'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_USERS_EMAIL_ACTIVATE_WITH_ADMIN_ACTIVATION_SUBJECT|param2|param1}', '{trans:COM_USERS_EMAIL_ACTIVATE_WITH_ADMIN_ACTIVATION_BODY|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_USERS_EMAIL_ACTIVATE_WITH_ADMIN_ACTIVATION_SUBJECT|param2|param1}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-regNotifAdminActiv', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-frontsendarticle'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{senderSubject}', '{trans:COM_MAILTO_EMAIL_MSG|param1|param2|param3|param4}');
				$data[] = "('{senderSubject}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-frontsendarticle', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-directreg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR_WELCOME|param2}', '{trans:COM_COMMUNITY_EMAIL_REGISTRATION_ACCOUNT_DETAILS|param1|param2|param3|param4}');
				$data[] = "('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR_WELCOME|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-directreg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-ownactivreg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param1|param2}', '{trans:COM_COMMUNITY_EMAIL_REGISTRATION_COMPLETED_REQUIRES_ACTIVATION|param1|param2|param3|param5}');
				$data[] = "('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-ownactivreg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-welcomeactiv'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR_WELCOME|param2}', '{trans:COM_COMMUNITY_EMAIL_REGISTRATION_ACCOUNT_DETAILS_REQUIRES_ACTIVATION|param1|param2|param3|param4}');
				$data[] = "('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR_WELCOME|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-welcomeactiv', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-regactivadmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param1|param2}', '{trans:COM_COMMUNITY_EMAIL_REGISTRATION_COMPLETED_REQUIRES_ADMIN_ACTIVATION|param1|param2|param3|param5}');
				$data[] = "('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-regactivadmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-notifadmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param3|param2}', '{trans:COM_COMMUNITY_SEND_MSG_ADMIN|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param3|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-notifadmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-notifadminactiv'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param3|param2}', '{trans:COM_COMMUNITY_USER_REGISTERED_NEEDS_APPROVAL|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_COMMUNITY_ACCOUNT_DETAILS_FOR|param3|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-notifadminactiv', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-notifactivated'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_SUBJECT|param1|param2}', '{trans:COM_COMMUNITY_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_BODY|param1|param2|param3}');
				$data[] = "('{trans:COM_COMMUNITY_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_SUBJECT|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-notifactivated', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('jomsocial-notifaccountparameters'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_COMMUNITY_USER_REGISTERED_WAITING_APPROVAL_TITLE|param2}', '{trans:COM_COMMUNITY_EMAIL_REGISTRATION|param1|param2|param3|param4}');
				$data[] = "('{trans:COM_COMMUNITY_USER_REGISTERED_WAITING_APPROVAL_TITLE|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'jomsocial-notifaccountparameters', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-directreg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_CCK_EMAIL_REGISTERED_BODY|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-directreg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-directregnopwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_CCK_EMAIL_REGISTERED_BODY_NOPW|param1|param2|param3}');
				$data[] = "('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-directregnopwd', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-notifadmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:ACY_DEFAULT_NOTIF_SUBJECT}', '{trans:COM_CCK_EMAIL_REGISTERED_NOTIFICATION_TO_ADMIN_BODY|param1|param2|param3}');
				$data[] = "('{trans:ACY_DEFAULT_NOTIF_SUBJECT}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-notifadmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-ownactivreg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_CCK_EMAIL_REGISTERED_WITH_ACTIVATION_BODY|param1|param2|param3|param4|param5|param6}');
				$data[] = "('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-ownactivreg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-ownactivregnopwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_CCK_EMAIL_REGISTERED_WITH_ACTIVATION_BODY_NOPW|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-ownactivregnopwd', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-adminactivreg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_CCK_EMAIL_REGISTERED_WITH_ADMIN_ACTIVATION_BODY|param1|param2|param3|param4|param5|param6}');
				$data[] = "('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-adminactivreg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('seblod-adminactivregnopwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', '{trans:COM_CCK_EMAIL_REGISTERED_WITH_ADMIN_ACTIVATION_BODY_NOPW|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:COM_CCK_EMAIL_ACCOUNT_DETAILS|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'seblod-adminactivregnopwd', 1, ".$conftemplate.",NULL,'')";
			}
		}else{
			if(!in_array(strtolower('joomla-directReg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:ACCOUNT DETAILS FOR|param1|param2}', '{trans:SEND_MSG|param1|param2|param3}');
				$data[] = "('{trans:ACCOUNT DETAILS FOR|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-directReg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-ownActivReg'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:ACCOUNT DETAILS FOR|param1|param2}', '{trans:SEND_MSG_ACTIVATE|param1|param2|param3|param4|param5|param6}');
				$data[] = "('{trans:ACCOUNT DETAILS FOR|param1|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-ownActivReg', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-usernameReminder'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:USERNAME_REMINDER_EMAIL_TITLE|param1}', '{trans:USERNAME_REMINDER_EMAIL_TEXT|param1|param2|param3}');
				$data[] = "('{trans:USERNAME_REMINDER_EMAIL_TITLE|param1}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-usernameReminder', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-resetPwd'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:PASSWORD_RESET_CONFIRMATION_EMAIL_TITLE|param1}', '{trans:PASSWORD_RESET_CONFIRMATION_EMAIL_TEXT|param1|param2|param3}');
				$data[] = "('{trans:PASSWORD_RESET_CONFIRMATION_EMAIL_TITLE|param1}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-resetPwd', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-regByAdmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:NEW_USER_MESSAGE_SUBJECT}', '{trans:NEW_USER_MESSAGE|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:NEW_USER_MESSAGE_SUBJECT}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-regByAdmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-regNotifAdmin'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{trans:ACCOUNT DETAILS FOR|param3|param2}', '{trans:SEND_MSG_ADMIN|param1|param2|param3|param4|param5}');
				$data[] = "('{trans:ACCOUNT DETAILS FOR|param3|param2}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-regNotifAdmin', 1, ".$conftemplate.",NULL,'')";
			}
			if(!in_array(strtolower('joomla-frontsendarticle'), $JNotifications)){
				$bodyNotif = $this->getFormatedNotification('{senderSubject}', '{trans:EMAIL_MSG|param1|param2|param3|param4}');
				$data[] = "('{senderSubject}', ".acymailing_escapeDB($bodyNotif).", '', 0, 'joomlanotification', 0, 'joomla-frontsendarticle', 1, ".$conftemplate.",NULL,'')";
			}
		}
		return $data;
	}

	function installMenu($code = ''){
		if(empty($code)) $code = acymailing_getLanguageTag();

		$path = acymailing_getLanguagePath(ACYMAILING_ROOT, $code).DS.$code.'.com_acymailing.ini';
		if(!file_exists($path) || strpos($path, $code.DS.$code) === false) return;
		$content = file_get_contents($path);
		if(empty($content)) return;

		$menuFileContent = 'COM_ACYMAILING="AcyMailing"'."\r\n";
		$menuFileContent .= 'ACYMAILING="AcyMailing"'."\r\n";
		$menuFileContent .= 'COM_ACYMAILING_CONFIGURATION="AcyMailing"'."\r\n";
		$menuStrings = array('USERS', 'LISTS', 'TEMPLATES', 'NEWSLETTERS', 'AUTONEWSLETTERS', 'CAMPAIGN', 'QUEUE', 'STATISTICS', 'CONFIGURATION', 'UPDATE_ABOUT', 'COM_ACYMAILING_ARCHIVE_VIEW_DEFAULT_TITLE', 'COM_ACYMAILING_FRONTSUBSCRIBER_VIEW_DEFAULT_TITLE', 'COM_ACYMAILING_LISTS_VIEW_DEFAULT_TITLE', 'COM_ACYMAILING_FRONTNEWSLETTER_VIEW_DEFAULT_TITLE', 'COM_ACYMAILING_USER_VIEW_DEFAULT_TITLE');
		foreach($menuStrings as $oneString){
			preg_match('#(\n|\r)(ACY_)?'.$oneString.'="(.*)"#i', $content, $matches);
			if(empty($matches[3])) continue;
			if(!ACYMAILING_J16){
				$menuFileContent .= 'COM_ACYMAILING.'.$oneString.'="'.$matches[3].'"'."\r\n";
			}else{
				$menuFileContent .= $oneString.'="'.$matches[3].'"'."\r\n";
			}
		}

		if(!ACYMAILING_J16){
			$menuPath = ACYMAILING_ROOT.'administrator'.DS.'language'.DS.$code.DS.$code.'.com_acymailing.menu.ini';
		}else{
			$menuPath = ACYMAILING_ROOT.'administrator'.DS.'language'.DS.$code.DS.$code.'.com_acymailing.sys.ini';
		}
		if(!acymailing_writeFile($menuPath, $menuFileContent)){
			acymailing_enqueueMessage(acymailing_translation_sprintf('FAIL_SAVE', $menuPath), 'error');
		}
	}

	function installTemplates(){
		$path = ACYMAILING_TEMPLATE;
		$dirs = acymailing_getFolders($path);

		$template = array();
		$order = 0;
		foreach($dirs as $oneTemplateDir){
			$order++;
			$description = '';
			$name = '';
			$body = '';
			$altbody = '';
			$readmore = '';
			$thumb = '';
			$premium = 0;
			$ordering = $order;
			$styles = array();
			$stylesheet = '';
			if(!@include($path.DS.$oneTemplateDir.DS.'install.php')) continue;
			$body = str_replace(array('src="./', 'src="../', 'src="images/'), array('src="'.ACYMAILING_MEDIA_URL.'templates/'.$oneTemplateDir.'/', 'src="'.ACYMAILING_MEDIA_URL.'templates/', 'src="'.ACYMAILING_MEDIA_URL.'templates/'.$oneTemplateDir.'/images/'), $body);

			$template[] = acymailing_escapeDB($oneTemplateDir).','.acymailing_escapeDB($name).','.acymailing_escapeDB($description).','.acymailing_escapeDB($body).','.acymailing_escapeDB($altbody).','.acymailing_escapeDB($premium).','.acymailing_escapeDB($ordering).','.acymailing_escapeDB(serialize($styles)).','.acymailing_escapeDB($stylesheet).','.acymailing_escapeDB($thumb).','.acymailing_escapeDB($readmore);
		}

		if(empty($template)) return true;

		try{
			$nbTemplates = acymailing_query("INSERT IGNORE INTO `#__acymailing_template` (`namekey`, `name`, `description`, `body`, `altbody`, `premium`, `ordering`, `styles`,`stylesheet`,`thumb`,`readmore`) VALUES (".implode('),(', $template).')');

			$lastId = acymailing_insertID();
		}catch(Exception $e){
			acymailing_enqueueMessage(substr(strip_tags($e->getMessage()), 0, 300).'...', 'error');
			$nbTemplates = null;
		}

		if(!empty($nbTemplates)){
			acymailing_enqueueMessage(acymailing_translation_sprintf('TEMPLATES_INSTALL', $nbTemplates), 'success');

			$templateClass = acymailing_get('class.template');
			for($i = $lastId; $i <= $lastId + count($template); $i++){
				$templateClass->createTemplateFile($i);
			}
		}
	}

	function initList(){

		$query = 'UPDATE IGNORE '.acymailing_table($this->cmsUserVars->table, false).' as b, '.acymailing_table('subscriber').' as a SET a.email = b.'.$this->cmsUserVars->email.', a.name = b.'.$this->cmsUserVars->name.' WHERE a.userid = b.'.$this->cmsUserVars->id.' AND a.userid > 0';
		acymailing_query($query);

		$query = 'INSERT IGNORE INTO `#__acymailing_subscriber` (`email`,`name`,`confirmed`,`userid`,`created`,`enabled`,`accept`,`html`) SELECT `'.$this->cmsUserVars->email.'`,`'.$this->cmsUserVars->name.'`,1-`'.$this->cmsUserVars->blocked.'`,`'.$this->cmsUserVars->id.'`,UNIX_TIMESTAMP(`'.$this->cmsUserVars->registered.'`),1-`'.$this->cmsUserVars->blocked.'`,1,1 FROM '.acymailing_table($this->cmsUserVars->table, false);
		acymailing_query($query);

		$nbLists = acymailing_loadResult('SELECT COUNT(*) FROM `#__acymailing_list`');

		if(!empty($nbLists)) return true;

		acymailing_query("INSERT INTO `#__acymailing_list` (`name`, `description`, `ordering`, `published`, `alias`, `color`, `visible`, `type`,`userid`) VALUES ('Newsletters','Receive our latest news','1','1','mailing_list','#3366ff','1','list',".(int)acymailing_currentUserId().")");
		$listid = acymailing_insertID();


		$time = time();
		acymailing_query('INSERT IGNORE INTO `#__acymailing_listsub` (`listid`, `subid`, `subdate`, `status`) SELECT '.$listid.', subid, '.$time.',1 FROM `#__acymailing_subscriber`');
	}


	function installBounceRules(){
		if(!acymailing_level(3)) return;

		if(acymailing_loadResult('SELECT COUNT(*) FROM #__acymailing_rules') > 0) return;


		$config = acymailing_config();
		if($config->get('reply_email') != $config->get('bounce_email')){
			$forwardEmail = strlen($config->get('reply_email')).':"'.$config->get('reply_email').'"';
		}else $forwardEmail = strlen($config->get('from_email')).':"'.$config->get('from_email').'"';

		$query = 'INSERT INTO `#__acymailing_rules` (`name`, `ordering`, `regex`, `executed_on`, `action_message`, `action_user`, `published`) VALUES ';
		$query .= '(\'ACY_RULE_ACTION\', 1, \'action *requ|verif\', \'a:1:{s:7:"subject";s:1:"1";}\', \'a:2:{s:6:"delete";s:1:"1";s:9:"forwardto";s:'.$forwardEmail.';}\', \'a:1:{s:3:"min";s:1:"0";}\', 1),';
		$query .= '(\'ACY_RULE_ACKNOWLEDGE\', 2, \'(out|away) *(of|from)|vacation|holiday|absen|congés|recept|acknowledg|thank you for\', \'a:1:{s:7:"subject";s:1:"1";}\', \'a:1:{s:6:"delete";s:1:"1";}\', \'a:1:{s:3:"min";s:1:"0";}\', 1),';
		$query .= '(\'ACY_RULE_LOOP\', 3, \'feedback|staff@hotmail.com|complaints@.{0,15}email-abuse.amazonses.com|complaint about message\', \'a:2:{s:10:"senderinfo";s:1:"1";s:7:"subject";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:2:{s:3:"min";s:1:"0";s:5:"unsub";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_LOOP_BODY\', 4, \'Feedback-Type.{1,5}abuse\', \'a:1:{s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:2:{s:3:"min";s:1:"0";s:5:"unsub";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_FULL\', 5, \'((mailbox|mailfolder|storage|quota|space|inbox) *(is)? *(over)? *(exceeded|size|storage|allocation|full|quota|maxi))|status(-code)? *(:|=)? *5\.2\.2|quota-issue|not *enough.{1,20}space|((over|exceeded|full|exhausted) *(allowed)? *(mail|storage|quota))\', \'a:2:{s:7:"subject";s:1:"1";s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:3:{s:5:"stats";s:1:"1";s:3:"min";s:1:"3";s:5:"block";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_GOOGLE\', 6, \'message *rejected *by *Google *Groups\',  \'a:1:{s:4:"body";s:1:"1";}\', \'a:2:{s:6:"delete";s:1:"1";s:9:"forwardto";s:'.$forwardEmail.';}\', \'a:2:{s:5:"stats";s:1:"1";s:3:"min";s:1:"0";}\', 1),';
		$query .= '(\'ACY_RULE_EXIST1\', 7, \'(Invalid|no such|unknown|bad|des?activated|inactive|unrouteable) *(mail|destination|recipient|user|address|person)|bad-mailbox|inactive-mailbox|not listed in.{1,20}directory|RecipNotFound|(user|mailbox|address|recipients?|host|account|domain) *(is|has been)? *(error|disabled|failed|unknown|unavailable|not *(found|available)|.{1,30}inactiv)|no *mailbox *here|user does.?n.t have.{0,30}account\', \'a:2:{s:7:"subject";s:1:"1";s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:3:{s:5:"stats";s:1:"1";s:3:"min";s:1:"0";s:5:"block";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_FILTERED\',8, \'blocked *by|block *list|look(ed)? *like *spam|spam-related|spam *detected| CXBL | CDRBL | IPBL | URLBL |(unacceptable|banned|offensive|filtered|blocked|unsolicited) *(content|message|e?-?mail)|service refused|(status(-code)?|554) *(:|=)? *5\.7\.1|administratively *denied|blacklisted *IP|policy *reasons|rejected.{1,10}spam|junkmail *rejected|throttling *constraints|exceeded.{1,10}max.{1,40}hour|comply with required standards|421 RP-00|550 SC-00|550 DY-00|550 OU-00\', \'a:1:{s:4:"body";s:1:"1";}\', \'a:2:{s:6:"delete";s:1:"1";s:9:"forwardto";s:'.$forwardEmail.';}\', \'a:2:{s:5:"stats";s:1:"1";s:3:"min";s:1:"0";}\', 1),';
		$query .= '(\'ACY_RULE_EXIST2\', 9, \'status(-code)? *(:|=)? *5\.(1\.[1-6]|0\.0|4\.[0123467])|recipient *address *rejected|does *not *like *recipient\', \'a:2:{s:7:"subject";s:1:"1";s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:3:{s:5:"stats";s:1:"1";s:3:"min";s:1:"0";s:5:"block";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_DOMAIN\', 10, \'No.{1,10}MX *(record|host)|host *does *not *receive *any *mail|bad-domain|connection.{1,10}mail.{1,20}fail|domain.{1,10}not *exist|fail.{1,10}establish *connection\', \'a:2:{s:7:"subject";s:1:"1";s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:3:{s:5:"stats";s:1:"1";s:3:"min";s:1:"0";s:5:"block";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_TEMPORAR\', 11, \'has.*been.*delayed|delayed *mail|message *delayed|message-expired|temporar(il)?y *(failure|unavailable|disable|offline|unable)|deferred|delayed *([0-9]*) *(hour|minut)|possible *mail *loop|too *many *hops|delivery *time *expired|Action: *delayed|status(-code)? *(:|=)? *4\.4\.6|will continue to be attempted\', \'a:2:{s:7:"subject";s:1:"1";s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:3:{s:5:"stats";s:1:"1";s:3:"min";s:1:"3";s:5:"block";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_PERMANENT\', 12, \'failed *permanently|permanent.{1,20}(failure|error)|not *accepting *(any)? *mail|does *not *exist|no *valid *route|delivery *failure\', \'a:2:{s:7:"subject";s:1:"1";s:4:"body";s:1:"1";}\', \'a:3:{s:4:"save";s:1:"1";s:6:"delete";s:1:"1";s:9:"forwardto";s:0:"";}\', \'a:3:{s:5:"stats";s:1:"1";s:3:"min";s:1:"0";s:5:"block";s:1:"1";}\', 1),';
		$query .= '(\'ACY_RULE_ACKNOWLEDGE_BODY\', 13, \'vacances|holiday|vacation|absen|urlaub\', \'a:1:{s:4:"body";s:1:"1";}\', \'a:1:{s:6:"delete";s:1:"1";}\', \'a:1:{s:3:"min";s:1:"0";}\', 1),';
		$query .= '(\'ACY_RULE_FINAL\', 14, \'.\', \'a:2:{s:10:"senderinfo";s:1:"1";s:7:"subject";s:1:"1";}\', \'a:2:{s:6:"delete";s:1:"1";s:9:"forwardto";s:'.$forwardEmail.';}\', \'a:1:{s:3:"min";s:1:"0";}\', 1)';

		acymailing_query($query);

		$newConfig = new stdClass();
		$newConfig->bouncerulesversion = $this->bouncerulesversion;
		$config->save($newConfig);
	}


	function installExtensions(){
		$path = ACYMAILING_BACK.'extensions';
		$dirs = acymailing_getFolders($path);

		if(!ACYMAILING_J16){
			if(file_exists(ACYMAILING_BACK.'config.xml')) acymailing_deleteFile(ACYMAILING_BACK.'config.xml');

			$query = "SELECT CONCAT(`folder`,`element`) FROM #__plugins WHERE `folder` = 'acymailing' OR `element` LIKE '%acy%'";
			$query .= " UNION SELECT `module` FROM #__modules WHERE `module` LIKE '%acymailing%'";
			$existingExtensions = acymailing_loadResultArray($query);
		}else{

			$existingExtensions = acymailing_loadResultArray("SELECT CONCAT(`folder`,`element`) FROM #__extensions WHERE `folder` = 'acymailing' OR `element` LIKE '%acy%' OR `name` LIKE '%acy%'");
		}
		
		$plugins = array();
		$modules = array();
		$extensioninfo = array(); //array('name','ordering','required table or published')
		$extensioninfo['mod_acymailing'] = array('AcyMailing Module');
		$extensioninfo['plg_acymailing_share'] = array('AcyMailing : share on social networks', 20, 1);
		$extensioninfo['plg_acymailing_contentplugin'] = array('AcyMailing : trigger Joomla Content plugins', 15, 0);
		$extensioninfo['plg_acymailing_managetext'] = array('AcyMailing Manage text', 10, 1);
		$extensioninfo['plg_acymailing_tablecontents'] = array('AcyMailing table of contents generator', 5, 1);
		$extensioninfo['plg_acymailing_online'] = array('AcyMailing Tag : Website links', 6, 1);
		$extensioninfo['plg_acymailing_stats'] = array('AcyMailing : Statistics Plugin', 50, 1);
		$extensioninfo['plg_acymailing_tagcbuser'] = array('AcyMailing Tag : CB User information', 4, '#__comprofiler');
		$extensioninfo['plg_acymailing_tagcontent'] = array('AcyMailing Tag : content insertion', 11, 1);
		$extensioninfo['plg_acymailing_tagmodule'] = array('AcyMailing Tag : Insert a Module', 12, 1);
		$extensioninfo['plg_acymailing_tagsubscriber'] = array('AcyMailing Tag : Subscriber information', 2, 1);
		$extensioninfo['plg_acymailing_tagsubscription'] = array('AcyMailing Tag : Manage the Subscription', 1, 1);
		$extensioninfo['plg_acymailing_tagtime'] = array('AcyMailing Tag : Date / Time', 5, 1);
		$extensioninfo['plg_acymailing_taguser'] = array('AcyMailing Tag : Joomla User Information', 3, 1);
		$extensioninfo['plg_acymailing_template'] = array('AcyMailing Template Class Replacer', 52, 1);
		$extensioninfo['plg_acymailing_urltracker'] = array('AcyMailing : Handle Click tracking part1', 24, 1);
		$extensioninfo['plg_system_acymailingurltracker'] = array('AcyMailing : Handle Click tracking part2', 1, 1);
		$extensioninfo['plg_system_regacymailing'] = array('AcyMailing : (auto)Subscribe during Joomla registration', 0, 1);
		$extensioninfo['plg_editors_acyeditor'] = array('AcyMailing Editor', 5, 1);
		$extensioninfo['plg_acymailing_geolocation'] = array('AcyMailing Geolocation : Tag and filter', 10, 1);
		$extensioninfo['plg_acymailing_plginboxactions'] = array('AcyMailing : Inbox actions', 0, 1);
		$extensioninfo['plg_system_acymailingclassmail'] = array('Override Joomla mailing system', 1, 0);
		$extensioninfo['plg_acymailing_calltoaction'] = array('AcyMailing Tag : Call to action', 22, 1);
		$extensioninfo['plg_system_jceacymailing'] = array('AcyMailing JCE integration', 23, 1);
		$extensioninfo['plg_system_sendinarticle'] = array('AcyMailing : Send mail while editing an article', 10, 1);

		$listTables = acymailing_getTableList();
		$fromVersion = acymailing_getVar('cmd', 'fromversion');

		foreach($dirs as $oneDir){
			$arguments = explode('_', $oneDir);
			if(!isset($extensioninfo[$oneDir])) continue;

			$additionalInfo = new stdClass();
			if($arguments[0] == 'mod') $arguments[2] = $oneDir;
			if(ACYMAILING_J16 && !empty($arguments[2]) && file_exists($path.DS.$oneDir.DS.$arguments[2].'.xml')){
				$xmlFile = simplexml_load_file($path.DS.$oneDir.DS.$arguments[2].'.xml');
				$additionalInfo->version = (string)$xmlFile->version;
				$additionalInfo->author = (string)$xmlFile->author;
				$additionalInfo->creationDate = (string)$xmlFile->creationDate;

				$extension = $arguments[0] == 'mod' ? $oneDir : $arguments[1].$arguments[2];

				if(in_array($extension, $existingExtensions) && version_compare($fromVersion, '4.8.1', '<')){
					$query = "UPDATE `#__extensions` SET `manifest_cache` = ".acymailing_escapeDB(json_encode($additionalInfo))." WHERE (type = ";
					if($arguments[0] == 'mod'){
						$query .= "'module' AND `element` = ".acymailing_escapeDB($oneDir).")";
					}else{
						$query .= "'plugin' AND folder = ".acymailing_escapeDB($arguments[1])." AND `element` = ".acymailing_escapeDB($arguments[2]).")";
					}
					acymailing_query($query);
				}
			}

			if($arguments[0] == 'plg'){
				$newPlugin = new stdClass();
				if(!empty($additionalInfo)) $newPlugin->additionalInfo = json_encode($additionalInfo);
				$newPlugin->name = $oneDir;
				if(isset($extensioninfo[$oneDir][0])) $newPlugin->name = $extensioninfo[$oneDir][0];
				$newPlugin->type = 'plugin';
				$newPlugin->folder = $arguments[1];
				$newPlugin->element = $arguments[2];
				$newPlugin->enabled = 1;
				if(isset($extensioninfo[$oneDir][2])){
					if(is_numeric($extensioninfo[$oneDir][2])){
						$newPlugin->enabled = $extensioninfo[$oneDir][2];
					}elseif(!in_array(str_replace('#__', acymailing_getPrefix(), $extensioninfo[$oneDir][2]), $listTables)) $newPlugin->enabled = 0;
				}
				$newPlugin->params = '{}';
				$newPlugin->ordering = 0;
				if(isset($extensioninfo[$oneDir][1])) $newPlugin->ordering = $extensioninfo[$oneDir][1];

				if(!acymailing_createDir(ACYMAILING_ROOT.'plugins'.DS.$newPlugin->folder)) continue;

				if(!ACYMAILING_J16){
					$destinationFolder = ACYMAILING_ROOT.'plugins'.DS.$newPlugin->folder;
				}else{
					$destinationFolder = ACYMAILING_ROOT.'plugins'.DS.$newPlugin->folder.DS.$newPlugin->element;
					if(!acymailing_createDir($destinationFolder)) continue;
				}

				if(!$this->copyFolder($path.DS.$oneDir, $destinationFolder)) continue;

				if(in_array($newPlugin->folder.$newPlugin->element, $existingExtensions)) continue;

				$plugins[] = $newPlugin;
			}elseif($arguments[0] == 'mod'){
				$newModule = new stdClass();
				if(!empty($additionalInfo)) $newModule->additionalInfo = json_encode($additionalInfo);
				$newModule->name = $oneDir;
				if(isset($extensioninfo[$oneDir][0])) $newModule->name = $extensioninfo[$oneDir][0];
				$newModule->type = 'module';
				$newModule->folder = '';
				$newModule->element = $oneDir;
				$newModule->enabled = 1;
				$newModule->params = '{}';
				$newModule->ordering = 0;
				if(isset($extensioninfo[$oneDir][1])) $newModule->ordering = $extensioninfo[$oneDir][1];

				$destinationFolder = ACYMAILING_ROOT.'modules'.DS.$oneDir;

				if(!acymailing_createDir($destinationFolder)) continue;

				if(!$this->copyFolder($path.DS.$oneDir, $destinationFolder)) continue;

				if(in_array($newModule->element, $existingExtensions)) continue;

				$modules[] = $newModule;
			}else{
				acymailing_enqueueMessage('Could not handle : '.$oneDir, 'error');
			}
		}

		if(!empty($this->errors)) acymailing_enqueueMessage($this->errors, 'error');

		if(!ACYMAILING_J16){
			$extensions = $plugins;
		}else{
			$extensions = array_merge($plugins, $modules);
		}

		$success = array();
		if(!empty($extensions)){
			if(!ACYMAILING_J16){
				$queryExtensions = 'INSERT INTO `#__plugins` (`name`,`element`,`folder`,`published`,`ordering`) VALUES ';
			}else{
				$queryExtensions = 'INSERT INTO `#__extensions` (`name`,`element`,`folder`,`enabled`,`ordering`,`type`,`access`,`manifest_cache`,`client_id`,`params`) VALUES ';
			}

			foreach($extensions as $oneExt){
				$queryExtensions .= '('.acymailing_escapeDB($oneExt->name).','.acymailing_escapeDB($oneExt->element).','.acymailing_escapeDB($oneExt->folder).','.$oneExt->enabled.','.$oneExt->ordering;
				if(ACYMAILING_J16) $queryExtensions .= ','.acymailing_escapeDB($oneExt->type).',1,'.acymailing_escapeDB(!empty($oneExt->additionalInfo) ? $oneExt->additionalInfo : '').",0,'{}'";
				$queryExtensions .= '),';
				if($oneExt->type != 'module') $success[] = acymailing_translation_sprintf('PLUG_INSTALLED', $oneExt->name);
			}
			$queryExtensions = trim($queryExtensions, ',');

			acymailing_query($queryExtensions);
		}

		if(!empty($modules)){
			foreach($modules as $oneModule){
				if(!ACYMAILING_J16){
					$queryModule = 'INSERT INTO `#__modules` (`title`,`position`,`published`,`module`) VALUES ';
					$queryModule .= '('.acymailing_escapeDB($oneModule->name).",'left',0,".acymailing_escapeDB($oneModule->element).")";
				}else{
					$queryModule = 'INSERT INTO `#__modules` (`title`,`position`,`published`,`module`,`access`,`language`,`client_id`,`params`) VALUES ';
					$queryModule .= '('.acymailing_escapeDB($oneModule->name).",'position-7',0,".acymailing_escapeDB($oneModule->element).",1,'*',0,'{}')";
				}
				acymailing_query($queryModule);
				$moduleId = acymailing_insertID();

				acymailing_query('INSERT IGNORE INTO `#__modules_menu` (`moduleid`,`menuid`) VALUES ('.$moduleId.',0)');

				$success[] = acymailing_translation_sprintf('MODULE_INSTALLED', $oneModule->name);
			}
		}

		if(ACYMAILING_J16){
			acymailing_query("UPDATE `#__extensions` SET `access` = 1 WHERE ( `folder` = 'acymailing' OR `element` LIKE '%acymailing%' ) AND `type` = 'plugin'");
		}

		$this->cleanPluginCache();

		if(!empty($success)) acymailing_enqueueMessage($success, 'success');
	}

	function copyFolder($from, $to){
		$return = true;

		$allFiles = acymailing_getFiles($from);
		foreach($allFiles as $oneFile){
			if(file_exists($to.DS.'index.html') AND $oneFile == 'index.html') continue;
			if(acymailing_copyFile($from.DS.$oneFile, $to.DS.$oneFile) !== true){
				$this->errors[] = 'Could not copy the file from '.$from.DS.$oneFile.' to '.$to.DS.$oneFile;
				$return = false;
			}
			if(ACYMAILING_J30 && substr($oneFile, -4) == '.xml'){
				$data = file_get_contents($to.DS.$oneFile);
				if(strpos($data, '<install ') !== false){
					$data = str_replace(array('<install ', '</install>', 'version="1.5"', '<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">'), array('<extension ', '</extension>', 'version="2.5"', ''), $data);
					acymailing_writeFile($to.DS.$oneFile, $data);
				}
			}
		}
		$allFolders = acymailing_getFolders($from);
		if(!empty($allFolders)){
			foreach($allFolders as $oneFolder){
				if(!acymailing_createDir($to.DS.$oneFolder)) continue;
				if(!$this->copyFolder($from.DS.$oneFolder, $to.DS.$oneFolder)) $return = false;
			}
		}
		return $return;
	}

	public function cleanPluginCache(){
		if(!ACYMAILING_J16 || !class_exists('JCache')) return;

		$options = array('defaultgroup' => 'com_plugins', 'cachebase' => acymailing_getCMSConfig('cache_path', ACYMAILING_ROOT.'cache'));

		$cache = JCache::getInstance('callback', $options);
		$cache->clean();

		$resultsTrigger = acymailing_trigger('onContentCleanCache', $options);
	}

	function installLanguages($output = true){
		$siteLanguages = acymailing_getLanguages();
		if(!empty($siteLanguages[ACYMAILING_DEFAULT_LANGUAGE])) unset($siteLanguages[ACYMAILING_DEFAULT_LANGUAGE]);

		$installedLanguages = array_keys($siteLanguages);
		if(empty($installedLanguages)) return;

		if(!$output) {
			$newConfig = new stdClass();
			$newConfig->installlang = implode(',', $installedLanguages);
			$config = acymailing_config();
			$config->save($newConfig);
			return;
		}
		
		$js = '
			var xhr = new XMLHttpRequest();
			xhr.open("GET", "' . acymailing_prepareAjaxURL('file') . '&task=installLanguages&languages=' . implode(',', $installedLanguages) . '");
			xhr.onload = function(){
				container = document.getElementById("acymailing_div");
				container.innerHTML = xhr.responseText+container.innerHTML;
			};
			xhr.send();';
		acymailing_addScript(true, $js);
	}
}
helpers/queue.php000060400000033770152455705230010061 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyqueueHelper{

	var $mailid = 0;
	var $report = true;
	var $send_limit = 0;
	var $finish = false;
	var $error = false;
	var $nbprocess = 0;
	var $start = 0;
	var $stoptime = 0;
	var $successSend = 0;
	var $errorSend = 0;
	var $consecutiveError = 0;
	var $messages = array();
	var $pause = 0;
	var $config;
	var $listsubClass;
	var $subClass;
	var $mod_security2 = false;
	var $obend = 0;
	var $emailtypes = array();

	public function __construct(){
		$this->config = acymailing_config();
		$this->subClass = acymailing_get('class.subscriber');
		$this->listsubClass = acymailing_get('class.listsub');
		$this->listsubClass->checkAccess = false;
		$this->listsubClass->sendNotif = false;
		$this->listsubClass->sendConf = false;

		$this->send_limit = (int)$this->config->get('queue_nbmail', 40);

		acymailing_increasePerf();

		@ini_set('default_socket_timeout', 10);

		@ignore_user_abort(true);

		$timelimit = intval(ini_get('max_execution_time'));
		if(empty($timelimit)) $timelimit = 600;

		$calculatedTimeout = $this->config->get('max_execution_time');
		if(!empty($calculatedTimeout)) $timelimit = $calculatedTimeout;

		if(!empty($timelimit)){
			$this->stoptime = time() + $timelimit - 4;
		}
	}

	public function process(){

		$queueClass = acymailing_get('class.queue');
		$queueClass->emailtypes = $this->emailtypes;
		$queueElements = $queueClass->getReady($this->send_limit, $this->mailid);

		if(empty($queueElements)){
			$this->finish = true;
			if($this->report){
				acymailing_display('<a href="'.acymailing_completeLink('queue').'" target="_blank">'.acymailing_translation('NO_PROCESS').'</a>', 'warning');
			}
			return true;
		}

		if($this->report){
			if(function_exists('apache_get_modules')){
				$modules = apache_get_modules();
				$this->mod_security2 = in_array('mod_security2', $modules);
			}

			@ini_set('output_buffering', 'off');
			@ini_set('zlib.output_compression', 0);

			if(!headers_sent()){
				while(ob_get_level() > 0 && $this->obend++ < 3){
					@ob_end_flush();
				}
			}

			$disp = '<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8" />';
			$disp .= '<title>'.acymailing_translation('SEND_PROCESS').'</title>';
			$disp .= '<style>body{font-size:12px;font-family: Arial,Helvetica,sans-serif;}</style></head><body>';
			$disp .= '<div style="margin-bottom: 18px;padding: 8px !important; background-color: #fcf8e3; border: 1px solid #fbeed5; border-radius: 4px;"><p style="margin:0;">'.acymailing_translation('ACY_DONT_CLOSE').'</p></div>';
			$disp .= "<div style='display: inline;background-color : white;border : 1px solid grey; padding : 3px;font-size:14px'>";
			$disp .= "<span id='divpauseinfo' style='padding:10px;margin:5px;font-size:16px;font-weight:bold;display:none;background-color:black;color:white;'> </span>";
			$disp .= acymailing_translation('SEND_PROCESS').': <span id="counter" >'.$this->start.'</span> / '.$this->total;
			$disp .= '</div>';
			$disp .= "<div id='divinfo' style='display:none; position:fixed; bottom:3px;left:3px;background-color : white; border : 1px solid grey; padding : 3px;'> </div>";
			$disp .= '<br /><br />';
			$url = acymailing_completeLink('send&task=continuesend&mailid='.$this->mailid.'&totalsend='.$this->total, true, true).'&alreadysent=';
			$disp .= '<script type="text/javascript" language="javascript">';
			$disp .= 'var mycounter = document.getElementById("counter");';
			$disp .= 'var divinfo = document.getElementById("divinfo");
					var divpauseinfo = document.getElementById("divpauseinfo");
					function setInfo(message){ divinfo.style.display = \'block\';divinfo.innerHTML=message; }
					function setPauseInfo(nbpause){ divpauseinfo.style.display = \'\';divpauseinfo.innerHTML=nbpause;}
					function setCounter(val){ mycounter.innerHTML=val;}
					var scriptpause = '.intval($this->pause).';
					function handlePause(){
						setPauseInfo(scriptpause);
						if(scriptpause > 0){
							scriptpause = scriptpause - 1;
							setTimeout(\'handlePause()\',1000);
						}else{
							document.location.href=\''.$url.'\'+mycounter.innerHTML;
						}
					}
					</script>';
			echo $disp;
			if(function_exists('ob_flush')) @ob_flush();
			if(!$this->mod_security2) @flush();
		}//endifreport

		$mailHelper = acymailing_get('helper.mailer');
		$mailHelper->report = false;
		if($this->config->get('smtp_keepalive', 1) || in_array($this->config->get('mailer_method'), array('elasticemail'))) $mailHelper->SMTPKeepAlive = true;

		$queueDelete = array();
		$queueUpdate = array();
		$statsAdd = array();
		$actionSubscriber = array();

		$maxTry = (int)$this->config->get('queue_try', 0);

		$currentMail = $this->start;
		$this->nbprocess = 0;

		if(count($queueElements) < $this->send_limit){
			$this->finish = true;
		}

		foreach($queueElements as $oneQueue){
			$currentMail++;
			$this->nbprocess++;
			if($this->report){
				echo '<script type="text/javascript" language="javascript">setCounter('.$currentMail.')</script>';
				if(function_exists('ob_flush')) @ob_flush();
				if(!$this->mod_security2){
					@flush();
				}
			}

			$result = $mailHelper->sendOne($oneQueue->mailid, $oneQueue);

			$queueDeleteOk = true;
			$otherMessage = '';

			if($result){
				$this->successSend++;
				$this->consecutiveError = 0;
				$queueDelete[$oneQueue->mailid][] = $oneQueue->subid;
				$statsAdd[$oneQueue->mailid][1][(int)$mailHelper->sendHTML][] = $oneQueue->subid;

				$queueDeleteOk = $this->_deleteQueue($queueDelete);
				$queueDelete = array();

				if($this->nbprocess % 10 == 0){
					$this->statsAdd($statsAdd);
					$this->_queueUpdate($queueUpdate);
					$statsAdd = array();
					$queueUpdate = array();
				}
			}else{
				$this->errorSend++;

				$newtry = false;
				if(in_array($mailHelper->errorNumber, $mailHelper->errorNewTry)){
					if(empty($maxTry) OR $oneQueue->try < $maxTry - 1){
						$newtry = true;
						$otherMessage = acymailing_translation_sprintf('QUEUE_NEXT_TRY', 60);
					}
					if($mailHelper->errorNumber == 1) $this->consecutiveError++;
					if($this->consecutiveError == 2) sleep(1);
				}

				if(!$newtry){
					$queueDelete[$oneQueue->mailid][] = $oneQueue->subid;
					$statsAdd[$oneQueue->mailid][0][(int)@$mailHelper->sendHTML][] = $oneQueue->subid;
					if($mailHelper->errorNumber == 1 AND $this->config->get('bounce_action_maxtry')){
						$queueDeleteOk = $this->_deleteQueue($queueDelete);
						$queueDelete = array();
						$otherMessage .= $this->_subscriberAction($oneQueue->subid);
					}
				}else{
					$queueUpdate[$oneQueue->mailid][] = $oneQueue->subid;
				}
			}

			$messageOnScreen = '[ ID '.$oneQueue->mailid.'] '.$mailHelper->reportMessage;
			if(!empty($otherMessage)) $messageOnScreen .= ' => '.$otherMessage;
			$this->_display($messageOnScreen, $result, $currentMail);

			if(!$queueDeleteOk){
				$this->finish = true;
				break;
			}

			if(!empty($this->stoptime) AND $this->stoptime < time()){
				$this->_display(acymailing_translation('SEND_REFRESH_TIMEOUT'));
				if($this->nbprocess < count($queueElements)) $this->finish = false;
				break;
			}

			if($this->consecutiveError > 3 AND $this->successSend > 3){
				$this->_display(acymailing_translation('SEND_REFRESH_CONNECTION'));
				break;
			}

			if($this->consecutiveError > 5 OR connection_aborted()){
				$this->finish = true;
				break;
			}
		}

		$this->_deleteQueue($queueDelete);
		$this->statsAdd($statsAdd);
		$this->_queueUpdate($queueUpdate);

		if($mailHelper->SMTPKeepAlive) $mailHelper->smtpClose();

		if(!empty($this->total) AND $currentMail >= $this->total){
			$this->finish = true;
		}

		if($this->consecutiveError > 5){
			$this->_handleError();
			return false;
		}

		if($this->report && !$this->finish){
			echo '<script type="text/javascript" language="javascript">handlePause();</script>';
		}

		if($this->report){
			echo "</body></html>";
			while($this->obend-- > 0){
				ob_start();
			}
			exit;
		}

		return true;
	}

	private function _deleteQueue($queueDelete){
		if(empty($queueDelete)) return true;
		$status = true;

		foreach($queueDelete as $mailid => $subscribers){
			$nbsub = count($subscribers);
			$query = 'DELETE FROM '.acymailing_table('queue').' WHERE mailid = '.intval($mailid).' AND subid IN ('.implode(',', $subscribers).') LIMIT '.$nbsub;
			$res = acymailing_query($query);
			if($res === false){
				$status = false;
				$this->_display(acymailing_getDBError());
			}else{
				$nbdeleted = $res;
				if($nbdeleted != $nbsub){
					$status = false;
					$this->_display($nbdeleted < $nbsub ? acymailing_translation('QUEUE_DOUBLE') : $nbdeleted.' emails deleted from the queue whereas we only have '.$nbsub.' subscribers');
				}
			}
		}

		return $status;
	}


	public function statsAdd($statsAdd){

		if(empty($statsAdd)) return true;

		$time = time();


		$subids = array();

		foreach($statsAdd as $mailid => $infos){
			$mailid = intval($mailid);

			foreach($infos as $status => $infosSub){
				foreach($infosSub as $html => $subscribers){

					$query = 'INSERT INTO '.acymailing_table('userstats').' (mailid,subid,html,sent,fail,senddate) VALUES ';
					$query .= '('.$mailid.','.implode(','.$html.','.($status ? 1 : 0).','.($status ? 0 : 1).','.$time.'),('.$mailid.',', $subscribers).','.$html.','.($status ? 1 : 0).','.($status ? 0 : 1).','.$time.') ';
					$query .= 'ON DUPLICATE KEY UPDATE html = '.$html.',sent = sent + '.($status ? 1 : 0).', fail = '.($status ? '0' : 'fail + 1').', senddate = '.$time;
					acymailing_query($query);

					if($status){
						$subids = array_merge($subids, $subscribers);
					}
				}
			}

			$nbhtml = empty($infos[1][1]) ? 0 : count($infos[1][1]); //nbhtml sent
			$nbtext = empty($infos[1][0]) ? 0 : count($infos[1][0]); //nbtext sent
			$nbfail = 0;
			if(!empty($infos[0][0])) $nbfail += count($infos[0][0]); //fail text version
			if(!empty($infos[0][1])) $nbfail += count($infos[0][1]); //fail html version

			$query = 'INSERT INTO '.acymailing_table('stats').' (mailid,senthtml,senttext,fail,senddate) ';
			$query .= 'VALUES ('.$mailid.','.$nbhtml.', '.$nbtext.', '.$nbfail.', '.$time.') ';
			$query .= 'ON DUPLICATE KEY UPDATE senthtml = senthtml + '.$nbhtml.', senttext = senttext + '.$nbtext.', fail = fail + '.$nbfail.', senddate = '.$time;
			acymailing_query($query);
		}

		if(!empty($subids)){
			acymailing_query('UPDATE #__acymailing_subscriber SET `lastsent_date` = '.time().' WHERE `subid` IN ('.implode(',', $subids).')');
		}
	}

	private function _queueUpdate($queueUpdate){
		if(empty($queueUpdate)) return true;

		$delay = 3600;


		foreach($queueUpdate as $mailid => $subscribers){
			$query = 'UPDATE '.acymailing_table('queue').' SET senddate = senddate + '.$delay.', try = try +1 WHERE mailid = '.$mailid.' AND subid IN ('.implode(',', $subscribers).')';
			acymailing_query($query);
		}
	}

	private function _handleError(){
		$this->finish = true;
		$message = acymailing_translation('SEND_STOPED');
		$message .= '<br />';
		$message .= acymailing_translation('SEND_KEPT_ALL');
		$message .= '<br />';
		if($this->report){
			if(empty($this->successSend) AND empty($this->start)){
				$message .= acymailing_translation('SEND_CHECKONE');
				$message .= '<br />';
				$message .= acymailing_translation('SEND_ADVISE_LIMITATION');
			}else{
				$message .= acymailing_translation('SEND_REFUSE');
				$message .= '<br />';
				if(!acymailing_level(1)){
					$message .= acymailing_translation('SEND_CONTINUE_COMMERCIAL');
				}else{
					$message .= acymailing_translation('SEND_CONTINUE_AUTO');
				}
			}
		}

		$this->_display($message);
	}

	private function _display($message, $status = '', $num = ''){
		$this->messages[] = strip_tags($message);

		if(!$this->report) return;

		if(!empty($num)){
			$color = $status ? 'green' : 'red';
			echo '<br />'.$num.' : <span style="color:'.$color.';">'.$message.'</span>';
		}else{
			echo '<script type="text/javascript" language="javascript">setInfo(\''.addslashes($message).'\')</script>';
		}
		if(function_exists('ob_flush')) @ob_flush();
		if(!$this->mod_security2){
			@flush();
		}
	}

	private function _subscriberAction($subid){
		if($this->config->get('bounce_action_maxtry') == 'delete'){
			$this->subClass->delete($subid);
			return ' user '.$subid.' deleted';
		}
		$listId = 0;
		if(in_array($this->config->get('bounce_action_maxtry'), array('sub', 'remove', 'unsub'))){
			$status = $this->subClass->getSubscriptionStatus($subid);
		}
		$message = '';
		switch($this->config->get('bounce_action_maxtry')){
			case 'sub' :
				$listId = $this->config->get('bounce_action_lists_maxtry');
				if(!empty($listId)){
					$message .= ' user '.$subid.' subscribed to '.$listId;
					if(empty($status[$listId])){
						$this->listsubClass->addSubscription($subid, array('1' => array($listId)));
					}elseif($status[$listId]->status != 1){
						$this->listsubClass->updateSubscription($subid, array('1' => array($listId)));
					}
				}
			case 'remove' :
				$unsubLists = array_diff(array_keys($status), array($listId));
				if(!empty($unsubLists)){
					$message .= ' user '.$subid.' removed from lists '.implode(',', $unsubLists);
					$this->listsubClass->removeSubscription($subid, $unsubLists);
				}else{
					$message .= ' user '.$subid.' not subscribed';
				}
				break;
			case 'unsub' :
				$unsubLists = array_diff(array_keys($status), array($listId));
				if(!empty($unsubLists)){
					$message .= ' user '.$subid.' unsubscribed from lists '.implode(',', $unsubLists);
					$this->listsubClass->updateSubscription($subid, array('-1' => $unsubLists));
				}else{
					$message .= ' user '.$subid.' not subscribed';
				}
				break;
			case 'delete' :
				$message .= ' user '.$subid.' deleted';
				$this->subClass->delete($subid);
				break;
			case 'block' :
				$message .= ' user '.$subid.' blocked';
				acymailing_query('UPDATE `#__acymailing_subscriber` SET `enabled` = 0 WHERE `subid` = '.intval($subid));
				acymailing_query('DELETE FROM `#__acymailing_queue` WHERE `subid` = '.intval($subid));
				break;
		}
		return $message;
	}
}
helpers/acyuser.php000060400000015724152455705230010407 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyuserHelper{

	function __construct($config = array()){
		global $acymailingCmsUserVars;
		$this->cmsUserVars = $acymailingCmsUserVars;
	}

	function getIP(){
		$ip = '';
		if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && strlen($_SERVER['HTTP_X_FORWARDED_FOR']) > 6){
			$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
		}elseif(!empty($_SERVER['HTTP_CLIENT_IP']) && strlen($_SERVER['HTTP_CLIENT_IP']) > 6){
			$ip = $_SERVER['HTTP_CLIENT_IP'];
		}elseif(!empty($_SERVER['REMOTE_ADDR']) && strlen($_SERVER['REMOTE_ADDR']) > 6){
			$ip = $_SERVER['REMOTE_ADDR'];
		}//endif

		return strip_tags($ip);
	}

	function validEmail($email, $extended = false){
		if(empty($email) || !is_string($email)) return false;

		if(!preg_match('/^'.acymailing_getEmailRegex().'$/i', $email)) return false;

		if(!$extended) return true;


		$config = acymailing_config();
		if($config->get('email_checkpopmailclient', false)){
			if(preg_match('#^.{1,5}@(gmail|yahoo|aol|hotmail|msn|ymail)#i', $email)){
				return false;
			}
		}

		if($config->get('email_checkdomain', false) && function_exists('getmxrr')){
			$domain = substr($email, strrpos($email, '@') + 1);
			$mxhosts = array();
			$checkDomain = getmxrr($domain, $mxhosts);
			if(!empty($mxhosts) && strpos($mxhosts[0], 'hostnamedoesnotexist')){
				array_shift($mxhosts);
			}
			if(!$checkDomain || empty($mxhosts)){
				$dns = @dns_get_record($domain, DNS_A);
				$domainChanged = true;
				foreach($dns as $oneRes){
					if(strtolower($oneRes['host']) == strtolower($domain)){
						$domainChanged = false;
					}
				}
				if(empty($dns) || $domainChanged){
					return false;
				}
			}
		}
		$object = new stdClass();
		$object->IP = $this->getIP();
		$object->emailAddress = $email;

		if($config->get('email_botscout', false)){
			$botscoutClass = new acybotscout();
			$botscoutClass->apiKey = $config->get('email_botscout_key');
			if(!$botscoutClass->getInfo($object)){
				return false;
			}
		}

		if($config->get('email_stopforumspam', false)){
			$email_stopforumspam = new acystopforumspam();
			if(!$email_stopforumspam->getInfo($object)){
				return false;
			}
		}

		if($config->get('email_iptimecheck', 0)){
			$lapseTime = time() - 7200;
			$nbUsers = acymailing_loadResult('SELECT COUNT(*) FROM #__acymailing_subscriber WHERE created > '.intval($lapseTime).' AND ip = '.acymailing_escapeDB($object->IP));
			if($nbUsers >= 3){
				return false;
			}
		}

		return true;
	}

	function getUserGroups($userid){
		if(ACYMAILING_J16){
			$groups = acymailing_loadObjectList('SELECT ug.id, ug.title FROM #__usergroups AS ug JOIN #__user_usergroup_map AS ugm ON ug.id = ugm.group_id WHERE ugm.user_id = '.intval($userid));
		}else{
			$groups = acymailing_loadObjectList('SELECT gid AS id, userType AS title FROM '.acymailing_table($this->cmsUserVars->table, false).' WHERE '.$this->cmsUserVars->id.' = '.intval($userid));
		}
		return $groups;
	}
}

class acybotscout{

	var $apiKey = '';
	var $conn;
	var $error = '';


	function connect(){
		if(is_resource($this->conn)){
			return true;
		}

		$this->conn = fsockopen('www.botscout.com', 80, $errno, $errstr, 20);
		if(!$this->conn){
			$this->error = "Could not open connection ".$errstr;
			return false;
		}
		return true;
	}

	function getInfo(&$object){
		if(!$this->connect()){
			return true;
		}
		$result = true;

		if(!empty($object->IP) && $object->IP != '127.0.0.1'){
			$data = 'ip='.$object->IP;
			$resIP = $this->sendInfo($data);
			$result = $this->checkXML($resIP, $object) && $result;
		}
		if(!empty($object->emailAddress)){
			$data = 'mail='.$object->emailAddress;
			$resAddress = $this->sendInfo($data);
			$result = $this->checkXML($resAddress, $object) && $result;
		}

		if(is_resource($this->conn)){
			fclose($this->conn);
		}

		return $result;
	}

	function sendInfo($data){
		$res = '';
		if(!empty($this->apiKey)){
			$data .= '&key='.$this->apiKey;
		}
		$data .= '&format=xml';
		$header = "GET /test/?".$data." HTTP/1.1\r\n";
		$header .= "Host: www.botscout.com \r\n";
		$header .= "Connection: keep-alive\r\n\r\n";
		fwrite($this->conn, $header);
		while(!feof($this->conn)){
			$res .= fread($this->conn, 1024);
			if(strpos($res, "</response>")){
				break;
			}
		}
		return $res;
	}

	function checkXML($res, $object){

		if(!preg_match('#<response.*</response>#Uis', $res, $results)){
			$this->error = 'There is an error while trying to get the xml could not find "<reponse>"';
			return true;
		}

		$xml = new SimpleXMLElement($results[0]);
		if($xml->matched == "Y" && $xml->test == 'IP'){
			$this->error .= 'There is a problem with the IP : '.$object->IP.' you used to do the registration ( Spam test positive )</br>'; // Check failed. Result indicates dangerous.
			return false;
		}
		if($xml->matched == "Y" && $xml->test == 'MAIL'){
			$this->error .= 'There is a problem with the email : '.$object->emailAddress.' you entered in the form ( Spam test positive )</br>';
			return false;
		}
		return true;
	}
}


class acystopforumspam{

	var $conn;
	var $error = '';

	function connect(){
		$this->conn = fsockopen('www.stopforumspam.com', 80, $errno, $errstr, 20);
		if(!$this->conn){
			$this->error = "Could not open connection ".$errstr;
			return false;
		}
		return true;
	}

	function getInfo(&$object){
		if(!$this->connect()){
			return true;
		}

		$IP = '';
		$emailAddress = '';

		if(empty($object->IP) && empty($object->emailAddress)){
			return true;
		}
		if(!empty($object->IP)){
			$IP = 'ip='.$object->IP.'&';
		}
		if(!empty($object->emailAddress)){
			$emailAddress = 'email='.$object->emailAddress.'&';
		}

		$data = $IP.$emailAddress;
		$data = trim($data, '&');
		$res = '';

		$header = "GET /api?".$data." HTTP/1.1\r\n";
		$header .= "Host: www.stopforumspam.com \r\n";
		$header .= "Connection: Close\r\n\r\n";
		fwrite($this->conn, $header);
		while(!feof($this->conn)){
			$res .= fread($this->conn, 1024);
		}

		if(!preg_match('#<response.*</response>#Uis', $res, $results)){
			$this->error = 'There is an error while trying to get the xml could not find "<reponse>"';
			return true;
		}

		$xml = new SimpleXMLElement($results[0]);

		$number = 0;
		foreach($xml->appears as $oneTest){
			if($oneTest == "yes"){
				if(strtolower($xml->type[$number]) == 'ip'){
					$problemSource = $object->IP;
				}
				if(strtolower($xml->type[$number]) == 'email'){
					$problemSource = $object->emailAddress;
				}
				$this->error .= 'There is a problem with the '.$xml->type[$number].' : '.$problemSource.' you used ( Spam test positive ) </br>'; // Check failed. Result indicates dangerous.
				return false;
			}elseif($oneTest == "no"){
			}else{
				$this->error = 'There is a problem with the result. Service down ? '; // Test returned neither positive or negative result. Service might be down?
				continue;
			}
			$number++;
		}
		return true;
	}
}

helpers/editor.php000060400000000450152455705230010210 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
acymailing_loadEditor();
helpers/index.html000060400000000054152455705230010206 0ustar00<html><body bgcolor="#FFFFFF"></body></html>helpers/zoho.php000060400000015301152455705230007702 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyzohoHelper {
		var $conn;
		var $authtoken = '';
	var $error = '';
	var $customView = '';
	var $fromIndex = '1';
	var $toIndex = '200';
	var $nbUserRead = 'notParsed';

	function connect() {
		if (is_resource($this->conn))
				return true;
		$this->conn = fsockopen('ssl://crm.zoho.com', 443, $errno, $errstr, 20);
		if (!$this->conn) {
			$this->error = 'Could not open connection ( error '.$errno.' : '.$errstr.' )';
			return false;
		}
		return true;
	}

	function sendInfo($userList){
		if (!$this->connect())	return false;
		$res = '';
		$config = acymailing_config();
		if(empty($this->customView)){
			$apiMethod = "getRecords";
			$cvName = "";
		} else{
			$apiMethod = "getCVRecords";
			$cvName = "&cvName=" . urlencode($this->customView);
		}
		$importNew = $config->get("zoho_importnew", 0);
		$importdate = $config->get('zoho_importdate',0);
		$lastModifiedTime = (!empty($importNew) && !empty($importdate))?"&lastModifiedTime=".urlencode($importdate):"";

		$indexSelect = "";
		if(!empty($this->fromIndex)) $indexSelect = "&fromIndex=".$this->fromIndex;
		if(!empty($this->toIndex)) $indexSelect .= "&toIndex=".$this->toIndex;

		$header = "GET /crm/private/xml/". urlencode($userList) ."/". $apiMethod ."?newFormat=1&authtoken=". urlencode($this->authtoken) . $cvName ."&scope=crmapi".$lastModifiedTime.$indexSelect ." HTTP/1.0\r\n";
		$header .= "Host: crm.zoho.com\r\n";
		$header .= "Content-Type: text/xml\r\n";
		$header .= "Connection: close\r\n\r\n";
		fwrite($this->conn, $header);
		while (!feof($this->conn)) {
			$res .= fread($this->conn, 1024);
		}
		if (!empty($res) && preg_match('#error#', $res) == 1) {
			preg_match('#<message>(.*)</message>#Ui', $res, $explodedResults);
			$this->error = $explodedResults[1];
			return false;
		}

		return $res;
	}

	function parseXML($res,$userList,$selectedFields,$confirmedUsers, $generateName) {
		$xml = substr($res,strpos($res,'<?xml'));
		try{
			$xml = new SimpleXMLElement($xml);
		} catch(Exception $err){
			$this->error = $err;
			return false;
		}
		$emailArray= array();

		$config = acymailing_config();
		$importNew = $config->get("zoho_importnew", 0);
		if(!empty($importNew) && !empty($xml->nodata->code) && $xml->nodata->code == 4422){
			$this->error .= 'There is no new or modified email Address in the '.$userList.' list';
			return $emailArray;
		}

		if(empty($xml->result->$userList->row)){
			$this->error .= 'There is no email Address in the '.$userList.' list';
			return $emailArray;
		}

		$nbUserRead = 0;
		foreach($xml->result->$userList->row as $key=>$row){
			$informations = new stdClass();
			$informations->zoholist = strtolower($userList[0]);
			$informations->confirmed = $confirmedUsers;
			foreach($selectedFields as $oneField){
				if(empty($oneField)) continue;
				 $informations->$oneField = '';
			}
			$title = '';
			$fname = '';
			$lname = '';
			foreach($row->FL as $key => $value){
				if(!in_array('name',$selectedFields) && $generateName == 'fromconcat'){
					if($value['val'] == 'Salutation') $title = (string)$value;
					if($value['val'] == 'First Name') $fname = (string)$value;
					if($value['val'] == 'Last Name') $lname = (string)$value;
				}
				if($value['val'] == 'Vendor Name' && empty($informations->name)) $informations->name = (string)$value;
				if($value['val'] == 'CONTACTID' || $value['val'] == 'LEADID' ||$value['val'] == 'VENDORID' )	$informations->zohoid =(string)$value;
				elseif($value['val'] == 'Email Opt Out'){
					if ($value == 'false')	$informations->accept=1;
					else $informations->accept=0;
				}
				elseif(!empty($selectedFields[(string)$value['val']]))
					$informations->{$selectedFields[(string)$value['val']]} = (string)$value;
				elseif($value['val'] == 'Email')
					$informations->email = (string)$value;
			}

			if(!in_array('name',$selectedFields) && $generateName == 'fromconcat'){
				$informations->name = (!empty($title)?$title:'');
				$informations->name .= (!empty($informations->name) && !empty($fname)?' ':'').$fname;
				$informations->name .= (!empty($informations->name) && !empty($lname)?' ':'').$lname;
			}
			if(!empty($informations->email)){
				$emailArray[]=$informations;
			}
			$nbUserRead++;
		}
		$this->nbUserRead = $nbUserRead;
		if(empty($emailArray) && $nbUserRead == 0) $this->error .= 'There is no email Address in the '.$userList.' list';
		return $emailArray;
	}

	function getFieldsRaw($userList){
		if (!$this->connect())	return false;
		$res = '';
		if(empty($userList)) $userList = 'Contacts';

		$header = "GET /crm/private/xml/". urlencode($userList) ."/getFields?authtoken=". urlencode($this->authtoken) ."&scope=crmapi HTTP/1.0\r\n";
		$header .= "Host: crm.zoho.com\r\n";
		$header .= "Content-Type: text/xml\r\n";
		$header .= "Connection: close\r\n\r\n";
		fwrite($this->conn, $header);

		while (!feof($this->conn)) {
			$res .= fread($this->conn, 1024);
		}
		if (!empty($res) && preg_match('#error#', $res) == 1) {
			preg_match('#<message>(.*)</message>#Ui', $res, $explodedResults);
			$this->error = $explodedResults[1];
			return false;
		}

		return $res;
	}

	function parseXMLFields($xmlToParse){
		$xmlToParse = substr($xmlToParse,strpos($xmlToParse,'<?xml'));
		try{
			$xml = new SimpleXMLElement($xmlToParse);
		} catch(Exception $err){
			$this->error = $err;
			return false;
		}

		if(empty($xml->section)){
			$this->error = acymailing_translation('ACY_NOFIELD');
			return false;
		}

		$zohoFields = array();
		foreach($xml->section as $key=>$oneSection){
			foreach($oneSection as $key=>$oneField){
				if(empty($oneField['label']) || $oneField['label'] == 'Email') continue;
				$zohoFields[] = $oneField['label'];
			}
		}
		return $zohoFields;
	}

	function subscribe($acyList, $zohoList){
		if(empty($acyList) || empty($zohoList)) return 0;

		$query = 'INSERT IGNORE INTO #__acymailing_listsub (subid, listid, status, subdate) SELECT subid,'.$acyList.',1,'.time().' FROM #__acymailing_subscriber WHERE zoholist = "'.strtolower($zohoList[0]).'"';
		return acymailing_query($query) !== false;
	}

	function deleteAddress(&$allSubid, $userList) {
		$subscriberClass= acymailing_get('class.subscriber');
		$IdArray = array();
		foreach($allSubid as $oneID){
			$IdArray[] = acymailing_escapeDB($oneID);
		}
		$query = 'SELECT subid FROM  #__acymailing_subscriber WHERE zoholist LIKE "'.$userList[0].'" AND zohoid IS NOT NULL AND subid NOT IN ('.implode(',',$IdArray).')';
		$subidToDelete = acymailing_loadResultArray($query);
		$subscriberClass->delete($subidToDelete);
	}

	function close() {
		fclose($this->conn);
	}
}
helpers/acymailer.php000060400000067061152455705230010703 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

require_once(ACYMAILING_INC.'phpmailer'.DS.'class.phpmailer.php');

class acymailerHelper extends acymailingPHPMailer{

	var $report = true;

	var $loadedToSend = true;

	var $checkConfirmField = true;

	var $checkEnabled = true;

	var $checkAccept = true;

	var $parameters = array();

	var $dispatcher;

	var $errorNumber = 0;

	var $reportMessage = '';

	var $autoAddUser = false;

	var $errorNewTry = array(1, 6);

	var $app;

	var $alreadyCheckedAddresses = false;

	var $checkPublished = true;

	var $introtext;

	var $trackEmail = false;

	public $From = '';

	public $FromName = '';

	function __construct(){

		static $loaded = false;
		if(!$loaded){
			$loaded = true;
			acymailing_importPlugin('acymailing');
		}

		$this->SMTPAutoTLS = false;

		$this->subscriberClass = acymailing_get('class.subscriber');
		$this->encodingHelper = acymailing_get('helper.encoding');
		$this->userHelper = acymailing_get('helper.user');


		$this->config = acymailing_config();
		$this->setFrom($this->config->get('from_email'), $this->config->get('from_name'));

		$this->Sender = $this->cleanText($this->config->get('bounce_email'));
		if(empty($this->Sender)) $this->Sender = '';

		switch($this->config->get('mailer_method', 'phpmail')){
			case 'smtp' :
				$this->isSMTP();
				$this->Host = trim($this->config->get('smtp_host'));
				$port = $this->config->get('smtp_port');
				if(empty($port) && $this->config->get('smtp_secured') == 'ssl') $port = 465;
				if(!empty($port)) $this->Host .= ':'.$port;
				$this->SMTPAuth = (bool)$this->config->get('smtp_auth', true);
				$this->Username = trim($this->config->get('smtp_username'));
				$this->Password = trim($this->config->get('smtp_password'));
				$this->SMTPSecure = trim((string)$this->config->get('smtp_secured'));

				if(empty($this->Sender)) $this->Sender = strpos($this->Username, '@') ? $this->Username : $this->config->get('from_email');
				break;
			case 'sendmail' :
				$this->isSendmail();
				$this->Sendmail = trim($this->config->get('sendmail_path'));
				if(empty($this->Sendmail)) $this->Sendmail = '/usr/sbin/sendmail';
				break;
			case 'qmail' :
				$this->isQmail();
				break;
			case 'elasticemail' :
				$port = $this->config->get('elasticemail_port', 'rest');
				if(is_numeric($port)){
					$this->isSMTP();
					if($port == '25'){
						$this->Host = 'smtp25.elasticemail.com:25';
					}else{
						$this->Host = 'smtp.elasticemail.com:2525';
					}
					$this->Username = trim($this->config->get('elasticemail_username'));
					$this->Password = trim($this->config->get('elasticemail_password'));
					$this->SMTPAuth = true;
				}else{
					include_once(ACYMAILING_INC.'phpmailer'.DS.'class.elasticemail.php');
					$this->Mailer = 'elasticemail';
					$this->{$this->Mailer} = new acymailingElasticemail();
					$this->{$this->Mailer}->Username = trim($this->config->get('elasticemail_username'));
					$this->{$this->Mailer}->Password = trim($this->config->get('elasticemail_password'));
				}

				break;
			default :
				$this->isMail();
				break;
		}//endswitch


		$this->PluginDir = dirname(__FILE__).DS;
		$this->CharSet = strtolower($this->config->get('charset'));
		if(empty($this->CharSet)) $this->CharSet = 'utf-8';

		$this->clearAll();

		$this->Encoding = $this->config->get('encoding_format');
		if(empty($this->Encoding)) $this->Encoding = '8bit';

		$this->WordWrap = intval($this->config->get('word_wrapping', 0));

		@ini_set('pcre.backtrack_limit', 1000000);

		$this->SMTPOptions = array("ssl" => array("verify_peer" => false, "verify_peer_name" => false, "allow_self_signed" => true));
	}//endfct

	public function send(){
		if(empty($this->ReplyTo) && empty($this->ReplyToQueue)){
			$this->_addReplyTo(empty($this->replyemail) ? $this->config->get('reply_email') : $this->replyemail, empty($this->replyname) ? $this->config->get('reply_name') : $this->replyname);
		}

		if((bool)$this->config->get('embed_images', 0) && $this->Mailer != 'elasticemail'){
			$this->embedImages();
		}

		if(empty($this->Subject) OR empty($this->Body)){
			$this->reportMessage = acymailing_translation('SEND_EMPTY');
			$this->errorNumber = 8;
			if($this->report){
				acymailing_enqueueMessage($this->reportMessage, 'error');
			}
			return false;
		}

		if(!$this->alreadyCheckedAddresses){
			$this->alreadyCheckedAddresses = true;

			$replyToTmp = '';
			if(!empty($this->ReplyTo)){
				$replyToTmp = reset($this->ReplyTo);
				$replyToTmp = $replyToTmp[0];
			}elseif(!empty($this->ReplyToQueue)){
				$replyToTmp = reset($this->ReplyToQueue);
				$replyToTmp = $replyToTmp[1];
			}

			if(empty($replyToTmp) || !$this->userHelper->validEmail($replyToTmp)){
				$this->reportMessage = acymailing_translation('VALID_EMAIL').' ( '.acymailing_translation('REPLYTO_ADDRESS').' : '.(empty($this->ReplyTo) ? '' : $replyToTmp).' ) ';
				$this->errorNumber = 9;
				if($this->report){
					acymailing_enqueueMessage($this->reportMessage, 'error');
				}
				return false;
			}

			if(empty($this->From) || !$this->userHelper->validEmail($this->From)){
				$this->reportMessage = acymailing_translation('VALID_EMAIL').' ( '.acymailing_translation('FROM_ADDRESS').' : '.$this->From.' ) ';
				$this->errorNumber = 9;
				if($this->report){
					acymailing_enqueueMessage($this->reportMessage, 'error');
				}
				return false;
			}

			if(!empty($this->Sender) && !$this->userHelper->validEmail($this->Sender)){
				$this->reportMessage = acymailing_translation('VALID_EMAIL').' ( '.acymailing_translation('BOUNCE_ADDRESS').' : '.$this->Sender.' ) ';
				$this->errorNumber = 9;
				if($this->report){
					acymailing_enqueueMessage($this->reportMessage, 'error');
				}
				return false;
			}
		}

		if(!empty($this->favicon)){
			$faviconHeader = '<link rel="shortcut icon" href="'.$this->favicon.'" type="image/x-icon" />';
			$this->Body = str_replace('</head>', $faviconHeader.'</head>', $this->Body);
		}

		if(function_exists('mb_convert_encoding') && !empty($this->sendHTML)){
			$this->Body = mb_convert_encoding($this->Body, 'HTML-ENTITIES', 'UTF-8');
			$this->Body = str_replace(array('&amp;', '&sigmaf;'), array('&', 'ς'), $this->Body);
		}

		if($this->CharSet != 'utf-8'){
			$this->Body = $this->encodingHelper->change($this->Body, 'UTF-8', $this->CharSet);
			$this->Subject = $this->encodingHelper->change($this->Subject, 'UTF-8', $this->CharSet);
			if(!empty($this->AltBody)) $this->AltBody = $this->encodingHelper->change($this->AltBody, 'UTF-8', $this->CharSet);
		}

		if(strpos($this->Host, 'elasticemail')){
			$this->addCustomHeader('referral:2f0447bb-173a-459d-ab1a-ab8cbebb9aab');
		}

		$this->Subject = str_replace(array('’', '“', '”', '–'), array("'", '"', '"', '-'), $this->Subject);

		$this->Body = str_replace(" ", ' ', $this->Body);

		ob_start();
		$result = parent::send();
		$warnings = ob_get_clean();

		if(!empty($warnings) && strpos($warnings, 'bloque')){
			$result = false;
		}
		
		$receivers = array();
		foreach($this->to as $oneReceiver){
			$receivers[] = $oneReceiver[0];
		}
		if(!$result){
			$this->reportMessage = acymailing_translation_sprintf('SEND_ERROR', '<b><i>'.$this->Subject.'</i></b>', '<b><i>'.implode(' , ', $receivers).'</i></b>');
			if(!empty($this->ErrorInfo)) $this->reportMessage .= ' | '.$this->ErrorInfo;
			if(!empty($warnings)) $this->reportMessage .= ' | '.$warnings;
			$this->errorNumber = 1;
			if($this->report){
				$this->reportMessage = str_replace('Could not instantiate mail function', '<a target="_blank" href="'.ACYMAILING_REDIRECT.'could-not-instantiate-mail-function" title="'.acymailing_translation('TELL_ME_MORE').'">Could not instantiate mail function</a>', $this->reportMessage);
				acymailing_enqueueMessage(nl2br($this->reportMessage), 'error');
			}
		}else{
			$this->reportMessage = acymailing_translation_sprintf('SEND_SUCCESS', '<b><i>'.$this->Subject.'</i></b>', '<b><i>'.implode(' , ', $receivers).'</i></b>');
			if(!empty($warnings)) $this->reportMessage .= ' | '.$warnings;
			if($this->report){
				acymailing_enqueueMessage(nl2br($this->reportMessage), 'message');
			}
		}

		return $result;
	}

	public function load($mailid){
		$mailClass = acymailing_get('class.mail');
		$this->defaultMail[$mailid] = $mailClass->get($mailid);

		if(empty($this->defaultMail[$mailid]->mailid)) return false;

		if(empty($this->defaultMail[$mailid]->altbody)) $this->defaultMail[$mailid]->altbody = $this->textVersion($this->defaultMail[$mailid]->body);

		if(!empty($this->defaultMail[$mailid]->attach)){
			$this->defaultMail[$mailid]->attachments = array();

			foreach($this->defaultMail[$mailid]->attach as $oneAttach){
				$attach = new stdClass();
				$attach->name = basename($oneAttach->filename);
				$attach->filename = str_replace(array('/', '\\'), DS, ACYMAILING_ROOT).$oneAttach->filename;
				$attach->url = ACYMAILING_LIVE.$oneAttach->filename;
				$this->defaultMail[$mailid]->attachments[] = $attach;
			}
		}

		if(!empty($this->defaultMail[$mailid]->favicon) && !empty($this->defaultMail[$mailid]->favicon->filename)){
			$this->defaultMail[$mailid]->favicon = ACYMAILING_LIVE.str_replace(DS, '/', $this->defaultMail[$mailid]->favicon->filename);
		}else{
			$this->defaultMail[$mailid]->favicon = '';
		}

		if(!empty($this->defaultMail[$mailid]->tempid)){
			$templateClass = acymailing_get('class.template');
			$this->defaultMail[$mailid]->template = $templateClass->get($this->defaultMail[$mailid]->tempid);
		}

		$this->triggerTagsWithRightLanguage($this->defaultMail[$mailid], $this->loadedToSend);

		$this->defaultMail[$mailid]->body = acymailing_absoluteURL($this->defaultMail[$mailid]->body);

		return $this->defaultMail[$mailid];
	}

	public function clearAll(){
		$this->Subject = '';
		$this->Body = '';
		$this->AltBody = '';
		$this->ClearAllRecipients();
		$this->ClearAttachments();
		$this->ClearCustomHeaders();
		$this->ClearReplyTos();
		$this->errorNumber = 0;
		$this->MessageID = '';
		$this->ErrorInfo = '';

		$this->setFrom($this->config->get('from_email'), $this->config->get('from_name'));


	}

	public function sendOne($mailid, $receiverid){
		$this->clearAll();

		if(!isset($this->defaultMail[$mailid])){
			$this->loadedToSend = true;
			if(!$this->load($mailid)){
				$this->reportMessage = 'Can not load the e-mail : '.htmlspecialchars($mailid, ENT_COMPAT, 'UTF-8');
				if($this->report){
					acymailing_enqueueMessage($this->reportMessage, 'error');
				}
				$this->errorNumber = 2;
				return false;
			}
		}


		if(!isset($this->forceVersion) AND $this->checkPublished AND empty($this->defaultMail[$mailid]->published)){
			$this->reportMessage = acymailing_translation_sprintf('SEND_ERROR_PUBLISHED', htmlspecialchars($mailid, ENT_COMPAT, 'UTF-8'));
			$this->errorNumber = 3;
			if($this->report){
				acymailing_enqueueMessage($this->reportMessage, 'error');
			}
			return false;
		}

		if(!is_object($receiverid)){
			$receiver = $this->subscriberClass->get($receiverid);
			if(empty($receiver->subid) AND is_string($receiverid) AND $this->autoAddUser){
				if($this->userHelper->validEmail($receiverid)){
					$newUser = new stdClass();
					$newUser->email = $receiverid;
					$this->subscriberClass->checkVisitor = false;
					$this->subscriberClass->sendConf = false;
					$subid = $this->subscriberClass->save($newUser);
					$receiver = $this->subscriberClass->get($subid);
				}
			}
		}else{
			$receiver = $receiverid;
		}

		if(empty($receiver->email)){
			$this->reportMessage = acymailing_translation_sprintf('SEND_ERROR_USER', '<b><i>'.(isset($receiver->subid) ? $receiver->subid : htmlspecialchars($receiverid, ENT_COMPAT, 'UTF-8')).'</i></b>');
			if($this->report){
				acymailing_enqueueMessage($this->reportMessage, 'error');
			}
			$this->errorNumber = 4;
			return false;
		}


		$this->MessageID = "<".preg_replace("|[^a-z0-9+_]|i", '', base64_encode(rand(0, 9999999))."AC".$receiver->subid."Y".$this->defaultMail[$mailid]->mailid."BA".base64_encode(time().rand(0, 99999)))."@".$this->serverHostname().">";

		if(strpos($this->Host, 'mailjet') !== false && !empty($this->defaultMail[$mailid]->alias)){
			$this->addCustomHeader('X-Mailjet-Campaign: '.$this->defaultMail[$mailid]->alias);
		}

		if(!isset($this->forceVersion)){
			if($this->checkConfirmField AND empty($receiver->confirmed) AND $this->config->get('require_confirmation', 0) AND strpos($this->defaultMail[$mailid]->alias, 'confirm') === false){
				$this->reportMessage = acymailing_translation_sprintf('SEND_ERROR_CONFIRMED', '<b><i>'.htmlspecialchars($receiver->email, ENT_COMPAT, 'UTF-8').'</i></b>');
				if($this->report){
					acymailing_enqueueMessage($this->reportMessage, 'error');
				}
				$this->errorNumber = 5;
				return false;
			}

			if($this->checkEnabled AND empty($receiver->enabled) AND strpos($this->defaultMail[$mailid]->alias, 'enable') === false){
				$this->reportMessage = acymailing_translation_sprintf('SEND_ERROR_APPROVED', '<b><i>'.htmlspecialchars($receiver->email, ENT_COMPAT, 'UTF-8').'</i></b>');
				if($this->report){
					acymailing_enqueueMessage($this->reportMessage, 'error');
				}
				$this->errorNumber = 6;
				return false;
			}
		}


		if($this->checkAccept AND empty($receiver->accept)){
			$this->reportMessage = acymailing_translation_sprintf('SEND_ERROR_ACCEPT', '<b><i>'.htmlspecialchars($receiver->email, ENT_COMPAT, 'UTF-8').'</i></b>');
			if($this->report){
				acymailing_enqueueMessage($this->reportMessage, 'error');
			}
			$this->errorNumber = 7;
			return false;
		}

		$addedName = '';
		if($this->config->get('add_names', true)){
			$nameTmp = acymailing_translation('ACY_TO_NAME');
			$testTag = preg_match_all('/\[(.*)\]/U', $nameTmp, $matches);
			if($testTag != 0){
				foreach($matches[0] as $i => $oneMatch){
					$replaceValue = '';
					if(!empty($receiver->{$matches[1][$i]})) $replaceValue = $receiver->{$matches[1][$i]};
					$nameTmp = str_replace($oneMatch, $replaceValue, $nameTmp);
				}
			}
			$addedName = $this->cleanText($nameTmp);
			if($addedName == $this->cleanText($receiver->email)) $addedName = '';
		}
		$this->addAddress($this->cleanText($receiver->email), $addedName);

		if(!isset($this->forceVersion)){
			$this->isHTML($receiver->html && $this->defaultMail[$mailid]->html);
		}else{
			$this->isHTML((bool)$this->forceVersion);
		}

		$this->Subject = $this->defaultMail[$mailid]->subject;

		if($this->sendHTML){
			$this->Body = $this->defaultMail[$mailid]->body;
			if($this->config->get('multiple_part', false)){
				$this->AltBody = $this->defaultMail[$mailid]->altbody;
			}
		}else{
			$this->Body = $this->defaultMail[$mailid]->altbody;
		}

		$this->setFrom($this->defaultMail[$mailid]->fromemail, $this->defaultMail[$mailid]->fromname);
		$this->_addReplyTo($this->defaultMail[$mailid]->replyemail, $this->defaultMail[$mailid]->replyname);

		$this->defaultMail[$mailid]->bccaddresses = isset($this->defaultMail[$mailid]->bccaddresses) ? $this->defaultMail[$mailid]->bccaddresses : '';
		$bcc = trim(str_replace(array(',', ' '), ';', $this->defaultMail[$mailid]->bccaddresses));
		if(!empty($bcc)){
			$allBcc = explode(';', $bcc);
			foreach($allBcc as $oneBcc){
				if(empty($oneBcc)) continue;
				$this->AddBCC($oneBcc);
			}
		}

		if(!empty($this->defaultMail[$mailid]->attachments)){
			if($this->config->get('embed_files')){
				foreach($this->defaultMail[$mailid]->attachments as $attachment){
					$this->addAttachment($attachment->filename);
				}
			}else{
				$attachStringHTML = '<br /><fieldset><legend>'.acymailing_translation('ATTACHMENTS').'</legend><table>';
				$attachStringText = "\n"."\n".'------- '.acymailing_translation('ATTACHMENTS').' -------';
				foreach($this->defaultMail[$mailid]->attachments as $attachment){
					$attachStringHTML .= '<tr><td><a href="'.$attachment->url.'" target="_blank">'.$attachment->name.'</a></td></tr>';
					$attachStringText .= "\n".'-- '.$attachment->name.' ( '.$attachment->url.' )';
				}
				$attachStringHTML .= '</table></fieldset>';

				if($this->sendHTML){
					$this->Body .= $attachStringHTML;
					if(!empty($this->AltBody)) $this->AltBody .= "\n".$attachStringText;
				}else{
					$this->Body .= $attachStringText;
				}
			}
		}

		if(!empty($this->parameters)){
			$this->generateAllParams();
			$keysparams = array_keys($this->parameters);
			$this->Subject = str_replace($keysparams, $this->parameters, $this->Subject);
			$this->Body = str_replace($keysparams, $this->parameters, $this->Body);
			if(!empty($this->AltBody)) $this->AltBody = str_replace($keysparams, $this->parameters, $this->AltBody);

			if(!empty($this->From)) str_replace($keysparams, $this->parameters, $this->From);
			if(!empty($this->FromName)) str_replace($keysparams, $this->parameters, $this->FromName);
			if(!empty($this->ReplyTo)){
				foreach($this->ReplyTo as $i => $replyto){
					foreach($replyto as $a => $oneval){
						$this->ReplyTo[$i][$a] = str_replace($keysparams, $this->parameters, $this->ReplyTo[$i][$a]);
					}
				}
			}
		}
		if(!empty($this->introtext)){
			$this->Body = $this->introtext.$this->Body;
			$this->AltBody = $this->textVersion($this->introtext).$this->AltBody;
		}


		$this->body = &$this->Body;
		$this->altbody = &$this->AltBody;
		$this->subject = &$this->Subject;
		$this->from = &$this->From;
		$this->fromName = &$this->FromName;
		$this->replyto = &$this->ReplyTo;
		$this->replyname = $this->defaultMail[$mailid]->replyname;
		$this->replyemail = $this->defaultMail[$mailid]->replyemail;
		$this->mailid = $this->defaultMail[$mailid]->mailid;
		$this->key = $this->defaultMail[$mailid]->key;
		$this->alias = $this->defaultMail[$mailid]->alias;
		$this->type = $this->defaultMail[$mailid]->type;
		$this->tempid = $this->defaultMail[$mailid]->tempid;
		$this->sentby = $this->defaultMail[$mailid]->sentby;
		$this->userid = $this->defaultMail[$mailid]->userid;
		$this->filter = $this->defaultMail[$mailid]->filter;
		$this->template = @$this->defaultMail[$mailid]->template;
		$this->language = @$this->defaultMail[$mailid]->language;
		$this->favicon = @$this->defaultMail[$mailid]->favicon;

		if(empty($receiver->key) && !empty($receiver->subid)){
			$receiver->key = acymailing_generateKey(14);
			acymailing_query('UPDATE '.acymailing_table('subscriber').' SET `key`= '.acymailing_escapeDB($receiver->key).' WHERE subid = '.(int)$receiver->subid.' LIMIT 1');
		}

		if(strpos($receiver->email, '@mail-tester.com') !== false){
			$currentUser = $this->subscriberClass->get(acymailing_currentUserEmail());
			if(empty($currentUser)) $currentUser = $receiver;
			acymailing_trigger('acymailing_replaceusertags', array(&$this, &$currentUser, true));
		}else{
			acymailing_trigger('acymailing_replaceusertags', array(&$this, &$receiver, true));
		}

		if($this->sendHTML){
			if(!empty($this->AltBody)) $this->AltBody = $this->textVersion($this->AltBody, false);
		}else{
			$this->Body = $this->textVersion($this->Body, false);
		}

		$status = $this->send();
		if($this->trackEmail){
			$helperQueue = acymailing_get('helper.queue');
			$statsAdd = array();
			$statsAdd[$this->mailid][$status][$this->sendHTML][] = $receiver->subid;
			$helperQueue->statsAdd($statsAdd);
			$this->trackEmail = false;
		}
		return $status;
	}

	protected function embedImages(){
		preg_match_all('/(src|background)=[\'|"]([^"\']*)[\'|"]/Ui', $this->Body, $images);
		$result = true;

		if(empty($images[2])) return $result;

		$mimetypes = array('bmp' => 'image/bmp', 'gif' => 'image/gif', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpeg', 'jpe' => 'image/jpeg', 'png' => 'image/png', 'tiff' => 'image/tiff', 'tif' => 'image/tiff');

		$allimages = array();

		foreach($images[2] as $i => $url){
			if(isset($allimages[$url])) continue;
			$allimages[$url] = 1;

			$path = $url;
			$base = str_replace(array('http://www.', 'https://www.', 'http://', 'https://'), '', ACYMAILING_LIVE);
			$replacements = array('https://www.'.$base, 'http://www.'.$base, 'https://'.$base, 'http://'.$base);
			foreach($replacements as $oneReplacement){
				if(strpos($url, $oneReplacement) === false) continue;
				$path = str_replace(array($oneReplacement, '/'), array(ACYMAILING_ROOT, DS), urldecode($url));
				break;
			}

			$filename = str_replace(array('%', ' '), '_', basename($url));
			$md5 = md5($filename);
			$cid = 'cid:'.$md5;
			$fileParts = explode(".", $filename);
			if(empty($fileParts[1])) continue;
			$ext = strtolower($fileParts[1]);
			if(!isset($mimetypes[$ext])) continue;
			$mimeType = $mimetypes[$ext];
			if($this->addEmbeddedImage($path, $md5, $filename, 'base64', $mimeType)){
				$this->Body = preg_replace("/".preg_quote($images[0][$i], '/')."/Ui", $images[1][$i]."=\"".$cid."\"", $this->Body);
			}else{
				$result = false;
			}
		}
		return $result;
	}

	public function textVersion($html, $fullConvert = true){

		$html = acymailing_absoluteURL($html);

		if($fullConvert){
			$html = preg_replace('# +#', ' ', $html);
			$html = str_replace(array("\n", "\r", "\t"), '', $html);
		}


		$removepictureslinks = "#< *a[^>]*> *< *img[^>]*> *< *\/ *a *>#isU";
		$removeScript = "#< *script(?:(?!< */ *script *>).)*< */ *script *>#isU";
		$removeStyle = "#< *style(?:(?!< */ *style *>).)*< */ *style *>#isU";
		$removeStrikeTags = '#< *strike(?:(?!< */ *strike *>).)*< */ *strike *>#iU';
		$replaceByTwoReturnChar = '#< *(h1|h2)[^>]*>#Ui';
		$replaceByStars = '#< *li[^>]*>#Ui';
		$replaceByReturnChar1 = '#< */ *(li|td|dt|tr|div|p)[^>]*> *< *(li|td|dt|tr|div|p)[^>]*>#Ui';
		$replaceByReturnChar = '#< */? *(br|p|h1|h2|legend|h3|li|ul|dd|dt|h4|h5|h6|tr|td|div)[^>]*>#Ui';
		$replaceLinks = '/< *a[^>]*href *= *"([^#][^"]*)"[^>]*>(.+)< *\/ *a *>/Uis';

		$text = preg_replace(array($removepictureslinks, $removeScript, $removeStyle, $removeStrikeTags, $replaceByTwoReturnChar, $replaceByStars, $replaceByReturnChar1, $replaceByReturnChar, $replaceLinks), array('', '', '', '', "\n\n", "\n* ", "\n", "\n", '${2} ( ${1} )'), $html);

		$text = preg_replace('#(&lt;|&\#60;)([^ \n\r\t])#i', '&lt; ${2}', $text);

		$text = str_replace(array(" ", "&nbsp;"), ' ', strip_tags($text));

		$text = trim(@html_entity_decode($text, ENT_QUOTES, 'UTF-8'));

		if($fullConvert){
			$text = preg_replace('# +#', ' ', $text);
			$text = preg_replace('#\n *\n\s+#', "\n\n", $text);
		}

		return $text;
	}

	public function cleanText($text){
		return trim(preg_replace('/(%0A|%0D|\n+|\r+)/i', '', (string)$text));
	}

	public function setFrom($email, $name = '', $auto = false){

		if(!empty($email)){
			$this->From = $this->cleanText($email);
		}
		if(!empty($name) AND $this->config->get('add_names', true)){
			$this->FromName = $this->cleanText($name);
		}
	}

	private function generateAllParams(){
		$result = '<table style="border:1px solid;border-collapse:collapse;" border="1" cellpadding="10"><tr><td>Tag</td><td>Value</td></tr>';
		foreach($this->parameters as $name => $value){
			if(!is_string($value)) continue;
			$result .= '<tr><td>'.$name.'</td><td>'.$value.'</td></tr>';
		}
		$result .= '</table>';
		$this->addParam('alltags', $result);
	}

	public function addParamInfo(){
		if(!empty($_SERVER)){
			$serverinfo = array();
			foreach($_SERVER as $oneKey => $oneInfo){
				$serverinfo[] = $oneKey.' => '.strip_tags(print_r($oneInfo, true));
			}
			$this->addParam('serverinfo', implode('<br />', $serverinfo));
		}

		if(!empty($_REQUEST)){
			$postinfo = array();
			foreach($_REQUEST as $oneKey => $oneInfo){
				$postinfo[] = $oneKey.' => '.strip_tags(print_r($oneInfo, true));
			}
			$this->addParam('postinfo', implode('<br />', $postinfo));
		}
	}

	public function addParam($name, $value){
		$tagName = '{'.$name.'}';
		$this->parameters[$tagName] = $value;
	}

	protected function _addReplyTo($email, $name){
		if(empty($email)) return;
		$replyToName = $this->config->get('add_names', true) ? $this->cleanText(trim($name)) : '';
		$replyToEmail = trim($email);
		if(substr_count($replyToEmail, '@') > 1){
			$replyToEmailArray = explode(';', str_replace(array(';', ','), ';', $replyToEmail));
			$replyToNameArray = explode(';', str_replace(array(';', ','), ';', $replyToName));
			foreach($replyToEmailArray as $i => $oneReplyTo){
				$this->addReplyTo($this->cleanText($oneReplyTo), @$replyToNameArray[$i]);
			}
		}else{
			$this->addReplyTo($this->cleanText($replyToEmail), $replyToName);
		}
	}

	protected function ACY_DKIM_Sign($s){
		if(!empty($this->DKIM_passphrase)){
			$privKey = openssl_pkey_get_private($this->DKIM_private, $this->DKIM_passphrase);
		}else{
			$privKey = $this->DKIM_private;
		}
		$signature = '';
		if(openssl_sign($s, $signature, $privKey)){
			return base64_encode($signature);
		}
	}

	protected function ACY_DKIM_Add($body){
		$DKIMsignatureType = 'rsa-sha1'; // Signature & hash algorithms
		$DKIMcanonicalization = 'relaxed/simple'; // Canonicalization of header/body
		$DKIMquery = 'dns/txt'; // Query method
		$DKIMtime = time(); // Signature Timestamp = seconds since 00:00:00 - Jan 1, 1970 (UTC time zone)

		$subject = $this->encodeHeader($this->secureHeader($this->Subject));

		$subjecta_header = "Subject: $subject";
		$from = array();
		$from[0][0] = trim($this->From);
		$from[0][1] = $this->FromName;
		$fromc_header = $this->addrAppend('From', $from);
		$toy_header = $this->addrAppend('To', $this->to);

		$body = $this->DKIM_BodyC($body);
		$DKIMlen = strlen($body); // Length of body
		$DKIMb64 = base64_encode(pack("H*", sha1($body))); // Base64 of packed binary SHA-1 hash of body
		$ident = (empty($this->DKIM_identity)) ? '' : " i=".$this->DKIM_identity.";";
		$dkimhdrs = "DKIM-Signature: v=1; a=".$DKIMsignatureType."; q=".$DKIMquery."; l=".$DKIMlen."; s=".$this->DKIM_selector.";\r\n"."\tt=".$DKIMtime."; c=".$DKIMcanonicalization."; h=from:to:subject;\r\n"."\td=".$this->DKIM_domain.";".$ident." bh=".$DKIMb64.";\r\n"."\tb=";
		$toSign = $this->DKIM_HeaderC($fromc_header."\r\n".$toy_header."\r\n".$subjecta_header."\r\n".$dkimhdrs);
		$signed = wordwrap($this->ACY_DKIM_Sign($toSign), 60, "\r\n\t", true);
		if(empty($signed)) return '';
		return $dkimhdrs.$signed."\r\n";
	}

	protected function edebug($str){
		$this->ErrorInfo .= ' '.$str;
	}

	public function setWordWrap(){
		if($this->WordWrap < 1){
			return;
		}

		if(!empty($this->AltBody)) $this->AltBody = $this->wrapText($this->AltBody, $this->WordWrap);
		$this->Body = $this->wrapText($this->Body, $this->WordWrap);
	}

	public function isHTML($ishtml = true){
		parent::isHTML($ishtml);
		$this->sendHTML = $ishtml;
	}

	public function getMailMIME(){
		$result = parent::getMailMIME();

		$result = rtrim($result, $this->LE);

		if($this->Mailer != 'mail'){
			$result .= $this->LE.$this->LE;
		}

		return $result;
	}

	public static function validateAddress($address, $patternselect = 'auto'){
		return true;
	}

	function triggerTagsWithRightLanguage(&$mail, $loadedToSend){
		if(!empty($mail->language) && !in_array($mail->language, acymailing_getLanguageLocale())){
			$emaillangcode = '';

			$languages = acymailing_getLanguages();
			foreach($languages as $key => $oneLang){
				if($oneLang->sef != $mail->language) continue;
				$emaillangcode = $key;
				break;
			}

			if(!empty($emaillangcode)){
				$previousLanguage = acymailing_setLanguage($emaillangcode);
				acymailing_loadLanguageFile(ACYMAILING_COMPONENT, ACYMAILING_ROOT, $emaillangcode, true);
				acymailing_loadLanguageFile(ACYMAILING_COMPONENT.'_custom', ACYMAILING_ROOT, $emaillangcode, true);
				acymailing_loadLanguageFile('joomla', ACYMAILING_BASE, $emaillangcode, true);
			}
		}

		acymailing_trigger('acymailing_replacetags', array(&$mail, &$loadedToSend));

		if(empty($previousLanguage)) return;
		acymailing_setLanguage($previousLanguage);
		acymailing_loadLanguageFile(ACYMAILING_COMPONENT, ACYMAILING_ROOT, $previousLanguage, true);
		acymailing_loadLanguageFile(ACYMAILING_COMPONENT.'_custom', ACYMAILING_ROOT, $previousLanguage, true);
		acymailing_loadLanguageFile('joomla', ACYMAILING_BASE, $previousLanguage, true);
	}
}
helpers/helper.php000060400000150545152455705230010214 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

define('ACYMAILING_NAME', 'AcyMailing');
define('ACYMAILING_DBPREFIX', '#__acymailing_');
define('ACYMAILING_UPDATEURL', 'https://www.acyba.com/index.php?option=com_updateme&ctrl=update&task=');
define('ACYMAILING_SPAMURL', 'https://www.acyba.com/index.php?option=com_updateme&ctrl=spamsystem&task=');
define('ACYMAILING_HELPURL', 'https://www.acyba.com/index.php?option=com_updateme&ctrl=doc&component='.ACYMAILING_NAME.'&page=');
define('ACYMAILING_REDIRECT', 'https://www.acyba.com/index.php?option=com_updateme&ctrl=redirect&page=');

if(!defined('DS')) define('DS', DIRECTORY_SEPARATOR);
include_once(rtrim(dirname(__DIR__),DS).DS.'compat'.DS.'joomla.php');

if(is_callable("date_default_timezone_set")) date_default_timezone_set(@date_default_timezone_get());

function acymailing_getEmailRegex($secureJS = false, $forceRegex = false){
	$config = acymailing_config();
	if($forceRegex || $config->get('special_chars', 0) == 0){
		$regex = '[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\'*+\/=?^_`{|}~-]+)*\@([a-z0-9-]+\.)+[a-z0-9]{2,10}';
	}else{
		$regex = '.+\@(.+\.)+.{2,10}';
	}

	if($secureJS) $regex = str_replace(array('"', "'"), array('\"', "\'"), $regex);

	return $regex;
}

function acymailing_level($level){
    $config = acymailing_config();
    if($config->get($config->get('level'), 0) >= $level) return true;
    return false;
}

function acymailing_navigationTabs(){
    if(acymailing_isNoTemplate() || !acymailing_isAdmin() || !ACYMAILING_J40) return;

    $pages = array(
        'list' => array(
            'LISTS' => array('ctrl' => 'list', 'task' => ''),
            'ACY_DISTRIBUTION' => array('ctrl' => 'action', 'task' => '')
        ),
        'subscriber' => array(
            'ACY_SUBSCRIBER' => array('ctrl' => 'subscriber', 'task' => ''),
            'IMPORT' => array('ctrl' => 'data', 'task' => 'import'),
            'ACY_EXPORT' => array('ctrl' => 'data', 'task' => 'export'),
            'ACY_MASS_ACTIONS' => array('ctrl' => 'filter', 'task' => '')
        ),
        'newsletter' => array(
            'NEWSLETTERS' => array('ctrl' => 'newsletter', 'task' => ''),
            'AUTONEWSLETTERS' => array('ctrl' => 'autonews', 'task' => ''),
            'ACY_CAMPAIGNS' => array('ctrl' => 'campaign', 'task' => ''),
            'QUEUE' => array('ctrl' => 'queue', 'task' => ''),
            'SIMPLE_SENDING' => array('ctrl' => 'simplemail', 'task' => 'edit'),
            'ACY_TEMPLATES' => array('ctrl' => 'template', 'task' => '')
        ),
        'stats' => array(
            'STATISTICS' => array('ctrl' => 'stats', 'task' => 'listing'),
            'DETAILED_STATISTICS' => array('ctrl' => 'stats', 'task' => 'detaillisting'),
            'CLICK_STATISTICS' => array('ctrl' => 'statsurl', 'task' => ''),
            'CHARTS' => array('ctrl' => 'diagram', 'task' => '')
        ),
        'cpanel' => array(
            'ACY_CONFIGURATION' => array('ctrl' => 'cpanel', 'task' => ''),
            'EXTRA_FIELDS' => array('ctrl' => 'fields', 'task' => ''),
            'BOUNCE_HANDLING' => array('ctrl' => 'bounces', 'task' => '')
        )
    );

    $ctrl = acymailing_getVar('cmd', 'ctrl');
    $task = acymailing_getVar('cmd', 'task');

    $page = str_replace('acymailing_', '', acymailing_getVar('cmd', 'page', ''));

    if(empty($page)){
        foreach($pages as $mainCtrl => $siblings){
            foreach($siblings as $oneSibling){
                if($oneSibling['ctrl'] == $ctrl){
                    $page = $mainCtrl;
                    break;
                }
            }

            if(!empty($page)) break;
        }
    }
    if(empty($pages[$page])) return;

    $navigationTabs = array();
    foreach($pages[$page] as $text => $oneCtrl){
        $active = false;

        if($oneCtrl['ctrl'] == $ctrl && (empty($oneCtrl['task']) || $oneCtrl['task'] == $task || (empty($task) && $oneCtrl['task'] == 'listing'))) $active = true;

        $navigationTabs[] = '<li'.($active ? ' class="active"' : '').'><a href="' . acymailing_completeLink($oneCtrl['ctrl']). (empty($oneCtrl['task']) ? '' : '&task='.$oneCtrl['task']) . '">' . acymailing_translation($text) . '</a></li>';
    }

    echo '<div class="acytabsystem"><ul class="acynavigationtabs nav nav-tabs">'.implode('', $navigationTabs).'</ul></div>';
}

function acymailing_getDate($time = 0, $format = '%d %B %Y %H:%M'){
	if(empty($time)) return '';

	if(is_numeric($format)) $format = acymailing_translation('DATE_FORMAT_LC'.$format);
	if(ACYMAILING_J16){
		$format = str_replace(array('%A', '%d', '%B', '%m', '%Y', '%y', '%H', '%M', '%S', '%a', '%I', '%p', '%w'), array('l', 'd', 'F', 'm', 'Y', 'y', 'H', 'i', 's', 'D', 'h', 'a', 'w'), $format);
		try{
			return acymailing_date($time, $format, false);
		}catch(Exception $e){
			return date($format, $time);
		}
	}else{
		static $timeoffset = null;
		if($timeoffset === null){
			$timeoffset = acymailing_getCMSConfig('offset');
		}
		return acymailing_date($time - date('Z'), $format, $timeoffset);
	}
}

function acymailing_isRobot(){
	if(empty($_SERVER)) return false;
	if(!empty($_SERVER['HTTP_USER_AGENT']) && strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'spambayes') !== false) return true;
	if(!empty($_SERVER['REMOTE_ADDR']) && version_compare($_SERVER['REMOTE_ADDR'], '64.235.144.0', '>=') && version_compare($_SERVER['REMOTE_ADDR'], '64.235.159.255', '<=')) return true;

	return false;
}

function acymailing_isAllowed($allowedGroups, $groups = null){
	if($allowedGroups == 'all') return true;
	if($allowedGroups == 'none') return false;
	if(!is_array($allowedGroups)) $allowedGroups = explode(',', trim($allowedGroups, ','));

	$currentUserid = acymailing_currentUserId();
	if(empty($currentUserid) && empty($groups) && in_array('nonloggedin', $allowedGroups)) return true;

	if(empty($groups) && empty($currentUserid)) return false;
	if(empty($groups)) $groups = acymailing_getGroupsByUser($currentUserid, false);

	if(!is_array($groups)) $groups = array($groups);
	$inter = array_intersect($groups, $allowedGroups);
	if(empty($inter)) return false;
	return true;
}

function acymailing_getFunctionsEmailCheck($controllButtons = array(), $bounce = false){
	$addressCheck = '!emailAddress.match(/^'.acymailing_getEmailRegex(true).'((,|;)'.acymailing_getEmailRegex(true).')*$/i)';

	$return = '<script language="javascript" type="text/javascript">
				function validateEmail(emailAddress, fieldName){
					if(emailAddress.length > 0 && emailAddress.indexOf("{") == -1 && '.$addressCheck.'){
						alert("Wrong email address supplied for the " + fieldName + " field: " + emailAddress);
						return false;
					}
					return true;
				}';

	if(!empty($controllButtons)){
		foreach($controllButtons as &$oneField){
			$oneField = 'pressbutton == \''.$oneField.'\'';
		}

		$return .= '
		document.addEventListener("DOMContentLoaded", function(){
			acymailing.submitbutton = function(pressbutton){
				if('.implode(' || ', $controllButtons).'){
					var emailVars = ["fromemail","replyemail"'.($bounce ? ',"bounceemail"' : '').'];
					var val = "";
					for(var key in emailVars){
						if(isNaN(key)) continue;
						val = document.getElementById(emailVars[key]).value;
						if(!validateEmail(val, emailVars[key])){
							return;
						}
					}
				}
				acymailing.submitform(pressbutton,document.adminForm);
			};
		});';
	}

	$return .= '
				</script>';

	return $return;
}

function acymailing_loadLanguage(){
	acymailing_loadLanguageFile(ACYMAILING_COMPONENT, ACYMAILING_ROOT, null, true);
	acymailing_loadLanguageFile(ACYMAILING_COMPONENT.'_custom', ACYMAILING_ROOT, null, true);
}

function acymailing_createDir($dir, $report = true, $secured = false){
	if(is_dir($dir)) return true;

	$indexhtml = '<html><body bgcolor="#FFFFFF"></body></html>';

	try{
		$status = acymailing_createFolder($dir);
	}catch(Exception $e){
		$status = false;
	}

	if(!$status){
		if($report) acymailing_display('Could not create the directory '.$dir, 'error');
		return false;
	}

	try{
		$status = acymailing_writeFile($dir.DS.'index.html', $indexhtml);
	}catch(Exception $e){
		$status = false;
	}

	if(!$status){
		if($report) acymailing_display('Could not create the file '.$dir.DS.'index.html', 'error');
	}

	if($secured){
		try{
			$htaccess = 'Order deny,allow'."\r\n".'Deny from all';
			$status = acymailing_writeFile($dir.DS.'.htaccess', $htaccess);
		}catch(Exception $e){
			$status = false;
		}

		if(!$status){
			if($report) acymailing_display('Could not create the file '.$dir.DS.'.htaccess', 'error');
		}
	}

	return $status;
}

function acymailing_getUpgradeLink($tolevel){
	$config = acymailing_config();
	return ' <a class="acyupgradelink" href="'.ACYMAILING_REDIRECT.'upgrade-acymailing-'.$config->get('level').'-to-'.$tolevel.'" target="_blank">'.acymailing_translation('ONLY_FROM_'.strtoupper($tolevel)).'</a>';
}

function acymailing_replaceDate($mydate){

	if(strpos($mydate, '{time}') === false) return $mydate;

	$mydate = str_replace('{time}', time(), $mydate);
	$operators = array('+', '-');
	foreach($operators as $oneOperator){
		if(!strpos($mydate, $oneOperator)) continue;
		list($part1, $part2) = explode($oneOperator, $mydate);
		if($oneOperator == '+'){
			$mydate = trim($part1) + trim($part2);
		}elseif($oneOperator == '-'){
			$mydate = trim($part1) - trim($part2);
		}
	}

	return $mydate;
}

function acymailing_initJSStrings($includejs = 'header', $params = null){
	static $alreadyThere = false;
	if($alreadyThere && $includejs == 'header') return;
	$alreadyThere = true;

	if(method_exists($params, 'get')){
		$nameCaption = $params->get('nametext');
		$emailCaption = $params->get('emailtext');
	}
	if(empty($nameCaption)) $nameCaption = acymailing_translation('NAMECAPTION');
	if(empty($emailCaption)) $emailCaption = acymailing_translation('EMAILCAPTION');

	$js = "	if(typeof acymailingModule == 'undefined'){
				var acymailingModule = Array();
			}
			
			acymailingModule['emailRegex'] = /^".acymailing_getEmailRegex(true)."$/i;

			acymailingModule['NAMECAPTION'] = '".str_replace("'", "\'", $nameCaption)."';
			acymailingModule['NAME_MISSING'] = '".str_replace("'", "\'", acymailing_translation('NAME_MISSING'))."';
			acymailingModule['EMAILCAPTION'] = '".str_replace("'", "\'", $emailCaption)."';
			acymailingModule['VALID_EMAIL'] = '".str_replace("'", "\'", acymailing_translation('VALID_EMAIL'))."';
			acymailingModule['ACCEPT_TERMS'] = '".str_replace("'", "\'", acymailing_translation('ACCEPT_TERMS'))."';
			acymailingModule['CAPTCHA_MISSING'] = '".str_replace("'", "\'", acymailing_translation('ERROR_CAPTCHA'))."';
			acymailingModule['NO_LIST_SELECTED'] = '".str_replace("'", "\'", acymailing_translation('NO_LIST_SELECTED'))."';
		";
	if($includejs == 'header'){
		acymailing_addScript(true, $js);
	}else{
		echo "<script type=\"text/javascript\">
					<!--
					$js
					//-->
				</script>";
	}
}

function acymailing_generateKey($length){
	$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
	$randstring = '';
	$max = strlen($characters) - 1;
	for($i = 0; $i < $length; $i++){
		$randstring .= $characters[mt_rand(0, $max)];
	}
	return $randstring;
}

function acymailing_absoluteURL($text){
	static $mainurl = '';
	if(empty($mainurl)){
		$urls = parse_url(ACYMAILING_LIVE);
		if(!empty($urls['path'])){
			$mainurl = substr(ACYMAILING_LIVE, 0, strrpos(ACYMAILING_LIVE, $urls['path'])).'/';
		}else{
			$mainurl = ACYMAILING_LIVE;
		}
	}

	$text = str_replace(array('href="../undefined/', 'href="../../undefined/', 'href="../../../undefined//', 'href="undefined/', ACYMAILING_LIVE.'http://', ACYMAILING_LIVE.'https://'), array('href="'.$mainurl, 'href="'.$mainurl, 'href="'.$mainurl, 'href="'.ACYMAILING_LIVE, 'http://', 'https://'), $text);
	$text = preg_replace('#href="(/?administrator)?/({|%7B)#Ui', 'href="$2', $text);

	$text = preg_replace('#href="http:/([^/])#Ui', 'href="http://$1', $text);

	$text = preg_replace('#href="'.preg_quote(str_replace(array('http://', 'https://'), '', $mainurl), '#').'#Ui', 'href="'.$mainurl, $text);

	$replace = array();
	$replaceBy = array();
	if($mainurl !== ACYMAILING_LIVE){

		$replace[] = '#(href|src|action|background)[ ]*=[ ]*\"(?!(\{|%7B|\[|\#|\\\\|[a-z]{3,15}:|/))(?:\.\./)#i';
		$replaceBy[] = '$1="'.substr(ACYMAILING_LIVE, 0, strrpos(rtrim(ACYMAILING_LIVE, '/'), '/') + 1);


		$subfolder = substr(ACYMAILING_LIVE, strrpos(rtrim(ACYMAILING_LIVE, '/'), '/'));
		$replace[] = '#(href|src|action|background)[ ]*=[ ]*\"'.preg_quote($subfolder, '#').'(\{|%7B)#i';
		$replaceBy[] = '$1="$2';
	}
	$replace[] = '#(href|src|action|background)[ ]*=[ ]*\"(?!(\{|%7B|\[|\#|\\\\|[a-z]{3,15}:|/))(?:\.\./|\./)?#i';
	$replaceBy[] = '$1="'.ACYMAILING_LIVE;
	$replace[] = '#(href|src|action|background)[ ]*=[ ]*\"(?!(\{|%7B|\[|\#|\\\\|[a-z]{3,15}:))/#i';
	$replaceBy[] = '$1="'.$mainurl;

	$replace[] = '#((background-image|background)[ ]*:[ ]*url\(\'?"?(?!(\\\\|[a-z]{3,15}:|/|\'|"))(?:\.\./|\./)?)#i';
	$replaceBy[] = '$1'.ACYMAILING_LIVE;

	return preg_replace($replace, $replaceBy, $text);
}

function acymailing_mainURL(&$link){
    static $mainurl = '';
    static $otherarguments = false;
    if(empty($mainurl)){
        $urls = parse_url(ACYMAILING_LIVE);
        if(isset($urls['path']) AND strlen($urls['path']) > 0){
            $mainurl = substr(ACYMAILING_LIVE, 0, strrpos(ACYMAILING_LIVE, $urls['path'])).'/';
            $otherarguments = trim(str_replace($mainurl, '', ACYMAILING_LIVE), '/');
            if(strlen($otherarguments) > 0) $otherarguments .= '/';
        }else{
            $mainurl = ACYMAILING_LIVE;
        }
    }

    if($otherarguments && strpos($link, $otherarguments) === false) $link = $otherarguments.$link;

    return $mainurl;
}

function acymailing_bytes($val){
	$val = trim($val);
	if(empty($val)){
		return 0;
	}
	$last = strtolower($val[strlen($val) - 1]);
	switch($last){
		case 'g':
			$val = intval($val) * 1073741824;
		case 'm':
			$val = intval($val) * 1048576;
		case 'k':
			$val = intval($val) * 1024;
	}

	return (int)$val;
}

function acymailing_display($messages, $type = 'success', $close = false){
	if(empty($messages)) return;

	if(!is_array($messages)) $messages = array($messages);
	if(ACYMAILING_J30 || acymailing_isAdmin()){
		if(acymailing_isAdmin() && !acymailing_isNoTemplate()) echo '<div style="padding:1px;">';
		echo '<div id="acymailing_messages_'.$type.'" class="alert alert-'.$type.' alert-block">';
		if($close && ACYMAILING_J30) echo '<button type="button" class="close" data-dismiss="alert">×</button>';
		echo '<p>'.implode('</p><p>', $messages).'</p></div>';
		if(acymailing_isAdmin() && !acymailing_isNoTemplate()) echo '</div>';
	}else{
		echo '<div id="acymailing_messages_'.$type.'" class="acymailing_messages acymailing_'.$type.'"><ul><li>'.implode('</li><li>', $messages).'</li></ul></div>';
	}
}

function acymailing_table($name, $component = true){
	$prefix = $component ? ACYMAILING_DBPREFIX : '#__';
	return $prefix.$name;
}

function acymailing_secureField($fieldName){
	if(!is_string($fieldName) OR preg_match('|[^a-z0-9#_.-]|i', $fieldName) !== 0){
		die('field "'.htmlspecialchars($fieldName, ENT_COMPAT, 'UTF-8').'" not secured');
	}
	return $fieldName;
}

function acymailing_displayErrors(){
	error_reporting(E_ALL);
	@ini_set("display_errors", 1);
}

function acymailing_increasePerf(){
	@ini_set('max_execution_time', 600);
	@ini_set('pcre.backtrack_limit', 1000000);
}

function acymailing_config($reload = false){
	static $configClass = null;
	if($configClass === null || $reload){
		$configClass = acymailing_get('class.cpanel');
		$configClass->load();
	}
	return $configClass;
}

function acymailing_listingsearch($search){
	$searchBar = '<div class="filter-search">';
	$searchBar .= '<input placeholder="'.acymailing_translation('ACY_SEARCH').'" type="text" name="search" id="search" value="'.htmlspecialchars($search, ENT_COMPAT, 'UTF-8').'" class="text_area" title="'.acymailing_translation('ACY_SEARCH').'"/>';
	$searchBar .= '<button style="float:none;" onclick="document.adminForm.task.value=\'\';document.adminForm.limitstart.value=0;this.form.submit();" class="btn tip hasTooltip" type="submit" title="'.acymailing_translation('ACY_SEARCH').'"><i class="acyicon-search"></i></button>';
	$searchBar .= '<button style="float:none;margin-left:0px;" onclick="document.adminForm.task.value=\'\';document.adminForm.limitstart.value=0;document.getElementById(\'search\').value=\'\';this.form.submit();" class="btn tip hasTooltip" type="button" title="'.acymailing_translation('JOOMEXT_RESET').'"><i class="acyicon-cancel"></i></button>';
	$searchBar .= '</div>';
	echo $searchBar;
}

function acymailing_getModuleFormName(){
	static $i = 1;
	return 'formAcymailing'.rand(1000, 9999).$i++;
}

function acymailing_initModule($params){
	$includejs = 'header';
	if(method_exists($params, 'get')) $includejs = $params->get('includejs', 'header');

	static $alreadyThere = false;
	if($alreadyThere && $includejs == 'header') return;

	$alreadyThere = true;

	acymailing_initJSStrings($includejs, $params);
	$config = acymailing_config();
	if($includejs == 'header'){
		if(ACYMAILING_J16){
			acymailing_addScript(false, ACYMAILING_JS.'acymailing_module.js?v='.str_replace('.', '', $config->get('version')), 'text/javascript', false, true);
		}else{
			acymailing_addScript(false, ACYMAILING_JS.'acymailing_module.js?v='.str_replace('.', '', $config->get('version')));
		}
	}else{
		echo "\n".'<script type="text/javascript" src="'.ACYMAILING_JS.'acymailing_module.js?v='.str_replace('.', '', $config->get('version')).'" ></script>'."\n";
	}

	$moduleCSS = $config->get('css_module', 'default');
	if(!empty($moduleCSS)){
		if($includejs == 'header'){
			acymailing_addStyle(false, ACYMAILING_CSS.'module_'.$moduleCSS.'.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'module_'.$moduleCSS.'.css'));
		}else{
			echo "\n".'<link rel="stylesheet" property="stylesheet" href="'.ACYMAILING_CSS.'module_'.$moduleCSS.'.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'module_'.$moduleCSS.'.css').'" type="text/css" />'."\n";
		}
	}
}

function acymailing_footer(){
	$config = acymailing_config();
	$description = ACYMAILING_CMS.' E-mail Marketing';
	$text = '<!-- '.ACYMAILING_NAME.' Component powered by http://www.acyba.com -->
		<!-- version '.$config->get('level').' : '.$config->get('version').' -->';
	if(acymailing_level(1) && !acymailing_level(4)) return $text;
	$level = $config->get('level');
	$text .= '<div class="acymailing_footer" align="center" style="text-align:center"><a href="https://www.acyba.com/?utm_source=acymailing-'.$level.'&utm_medium=front-end&utm_content=txt&utm_campaign=powered-by" target="_blank" title="'.ACYMAILING_NAME.' : '.str_replace('TM ', ' ', strip_tags($description)).'">'.ACYMAILING_NAME;
	$text .= ' - '.$description.'</a></div>';
	return $text;
}

function acymailing_dispSearch($string, $searchString){
	$secString = htmlspecialchars($string, ENT_COMPAT, 'UTF-8');
	if(strlen($searchString) == 0) return $secString;
	return preg_replace('#('.preg_quote($searchString, '#').')#i', '<span class="searchtext">$1</span>', $secString);
}

function acymailing_perf($name){
	static $previoustime = 0;
	static $previousmemory = 0;
	static $file = '';

	if(empty($file)){
		$file = ACYMAILING_ROOT.'acydebug_'.rand().'.txt';
		$previoustime = microtime(true);
		$previousmemory = memory_get_usage();
		file_put_contents($file, "\r\n\r\n-- new test : ".$name." -- ".date('d M H:i:s')." from ".@$_SERVER['REMOTE_ADDR'], FILE_APPEND);
		return;
	}

	$nowtime = microtime(true);
	$totaltime = $nowtime - $previoustime;
	$previoustime = $nowtime;

	$nowmemory = memory_get_usage();
	$totalmemory = $nowmemory - $previousmemory;
	$previousmemory = $nowmemory;

	file_put_contents($file, "\r\n".$name.' : '.number_format($totaltime, 2).'s - '.$totalmemory.' / '.memory_get_usage(), FILE_APPEND);
}

function acymailing_search($searchString, $object){

	if(empty($object) || is_numeric($object)) return $object;

	if(is_string($object)){
		return preg_replace('#('.str_replace('#', '\#', $searchString).')#i', '<span class="searchtext">$1</span>', $object);
	}

	if(is_array($object)){
		foreach($object as $key => $element){
			$object[$key] = acymailing_search($searchString, $element);
		}
	}elseif(is_object($object)){
		foreach($object as $key => $element){
			$object->$key = acymailing_search($searchString, $element);
		}
	}

	return $object;
}

function acymailing_get($path){
	list($group, $class) = explode('.', $path);
	if($group == 'helper' && $class == 'user') $class = 'acyuser';
	if($group == 'helper' && $class == 'mailer') $class = 'acymailer';

	$className = $class.ucfirst(str_replace('_front', '', $group));
	if($group == 'helper' && strpos($className, 'acy') !== 0) $className = 'acy'.$className;

	if(substr($group, 0, 4) == 'view'){
		$className = $className.ucfirst($class);
		$class .= DS.'view.html';
	}

	if(!class_exists($className)) include(constant(strtoupper('ACYMAILING_'.$group)).$class.'.php');

	if(!class_exists($className)) return null;
	return new $className();
}

function acymailing_getCID($field = ''){
	$oneResult = acymailing_getVar('array', 'cid', array(), '');
	$oneResult = intval(reset($oneResult));
	if(!empty($oneResult) || empty($field)) return $oneResult;

	$oneResult = acymailing_getVar('int', $field, 0, '');
	return intval($oneResult);
}

function acymailing_checkRobots(){
	if(preg_match('#(libwww-perl|python|googlebot)#i', @$_SERVER['HTTP_USER_AGENT'])) die('Not allowed for robots. Please contact us if you are not a robot');
}

function acymailing_removeChzn($eltsToClean){
	if(!ACYMAILING_J30) return;

	$js = ' function removeChosen(){';
	foreach($eltsToClean as $elt){
		$js .= 'jQuery("#'.$elt.' .chzn-container").remove();
					jQuery("#'.$elt.' .chzn-done").removeClass("chzn-done").show();
					';
	}
	$js .= '}
		document.addEventListener("DOMContentLoaded", function(){removeChosen();
			setTimeout(function(){
				removeChosen();
		}, 100);});';
	acymailing_addScript(true, $js);
}

function acymailing_importFile($file, $uploadPath, $onlyPict, $maxwidth = ''){
	acymailing_checkToken();

	$config = acymailing_config();
	$additionalMsg = '';

	if($file["error"] > 0){
		$file["error"] = intval($file["error"]);
		if($file["error"] > 8) $file["error"] = 0;

		$phpFileUploadErrors = array(
			0 => 'Unknown error',
			1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
			2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
			3 => 'The uploaded file was only partially uploaded',
			4 => 'No file was uploaded',
			6 => 'Missing a temporary folder',
			7 => 'Failed to write file to disk',
			8 => 'A PHP extension stopped the file upload'
		);

		acymailing_display("Error Uploading file: ".$phpFileUploadErrors[$file["error"]], 'error');
		return false;
	}

	acymailing_createDir($uploadPath, true);

	if(!is_writable($uploadPath)){
		@chmod($uploadPath, '0755');
		if(!is_writable($uploadPath)){
			acymailing_display(acymailing_translation_sprintf('WRITABLE_FOLDER', $uploadPath), 'error');
			return false;
		}
	}

	if($onlyPict){
		$allowedExtensions = array('png', 'jpeg', 'jpg', 'gif', 'ico', 'bmp');
	}else{
		$allowedExtensions = explode(',', $config->get('allowedfiles'));
	}

	if(!preg_match('#\.('.implode('|', $allowedExtensions).')$#Ui', $file["name"], $extension)){
		$ext = substr($file["name"], strrpos($file["name"], '.') + 1);
		acymailing_display(acymailing_translation_sprintf('ACCEPTED_TYPE', htmlspecialchars($ext, ENT_COMPAT, 'UTF-8'), implode(', ', $allowedExtensions)), 'error');
		return false;
	}

	if(preg_match('#\.(php.?|.?htm.?|pl|py|jsp|asp|sh|cgi)#Ui', $file["name"])){
		acymailing_display('This extension name is blocked by the system regardless your configuration for security reasons', 'error');
		return false;
	}

	$file["name"] = preg_replace('#[^a-z0-9]#i', '_', strtolower(substr($file["name"], 0, strrpos($file["name"], '.')))).'.'.$extension[1];

	if($onlyPict){
		$imageSize = getimagesize($file['tmp_name']);
		if(empty($imageSize)){
			acymailing_display('Invalid image', 'error');
			return false;
		}
	}

	if(file_exists($uploadPath.DS.$file["name"])){
		$i = 1;
		$nameFile = preg_replace("/\\.[^.\\s]{3,4}$/", "", $file["name"]);
		$ext = substr($file["name"], strrpos($file["name"], '.') + 1);
		while(file_exists($uploadPath.DS.$nameFile.'_'.$i.'.'.$ext)){
			$i++;
		}

		$file["name"] = $nameFile.'_'.$i.'.'.$ext;
		$additionalMsg = '<br />'.acymailing_translation_sprintf('FILE_RENAMED', $file["name"]);
		if($onlyPict) $additionalMsg .= '<br /><a style="color: blue; cursor: pointer;" onclick="confirmBox(\'rename\', \''.$file['name'].'\', \''.$nameFile.'.'.$ext.'\')">'.acymailing_translation('ACY_RENAME_OR_REPLACE').'</a>';
	}

	if(!acymailing_uploadFile($file["tmp_name"], rtrim($uploadPath, DS).DS.$file["name"])){
		if(!move_uploaded_file($file["tmp_name"], rtrim($uploadPath, DS).DS.$file["name"])){
			acymailing_display(acymailing_translation_sprintf('FAIL_UPLOAD', '<b><i>'.htmlspecialchars($file["tmp_name"], ENT_COMPAT, 'UTF-8').'</i></b>', '<b><i>'.htmlspecialchars(rtrim($uploadPath, DS).DS.$file["name"], ENT_COMPAT, 'UTF-8').'</i></b>'), 'error');
			return false;
		}
	}

	if(!empty($maxwidth) || ($onlyPict && $imageSize[0] > 1000)){
		$pictureHelper = acymailing_get('helper.acypict');
		if($pictureHelper->available()){
			$pictureHelper->maxHeight = 9999;
			if(empty($maxwidth)){
				$pictureHelper->maxWidth = 700;
				$message = 'IMAGE_RESIZED';
			}else{
				$pictureHelper->maxWidth = $maxwidth;
				$message = 'ACY_IMAGE_RESIZED';
			}
			$pictureHelper->destination = $uploadPath;
			$thumb = $pictureHelper->generateThumbnail(rtrim($uploadPath, DS).DS.$file["name"], $file["name"]);
			$resize = acymailing_moveFile($thumb['file'], $uploadPath.DS.$file["name"]);
			if($thumb) $additionalMsg .= '<br />'.acymailing_translation($message);
		}
	}
	acymailing_display('<strong>'.acymailing_translation('SUCCESS_FILE_UPLOAD').'</strong>'.$additionalMsg, 'success');
	return $file["name"];
}

function acymailing_getFilesFolder($folder = 'upload', $multipleFolders = false){
	$listClass = acymailing_get('class.list');
	if(acymailing_isAdmin()){
		$allLists = $listClass->getLists('listid');
	}else{
		$allLists = $listClass->getFrontendLists('listid');
	}
	$newFolders = array();

	$config = acymailing_config();
	if($folder == 'upload'){
		$uploadFolder = $config->get('uploadfolder', ACYMAILING_MEDIA_FOLDER.'/upload');
	}else{
		$uploadFolder = $config->get('mediafolder', ACYMAILING_MEDIA_FOLDER.'/upload');
	}

	$folders = explode(',', $uploadFolder);

	foreach($folders as $k => $folder){
		$folders[$k] = trim($folder, '/');
		if(strpos($folder, '{userid}') !== false) $folders[$k] = str_replace('{userid}', acymailing_currentUserId(), $folders[$k]);

		if(strpos($folder, '{listalias}') !== false){
			if(empty($allLists)){
				$noList = new stdClass();
				$noList->alias = 'none';
				$allLists = array($noList);
			}

			foreach($allLists as $oneList){
				$newFolders[] = str_replace('{listalias}', strtolower(str_replace(array(' ', '-'), '_', $oneList->alias)), $folders[$k]);
			}

			$folders[$k] = '';
			continue;
		}

		if(strpos($folder, '{groupid}') !== false || strpos($folder, '{groupname}') !== false){
			$groups = acymailing_getGroupsByUser(acymailing_currentUserId(), false);
			acymailing_arrayToInteger($groups);

			if(ACYMAILING_J16){
				$completeGroups = acymailing_loadObjectList('SELECT id, title FROM #__usergroups WHERE id IN ('.implode(',', $groups).')');
			}else{
				$groupObject = new stdClass();
				$groupObject->id = $groups[0];
				$groupObject->title = acymailing_getGroupsByUser();
				$completeGroups = array($groupObject);
			}

			foreach($completeGroups as $group){
				$newFolders[] = str_replace(array('{groupid}', '{groupname}'), array($group->id, strtolower(str_replace(' ', '_', $group->title))), $folders[$k]);
			}

			$folders[$k] = '';
		}
	}

	$folders = array_merge($folders, $newFolders);
	$folders = array_filter($folders);
	sort($folders);
	if($multipleFolders){
		return $folders;
	}else{
		return array_shift($folders);
	}
}

function acymailing_generateArborescence($folders){
	$folderList = array();
	foreach($folders as $folder){
		$folderPath = acymailing_cleanPath(ACYMAILING_ROOT.trim(str_replace('/', DS, trim($folder)), DS));
		if(!file_exists($folderPath)) acymailing_createDir($folderPath);
		$subFolders = acymailing_listFolderTree($folderPath, '', 15);
		$folderList[$folder] = array();
		foreach($subFolders as $oneFolder){
			$subFolder = str_replace(ACYMAILING_ROOT, '', $oneFolder['relname']);
			$subFolder = str_replace(DS, '/', $subFolder);
			$folderList[$folder][$subFolder] = ltrim($subFolder, '/');
		}
		$folderList[$folder] = array_unique($folderList[$folder]);
	}
	return $folderList;
}

function acymailing_arrayToInteger(&$array){
	if(is_array($array)){
		$array = array_map('intval', $array);
	}else{
		$array = array();
	}
}

function acymailing_arrayToString($array, $inner_glue = '=', $outer_glue = ' ', $keepOuterKey = false){
	$output = array();

	foreach($array as $key => $item){
		if(is_array($item)){
			if($keepOuterKey) $output[] = $key;

			$output[] = acymailing_arrayToString($item, $inner_glue, $outer_glue, $keepOuterKey);
		}else{
			$output[] = $key.$inner_glue.'"'.$item.'"';
		}
	}

	return implode($outer_glue, $output);
}

function acymailing_makeSafeFile($file){
	$file = rtrim($file, '.');
	$regex = array('#(\.){2,}#', '#[^A-Za-z0-9\.\_\- ]#', '#^\.#');
	return trim(preg_replace($regex, '', $file));
}

function acymailing_sortablelist($table, $ordering){
	acymailing_addScript(false, ACYMAILING_JS.'sortable.js?v='.@filemtime(ACYMAILING_MEDIA.'js'.DS.'sortable.js'));

	$js = "
		document.addEventListener(\"DOMContentLoaded\", function(event) {
			Sortable.create(document.getElementById('acymailing_sortable_listing'), {
				handle: '.acyicon-draghandle',
				animation: 150,
				dataIdAttr: 'acyorderid',
				ghostClass: 'acysortable-ghost',
				store: {
					set: function (sortable) {
						var cid = sortable.toArray();
						var order = [".$ordering."];
						
						var xhr = new XMLHttpRequest();
						xhr.open('GET', '".acymailing_prepareAjaxURL($table)."&task=saveorder&'+cid.join('&')+'&'+order.join('&')+'&".acymailing_getFormToken()."');
						xhr.send();
					}
				}
			});
		});";

	acymailing_addScript(true, $js);
}

function acymailing_tooltip($desc, $title = '', $image = 'tooltip.png', $name = '', $href = '', $alt = ''){
	static $loaded = false;

	if(!$loaded) {
		acymailing_addScript(false, ACYMAILING_JS.'acymailing.js?v='.filemtime(ACYMAILING_MEDIA.'js'.DS.'acymailing.js'));
		acymailing_addStyle(false, ACYMAILING_CSS.'acytooltip.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acytooltip.css'));
		$loaded = true;
	}

	$content = $desc;
	if(!empty($title)) $content = '<span style="font-weight: bold;">'.$title.'</span><br/>'.$content;
	if(empty($name)) $name = '<img alt="" src="'.ACYMAILING_IMAGES.$image.'"/>';
	if(!empty($href)) $name = '<a href="'.$href.'" alt="'.htmlspecialchars($alt, ENT_QUOTES, 'UTF-8').'"">'.$name.'</a>';

	return '<span class="acymailingtooltip"><span class="acymailingtooltiptext">'.$content.'</span>'.$name.'</span>';
}

function acymailing_deleteFolder($path){
	$path = acymailing_cleanPath($path);
	if(!is_dir($path)){
		acymailing_enqueueMessage($path.' is not a folder', 'error');
		return false;
	}
	$files = acymailing_getFiles($path);
	if(!empty($files)){
		foreach($files as $oneFile){
			if(!acymailing_deleteFile($path.DS.$oneFile)) return false;
		}
	}

	$folders = acymailing_getFolders($path);
	if(!empty($folders)){
		foreach($folders as $oneFolder){
			if(!acymailing_deleteFolder($path.DS.$oneFolder)) return false;
		}
	}

	if (@rmdir($path)){
		$ret = true;
	}else{
		acymailing_enqueueMessage('Could not delete folder '.$path, 'error');
		$ret = false;
	}

	return $ret;
}

function acymailing_createFolder($path = '', $mode = 0755){
	$path = acymailing_cleanPath($path);
	if(file_exists($path)) return true;

	$origmask = @umask(0);
	$ret = @mkdir($path, $mode, true);
	@umask($origmask);

	return $ret;
}

function acymailing_getFolders($path, $filter = '.', $recurse = false, $full = false, $exclude = array('.svn', 'CVS', '.DS_Store', '__MACOSX'), $excludefilter = array('^\..*')){
	$path = acymailing_cleanPath($path);

	if (!is_dir($path)){
		acymailing_enqueueMessage($path.' is not a folder', 'error');
		return false;
	}

	if (count($excludefilter)){
		$excludefilter_string = '/(' . implode('|', $excludefilter) . ')/';
	}else{
		$excludefilter_string = '';
	}

	$arr = acymailing_getItems($path, $filter, $recurse, $full, $exclude, $excludefilter_string, false);
	asort($arr);

	return array_values($arr);
}

function acymailing_getFiles($path, $filter = '.', $recurse = false, $full = false, $exclude = array('.svn', 'CVS', '.DS_Store', '__MACOSX'), $excludefilter = array('^\..*', '.*~'), $naturalSort = false){
	$path = acymailing_cleanPath($path);

	if (!is_dir($path)){
		acymailing_enqueueMessage($path.' is not a folder', 'error');
		return false;
	}

	if (count($excludefilter)){
		$excludefilter_string = '/(' . implode('|', $excludefilter) . ')/';
	}else{
		$excludefilter_string = '';
	}

	$arr = acymailing_getItems($path, $filter, $recurse, $full, $exclude, $excludefilter_string, true);

	if ($naturalSort){
		natsort($arr);
	}else{
		asort($arr);
	}

	return array_values($arr);
}

function acymailing_getItems($path, $filter, $recurse, $full, $exclude, $excludefilter_string, $findfiles){
	$arr = array();

	if(!($handle = @opendir($path))) return $arr;

	while(($file = readdir($handle)) !== false){
		if($file == '.' || $file == '..' || in_array($file, $exclude) || (!empty($excludefilter_string) && preg_match($excludefilter_string, $file))) continue;
		$fullpath = $path . '/' . $file;

		$isDir = is_dir($fullpath);

		if(($isDir xor $findfiles) && preg_match("/$filter/", $file)){
			if($full){
				$arr[] = $fullpath;
			}else{
				$arr[] = $file;
			}
		}

		if($isDir && $recurse){
			if(is_int($recurse)){
				$arr = array_merge($arr, acymailing_getItems($fullpath, $filter, $recurse - 1, $full, $exclude, $excludefilter_string, $findfiles));
			}else{
				$arr = array_merge($arr, acymailing_getItems($fullpath, $filter, $recurse, $full, $exclude, $excludefilter_string, $findfiles));
			}
		}
	}

	closedir($handle);

	return $arr;
}

function acymailing_copyFolder($src, $dest, $path = '', $force = false, $use_streams = false){

	if($path){
		$src  = acymailing_cleanPath($path . '/' . $src);
		$dest = acymailing_cleanPath($path . '/' . $dest);
	}

	$src = rtrim($src, DIRECTORY_SEPARATOR);
	$dest = rtrim($dest, DIRECTORY_SEPARATOR);

	if (!file_exists($src)){
		acymailing_enqueueMessage('Folder '.$src.' does not exist', 'error');
		return false;
	}

	if(file_exists($dest) && !$force){
		acymailing_enqueueMessage('Folder '.$dest.' already exists', 'error');
		return true;
	}

	if (!acymailing_createFolder($dest)){
		acymailing_enqueueMessage('Cannot create destination folder', 'error');
		return false;
	}

	if (!($dh = @opendir($src))){
		acymailing_enqueueMessage('Cannot open source folder', 'error');
		return false;
	}

	while(($file = readdir($dh)) !== false){
		$sfid = $src . '/' . $file;
		$dfid = $dest . '/' . $file;

		switch (filetype($sfid)){
			case 'dir':
				if ($file != '.' && $file != '..'){
					$ret = acymailing_copyFolder($sfid, $dfid, null, $force, $use_streams);

					if ($ret !== true)
					{
						return $ret;
					}
				}
				break;

			case 'file':
				if (!@copy($sfid, $dfid)){
					acymailing_enqueueMessage('Copy file '.$sfid.' failed, check permissions', 'error');
					return false;
				}
				break;
		}
	}

	return true;
}

function acymailing_moveFolder($src, $dest, $path = '', $use_streams = false){
	if($path){
		$src = acymailing_cleanPath($path . '/' . $src);
		$dest = acymailing_cleanPath($path . '/' . $dest);
	}

	if (!file_exists($src)){
		acymailing_enqueueMessage('Folder '.$src.' does not exist', 'error');
		return false;
	}

	if (!@rename($src, $dest)){
		acymailing_enqueueMessage('Could not move folder '.$src.' to '.$dest.', check permissions', 'error');
		return false;
	}

	return true;
}

function acymailing_listFolderTree($path, $filter, $maxLevel = 3, $level = 0, $parent = 0){
	$dirs = array();

	if($level == 0) $GLOBALS['acymailing_folder_tree_index'] = 0;

	if ($level < $maxLevel){
		$folders = acymailing_getFolders($path, $filter);

		foreach ($folders as $name){
			$id = ++$GLOBALS['acymailing_folder_tree_index'];
			$fullName = acymailing_cleanPath($path . '/' . $name);
			$dirs[] = array(
				'id' => $id,
				'parent' => $parent,
				'name' => $name,
				'fullname' => $fullName,
				'relname' => str_replace(ACYMAILING_ROOT, '', $fullName),
			);
			$dirs2 = acymailing_listFolderTree($fullName, $filter, $maxLevel, $level + 1, $id);
			$dirs = array_merge($dirs, $dirs2);
		}
	}

	return $dirs;
}

function acymailing_deleteFile($file){
	$file = acymailing_cleanPath($file);
	if(!is_file($file)){
		acymailing_enqueueMessage($file.' is not a file', 'error');
		return false;
	}

	@chmod($file, 0777);

	if (!@unlink($file)){
		$filename = basename($file);
		acymailing_enqueueMessage('Failed to delete '.$filename, 'error');
		return false;
	}

	return true;
}

function acymailing_writeFile($file, $buffer, $use_streams = false){
	if (!file_exists(dirname($file)) && acymailing_createFolder(dirname($file)) == false) return false;

	$file = acymailing_cleanPath($file);
	$ret = is_int(file_put_contents($file, $buffer));

	return $ret;
}

function acymailing_moveFile($src, $dest, $path = '', $use_streams = false){
	if ($path){
		$src = acymailing_cleanPath($path . '/' . $src);
		$dest = acymailing_cleanPath($path . '/' . $dest);
	}

	if (!is_readable($src)){
		acymailing_enqueueMessage('Could not find source file, check permissions: '.$src, 'error');
		return false;
	}

	if (!@rename($src, $dest)){
		acymailing_enqueueMessage('Could not move the file', 'error');
		return false;
	}

	return true;
}

function acymailing_uploadFile($src, $dest){
	$dest = acymailing_cleanPath($dest);

	$baseDir = dirname($dest);
	if(!file_exists($baseDir)) acymailing_createFolder($baseDir);

	if(is_writeable($baseDir) && move_uploaded_file($src, $dest)){
		if (@chmod($dest, octdec('0644'))){
			return true;
		}else{
			acymailing_enqueueMessage('The file has been rejected for safety reason', 'error');
		}
	}else{
		acymailing_enqueueMessage('Couldn\'t upload file, check permissions for the folder '.$baseDir, 'error');
	}

	return false;
}

function acymailing_copyFile($src, $dest, $path = null, $use_streams = false){
	if ($path){
		$src = acymailing_cleanPath($path . '/' . $src);
		$dest = acymailing_cleanPath($path . '/' . $dest);
	}

	if (!is_readable($src)){
		acymailing_enqueueMessage('Could not find source file, check permissions: '.$src, 'error');
		return false;
	}

	if (!@copy($src, $dest)){
		acymailing_enqueueMessage('Could not copy the file '.$src.' to '.$dest, 'error');
		return false;
	}

	return true;
}

function acymailing_fileGetExt($file){
	$dot = strrpos($file, '.');
	if($dot === false) return '';

	return substr($file, $dot + 1);
}

function acymailing_cleanPath($path, $ds = DIRECTORY_SEPARATOR){
	$path = trim($path);

	if(empty($path)){
		$path = ACYMAILING_ROOT;
	}elseif (($ds == '\\') && substr($path, 0, 2) == '\\\\'){
		$path = "\\" . preg_replace('#[/\\\\]+#', $ds, $path);
	}else{
		$path = preg_replace('#[/\\\\]+#', $ds, $path);
	}

	return $path;
}

function acymailing_popup($url, $text, $class = '', $width = 800, $height = 500, $id = '', $params = ''){
	static $loaded = false;

	if(!$loaded) {
		acymailing_addScript(false, ACYMAILING_JS . 'acymailing.js?v=' . filemtime(ACYMAILING_MEDIA . 'js' . DS . 'acymailing.js'));
		acymailing_addStyle(false, ACYMAILING_CSS . 'acypopup.css?v=' . filemtime(ACYMAILING_MEDIA . 'css' . DS . 'acypopup.css'));
		acymailing_addStyle(false, ACYMAILING_CSS.'acyicon.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acyicon.css'));
		$loaded = true;
	}

	if(!empty($id)) $id = ' id="'.$id.'" ';
	$url .= '&'.acymailing_noTemplate();
	return '<a onclick="acymailing.openpopup(\''.$url.'\','.$width.','.$height.'); return false;" class="acymailingpopup '.$class.'" '.$id.$params.'>'.$text.'</a>';
}

function acymailing_createArchive($name, $files){
	$contents = array();
	$ctrldir = array();

	$timearray = getdate();
	$dostime = (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) | ($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
	$dtime = dechex($dostime);
	$hexdtime = chr(hexdec($dtime[6] . $dtime[7])) . chr(hexdec($dtime[4] . $dtime[5])) . chr(hexdec($dtime[2] . $dtime[3])) . chr(hexdec($dtime[0] . $dtime[1]));

	foreach ($files as $file){
		$data = $file['data'];
		$filename = str_replace('\\', '/', $file['name']);

		$fr = "\x50\x4b\x03\x04\x14\x00\x00\x00\x08\x00".$hexdtime;

		$unc_len = strlen($data);
		$crc = crc32($data);
		$zdata = gzcompress($data);
		$zdata = substr(substr($zdata, 0, strlen($zdata) - 4), 2);
		$c_len = strlen($zdata);

		$fr .= pack('V', $crc).pack('V', $c_len).pack('V', $unc_len).pack('v', strlen($filename)).pack('v', 0).$filename.$zdata;

		$old_offset = strlen(implode('', $contents));
		$contents[] = $fr;

		$cdrec = "\x50\x4b\x01\x02\x00\x00\x14\x00\x00\x00\x08\x00".$hexdtime;
		$cdrec .= pack('V', $crc).pack('V', $c_len).pack('V', $unc_len).pack('v', strlen($filename)).pack('v', 0).pack('v', 0).pack('v', 0).pack('v', 0).pack('V', 32).pack('V', $old_offset).$filename;

		$ctrldir[] = $cdrec;
	}

	$data = implode('', $contents);
	$dir = implode('', $ctrldir);
	$buffer = $data . $dir . "\x50\x4b\x05\x06\x00\x00\x00\x00" . pack('v', count($ctrldir)) . pack('v', count($ctrldir)) . pack('V', strlen($dir)) . pack('V', strlen($data)) . "\x00\x00";

	return acymailing_writeFile($name.'.zip', $buffer);
}

function acymailing_currentURL(){
	$url = isset($_SERVER['HTTPS']) ? 'https' : 'http';
	$url .= '://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
	return $url;
}

function acymailing_accessList(){
	$listid = acymailing_getVar('int', 'listid');
	if(empty($listid)) return false;

	$listClass = acymailing_get('class.list');
	$myList = $listClass->get($listid);
	if(empty($myList->listid)) die('Invalid List');

	$currentUserid = acymailing_currentUserId();
	if(!empty($currentUserid) && $currentUserid == (int)$myList->userid) return true;
	if(empty($currentUserid) || $myList->access_manage == 'none') return false;
	if($myList->access_manage != 'all' && !acymailing_isAllowed($myList->access_manage)) return false;
	
	return true;
}

function acymailing_gridSort($title, $order, $direction = 'asc', $selected = '', $task = null, $new_direction = 'asc', $tip = ''){
	$direction = strtolower($direction);
	if ($order != $selected){
		$direction = $new_direction;
	}else{
		$direction = $direction == 'desc' ? 'asc' : 'desc';
	}

	$icon = array('acyicon-up', 'acyicon-down');
	$index = (int) ($direction == 'desc');

	$result = '<a href="#" onclick="acymailing.tableOrdering(\''.$order.'\', \''.$direction.'\', \''.$task.'\');return false;">';
	$result .= acymailing_tooltip(acymailing_translation('ACY_ORDER_COLUMN'), '', '', acymailing_translation($title));
	if ($order == $selected) $result .= '<span class="' . $icon[$index] . '"></span>';
	$result .= '</a>';

	return $result;
}

function acymailing_session(){
	$sessionID = session_id();
	if(empty($sessionID)) @session_start();
}

class acymailingController extends acymailingBridgeController{

	var $pkey = '';
	var $table = '';
	var $groupMap = '';
	var $groupVal = '';
	var $aclCat = '';

	function __construct($config = array()){
		parent::__construct($config);

		$this->registerDefaultTask('listing');
	}

	function getModel($name = '', $prefix = '', $config = array()){
		return false;
	}

	function listing(){
		if(!empty($this->aclCat) && !$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_setVar('layout', 'listing');
		return parent::display();
	}

	function isAllowed($cat, $action){
		if(acymailing_level(3)){
			$config = acymailing_config();
			if(!acymailing_isAllowed($config->get('acl_'.$cat.'_'.$action, 'all'))){
				acymailing_display(acymailing_translation('ACY_NOTALLOWED'), 'error');
				return false;
			}
		}
		return true;
	}

	function edit(){
		if(!empty($this->aclCat) && !$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_setVar('layout', 'form');
		return parent::display();
	}


	function add(){
		if(!empty($this->aclCat) && !$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_setVar('cid', array());
		acymailing_setVar('layout', 'form');
		return parent::display();
	}

	function apply(){
		$this->store();
		return $this->edit();
	}

	function save(){
		$this->store();
		return $this->listing();
	}

	function save2new(){
		$this->store();
		acymailing_setVar('cid', array());
		acymailing_setVar('layout', 'form');
		acymailing_setVar($this->pkey, '');
		return parent::display();
	}

	function saveorder(){
		if(!empty($this->aclCat) && !$this->isAllowed($this->aclCat, 'manage')) return;
		acymailing_checkToken();

		$orderClass = acymailing_get('helper.order');
		$orderClass->pkey = $this->pkey;
		$orderClass->table = $this->table;
		$orderClass->groupMap = $this->groupMap;
		$orderClass->groupVal = $this->groupVal;
		$orderClass->save();

		return $this->listing();
	}
}


class acymailingClass{

	var $tables = array();

	var $pkey = '';

	var $namekey = '';

	var $errors = array();

	function __construct($config = array()){
		global $acymailingCmsUserVars;
		$this->cmsUserVars = $acymailingCmsUserVars;
	}

	function save($element){
		$pkey = $this->pkey;
		if(empty($element->$pkey)){
			$status = acymailing_insertObject(acymailing_table(end($this->tables)), $element);
		}else{
			if(count((array)$element) > 1){
				$status = acymailing_updateObject(acymailing_table(end($this->tables)), $element, $pkey);
			}else{
				$status = true;
			}
		}
		if(!$status){
			$this->errors[] = substr(strip_tags(acymailing_getDBError()), 0, 200).'...';
		}

		if($status) return empty($element->$pkey) ? $status : $element->$pkey;
		return false;
	}

	function delete($elements){
		if(!is_array($elements)){
			$elements = array($elements);
		}

		if(empty($elements)) return 0;

		$column = is_numeric(reset($elements)) ? $this->pkey : $this->namekey;

		foreach($elements as $key => $val){
			$elements[$key] = acymailing_escapeDB($val);
		}

		if(empty($column) || empty($this->pkey) || empty($this->tables) || empty($elements)) return false;

		$whereIn = ' WHERE '.acymailing_secureField($column).' IN ('.implode(',', $elements).')';
		$result = true;

		acymailing_importPlugin('acymailing');

		$affected = 0;
		foreach($this->tables as $oneTable){
			acymailing_trigger('onAcyBefore'.ucfirst($oneTable).'Delete', array(&$elements));
			$query = 'DELETE FROM '.acymailing_table($oneTable).$whereIn;
			$affected = acymailing_query($query);
			$result = $affected !== false && $result;
		}


		if(!$result) return false;

		return $affected;
	}
}

acymailing_loadLanguage();

$config = acymailing_config();
if(!$config->get('ssl_links', 0)){
	define('ACYMAILING_LIVE', rtrim(str_replace('https:', 'http:', acymailing_rootURI()), '/').'/');
}else{
	define('ACYMAILING_LIVE', rtrim(str_replace('http:', 'https:', acymailing_rootURI()), '/').'/');
}

class acyEmoji
{
	public static function Encode($text){
		return self::convertEmoji($text, "ENCODE");
	}

	public static function Decode($text){
		return self::convertEmoji($text, "DECODE");
	}
	private static function convertEmoji($text,$op) {
		if(empty($text) || !file_exists(ACYMAILING_ROOT.'plugins'.DS.'acymailing'.DS.'emojis')) return $text;
		if($op=="ENCODE"){
			return preg_replace_callback('/([0-9|#][\x{20E3}])|[\x{00ae}|\x{00a9}|\x{203C}|\x{2047}|\x{2048}|\x{2049}|\x{3030}|\x{303D}|\x{2139}|\x{2122}|\x{3297}|\x{3299}][\x{FE00}-\x{FEFF}]?|[\x{2190}-\x{21FF}][\x{FE00}-\x{FEFF}]?|[\x{2300}-\x{23FF}][\x{FE00}-\x{FEFF}]?|[\x{2460}-\x{24FF}][\x{FE00}-\x{FEFF}]?|[\x{25A0}-\x{25FF}][\x{FE00}-\x{FEFF}]?|[\x{2600}-\x{27BF}][\x{FE00}-\x{FEFF}]?|[\x{2600}-\x{27BF}][\x{1F000}-\x{1FEFF}]?|[\x{2900}-\x{297F}][\x{FE00}-\x{FEFF}]?|[\x{2B00}-\x{2BF0}][\x{FE00}-\x{FEFF}]?|[\x{1F000}-\x{1F9FF}][\x{FE00}-\x{FEFF}]?|[\x{1F000}-\x{1F9FF}][\x{1F000}-\x{1FEFF}]?/u',array('self',"encodeEmoji"),$text);
		}else{
			return preg_replace_callback('/(\\\u[0-9a-f]{4})+/i', array('self', "decodeEmoji"), $text);
		}
	}

	private static function encodeEmoji($match){
		return str_replace(array('[', ']', '"'), '', json_encode($match));
	}

	private static function decodeEmoji($text){
		if(!$text) return '';
		$text = $text[0];
		$decode = json_decode($text, true);
		if($decode) return $decode;
		$text = '["'.$text.'"]';
		$decode = json_decode($text);
		if(count($decode) == 1){
			return $decode[0];
		}
		return $text;
	}
}

class acyPagination {
	var $total;
	var $start;
	var $value;

	public function __construct($total, $start, $value) {
		$this->total = $total;
		$this->start = $start;
		$this->value = $value;
	}

	function getListFooter(){
		$pagination = '<input type="hidden" name="limitstart" value="'.$this->start.'">';
		$nbPages = ceil($this->total / $this->value);
		if($nbPages < 2) return $pagination;

		$pagination .= '<ul class="acypagination">';
		$onclick = $this->start > 0 ? '" onclick="document.adminForm.limitstart.value=0; acymailing.submitform();"' : ' acypaginactive"';
		$pagination .= '<li><span class="acyicon-first'.$onclick.'></span></li>';
		$onclick = $this->start-$this->value >= 0 ? '" onclick="document.adminForm.limitstart.value='.($this->start-$this->value).'; acymailing.submitform();"' : ' acypaginactive"';
		$pagination .= '<li><span class="acyicon-backward'.$onclick.'></span></li>';

		acymailing_addScript(true, 'document.addEventListener("DOMContentLoaded", function(){
			document.getElementById("acypagination").addEventListener("keyup", function(e){
				var code = e.which;
				if(code == 13 || code == 188 || code == 186){
					if(this.value > '.$nbPages.') this.value = '.$nbPages.';
					var selectedPage = this.value-1;
					document.adminForm.limitstart.value = selectedPage*'.$this->value.';
					acymailing.submitform();
				}
			});
		});');
		$input = '<input id="acypagination" type="text" value="'.($this->start/$this->value+1).'" onkeyup="" />';

		$pagination .= '<li class="selectedPage">'.acymailing_translation_sprintf('ACY_PAGINATION_PAGE', $input, $nbPages).'</li>';

		$lastPage = floor(($this->total-1)/$this->value)*$this->value;

		$onclick = $this->start < $lastPage ? '" onclick="document.adminForm.limitstart.value='.($this->start+$this->value).'; acymailing.submitform();"' : ' acypaginactive"';
		$pagination .= '<li><span class="acyicon-forward'.$onclick.'></span></li>';
		$onclick = $this->start < $lastPage ? '" onclick="document.adminForm.limitstart.value='.$lastPage.'; acymailing.submitform();"' : ' acypaginactive"';
		$pagination .= '<li><span class="acyicon-last'.$onclick.'></span></li></ul>';
		return $pagination;
	}

	function getResultsCounter(){
		if(empty($this->total)) return '<div class="acypagination_counter">'.acymailing_translation('ACY_PAGINATION_NONE').'</div>';
		$from = $this->start+1;
		$to = $this->start+$this->value;
		if($to > $this->total) $to = $this->total;

		$paginationNb = array();
		$paginationNb[] = acymailing_selectOption(5,5);
		$paginationNb[] = acymailing_selectOption(10,10);
		$paginationNb[] = acymailing_selectOption(15,15);
		$paginationNb[] = acymailing_selectOption(20,20);
		$paginationNb[] = acymailing_selectOption(25,25);
		$paginationNb[] = acymailing_selectOption(30,30);
		$paginationNb[] = acymailing_selectOption(50,50);
		$paginationNb[] = acymailing_selectOption(100,100);

		$result = '<div class="acypagination_counter">'.acymailing_translation('DISPLAY').' # ';
		$onChange = 'if(document.adminForm.limitstart){ document.adminForm.limitstart.value = 0;} document.getElementById(\'adminForm\').submit();';
		$result .= acymailing_select($paginationNb, 'limit' , 'size="1" style="width:60px" onchange="'.$onChange.'"', 'value', 'text', $this->value).'<br />';
		return $result.acymailing_translation_sprintf('ACY_PAGINATION', $from, $to, $this->total).'</div>';
	}

	function getRowOffset($i){
		return $this->start + 1 + $i;
	}
}

class acyParameter {
	function __construct($params = null){
		if(is_string($params)) {
			if (ACYMAILING_J16) {
				$this->params = json_decode($params);
			} else {
				$params = explode("\n", $params);
				foreach ($params as $oneParam) {
					if (empty($oneParam)) continue;
					list($key, $val) = explode('=', $oneParam, 2);
					$this->params->$key = $val;
				}
			}
		}elseif(is_object($params)){
			$this->paramObject = $params;
		}elseif(is_array($params)){
			$this->params = (object) $params;
		}
	}

	function get($path, $default = null){
		if(empty($this->paramObject)) {
			if (empty($this->params->$path)) return $default;
			return $this->params->$path;
		}else{
			$value = $this->paramObject->get($path, 'noval');
			if($value === 'noval') $value = $this->paramObject->get('data.'.$path, $default);
			return $value;
		}
	}
}
helpers/acysliders.php000060400000006130152455705230011065 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.7.0
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php
class acyslidersHelper {
	var $ctrl = 'sliders';
	var $tabs = null;
	var $openPanel = false;
	var $mode = null;
	var $count = 0;
	var $name = '';
	var $options = null;

	function __construct() {
		if(!ACYMAILING_J16) {
			$this->mode = 'pane';
		} elseif(!ACYMAILING_J30) {
			$this->mode = 'sliders';
		} else {
			$this->mode = 'bootstrap';
		}
	}

	function startPane($name) { return $this->start($name); }
	function startPanel($text, $id) { return $this->panel($text, $id); }
	function endPanel() { return ''; }
	function endPane() { return $this->end(); }

	function setOptions($options = array()) {
		if($this->options == null)
			$this->options = $options;
		else
			$this->options = array_merge($this->options, $options);
	}

	function start($name, $options = array()) {
		$ret = '';
		if($this->mode == 'pane') {
			jimport('joomla.html.pane');
			if(!empty($this->options))
				$options = array_merge($options, $this->options);
			$this->tabs = JPane::getInstance('sliders', $options);
			$ret .= $this->tabs->startPane($name);
		} elseif($this->mode == 'sliders') {
			if(!empty($this->options))
				$options = array_merge($options, $this->options);
			$ret .= JHtml::_('sliders.start', $name, $options);
		} else {
			if($this->options == null)
				$this->options = $options;
			else
				$this->options = array_merge($this->options, $options);
			$this->name = $name;
			$this->count = 0;
			$ret .= '<div class="accordion" id="'.$name.'">';
		}
		return $ret;
	}

	function panel($text, $id) {
		$ret = '';
		if($this->mode == 'pane') {
			if($this->openPanel)
				$ret .= $this->tabs->endPanel();
			$ret .= $this->tabs->startPanel($text, $id);
			$this->openPanel = true;
		} elseif($this->mode == 'sliders') {
			$ret .= JHtml::_('sliders.panel', acymailing_translation($text), $id);
		} else {
			if($this->openPanel)
				$ret .= $this->_closePanel();

			$open = '';
			if((isset($this->options['startOffset']) && $this->options['startOffset'] == $this->count) || $this->count == 0)
				$open = ' in';
			$this->count++;
			$ret .= '
<div class="accordion-group">
    <div class="accordion-heading">
      <a class="accordion-toggle" data-toggle="collapse" data-parent="#'.$this->name.'" href="#'.$id.'">
        '.$text.'
      </a>
    </div>
    <div id="'.$id.'" class="accordion-body collapse'.$open.'">
      <div class="accordion-inner">
';
			$this->openPanel = true;
		}
		return $ret;
	}

	function _closePanel() {
		if(!$this->openPanel)
			return '';
		$this->openPanel = false;
		return '</div></div></div>';
	}

	function end() {
		$ret = '';
		if($this->mode == 'pane') {
			if($this->openPanel)
				$ret .= $this->tabs->endPanel();
			$ret .= $this->tabs->endPane();
		} elseif($this->mode == 'sliders') {
			$ret .= JHtml::_('sliders.end');
		} else {
			if($this->openPanel)
				$ret .= $this->_closePanel();
			$ret .= '</div>';
		}
		return $ret;
	}
}
helpers/export.php000060400000002616152455705230010251 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyexportHelper{

	function addHeaders($fileName = 'export'){
		$fileName = substr(preg_replace('#[^a-z0-9_-]#i','_',$fileName),0,50);
 		@ob_clean();

		header("Pragma: public");
		header("Expires: 0"); // set expiration time
		header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

		header("Content-Type: application/force-download");
		header("Content-Type: application/octet-stream");
		header("Content-Type: application/download");

		header("Content-Disposition: attachment; filename=".$fileName.".csv");

		header("Content-Transfer-Encoding: binary");
	}

	function exportOneData(&$exportdata,$fileName='export'){

		$config = acymailing_config();
		$encodingClass = acymailing_get('helper.encoding');

		$this->addHeaders($fileName);

		$eol= "\r\n";
		$before = '"';
		$separator = '"'.str_replace(array('semicolon','comma'),array(';',','), $config->get('export_separator',';')).'"';
		$exportFormat = $config->get('export_format','UTF-8');
		$after = '"';

		foreach($exportdata as $name => $total ){
			echo $before.$encodingClass->change($name.$separator.$total,'UTF-8',$exportFormat).$after.$eol;
		}

		exit;
	}
}
helpers/toolbar.php000060400000016424152455705230010374 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acytoolbarHelper{
	var $buttons = array();
	var $buttonOptions = array();
	var $title = '';
	var $titleLink = '';

	var $topfixed = true;

	var $htmlclass = '';

	function setTitle($name, $link = ''){
		$this->title = $name;
		$this->titleLink = $link;
		acymailing_setPageTitle($name);
	}

	function custom($task, $text, $class, $listSelect = true, $onClick = '', $title = ''){

		$submit = "acymailing.submitbutton('".$task."')";
		$js = !empty($listSelect) ? "if(document.adminForm.boxchecked.value==0){alert('".str_replace(array("'", '"'), array("\'", '\"'), acymailing_translation('ACY_SELECT_ELEMENT'))."');return false;}else{".$submit."}" : $submit;

		$onClick = !empty($onClick) ? $onClick : $js;
		if(empty($title)) $title = $text;

		$button = '<button id="toolbar-'.$class.'" onclick="'.$onClick.'" class="acytoolbar_'.$class.'" title="'.$title.'"><i class="acyicon-'.$class.'"></i><span>'.$text.'</span></button>';
		if(empty($this->buttonOptions)){
			$this->buttons[] = $button;
			return;
		}

		$dropdownOptions = '<ul class="buttonOptions" style="margin: 0px; text-align: left;">';
		foreach($this->buttonOptions as $oneOption){
			$dropdownOptions .= '<li>'.$oneOption.'</li>';
		}
		$dropdownOptions .= '</ul>';

		$buttonArea = $button;


		$this->buttons[] = '<div style="display:inline;" class="subbuttonactions">'.$buttonArea.'<span class="acytoolbar_hover acybuttongroup_'.$class.'"><span style="vertical-align: top; display:inline-block; padding-top:10px;" class="acyicon-down"></span><span class="acytoolbar_hover_display">'.$dropdownOptions.'</span></span></div>';

		$this->buttonOptions = array();
	}

	function display(){
		acymailing_addScript(false, ACYMAILING_JS.'acytoolbar.js?v='.filemtime(ACYMAILING_MEDIA.'js'.DS.'acytoolbar.js'));
		acymailing_addStyle(true, '#system-message-container, #system-message{display:none;}');
		
		$classCtrl = acymailing_getVar('cmd', 'ctrl', '');
		echo '<div id="acymenu_top" class="acytoolbarmenu donotprint '.(empty($this->topfixed) ? '' : 'acyaffix-top ').(!empty($classCtrl) ? 'acytopmenu_'.$classCtrl.' ' : '').$this->htmlclass.'" >';
		echo '<table cellspacing="0" border="0" cellpadding="0" style="width: 100%;height: 40px;">
				<colgroup>
					<col width="100%" />
					<col width="0%" />
				</colgroup>
				<tr><td class="acytoolbartitle">';
		if(!empty($this->title)){
			$title = htmlspecialchars($this->title, ENT_COMPAT, 'UTF-8');
			if(!empty($this->titleLink)) $title = '<a style="color:white;" href="'.acymailing_completeLink($this->titleLink).'">'.$title.'</a>';
			echo $title;
		}
		echo '</td><td style="white-space: nowrap;" class="acytoolbarmenu_menu">';
		echo implode(' ', $this->buttons);
		echo '</td></tr></table></div>';

		acymailing_displayMessages();  
		if(!empty($this->topfixed)) acymailing_navigationTabs();
	}

	function add(){
		$this->custom('add', acymailing_translation('ACY_NEW'), 'new', false);
	}

	function edit(){
		$this->custom('edit', acymailing_translation('ACY_EDIT'), 'edit', true);
	}

	function delete(){
		$onClick = 'if(document.adminForm.boxchecked.value==0){
						alert(\''.str_replace("'", "\\'", acymailing_translation('ACY_SELECT_ELEMENT')).'\');
					}else{
						if(confirm(\''.str_replace("'", "\\'", acymailing_translation('ACY_VALIDDELETEITEMS', true)).'\')){
							acymailing.submitbutton(\'remove\');
						}
					}';
		$this->custom('remove', acymailing_translation('ACY_DELETE'), 'delete', true, $onClick);
	}

	function copy(){
		$this->custom('copy', acymailing_translation('ACY_COPY'), 'copy', true);
	}

	function link($link, $text, $class){
		$onClick = "location.href='".$link."';return false;";
		$this->custom('link', $text, $class, false, $onClick);
	}

	function help($helpname, $anchor = ''){
		$config = acymailing_config();
		$level = $config->get('level');

		$url = ACYMAILING_HELPURL.$helpname.'&level='.$level.(!empty($anchor) ? '#'.$anchor : '');
		$iFrame = "'<iframe frameborder=\"0\" src=\'$url\' width=\'100%\' height=\'100%\' scrolling=\'auto\'></iframe>'";

		$js = "var openHelp = true;
				function displayDoc(){
					var box=document.getElementById('iframedoc');
					if(openHelp){
						box.innerHTML = ".$iFrame.";
						box.className = 'slide_open';
					}else{
						box.className = 'slide_close';
					}
					openHelp = !openHelp;
				}";
		acymailing_addScript(true, $js);

		$onClick = 'displayDoc();return false;';

		$this->custom('help', acymailing_translation('ACY_HELP'), 'help', false, $onClick);
	}

	function divider(){
		$this->buttons[] = '<span class="acytoolbar_divider"></span>';
	}

	function cancel(){
		$this->custom('cancel', acymailing_translation('ACY_CANCEL'), 'cancel', false);
	}

	function save(){
		$this->custom('save', acymailing_translation('ACY_SAVE'), 'save', false);
	}

	function apply(){
		$this->custom('apply', acymailing_translation('ACY_APPLY'), 'apply', false);
	}

	function popup($name = '', $text = '', $url = '', $width = 0, $height = 480){
		$this->buttons[] = $this->_popup($name, $text, $url, $width, $height);
	}

	function directPrint(){
		$this->buttons[] = $this->_directPrint();
	}

	private function _popup($name = '', $text = '', $url = '', $width = 0, $height = 480){
		$ids = '';
		if(in_array($name, array('ABtesting', 'action'))){
			$js = "
			function getAcyPopupUrl(){
				i = 0;
				ids = '';
				while(window.document.getElementById('cb'+i)){
					if(window.document.getElementById('cb'+i).checked) ids += window.document.getElementById('cb'+i).value+',';
					i++;
				}
				return ids.slice(0,-1);
			}";
			acymailing_addScript(true, $js);

			if($name == 'ABtesting'){
				$ids = '&mailid=';
			}elseif($name == 'action'){
				$ids = '&subid=';
			}

			$ids .= "'+getAcyPopupUrl()+'";
		}

		return acymailing_popup($url.$ids, '<button id="toolbar-'.$name.'" class="acytoolbar_'.$name.'" title="'.$text.'"><i class="acyicon-'.$name.'"></i><span>'.$text.'</span></button>', '', $width, $height, 'a_'.$name);
	}

	private function _directPrint(){

		acymailing_addStyle(false, ACYMAILING_CSS.'acyprint.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acyprint.css'), 'text/css', 'print');

		$function = "if(document.getElementById('iframepreview')){document.getElementById('iframepreview').contentWindow.focus();document.getElementById('iframepreview').contentWindow.print();}else{window.print();}return false;";

		return '<button class="acytoolbar_print" onclick="'.$function.'" title="'.acymailing_translation('ACY_PRINT', true).'"><i class="acyicon-print"></i><span>'.acymailing_translation('ACY_PRINT', true).'</span></button>';
	}

	function addButtonOption($task, $text, $class, $listSelect, $onClick = ''){

		$submit = "acymailing.submitbutton('".$task."')";
		$js = !empty($listSelect) ? "if(document.adminForm.boxchecked.value==0){alert('".str_replace(array("'", '"'), array("\'", '\"'), acymailing_translation('ACY_SELECT_ELEMENT'))."');return false;}else{".$submit."}" : $submit;

		$onClick = !empty($onClick) ? $onClick : $js;

		$this->buttonOptions[] = '<button onclick="'.$onClick.'" class="acytoolbar_'.$class.'" title="'.$text.'"><span class="acyicon-'.$class.'"></span><span>'.$text.'</span></button>';
	}
}
helpers/list.php000060400000005510152455705230007677 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acylistHelper{

	var $sendNotif = true;
	var $sendConf = true;
	var $forceConf = false;
	var $survey = '';
	var $campaigndelay = 0;
	var $skipedfollowups = 0;

	function subscribe($subid,$listids){


		acymailing_importPlugin('acymailing');
		$resultsTrigger = acymailing_trigger('onAcySubscribe', array($subid, $listids));

	}//endfct

	function unsubscribe($subid,$listids){

		if(acymailing_level(3)){
			$campaignClass = acymailing_get('helper.campaign');
			$campaignClass->stop($subid,$listids);
		}

		$config = acymailing_config();
		static $alreadySent = false;
		if($this->sendNotif AND !$alreadySent AND $config->get('notification_unsub') AND !acymailing_isAdmin()){
			$alreadySent = true;
			$mailer = acymailing_get('helper.mailer');
			$mailer->report = false;
			$mailer->autoAddUser = true;
			$mailer->checkConfirmField = false;
			$userClass = acymailing_get('class.subscriber');
			$subscriber = $userClass->get($subid);
			$ipClass = acymailing_get('helper.user');
			$mailer->addParam('survey',$this->survey);
			$listSubClass= acymailing_get('class.listsub');
			$mailer->addParam('user:subscription',$listSubClass->getSubscriptionString($subscriber->subid));
			$mailer->addParam('user:subscriptiondates',$listSubClass->getSubscriptionString($subscriber->subid, true));
			$mailer->addParamInfo();
			$subscriber->ip = $ipClass->getIP();
			foreach($subscriber as $fieldname => $value) $mailer->addParam('user:'.$fieldname,$value);
			$allUsers = explode(',',$config->get('notification_unsub'));
			foreach($allUsers as $oneUser){
				$mailer->sendOne('notification_unsub',$oneUser);
			}
		}

		if($this->forceConf || ($this->sendConf AND !acymailing_isAdmin())){
			$messages = acymailing_loadResultArray('SELECT DISTINCT `unsubmailid` FROM '.acymailing_table('list').' WHERE `listid` IN ('.implode(',',$listids).') AND `published` = 1  AND `unsubmailid` > 0');

			if(!empty($messages)){
				$config = acymailing_config();
				$mailHelper = acymailing_get('helper.mailer');
				$mailHelper->report = $config->get('unsub_message',true);
				$mailHelper->checkAccept = false;
				foreach($messages as $mailid){
					$mailHelper->trackEmail = true;
					$mailHelper->sendOne($mailid,$subid);
				}
			}
		}//end only frontend

		acymailing_query('DELETE  FROM '.acymailing_table('queue').' WHERE `subid` = '.(int) $subid.' AND `mailid` IN (SELECT `mailid` FROM '.acymailing_table('listmail').' WHERE `listid` IN ('.implode(',',$listids).'))');

		acymailing_importPlugin('acymailing');
		$resultsTrigger = acymailing_trigger('onAcyUnsubscribe', array($subid, $listids));
	}
}//endclass
helpers/acypopup.php000060400000003116152455705230010564 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acypopupHelper{

	function display($text, $title, $url, $id, $width, $height, $attr = '', $icon = '', $type = 'button', $dynamicUrl = false){
		static $loaded = false;

		if(!$loaded) {
			acymailing_addScript(false, ACYMAILING_JS . 'acymailing.js?v=' . filemtime(ACYMAILING_MEDIA . 'js' . DS . 'acymailing.js'));
			acymailing_addStyle(false, ACYMAILING_CSS . 'acypopup.css?v=' . filemtime(ACYMAILING_MEDIA . 'css' . DS . 'acypopup.css'));
			$loaded = true;
		}
		
		$params = ' id="'.$id.'" onclick="window.acymailing.openpopup(\''.$url.'\', '.intval($width).', '.intval($height).'); return false;"';
		if($type == 'button'){
			$html = '<button '.$this->getAttr($attr, 'btn btn-small').$params.'>';
		}else{
			$html = '<a '.$attr.' href="#"'.$params.'>';
		}

		if(!empty($icon)){
			$html .= '<i class="icon-16-'.$icon.'"></i> ';
		}
		$html .= $text.(($type == 'button') ? '</button>' : '</a>');

		return $html;
	}

	function getAttr($attr, $class){
		if(empty($attr)){
			return 'class="'.$class.'"';
		}
		$attr = ' '.$attr;
		if(strpos($attr, ' class="') !== false){
			$attr = str_replace(' class="', ' class="'.$class.' ', $attr);
		}elseif(strpos($attr, ' class=\'') !== false){
			$attr = str_replace(' class=\'', ' class=\''.$class.' ', $attr);
		}else{
			$attr .= ' class="'.$class.'"';
		}
		return trim($attr);
	}
}
helpers/acytabs.php000060400000006123152455705230010353 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acytabsHelper{
	var $openPanel = false;
	var $data = array();
	var $name = '';

	function __construct(){
	}

	function startPane($name){
		$this->name = $name;
	}

	function startPanel($text, $id){
		if($this->openPanel) $this->endPanel();

		$obj = new stdClass();
		$obj->text = $text;
		$obj->id = $id;
		$obj->data = '';
		$this->data[] = $obj;
		ob_start();
		$this->openPanel = true;
	}

	function endPanel(){
		if(!$this->openPanel) return;

		$panel = end($this->data);
		$panel->data .= ob_get_clean();
		$this->openPanel = false;
	}

	function endPane(){
		$ret = '';
		$content = '';

		if($this->openPanel) $this->endPanel();

		$ret .= '<div style="margin-left:10px;" class="acytabsystem"><ul class="nav nav-tabs" id="'.$this->name.'" style="width:100%;">'."\r\n";
		foreach($this->data as $k => $data){
			$ret .= '	<li'.($k == 0 ? ' class="active"' : '').' id="'.$data->id.'_tabli"><a href="#'.$data->id.'" id="'.$data->id.'_tablink" onclick="toggleTab(\''.$this->name.'\', \''.$data->id.'\');return false;">'.acymailing_translation($data->text).'</a></li>'."\r\n";

			$content .= '	<div class="tab-pane'.($k == 0 ? ' active' : '').'" id="'.$data->id.'">'."\r\n".$data->data."\r\n".'	</div>'."\r\n";
			unset($data->data);
		}
		$ret .= '</ul>'."\r\n".'<div class="tab-content" id="'.$this->name.'_content">'."\r\n";
		$ret .= $content.'</div></div>';
		unset($this->data);

		static $jsInit = false;
		if(!$jsInit){
			$jsInit = true;
			$js = '
			
			document.addEventListener("DOMContentLoaded", function(){
				var selectedTab = localStorage.getItem("acy'.$this->name.'");
				if(selectedTab && document.getElementById(selectedTab)){
					var selectedLi = document.getElementById("'.$this->name.'").querySelector("li.active");
					var selectedContent = document.getElementById("'.$this->name.'_content").querySelector("div.tab-pane.active");
					selectedLi.className = selectedLi.className.replace("active", "");
					selectedContent.className = selectedContent.className.replace("active", "");
					
					document.getElementById(selectedTab+"_tabli").className += " active";
					document.getElementById(selectedTab).className += " active";
				}
			});
				
			function toggleTab(group, id){
				localStorage.setItem("acy"+group, id);
			
				var contentTabs = document.querySelectorAll("#"+group+"_content > div");
				for (i = 0; i < contentTabs.length; i++) {
					contentTabs[i].className = contentTabs[i].className.replace("active", "");
				}
				document.getElementById(id).className += " active";
				var groupTabs = document.querySelectorAll("#"+group+" > li");
				for (i = 0; i < groupTabs.length; i++) {
					groupTabs[i].className = groupTabs[i].className.replace("active", "");
				}
				document.getElementById(id+"_tablink").parentElement.className += " active";
				
			}';
			acymailing_addScript(true, $js);
		}

		return $ret;
	}
}
helpers/acymenu.php000060400000032524152455705230010372 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acymenuHelper{
	function display($selected = ''){

		if(!ACYMAILING_J16){
			acymailing_addStyle(true, " #submenu-box{display:none !important;} ");
		}

		$js = "function acyToggleClass(id,myclass){
			elem = document.getElementById(id);
			if(elem.className.search(myclass) < 0){

				var elements = document.querySelectorAll('.mainelement');

				for(var i = 0; i < elements.length;i++){
					elements[i].className = elements[i].className.replace('opened','');
				}
				elem.className += ' '+myclass;
				if(myclass == 'iconsonly') sessionStorage.setItem('acyclosedmenu', '1');
			}else{
				elem.className = elem.className.replace(' '+myclass,'');
				if(myclass == 'iconsonly') sessionStorage.setItem('acyclosedmenu', '0');
			}
		}

		document.addEventListener(\"DOMContentLoaded\", function(){
			var isClosed = sessionStorage.getItem('acyclosedmenu');
			if(isClosed == 1) acyToggleClass('acyallcontent', 'iconsonly');
			setTimeout(function () {
				document.getElementById('acymainarea').style.transition = 'margin 0.4s cubic-bezier(0.00, 0.00, 1, 1.00)';
				document.getElementById('acymenu_leftside').style.transition = 'width 0.4s cubic-bezier(0.00, 0.00, 1, 1.00)';
			}, 1000);
		});

		function acyAddClass(id,myclass){
			elem = document.getElementById(id);
			if(elem.className.search(myclass)>=0) return;
			elem.className += ' '+myclass;
		}

		function acyRemoveClass(id,myclass){
			elem = document.getElementById(id);
			elem.className = elem.className.replace(' '+myclass,'');
		}
		
		function onButtonNewVersionPlugin(){
			localStorage.setItem('acyconfig_tab', 'config_plugins');
		}
		
		";

		if(acymailing_isAdmin()){
			acymailing_addScript(false, ACYMAILING_JS.'acytoolbar.js?v='.filemtime(ACYMAILING_MEDIA.'js'.DS.'acytoolbar.js'));
		}

		acymailing_addScript(true, $js);
		$selected = substr($selected, 0, 5);
		if($selected == 'data' || $selected == 'data&' || $selected == 'filte') $selected = 'subsc';
		if($selected == 'list' || $selected == 'actio') $selected = 'list';
		if($selected == 'campa' || $selected == 'templ' || $selected == 'auton' || $selected == 'notif' || $selected == 'simpl') $selected = 'newsl';
		if($selected == 'diagr') $selected = 'stats';
		if($selected == 'cpane' || $selected == 'field' || $selected == 'bounc') $selected = 'cpane';

		$config = acymailing_config();
		$mainmenu = array();
		$submenu = array();

		if(acymailing_isAllowed($config->get('acl_cpanel_manage', 'all'))){
			$mainmenu['dashboard'] = array(acymailing_translation('ACY_CPANEL'), acymailing_completeLink('dashboard'), 'acyicon-dashboard');
		}

		if(acymailing_isAllowed($config->get('acl_subscriber_manage', 'all'))){
			$mainmenu['subscriber'] = array(acymailing_translation('USERS'), acymailing_completeLink('subscriber'), 'acyicon-user');
			$submenu['subscriber'] = array();
			$submenu['subscriber'][] = array(acymailing_translation('USERS'), acymailing_completeLink('subscriber'), 'acyicon-user');
			if(acymailing_isAllowed($config->get('acl_subscriber_import', 'all'))) $submenu['subscriber'][] = array(acymailing_translation('IMPORT'), acymailing_completeLink('data&task=import'), 'acyicon-import');
			if(acymailing_isAllowed($config->get('acl_subscriber_export', 'all'))) $submenu['subscriber'][] = array(acymailing_translation('ACY_EXPORT'), acymailing_completeLink('data&task=export'), 'acyicon-export');
			if(acymailing_isAllowed($config->get('acl_lists_filter', 'all'))) $submenu['subscriber'][] = array(acymailing_translation('ACY_MASS_ACTIONS'), acymailing_completeLink('filter'), 'acyicon-filter');
		}

		if(acymailing_isAllowed($config->get('acl_lists_manage', 'all'))){
			$mainmenu['list'] = array(acymailing_translation('LISTS'), acymailing_completeLink('list'), 'acyicon-list');
			$submenu['list'] = array();
			$submenu['list'][] = array(acymailing_translation('LISTS'), acymailing_completeLink('list'), 'acyicon-list');
			if(acymailing_isAllowed($config->get('acl_distribution_manage', 'all'))){
				$submenu['list'][] = array(acymailing_translation('ACY_DISTRIBUTION'), acymailing_completeLink('action'), 'acyicon-distribution');
			}
		}

		if(acymailing_isAllowed($config->get('acl_newsletters_manage', 'all'))){
			$mainmenu['newsletter'] = array(acymailing_translation('NEWSLETTERS'), acymailing_completeLink('newsletter'), 'acyicon-newsletter');
			$submenu['newsletter'] = array();
			$submenu['newsletter'][] = array(acymailing_translation('NEWSLETTERS'), acymailing_completeLink('newsletter'), 'acyicon-newsletter');
			if(acymailing_level(2) && acymailing_isAllowed($config->get('acl_autonewsletters_manage', 'all'))){
				$submenu['newsletter'][] = array(acymailing_translation('AUTONEWSLETTERS'), acymailing_completeLink('autonews'), 'acyicon-autonewsletter');
			}
			if(acymailing_level(3) && acymailing_isAllowed($config->get('acl_campaign_manage', 'all'))){
				$submenu['newsletter'][] = array(acymailing_translation('CAMPAIGN'), acymailing_completeLink('campaign'), 'acyicon-campaign');
			}
			if(acymailing_level(1) && acymailing_isAllowed($config->get('acl_configuration_manage', 'all')) && (!ACYMAILING_J16 || acymailing_authorised('core.admin', 'com_acymailing'))){
				$submenu['newsletter'][] = array(acymailing_translation('JOOMLA_NOTIFICATIONS'), acymailing_completeLink('notification'), 'acyicon-joomla');
			}
			if(acymailing_level(3) && acymailing_isAllowed($config->get('acl_simple_sending_manage', 'all'))){
				$submenu['newsletter'][] = array(acymailing_translation('SIMPLE_SENDING'), acymailing_completeLink('simplemail&task=edit'), 'acyicon-send');
			}


			if(acymailing_isAllowed($config->get('acl_templates_manage', 'all'))) $submenu['newsletter'][] = array(acymailing_translation('ACY_TEMPLATES'), acymailing_completeLink('template'), 'acyicon-template');
		}

		if(acymailing_isAllowed($config->get('acl_queue_manage', 'all'))) $mainmenu['queue'] = array(acymailing_translation('QUEUE'), acymailing_completeLink('queue'), 'acyicon-queue');

		if(acymailing_isAllowed($config->get('acl_statistics_manage', 'all'))){
			$mainmenu['stats'] = array(acymailing_translation('STATISTICS'), acymailing_completeLink('stats'), 'acyicon-statistic');
			$submenu['stats'] = array();
			$submenu['stats'][] = array(acymailing_translation('STATISTICS'), acymailing_completeLink('stats'), 'acyicon-statistic');
			$submenu['stats'][] = array(acymailing_translation('DETAILED_STATISTICS'), acymailing_completeLink('stats&task=detaillisting'), 'acyicon-detailed-stat');
			if(acymailing_level(1)) $submenu['stats'][] = array(acymailing_translation('CLICK_STATISTICS'), acymailing_completeLink('statsurl'), 'acyicon-click');
			if(acymailing_level(1)) $submenu['stats'][] = array(acymailing_translation('CHARTS'), acymailing_completeLink('diagram'), 'acyicon-chart');
		}
		if(acymailing_isAllowed($config->get('acl_configuration_manage', 'all')) && (!ACYMAILING_J16 || acymailing_authorised('core.admin', 'com_acymailing'))){
			$mainmenu['cpanel'] = array(acymailing_translation('ACY_CONFIGURATION'), acymailing_completeLink('cpanel'), 'acyicon-configuration');
			$submenu['cpanel'] = array();
			$submenu['cpanel'][] = array(acymailing_translation('ACY_CONFIGURATION'), acymailing_completeLink('cpanel'), 'acyicon-configuration');
			$submenu['cpanel'][] = array(acymailing_translation('EXTRA_FIELDS'), acymailing_completeLink('fields'), 'acyicon-custom-field');
			$submenu['cpanel'][] = array(acymailing_translation('BOUNCE_HANDLING'), acymailing_completeLink('bounces'), 'acyicon-bounce');
		}
		
		acymailing_addStyle(false, ACYMAILING_CSS.'acymenu.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'acymenu.css'));

		$acysmsLink = '';
		if(acymailing_isAllowed($config->get('acl_configuration_manage', 'all'))) $acysmsLink = '<a class="sendother" href="index.php?option=com_acymailing&ctrl=update&task=acysms">'.acymailing_translation('ACY_SMS').'&nbsp;&nbsp;<i class="acyicon-message"></i></a>';

		$menu = '<div id="acymenu_leftside" class="donotprint acyaffix-top">';
		$menu .= '<div class="acymenu_slide"><span>'.$acysmsLink.'<i class="acyicon-open-close" onclick="acyToggleClass(\'acyallcontent\',\'iconsonly\');"></i></span></div>';
		$menu .= '<div class="acymenu_mainmenus">';
		$menu .= '<ul>';
		foreach($mainmenu as $id => $oneMenu){
			$sel = '';
			if($selected == substr($id, 0, 5)) $sel = ' sel opened';
			$menu .= '<li class="mainelement'.$sel.'" id="mainelement'.$id.'"><span onclick="acyToggleClass(\'mainelement'.$id.'\',\'opened\');"><a '.(!empty($submenu[$id]) ? 'href="#" onclick="return false;"' : 'href="'.$oneMenu[1].'"').' ><i class="'.$oneMenu[2].'"></i><span class="subtitle">'.$oneMenu[0].'</span>'.(!empty($submenu[$id]) ? '<i class="acyicon-down"></i>' : '').'</a></span>';
			if(!empty($submenu[$id])){
				$menu .= '<ul>';
				foreach($submenu[$id] as $subelement){
					$menu .= '<li class="acysubmenu" ><a class="acysubmenulink" href="'.$subelement[1].'" title="'.$subelement[0].'"><i class="'.$subelement[2].'"></i><span>'.$subelement[0].'</span></a></li>';
				}
				$menu .= '</ul>';
			}
			$menu .= '</li>';
		}
		$menu .= '<li class="mainelement" id="mainelementmyacymailing">';
		$menu .= '<div id="myacymailingarea" class="myacymailingarea">'; //DO NOT CHANGE THIS ID! we use it for ajax things...
		$menu .= $this->myacymailingarea();
		$menu .= '</div>'; //End of acymailing myacymailingarea

		$menu .= '</li>';
		$menu .= '</ul>';
		$menu .= '</div>'; //end of acymenu_mainmenus
		$menu .= '</div>'; //end of acymenu_leftside

		return $menu;
	}

	public function myacymailingarea(){
		$config = acymailing_config();
		if(!acymailing_isAllowed($config->get('acl_configuration_manage', 'all'))){
			return '';
		}
		$this->_addAjaxScript();


		$menu = '<div id="myacymailing_level">'.ACYMAILING_NAME.' '.$config->get('level').' : '.$config->get('version').'</div><div id="myacymailing_version">';

		$currentVersion = $config->get('version', '');
		$latestVersion = $config->get('latestversion', '');
		$versionPlugin = $config->get('pluginNeedUpdate', '');

		if(($currentVersion >= $latestVersion) && empty($versionPlugin)){
			$menu .= '<div class="acyversion_uptodate myacymailingbuttons">'.acymailing_translation('ACY_LATEST_VERSION_OK').'</div>';
		}elseif(!empty($versionPlugin) && $currentVersion >= $latestVersion){ // If there is a new plugin version
			$menu .= '<div class="acyversion_needtoupdate myacymailingbuttons"><a onclick="onButtonNewVersionPlugin()" class="acy_updateversion" href="'.acymailing_completeLink('cpanel#config_plugins').'" ><i class="acyicon-import"></i>'.acymailing_translation('ACY_PLUGIN_NEED_UPDATE').'</a></div>';
		}elseif(!empty($latestVersion)){
			$menu .= '<div class="acyversion_needtoupdate myacymailingbuttons"><a class="acy_updateversion" href="'.ACYMAILING_REDIRECT.'update-acymailing-'.$config->get('level').'" target="_blank"><i class="acyicon-import"></i>'.acymailing_translation_sprintf('ACY_UPDATE_NOW', $latestVersion).'</a></div>';
		}

		$menu .= '</div>';

		if(acymailing_level(1)){
			$expirationDate = $config->get('expirationdate', '');

			if(empty($expirationDate) || $expirationDate == -1){
				$menu .= '<div id="myacymailing_expiration"></div>';
			}elseif($expirationDate == -2){
				$menu .= '<div id="myacymailing_expiration"><div class="acylicence_expired"><span style="color:#c2d5f3; line-height: 16px;">'.acymailing_translation('ACY_ATTACH_LICENCE').' :</span><div><a class="acy_attachlicence myacymailingbuttons" href="'.ACYMAILING_REDIRECT.'acymailing-assign" target="_blank"><i class="acyicon-attach"></i>'.acymailing_translation('ACY_ATTACH_LICENCE_BUTTON').'</a></div></div></div>';
			}elseif($expirationDate < time()){
				$menu .= '<div id="myacymailing_expiration"><div class="acylicence_expired"><span class="acylicenceinfo">'.acymailing_translation('ACY_SUBSCRIPTION_EXPIRED').'</span><a class="acy_subscriptionexpired myacymailingbuttons" href="'.ACYMAILING_REDIRECT.'renew-acymailing-'.$config->get('level').'" target="_blank"><i class="acyicon-renew"></i>'.acymailing_translation('ACY_SUBSCRIPTION_EXPIRED_LINK').'</a></div></div>';
			}else{
				$menu .= '<div id="myacymailing_expiration"><div class="acylicence_valid myacymailingbuttons"><span class="acy_subscriptionok">'.acymailing_translation('ACY_VALID_UNTIL').' : '.acymailing_getDate($expirationDate, acymailing_translation('DATE_FORMAT_LC4')).'</span></div></div>';
			}
		}

		$menu .= '<div class="myacymailingbuttons"><button onclick="checkForNewVersion()"><i class="acyicon-search"></i>'.acymailing_translation('ACY_CHECK_MY_VERSION').'</button></div>';

		return $menu;
	}

	private function _addAjaxScript(){

		$script = "function checkForNewVersion(){
			document.getElementById('myacymailingarea').innerHTML = '<span class=\"onload spinner2\"></span>';
			
			var xhr = new XMLHttpRequest();
			xhr.open('POST', '".acymailing_prepareAjaxURL('update')."&task=checkForNewVersion');
			xhr.onload = function(){
				response = JSON.parse(xhr.responseText);
				document.getElementById('myacymailingarea').innerHTML = response.content;
			};
			xhr.send();
		}";

		$config = acymailing_config();
		$lastlicensecheck = $config->get('lastlicensecheck', '');
		if(empty($lastlicensecheck) || $lastlicensecheck < (time() - 604800)){
			$script .= 'window.addEventListener("load", function(){
				checkForNewVersion();
			});';
		}

		acymailing_addScript(true, $script);
	}
}

helpers/acyplugins.php000060400000071467152455705230011120 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acypluginsHelper{

	public $wraped = false;
	public $name = 'content';

	function getFormattedResult($elements, $parameter){
		if(count($elements) < 2) return implode('', $elements);

		$beforeAll = array();
		$beforeAll['table'] = '<table cellspacing="0" cellpadding="0" border="0" width="100%" class="elementstable">'."\n";
		$beforeAll['ul'] = '<ul class="elementsul">'."\n";
		$beforeAll['br'] = '';

		$beforeBlock = array();
		$beforeBlock['table'] = '<tr class="elementstable_tr numrow{rownum}">'."\n";
		$beforeBlock['ul'] = '';
		$beforeBlock['br'] = '';

		$beforeOne = array();
		$beforeOne['table'] = '<td valign="top" width="{equalwidth}" class="elementstable_td numcol{numcol}" >'."\n";
		$beforeOne['ul'] = '<li class="elementsul_li numrow{rownum}">'."\n";
		$beforeOne['br'] = '';

		$afterOne = array();
		$afterOne['table'] = '</td>'."\n";
		$afterOne['ul'] = '</li>'."\n";
		$afterOne['br'] = '<br />'."\n";

		$afterBlock = array();
		$afterBlock['table'] = '</tr>'."\n";
		$afterBlock['ul'] = '';
		$afterBlock['br'] = '';

		$afterAll = array();
		$afterAll['table'] = '</table>'."\n";
		$afterAll['ul'] = '</ul>'."\n";
		$afterAll['br'] = '';


		$type = 'table';
		$cols = 1;
		if(!empty($parameter->displaytype)) $type = $parameter->displaytype;
		if($type == 'none') return implode('', $elements);
		if(!empty($parameter->cols)) $cols = $parameter->cols;

		$string = $beforeAll[$type];
		$a = 0;
		$numrow = 1;
		foreach($elements as $oneElement){
			if($a == $cols){
				$string .= $afterBlock[$type];
				$a = 0;
			}
			if($a == 0){
				$string .= str_replace('{rownum}', $numrow, $beforeBlock[$type]);
				$numrow++;
			}
			$string .= str_replace('{numcol}', $a + 1, $beforeOne[$type]).$oneElement.$afterOne[$type];
			$a++;
		}
		while($cols > $a){
			$string .= str_replace('{numcol}', $a + 1, $beforeOne[$type]).$afterOne[$type];
			$a++;
		}

		$string .= $afterBlock[$type];
		$string .= $afterAll[$type];

		$equalwidth = intval(100 / $cols).'%';

		$string = str_replace(array('{equalwidth}'), array($equalwidth), $string);

		return $string;
	}

	function formatString(&$replaceme, $mytag){
		if(!empty($mytag->part)){
			$parts = explode(' ', $replaceme);
			if($mytag->part == 'last'){
				$replaceme = count($parts) > 1 ? end($parts) : '';
			}else{
				if(is_numeric($mytag->part) && count($parts) >= $mytag->part){
					$replaceme = $parts[$mytag->part - 1];
				}else{
					$replaceme = reset($parts);
				}
			}
		}

		if(!empty($mytag->type)){
			if(empty($mytag->format)) $mytag->format = acymailing_translation('DATE_FORMAT_LC3');
			if($mytag->type == 'date'){
				$replaceme = acymailing_getDate(acymailing_getTime($replaceme), $mytag->format);
			}elseif($mytag->type == 'time'){
				$replaceme = acymailing_getDate($replaceme, $mytag->format);
			}elseif($mytag->type == 'diff'){
				try{
					$date = $replaceme;
					if(is_numeric($date)) $date = acymailing_getDate($replaceme, '%Y-%m-%d %H:%M:%S');
					$dateObj = new DateTime($date);
					$nowObj = new DateTime();
					$diff = $dateObj->diff($nowObj);
					$replaceme = $diff->format($mytag->format);
				}catch(Exception $e){
					$replaceme = 'Error using the "diff" parameter in your tag. Please make sure the DateTime() and diff() functions are available on your server.';
				}
			}
		}

		if(!empty($mytag->lower) || !empty($mytag->lowercase)) $replaceme = function_exists('mb_strtolower') ? mb_strtolower($replaceme, 'UTF-8') : strtolower($replaceme);
		if(!empty($mytag->upper) || !empty($mytag->uppercase)) $replaceme = function_exists('mb_strtoupper') ? mb_strtoupper($replaceme, 'UTF-8') : strtoupper($replaceme);
		if(!empty($mytag->ucwords)) $replaceme = ucwords($replaceme);
		if(!empty($mytag->ucfirst)) $replaceme = ucfirst($replaceme);
		if(isset($mytag->rtrim)) $replaceme = empty($mytag->rtrim) ? rtrim($replaceme) : rtrim($replaceme, $mytag->rtrim);
		if(!empty($mytag->urlencode)) $replaceme = urlencode($replaceme);
		if(!empty($mytag->substr)){
			$args = explode(',', $mytag->substr);
			if(isset($args[1])){
				$replaceme = substr($replaceme, intval($args[0]), intval($args[1]));
			}else{
				$replaceme = substr($replaceme, intval($args[0]));
			}
		}


		if(!empty($mytag->maxheight) || !empty($mytag->maxwidth)){
			$pictureHelper = acymailing_get('helper.acypict');
			$pictureHelper->maxHeight = empty($mytag->maxheight) ? 999 : $mytag->maxheight;
			$pictureHelper->maxWidth = empty($mytag->maxwidth) ? 999 : $mytag->maxwidth;
			$replaceme = $pictureHelper->resizePictures($replaceme);
		}
	}

	function replaceVideos($text){
		$text = preg_replace('#\[embed=videolink][^}]*youtube[^=]*=([^"/}]*)[^}]*}\[/embed]#i', '<a target="_blank" href="http://www.youtube.com/watch?v=$1"><img src="http://img.youtube.com/vi/$1/0.jpg"/></a>', $text);
		$text = preg_replace('#<video[^>]*youtube\.com/embed/([^"/]*)[^>]*>[^>]*</video>#i', '<a target="_blank" href="http://www.youtube.com/watch?v=$1"><img src="http://img.youtube.com/vi/$1/0.jpg"/></a>', $text);
		$text = preg_replace('#{JoooidContent[^}]*youtube[^}]*id"[^"]*"([^}"]*)"[^}]*}#i', '<a target="_blank" href="http://www.youtube.com/watch?v=$1"><img src="http://img.youtube.com/vi/$1/0.jpg"/></a>', $text);
		$text = preg_replace('#<iframe[^>]*src="[^"]*youtube[^"]*embed/([^"?]*)(\?[^"]*)?"[^>]*>[^<]*</iframe>#Uis', '<a target="_blank" href="http://www.youtube.com/watch?v=$1"><img src="http://img.youtube.com/vi/$1/0.jpg"/></a>', $text);
		$text = preg_replace('#{vimeo}([^{]+){/vimeo}#Uis', '<iframe src="https://player.vimeo.com/video/$1"></iframe>', $text);

		if(preg_match_all('#<iframe[^>]*src="([^"]*vimeo[^"]*)"[^>]*>[^<]*</iframe>#Uis', $text, $matches)){
			foreach($matches[1] as $key => $match){
				if(substr($matches[1][0], 0, 2) == '//') $matches[1][0] = 'https:'.$matches[1][0];
				$xml = acymailing_fileGetContent('https://vimeo.com/api/oembed.json?url='.urlencode($matches[1][0]));
				if(empty($xml)) continue;

				$xml = json_decode($xml);
				if(strpos($matches[0][$key], ' width="') !== false){
					$extension = substr($xml->thumbnail_url, strrpos($xml->thumbnail_url, '.'));
					preg_match('#width="([^"]*)"#Uis', $matches[0][$key], $width);

					$replace = strpos($xml->thumbnail_url, '_') === false ? '.' : '_';
					$xml->thumbnail_url = substr($xml->thumbnail_url, 0, strrpos($xml->thumbnail_url, $replace)).'_'.$width[1].$extension;
					$xml->thumbnail_url_with_play_button = 'https://i.vimeocdn.com/filter/overlay?src='.$xml->thumbnail_url.'&src=http://f.vimeocdn.com/p/images/crawler_play.png';
				}
				$text = str_replace($matches[0][$key], '<a target="_blank" href="'.($matches[1][0]).'"><img class="donotresize" alt="" src="'.($xml->thumbnail_url_with_play_button).'" /></a>', $text);
			}
		}

		$text = preg_replace('#\[embed=videolink][^}]*video":"([^"]*)[^}]*}\[/embed]#i', '<a target="_blank" href="$1"><img src="'.ACYMAILING_IMAGES.'/video.png"/></a>', $text);
		$text = preg_replace('#<video[^>]*src="([^"]*)"[^>]*>[^>]*</video>#i', '<a target="_blank" href="$1"><img src="'.ACYMAILING_IMAGES.'/video.png"/></a>', $text);
		return $text;
	}

	function removeJS($text){
		$text = preg_replace("#(onmouseout|onmouseover|onclick|onfocus|onload|onblur) *= *\"(?:(?!\").)*\"#iU", '', $text);
		$text = preg_replace("#< *script(?:(?!< */ *script *>).)*< */ *script *>#isU", '', $text);
		return $text;
	}

	private function _convertbase64pictures(&$html){
		if(!preg_match_all('#<img[^>]*src=("data:image/([^;]{1,5});base64[^"]*")([^>]*)>#Uis', $html, $resultspictures)) return;

		

		$dest = ACYMAILING_MEDIA.'resized'.DS;
		acymailing_createDir($dest);
		foreach($resultspictures[2] as $i => $extension){
			$pictname = md5($resultspictures[1][$i]).'.'.$extension;
			$picturl = ACYMAILING_LIVE.ACYMAILING_MEDIA_FOLDER.'/resized/'.$pictname;
			$pictPath = $dest.$pictname;
			$pictCode = trim($resultspictures[1][$i], '"');
			if(file_exists($pictPath)){
				$html = str_replace($pictCode, $picturl, $html);
				continue;
			}

			$getfunction = '';
			switch($extension){
				case 'gif':
					$getfunction = 'ImageCreateFromGIF';
					break;
				case 'jpg':
				case 'jpeg':
					$getfunction = 'ImageCreateFromJPEG';
					break;
				case 'png':
					$getfunction = 'ImageCreateFromPNG';
					break;
			}

			if(empty($getfunction) || !function_exists($getfunction)) continue;

			$img = $getfunction($pictCode);

			if(in_array($extension, array('gif', 'png'))){
				imagealphablending($img, false);
				imagesavealpha($img, false);
			}

			ob_start();
			switch($extension){
				case 'gif':
					$status = imagegif($img);
					break;
				case 'jpg':
				case 'jpeg':
					$status = imagejpeg($img, null, 100);
					break;
				case 'png':
					$status = imagepng($img, null, 1);
					break;
			}
			$imageContent = ob_get_clean();
			$status = $status && acymailing_writeFile($pictPath, $imageContent);

			if(!$status) continue;
			$html = str_replace($pictCode, $picturl, $html);
		}
	}

	private function _lineheightfix(&$html){
		$pregreplace = array();
		$pregreplace['#<tr([^>"]*>([^<]*<td[^>]*>[ \n\s]*<img[^>]*>[ \n\s]*</ *td[^>]*>[ \n\s]*)*</ *tr)#Uis'] = '<tr style="line-height: 0px;" $1';
		$pregreplace['#<td(((?!style|>).)*>[ \n\s]*(<a[^>]*>)?[ \n\s]*<img[^>]*>[ \n\s]*(</a[^>]*>)?[ \n\s]*</ *td)#Uis'] = '<td style="line-height: 0px;" $1';

		$newbody = preg_replace(array_keys($pregreplace), $pregreplace, $html);
		if(!empty($newbody)) $html = $newbody;
	}

	private function _removecontenttags(&$html){
		$pregreplace = array();
		$pregreplace['#{tab[ =][^}]*}#is'] = '';
		$pregreplace['#{/tabs}#is'] = '';
		$pregreplace['#{jcomments\s+(on|off|lock)}#is'] = '';
		$newbody = preg_replace(array_keys($pregreplace), $pregreplace, $html);
		if(!empty($newbody)) $html = $newbody;
	}

	function cleanHtml(&$html){

		$this->_lineheightfix($html);
		$this->_removecontenttags($html);
		$this->_convertbase64pictures($html);
		$this->cleanEditorCode($html);
		$this->_removeEditorFromTemplate($html);
	}

	public function fixPictureDim(&$html){
		if(!preg_match_all('#(<img)([^>]*>)#i', $html, $results)) return;

		static $replace = array();
		foreach($results[0] as $num => $oneResult){
			if(isset($replace[$oneResult])) continue;

			if(strpos($oneResult, 'width=') || strpos($oneResult, 'height=')) continue;
			if(preg_match('#[^a-z_\-]width *:([0-9 ]{1,8})#i', $oneResult, $res) || preg_match('#[^a-z_\-]height *:([0-9 ]{1,8})#i', $oneResult, $res)) continue;

			if(!preg_match('#src="([^"]*)"#i', $oneResult, $url)) continue;

			$imageUrl = $url[1];

			$replace[$oneResult] = $oneResult;

			$base = str_replace(array('http://www.', 'https://www.', 'http://', 'https://'), '', ACYMAILING_LIVE);
			$replacements = array('https://www.'.$base, 'http://www.'.$base, 'https://'.$base, 'http://'.$base);
			$localpict = false;
			foreach($replacements as $oneReplacement){
				if(strpos($imageUrl, $oneReplacement) === false) continue;
				$imageUrl = str_replace(array($oneReplacement, '/'), array(ACYMAILING_ROOT, DS), urldecode($imageUrl));
				$localpict = true;
				break;
			}

			if(!$localpict) continue;

			$dim = @getimagesize($imageUrl);
			if(!$dim) continue;
			if(empty($dim[0]) || empty($dim[1])) continue;

			$replace[$oneResult] = str_replace('<img', '<img width="'.$dim[0].'" height="'.$dim[1].'"', $oneResult);
		}

		if(empty($replace)) return;

		$html = str_replace(array_keys($replace), $replace, $html);
	}

	private function cleanEditorCode(&$html){
		if(!strpos($html, 'cke_edition_en_cours')) return;

		$html = preg_replace('#<div[^>]*cke_edition_en_cours.*$#Uis', '', $html);
	}

	private function _removeEditorFromTemplate(&$html){
		if(strpos($html, 'acyeditor_sharedspace') == -1) return;
		$html = preg_replace('#<div .* class="acyeditor_sharedspace".*><\/div>#', '', $html);
	}

	function replaceTags(&$email, &$tags, $html = false){
		if(empty($tags)) return;

		$htmlVars = array('body');
		$textVars = array('altbody');
		$lineVars = array('subject', 'From', 'FromName', 'ReplyTo', 'ReplyName', 'bcc', 'cc', 'fromname', 'fromemail', 'replyname', 'replyemail', 'params');

		$variables = array_merge($htmlVars, $textVars, $lineVars);

		if($html){
			if(empty($this->mailerHelper)) $this->mailerHelper = acymailing_get('helper.mailer');

			$textreplace = array();
			$linereplace = array();
			foreach($tags as $i => &$params){
				if(isset($textreplace[$i])) continue;
				$textreplace[$i] = $this->mailerHelper->textVersion($params, true);
				$linereplace[$i] = strip_tags(preg_replace('#</tr>[^<]*<tr[^>]*>#Uis', ' | ', $params));
			}

			$htmlKeys = array_keys($tags);
			$lineKeys = array_keys($linereplace);
			$textKeys = array_keys($textreplace);
		}else{
			$textreplace = &$tags;
			$linereplace = &$tags;
			$htmlKeys = array_keys($tags);
			$lineKeys = &$htmlKeys;
			$textKeys = &$htmlKeys;
		}

		foreach($variables as &$var){
			if(empty($email->$var)) continue;

			if(is_array($email->$var)){
				foreach($email->$var as $i => &$arrayField){
					if(empty($arrayField)) continue;

					if(is_array($arrayField)){
						foreach($arrayField as $a => &$oneval){
							if(in_array($var, $htmlVars)){
								$oneval = str_replace($htmlKeys, $tags, $oneval);
							}elseif(in_array($var, $lineVars)){
								$oneval = str_replace($lineKeys, $linereplace, $oneval);
							}else{
								$oneval = str_replace($textKeys, $textreplace, $oneval);
							}
						}
					}else{
						if(in_array($var, $htmlVars)){
							$arrayField = str_replace($htmlKeys, $tags, $arrayField);
						}elseif(in_array($var, $lineVars)){
							$arrayField = str_replace($lineKeys, $linereplace, $arrayField);
						}else{
							$arrayField = str_replace($textKeys, $textreplace, $arrayField);
						}
					}
				}
			}else{
				if(in_array($var, $htmlVars)){
					$email->$var = str_replace($htmlKeys, $tags, $email->$var);
				}elseif(in_array($var, $lineVars)){
					$email->$var = str_replace($lineKeys, $linereplace, $email->$var);
				}else{
					$email->$var = str_replace($textKeys, $textreplace, $email->$var);
				}
			}
		}
	}

	function extractTags(&$email, $tagfamily){
		$results = array();

		$match = '#(?:{|%7B)'.$tagfamily.'(?:%3A|\\:)(.*)(?:}|%7D)#Ui';
		$variables = array('subject', 'body', 'altbody', 'From', 'FromName', 'ReplyTo', 'ReplyName', 'bcc', 'cc', 'fromname', 'fromemail', 'replyname', 'replyemail', 'params');
		$found = false;
		foreach($variables as &$var){
			if(empty($email->$var)) continue;
			if(is_array($email->$var)){
				foreach($email->$var as $i => &$arrayField){
					if(empty($arrayField)) continue;
					if(is_array($arrayField)){
						foreach($arrayField as $a => &$oneval){
							$found = preg_match_all($match, $oneval, $results[$var.$i.'-'.$a]) || $found;
							if(empty($results[$var.$i.'-'.$a][0])) unset($results[$var.$i.'-'.$a]);
						}
					}else{
						$found = preg_match_all($match, $arrayField, $results[$var.$i]) || $found;
						if(empty($results[$var.$i][0])) unset($results[$var.$i]);
					}
				}
			}else{
				$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
				if(empty($results[$var][0])) unset($results[$var]);
			}
		}

		if(!$found) return array();

		$tags = array();
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($tags[$oneTag])) continue;
				$tags[$oneTag] = $this->extractTag($allresults[1][$i]);
			}
		}

		return $tags;
	}

	function extractTag($oneTag){
		$arguments = explode('|', strip_tags(urldecode($oneTag)));
		$tag = new stdClass();
		$tag->id = $arguments[0];
		$tag->default = '';
		for($i = 1, $a = count($arguments); $i < $a; $i++){
			$args = explode(':', $arguments[$i]);
			$arg0 = trim($args[0]);
			if(empty($arg0)) continue;
			if(isset($args[1])){
				$tag->$arg0 = $args[1];
				if(isset($args[2])) $tag->{$args[0]} .= ':'.$args[2];
			}else{
				$tag->$arg0 = true;
			}
		}
		return $tag;
	}

	function wrapText($text, $tag){

		$this->wraped = false;

		if(!empty($tag->wrap)) $tag->wrap = intval($tag->wrap);
		if(empty($tag->wrap)) return $text;

		$allowedTags = array();
		$allowedTags[] = 'b';
		$allowedTags[] = 'strong';
		$allowedTags[] = 'i';
		$allowedTags[] = 'em';
		$allowedTags[] = 'a';

		$aloneAllowedTags = array();
		$aloneAllowedTags[] = 'br';
		$aloneAllowedTags[] = 'img';

		$newText = preg_replace('/<p[^>]*>/i', '<br />', $text);
		$newText = preg_replace('/<div[^>]*>/i', '<br />', $newText);
		$newText = strip_tags($newText, '<'.implode('><', array_merge($allowedTags, $aloneAllowedTags)).'>');

		$newText = preg_replace('/^(\s|\n|(<br[^>]*>))+/i', '', trim($newText));
		$newText = preg_replace('/(\s|\n|(<br[^>]*>))+$/i', '', trim($newText));

		$newText = str_replace(array('&lt', '&gt'), array('<', '>'), $newText);

		$numChar = strlen($newText);

		$numCharStrip = strlen(strip_tags($newText));

		if($numCharStrip <= $tag->wrap) return $newText;

		$this->wraped = true;

		$open = array();

		$write = true;

		$countStripChar = 0;

		for($i = 0; $i < $numChar; $i++){
			if($newText[$i] == '<'){
				foreach($allowedTags as $oneAllowedTag){
					if($numChar >= ($i + strlen($oneAllowedTag) + 1) && substr($newText, $i, strlen($oneAllowedTag) + 1) == '<'.$oneAllowedTag && (in_array($newText[$i + strlen($oneAllowedTag) + 1], array(' ', '>')))){
						$write = false;
						$open[] = '</'.$oneAllowedTag.'>';
					}

					if($numChar >= ($i + strlen($oneAllowedTag) + 2) && substr($newText, $i, strlen($oneAllowedTag) + 2) == '</'.$oneAllowedTag){
						if(end($open) == '</'.$oneAllowedTag.'>') array_pop($open);
					}
				}

				foreach($aloneAllowedTags as $oneAllowedTag){
					if($numChar >= ($i + strlen($oneAllowedTag) + 1) && substr($newText, $i, strlen($oneAllowedTag) + 1) == '<'.$oneAllowedTag && (in_array($newText[$i + strlen($oneAllowedTag) + 1], array(' ', '/', '>')))){
						$write = false;
					}
				}
			}

			if($write) $countStripChar++;

			if($newText[$i] == ">") $write = true;

			if($newText[$i] == " " && $countStripChar >= $tag->wrap && $write){
				$newText = substr($newText, 0, $i).'...';

				$open = array_reverse($open);
				$newText = $newText.implode('', $open);

				break;
			}
		}

		$newText = preg_replace('/^(\s|\n|(<br[^>]*>))+/i', '', trim($newText));
		$newText = preg_replace('/(\s|\n|(<br[^>]*>))+$/i', '', trim($newText));

		return $newText;
	}

	function getStandardDisplay($format){
		if(empty($format->tag->format)) $format->tag->format = 'TOP_LEFT';
		if(!in_array($format->tag->format, array('TOP_LEFT', 'TOP_RIGHT', 'TITLE_IMG', 'TITLE_IMG_RIGHT', 'CENTER_IMG', 'TOP_IMG', 'COL_LEFT', 'COL_RIGHT'))) return 'Wrong format suppied: '.$format->tag->format;

		$invertValues = array('TOP_LEFT' => 'TOP_RIGHT', 'TITLE_IMG' => 'TITLE_IMG_RIGHT', 'COL_LEFT' => 'COL_RIGHT', 'TOP_RIGHT' => 'TOP_LEFT', 'TITLE_IMG_RIGHT' => 'TITLE_IMG', 'COL_RIGHT' => 'COL_LEFT');
		if(!empty($format->tag->invert) && !empty($invertValues[$format->tag->format])) $format->tag->format = $invertValues[$format->tag->format];

		$image = '';
		if(!empty($format->imagePath)){
			$style = '';
			if(in_array($format->tag->format, array('TOP_LEFT', 'TITLE_IMG'))){
				$style = ' style="float:left;"';
			}elseif(in_array($format->tag->format, array('TOP_RIGHT', 'TITLE_IMG_RIGHT'))){
				$style = ' style="float:right;"';
			}
			$image = '<img alt="" src="'.$format->imagePath.'"'.$style.' />';
		}

		$result = '';
		if($format->tag->format == 'TITLE_IMG' || $format->tag->format == 'TITLE_IMG_RIGHT'){
			$format->title = $image.$format->title;
			$image = '';
		}

		if(!empty($format->link) && !empty($image)) $image = '<a target="_blank" href="'.$format->link.'" '.$style.'>'.$image.'</a>';

		if($format->tag->format == 'TOP_IMG' && !empty($image)){
			$result = $image;
			$image = '';
		}

		if(in_array($format->tag->format, array('COL_LEFT', 'COL_RIGHT'))){
			if(empty($image)){
				$format->tag->format = 'TOP_LEFT';
			}else{
				$result = '<table><tr><td valign="top" class="acyleftcol">';
				if($format->tag->format == 'COL_LEFT') $result .= $image.'</td><td valign="top" class="acyrightcol">';
			}
		}

		if(!empty($format->title)){
			if(!empty($format->link)) $format->title = '<a'.(!empty($format->tag->type) && $format->tag->type == 'title' ? ' class="acymailing_title"' : '').' href="'.$format->link.'" target="_blank" name="'.$this->name.'-'.$format->tag->id.'">'.$format->title.'</a>';
			if(empty($format->tag->type) || $format->tag->type != 'title') $format->title = '<h2 class="acymailing_title">'.$format->title.'</h2>';
			$result .= $format->title;
		}

		if(!empty($format->afterTitle)) $result .= $format->afterTitle;
		if(!empty($format->description)) $format->description = $this->wrapText($format->description, $format->tag);


		$rowText = '<div class="acydescription">';
		$endRow = '</div><br />';
		if(in_array($format->tag->format, array('TOP_LEFT', 'TOP_RIGHT', 'TITLE_IMG', 'TITLE_IMG_RIGHT', 'TOP_IMG'))){
			if(!empty($image) || !empty($format->description)) $result .= $rowText.$image.$format->description.$endRow;
		}elseif($format->tag->format == 'CENTER_IMG'){
			if(!empty($image)) $result .= '<div class="acymainimage">'.$image.$endRow;
			if(!empty($format->description)) $result .= $rowText.$format->description.$endRow;
		}elseif(in_array($format->tag->format, array('COL_LEFT', 'COL_RIGHT'))){
			if(!empty($format->description)) $result .= $rowText.$format->description.$endRow;
			if($format->tag->format == 'COL_RIGHT') $result .= '</td><td valign="top" class="acyrightcol">'.$image;
			$result .= '</td></tr></table>';
		}

		if(!empty($format->customFields)){
			$result .= '<table style="width:100%;" class="customfieldsarea"><tr>';

			if(empty($format->cols)) $format->cols = 1;
			$i = 0;
			foreach($format->customFields as $oneField){
				if($i != 0 && $i % $format->cols == 0) $result .= '</tr><tr>';
				$result .= '<td nowrap="nowrap" class="';
				if(empty($oneField[0])){
					$result .= 'cfvalue" colspan="2">';
				}else{
					$result .= 'cflabel">'.$oneField[0].'</td><td class="cfvalue">';
				}
				$result .= $oneField[1].'</td>';
				$i++;
			}

			while($i % $format->cols != 0){
				$result .= '<td colspan="2"></td>';
				$i++;
			}

			$result .= '</tr></table>';
		}

		if(!empty($format->afterArticle)) $result .= $format->afterArticle;

		return $result;
	}

	function managePicts($tag, $result){
		if(!isset($tag->pict)) return $result;

		$pictureHelper = acymailing_get('helper.acypict');
		if($tag->pict === 'resized'){
			$pictureHelper->maxHeight = empty($tag->maxheight) ? 150 : $tag->maxheight;
			$pictureHelper->maxWidth = empty($tag->maxwidth) ? 150 : $tag->maxwidth;
			if($pictureHelper->available()){
				$result = $pictureHelper->resizePictures($result);
			}elseif(acymailing_isAdmin()){
				acymailing_enqueueMessage($pictureHelper->error, 'notice');
			}
		}elseif($tag->pict == '0'){
			$result = $pictureHelper->removePictures($result);
		}

		return $result;
	}

	function getOrderingField($values, $ordering, $direction, $function = 'updateTagAuto'){
		$orderingValues = array();
		foreach($values as $value => $title){
			$orderingValues[] = acymailing_selectOption($value, acymailing_translation($title));
		}
		$orderingValues[] = acymailing_selectOption("rand", acymailing_translation('ACY_RANDOM'));

		$orderingDirections = array();
		$orderingDirections[] = acymailing_selectOption("DESC", 'DESC');
		$orderingDirections[] = acymailing_selectOption("ASC", 'ASC');

		return acymailing_select($orderingValues, 'contentorder', 'size="1" onchange="'.$function.'();" style="width:100px;"', 'value', 'text', $ordering).' '.acymailing_select($orderingDirections, 'contentorderdir', 'size="1" onchange="'.$function.'();" style="width:80px;"', 'value', 'text', $direction);
	}

	function translateItem(&$item, &$tag, $referenceTable, $referenceId = 0){
		if(empty($tag->lang) || (!file_exists(ACYMAILING_ROOT.'components'.DS.'com_falang') && !file_exists(ACYMAILING_ROOT.'components'.DS.'com_joomfish'))) return;
		$langid = (int)substr($tag->lang, strpos($tag->lang, ',') + 1);

		if(empty($langid)) return;

		if(empty($referenceId)) $referenceId = $tag->id;
		$table = (ACYMAILING_J16 && file_exists(ACYMAILING_ROOT.'components'.DS.'com_falang')) ? '`#__falang_content`' : '`#__jf_content`';
		$query = "SELECT reference_field, value FROM ".$table." WHERE `published` = 1 AND `reference_table` = ".acymailing_escapeDB($referenceTable)." AND `language_id` = $langid AND `reference_id` = ".$referenceId;
		$translations = acymailing_loadObjectList($query);

		if(empty($translations)) return;

		foreach($translations as $oneTranslation){
			if(empty($oneTranslation->value)) continue;
			$translatedfield = $oneTranslation->reference_field;
			$item->$translatedfield = $oneTranslation->value;
		}
	}

	function getFormatOption($plugin, $default = 'TOP_LEFT', $singleElement = true, $function = 'updateTag'){
		$contentformat = array('TOP_LEFT' => '-208', 'TOP_RIGHT' => '-260', 'TITLE_IMG' => '0', 'TITLE_IMG_RIGHT' => '-52', 'CENTER_IMG' => '-104', 'TOP_IMG' => '-156', 'COL_LEFT' => '-312', 'COL_RIGHT' => '-364');

		$name = $singleElement ? 'contentformat' : 'contentformatauto';

		$result = '<input type="hidden" name="'.$name.'" id="'.$name.'" value="'.$default.'" size="1"/>';
		$result .= '<span id="'.$name.'button" class="btn acybuttonformat" style="margin: 0px 10px 0px 0px; background-position: '.$contentformat[$default].'px -6px;height:34px;" onclick="togglediv'.$name.'();"></span>';
		$result .= '<div id="'.$name.'div" class="formatbox" style="display:none;">';

		$reset = '';
		if(file_exists(ACYMAILING_MEDIA.'plugins')){

			

			$files = acymailing_getFiles(ACYMAILING_MEDIA.'plugins', '^'.$plugin);
			foreach($files as $oneFile){
				$reset .= "document.getElementById('".$name.$oneFile."').style.backgroundPosition = '-480px -5px';document.getElementById('".$name.$oneFile."').style.boxShadow = 'inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)';";
				$result .= '<span id="'.$name.$oneFile.'" class="btn acybuttonformat" style="background-position: -480px -5px;height:34px;" onclick="selectFormat'.$name.'(\''.$oneFile.'\',\''.$oneFile.'\',true);"></span>'.substr($oneFile, 0, strlen($oneFile) - 4).'<br/>';
			}
			$result .= '<br />';
		}

		foreach($contentformat as $value => $position){
			$reset .= "document.getElementById('".$name.$value."').style.backgroundPosition = '".$position."px -10px';document.getElementById('".$name.$value."').style.boxShadow = 'inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)';";
			$result .= '<span id="'.$name.$value.'" class="btn acybuttonformat" style="background-position: '.$position.'px '.($value == $default ? -64 : -10).'px;" onclick="selectFormat'.$name.'(\''.$value.'\',\''.$position.'\',false);"></span>';
		}

		$result .= '<br />';

		if(!$singleElement){
			$result .= '<br /><input type="hidden" id="'.$name.'invert" value="0"/>';
			$result .= '<span id="'.$name.'invertbutton" class="btn acybuttonformat" style="background-position:-415px -8px;width:58px;height:30px;" onclick="toggleInvert'.$name.'();"></span>'.acymailing_tooltip('Alternatively display the image on the left and right', 'Alternate', '', 'Alternate');
		}

		$result .= '<span class="btn acyokbutton acybuttonformat" onclick="togglediv'.$name.'();">'.acymailing_translation('ACY_CLOSE').'</span>';
		$result .= '</div>';
		ob_start();
		?>
		<script type="text/javascript">
			<!--
			function togglediv<?php echo $name; ?>(){
				var divelement = document.getElementById('<?php echo $name; ?>div');
				if(divelement.style.display == 'none'){
					divelement.style.display = '';
				}else{
					divelement.style.display = 'none';
				}
			}
			<?php if(!$singleElement){ ?>
			function toggleInvert<?php echo $name; ?>(){
				var invertElement = document.getElementById('<?php echo $name; ?>invert');
				var posy = '8';
				var shadow = 'inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)';
				if(invertElement.value == 0){
					posy = '60';
					shadow = 'inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)';
				}
				invertElement.value = 1 - invertElement.value;
				document.getElementById('<?php echo $name; ?>invertbutton').style.backgroundPosition = '-415px -' + posy + 'px';
				document.getElementById('<?php echo $name; ?>invertbutton').style.boxShadow = shadow;
				<?php echo $function; ?>();
			}
			<?php } ?>

			function selectFormat<?php echo $name; ?>(format, position, custom){
				<?php echo $reset; ?>
				var prosy = '64';
				var newVal = format;
				if(custom){
					position = '-480';
					prosy = '58';
					newVal = '<?php echo $default; ?>| template:' + format;
				}
				document.getElementById('<?php echo $name; ?>').value = newVal;
				document.getElementById('<?php echo $name; ?>button').style.backgroundPosition = position + 'px -5px';
				document.getElementById('<?php echo $name; ?>' + format).style.backgroundPosition = position + 'px -' + prosy + 'px';
				document.getElementById('<?php echo $name; ?>' + format).style.boxShadow = 'inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)';
				<?php echo $function; ?>();
			}
			-->
		</script>
		<?php
		$result .= ob_get_clean();
		return $result;
	}
}

helpers/toggle.php000060400000015342152455705230010211 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acytoggleHelper{

	var $ctrl = 'toggle';
	var $extra = '';

	private function _getToggle($column, $table = ''){

		$params = new stdClass();
		$params->mode = 'pictures';
		if($column == 'published' && !in_array($table, array('plugins', 'list'))){
			$params->aclass = array(0 => 'acyicon-cancel', 1 => 'acyicon-apply', 2 => 'acyicon-schedule');
			$params->description = array(0 => acymailing_translation('PUBLISH_CLICK'), 1 => acymailing_translation('UNPUBLISH_CLICK'), 2 => acymailing_translation('UNSCHEDULE_CLICK'));
			$params->values = array(0 => 1, 1 => 0, 2 => 0);
			return $params;
		}elseif($column == 'status'){
			$params->mode = 'class';
			$params->class = array(-1 => 'roundsubscrib roundunsub', 1 => 'roundsubscrib roundsub', 2 => 'roundsubscrib roundconf');
			$params->description = array(-1 => acymailing_translation('SUBSCRIBE_CLICK'), 1 => acymailing_translation('UNSUBSCRIBE_CLICK'), 2 => acymailing_translation('CONFIRMATION_CLICK'));
			$params->values = array(-1 => 1, 1 => -1, 2 => 1);
			return $params;
		}

		$params->aclass = array(0 => 'acyicon-cancel', 1 => 'acyicon-apply');
		$params->values = array(0 => 1, 1 => 0);
		return $params;
	}

	function toggleText($action = '', $value = '', $table = '', $text = ''){
		static $jsincluded = false;
		static $id = 0;
		$id++;
		if(!$jsincluded){
			$jsincluded = true;
			$js = "function joomToggleText(id,newvalue,table){
				window.document.getElementById(id).className = 'onload';
					
				var xhr = new XMLHttpRequest();
				xhr.open('GET', '".acymailing_prepareAjaxURL('toggle')."&task='+id+'&value='+newvalue+'&table='+table+'&".acymailing_getFormToken()."');
				xhr.onload = function(){
					document.getElementById(id).innerHTML = xhr.responseText;
					window.document.getElementById(id).className = 'loading';
				};
				xhr.send();
			}";
			acymailing_addScript(true, $js);
		}

		if(!$action) return;

		return '<span id="'.$action.'_'.$value.'" ><a href="javascript:void(0);" onclick="joomToggleText(\''.$action.'_'.$value.'\',\''.$value.'\',\''.$table.'\')">'.$text.'</a></span>';
	}

	function toggle($id, $value, $table, $extra = null){
		$column = substr($id, 0, strpos($id, '_'));
		$params = $this->_getToggle($column, $table);
		if(!isset($params->values[$value])) return;
		$newValue = $params->values[$value];
		if($params->mode == 'pictures'){
			static $pictureincluded = false;
			if(!$pictureincluded){
				$pictureincluded = true;
				$js = "function joomTogglePicture(id,newvalue,table){
					window.document.getElementById(id).className = 'onload';
					var xhr = new XMLHttpRequest();
					xhr.open('GET', '".acymailing_prepareAjaxURL('toggle')."&task='+id+'&value='+newvalue+'&table='+table+'&".acymailing_getFormToken()."');
					xhr.onload = function(){
						document.getElementById(id).innerHTML = xhr.responseText;
						window.document.getElementById(id).className = 'loading';
					};
					xhr.send();
				}";
				acymailing_addScript(true, $js);
			}

			$desc = empty($params->description[$value]) ? '' : $params->description[$value];

			if(empty($params->pictures)){
				$text = ' ';
				$class = 'class="'.$params->aclass[$value].'"';
			}else{
				$text = '<img src="'.$params->pictures[$value].'"/>';
				$class = '';
			}

			return '<a href="javascript:void(0);" style="font-style: normal;" '.$class.' onclick="joomTogglePicture(\''.$id.'\',\''.$newValue.'\',\''.$table.'\')" title="'.str_replace('"', '\"', $desc).'">'.$text.'</a>';
		}elseif($params->mode == 'class'){
			if(empty($extra)) return;
			static $classincluded = false;
			if(!$classincluded){
				$classincluded = true;
				$js = "function joomToggleClass(id,newvalue,table,extra){
					var mydiv = document.getElementById(id);
					mydiv.innerHTML = '';
					mydiv.className = 'onload';
					
					var xhr = new XMLHttpRequest();
					xhr.open('GET', '".acymailing_prepareAjaxURL('toggle')."&task='+id+'&value='+newvalue+'&table='+table+'&".acymailing_getFormToken()."&extra[color]='+extra);
					xhr.onload = function(){
						document.getElementById(id).innerHTML = xhr.responseText;
						window.document.getElementById(id).className = 'loading';
					};
					xhr.send();
				}";
				acymailing_addScript(true, $js);
			}
			
			$desc = empty($params->description[$value]) ? '' : $params->description[$value];
			$return = '<a href="javascript:void(0);" onclick="joomToggleClass(\''.$id.'\',\''.$newValue.'\',\''.$table.'\',\''.htmlspecialchars(urlencode($extra['color']), ENT_COMPAT, 'UTF-8').'\');" title="'.str_replace('"', '\"', $desc).'"><div class="'.$params->class[$value].'" style="background-color:'.htmlspecialchars($extra['color'], ENT_COMPAT, 'UTF-8').';border-color:'.htmlspecialchars($extra['color'], ENT_COMPAT, 'UTF-8').'">';
			if(!empty($extra['tooltip'])) $return .= acymailing_tooltip($extra['tooltip'], @$extra['tooltiptitle'], '', '&nbsp;&nbsp;&nbsp;&nbsp;');
			$return .= '</div></a>';

			return $return;
		}
	}

	function display($column, $value){
		$params = $this->_getToggle($column);

		$title = '';
		if($column == 'published') $title = 'title="'.($value == 1 ? acymailing_translation('ENABLED') : acymailing_translation('DISABLED')).'"';

		if(empty($params->pictures)){
			return '<a style="cursor:default;" class="'.$params->aclass[$value].'" '.$title.'></a>';
		}else{
			return '<img src="'.$params->pictures[$value].'"/>';
		}
	}

	function delete($lineId, $elementids, $table, $confirm = false, $text = '', $extraJsOnClick = ''){
		static $deleteJS = false;
		if(!$deleteJS){
			$deleteJS = true;
			$js = "function joomDelete(lineid,elementids,table,reqconfirm){
				if(reqconfirm){
					if(!confirm('".acymailing_translation('ACY_VALIDDELETEITEMS', true)."')) return false;
				}
					
				var xhr = new XMLHttpRequest();
				xhr.open('GET', '".acymailing_prepareAjaxURL($this->ctrl).$this->extra."&task=delete&value='+elementids+'&table='+table+'&".acymailing_getFormToken()."');
				xhr.onload = function(){
					window.document.getElementById(lineid).style.display = 'none';
				};
				xhr.send();
			}";

			acymailing_addScript(true, $js);
		}

		if(empty($text)){
			if(acymailing_isAdmin()){
				$text = '<span class="hasTooltip acyicon-delete" data-original-title="'.acymailing_translation('ACY_DELETE').'" title="'.acymailing_translation('ACY_DELETE').'"/>';
			}else{
				$text = '<img src="'.ACYMAILING_MEDIA_FOLDER.'/images/delete.png" title="Delete">';
			}
		}
		return '<a href="javascript:void(0);" onclick="joomDelete(\''.$lineId.'\',\''.$elementids.'\',\''.$table.'\','.($confirm ? 'true' : 'false').'); '.$extraJsOnClick.'">'.$text.'</a>';
	}
}

helpers/order.php000060400000007420152455705230010041 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyorderHelper{

	var $table = '';
	var $pkey = '';
	var $groupMap = '';
	var $groupVal = '';

	function order($down = true){

		if($down){
			$sign = '>';
			$dir = 'ASC';
		}else{
			$sign = '<';
			$dir = 'DESC';
		}

		$ids = acymailing_getVar('array',  'cid', array(), '');
		$id = (int) $ids[0];

		$pkey = $this->pkey;

		$query = 'SELECT a.ordering,a.'.$pkey.' FROM '.acymailing_table($this->table).' as b, '.acymailing_table($this->table).' as a';
		$query .= ' WHERE a.ordering '.$sign.' b.ordering AND b.'.$pkey.' = '.$id;
		if(!empty($this->groupMap)) $query .= ' AND a.'.$this->groupMap.' = '.acymailing_escapeDB($this->groupVal);
		$query .= ' ORDER BY a.ordering '.$dir.' LIMIT 1';
		$secondElement = acymailing_loadObject($query);

		if(empty($secondElement)) return false;

		$firstElement = new stdClass();
		$firstElement->$pkey = $id;
		$firstElement->ordering = $secondElement->ordering;
		if($down)$secondElement->ordering--;
		else $secondElement->ordering++;


		$status1 = acymailing_updateObject(acymailing_table($this->table),$firstElement,$pkey);
		$status2 = acymailing_updateObject(acymailing_table($this->table),$secondElement,$pkey);

		$status = $status1 && $status2;
		if($status){
			acymailing_enqueueMessage(acymailing_translation( 'SUCC_MOVED' ), 'message');
		}

		return $status;
	}

	function save(){
		$pkey = $this->pkey;

		$cid	= acymailing_getVar('array',  'cid', array());
		$order	= acymailing_getVar('array',  'order', array());

		acymailing_arrayToInteger($cid);

		$query = 'SELECT `ordering`,`'.$pkey.'` FROM '.acymailing_table($this->table).' WHERE `'.$pkey.'` NOT IN ('.implode(',',$cid).') ';
		if(!empty($this->groupMap)) $query .= ' AND '.$this->groupMap.' = '.acymailing_escapeDB($this->groupVal);
		$query .= ' ORDER BY `ordering` ASC';
		$results = acymailing_loadObjectList($query, $pkey);

		$oldResults = $results;

		asort($order);

		$newOrder = array();
		while(!empty($order) OR !empty($results)){
			$dbElement = reset($results);
			if(empty($dbElement->ordering) OR (!empty($order) AND reset($order) <= $dbElement->ordering)){
				$newOrder[] = $cid[(int)key($order)];
				unset($order[key($order)]);
			}else{
				$newOrder[] = $dbElement->$pkey;
				unset($results[$dbElement->$pkey]);
			}
		}

		$i = 1;
		$status = true;
		$element = new stdClass();
		foreach($newOrder as $val){
			$element->$pkey = $val;
			$element->ordering = $i;
			if(!isset($oldResults[$val]) OR $oldResults[$val]->ordering != $i){
				$status = acymailing_updateObject(acymailing_table($this->table),$element,$pkey) && $status;
			}
			$i++;
		}

		if($status){
			acymailing_enqueueMessage(acymailing_translation( 'ACY_NEW_ORDERING_SAVED' ), 'message');
		}else{
			acymailing_enqueueMessage(acymailing_translation( 'ERROR_ORDERING' ), 'error');
		}
		return $status;
	}

	function reOrder(){
		$query = 'UPDATE '.acymailing_table($this->table).' SET `ordering` = `ordering`+1';
		if(!empty($this->groupMap)) $query .= ' WHERE '.$this->groupMap.' = '.acymailing_escapeDB($this->groupVal);

		acymailing_query($query);

		$query = 'SELECT `ordering`,`'.$this->pkey.'` FROM '.acymailing_table($this->table);
		if(!empty($this->groupMap)) $query .= ' WHERE '.$this->groupMap.' = '.acymailing_escapeDB($this->groupVal);
		$query .= ' ORDER BY `ordering` ASC';
		$results = acymailing_loadObjectList($query);

		$i = 1;
		foreach($results as $oneResult){
			if($oneResult->ordering != $i){
				$oneResult->ordering = $i;
				acymailing_updateObject( acymailing_table($this->table), $oneResult, $this->pkey);
			}
			$i++;
		}
	}

}
classes/cpanel.php000060400000003361152455705230010163 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class cpanelClass extends acymailingClass{

	function load(){
		$query = 'SELECT * FROM '.acymailing_table('config');
		$this->values = acymailing_loadObjectList($query, 'namekey');
	}

	function get($namekey,$default = ''){
		if(isset($this->values[$namekey])) return $this->values[$namekey]->value;
		return $default;
	}

	function save($configObject){
		$query = 'REPLACE INTO '.acymailing_table('config').' (namekey,value) VALUES ';
		$params = array();
		$i = 0;
		foreach($configObject as $namekey => $value){
			if(strpos($namekey,'password') !== false && !empty($value) && trim($value,'*') == '') continue;
			$i++;
			if(is_array($value)) $value = implode(',', $value);
			if($i>100){
				$query .= implode(',',$params);
				$affected = acymailing_query($query);
				if($affected === false) return false;
				$i = 0;
				$query = 'REPLACE INTO '.acymailing_table('config').' (namekey,value) VALUES ';
				$params = array();
			}
			if (empty($this->values[$namekey])) $this->values[$namekey] = new stdClass();
			$this->values[$namekey]->value = $value;
			$params[] = '('.acymailing_escapeDB(strip_tags($namekey)).','.acymailing_escapeDB(strip_tags($value)).')';
		}
		if(empty($params)) return true;
		$query .= implode(',',$params);

		try{
			$status = acymailing_query($query);
		}catch(Exception $e){
			$status = false;
		}
		if($status === false) acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()),0,200).'...','error');

		return $status;
	}

}
classes/filter.php000060400000064310152455705230010207 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class filterClass extends acymailingClass{

	var $tables = array('filter');
	var $pkey = 'filid';
	var $report = array();
	var $subid;
	var $onlynew = false;
	var $didAnAction = false;

	function trigger($triggerName){
		if(!acymailing_level(3)) return;

		$config = acymailing_config();
		if($triggerName != 'daycron' && !$config->get('triggerfilter_'.$triggerName)) return;

		$filters = acymailing_loadObjectList("SELECT * FROM `#__acymailing_filter` WHERE `trigger` LIKE '%".acymailing_getEscaped($triggerName, true)."%' ORDER BY `filid` ASC");

		if(empty($filters) && $triggerName != 'daycron'){
			$newconfig = new stdClass();
			$name = 'triggerfilter_'.$triggerName;
			$newconfig->$name = 0;
			$config->save($newconfig);
			return;
		}
		foreach($filters as $oneFilter){
			if(empty($oneFilter->published)) continue;
			if($triggerName == 'daycron' && $oneFilter->daycron > time()) continue;
			if(!empty($oneFilter->filter)) $oneFilter->filter = unserialize($oneFilter->filter);
			if(!empty($oneFilter->action)) $oneFilter->action = unserialize($oneFilter->action);
			$this->execute($oneFilter->filter, $oneFilter->action, $oneFilter->filid);
			if($triggerName == 'daycron'){
				$newDaycron = $oneFilter->daycron+86400;
				while($newDaycron < time())	$newDaycron += 86400;
				acymailing_query('UPDATE #__acymailing_filter SET `daycron` = '.intval($newDaycron).' WHERE `filid` = '.intval($oneFilter->filid));
			}
		}
	}

	function displayFilters($filters){
		$resultFilters = array();
		if(empty($filters['type'])) return $resultFilters;
		acymailing_importPlugin('acymailing');
		foreach($filters['type'] as $block => $oneFilter) {
			if($block > 0) $resultFilters[] = ucfirst(acymailing_translation('ACY_OR'));
			foreach ($oneFilter as $num => $oneType) {
				if (empty($oneType)) continue;
				$resultFilters = array_merge($resultFilters, acymailing_trigger('onAcyDisplayFilter_' . $oneType, array($filters[$num][$oneType])));
			}
		}
		return $resultFilters;
	}

	function execute($filters, $actions, $filterID){
		if(empty($actions['type'][0])) return;

		acymailing_importPlugin('acymailing');
		$query = new acyQuery();

		$initialWhere = array();
		if(!empty($this->subid)){
			$subArray = explode(',', trim($this->subid, ','));
			acymailing_arrayToInteger($subArray);
			$initialWhere[] = 'sub.subid IN ('.implode(',', $subArray).')';
		}

		$query->removeFlag($filterID);
		if(empty($filters['type'])) {
			$query->where = $initialWhere;
		}else{
			foreach($filters['type'] as $block => $oneFilter) {
				$query->where = $initialWhere;
				foreach($oneFilter as $num => $oneType) {
					if (empty($oneType)) continue;
					$oldObject = (count($query->where) + count($query->leftjoin) + count($query->join)) . '_' . $query->limit . $query->orderBy;
					$res = acymailing_trigger('onAcyProcessFilter_' . $oneType, array(&$query, $filters[$num][$oneType], $num));
					$newObject = (count($query->where) + count($query->leftjoin) + count($query->join)) . '_' . $query->limit . $query->orderBy;
					if (count($res) == 0 && $newObject == $oldObject) {
						$query->where[] = '0 = 1';
						$this->report[] = 'Function onAcyProcessFilter_' . $oneType . ' did not add a condition, filter blocked. Maybe a plugin is missing ?';
					}
				}
				$query->addFlag($filterID);
			}
		}


		$this->didAnAction = $this->didAnAction || $query->count() > 0;
		foreach($actions['type'][0] as $num => $oneType){
			if(empty($oneType) || !isset($actions[$num][$oneType])) continue;
			$this->report = array_merge($this->report, acymailing_trigger('onAcyProcessAction_'.$oneType, array(&$query, $actions[$num][$oneType], $num)));
		}

		$query->removeFlag($filterID);
	}


	function saveForm(){
		$filter = new stdClass();
		$filter->filid = acymailing_getCID('filid');

		$formData = acymailing_getVar('array', 'data', array(), '');

		foreach($formData['filter'] as $column => $value){
			acymailing_secureField($column);
			$filter->$column = strip_tags($value);
		}

		$config = acymailing_config();
		$alltriggers = array_keys((array)acymailing_getVar('none', 'trigger'));
		$filter->trigger = implode(',', $alltriggers);
		$newConfig = new stdClass();
		foreach($alltriggers as $oneTrigger){
			$name = 'triggerfilter_'.$oneTrigger;
			if($config->get($name)) continue;
			$newConfig->$name = 1;
		}

		if(in_array('daycron', $alltriggers)){
			$newHours = acymailing_getVar('none', 'triggerhours');
			$newMinutes = acymailing_getVar('none', 'triggerminutes');
			$newTime = acymailing_getTime(date('Y').'-'.date('m').'-'.date('d').' '.$newHours.':'.$newMinutes);
			if($newTime < time()) $newTime += 86400;
			$filter->daycron = $newTime;
		}

		if(!empty($newConfig)) $config->save($newConfig);

		$data = array('action', 'filter');
		foreach($data as $oneData){
			$filter->$oneData = array();
			$formData = acymailing_getVar('none', $oneData);
			if(!empty($formData['type'])){
				$realNum = 0;
				$blockNum = 0;

				foreach($formData['type'] as $oneFilter){
					foreach($oneFilter as $num => $oneType) {
						if (empty($oneType)) continue;
						$filter->{$oneData}['type'][$blockNum][$realNum] = $oneType;
						$filter->{$oneData}[$realNum][$oneType] = $formData[$num][$oneType];
						$realNum++;
					}
					$blockNum++;
				}
			}
			$filter->$oneData = serialize($filter->$oneData);
		}

		$filid = $this->save($filter);
		if(!$filid) return false;

		acymailing_setVar('filid', $filid);
		return true;
	}

	function get($filid, $default = null){
		$query = 'SELECT a.* FROM #__acymailing_filter as a WHERE a.`filid` = '.intval($filid).' LIMIT 1';
		$filter = acymailing_loadObject($query);

		if(!empty($filter->filter)){
			$filter->filter = unserialize($filter->filter);
		}

		if(!empty($filter->action)){
			$filter->action = unserialize($filter->action);
		}

		if(!empty($filter->trigger)){
			$filter->trigger = array_flip(explode(',', $filter->trigger));
		}

		return $filter;
	}

	function countReceivers($listids, $filters, $mailid = 0){
		$result = 0;
		if(empty($listids)) return $result;

		acymailing_importPlugin('acymailing');
		acymailing_arrayToInteger($listids);

		$query = $this->initialQuery($listids, $mailid);

		if(empty($filters['type'])) return $query->count();

		foreach($filters['type'] as $block => $oneFilter) {
			$query = $this->initialQuery($listids, $mailid);
			foreach($oneFilter as $num => $oneType) {
				if (empty($oneType)) continue;
				acymailing_trigger('onAcyProcessFilter_' . $oneType, array(&$query, $filters[$num][$oneType], $num));
			}
			$result += $query->count();
		}
		return $result;
	}

	function initialQuery($listids, $mailid){
		$query = new acyQuery();

		$query->from = '#__acymailing_listsub as listsub';
		$query->join[] = '#__acymailing_subscriber as sub ON sub.subid = listsub.subid';
		$query->where[] = 'listsub.listid IN ('.implode(',', $listids).') AND listsub.status=1';
		$config = acymailing_config();
		if($config->get('require_confirmation')) $query->where[] = 'sub.confirmed = 1';
		$query->where[] = 'sub.enabled = 1 AND sub.accept = 1';

		if($this->onlynew && !empty($mailid)){
			$query->leftjoin[] = '#__acymailing_userstats as userstats ON sub.subid = userstats.subid AND userstats.mailid = '.intval($mailid);
			$query->where[] = 'userstats.subid IS NULL';
		}

		return $query;
	}

	function addJSFilterFunctions(){
		$js = "
				document.addEventListener('DOMContentLoaded', function(){ addOrBlock(); });
		 		var numBlocks = 0;
		 		var numFilters = 0;
				function addAcyFilter(addButton){
					var isNotFirst = addButton.parentNode.querySelector('.plugarea');
				
					var newdiv = document.createElement('div');
					newdiv.id = 'filter'+numFilters;
					newdiv.className = 'plugarea';
					newdiv.innerHTML = '';
					if(isNotFirst) newdiv.innerHTML += '".acymailing_translation('FILTER_AND')."';
					newdiv.innerHTML += document.getElementById('filters_original').innerHTML.replace(/__num__/g, numFilters).replace(/__block__/g, addButton.id.replace('addButton_', ''));
					
					addButton.parentNode.querySelector('.allfilters').appendChild(newdiv);
					updateFilter(numFilters);
					
					if(isNotFirst){
						var deleteCross = document.createElement('i');
						deleteCross.setAttribute('class', 'acyicon-cancel deleteFilter');
						deleteCross.onclick = function(){
							this.parentNode.remove(); 
							return false;
						}
						var sp2 = document.getElementById('filterarea_' + numFilters.toString());
						sp2.parentNode.insertBefore(deleteCross, sp2);
					}
					
					numFilters++;
				}
				
				function addOrBlock(){
					var container = document.createElement('div');
					container.className = 'onelineblockoptions';
					
					var filtersContainer = document.createElement('div');
					filtersContainer.className = 'allfilters';
					
					var addButton = document.createElement('button');
					addButton.className = 'acymailing_button';
					addButton.onclick = function(){ addAcyFilter(this);return false;};
					addButton.innerHTML = '".acymailing_translation('ADD_FILTER', true)."';
					addButton.id = 'addButton_' + numBlocks;
					
					if(numBlocks > 0){
						var deleteCross = document.createElement('i');
						deleteCross.setAttribute('class', 'acyicon-cancel deleteFilter');
						deleteCross.style.float = 'right';
						deleteCross.onclick = function(){
							this.parentNode.previousSibling.remove(); 
							this.parentNode.remove(); 
							return false;
						}
						container.appendChild(deleteCross);
					}
					
					container.appendChild(filtersContainer);
					container.appendChild(addButton);
					
					var orButton = document.getElementById('acyorbutton');
					
					if(numBlocks > 0){
						var separator = document.createElement('span');
						separator.innerHTML = '".ucfirst(acymailing_translation('ACY_OR', true))."';
						orButton.parentNode.insertBefore(separator, orButton);
					}
					orButton.parentNode.insertBefore(container, orButton);
					
					addButton.click();
					numBlocks++;
				}
				
				function countresults(num){ ";
		if(!acymailing_isAdmin()) $js .= " return; ";
		$js .= "
					if(document.getElementById('filtertype'+num).value == ''){
						document.getElementById('countresult_'+num).innerHTML = '';
						return;
					}
					document.getElementById('countresult_'+num).innerHTML = '<span class=\"onload\"></span>';
					
					var dataform = new FormData(document.getElementById('adminForm'));
					dataform.append('task', 'countresults');
					dataform.append('ctrl', 'filter');
					dataform.append('option', 'com_acymailing');
					dataform.append('num', num);
					
					dataform.append('tmpl', 'component');
					dataform.append('noheader', '1');
					
					dataform.append('page', 'acymailing_filter');
					dataform.append('action', 'acymailing_router');
					
					var xhr = new XMLHttpRequest();
					xhr.open('POST', '".acymailing_prepareAjaxURL('filter')."&task=countresults&num='+num);
					xhr.onload = function(){
						document.getElementById('countresult_'+num).innerHTML = xhr.responseText;
					};
					xhr.send(dataform);
				}

				function updateFilter(filterNum){
					currentFilterType = window.document.getElementById('filtertype'+filterNum).value;
					if(!currentFilterType){
						window.document.getElementById('filterarea_'+filterNum).innerHTML = '';
						document.getElementById('countresult_'+filterNum).innerHTML = '';
						return;
					}
					filterArea = 'filter__num__'+currentFilterType;
					window.document.getElementById('filterarea_'+filterNum).innerHTML = window.document.getElementById(filterArea).innerHTML.replace(/__num__/g,filterNum);
					if(typeof(window['onAcyDisplayFilter_'+currentFilterType]) == 'function') {
						try{ window['onAcyDisplayFilter_'+currentFilterType](filterNum); }catch(e){alert('Error in the onAcyDisplayFilter_'+currentFilterType+' function : '+e); }
					}
				}

				function displayCondFilter(fct, element, num, extra){";
		$ctrl = 'filter';
		if(!acymailing_isAdmin()) $ctrl = 'frontfilter';
		$js .= "
					var xhr = new XMLHttpRequest();
					xhr.open('GET', '".acymailing_prepareAjaxURL($ctrl)."&task=displayCondFilter&fct='+fct+'&num='+num+'&'+extra);
					xhr.onload = function(){
						document.getElementById(element).innerHTML = xhr.responseText;
						countresults(num);
					};
					xhr.send();
				}";
		acymailing_addScript(true, $js);

		$this->addDateDetailHandling();

		$eltsToClean = array('acybase_filters', 'filters_block', 'allactions', 'filtersblock');
		acymailing_removeChzn($eltsToClean);
	}

	protected function addDateDetailHandling(){
		$js = "var dateFieldSelected = null;
				function updateDateDetail(element){
					if(element.value=='relativedate'){
						document.getElementById('specificDate').style.display = 'none';
						document.getElementById('relativeDate').style.display = 'inline';
					} else if(element.value=='specificdate'){
						document.getElementById('specificDate').style.display = 'inline';
						document.getElementById('relativeDate').style.display = 'none';
					} else{
						document.getElementById('specificDate').style.display = 'none';
						document.getElementById('relativeDate').style.display = 'none';
					}
				}

				function hideDateDetail(){
					document.getElementById('dateDetails').style.display = 'none';
				}

				function validateDateField(){
					if(document.getElementById('dateDetail_typerelativedate').checked == true){
						dateVal = '{time}';
						if(document.getElementById('dateDetail_delay').value != 0){
							if(document.getElementById('dateDetail_operator').value == 'before'){
								dateVal += '-';
							} else{
								dateVal += '+';
							}
							if(document.getElementById('dateDetail_length').value == 'minutes'){
								dateVal += document.getElementById('dateDetail_delay').value * 60;
							} else if(document.getElementById('dateDetail_length').value == 'hours'){
								dateVal += document.getElementById('dateDetail_delay').value * 3600;
							} else{
								dateVal += document.getElementById('dateDetail_delay').value * 24 * 3600;
							}
						}
						dateFieldSelected.value = dateVal;
					} else{
						year = document.getElementById('dateDetail_year').value;
						month = document.getElementById('dateDetail_month').value;
						day = document.getElementById('dateDetail_day').value;
						dateFieldSelected.value = year+'-'+month+'-'+day;
					}
					hideDateDetail();
					if(dateFieldSelected.name.substr(0,6) == 'filter'){ dateFieldSelected.onchange(); }
				}

				function displayDatePicker(element,e){
					dateFieldSelected = element;
					try{
						currentVal = element.value;
						if(currentVal.substr(0,6) == '{time}'){
							toggleDateBtn('relative');
							if(currentVal == '{time}'){
								document.getElementById('dateDetail_delay').value = 0;
								document.getElementById('dateDetail_operator').value = 'before';
								document.getElementById('dateDetail_length').value = 'minutes';
							} else{
								currentOperator = currentVal.substr(6,1);
								currentNumber = currentVal.substr(7);
								if(currentNumber/86400 === parseInt(currentNumber/86400)){
									document.getElementById('dateDetail_delay').value = parseInt(currentNumber/86400);
									document.getElementById('dateDetail_length').value = 'days';
								} else if(currentNumber/3600 === parseInt(currentNumber/3600) ){
									document.getElementById('dateDetail_delay').value = parseInt(currentNumber/3600);
									document.getElementById('dateDetail_length').value = 'hours';
								} else{
									document.getElementById('dateDetail_delay').value = parseInt(currentNumber/60);
									document.getElementById('dateDetail_length').value = 'minutes';
								}
								if(currentOperator == '-'){
									document.getElementById('dateDetail_operator').value = 'before';
								} else{
									document.getElementById('dateDetail_operator').value = 'after'
								}
							}
							dateTmp = new Date();
							document.getElementById('dateDetail_year').value = dateTmp.getFullYear();
							month = dateTmp.getMonth() + 1;
							if(month < 10){ month = '0'+ month; }
							document.getElementById('dateDetail_month').value = month;
							if(dateTmp.getDate() < 10){ day = '0'+ dateTmp.getDate(); }
							else{ day = dateTmp.getDate();}
							document.getElementById('dateDetail_day').value = day;
						} else{
							toggleDateBtn('specific');
							if(currentVal == '' || currentVal == parseInt(currentVal)){
								if(currentVal == ''){ dateTmp = new Date();}
								else{ dateTmp = new Date(1000*currentVal); }
								document.getElementById('dateDetail_year').value = dateTmp.getFullYear();
								month = dateTmp.getMonth() + 1;
								if(month < 10){ month = '0'+ month; }
								document.getElementById('dateDetail_month').value = month;
								if(dateTmp.getDate() < 10){ day = '0'+ dateTmp.getDate(); }
								else{ day = dateTmp.getDate();}
								document.getElementById('dateDetail_day').value = day;
							} else{
								document.getElementById('dateDetail_year').value = currentVal.substr(0,4);
								document.getElementById('dateDetail_month').value = currentVal.substr(5,2);
								document.getElementById('dateDetail_day').value = currentVal.substr(8,2);
							}
						}

						document.getElementById('dateDetails').style.left = e.clientX + 'px';
						document.getElementById('dateDetails').style.top = e.clientY + 20 + 'px';
					}catch(err){
						document.getElementById('dateDetails').style.left = e.x+'px';
						document.getElementById('dateDetails').style.top = e.y+20+'px';
					}

					document.getElementById('dateDetails').style.display = 'block';
				}

				function toggleDateBtn(btnToActive){
					if(btnToActive == 'specific'){
						if(typeof jQuery != 'undefined'){
							jQuery('#dateDetail_typefieldset label[for=dateDetail_typespecificdate]').click();
							jQuery('#dateDetail_typespecificdate').click();
						}else{
							document.getElementById('dateDetail_typerelativedate').checked='';
							document.getElementById('dateDetail_typespecificdate').checked='checked';
						}
						document.getElementById('specificDate').style.display = 'inline';
						document.getElementById('relativeDate').style.display = 'none';
					} else{
						if(typeof jQuery != 'undefined'){
							jQuery('#dateDetail_type label[for=dateDetail_typerelativedate]').click();
							jQuery('#dateDetail_typerelativedate').click();
						}else{
							document.getElementById('dateDetail_typerelativedate').checked='checked';
							document.getElementById('dateDetail_typespecificdate').checked='';
						}
						document.getElementById('specificDate').style.display = 'none';
						document.getElementById('relativeDate').style.display = 'inline';
					}
				}";

		acymailing_addScript(true, $js);

		$dateDetails = '<div id="dateDetails" style="display:none;z-index: 60;">';
		$dateTypeData = array();
		$dateTypeData[] = acymailing_selectOption('relativedate', acymailing_translation('ACY_RELATIVE_DATE'));
		$dateTypeData[] = acymailing_selectOption('specificdate', acymailing_translation('ACY_SPECIFIC_DATE'));
		$dateDetails .= '<div class="dateDetailType">'.acymailing_radio($dateTypeData, 'dateDetail_type', 'onchange="updateDateDetail(this);"', 'value', 'text', 'relativedate', 'dateDetail_type').'</div>';
		$dateDetails .= '<div id="relativeDate">';
		$dateDetails .= '<input type="text" name="dateDetail_delay" id="dateDetail_delay" size="5" style="width:30px" value="0" pattern="[0-9]*"> ';
		$tempData = array();
		$tempData[] = acymailing_selectOption('minutes', acymailing_translation('ACY_MINUTES'));
		$tempData[] = acymailing_selectOption('hours', acymailing_translation('HOURS'));
		$tempData[] = acymailing_selectOption('days', acymailing_translation('DAYS'));
		$dateDetails .= acymailing_select($tempData, 'dateDetail_length', 'style="width:100px"', 'value', 'text');
		$tempData = array();
		$tempData[] = acymailing_selectOption('before', acymailing_translation('ACY_BEFORE'));
		$tempData[] = acymailing_selectOption('after', acymailing_translation('ACY_AFTER'));
		$dateDetails .= acymailing_select($tempData, 'dateDetail_operator', 'style="width:100px"', 'value', 'text');
		$dateDetails .= ' '.acymailing_translation('ACY_EXECUTION_TIME');
		$dateDetails .= '</div>';
		$dateDetails .= '<div id="specificDate" style="display:none;">';
		$tempData = array();
		$currentYear = (int)date('Y');
		for($i = 1970; $i <= $currentYear + 5; $i++){
			$tempData[] = acymailing_selectOption($i, $i);
		}
		$dateDetails .= acymailing_select($tempData, 'dateDetail_year', 'style="width:80px"', 'value', 'text');
		$tempData = array();
		for($i = 1; $i < 13; $i++){
			$monthVal = ($i < 10 ? '0'.$i : $i);
			$tempData[] = acymailing_selectOption($monthVal, $monthVal);
		}
		$dateDetails .= acymailing_select($tempData, 'dateDetail_month', 'style="width:60px"', 'value', 'text');
		$tempData = array();
		for($i = 1; $i < 32; $i++){
			$dayVal = ($i < 10 ? '0'.$i : $i);
			$tempData[] = acymailing_selectOption($dayVal, $dayVal);
		}
		$dateDetails .= acymailing_select($tempData, 'dateDetail_day', 'style="width:60px"', 'value', 'text');
		$dateDetails .= '</div>';
		$dateDetails .= '<div class="dateBtn"><input type="button" onClick="hideDateDetail();" class="btn btn-danger" value="'.acymailing_translation('ACY_CANCEL').'"> <input type="button" onClick="validateDateField();" class="btn btn-success" value="'.acymailing_translation('ACY_OK').'"></div>';
		$dateDetails .= '</div>';
		echo($dateDetails);
	}
}

class acyQuery{
	var $leftjoin = array();
	var $join = array();
	var $where = array();
	var $from = '#__acymailing_subscriber as sub';
	var $limit = '';
	var $orderBy = '';

	function __construct(){
		if('joomla' == 'joomla')	$this->db = JFactory::getDBO();
	}

	function count(){
		$myquery = $this->getQuery(array('COUNT(DISTINCT sub.subid)'));
		return acymailing_loadResult($myquery);
	}

	function getQuery($select = array()){
		$query = '';
		if(!empty($select)) $query .= ' SELECT DISTINCT '.implode(',', $select);
		if(!empty($this->from)) $query .= ' FROM '.$this->from;
		if(!empty($this->join)) $query .= ' JOIN '.implode(' JOIN ', $this->join);
		if(!empty($this->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $this->leftjoin);
		if(!empty($this->where)) $query .= ' WHERE ('.implode(') AND (', $this->where).')';
		if(!empty($this->orderBy)) $query .= ' ORDER BY '.$this->orderBy;
		if(!empty($this->limit)) $query .= ' LIMIT '.$this->limit;

		return $query;
	}

	function convertQuery($as, $column, $operator, $value, $type = ''){

		$operator = str_replace(array('&lt;', '&gt;'), array('<', '>'), $operator);

		if($operator == 'CONTAINS'){
			$operator = 'LIKE';
			$value = '%'.$value.'%';
		}elseif($operator == 'BEGINS'){
			$operator = 'LIKE';
			$value = $value.'%';
		}elseif($operator == 'END'){
			$operator = 'LIKE';
			$value = '%'.$value;
		}elseif($operator == 'NOTCONTAINS'){
			$operator = 'NOT LIKE';
			$value = '%'.$value.'%';
		}elseif($operator == 'REGEXP'){
			if($value === '') return '1 = 1';
		}elseif($operator == 'NOT REGEXP'){
			if($value === '') return '0 = 1';
		}elseif(!in_array($operator, array('IS NULL', 'IS NOT NULL', 'NOT LIKE', 'LIKE', '=', '!=', '>', '<', '>=', '<='))){
			die('Operator not safe : '.$operator);
		}

		if(strpos($value, '{time}') !== false){
			$value = acymailing_replaceDate($value);
			$value = strftime('%Y-%m-%d %H:%M:%S', $value);
		}

		$replace = array('{year}', '{month}', '{weekday}', '{day}');
		$replaceBy = array(date('Y'), date('m'), date('N'), date('d'));
		$value = str_replace($replace, $replaceBy, $value);

		if(preg_match_all('#{(year|month|weekday|day)\|(add|remove):([^}]*)}#Uis', $value, $results)){

			foreach($results[0] as $i => $oneMatch){
				$format = str_replace(array('year', 'month', 'weekday', 'day'), array('Y', 'm', 'N', 'd'), $results[1][$i]);
				$delay = str_replace(array('add', 'remove'), array('+', '-'), $results[2][$i]).intval($results[3][$i]).' '.str_replace('weekday', 'day', $results[1][$i]);
				$value = str_replace($oneMatch, date($format, strtotime($delay)), $value);
			}
		}

		if(!is_numeric($value) OR in_array($operator, array('REGEXP', 'NOT REGEXP', 'NOT LIKE', 'LIKE', '=', '!='))){
			$value = acymailing_escapeDB($value);
		}

		if(in_array($operator, array('IS NULL', 'IS NOT NULL'))){
			$value = '';
		}

		if($type == 'datetime' && in_array($operator, array('=', '!='))){
			return 'DATE_FORMAT('.$as.'.`'.acymailing_secureField($column).'`, "%Y-%m-%d") '.$operator.' '.'DATE_FORMAT('.$value.', "%Y-%m-%d")';
		}
		if($type == 'timestamp' && in_array($operator, array('=', '!='))){
			return 'FROM_UNIXTIME('.$as.'.`'.acymailing_secureField($column).'`, "%Y-%m-%d") '.$operator.' '.'FROM_UNIXTIME('.$value.', "%Y-%m-%d")';
		}
		return $as.'.`'.acymailing_secureField($column).'` '.$operator.' '.$value;
	}

	function addFlag($id){
		if(!empty($this->orderBy) || !empty($this->limit)) {
			$flagQuery = 'UPDATE ' . acymailing_table('subscriber');
			$flagQuery .= ' SET filterflags = CONCAT(filterflags, "f' . intval($id) . 'f")';
			$flagQuery .= ' WHERE subid IN (
			SELECT subid FROM (SELECT sub.subid FROM ' . acymailing_table('subscriber') . ' AS sub';
			if(!empty($this->join)) $flagQuery .= ' JOIN ' . implode(' JOIN ', $this->join);
			if(!empty($this->leftjoin)) $flagQuery .= ' LEFT JOIN ' . implode(' LEFT JOIN ', $this->leftjoin);
			if(!empty($this->where)) $flagQuery .= ' WHERE (' . implode(') AND (', $this->where) . ')';
			if(!empty($this->orderBy)) $flagQuery .= ' ORDER BY ' . $this->orderBy;
			if(!empty($this->limit)) $flagQuery .= ' LIMIT ' . $this->limit;
			$flagQuery .= ') tmp);';
		}else{
			$flagQuery = 'UPDATE ' . acymailing_table('subscriber') . ' AS sub ';
			if(!empty($this->join)) $flagQuery .= ' JOIN ' . implode(' JOIN ', $this->join);
			if(!empty($this->leftjoin)) $flagQuery .= ' LEFT JOIN ' . implode(' LEFT JOIN ', $this->leftjoin);
			$flagQuery .= ' SET sub.filterflags = CONCAT(sub.filterflags, "f' . intval($id) . 'f")';
			if(!empty($this->where)) $flagQuery .= ' WHERE (' . implode(') AND (', $this->where) . ')';
		}
		acymailing_query($flagQuery);

		$this->join = array();
		$this->leftjoin = array();
		$this->where = array('sub.filterflags LIKE "%f'.intval($id).'f%"');
		$this->orderBy = '';
		$this->limit = '';
	}

	function removeFlag($id){
		acymailing_query('UPDATE '.acymailing_table('subscriber').' SET filterflags = REPLACE(filterflags, "f'.intval($id).'f", "") WHERE filterflags LIKE "%f'.intval($id).'f%"');
	}
}
classes/subscriber.php000060400000053147152455705230011073 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class subscriberClass extends acymailingClass{

	var $tables = array('listsub', 'userstats', 'queue', 'history', 'subscriber');
	var $pkey = 'subid';
	var $namekey = 'email';
	var $restrictedFields = array('subid', 'key', 'confirmed', 'enabled', 'ip', 'userid', 'created');
	var $errors = array();
	var $checkVisitor = true;
	var $checkAccess = true;
	var $sendConf = true;
	var $forceConf = false;
	var $requireId = false;
	var $newUser = null;
	var $confirmationSent = false;
	var $sendNotif = true;
	var $sendWelcome = true;
	var $recordHistory = false;
	var $allowModif = false;
	var $extendedEmailVerif = false;

	var $userForNotification;
	var $triggerFilterBE = false;

	var $geolocRight = false;
	var $geolocData = null;


	function save($subscriber){
		$config = acymailing_config();
		acymailing_importPlugin('acymailing');

		if(isset($subscriber->email)){
			$subscriber->email = strtolower($subscriber->email);
			$userHelper = acymailing_get('helper.user');
			if(!$userHelper->validEmail($subscriber->email, $this->extendedEmailVerif)){
				echo "<script>alert('".acymailing_translation('VALID_EMAIL', true)."'); window.history.go(-1);</script>";
				exit;
			}
		}
		if(empty($subscriber->subid)){
			$currentUserid = acymailing_currentUserId();
			$currentEmail = acymailing_currentUserEmail();
			if($this->checkVisitor && !acymailing_isAdmin() && (int)$config->get('allow_visitor', 1) != 1 && (empty($currentUserid) OR strtolower($currentEmail) != $subscriber->email)){
				echo "<script> alert('".acymailing_translation('ONLY_LOGGED', true)."'); window.history.go(-1);</script>\n";
				exit;
			}
			if(empty($subscriber->email)) return false;
			$subscriber->subid = $this->subid($subscriber->email);
		}

		if(empty($subscriber->subid)){
			if(empty($subscriber->created)) $subscriber->created = time();
			if(empty($subscriber->ip)){
				$ipClass = acymailing_get('helper.user');
				$subscriber->ip = $ipClass->getIP();
			}

			$source = acymailing_getVar('cmd', 'acy_source');
			if(empty($subscriber->source) && !empty($source)) $subscriber->source = $source;

			if(empty($subscriber->name) && $config->get('generate_name', 1)) $subscriber->name = ucwords(trim(str_replace(array('.', '_', ')', ',', '(', '-', 1, 2, 3, 4, 5, 6, 7, 8, 9, 0), ' ', substr($subscriber->email, 0, strpos($subscriber->email, '@')))));
			$subscriber->key = acymailing_generateKey(14);
			acymailing_trigger('onAcyBeforeUserCreate', array(&$subscriber));
			$status = acymailing_insertObject(acymailing_table('subscriber'), $subscriber);
		}else{
			if(count((array)$subscriber) > 1){
				acymailing_trigger('onAcyBeforeUserModify', array(&$subscriber));
				$status = acymailing_updateObject(acymailing_table('subscriber'), $subscriber, 'subid');
			}else{
				$status = true;
			}
		}

		if(!$status) return false;

		$subid = empty($subscriber->subid) ? $status : $subscriber->subid;

		if($this->triggerFilterBE || !acymailing_isAdmin()){
			$filterClass = acymailing_get('class.filter');
			$filterClass->subid = $subid;
			$filterClass->trigger((empty($subscriber->subid) ? 'subcreate' : 'subchange'));
		}

		$classGeoloc = acymailing_get('class.geolocation');
		if(empty($subscriber->subid)){
			$subscriber->subid = $subid;

			if($this->geolocRight){
				$this->geolocData = $classGeoloc->saveGeolocation('creation', $subscriber->subid);
			}

			$this->userForNotification = $subscriber;
			$resultsTrigger = acymailing_trigger('onAcyUserCreate', array(&$subscriber));
			$this->recordHistory = true;
			$action = 'created';
		}else{
			if($this->geolocRight){
				$this->geolocData = $classGeoloc->saveGeolocation('modify', $subscriber->subid);
			}

			$resultsTrigger = acymailing_trigger('onAcyUserModify', array($subscriber));
			$action = 'modified';
		}

		if($this->recordHistory){
			$historyClass = acymailing_get('class.acyhistory');
			$historyClass->insert($subscriber->subid, $action);
			$this->recordHistory = false;
		}

		if($this->forceConf || (!acymailing_isAdmin() AND $this->sendConf)){
			$this->sendConf($subid);
		}

		return $subid;
	}

	function sendNotification(){
		if(empty($this->userForNotification)) return;
		$subscriber = $this->userForNotification;
		unset($this->userForNotification);

		$config = acymailing_config();
		$notifyUsers = $config->get('notification_created');
		if(acymailing_isAdmin() || empty($notifyUsers)) return;

		$mailer = acymailing_get('helper.mailer');
		$mailer->report = false;
		$mailer->autoAddUser = true;
		$mailer->checkConfirmField = false;
		foreach($subscriber as $map => $value){
			$mailer->addParam('user:'.$map, $value);
		}

		$mailer->addParam('action', acymailing_translation('ACY_NEW'));

		if(!empty($subscriber->subid)){
			$listSubClass = acymailing_get('class.listsub');
			$mailer->addParam('user:subscription', $listSubClass->getSubscriptionString($subscriber->subid));
			$mailer->addParam('user:subscriptiondates', $listSubClass->getSubscriptionString($subscriber->subid, true));
		}

		if(!empty($this->geolocData)){
			foreach($this->geolocData as $map => $value){
				$mailer->addParam('geoloc:notif_'.$map, $value);
			}
		}

		$mailer->addParamInfo();

		$allUsers = explode(' ', trim(str_replace(array(';', ','), ' ', $notifyUsers)));
		foreach($allUsers as $oneUser){
			if(empty($oneUser)) continue;
			$mailer->sendOne('notification_created', $oneUser);
		}
	}

	function sendConf($subid){
		if($this->confirmationSent) return false;

		$myuser = $this->get($subid);
		$config = acymailing_config();
		if(!empty($myuser->confirmed)) return false;

		if(!$config->get('require_confirmation', false)) return false;

		$mailClass = acymailing_get('helper.mailer');
		$mailClass->checkConfirmField = false;
		$mailClass->checkEnabled = false;
		$mailClass->checkAccept = false;
		$mailClass->report = $config->get('confirm_message', 0);
		$alias = "confirmation";
		if(acymailing_getVar('cmd', 'acy_source')){
			$sourceparams = explode('_', acymailing_getVar('cmd', 'acy_source'));
			$alias = acymailing_loadResult('SELECT alias FROM #__acymailing_mail WHERE published = 1 AND alias IN ("confirmation",'.acymailing_escapeDB('confirmation-'.$sourceparams[0]).','.acymailing_escapeDB('confirmation-'.$sourceparams[0].'-'.@$sourceparams[1]).','.acymailing_escapeDB('confirmation-'.$sourceparams[0].'-'.@$sourceparams[1].'-'.@$sourceparams[2]).') ORDER BY alias DESC');
		}

		$this->confirmationSentSuccess = $mailClass->sendOne($alias, $myuser);
		$this->confirmationSentError = $mailClass->reportMessage;
		$this->confirmationSent = true;
		return true;
	}

	function subid($email){
		if(is_numeric($email)){
			$cond = ' userid = '.$email;
		}else{
			if(!empty($email)) $email = acymailing_punycode($email);
			$cond = 'email = '.acymailing_escapeDB(trim($email));
		}
		return acymailing_loadResult('SELECT subid FROM '.acymailing_table('subscriber').' WHERE '.$cond);
	}


	function get($subid, $default = null){
		if(is_numeric($subid)){
			$column = 'subid';
		}else{
			$column = 'email';
			if(!empty($subid)) $subid = acymailing_punycode($subid);
		}
		return acymailing_loadObject('SELECT * FROM '.acymailing_table('subscriber').' WHERE '.$column.' = '.acymailing_escapeDB(trim($subid)).' LIMIT 1');
	}

	function getFull($subid){
		if(is_numeric($subid)){
			$column = 'subid';
		}else{
			$column = 'email';
			if(!empty($subid)) $subid = acymailing_punycode($subid);
		}
		return acymailing_loadObject('SELECT b.'.$this->cmsUserVars->username.' AS username, a.* FROM '.acymailing_table('subscriber').' as a LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as b on a.userid = b.'.$this->cmsUserVars->id.' WHERE '.$column.' = '.acymailing_escapeDB(trim($subid)).' LIMIT 1');
	}

	function getFrontendSubscription($subid, $index = ''){
		$subscription = $this->getSubscription($subid, $index);
		$copyAllLists = $subscription;
		$currentUserid = acymailing_currentUserId();
		foreach($copyAllLists as $id => $oneList){
			if(!$oneList->published OR empty($currentUserid)){
				unset($subscription[$id]);
				continue;
			}
			if($currentUserid == (int)$oneList->userid) continue;
			if(!acymailing_isAllowed($oneList->access_manage)){
				unset($subscription[$id]);
				continue;
			}
		}

		return $subscription;
	}

	function getSubscription($subid, $index = ''){
		$query = 'SELECT a.*, b.* FROM '.acymailing_table('list').' as b ';
		$query .= 'LEFT JOIN '.acymailing_table('listsub').' as a on a.listid = b.listid AND a.subid = '.intval($subid);
		$query .= ' WHERE b.type = \'list\'';
		$query .= ' ORDER BY b.ordering ASC';
		return acymailing_loadObjectList($query, $index);
	}

	function getSubscriptionStatus($subid, $listids = null){
		$query = 'SELECT status,listid FROM '.acymailing_table('listsub').' WHERE subid = '.intval($subid);
		if(!empty($listids)){
			acymailing_arrayToInteger($listids);
			$query .= ' AND listid IN ('.implode(',', $listids).')';
		}
		return acymailing_loadObjectList($query, 'listid');
	}

	function checkFields(&$data, &$subscriber){

		foreach($data as $column => $value){
			$column = trim(strtolower($column));
			if($this->allowModif || !in_array($column, $this->restrictedFields)){
				acymailing_secureField($column);
				if(is_array($value)){
					if(isset($value['day']) || isset($value['month']) || isset($value['year'])){
						$value = (empty($value['year']) ? '0000' : intval($value['year'])).'-'.(empty($value['month']) ? '00' : $value['month']).'-'.(empty($value['day']) ? '00' : $value['day']);
					}else{
						$value = implode(',', $value);
					}
				}

				$subscriber->$column = trim(strip_tags($value));

				if(!is_numeric($subscriber->$column)){
					if(function_exists('mb_detect_encoding') && mb_detect_encoding($subscriber->$column, 'UTF-8', true) != 'UTF-8'){
						$subscriber->$column = utf8_encode($subscriber->$column);
					}elseif(!function_exists('mb_detect_encoding') && !preg_match('%^(?:[\x09\x0A\x0D\x20-\x7E]|[\xC2-\xDF][\x80-\xBF]|\xE0[\xA0-\xBF][\x80-\xBF]|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}|\xED[\x80-\x9F][\x80-\xBF]|\xF0[\x90-\xBF][\x80-\xBF]{2}|[\xF1-\xF3][\x80-\xBF]{3}|\xF4[\x80-\x8F][\x80-\xBF]{2})*$%xs', $subscriber->$column)){
						$subscriber->$column = utf8_encode($subscriber->$column);
					}
				}
			}
		}

		if(!acymailing_level(3) || empty($_FILES)) return;

		
		$config = acymailing_config();
		$uploadFolder = trim(acymailing_cleanPath(html_entity_decode(acymailing_getFilesFolder())), DS.' ').DS;
		$uploadPath = acymailing_cleanPath(ACYMAILING_ROOT.$uploadFolder.'userfiles'.DS);
		acymailing_createDir(acymailing_cleanPath(ACYMAILING_ROOT.$uploadFolder), true);
		acymailing_createDir($uploadPath, true);


		foreach($_FILES as $typename => $type){
			$type2 = isset($type['name']['subscriber']) ? $type['name']['subscriber'] : $type['name'];
			if(empty($type2) || !is_array($type2)) continue;
			foreach($type2 as $fieldname => $filename){
				if(empty($filename)) continue;
				acymailing_secureField($fieldname);
				$attachment = new stdClass();
				$filename = acymailing_makeSafeFile(strtolower(strip_tags($filename)));
				$attachment->filename = time().rand(1, 999).'_'.$filename;
				while(file_exists($uploadPath.$attachment->filename)){
					$attachment->filename = time().rand(1, 999).'_'.$filename;
				}

				if(!preg_match('#\.('.str_replace(array(',', '.'), array('|', '\.'), $config->get('allowedfiles')).')$#Ui', $attachment->filename, $extension) || preg_match('#\.(php.?|.?htm.?|pl|py|jsp|asp|sh|cgi)#Ui', $attachment->filename)){
					echo "<script>alert('".acymailing_translation_sprintf('ACCEPTED_TYPE', substr($attachment->filename, strrpos($attachment->filename, '.') + 1), $config->get('allowedfiles'))."');window.history.go(-1);</script>";
					exit;
				}
				$attachment->filename = str_replace(array('.', ' '), '_', substr($attachment->filename, 0, strpos($attachment->filename, $extension[0]))).$extension[0];

				$tmpFile = isset($type['name']['subscriber']) ? $_FILES[$typename]['tmp_name']['subscriber'][$fieldname] : $_FILES[$typename]['tmp_name'][$fieldname];
				if(!acymailing_uploadFile($tmpFile, $uploadPath.$attachment->filename)){
					echo "<script>alert('".acymailing_translation_sprintf('FAIL_UPLOAD', '<b><i>'.$tmpFile.'</i></b>', '<b><i>'.$uploadPath.$attachment->filename.'</i></b>')."');window.history.go(-1);</script>";
					exit;
				}

				$subscriber->$fieldname = $attachment->filename;
			}
		}
	}

	function saveForm(){
		$config = acymailing_config();
		$allowUserModifications = (bool)($config->get('allow_modif', 'data') == 'all') || $this->allowModif;
		$allowSubscriptionModifications = (bool)($config->get('allow_modif', 'data') != 'none') || $this->allowModif;

		$subscriber = new stdClass();
		$subscriber->subid = acymailing_getCID('subid');

		if(!$this->allowModif && !empty($subscriber->subid)){
			$user = $this->identify();
			$allowUserModifications = true;
			$allowSubscriptionModifications = true;
			if($user->subid != $subscriber->subid){
				die('You are not allowed to modify this user');
			}
		}

		$formData = acymailing_getVar('array', 'data', array(), '');
		if(!empty($formData['subscriber'])){
			$this->checkFields($formData['subscriber'], $subscriber);
		}

		if(!empty($subscriber->email)) $subscriber->email = acymailing_punycode($subscriber->email);

		if(empty($subscriber->subid)){
			if(empty($subscriber->email)){
				echo "<script>alert('".acymailing_translation('VALID_EMAIL', true)."'); window.history.go(-1);</script>";
				exit;
			}
		}

		if(!empty($subscriber->email)){
			$existSubscriber = acymailing_loadObject('SELECT * FROM #__acymailing_subscriber WHERE email = '.acymailing_escapeDB($subscriber->email).' AND subid != '.intval(@$subscriber->subid));
			if(!empty($existSubscriber->subid)){
				$overwritenow = true;
				if($this->allowModif){
					if(acymailing_isAdmin()){
						$overwritenow = false;
					}else{
						$listClass = acymailing_get('class.list');
						$allowedLists = $listClass->getFrontendLists('listid');
						if(empty($allowedLists)){
							$this->errors[] = "Not sure how you were able to edit this user if you don't own any list...";
							return false;
						}
						$allowedlistid = acymailing_loadResult('SELECT listid FROM #__acymailing_listsub WHERE subid = '.intval($existSubscriber->subid).' AND listid IN ('.implode(',', array_keys($allowedLists)).')');
						if(!empty($allowedlistid)) $overwritenow = false;
					}
				}

				if($overwritenow){
					$subscriber->subid = $existSubscriber->subid;
					$subscriber->confirmed = $existSubscriber->confirmed;
				}else{
					$this->errors[] = acymailing_translation_sprintf('USER_ALREADY_EXISTS', $subscriber->email);
					$this->errors[] = '<a href="'.acymailing_completeLink((acymailing_isAdmin() ? 'subscriber' : 'frontsubscriber&listid='.$allowedlistid).'&task=edit&subid='.$existSubscriber->subid).'" >'.acymailing_translation('CLICK_EDIT_USER').'</a>';
					return false;
				}
			}
		}

		if(!$this->allowModif && !empty($subscriber->subid) && !empty($subscriber->email)){
			$existSubscriber = $this->get($subscriber->subid);
			if(trim(strtolower($subscriber->email)) != strtolower($existSubscriber->email)){
				$subscriber->confirmed = 0;
			}
		}

		$this->recordHistory = true;
		$this->newUser = empty($subscriber->subid) ? true : false;
		if(empty($subscriber->subid) OR $allowUserModifications){
			if(isset($subscriber->html) && $subscriber->html != 1) $subscriber->html = 0;
			if(isset($subscriber->confirmed) && $subscriber->confirmed != 1) $subscriber->confirmed = 0;
			if(isset($subscriber->enabled) && $subscriber->enabled != 1) $subscriber->enabled = 0;
			if(isset($subscriber->accept) && $subscriber->accept != 1) $subscriber->accept = 0;
			$subid = $this->save($subscriber);
			$allowSubscriptionModifications = true;
		}else{
			$subid = $subscriber->subid;
			if(isset($subscriber->confirmed) && empty($subscriber->confirmed)) $this->sendConf($subid);
		}
		acymailing_setVar('subid', $subid);

		if(empty($subid)) return false;

		if(!$this->allowModif && isset($subscriber->accept) && $subscriber->accept == 0) $formData['masterunsub'] = 1;

		if(!acymailing_isAdmin()){
			$hiddenlistsString = acymailing_getVar('string', 'hiddenlists', '');
			if(!empty($hiddenlistsString)){
				$hiddenlists = explode(',', $hiddenlistsString);
				acymailing_arrayToInteger($hiddenlists);
				foreach($hiddenlists as $oneListId){
					$formData['listsub'][$oneListId] = array('status' => 1);
				}
			}
		}

		if(empty($formData['listsub'])) return true;

		if(!$allowSubscriptionModifications){
			$mailClass = acymailing_get('helper.mailer');
			$mailClass->checkConfirmField = false;
			$mailClass->checkEnabled = false;
			$mailClass->report = false;
			$mailClass->sendOne('modif', $subid);
			$this->requireId = true;
			return false;
		}
		$subscriptionSaved = $this->saveSubscription($subid, $formData['listsub']);

		$notifContact = $config->get('notification_contact_menu');
		if(!empty($notifContact) && !acymailing_isAdmin()){
			$userHelper = acymailing_get('helper.user');
			$mailer = acymailing_get('helper.mailer');
			$listsubClass = acymailing_get('class.listsub');
			$mailer->autoAddUser = true;
			$mailer->checkConfirmField = false;
			$mailer->report = false;
			foreach($subscriber as $field => $value) $mailer->addParam('user:'.$field, $value);
			if(empty($subscriber->email)){
				$myUser = $this->get($subscriber->subid);
				$mailer->addParam('user:name', $myUser->name);
				$mailer->addParam('user:email', $myUser->email);
			}
			$mailer->addParam('user:subscription', $listsubClass->getSubscriptionString($subscriber->subid));
			$mailer->addParam('user:subscriptiondates', $listsubClass->getSubscriptionString($subscriber->subid, true));
			$mailer->addParam('user:ip', $userHelper->getIP());
			if(!empty($this->geolocData)){
				foreach($this->geolocData as $map => $value){
					$mailer->addParam('geoloc:notif_'.$map, $value);
				}
			}
			$mailer->addParamInfo();
			$allUsers = explode(' ', trim(str_replace(array(';', ','), ' ', $notifContact)));
			foreach($allUsers as $oneUser){
				if(empty($oneUser)) continue;
				$mailer->sendOne('notification_contact_menu', $oneUser);
			}
		}
		return $subscriptionSaved;
	}

	function saveSubscription($subid, $formlists){

		$addlists = array();
		$removelists = array();
		$updatelists = array();

		$listids = array_keys($formlists);
		$currentSubscription = $this->getSubscriptionStatus($subid, $listids);

		foreach($formlists as $listid => $oneList){
			if(empty($oneList['status'])){
				if(isset($currentSubscription[$listid])) $removelists[] = $listid;
				continue;
			}

			if($this->confirmationSent && $oneList['status'] == 1) $oneList['status'] = 2;

			if(!isset($currentSubscription[$listid])){
				if($oneList['status'] != -1) $addlists[$oneList['status']][] = $listid;

				continue;
			}

			if($currentSubscription[$listid]->status == $oneList['status']) continue;

			if($currentSubscription[$listid]->status == 1 && $oneList['status'] == 2 && !$this->allowModif) continue;

			$updatelists[$oneList['status']][] = $listid;
		}

		$listsubClass = acymailing_get('class.listsub');
		$listsubClass->checkAccess = $this->checkAccess;
		$status = true;
		if(!empty($updatelists)) $status = $listsubClass->updateSubscription($subid, $updatelists) && $status;
		if(!empty($removelists)) $status = $listsubClass->removeSubscription($subid, $removelists) && $status;
		if(!empty($addlists)) $status = $listsubClass->addSubscription($subid, $addlists) && $status;

		return $status;
	}

	function confirmSubscription($subid){

		$historyClass = acymailing_get('class.acyhistory');
		$historyClass->insert($subid, 'confirmed');

		$userHelper = acymailing_get('helper.user');
		$ip = $userHelper->getIP();

		$res = acymailing_query('UPDATE '.acymailing_table('subscriber').' SET `confirmed` = 1, `confirmed_date` = '.time().', `confirmed_ip` = '.acymailing_escapeDB($ip).' WHERE `subid` = '.intval($subid).' LIMIT 1');
		if($res === false){
			acymailing_display('Please contact the admin of this website with the error message :<br />'.substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			exit;
		}

		$listids = acymailing_loadResultArray('SELECT `listid` FROM '.acymailing_table('listsub').' WHERE `status` = 2 AND `subid` = '.intval($subid));

		acymailing_importPlugin('acymailing');
		acymailing_trigger('onAcyConfirmUser', array($subid));

		if($this->geolocRight){
			$classGeoloc = acymailing_get('class.geolocation');
			$this->geolocData = $classGeoloc->saveGeolocation('confirm', $subid);
		}

		if(empty($listids)) return;

		$listsubClass = acymailing_get('class.listsub');
		$listsubClass->sendConf = $this->sendWelcome;
		$listsubClass->forceConf = $this->forceConf;
		$listsubClass->sendNotif = $this->sendNotif;
		$listsubClass->updateSubscription($subid, array(1 => $listids));
	}

	function identify($onlyvalue = false){
		$subid = acymailing_getVar('int', "subid", 0);
		$key = acymailing_getVar('string', "key", '');

		if(empty($subid) OR empty($key)){
			$currentUserid = acymailing_currentUserId();
			if(!empty($currentUserid)){
				$userIdentified = $this->get(acymailing_currentUserEmail());
				return $userIdentified;
			}
			if(!$onlyvalue){
				acymailing_enqueueMessage(acymailing_translation('ASK_LOG'), 'error');
			}
			return false;
		}

		$userIdentified = acymailing_loadObject('SELECT * FROM '.acymailing_table('subscriber').' WHERE `subid` = '.acymailing_escapeDB($subid).' AND `key` = '.acymailing_escapeDB($key).' LIMIT 1');
		if(!empty($userIdentified->email)) $userIdentified->email = acymailing_punycode($userIdentified->email, 'emailToUTF8');

		if(empty($userIdentified)){
			if(!$onlyvalue) acymailing_enqueueMessage(acymailing_translation('INVALID_KEY'), 'error');
			return false;
		}

		return $userIdentified;
	}

}
classes/rules.php000060400000003471152455705230010055 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class rulesClass extends acymailingClass{

	var $tables = array('rules');
	var $pkey = 'ruleid';
	var $errors = array();

	function getRules($all = true){
		$rules = acymailing_loadObjectList('SELECT * FROM `#__acymailing_rules` '.($all ? '' : 'WHERE published = 1').' ORDER BY `ordering` ASC');

		foreach($rules as $id => $rule){
			$rules[$id] = $this->_prepareRule($rule);
		}
		return $rules;
	}

	function get($ruleid, $default = null){
		$query = 'SELECT * FROM '.acymailing_table('rules').' WHERE `ruleid` = '.intval($ruleid).' LIMIT 1';
		$rule = acymailing_loadObject($query);

		return $this->_prepareRule($rule);
	}

	function _prepareRule($rule){
		$vals = array('executed_on','action_message','action_user');
		foreach($vals as $oneVal){
			if(!empty($rule->$oneVal)) $rule->$oneVal = unserialize($rule->$oneVal);
		}

		return $rule;
	}

	function saveForm(){

		$rule = new stdClass();
		$rule->ruleid = acymailing_getCID('ruleid');
		if(empty( $rule->ruleid)){
			$rule->ordering = intval(acymailing_loadResult('SELECT max(ordering) FROM `#__acymailing_rules`')) + 1;
		}
		$rule->executed_on = '';
		$rule->action_message = '';
		$rule->action_user = '';

		$formData = acymailing_getVar('array',  'data', array(), '');

		foreach($formData['rule'] as $column => $value){
			acymailing_secureField($column);
			if(is_array($value)){
				$rule->$column = serialize($value);
			}else{
				$rule->$column = strip_tags($value);
			}
		}


		$ruleid = $this->save($rule);
		if(!$ruleid) return false;

		acymailing_setVar( 'ruleid', $ruleid);
		return true;

	}
}
classes/listsub.php000060400000011225152455705230010404 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listsubClass extends acymailingClass{

	var $type = 'list';
	var $gid;
	var $checkAccess = true;
	var $sendNotif = true;
	var $sendConf = true;
	var $forceConf = false;
	var $survey = '';
	var $campaigndelay = 0;
	var $skipedfollowups = 0;

	function updateSubscription($subid, $lists){

		$result = true;
		$time = time();

		$listHelper = acymailing_get('helper.list');
		$listHelper->sendNotif = $this->sendNotif;
		$listHelper->sendConf = $this->sendConf;
		$listHelper->forceConf = $this->forceConf;
		$listHelper->survey = $this->survey;
		$listHelper->campaigndelay = $this->campaigndelay;

		foreach($lists as $status => $listids){
			if(empty($listids)) continue;

			acymailing_arrayToInteger($listids);
			if($status == '-1'){
				$column = 'unsubdate';
			}else $column = 'subdate';

			$query = 'UPDATE '.acymailing_table('listsub').' SET `status` = '.intval($status).','.$column.'='.$time.' WHERE subid = '.intval($subid).' AND listid IN ('.implode(',', $listids).')';
			$affected = acymailing_query($query);
			$result = $affected !== false && $result;

			if($status == 1){
				$listHelper->subscribe($subid, $listids);
			}elseif($status == -1){
				$listHelper->unsubscribe($subid, $listids);
			}
		}

		return $result;
	}

	function removeSubscription($subid, $listids){

		acymailing_arrayToInteger($listids);
		$query = 'DELETE FROM '.acymailing_table('listsub').' WHERE subid = '.intval($subid).' AND listid IN ('.implode(',', $listids).')';
		acymailing_query($query);

		$listHelper = acymailing_get('helper.list');
		$listHelper->sendNotif = $this->sendNotif;
		$listHelper->sendConf = $this->sendConf;
		$listHelper->forceConf = $this->forceConf;
		$listHelper->unsubscribe($subid, $listids);

		return true;
	}

	function addSubscription($subid, $lists){

		$result = true;
		$time = time();
		$subid = intval($subid);

		$listHelper = acymailing_get('helper.list');
		$listHelper->campaigndelay = $this->campaigndelay;
		$listHelper->skipedfollowups = $this->skipedfollowups;
		$listHelper->sendNotif = $this->sendNotif;
		$listHelper->sendConf = $this->sendConf;
		$listHelper->forceConf = $this->forceConf;

		foreach($lists as $status => $listids){
			$status = intval($status);
			acymailing_arrayToInteger($listids);

			$allResults = acymailing_loadObjectList('SELECT `listid`,`access_sub` FROM '.acymailing_table('list').' WHERE `listid` IN ('.implode(',', $listids).') AND `type` = \'list\'', 'listid');
			$listids = array_keys($allResults);

			if($status == '-1'){
				$column = 'unsubdate';
			}else $column = 'subdate';

			$values = array();
			foreach($listids as $listid){
				if(empty($listid)) continue;
				if($status > 0 && acymailing_level(3)){
					if((!acymailing_isAdmin() || !empty($this->gid)) && $this->checkAccess && $allResults[$listid]->access_sub != 'all'){
						if(!acymailing_isAllowed($allResults[$listid]->access_sub, $this->gid)) continue;
					}
				}
				$values[] = intval($listid).','.$subid.','.$status.','.$time;
			}

			if(empty($values)) continue;

			$query = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (listid,subid,`status`,'.$column.') VALUES ('.implode('),(', $values).')';
			$affected = acymailing_query($query);
			$result = $affected !== false && $result;

			if($status == 1){
				$listHelper->subscribe($subid, $listids);
			}
		}

		return $result;
	}

	function getSubscription($subid){
		$query = 'SELECT * FROM '.acymailing_table('listsub').' as a LEFT JOIN '.acymailing_table('list').' as b on a.listid = b.listid WHERE a.subid = '.intval($subid).' AND b.type = \''.$this->type.'\' ORDER BY b.ordering ASC';
		return acymailing_loadObjectList($query, 'listid');
	}

	function getSubscriptionString($subid, $dates = false){
		$usersubscription = $this->getSubscription($subid);
		$subscriptionString = '';
		if(!empty($usersubscription)){
			$subscriptionString = '<ul>';
			foreach($usersubscription as $onesub){
				$status = ($onesub->status == 1) ? acymailing_translation('SUBSCRIBED') : (($onesub->status == -1) ? acymailing_translation('UNSUBSCRIBED') : acymailing_translation('PENDING_SUBSCRIPTION'));
				$subscriptionString .= '<li>['.$onesub->listid.'] '.$onesub->name.' : '.$status;
				if($dates) $subscriptionString .= ' - '.acymailing_getDate($onesub->status == -1 ? $onesub->unsubdate : $onesub->subdate, acymailing_translation('DATE_FORMAT_LC'));
				$subscriptionString .= '</li>';
			}
			$subscriptionString .= '</ul>';
		}

		return $subscriptionString;
	}
}
classes/template.php000060400000101566152455705230010542 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class templateClass extends acymailingClass{

	var $tables = array('template');
	var $pkey = 'tempid';
	var $namekey = 'alias';
	var $templateNames = array();
	var $archiveSection = false;
	var $proposedAreas = false;
	var $templateId = "";
	var $checkAreas = true;

	function get($tempid, $default = null){
		$column = is_numeric($tempid) ? 'tempid' : 'name';
		$template = acymailing_loadObject('SELECT * FROM '.acymailing_table('template').' WHERE '.$column.' = '.acymailing_escapeDB($tempid).' LIMIT 1');
		return $this->_prepareTemplate($template);
	}

	function getTemplates($key = null, $contains = null){
		$query = 'SELECT * FROM '.acymailing_table('template');
		if(!empty($contains)) $query .= ' WHERE body LIKE '.acymailing_escapeDB('%'.$contains.'%');
		$templates = acymailing_loadObjectList($query, $key);
		foreach($templates as &$template){
			$template = $this->_prepareTemplate($template);
		}
		return $templates;
	}

	function getDefault(){
		$queryDefaultTemp = 'SELECT * FROM '.acymailing_table('template').' WHERE premium = 1 AND published = 1 ORDER BY ordering ASC LIMIT 1';
		if(acymailing_level(3)){
			$groups = acymailing_getGroupsByUser(acymailing_currentUserId(), false);
			$condGroup = '';
			foreach($groups as $group){
				$condGroup .= ' OR access LIKE (\'%,'.$group.',%\')';
			}
			$queryDefaultTemp = 'SELECT * FROM '.acymailing_table('template').' WHERE premium = 1 AND published = 1  AND (access = \'all\' '.$condGroup.') ORDER BY ordering ASC LIMIT 1';
		}

		$template = acymailing_loadObject($queryDefaultTemp);
		if(!empty($template->subject)) $template->subject = acyEmoji::Decode($template->subject);
		return $this->_prepareTemplate($template);
	}

	private function _prepareTemplate($template){
		if(!isset($template->styles)) return $template;

		if(empty($template->styles)){
			$template->styles = array();
		}else{
			$template->styles = unserialize($template->styles);
		}

		$template->subject = acyEmoji::Decode($template->subject);

		return $template;
	}

	function saveForm(){

		$template = new stdClass();
		$template->tempid = acymailing_getCID('tempid');

		$formData = acymailing_getVar('array', 'data', array(), '');

		if(!empty($formData['template']['category']) && $formData['template']['category'] == -1){
			$formData['template']['category'] = acymailing_getVar('string', 'newcategory', '');
		}
		$formData['template']['subject'] = acyEmoji::Encode($formData['template']['subject']);

		foreach($formData['template'] as $column => $value){
			acymailing_secureField($column);
			if($column == 'header'){
				$template->$column = $value;
				continue;
			}
			$template->$column = strip_tags($value);
		}

		$styles = acymailing_getVar('array', 'styles', array(), '');
		foreach($styles as $class => $oneStyle){
			$styles[$class] = str_replace('"', "'", $oneStyle);
			if(empty($oneStyle)) unset($styles[$class]);
		}

		$newStyles = acymailing_getVar('array', 'otherstyles', array(), '');
		if(!empty($newStyles)){
			foreach($newStyles['classname'] as $id => $className){
				if(!empty($className) AND $className != acymailing_translation('CLASS_NAME') AND !empty($newStyles['style'][$id]) AND $newStyles['style'][$id] != acymailing_translation('CSS_STYLE')){
					$className = str_replace(array(',', ' ', ':', '.', '#'), '', $className);
					$styles[$className] = str_replace('"', "'", $newStyles['style'][$id]);
				}
			}
		}
		$template->styles = serialize($styles);

		if(empty($template->thumb)){
			unset($template->thumb);
		}elseif($template->thumb == 'delete'){
			$template->thumb = '';
		}

		if(empty($template->readmore)){
			unset($template->readmore);
		}elseif($template->readmore == 'delete'){
			$template->readmore = '';
		}

		$template->body = acymailing_getVar('string', 'editor_body', '', '', ACY_ALLOWRAW);
		$template->body = acymailing_filterText($template->body);

		if(!empty($styles['color_bg'])){
			$pat1 = '#^([^<]*<[^>]*background-color:)([^;">]{1,30})#i';
			$found = false;
			if(preg_match($pat1, $template->body)){
				$template->body = preg_replace($pat1, '$1'.$styles['color_bg'], $template->body);
				$found = true;
			}
			$pat2 = '#^([^<]*<[^>]*bgcolor=")([^;">]{1,10})#i';
			if(preg_match($pat2, $template->body)){
				$template->body = preg_replace($pat2, '$1'.$styles['color_bg'], $template->body);
				$found = true;
			}
			if(!$found){
				$template->body = '<div style="background-color:'.$styles['color_bg'].';" width="100%">'.$template->body.'</div>';
			}
		}

		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$acypluginsHelper->cleanHtml($template->body);

		$template->description = acymailing_getVar('string', 'editor_description', '', '', ACY_ALLOWHTML);

		$tempid = $this->save($template);
		if(!$tempid) return false;

		if(empty($template->tempid)){
			$orderClass = acymailing_get('helper.order');
			$orderClass->pkey = 'tempid';
			$orderClass->table = 'template';
			$orderClass->reOrder();
		}

		$this->createTemplateFile($tempid);

		acymailing_setVar('tempid', $tempid);
		return true;
	}

	function save($element){
		if(empty($element->tempid)){
			if(empty($element->namekey)) $element->namekey = time().acymailing_cleanSlug($element->name);
		}else{
			if(file_exists(ACYMAILING_TEMPLATE.'css'.DS.'template_'.intval($element->tempid).'.css')){
				
				if(!acymailing_deleteFile(ACYMAILING_TEMPLATE.'css'.DS.'template_'.intval($element->tempid).'.css')){
					echo acymailing_display('Could not delete the file '.ACYMAILING_TEMPLATE.'css'.DS.'template_'.intval($element->tempid).'.css', 'error');
				}
			}
		}

		if(!empty($element->styles) AND !is_string($element->styles)) $element->styles = serialize($element->styles);

		if(!empty($element->stylesheet)){
			$element->stylesheet = preg_replace('#:(active|current|visited)#i', '', $element->stylesheet);
		}

		return parent::save($element);
	}

	function detecttemplates($folder){
		$allFiles = acymailing_getFiles($folder);
		if(!empty($allFiles)){
			foreach($allFiles as $oneFile){
				if(preg_match('#^.*(html|htm)$#i', $oneFile)){
					if($this->installtemplate($folder.DS.$oneFile)) return true;
				}
			}
		}

		$status = false;
		$allFolders = acymailing_getFolders($folder);
		if(!empty($allFolders)){
			foreach($allFolders as $oneFolder){
				$status = $this->detecttemplates($folder.DS.$oneFolder) || $status;
			}
		}

		return $status;
	}

	function buildCSS($styles, $stylesheet){
		$inline = '';

		if(preg_match_all('#@import[^;]*;#is', $stylesheet, $results)){
			foreach($results[0] as $oneResult){
				$inline .= trim($oneResult)."\n";
				$stylesheet = str_replace($oneResult, '', $stylesheet);
			}
		}

		if(!empty($styles)){
			foreach($styles as $class => $style){
				if(preg_match('#^tag_(.*)$#', $class, $result)){
					if(!empty($style)) $inline .= $result[1].' { '.$style.' } '."\n";
				}elseif($class != 'color_bg'){
					if(!empty($style)) $inline .= '.'.$class.' {'.$style.'} '."\n";
				}else{
					if(!empty($style)) $inline .= 'body{background-color:'.$style.';} '."\n";
				}
			}
		}

		if(version_compare(PHP_VERSION, '5.0.0', '>=') && class_exists('DOMDocument') && function_exists('mb_convert_encoding')){
			$inline .= 'a img{ border:0px; text-decoration:none;} '."\n";
			$inline .= $stylesheet;
		}

		return $inline;
	}

	function createTemplateFile($id){
		if(empty($id)) return '';
		$cssfile = ACYMAILING_TEMPLATE.'css'.DS.'template_'.$id.'.css';
		if(file_exists($cssfile)) return $cssfile;

		$template = $this->get($id);
		if(empty($template->tempid)) return '';
		$css = $this->buildCSS($template->styles, $template->stylesheet);

		if(empty($css)) return '';

		

		acymailing_createDir(ACYMAILING_TEMPLATE.'css');

		if(acymailing_writeFile($cssfile, $css)){
			return $cssfile;
		}else{
			acymailing_enqueueMessage('Could not create the file '.$cssfile, 'error');
			return '';
		}
	}

	function installtemplate($filepath){
		$fileContent = file_get_contents($filepath);

		$newTemplate = new stdClass();
		$newTemplate->name = trim(preg_replace('#[^a-z0-9]#i', ' ', substr(dirname($filepath), strpos($filepath, '_template'))));
		if(preg_match('#< *title[^>]*>(.*)< */ *title *>#Uis', $fileContent, $results) && !empty($results[1])) $newTemplate->name = $results[1];

		if(preg_match('#< *meta *name="description" *content="([^"]*)"#Uis', $fileContent, $results) && !empty($results[1])) $newTemplate->description = $results[1];
		if(preg_match('#< *meta *name="fromname" *content="([^"]*)"#Uis', $fileContent, $results) && !empty($results[1])) $newTemplate->fromname = $results[1];
		if(preg_match('#< *meta *name="fromemail" *content="([^"]*)"#Uis', $fileContent, $results) && !empty($results[1])) $newTemplate->fromemail = $results[1];
		if(preg_match('#< *meta *name="replyname" *content="([^"]*)"#Uis', $fileContent, $results) && !empty($results[1])) $newTemplate->replyname = $results[1];
		if(preg_match('#< *meta *name="replyemail" *content="([^"]*)"#Uis', $fileContent, $results) && !empty($results[1])) $newTemplate->replyemail = $results[1];

		$newFolder = preg_replace('#[^a-z0-9]#i', '_', strtolower($newTemplate->name));
		$newTemplateFolder = $newFolder;
		$i = 1;
		while(is_dir(ACYMAILING_TEMPLATE.$newTemplateFolder)){
			$newTemplateFolder = $newFolder.'_'.$i;
			$i++;
		}
		$newTemplate->namekey = rand(0, 10000).$newTemplateFolder;
		$moveResult = acymailing_copyFolder(dirname($filepath), ACYMAILING_TEMPLATE.$newTemplateFolder);
		if($moveResult !== true){
			acymailing_display(array('Error copying folder from '.dirname($filepath).' to '.ACYMAILING_TEMPLATE.$newTemplateFolder, $moveResult), 'error');
			return false;
		}

		if(!file_exists(ACYMAILING_TEMPLATE.$newTemplateFolder.DS.'index.html')){
			$indexFile = '<html><body bgcolor="#FFFFFF"></body></html>';
			acymailing_writeFile(ACYMAILING_TEMPLATE.$newTemplateFolder.DS.'index.html', $indexFile);
		}

		$fileContent = str_replace(
								array(
									'src="./',
									'src="../',
									'src="images/'),
								array(
									'src="'.ACYMAILING_MEDIA_URL.'templates/'.$newTemplateFolder.'/',
									'src="'.ACYMAILING_MEDIA_URL.'templates/',
									'src="'.ACYMAILING_MEDIA_URL.'templates/'.$newTemplateFolder.'/images/'),
								$fileContent);

		$fileContent = preg_replace('#(src|background)[ ]*=[ ]*\"(?!(https?://|/))(?:\.\./|\./)?#', '$1="'.ACYMAILING_MEDIA_FOLDER.'/templates/'.$newTemplateFolder.'/', $fileContent);

		if(preg_match('#< *body[^>]*>(.*)< */ *body *>#Uis', $fileContent, $results)){
			$newTemplate->body = $results[1];
		}else{
			$newTemplate->body = $fileContent;
		}

		$newTemplate->stylesheet = '';
		if(preg_match_all('#< *style[^>]*>(.*)< */ *style *>#Uis', $fileContent, $results)){
			$newTemplate->stylesheet .= preg_replace('#(<!--|-->)#s', '', implode("\n", $results[1]));
		}
		$cssFiles = array();
		$cssFiles[ACYMAILING_TEMPLATE.$newTemplateFolder] = acymailing_getFiles(ACYMAILING_TEMPLATE.$newTemplateFolder, '\.css$');
		$subFolders = acymailing_getFolders(ACYMAILING_TEMPLATE.$newTemplateFolder);
		foreach($subFolders as $oneFolder){
			$cssFiles[ACYMAILING_TEMPLATE.$newTemplateFolder.DS.$oneFolder] = acymailing_getFiles(ACYMAILING_TEMPLATE.$newTemplateFolder.DS.$oneFolder, '\.css$');
		}

		foreach($cssFiles as $cssFolder => $cssFile){
			if(empty($cssFile)) continue;
			$newTemplate->stylesheet .= "\n".file_get_contents($cssFolder.DS.reset($cssFile));
		}

		if(!empty($newTemplate->stylesheet)){
			if(preg_match('#body *\{[^\}]*background-color:([^;\}]*)[;\}]#Uis', $newTemplate->stylesheet, $backgroundresults)){
				$newTemplate->styles['color_bg'] = trim($backgroundresults[1]);
				$newTemplate->stylesheet = preg_replace('#(body *\{[^\}]*)background-color:[^;\}]*[;\}]#Uis', '$1', $newTemplate->stylesheet);
			}

			$quickstyle = array('tag_h1' => 'h1', 'tag_h2' => 'h2', 'tag_h3' => 'h3', 'tag_h4' => 'h4', 'tag_h5' => 'h5', 'tag_h6' => 'h6', 'tag_a' => 'a', 'tag_ul' => 'ul', 'tag_li' => 'li', 'acymailing_unsub' => '\.acymailing_unsub', 'acymailing_online' => '\.acymailing_online', 'acymailing_title' => '\.acymailing_title', 'acymailing_content' => '\.acymailing_content', 'acymailing_readmore' => '\.acymailing_readmore');
			foreach($quickstyle as $styledb => $oneStyle){
				if(preg_match('#[^a-z\. ,] *'.$oneStyle.' *{([^}]*)}#Uis', $newTemplate->stylesheet, $quickstyleresults)){
					$newTemplate->styles[$styledb] = trim(str_replace(array("\n", "\r", "\t", "\s"), ' ', $quickstyleresults[1]));
					$newTemplate->stylesheet = str_replace($quickstyleresults[0], '', $newTemplate->stylesheet);
				}
			}
		}

		if(!empty($newTemplate->styles['color_bg'])){
			$pat1 = '#^([^<]*<[^>]*background-color:)([^;">]{1,10})#i';
			$found = false;
			if(preg_match($pat1, $newTemplate->body)){
				$newTemplate->body = preg_replace($pat1, '$1'.$newTemplate->styles['color_bg'], $newTemplate->body);
				$found = true;
			}
			$pat2 = '#^([^<]*<[^>]*bgcolor=")([^;">]{1,10})#i';
			if(preg_match($pat2, $newTemplate->body)){
				$newTemplate->body = preg_replace($pat2, '$1'.$newTemplate->styles['color_bg'], $newTemplate->body);
				$found = true;
			}
			if(!$found){
				$newTemplate->body = '<div style="background-color:'.$newTemplate->styles['color_bg'].';" width="100%">'.$newTemplate->body.'</div>';
			}
		}

		$foldersForPicts = array($newTemplateFolder);
		$otherFolders = acymailing_getFolders(ACYMAILING_TEMPLATE.$newTemplateFolder);
		foreach($otherFolders as $oneFold){
			$foldersForPicts[] = $newTemplateFolder.DS.$oneFold;
		}
		$allPictures = array();
		foreach($foldersForPicts as $oneFolder){
			$allPictures[$oneFolder] = acymailing_getFiles(ACYMAILING_TEMPLATE.$oneFolder);
		}
		foreach($allPictures as $folder => $pictfolders){
			foreach($pictfolders as $onePict){
				if(!preg_match('#\.(jpg|gif|png|jpeg|ico|bmp)$#i', $onePict)) continue;
				if(preg_match('#(thumbnail|screenshot|muestra)#i', $onePict)){
					$newTemplate->thumb = ACYMAILING_MEDIA_FOLDER.'/templates/'.str_replace(DS, '/', $folder).'/'.$onePict;
				}elseif(preg_match('#(readmore|lirelasuite)#i', $onePict)){
					$newTemplate->readmore = ACYMAILING_MEDIA_FOLDER.'/templates/'.str_replace(DS, '/', $folder).'/'.$onePict;
				}
			}
		}

		$newTemplate->ordering = 0;

		$tempid = $this->save($newTemplate);
		$this->templateId = $tempid;
		if($this->checkAreas){
			$this->proposedAreas = $this->proposeApplyAreas($tempid, false) || $this->proposedAreas;
		}

		$this->createTemplateFile($tempid);

		$orderClass = acymailing_get('helper.order');
		$orderClass->pkey = 'tempid';
		$orderClass->table = 'template';
		$orderClass->reOrder();

		$this->templateNames[] = $newTemplate->name;

		return true;
	}

	function displayPreview($idArea, $tempid, $newslettersubject = ''){

		if(isset($_SERVER["REQUEST_URI"])){
			$requestUri = $_SERVER["REQUEST_URI"];
		}else{
			$requestUri = $_SERVER['PHP_SELF'];
			if(!empty($_SERVER['QUERY_STRING'])) $requestUri = rtrim($requestUri, '/').'?'.$_SERVER['QUERY_STRING'];
		}
		$currentURL = (((!empty($_SERVER['HTTPS']) AND strtolower($_SERVER['HTTPS']) == "on") || $_SERVER['SERVER_PORT'] == 443) ? 'https://' : 'http://').$_SERVER["HTTP_HOST"].$requestUri;

		$js = "var iframecreated = false;
				function acydisplayPreview(){
					var d = document, area = d.getElementById('$idArea');
					if(!area) return;
					if(iframecreated) return;
					iframecreated = true;
					var content = area.innerHTML;
					var myiframe = d.createElement(\"iframe\");
					myiframe.id = 'iframepreview';
					myiframe.style.width = '100%';
					myiframe.style.borderWidth = '0px';
					myiframe.allowtransparency = \"true\";
					myiframe.frameBorder = '0';
					area.innerHTML = '';
					area.appendChild(myiframe);
					myiframe.onload = function(){
						var iframeloaded = false;
						try{
							if(myiframe.contentDocument != null && initIframePreview(myiframe,content) && replaceAnchors(myiframe)){
								iframeloaded = true;
							}
						}catch(err){
							iframeloaded = false;
						}

						if(!iframeloaded){
							area.innerHTML = content;
						}
					}
					myiframe.src = '';

				}
				function resetIframeSize(myiframe){


					var innerDoc = (myiframe.contentDocument) ? myiframe.contentDocument : myiframe.contentWindow.document;
					var objToResize = (myiframe.style) ? myiframe.style : myiframe;
					if(objToResize.width != '100%') return;
					var newHeight = innerDoc.body.scrollHeight;
					if(!objToResize.height || parseInt(objToResize.height,10)+10 < newHeight || parseInt(objToResize.height,10)-10 > newHeight) objToResize.height = newHeight+'px';
					setTimeout(function(){resetIframeSize(myiframe);},1000);
				}
				function replaceAnchors(myiframe){
					var myiframedoc = myiframe.contentWindow.document;
					var myiframebody = myiframedoc.body;
					var el = myiframe;
					var myiframeOffset = el.offsetTop;
					while ( ( el = el.offsetParent ) != null )
					{
						myiframeOffset += el.offsetTop;
					}

					var elements = myiframebody.getElementsByTagName(\"a\");
					for( var i = elements.length - 1; i >= 0; i--){
						var aref = elements[i].getAttribute('href');
						if(!aref) continue;
						if(aref.indexOf(\"#\") != 0 && aref.indexOf(\"".addslashes($currentURL)."#\") != 0) continue;

						if(elements[i].onclick && elements[i].onclick != \"\") continue;

						var adest = aref.substring(aref.indexOf(\"#\")+1);
						if( adest.length < 1 ) continue;

						elements[i].dest = adest;
						elements[i].onclick = function(){
							elem = myiframedoc.getElementById(this.dest);
							if(!elem){
								elems = myiframedoc.getElementsByName(this.dest);
								if(!elems || !elems[0]) return false;
								elem = elems[0];
							}
							if( !elem ) return false;

							var el = elem;
							var elemOffset = el.offsetTop;
							while ( ( el = el.offsetParent ) != null )
							{
								elemOffset += el.offsetTop;
							}
							window.scrollTo(0,elemOffset+myiframeOffset-15);
							return false;
						};
					}
					return true;
				}
				function initIframePreview(myiframe,content){
					var d = document;

					var heads = myiframe.contentWindow.document.getElementsByTagName(\"head\");
					if(heads.length == 0){
						return false;
					}

					var head = heads[0];

					var myiframebodys = myiframe.contentWindow.document.getElementsByTagName('body');
					if(myiframebodys.length == 0){
						var myiframebody = d.createElement(\"body\");
						myiframe.appendChild(myiframebody);
					}else{
						var myiframebody = myiframebodys[0];
					}
					if(!myiframebody) return false;
					myiframebody.style.margin = '0px';
					myiframebody.style.padding = '0px';
					myiframebody.innerHTML = content;

					var title1 = d.createElement(\"title\");
					title1.innerHTML = '".addslashes($newslettersubject)."';


					var base1 = d.createElement(\"base\");
					base1.target = \"_blank\";

					head.appendChild(base1);

					var existingTitle = head.getElementsByTagName(\"title\");
					if(existingTitle.length == 0){
						head.appendChild(title1);
					}
					
					var meta1 = d.createElement('meta');
					meta1.name = 'viewport';
					meta1.content = 'width=device-width, initial-scale=1';

					head.appendChild(meta1);
				";
		if(!empty($tempid)){
			$js .= "var link1 = d.createElement(\"link\");
					link1.type = \"text/css\";
					link1.rel = \"stylesheet\";
					link1.href =  '".(rtrim(acymailing_rootURI(), '/').'/').ACYMAILING_MEDIA_FOLDER."/templates/css/template_".$tempid.".css?v=".@filemtime(ACYMAILING_MEDIA.'templates'.DS.'css'.DS.'template_'.$tempid.'.css')."';
					head.appendChild(link1);
				";
		}

		$js .= "var style1 = d.createElement(\"style\");
				style1.type = \"text/css\";
				style1.id = \"overflowstyle\";
				try{style1.innerHTML = 'html,body,iframe{overflow-y:hidden} ';}catch(err){style1.styleSheet.cssText = 'html,body,iframe{overflow-y:hidden} ';}
				";

		if($this->archiveSection){
			$js .= "try{style1.innerHTML += ' .hideonline{display:none;} ';}catch(err){style1.styleSheet.cssText += ' .hideonline{display:none;} ';}";
		}

		$js .= "
				head.appendChild(style1);
				resetIframeSize(myiframe);
				return true;
			}
			document.addEventListener(\"DOMContentLoaded\", function(){acydisplayPreview();});";

		acymailing_addScript(true, $js);

		$resize = "function previewResize(newWidth,newHeight){
			if(document.getElementById('iframepreview')){
				var myiframe = document.getElementById('iframepreview');
			}else{
				var myiframe = document.getElementById('newsletter_preview_area');
			}
			myiframe.style.width = newWidth;
			if(newHeight == '100%'){
				resetIframeSize(myiframe);
			}else{
				myiframe.style.height = newHeight;
				myiframe.contentWindow.document.getElementById('overflowstyle').media = \"print\";
			}
		}
		function previewSizeClick(elem){
			var ids = new Array('preview320','preview480','preview768','previewmax');
			for(var i=0;i<ids.length;i++){
				document.getElementById(ids[i]).className = 'previewsize '+ids[i];
			}
			elem.className += 'enabled';
		}";
		acymailing_addScript(true, $resize);
		$switchPict = "function switchPict(){
			var myiframe = document.getElementById('iframepreview');
			var myiframebody = myiframe.contentWindow.document.getElementsByTagName('body')[0];
			if(document.getElementById('previewpict').className == 'previewsize previewpictenabled'){
				remove = true;
				document.getElementById('previewpict').className = 'previewsize previewpict';
			}else{
				remove = false;
				document.getElementById('previewpict').className = 'previewsize previewpictenabled';
			}
			var elements = myiframebody.getElementsByTagName(\"img\");
			for( var i = elements.length - 1; i >= 0; i-- ) {
				if(remove){
					elements[i].src_temp = elements[i].src;
					elements[i].src = 'pictureremoved';
				}else{
					elements[i].src = elements[i].src_temp;
				}
			}
			if(myiframe.style.width == '100%'){
				resetIframeSize(myiframe);
			}
		}";
		acymailing_addScript(true, $switchPict);
	}

	function proposeApplyAreas($tempid, $addextrawarning = true){
		if(empty($tempid)) return false;

		$config = acymailing_config();
		if($config->get('editor') != 'acyeditor') return false;

		$template = $this->get($tempid);
		if(empty($template->body)) return false;
		if(strpos($template->body, 'acyeditor_')) return false;

		$messages = array('<a href="'.acymailing_completeLink('template&task=applyareas&tempid='.$tempid).'">'.acymailing_translation('ACYEDITOR_ADDAREAS').'</a>');
		if($addextrawarning) $messages[] = acymailing_translation('ACYEDITOR_ADDAREAS_ONLYFINISHED');
		acymailing_enqueueMessage($messages, 'warning');
		return true;
	}

	function applyAreas(&$html){

		if(strpos($html, 'acyeditor_')) return false;

		if(preg_match_all('#(<td[^>]*>) *(<img[^>]*> *</td>)#Uis', $html, $results)){
			foreach($results[0] as $i => $oneResult){
				if(preg_match('#class=("|\'])#Uis', $results[1][$i], $charused)){
					$newTag = str_replace('class='.$charused[1], 'class='.$charused[1].'acyeditor_picture ', $results[1][$i]);
				}else{
					$newTag = str_replace('<td', '<td class="acyeditor_picture"', $results[1][$i]);
				}
				$html = str_replace($results[0][$i], $newTag.$results[2][$i], $html);
			}
		}

		$textElements = array('td', 'div');
		$divhtml = $html;
		foreach($textElements as $starttag){
			if(!preg_match_all('#(<'.$starttag.'(?:(?!>|acyeditor_).)*>)((?:(?!<td|acyeditor_|<'.$starttag.').)*</'.$starttag.'>)#Uis', $divhtml, $results)) continue;

			$class = 'acyeditor_text';
			if($starttag == 'div') $class .= ' acyeditor_delete';

			foreach($results[0] as $i => $oneResult){

				$content = trim(str_replace(array(' ', '&nbsp;', "\n", "\r"), '', strip_tags($results[0][$i])));

				if(empty($content)) continue;

				if(preg_match('#class=("|\'])#Uis', $results[1][$i], $charused)){
					$newTag = str_replace('class='.$charused[1], 'class='.$charused[1].$class.' ', $results[1][$i]);
				}else{
					$newTag = str_replace('<'.$starttag, '<'.$starttag.' class="'.$class.'"', $results[1][$i]);
				}
				$html = str_replace($results[0][$i], $newTag.$results[2][$i], $html);
				$divhtml = str_replace($results[0][$i], '', $divhtml);
			}
		}

		if(preg_match_all('#(<tr[^>]*>)((?:(?!<tr|acyeditor_delete).)*</tr>)#Uis', $html, $results)){
			foreach($results[0] as $i => $oneResult){
				if(preg_match('#class=("|\'])#Uis', $results[1][$i], $charused)){
					$newTag = str_replace('class='.$charused[1], 'class='.$charused[1].'acyeditor_delete ', $results[1][$i]);
				}else{
					$newTag = str_replace('<tr', '<tr class="acyeditor_delete"', $results[1][$i]);
				}
				$html = str_replace($results[0][$i], $newTag.$results[2][$i], $html);
			}
		}

		if(preg_match_all('#(<table[^>]*>)((?:(?!<table).)*</table>)#Uis', $html, $results)){
			foreach($results[0] as $i => $newContent){
				if(strpos($newContent, '<tbody') === false){
					$newContent = preg_replace('#(<table[^>]*>)#Uis', '$1<tbody>', $newContent);
					$newContent = preg_replace('#(< */ *table *>)#Uis', '</tbody>$1', $newContent);
				}

				if(preg_match('#(<tbody[^>]*)class=("|\'])#Uis', $newContent, $charused)){
					$newContent = str_replace($charused[0], $charused[1].'class='.$charused[2].'acyeditor_sortable ', $newContent);
				}else{
					$newContent = str_replace('<tbody', '<tbody class="acyeditor_sortable"', $newContent);
				}

				$html = str_replace($results[0][$i], $newContent, $html);
			}
		}

		return true;
	}

	function doupload(){
		$importFile = acymailing_getVar('none', 'uploadedfile', '', 'files');

		$fileError = $_FILES['uploadedfile']['error'];
		if($fileError > 0){
			switch($fileError){
				case 1:
					acymailing_enqueueMessage('The uploaded file exceeds the upload_max_filesize directive in php configuration.', 'error');
					return false;
				case 2:
					acymailing_enqueueMessage('The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.', 'error');
					return false;
				case 3:
					acymailing_enqueueMessage('The uploaded file was only partially uploaded.', 'error');
					return false;
				case 4:
					acymailing_enqueueMessage('No file was uploaded.', 'error');
					return false;
				default:
					acymailing_enqueueMessage('Error uploading the file on the server, unknown error '.$fileError, 'error');
					return false;
			}
		}
		if(empty($importFile['name'])){
			acymailing_enqueueMessage(acymailing_translation('BROWSE_FILE'), 'error');
			return false;
		}
		
		$uploadPath = acymailing_cleanPath(ACYMAILING_ROOT.ACYMAILING_MEDIA_FOLDER.DS.'templates');

		if(!is_writable($uploadPath)){
			@chmod($uploadPath, '0755');
			if(!is_writable($uploadPath)){
				acymailing_enqueueMessage(acymailing_translation_sprintf('WRITABLE_FOLDER', $uploadPath), 'warning');
			}
		}

		if(!(bool)ini_get('file_uploads')){
			acymailing_enqueueMessage('Can not upload the file, please make sure file_uploads is enabled on your php.ini file', 'error');
			return false;
		}

		if(!extension_loaded('zlib')){
			acymailing_raiseError(E_WARNING, 'SOME_ERROR_CODE', acymailing_translation('WARNINSTALLZLIB'));
			return false;
		}

		$filename = strtolower(acymailing_makeSafeFile($importFile['name']));
		$extension = strtolower(substr($filename, strrpos($filename, '.') + 1));

		if(!in_array($extension, array('zip', 'tar.gz'))){
			acymailing_enqueueMessage(acymailing_translation_sprintf('ACCEPTED_TYPE', $extension, 'zip,tar.gz'), 'error');
			return false;
		}

		$jpath = acymailing_getCMSConfig('tmp_path', ACYMAILING_MEDIA.'tmp'.DS);
		$tmp_dest = acymailing_cleanPath($jpath.DS.$filename);
		$tmp_src = $importFile['tmp_name'];

		$uploaded = acymailing_uploadFile($tmp_src, $tmp_dest);
		if(!$uploaded){
			acymailing_enqueueMessage('Error uploading the file from '.$tmp_src.' to '.$tmp_dest, 'error');
			return false;
		}

		$tmpdir = uniqid().'_template';

		$extractdir = acymailing_cleanPath(dirname($tmp_dest).DS.$tmpdir);

		$result = acymailing_extractArchive($tmp_dest, $extractdir);
		acymailing_deleteFile($tmp_dest);

		$allFiles = acymailing_getFiles($extractdir, '.', true, true, array(), array());
		foreach($allFiles as $oneFile){
			if(preg_match('#\.(jpg|gif|png|jpeg|ico|bmp|html|htm|css)$#i', $oneFile)){
				continue;
			}
			if(acymailing_deleteFile($oneFile)){
				acymailing_enqueueMessage('File '.$oneFile.' deleted from the template pack', 'warning');
			}
		}

		if(!$result){
			acymailing_enqueueMessage('Error extracting the file '.$tmp_dest.' to '.$extractdir, 'error');
			return false;
		}

		if($this->detecttemplates($extractdir)){
			$messages = $this->templateNames;
			array_unshift($messages, acymailing_translation_sprintf('TEMPLATES_INSTALL', count($this->templateNames)));
			acymailing_enqueueMessage($messages, 'success');
			if(is_dir($extractdir)) acymailing_deleteFolder($extractdir);
			return true;
		}

		acymailing_enqueueMessage('Error installing template', 'error');
		if(is_dir($extractdir)) acymailing_deleteFolder($extractdir);
		return false;
	}

	function export($tempid){
		if(!extension_loaded('zlib')){
			acymailing_raiseError(E_WARNING, 'SOME_ERROR_CODE', acymailing_translation('WARNINSTALLZLIB'));
			return false;
		}
		
		$template = $this->get($tempid);
		$fileDeb = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />';
		if(!empty($template->description)){
			$fileDeb .= '
<meta name="description" content="'.str_replace('"', "'", $template->description).'" />';
		}
		if(!empty($template->fromname)){
			$fileDeb .= '
<meta name="fromname" content="'.$template->fromname.'" />';
		}
		if(!empty($template->fromemail)){
			$fileDeb .= '
<meta name="fromemail" content="'.$template->fromemail.'" />';
		}
		if(!empty($template->replyname)){
			$fileDeb .= '
<meta name="replyname" content="'.$template->replyname.'" />';
		}
		if(!empty($template->replyemail)){
			$fileDeb .= '
<meta name="replyemail" content="'.$template->replyemail.'" />';
		}
		$fileDeb .= '
<title>'.$template->name.'</title>';

		$css = '
<style type="text/css">
';
		$css .= file_get_contents(ACYMAILING_TEMPLATE.DS.'css'.DS.'template_'.$tempid.'.css');
		$css .= '
</style>';

		$indexFile = $fileDeb.$css.'
</head>
<body>
'.$template->body.'
</body>
</html>';

		$tmpdir = preg_replace('#[^a-z0-9]#i', '_', strtolower($template->name));
		$jpathURL = ACYMAILING_LIVE.ACYMAILING_MEDIA_FOLDER.'/tmp';
		$tmp_url_dest = $jpathURL.DS.$tmpdir;
		$jpath = ACYMAILING_MEDIA.'tmp';
		$tmp_dest = acymailing_cleanPath($jpath.DS.$tmpdir);
		acymailing_createDir($jpath, true);

		if(!acymailing_createFolder($tmp_dest)){
			acymailing_enqueueMessage('Error creating folder in temp directory: '.$tmp_dest, 'error');
			return false;
		}

		if(!empty($template->thumb)){
			$thumbPath = acymailing_cleanPath(ACYMAILING_ROOT.DS.$template->thumb);
			$thumbExt = acymailing_fileGetExt($thumbPath);
			$resCopyThumb = acymailing_copyFile($thumbPath, $tmp_dest.DS.'thumbnail.'.$thumbExt);
			if(!$resCopyThumb){
				acymailing_enqueueMessage('Error copying the thumb picture', 'warning');
			}
		}
		$resHandleImages = $this->handlepict($indexFile, $tmp_dest);
		if(!$resHandleImages){
			acymailing_deleteFolder($tmp_dest);
			return false;
		}

		$resCopyIndex = acymailing_writeFile($tmp_dest.DS.'index.html', $indexFile);
		if(!$resCopyIndex){
			acymailing_enqueueMessage('Error copying the file index.html to temp directory '.$tmp_dest, 'error');
			return false;
		}
		$zipFilesArray = array();
		$dirs = acymailing_getFolders($tmp_dest, '.', true, true);
		array_push($dirs, $tmp_dest);
		foreach($dirs as $dir){
			$files = acymailing_getFiles($dir, '.', false, true);
			foreach($files as $file){
				$posSlash = strrpos($file, '/');
				$posASlash = strrpos($file, '\\');
				$pos = ($posSlash < $posASlash) ? $posASlash : $posSlash;
				if(!empty($pos)) $file = substr_replace($file, DS, $pos, 1);
				$data = acymailing_fileGetContent($file);
				$zipFilesArray[] = array('name' => str_replace($tmp_dest.DS, '', $file), 'data' => $data);
			}
		}

		$created = acymailing_createArchive($tmp_dest, $zipFilesArray);
		acymailing_deleteFolder($tmp_dest);

		if($created === false) return false;
		return $tmp_url_dest.'.zip';
	}

	function handlepict(&$content, $templatepath){

		$content = acymailing_absoluteURL($content);

		if(!preg_match_all('#<img[^>]*src="([^"]*)"#i', $content, $pictures)) return true;

		$pictFolder = rtrim($templatepath, DS).DS.'images';
		if(!acymailing_createDir($pictFolder)){
			return false;
		}

		$replace = array();
		foreach($pictures[1] as $onePict){
			if(isset($replace[$onePict])) continue;

			$location = str_replace(array(ACYMAILING_LIVE, '/'), array(ACYMAILING_ROOT, DS), $onePict);
			if(strpos($location, 'http') === 0) continue;

			if(!file_exists($location)) continue;

			$filename = basename($location);
			while(file_exists($pictFolder.DS.$filename)){
				$filename = rand(0, 99).$filename;
			}

			if(acymailing_copyFile($location, $pictFolder.DS.$filename) !== true){
				acymailing_display('Could not copy the file from '.$location.' to '.$pictFolder.DS.$filename, 'error');
				return false;
			}

			$replace[$onePict] = 'images/'.$filename;
		}

		$content = str_replace(array_keys($replace), $replace, $content);

		return true;
	}
}
classes/acyhistory.php000060400000002534152455705230011120 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class acyhistoryClass extends acymailingClass{

	function insert($subid,$action,$data = array(),$mailid = 0){
		$currentUserid = acymailing_currentUserId();
		if(!empty($currentUserid)){
			$data[] = acymailing_translation('EXECUTED_BY').'::'.$currentUserid.' ( '.acymailing_currentUserName().' )';
		}
		$history = new stdClass();
		$history->subid = intval($subid);
		$history->action = strip_tags($action);
		$history->data = implode("\n",$data);
		if(strlen($history->data) > 100000) $history->data = substr($history->data,0,10000);
		$history->date = time();
		$history->mailid = $mailid;
		$userHelper = acymailing_get('helper.user');
		$history->ip = $userHelper->getIP();
		if(!empty($_SERVER)){
			$source = array();
			$vars = array('HTTP_REFERER','HTTP_USER_AGENT','HTTP_HOST','SERVER_ADDR','REMOTE_ADDR','REQUEST_URI','QUERY_STRING');
			foreach($vars as $oneVar){
				if(!empty($_SERVER[$oneVar])) $source[] = $oneVar.'::'.strip_tags($_SERVER[$oneVar]);
			}
			$history->source = implode("\n",$source);
		}

		return acymailing_insertObject(acymailing_table('history'),$history);
	}

}
classes/list.php000060400000016451152455705230007700 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listClass extends acymailingClass{

	var $tables = array('listsub', 'listcampaign', 'listmail', 'list');
	var $pkey = 'listid';
	var $namekey = 'alias';
	var $type = 'list';
	var $newlist = false;
	var $allowedFields = array('name', 'description', 'listid', 'published', 'userid', 'alias', 'color', 'visible', 'welmailid', 'unsubmailid', 'type', 'access_sub', 'access_manage', 'languages', 'startrule', 'category', 'ordering');

	function getLists($index = '', $listids = 'all'){
		$onlyListids = array();
		if(strtolower($listids) != 'all'){
			$onlyListids = explode(',', $listids);
			acymailing_arrayToInteger($onlyListids);
		}

		$query = 'SELECT * FROM '.acymailing_table('list').' WHERE type = \''.$this->type.'\' '.(empty($onlyListids) ? '' : 'AND listid IN ('.implode(',', $onlyListids).')').' ORDER BY ordering ASC';
		return acymailing_loadObjectList($query, $index);
	}

	function getAllCampaigns($index = ''){
		$query = 'SELECT * FROM '.acymailing_table('list').' WHERE type = \'campaign\' ORDER BY ordering ASC';
		return acymailing_loadObjectList($query, $index);
	}

	function delete($elements){
		if(!is_array($elements)){
			$elements = array($elements);
		}

		acymailing_arrayToInteger($elements);

		if(empty($elements)) return 0;

		acymailing_query('DELETE FROM #__acymailing_listcampaign WHERE `campaignid` IN ('.implode(',', $elements).')');

		acymailing_query('DELETE #__acymailing_mail, #__acymailing_listmail FROM #__acymailing_mail INNER JOIN #__acymailing_listmail WHERE #__acymailing_mail.mailid=#__acymailing_listmail.mailid AND #__acymailing_mail.type=\'followup\' AND #__acymailing_listmail.listid IN ('.implode(',', $elements).')');

		return parent::delete($elements);
	}

	function getFrontendLists($index = ''){
		$userid = acymailing_currentUserId();
		if(empty($userid)) return array();

		$groups = acymailing_getGroupsByUser(acymailing_currentUserId(), false);

		$possibleValues = array();
		$possibleValues[] = 'access_manage = \'all\'';
		$possibleValues[] = 'userid = '.intval(acymailing_currentUserId());
		foreach($groups as $oneGroup){
			$possibleValues[] = 'access_manage LIKE \'%,'.intval($oneGroup).',%\'';
		}

		$query = 'SELECT * FROM '.acymailing_table('list').' WHERE published = 1 AND type = \''.$this->type.'\' AND ('.implode(' OR ', $possibleValues).') ORDER BY ordering ASC';
		return acymailing_loadObjectList($query, $index);
	}

	function getFrontendCampaigns($index = ''){
		$userid = acymailing_currentUserId();
		if(empty($userid)) return array();

		$groups = acymailing_getGroupsByUser($userid, false);

		$possibleValues = array();
		$possibleValues[] = 'access_manage = \'all\'';
		$possibleValues[] = 'userid = '.intval($userid);
		foreach($groups as $oneGroup){
			$possibleValues[] = 'access_manage LIKE \'%,'.intval($oneGroup).',%\'';
		}

		$query = 'SELECT DISTINCT l.* FROM '.acymailing_table('list').' AS l INNER JOIN '.acymailing_table('listcampaign').' AS lc ON l.listid = lc.campaignid WHERE lc.listid IN (SELECT DISTINCT il.listid FROM '.acymailing_table('listcampaign').' AS ilc INNER JOIN '.acymailing_table('list').' AS il ON ilc.listid = il.listid WHERE il.published = 1 AND il.type = \'list\' AND ('.implode(' OR ', $possibleValues).')) AND l.published = 1 ORDER BY ordering ASC';
		return acymailing_loadObjectList($query, $index);
	}

	function get($listid, $default = null){
		$query = 'SELECT a.*, b.'.$this->cmsUserVars->name.' as creatorname, b.'.$this->cmsUserVars->username.' AS username, b.'.$this->cmsUserVars->email.' AS email FROM '.acymailing_table('list').' as a LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' as b on a.userid = b.'.$this->cmsUserVars->id.' WHERE listid = '.intval($listid).' LIMIT 1';
		return acymailing_loadObject($query);
	}

	function saveForm(){

		$list = new stdClass();
		$list->listid = acymailing_getCID('listid');

		$formData = acymailing_getVar('array', 'data', array(), '');

		if(!empty($formData['list']['category']) && $formData['list']['category'] == -1){
			$formData['list']['category'] = acymailing_getVar('string', 'newcategory', '');
		}

		foreach($formData['list'] as $column => $value){
			if(acymailing_isAdmin() || in_array($column, $this->allowedFields)){
				acymailing_secureField($column);
				$list->$column = strip_tags($value);
			}
		}

		$list->description = acymailing_getVar('string', 'editor_description', '', '', ACY_ALLOWHTML);
		if(isset($list->published) && $list->published != 1) $list->published = 0;
		$listid = $this->save($list);
		if(!$listid) return false;

		if(empty($list->listid)){
			$orderClass = acymailing_get('helper.order');
			$orderClass->pkey = 'listid';
			$orderClass->table = 'list';
			$orderClass->groupMap = 'type';
			$orderClass->groupVal = empty($list->type) ? $this->type : $list->type;
			$orderClass->reOrder();

			$this->newlist = true;
		}

		if(!empty($formData['listcampaign'])){
			$affectedLists = array();
			foreach($formData['listcampaign'] as $affectlistid => $receiveme){
				if(!empty($receiveme)){
					$affectedLists[] = $affectlistid;
				}
			}

			$listCampaignClass = acymailing_get('class.listcampaign');
			$listCampaignClass->save($listid, $affectedLists);
		}

		acymailing_setVar('listid', $listid);

		return true;
	}

	function save($list){
		if(empty($list->listid)){
			if(empty($list->userid)){
				$list->userid = acymailing_currentUserId();
			}
			if(empty($list->alias)) $list->alias = $list->name;
		}

		if(isset($list->alias)){
			if(empty($list->alias)) $list->alias = $list->name;
			$list->alias = acymailing_cleanSlug($list->alias);
		}

		acymailing_importPlugin('acymailing');
		if(empty($list->listid)){
			acymailing_trigger('onAcyBeforeListCreate', array(&$list));
			$status = acymailing_insertObject(acymailing_table('list'), $list);
		}else{
			acymailing_trigger('onAcyBeforeListModify', array(&$list));
			$status = acymailing_updateObject(acymailing_table('list'), $list, 'listid');
		}


		if($status) return empty($list->listid) ? $status : $list->listid;
		return false;
	}

	function onlyCurrentLanguage($lists){
		$currentLang = strtolower(acymailing_getLanguageTag());

		$newLists = array();
		foreach($lists as $id => $oneList){
			if($oneList->languages == 'all' OR in_array($currentLang, explode(',', $oneList->languages))){
				$newLists[$id] = $oneList;
			}
		}

		return $newLists;
	}

	function onlyAllowedLists($lists){
		$newLists = array();
		foreach($lists as $id => $oneList){
			if(!$oneList->published) continue;
			if(!acymailing_isAllowed($oneList->access_sub)) continue;
			$newLists[$id] = $oneList;
		}
		return $newLists;
	}

	function getCampaigns($listid){
		if(empty($listid)) return array();

		if(is_array($listid)) $listid = implode(',', $listid);
		$query = 'SELECT  b.listid, b.campaignid FROM '.acymailing_table('list').' as a LEFT JOIN '.acymailing_table('listcampaign').' as b on a.listid = b.listid WHERE a.type = \'list\' AND b.listid IN ( '.$listid.') ORDER BY b.listid';
		$resSql = acymailing_loadObjectList($query);
		$listCampaigns = array();
		foreach($resSql as $oneList){
			$listCampaigns[$oneList->listid][] = $oneList->campaignid;
		}
		return $listCampaigns;
	}

}
classes/fields.php000060400000014013152455705230010163 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class fieldsClass extends acymailingClass{

	var $tables = array('fields');
	var $pkey = 'fieldid';
	var $errors = array();
	var $prefix = 'field_';
	var $suffix = '';
	var $excludeValue = array();
	var $formoption = '';

	var $labelClass = '';

	var $dispatcher;

	var $currentUserEmail;

	var $origin;

	function __construct($config = array()){
		acymailing_importPlugin('acymailing');
		return parent::__construct($config);
	}

	function getFields($area, &$user){

		if(empty($user)) $user = new stdClass();

		$where = array();
		$where[] = 'a.`published` = 1';
		if($area == 'backend'){
			$where[] = 'a.`backend` = 1';
			$where[] = 'a.`core` = 0';
		}elseif($area == 'backlisting'){
			$where[] = 'a.`listing` = 1';
			$where[] = 'a.`type` != \'category\'';
		}elseif($area == 'frontcomp'){
			$where[] = 'a.`frontcomp` = 1';
		}elseif($area == 'frontform'){
			$where[] = 'a.`frontform` = 1';
			$where[] = 'a.`core` = 0';
		}elseif($area == 'frontlisting'){
			$where[] = 'a.`frontlisting` = 1';
			$where[] = 'a.`type` != \'category\'';
		}elseif($area == 'frontjoomlaprofile'){
			$where[] = 'a.`frontjoomlaprofile` = 1';
			$where[] = 'a.`type` != \'category\'';
		}elseif($area == 'frontjoomlaregistration'){
			$where[] = 'a.`frontjoomlaregistration` = 1';
			$where[] = 'a.`type` != \'category\'';
		}elseif($area == 'joomlaprofile'){
			$where[] = 'a.`joomlaprofile` = 1';
			$where[] = 'a.`type` != \'category\'';
		}elseif($area == 'fieldcat'){
			$where[] = "a.`type`='category'";
		}elseif($area == 'module'){
		}elseif($area != 'all'){
			$area = acymailing_escapeDB($area);
			$namesField = str_replace(",", $area[0].",".$area[0], $area);
			$where[] = "a.`namekey` IN (".$namesField.")";
		}

		if(!acymailing_isAdmin() && acymailing_level(3)){
			$groups = acymailing_getGroupsByUser(acymailing_currentUserId(), false);
			$condGroup = '';
			foreach($groups as $group){
				$condGroup .= ' OR a.access LIKE (\'%,'.$group.',%\')';
			}
			$filterAccess = 'AND (a.access = \'all\''.$condGroup.')';
		}else{
			$filterAccess = '';
		}

		$fields = acymailing_loadObjectList('SELECT * FROM `#__acymailing_fields` as a WHERE '.implode(' AND ', $where).' '.$filterAccess.' ORDER BY a.`ordering` ASC', 'namekey');
		foreach($fields as $namekey => $field){
			if(!empty($fields[$namekey]->options)){
				$fields[$namekey]->options = unserialize($fields[$namekey]->options);
			}else{
				$fields[$namekey]->options = array();
			}

			if(!empty($field->value)){
				$fields[$namekey]->value = $this->explodeValues($fields[$namekey]->value);
			}
			if($field->type == 'file' || $field->type == 'gravatar') $this->formoption = 'enctype="multipart/form-data"';
			if(empty($user->subid)) $user->$namekey = $field->default;
		}
		if(acymailing_level(3)){
			$allFields = acymailing_loadObjectList('SELECT * FROM `#__acymailing_fields`', 'fieldid');

			$baseElem = array();
			$elemInCat = array();
			foreach($fields as $namekey => $field){
				if($field->fieldcat == 0){
					$baseElem[] = $field;
				} // root element
				else{
					$parentId = $this->getParentCat($field, $fields, $allFields);
					$field->fieldcat = $parentId;
					if($parentId == 0){
						$baseElem[] = $field;
					} // No parent
					else{
						if(empty($elemInCat[$field->fieldcat])) $elemInCat[$field->fieldcat] = array();
						$elemInCat[$field->fieldcat][] = $field;
					}
				}
			}
			$finalField = array();
			foreach($baseElem as $oneField){
				$finalField[$oneField->namekey] = $oneField;
				if($oneField->type == 'category' && !empty($elemInCat[$oneField->fieldid])){
					$childs = $this->getChildFields($oneField->fieldid, $elemInCat);
					$finalField = $finalField + $childs;
				}
			}
			$fields = $finalField;
		}
		return $fields;
	}

	private function getParentCat($elem, $fields, $allFields){
		$parent = $allFields[$elem->fieldcat];
		if(array_key_exists($parent->namekey, $fields)){
			return $parent->fieldid;
		}else{
			if($parent->fieldcat == 0){
				return 0;
			}else return $this->getParentCat($parent, $fields, $allFields);
		}
	}

	private function getChildFields($fieldcatid, $elemInCat){
		$childs = array();
		$childElems = $elemInCat[$fieldcatid];
		foreach($childElems as $oneField){
			$childs[$oneField->namekey] = $oneField;
			if($oneField->type == 'category' && !empty($elemInCat[$oneField->fieldid])){
				$subChilds = $this->getChildFields($oneField->fieldid, $elemInCat);
				$childs = $childs + $subChilds;
			}
		}
		return $childs;
	}

	function getFieldName($field){
		$addLabels = array('textarea', 'text', 'dropdown', 'multipledropdown', 'file');
		return '<label '.(empty($this->labelClass) ? '' : ' class="'.$this->labelClass.'" ').(in_array($field->type, $addLabels) ? ' for="'.$this->prefix.$field->namekey.$this->suffix.'" ' : '').'>'.$this->trans($field->fieldname).'</label>';
	}

	function trans($name){
		if(preg_match('#^[A-Z_]*$#', $name)){
			return acymailing_translation($name);
		}
		return $name;
	}

	function listing($field, $value, $search = ''){
		$functionType = '_listing'.ucfirst($field->type);

		if(method_exists($this, $functionType)) return $this->$functionType($field, $value);

		ob_start();
		$resultTrigger = acymailing_trigger('onAcyListingField_'.$field->type, array($field, $value));
		$pluginField = ob_get_clean();

		if(!empty($pluginField)){
			return $pluginField;
		}else return acymailing_dispSearch(nl2br($this->trans($value)), $search);
	}

	function explodeValues($values){
		$allValues = explode("\n", $values);
		$returnedValues = array();
		foreach($allValues as $id => $oneVal){
			$line = explode('::', trim($oneVal));
			$var = @$line[0];
			$val = @$line[1];
			if(strlen($val) < 1) continue;

			$obj = new stdClass();
			$obj->value = $val;
			for($i = 2; $i < count($line); $i++){
				$obj->{$line[$i]} = 1;
			}
			$returnedValues[$var] = $obj;
		}
		return $returnedValues;
	}

}
classes/mail.php000060400000056701152455705230007651 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class mailClass extends acymailingClass{

	var $tables = array('queue', 'listmail', 'stats', 'userstats', 'urlclick', 'mail');
	var $pkey = 'mailid';
	var $namekey = 'alias';
	var $allowedFields = array('subject', 'published', 'fromname', 'fromemail', 'replyname', 'replyemail', 'type', 'visible', 'alias', 'html', 'tempid', 'altbody', 'filter', 'metakey', 'metadesc', 'language', 'summary', 'thumb', 'params');

	function get($id, $default = null){

		if(empty($id)) return null;

		$query = 'SELECT a.* FROM '.acymailing_table('mail').' as a WHERE ';
		$query .= is_numeric($id) ? 'a.mailid' : 'a.alias';
		$query .= ' = '.acymailing_escapeDB($id);
		$query .= ' LIMIT 1';

		$mail = acymailing_loadObject($query);

		if(empty($mail) || empty($mail->mailid)) return $default;

		if(!empty($mail->userid)){
			$author = acymailing_loadObject('SELECT b.'.$this->cmsUserVars->username.' AS username, b.'.$this->cmsUserVars->name.' AS name, b.'.$this->cmsUserVars->email.' AS email FROM '.acymailing_table('users', false).' as b WHERE b.'.$this->cmsUserVars->id.' = '.intval($mail->userid).' LIMIT 1');
			if(!empty($author)){
				foreach($author as $var => $value){
					$mail->$var = $value;
				}
			}
		}

		$mail->subject = acyEmoji::Decode($mail->subject);
		$mail->attach = empty($mail->attach) ? array() : unserialize($mail->attach);
		$mail->favicon = empty($mail->favicon) ? new stdClass() : unserialize($mail->favicon);
		$mail->params = empty($mail->params) ? array() : unserialize($mail->params);
		$mail->filter = empty($mail->filter) ? array() : unserialize($mail->filter);

		return $mail;
	}

	function getMails($types = null, $key = 'mailid'){
		$query = 'SELECT * FROM '.acymailing_table('mail');

		$allowedTypes = array('action', 'autonews', 'followup', 'joomlanotification', 'news', 'notification', 'unsub', 'welcome');
		if(!empty($types)){
			$notAllowed = array_diff($types, $allowedTypes);
			if(!empty($notAllowed)) die('Invalid type(s) '.implode(', ', $types));
			$query .= ' WHERE type = "'.implode('" OR type = "', $types).'"';
		}

		$query .= ' ORDER BY created DESC LIMIT 3000';

		$mails = acymailing_loadObjectList($query);

		$result = array();
		if(!empty($key) && !empty($mails) && !isset($mails[0]->$key)) die('Invalid key '.$key);
		foreach($mails as $oneMail){
			$oneMail->subject = acyEmoji::Decode($oneMail->subject);
			$oneMail->attach = empty($oneMail->attach) ? array() : unserialize($oneMail->attach);
			$oneMail->favicon = empty($oneMail->favicon) ? new stdClass() : unserialize($oneMail->favicon);
			$oneMail->params = empty($oneMail->params) ? array() : unserialize($oneMail->params);
			$oneMail->filter = empty($oneMail->filter) ? array() : unserialize($oneMail->filter);

			if(empty($key))	$result[$oneMail->type][] = $oneMail;
			else $result[$oneMail->type][$oneMail->$key] = $oneMail;
		}

		return $result;
	}

	function saveForm(){
		$config = acymailing_config();

		$mail = new stdClass();
		$mail->mailid = acymailing_getCID('mailid');

		$formData = acymailing_getVar('array', 'data', array(), '');
		if(!empty($formData['mail']['subject'])) $formData['mail']['subject'] = str_replace(chr(226).chr(128).chr(168), '', $formData['mail']['subject']);
		$formData['mail']['subject'] = acyEmoji::Encode($formData['mail']['subject']);

		$result = preg_match('/(\\\u[0-9a-f]{4})+/i', $formData['mail']['subject']);
		if($result){
			$toggleClass = acymailing_get('helper.toggle');
			if($config->get('emojiwarning', 1)){
				$notremind = acymailing_isAdmin() ? '<small style="float:right;margin-right:30px;position:relative;">'.$toggleClass->delete('acymailing_messages_warning', 'emojiwarning_0', 'config', false, acymailing_translation('DONT_REMIND')).'</small>' : '';
				acymailing_enqueueMessage(acymailing_translation_sprintf('ACY_EMOJI_CONFIRMATION', '<a target="_blank" href="'.ACYMAILING_HELPURL.'newsletters&level=Enterprise#infos">', '</a>').' '.$notremind, 'warning');
			}
		}

		foreach($formData['mail'] as $column => $value){
			if(!acymailing_isAdmin() && !in_array($column, $this->allowedFields)) continue;
			acymailing_secureField($column);
			if(in_array($column, array('params', 'summary'))){
				$mail->$column = $value;
			}else{
				$mail->$column = strip_tags($value, '<ADV>');
			}
		}

		$mail->lastupdate = time();
		$mail->userlastupdate = acymailing_currentUserId();

		$mail->body = acymailing_getVar('string', 'editor_body', '', '', ACY_ALLOWRAW);
		$mail->body = acymailing_filterText($mail->body);

		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$acypluginsHelper->cleanHtml($mail->body);
		$mail->body = $acypluginsHelper->removeJS($mail->body);

		$mail->attach = array();
		$attachments = acymailing_getVar('array', 'attachments', array(), '');

		if(!empty($attachments)){
			foreach($attachments as $id => $filepath){
				if(empty($filepath)) continue;
				$attachment = new stdClass();
				$attachment->filename = $filepath;
				$attachment->size = filesize(ACYMAILING_ROOT.$filepath);
				$extension = substr($attachment->filename, strrpos($attachment->filename, '.'));

				if(preg_match('#\.(php.?|.?htm.?|pl|py|jsp|asp|sh|cgi)#Ui', $attachment->filename)){
					acymailing_enqueueMessage(acymailing_translation_sprintf('ACCEPTED_TYPE', substr($attachment->filename, strrpos($attachment->filename, '.') + 1), $config->get('allowedfiles')), 'notice');
					continue;
				}
				$attachment->filename = str_replace(array('.', ' '), '_', substr($attachment->filename, 0, strpos($attachment->filename, $extension))).$extension;

				$mail->attach[] = $attachment;
			}
		}

		$faviconRequest = acymailing_getVar('none', 'favicon', '');
		if(!empty($faviconRequest[0])){
			$faviconRequest = $faviconRequest[0];
			$favicon = new stdClass();
			$favicon->filename = $faviconRequest;
			$favicon->size = filesize(ACYMAILING_ROOT.$faviconRequest);
			$extension = substr($favicon->filename, strrpos($favicon->filename, '.'));
			if(preg_match('#\.(php.?|.?htm.?|pl|py|jsp|asp|sh|cgi)#Ui', $favicon->filename)){
				acymailing_enqueueMessage(acymailing_translation_sprintf('ACCEPTED_TYPE', substr($favicon->filename, strrpos($favicon->filename, '.') + 1), $config->get('allowedfiles')), 'notice');
			}

			$favicon->filename = str_replace(array('.', ' '), '_', substr($favicon->filename, 0, strpos($favicon->filename, $extension))).$extension;

			$mail->favicon = $favicon;
		}

		if(isset($mail->filter)){
			$mail->filter = array();
			$filterData = acymailing_getVar('none', 'filter');
			unset($filterData['type']['__block__']);
			unset($filterData['__num__']);
			$realNum = 0;
			$blockNum = 0;
			foreach ($filterData['type'] as $oneFilter){
				foreach($oneFilter as $num => $oneType) {
					if (empty($oneType)) continue;
					$mail->filter['type'][$blockNum][$realNum] = $oneType;
					$mail->filter[$realNum][$oneType] = $filterData[$num][$oneType];
					$realNum++;
				}
				$blockNum++;
			}
		}

		$toggleHelper = acymailing_get('helper.toggle');
		if(!empty($mail->type) && $mail->type == 'followup' && !empty($mail->mailid)){
			$oldMail = $this->get($mail->mailid);
			if(!empty($mail->published) AND !$oldMail->published){
				$this->_publishfollowup($mail);
			}
			if($oldMail->senddate != $mail->senddate){
				$text = acymailing_translation('FOLLOWUP_CHANGED_DELAY_INFORMED');
				$text .= ' '.$toggleHelper->toggleText('update', $mail->mailid, 'followup', acymailing_translation('FOLLOWUP_CHANGED_DELAY'));
				acymailing_enqueueMessage($text, 'notice');
			}
		}

		if(preg_match('#<a[^>]*subid=[0-9].*</a>#Uis', $mail->body, $pregResult)){
			acymailing_enqueueMessage(acymailing_translation_sprintf('ACY_PERSONAL_LINK', $pregResult[0]), 'warning');
		}

		if(empty($mail->thumb)){
			unset($mail->thumb);
		}elseif($mail->thumb == 'delete'){
			$mail->thumb = '';
		}
		if(isset($mail->published) && $mail->published != 1) $mail->published = 0;
		if(isset($mail->html) && $mail->html != 1) $mail->html = 0;
		if(isset($mail->visible) && $mail->visible != 1) $mail->visible = 0;
		$mailid = $this->save($mail);
		if(!$mailid) return false;
		acymailing_setVar('mailid', $mailid);

		$selectedTags = acymailing_getVar('array', 'tags', array(), '');
		
		acymailing_query('DELETE FROM #__acymailing_tagmail WHERE mailid = '.intval($mailid));

		if(!empty($selectedTags)){
			$securedTags = array();

			foreach($selectedTags as $oneTag){
				$securedTags[] = acymailing_escapeDB($oneTag);
			}

			$existingTags = acymailing_loadResultArray('SELECT name FROM #__acymailing_tag WHERE name = '.implode(' OR name = ', $securedTags));
			$nonExistingTags = array_diff($selectedTags, $existingTags);

			if(!empty($nonExistingTags)){
				$query = 'INSERT INTO #__acymailing_tag (name, userid) VALUES ';
				foreach($nonExistingTags as &$oneTag){
					$oneTag = '('.acymailing_escapeDB($oneTag).', '.intval(acymailing_currentUserId()).')';
				}
				acymailing_query($query.implode(',', $nonExistingTags));
			}

			$allTags = acymailing_loadResultArray('SELECT tagid FROM #__acymailing_tag WHERE name = '.implode(' OR name = ', $securedTags));

			acymailing_query('INSERT INTO #__acymailing_tagmail (tagid, mailid) VALUES ('.implode(','.intval($mailid).'),(', $allTags).','.intval($mailid).')');
		}

		$status = true;

		if(!empty($formData['listmail'])){
			$receivers = array();
			$remove = array();

			foreach($formData['listmail'] as $listid => $receiveme){
				if(!empty($receiveme)){
					$receivers[] = $listid;
				}else{
					$remove[] = $listid;
				}
			}

			$listMailClass = acymailing_get('class.listmail');
			$status = $listMailClass->save($mailid, $receivers, $remove);
		}

		if(!empty($mail->type) && $mail->type == 'followup' && empty($mail->mailid) && !empty($mail->published)){
			$mail->mailid = $mailid;
			$this->_publishfollowup($mail);
		}

		return $status;
	}

	function addFollowUpQueue($mailid, $all = false){
		$followup = $this->get($mailid);
		if(empty($followup->mailid)){
			$this->errors[] = 'Could not load mailid '.$mailid;
			return false;
		}

		$listmailClass = acymailing_get('class.listmail');
		$mycampaign = $listmailClass->getCampaign($followup->mailid);
		if(empty($mycampaign->listid)){
			$this->errors[] = 'Could not get the attached campaign';
			return false;
		}

		$config = acymailing_config();

		$query = 'INSERT IGNORE INTO `#__acymailing_queue` (`mailid`,`senddate`,`priority`,`subid`) ';
		$query .= 'SELECT '.$followup->mailid.', b.`subdate` + '.intval($followup->senddate).' , '.(int)$config->get('priority_followup', 2).', b.`subid` ';
		$query .= 'FROM `#__acymailing_listsub` as b';
		$query .= ' WHERE b.`status` = 1 AND b.`listid` = '.intval($mycampaign->listid);
		if(!$all) $query .= ' AND b.`subdate` > '.(time() - $followup->senddate);
		$nbinserted = acymailing_query($query);

		if(!empty($nbupdated)){
			$campaignHelper = acymailing_get('helper.campaign');
			$campaignHelper->updateUnsubdate($mycampaign->listid, $followup->senddate);
		}

		return $nbinserted;
	}

	private function _publishfollowup(&$mail){
		$listmailClass = acymailing_get('class.listmail');
		$mycampaign = $listmailClass->getCampaign($mail->mailid);

		if(empty($mycampaign->listid)){
			return;
		}

		$toggleHelper = acymailing_get('helper.toggle');
		$startdate = (time() - $mail->senddate);
		$total = acymailing_loadResult('SELECT COUNT(subid) as total FROM `#__acymailing_listsub` as b WHERE b.`status` = 1 AND b.`listid` = '.intval($mycampaign->listid).' AND b.`subdate` > '.intval($startdate));

		$totalall= acymailing_loadResult('SELECT COUNT(subid) as total FROM `#__acymailing_listsub` as b WHERE b.`status` = 1 AND b.`listid` = '.intval($mycampaign->listid));

		if(empty($total) && empty($totalall)) return;

		$text = acymailing_translation('FOLLOWUP_PUBLISHED_INFORMED');
		$text .= '<ul>';
		if(!empty($total)) $text .= '<li>'.$toggleHelper->toggleText('add', $mail->mailid, 'followup', acymailing_translation_sprintf('FOLLOWUP_ADDQUEUE_USERS', acymailing_getDate($startdate)).' ( '.acymailing_translation_sprintf('SELECTED_USERS', $total).' )').'</li>';
		if(!empty($totalall)) $text .= '<li>'.$toggleHelper->toggleText('addall', $mail->mailid, 'followup', acymailing_translation('FOLLOWUP_ADDQUEUE_ALLUSERS').' ( '.acymailing_translation_sprintf('SELECTED_USERS', $totalall).' )').'</li>';

		acymailing_enqueueMessage($text, 'notice');
	}

	function save($mail){
		if(isset($mail->alias) OR empty($mail->mailid)){
			if(empty($mail->alias)){
				$mail->alias = $mail->subject;
				$mail->alias = preg_replace('/(\\\u[0-9a-f]{4})+/i', '', $mail->alias);
			}
			$mail->alias = acymailing_cleanSlug($mail->alias);
		}

		if(empty($mail->mailid)){
			if(empty($mail->created)) $mail->created = time();
			if(empty($mail->userid)){
				$mail->userid = acymailing_currentUserId();
			}
			if(empty($mail->key)) $mail->key = acymailing_generateKey(8);
		}else{
			if(!empty($mail->attach)){
				$oldMailObject = $this->get($mail->mailid);
				if(!empty($oldMailObject) && is_array($oldMailObject->attach)){
					$mail->attach = array_merge($oldMailObject->attach, $mail->attach);
				}
			}
		}

		if(empty($mail->attach)) unset($mail->attach);
		if(empty($mail->favicon)) unset($mail->favicon);

		if(!empty($mail->attach) && !is_string($mail->attach)) $mail->attach = serialize($mail->attach);
		if(!empty($mail->favicon) && !is_string($mail->favicon)) $mail->favicon = serialize($mail->favicon);
		if(isset($mail->filter) && !is_string($mail->filter)) $mail->filter = serialize($mail->filter);

		if(!empty($mail->params)){
			if(!empty($mail->params['lastgenerateddate']) && !is_numeric($mail->params['lastgenerateddate'])){
				$mail->params['lastgenerateddate'] = acymailing_getTime($mail->params['lastgenerateddate']);
			}

			if(!empty($mail->mailid)) {
				$oldMail = $this->get($mail->mailid);
				if(!empty($oldMail->params)){
					foreach($oldMail->params as $key => $val){
						if(!isset($mail->params[$key])) $mail->params[$key] = $val;
					}
				}
			}

			$mail->params = serialize($mail->params);
		}

		if(!empty($mail->senddate) && !is_numeric($mail->senddate)){
			$mail->senddate = acymailing_getTime($mail->senddate);
		}

		acymailing_importPlugin('acymailing');

		if(empty($mail->mailid)){
			acymailing_trigger('onAcyBeforeMailCreate', array(&$mail));
			$status = acymailing_insertObject(acymailing_table('mail'), $mail);
		}else{
			acymailing_trigger('onAcyBeforeMailModify', array(&$mail));
			$status = acymailing_updateObject(acymailing_table('mail'), $mail, 'mailid');
		}

		if(!$status){
			$this->errors[] = substr(strip_tags(acymailing_getDBError()), 0, 200).'...';
		}

		if(!empty($mail->params) && is_string($mail->params)) $mail->params = unserialize($mail->params);
		if(!empty($mail->attach) && is_string($mail->attach)) $mail->attach = unserialize($mail->attach);
		if(!empty($mail->favicon) && is_string($mail->favicon)) $mail->favicon = unserialize($mail->favicon);

		if($status) return empty($mail->mailid) ? $status : $mail->mailid;
		return false;
	}

	function saveastmpl(){
		$tmplClass = acymailing_get('class.template');
		$newTmpl = new stdClass();

		$formData = acymailing_getVar('array', 'data', array(), '');
		if(!empty($formData['mail']['tempid'])){
			$template = $tmplClass->get($formData['mail']['tempid']);
			$newTmpl->styles = $template->styles;
			$newTmpl->stylesheet = $template->stylesheet;
			$newTmpl->category = $template->category;
		}
		if(!empty($formData['mail']['subject'])){
			$formData['mail']['subject'] = str_replace(chr(226).chr(128).chr(168), '', $formData['mail']['subject']);
			$newTmpl->subject = strip_tags($formData['mail']['subject']);
			$newTmpl->name = strip_tags($formData['mail']['subject']);
		}

		$newTmpl->body = acymailing_getVar('string', 'editor_body', '', '', ACY_ALLOWRAW);
		$newTmpl->body = acymailing_filterText($newTmpl->body);
		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$acypluginsHelper->cleanHtml($newTmpl->body);

		if(!empty($formData['mail']['thumb']) && $formData['mail']['thumb'] == 'delete'){
			$newTmpl->thumb = null;
		}elseif(!empty($formData['mail']['thumb'])){
			$newTmpl->thumb = strip_tags($formData['mail']['thumb']);
		}else{
			$mailid = acymailing_getCID('mailid');
			if(!empty($mailid)){
				$mail = $this->get($mailid);
				$newTmpl->thumb = $mail->thumb;
			}
		}
		if(!empty($formData['mail']['altbody'])) $newTmpl->altbody = strip_tags($formData['mail']['altbody']);
		if(!empty($formData['mail']['fromname'])) $newTmpl->fromname = strip_tags($formData['mail']['fromname']);
		if(!empty($formData['mail']['fromemail'])) $newTmpl->fromemail = strip_tags($formData['mail']['fromemail']);
		if(!empty($formData['mail']['replyname'])) $newTmpl->replyname = strip_tags($formData['mail']['replyname']);
		if(!empty($formData['mail']['replyemail'])) $newTmpl->replyemail = strip_tags($formData['mail']['replyemail']);
		if(!empty($formData['mail']['summary'])) $newTmpl->description = strip_tags($formData['mail']['summary']);
		$newTmpl->ordering = 1;

		$tempid = $tmplClass->save($newTmpl);
		if(!empty($tempid)){
			$formData['mail']['tempid'] = $tempid;
			acymailing_enqueueMessage(acymailing_translation('ACY_SAVEASTMPL_VALID'), 'message');
		}else{
			acymailing_enqueueMessage(acymailing_translation('ERROR_SAVING'), 'error');
		}

		return true;
	}


	function ab_test($abTestDetail, $mailsArray, $nbTotalReceivers){
		$query = "UPDATE #__acymailing_mail SET abtesting=".acymailing_escapeDB(serialize($abTestDetail)).", published=1 WHERE mailid IN (".implode(',', $mailsArray).")";
		acymailing_query($query);

		if($abTestDetail['action'] != 'manual'){
			$config = acymailing_config();
			$currentAbTests = $config->get('currentABTests', '');
			if(!empty($currentAbTests)){
				$currentData = unserialize($currentAbTests);
			}else $currentData = array();
			$newTest = new stdClass();
			$newTest->sendDate = $abTestDetail['time'] + ($abTestDetail['delay'] * 86400);
			$newTest->ids = $abTestDetail['mailids'];
			$currentData[] = $newTest;
			$newconfig = new stdClass();
			$newconfig->currentABTests = serialize($currentData);
			$config->save($newconfig);
		}

		$statsClass = acymailing_get('class.stats');
		$statsClass->delete($mailsArray);

		$queueClass = acymailing_get('class.queue');
		$time = time();
		$nbReceiversTest = floor($nbTotalReceivers * $abTestDetail['prct'] / 100);
		$queueClass->limit = $nbReceiversTest;
		$queueClass->orderBy = 'RAND()';
		$queueClass->queue($mailsArray[0], $time);
		$nbReceiversPerMail = floor($nbReceiversTest / count($mailsArray));
		foreach($mailsArray as $oneMail){
			if($oneMail == $mailsArray[0]) continue;
			$query = "UPDATE #__acymailing_queue SET mailid=".intval($oneMail)." WHERE mailid=".intval($mailsArray[0])." LIMIT ".$nbReceiversPerMail;
			acymailing_query($query);
		}
		$query = "UPDATE #__acymailing_mail SET senddate=".$time." WHERE mailid IN (".implode(',', $mailsArray).")";
		acymailing_query($query);
		return $nbReceiversTest;
	}


	function complete_abtest($typeAction, $mailid){
		$resDetails = acymailing_loadResultArray("SELECT abtesting FROM #__acymailing_mail WHERE mailid=".(int)$mailid);
		$abTestDetail = unserialize($resDetails[0]);
		$dataForCopy = array('mailid' => $mailid, 'abTestDetail' => $abTestDetail);
		$newMailid = $this->abTest_createFinalNewletter($typeAction, $dataForCopy);

		$queueClass = acymailing_get('class.queue');
		$time = time();
		$queueClass->queue($newMailid, $time);

		$mailidsTest = $abTestDetail['mailids'];
		$resUsersFromTest = acymailing_loadResultArray("SELECT subid FROM #__acymailing_userstats WHERE mailid IN (".$mailidsTest.")");
		if(!empty($resUsersFromTest)){
			acymailing_query("DELETE FROM #__acymailing_queue WHERE subid IN (".implode(',', $resUsersFromTest).") AND mailid=".$newMailid);
		}

		$abTestDetail['status'] = 'abTestFinalSend';
		$abTestDetail['newMail'] = $newMailid;
		$query = "UPDATE #__acymailing_mail SET abtesting=".acymailing_escapeDB(serialize($abTestDetail))." WHERE mailid IN (".$mailidsTest.")";
		acymailing_query($query);

		return $newMailid;
	}

	function abTest_createFinalNewletter($typeAction, $dataForCopy){

		if($typeAction == 'manual'){
			$mailid = $dataForCopy['mailid'];
			$newMailid = $this->copyOneNewsletter($mailid);
			return $newMailid;
		}

		$queryStat = 'SELECT mailid, openunique, clickunique, senthtml, senttext FROM #__acymailing_stats WHERE mailid IN ('.$dataForCopy['abTestDetail']['mailids'].')';
		$resStat = acymailing_loadObjectList($queryStat, 'mailid');
		$betterClick = -1;
		$betterOpen = -1;
		if(empty($resStat)) return 0;
		foreach($resStat as $mailid => $statsMail){
			if($statsMail->openunique > $betterOpen){
				$idOpen = $mailid;
				$betterOpen = $statsMail->openunique;
			}
			if($statsMail->clickunique > $betterClick){
				$idClick = $mailid;
				$betterClick = $statsMail->clickunique;
			}
		}
		if($dataForCopy['abTestDetail']['action'] == 'open'){
			$newMailid = $this->copyOneNewsletter($idOpen);
		}elseif($dataForCopy['abTestDetail']['action'] == 'click') $newMailid = $this->copyOneNewsletter($idClick);
		elseif($dataForCopy['abTestDetail']['action'] == 'mix'){
			$newSubject = acymailing_loadObjectList("SELECT subject, fromname, fromemail, replyname, replyemail FROM #__acymailing_mail WHERE mailid=".$idOpen);
			$newMailid = $this->copyOneNewsletter($idClick, $newSubject[0]);
		}
		return $newMailid;
	}

	function copyOneNewsletter($mailid, $subject = ''){
		$time = time();
		$query = 'INSERT INTO `#__acymailing_mail` (`subject`, `fromname`, `fromemail`, `replyname`, `replyemail`, `body`, `altbody`, `published`, `created`, `type`, `visible`, `userid`, `alias`, `attach`, `html`, `tempid`, `key`, `frequency`, `params`,`filter`,`metakey`,`metadesc`,`summary`,`thumb`,`senddate`)';
		if(empty($subject)){
			$query .= " SELECT `subject`, `fromname`, `fromemail`, `replyname`, `replyemail`";
		}else{
			$query .= " SELECT ".acymailing_escapeDB($subject->subject).", ".acymailing_escapeDB($subject->fromname).", ".acymailing_escapeDB($subject->fromemail).", ".acymailing_escapeDB($subject->replyname).", ".acymailing_escapeDB($subject->replyemail);
		}
		$query .= ", `body`, `altbody`, `published`, '.$time.', `type`, `visible`, `userid`, `alias`, `attach`, `html`, `tempid`, ".acymailing_escapeDB(md5(rand(1000, 999999))).', `frequency`, `params`,`filter`,`metakey`,`metadesc`,`summary`,`thumb`,'.time().' FROM `#__acymailing_mail` WHERE `mailid` = '.(int)$mailid;
		acymailing_query($query);
		$newMailid = acymailing_insertID();
		acymailing_query('INSERT IGNORE INTO `#__acymailing_listmail` (`listid`,`mailid`) SELECT `listid`,'.$newMailid.' FROM `#__acymailing_listmail` WHERE `mailid` = '.(int)$mailid);
		acymailing_query('INSERT IGNORE INTO `#__acymailing_tagmail` (`tagid`,`mailid`) SELECT `tagid`,'.$newMailid.' FROM `#__acymailing_tagmail` WHERE `mailid` = '.(int)$mailid);
		return $newMailid;
	}

	function updateAbTest_auto($idsToSend){
		if(empty($idsToSend)) return;
		$resDetails = acymailing_loadObjectList("SELECT mailid, abtesting FROM #__acymailing_mail WHERE mailid IN (".$idsToSend.") AND abtesting IS NOT NULL", 'mailid');
		if(empty($resDetails)) return;

		$oneAbTest = current($resDetails);
		$oneMailid = $oneAbTest->mailid;
		$abTestDetail = unserialize($oneAbTest->abtesting);
		$mailsArray = explode(',', $abTestDetail['mailids']);

		$query = "SELECT COUNT(*) FROM #__acymailing_queue WHERE mailid IN (".$abTestDetail['mailids'].")";
		$queueCheck = acymailing_loadResult($query);

		if(empty($queueCheck)){
			if(($abTestDetail['time'] + ($abTestDetail['delay'] * 24 * 3600)) < time()){
				$newMailid = $this->complete_abtest($abTestDetail['action'], $oneMailid);
				return $newMailid;
			}
		}
	}
}
classes/stats.php000060400000025645152455705230010070 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class statsClass extends acymailingClass{

	var $tables = array('urlclick', 'userstats', 'stats');
	var $pkey = 'mailid';

	var $countReturn = true;

	var $subid = 0;
	var $mailid = 0;


	function saveStats(){
		$subid = empty($this->subid) ? acymailing_getVar('int', 'subid') : $this->subid;
		$mailid = empty($this->mailid) ? acymailing_getVar('int', 'mailid') : $this->mailid;
		if(empty($subid) || empty($mailid)) return false;
		if(acymailing_isRobot()) return false;

		$actual = acymailing_loadObject('SELECT `open` FROM '.acymailing_table('userstats').' WHERE `mailid` = '.intval($mailid).' AND `subid` = '.intval($subid).' LIMIT 1');
		if(empty($actual)) return false;

		$userHelper = acymailing_get('helper.user');

		try{
			$results = acymailing_query('UPDATE #__acymailing_subscriber SET `lastopen_date` = '.time().', `lastopen_ip` = '.acymailing_escapeDB($userHelper->getIP()).' WHERE `subid` = '.intval($subid));
		}catch(Exception $e){
			$results = null;
		}
		if($results === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			exit;
		}

		$open = 0;

		if(empty($actual->open)){
			$open = 1;
			$unique = ',openunique = openunique +1';
		}elseif($this->countReturn){
			$open = $actual->open + 1;
			$unique = '';
		}
		if(empty($open)) return true;

		$ipClass = acymailing_get('helper.user');
		$ip = $ipClass->getIP();

		try{
			$results = acymailing_query('UPDATE '.acymailing_table('userstats').' SET open = '.$open.', opendate = '.time().', `ip`= '.acymailing_escapeDB($ip).' WHERE mailid = '.$mailid.' AND subid = '.$subid);
		}catch(Exception $e){
			$results = null;
		}
		if($results === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			exit;
		}

		$browsers = array(
			'Abrowse' => 'abrowse',
			'Abolimba' => 'abolimba',
			'3ds' => '3ds',
			'Acoo browser' => 'acoo browser',
			'Alienforce' => 'alienforce',
			'Amaya' => 'amaya',
			'Amigavoyager' => 'amigavoyager',
			'Antfresco' => 'antfresco',
			'Aol' => 'aol',
			'Arora' => 'arora',
			'Avant' => 'avant',
			'Baidubrowser' => 'baidubrowser',
			'Beamrise' => 'beamrise',
			'Beonex' => 'beonex',
			'Blackbird' => 'blackbird',
			'Blackhawk' => 'blackhawk',
			'Bolt' => 'bolt',
			'Browsex' => 'browsex',
			'Browzar' => 'browzar',
			'Bunjalloo' => 'bunjalloo',
			'Camino' => 'camino',
			'Charon' => 'charon',
			'Chromium' => 'chromium',
			'Columbus' => 'columbus',
			'Cometbird' => 'cometbird',
			'Dragon' => 'dragon',
			'Conkeror' => 'conkeror',
			'Coolnovo' => 'coolnovo',
			'Corom' => 'corom',
			'Deepnet explorer' => 'deepnet explorer',
			'Demeter' => 'demeter',
			'Deskbrowse' => 'deskbrowse',
			'Dillo' => 'dillo',
			'Dooble' => 'dooble',
			'Dplus' => 'dplus',
			'Edbrowse' => 'edbrowse',
			'Element browser' => 'element browser',
			'Elinks' => 'elinks',
			'Epic' => 'epic',
			'Epiphany' => 'epiphany',
			'Firebird' => 'firebird',
			'Flock' => 'flock',
			'Fluid' => 'fluid',
			'Galeon' => 'galeon',
			'Globalmojo' => 'globalmojo',
			'Greenbrowser' => 'greenbrowser',
			'Hotjava' => 'hotjava',
			'Hv3' => 'hv3',
			'Hydra' => 'hydra',
			'Ibrowse' => 'ibrowse',
			'Icab' => 'icab',
			'Icebrowser' => 'icebrowser',
			'Iceape' => 'iceape',
			'Icecat' => 'icecat',
			'Icedragon' => 'icedragon',
			'Iceweasel' => 'iceweasel',
			'Surfboard' => 'surfboard',
			'Irider' => 'irider',
			'Iron' => 'iron',
			'Meleon' => 'meleon',
			'Ninja' => 'ninja',
			'Kapiko' => 'kapiko',
			'Kazehakase' => 'kazehakase',
			'Strata' => 'strata',
			'Kkman' => 'kkman',
			'Konqueror' => 'konqueror',
			'Kylo' => 'kylo',
			'Lbrowser' => 'lbrowser',
			'Links' => 'links',
			'Lobo' => 'lobo',
			'Lolifox' => 'lolifox',
			'Lunascape' => 'lunascape',
			'Lynx' => 'lynx',
			'Maxthon' => 'maxthon',
			'Midori' => 'midori',
			'Minibrowser' => 'minibrowser',
			'Mosaic' => 'mosaic',
			'Multizilla' => 'multizilla',
			'Myibrow' => 'myibrow',
			'Netcaptor' => 'netcaptor',
			'Netpositive' => 'netpositive',
			'Netscape' => 'netscape',
			'Navigator' => 'navigator',
			'Netsurf' => 'netsurf',
			'Nintendobrowser' => 'nintendobrowser',
			'Offbyone' => 'offbyone',
			'Omniweb' => 'omniweb',
			'Orca' => 'orca',
			'Oregano' => 'oregano',
			'Otter' => 'otter',
			'Palemoon' => 'palemoon',
			'Patriott' => 'patriott',
			'Perk' => 'perk',
			'Phaseout' => 'phaseout',
			'Phoenix' => 'phoenix',
			'Polarity' => 'polarity',
			'Playstation 4' => 'playstation 4',
			'Qtweb internet browser' => 'qtweb internet browser',
			'Qupzilla' => 'qupzilla',
			'Rekonq' => 'rekonq',
			'Retawq' => 'retawq',
			'Roccat' => 'roccat',
			'Rockmelt' => 'rockmelt',
			'Ryouko' => 'ryouko',
			'Saayaa' => 'saayaa',
			'Seamonkey' => 'seamonkey',
			'Shiira' => 'shiira',
			'Sitekiosk' => 'sitekiosk',
			'Skipstone' => 'skipstone',
			'Sleipnir' => 'sleipnir',
			'Slimboat' => 'slimboat',
			'Slimbrowser' => 'slimbrowser',
			'Metasr' => 'metasr',
			'Stainless' => 'stainless',
			'Sundance' => 'sundance',
			'Sundial' => 'sundial',
			'Sunrise' => 'sunrise',
			'Superbird' => 'superbird',
			'Surf' => 'surf',
			'Swiftweasel' => 'swiftweasel',
			'Tenfourfox' => 'tenfourfox',
			'Theworld' => 'theworld',
			'Tjusig' => 'tjusig',
			'Tencenttraveler' => 'tencenttraveler',
			'Ultrabrowser' => 'ultrabrowser',
			'Usejump' => 'usejump',
			'Uzbl' => 'uzbl',
			'Vonkeror' => 'vonkeror',
			'V3m' => 'v3m',
			'Webianshell' => 'webianshell',
			'Webrender' => 'webrender',
			'Weltweitimnetzbrowser' => 'weltweitimnetzbrowser',
			'Whitehat aviator' => 'whitehat aviator',
			'Wkiosk' => 'wkiosk',
			'Worldwideweb' => 'worldwideweb',
			'Wyzo' => 'wyzo',
			'Smiles' => 'smiles',
			'Yabrowser' => 'yabrowser',
			'Yrcweblink' => 'yrcweblink',
			'Zbrowser' => 'zbrowser',
			'Zipzap' => 'zipzap',
			'Firefox' => 'firefox',
			'Internet Explorer' => 'msie|trident',
			'Opera' => 'opera',
			'Chrome' => 'chrome',
			'Safari' => 'safari',
			'Thunderbird' => 'thunderbird',
			'Outlook' => 'outlook',
			'Airmail' => 'airmail',
			'Barca' => 'barca',
			'Eudora' => 'eudora',
			'Gcmail' => 'gcmail',
			'Lotus' => 'lotus',
			'Pocomail' => 'pocomail',
			'Postbox' => 'postbox',
			'Shredder' => 'shredder',
			'Sparrow' => 'sparrow',
			'Spicebird' => 'spicebird',
			'Bat!' => 'bat!',
			'Tizenbrowser' => 'tizenbrowser',
			'Apple Mail' => 'applewebkit',
			'Mozilla' => 'mozilla',
			'Gecko' => 'gecko'
		);

		$name = "unknown";
		$version = "";

		if(isset($_SERVER['HTTP_USER_AGENT'])){
			$agent = strtolower($_SERVER['HTTP_USER_AGENT']);
		}else{
			$agent = "unknown";
		}
		foreach($browsers as $key => $oneBrowser){
			if(preg_match("#($oneBrowser)[/ ]?([0-9]*)#", $agent, $match)){
				$name = $key;
				$version = $this->_getRealBrowserVersion($match[2], $name, $agent);
				break;
			}
		}

		$isMobile = 0;
		$osName = '';
		if(preg_match('/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/', $agent) || preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i', substr($agent, 0, 4))){
			$isMobile = 1;
			$osName = "unknown";
			$mobileOs = array("bada" => "Bada", "ubuntu; mobile" => "Ubuntu", "ubuntu; tablet" => "Ubuntu", "tizen" => "Tizen", "palm os" => "Palm", "meego" => "meeGo", "symbian" => "Symbian", "symbos" => "Symbian", "blackberry" => "BlackBerry", "windows ce" => "Windows Phone", "windows mobile" => "Windows Phone", "windows phone" => "Windows Phone", "iphone" => "iOS", "ipad" => "iOS", "ipod" => "iOS", "android" => "Android");
			$mobileOsKeys = array_keys($mobileOs);
			foreach($mobileOsKeys as $oneMobileOsKey){
				if(preg_match("/($oneMobileOsKey)/", $agent, $match2)){
					$osName = $mobileOs[$match2[1]];
					break;
				}
			}
		}

		try{
			$results = acymailing_query('UPDATE '.acymailing_table('userstats').' SET `is_mobile` = '.intval($isMobile).', `mobile_os` = '.acymailing_escapeDB($osName).', `browser` = '.acymailing_escapeDB($name).', browser_version = '.intval($version).', user_agent = '.acymailing_escapeDB($agent).' WHERE mailid = '.$mailid.' AND subid = '.$subid.' LIMIT 1');
		}catch(Exception $e){
			$results = null;
		}
		if($results === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			exit;
		}

		acymailing_query('UPDATE '.acymailing_table('stats').' SET opentotal = opentotal +1 '.$unique.' WHERE mailid = '.$mailid.' LIMIT 1');

		if(!empty($subid)){
			$filterClass = acymailing_get('class.filter');
			$filterClass->subid = $subid;
			$filterClass->trigger('opennews');
		}

		$classGeoloc = acymailing_get('class.geolocation');
		$classGeoloc->saveGeolocation('open', $subid);

		acymailing_importPlugin('acymailing');
		acymailing_trigger('onAcyOpenMail', array($subid, $mailid));

		return true;
	}

	private function _getRealBrowserVersion($versionUA, $browserUA, $userAgent){
		if($browserUA == 'Internet Explorer' && strpos($userAgent, 'trident') !== false){
			return '11';
		}

		return $versionUA;
	}

}
classes/action.php000060400000005673152455705230010206 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class actionClass extends acymailingClass{

	var $tables = array('action');
	var $pkey = 'action_id';

	function getActions($index = '', $actionIds = 'all'){
		$onlyActionIds = array();
		if(strtolower($actionIds) != 'all'){
			$onlyActionIds = explode(',', $actionIds);
			acymailing_arrayToInteger($onlyActionIds);
		}

		return acymailing_loadObjectList('SELECT * FROM '.acymailing_table('action').(empty($onlyActionIds) ? '' : ' WHERE listid IN ('.implode(',', $onlyActionIds).')').' ORDER BY ordering ASC', $index);
	}

	function delete($elements){
		if(!is_array($elements)) $elements = array($elements);
		acymailing_arrayToInteger($elements);
		if(empty($elements)) return 0;

		return parent::delete($elements);
	}

	function get($actionid, $default = null){
		$query = 'SELECT a.*, b.'.$this->cmsUserVars->name.' AS creatorname, b.'.$this->cmsUserVars->username.' AS creatorusername, b.'.$this->cmsUserVars->email.' AS email FROM '.acymailing_table('action').' AS a LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' AS b on a.userid = b.'.$this->cmsUserVars->id.' WHERE action_id = '.intval($actionid).' LIMIT 1';
		return acymailing_loadObject($query);
	}

	function saveForm(){
		$action = new stdClass();
		$action->action_id = acymailing_getCID('action_id');

		$formData = acymailing_getVar('array', 'data', array(), '');

		foreach($formData['action'] as $column => $value){
			if(acymailing_isAdmin()){
				acymailing_secureField($column);
				$action->$column = strip_tags($value);
			}
		}
		if(!empty($action->username)) $action->username = acymailing_punycode($action->username);

		if(empty($action->action_id)) $action->nextdate = time() + intval($action->frequency);
		if($action->password == '********') unset($action->password);

		$action->conditions = json_encode($formData['conditions']);
		$action->actions = json_encode($formData['actions']);

		if(isset($action->published) && $action->published != 1) $action->published = 0;
		$action_id = $this->save($action);
		if(!$action_id) return false;

		acymailing_setVar('action_id', $action_id);
		return true;
	}

	function save($action){
		if(empty($action->action_id) && empty($action->userid)){
			$action->userid = acymailing_currentUserId();
		}

		acymailing_importPlugin('acymailing');
		if(empty($action->action_id)){
			acymailing_trigger('onAcyBeforeActionCreate', array(&$action));
			$status = acymailing_insertObject(acymailing_table('action'), $action);
		}else{
			acymailing_trigger('onAcyBeforeActionModify', array(&$action));
			$status = acymailing_updateObject(acymailing_table('action'), $action, 'action_id');
		}

		if($status) return empty($action->action_id) ? $status : $action->action_id;
		return false;
	}
}
classes/queue.php000060400000015134152455705230010046 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class queueClass extends acymailingClass{

	var $onlynew = false;
	var $mindelay = 0;
	var $limit = 0;
	var $orderBy = '';
	var $emailtypes = array();

	function delete($filters){

		if(!empty($filters)){
			$query = 'DELETE a.* FROM '.acymailing_table('queue').' as a';
			$query .= ' JOIN '.acymailing_table('subscriber').' as b on a.subid = b.subid';
			$query .= ' JOIN '.acymailing_table('mail').' as c on a.mailid = c.mailid';
			$query .= ' WHERE ('.implode(') AND (', $filters).')';
		}else{
			$nbRecords = acymailing_loadResult('SELECT COUNT(*) FROM #__acymailing_queue');

			$query = 'TRUNCATE TABLE '.acymailing_table('queue');
		}
		$affected = acymailing_query($query);
		if(empty($nbRecords)) $nbRecords = $affected;

		return $nbRecords;
	}

	function nbQueue($mailid){
		$mailid = (int)$mailid;
		return acymailing_loadResult('SELECT count(subid) FROM '.acymailing_table('queue').' WHERE mailid = '.$mailid.' GROUP BY mailid');
	}

	function queue($mailid, $time){
		$mailid = intval($mailid);
		if(empty($mailid)) return false;

		$classLists = acymailing_get('class.listmail');
		$lists = $classLists->getReceivers($mailid, false);
		if(empty($lists)) return 0;

		$config = acymailing_config();
		acymailing_importPlugin('acymailing');
		$filterClass = acymailing_get('class.filter'); // Keep it, it loads the acyQuery class

		$mailClass = acymailing_get('class.mail');
		$mail = $mailClass->get($mailid);

		if(empty($mail->filter['type'])){
			$cquery = $this->initialQuery($lists);
			$query = 'INSERT IGNORE INTO '.acymailing_table('queue').' (subid,mailid,senddate,priority) '.$cquery->getQuery(array('a.subid',$mailid,$time,(int)$config->get('priority_newsletter', 3)));
			$totalinserted = acymailing_query($query);
		}else{
			$totalinserted = 0;
			foreach($mail->filter['type'] as $block => $oneFilter) {
				$cquery = $this->initialQuery($lists);
				foreach($oneFilter as $num => $oneType) {
					if(empty($oneType)) continue;
					acymailing_trigger('onAcyProcessFilter_' . $oneType, array(&$cquery, $mail->filter[$num][$oneType], $num));
				}
				$query = 'INSERT IGNORE INTO '.acymailing_table('queue').' (subid,mailid,senddate,priority) '.$cquery->getQuery(array('a.subid',$mailid,$time,(int)$config->get('priority_newsletter', 3)));
				$totalinserted += acymailing_query($query);
			}
		}

		if($this->onlynew){
			$affected = acymailing_query('DELETE b.* FROM `#__acymailing_userstats` as a JOIN `#__acymailing_queue` as b ON a.subid = b.subid AND a.mailid = b.mailid WHERE a.mailid = '.$mailid);
			$totalinserted = $totalinserted - $affected;
		}

		if(!empty($this->mindelay)){
			$affected = acymailing_query('DELETE b.* FROM `#__acymailing_queue` as b JOIN `#__acymailing_userstats` AS a ON a.subid = b.subid WHERE b.mailid = '.$mailid.' AND a.senddate > '.(time() - ($this->mindelay * 24 * 60 * 60)));
			$totalinserted = $totalinserted - $affected;
		}

		acymailing_trigger('onAcySendNewsletter', array($mailid));

		return $totalinserted;
	}

	function initialQuery($lists){
		$query = new acyQuery();

		$query->from = acymailing_table('listsub').' as a ';
		$query->join[] = acymailing_table('subscriber').' as sub ON a.subid = sub.subid ';
		$query->where[] = 'sub.enabled = 1';
		$query->where[] = 'sub.accept = 1';
		$query->where[] = 'a.listid IN ('.implode(',', array_keys($lists)).')';
		$query->where[] = 'a.status = 1';
		$config = acymailing_config();
		if($config->get('require_confirmation', '0')) $query->where[] = 'sub.confirmed = 1';
		$query->orderBy = $this->orderBy;
		$query->limit = $this->limit;

		return $query;
	}

	public function getReady($limit, $mailid = 0){
		if(empty($limit)) return array();

		$config = acymailing_config();
		$order = $config->get('sendorder');
		if(empty($order)){
			$order = 'a.`subid` ASC';
		}else{
			if($order == 'rand'){
				$order = 'RAND()';
			}else{
				$ordering = explode(',', $order);
				$order = 'a.`'.acymailing_secureField(trim($ordering[0])).'` '.acymailing_secureField(trim($ordering[1]));
			}
		}

		$query = 'SELECT a.* FROM '.acymailing_table('queue').' AS a';
		$query .= ' JOIN '.acymailing_table('mail').' AS b on a.`mailid` = b.`mailid` ';
		$query .= ' WHERE a.`senddate` <= '.time().' AND b.`published` = 1';
		if(!empty($this->emailtypes)){
			foreach($this->emailtypes as &$oneType){
				$oneType = acymailing_escapeDB($oneType);
			}
			$query .= ' AND (b.type = '.implode(' OR b.type = ', $this->emailtypes).')';
		}
		if(!empty($mailid)) $query .= ' AND a.`mailid` = '.$mailid;
		$query .= ' ORDER BY a.`priority` ASC, a.`senddate` ASC, '.$order;
		$query .= ' LIMIT '.acymailing_getVar('int', 'startqueue', 0).','.intval($limit);
		try{
			$results = acymailing_loadObjectList($query);
		}catch(Exception $e){
			$results = null;
		}

		if($results === null){
			acymailing_query('REPAIR TABLE #__acymailing_queue, #__acymailing_subscriber, #__acymailing_mail');
		}

		if(empty($results)) return array();

		if(!empty($results)){
			$firstElementQueued = reset($results);
			acymailing_query('UPDATE #__acymailing_queue SET senddate = senddate + 1 WHERE mailid = '.$firstElementQueued->mailid.' AND subid = '.$firstElementQueued->subid.' LIMIT 1');
		}

		$subids = array();
		foreach($results as $oneRes){
			$subids[$oneRes->subid] = intval($oneRes->subid);
		}

		$cleanQueue = false;
		if(!empty($subids)){
			$allusers = acymailing_loadObjectList('SELECT * FROM #__acymailing_subscriber WHERE subid IN ('.implode(',', $subids).')', 'subid');
			foreach($results as $oneId => $oneRes){
				if(empty($allusers[$oneRes->subid])){
					$cleanQueue = true;
					continue;
				}
				foreach($allusers[$oneRes->subid] as $oneVar => $oneVal){
					$results[$oneId]->$oneVar = $oneVal;
				}
			}
		}

		if($cleanQueue){
			acymailing_query('DELETE a.* FROM #__acymailing_queue as a LEFT JOIN #__acymailing_subscriber as b ON a.subid = b.subid WHERE b.subid IS NULL');
		}

		return $results;
	}


	function queueStatus($mailid, $all = false){
		$query = 'SELECT a.mailid, count(a.subid) as nbsub,min(a.senddate) as senddate, b.subject FROM '.acymailing_table('queue').' as a';
		$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid';
		$query .= ' WHERE b.published > 0';
		if(!$all){
			$query .= ' AND a.senddate < '.time();
			if(!empty($mailid)) $query .= ' AND a.mailid = '.$mailid;
		}
		$query .= ' GROUP BY a.mailid';
		$queueStatus = acymailing_loadObjectList($query, 'mailid');

		return $queueStatus;
	}

}
classes/listmail.php000060400000005631152455705230010541 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listmailClass extends acymailingClass{

	function getLists($mailid){
		$query = 'SELECT a.*,b.mailid FROM '.acymailing_table('list').' as a LEFT JOIN '.acymailing_table('listmail').' as b on a.listid = b.listid AND b.mailid = '.intval($mailid).' WHERE a.type = \'list\' ORDER BY b.mailid DESC, a.ordering ASC';
		return acymailing_loadObjectList($query);
	}

	function save($mailid, $listids = array(), $removelists = array()){
		$mailid = intval($mailid);
		if(!empty($removelists)){
			acymailing_arrayToInteger($removelists);
			$query = 'DELETE FROM '.acymailing_table('listmail').' WHERE mailid = '.$mailid.' AND listid IN ('.implode(',', $removelists).')';
			$affected = acymailing_query($query);
			if($affected === false) return false;
		}

		acymailing_arrayToInteger($listids);
		if(empty($listids)) return true;

		$query = 'INSERT IGNORE INTO '.acymailing_table('listmail').' (mailid,listid) VALUES ('.$mailid.','.implode('),('.$mailid.',', $listids).')';
		return acymailing_query($query) !== false;
	}

	function getCampaign($mailid){
		$query = 'SELECT a.*,b.mailid FROM '.acymailing_table('listmail').' as b LEFT JOIN '.acymailing_table('list').' as a on a.listid = b.listid WHERE b.mailid = '.intval($mailid).' AND a.type = \'campaign\' LIMIT 1';
		return acymailing_loadObject($query);
	}

	function getReceivers($mailid, $total = true, $onlypublished = true){
		$query = 'SELECT a.name,a.description,a.published,a.color,b.listid,b.mailid FROM '.acymailing_table('listmail').' as b JOIN '.acymailing_table('list').' as a on a.listid = b.listid WHERE b.mailid = '.intval($mailid);
		if($onlypublished) $query .= ' AND a.published = 1';
		$lists = acymailing_loadObjectList($query, 'listid');

		if(empty($lists) OR !$total) return $lists;

		$config = acymailing_config();
		$confirmed = $config->get('require_confirmation') ? 'b.confirmed = 1 AND' : '';
		$countQuery = 'SELECT a.listid, count(b.subid) as nbsub FROM `#__acymailing_listsub` as a JOIN `#__acymailing_subscriber` as b ON a.subid = b.subid WHERE '.$confirmed.' b.`enabled` = 1 AND b.`accept` = 1 AND a.`status` = 1 AND a.`listid` IN ('.implode(',', array_keys($lists)).') GROUP BY a.`listid`';
		$countResult = acymailing_loadObjectList($countQuery, 'listid');

		foreach($lists as $listid => $count){
			$lists[$listid]->nbsub = empty($countResult[$listid]->nbsub) ? 0 : $countResult[$listid]->nbsub;
		}

		return $lists;
	}

	function getFollowup($listid){
		$query = 'SELECT a.* FROM '.acymailing_table('listmail').' as b LEFT JOIN '.acymailing_table('mail').' as a on a.mailid = b.mailid WHERE b.listid = '.intval($listid).' ORDER BY a.senddate ASC';
		return acymailing_loadObjectList($query);
	}

}


classes/listcampaign.php000060400000003021152455705230011365 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listcampaignClass extends acymailingClass{

	function getLists($campaignid){
		$query = 'SELECT a.*,b.campaignid FROM '.acymailing_table('list').' as a LEFT JOIN '.acymailing_table('listcampaign').' as b on a.listid = b.listid AND b.campaignid = '.intval($campaignid).' WHERE a.type = \'list\' ORDER BY b.campaignid DESC, a.ordering ASC';
		return acymailing_loadObjectList($query);
	}

	function save($campaignid,$listids = array()){
		$campaignid = intval($campaignid);
		$query = 'DELETE FROM '.acymailing_table('listcampaign').' WHERE campaignid = '.$campaignid;
		$affected = acymailing_query($query);
		if($affected === false) return false;

		acymailing_arrayToInteger($listids);
		if(empty($listids))	return true;

		$query = 'INSERT IGNORE INTO '.acymailing_table('listcampaign').' (campaignid,listid) VALUES ('.$campaignid.','.implode('),('.$campaignid.',',$listids).')';
		return acymailing_query($query) !== false;
	}

	function getAffectedCampaigns($listids){
		$query = 'SELECT DISTINCT a.campaignid FROM '.acymailing_table('listcampaign').' as a JOIN '.acymailing_table('list').' as b on a.campaignid = b.listid WHERE a.listid IN ('.implode(',',$listids) .') AND b.type = \'campaign\' AND b.published = 1';
		return acymailing_loadResultArray($query);
	}

}


classes/geolocation.php000060400000014767152455705230011240 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class geolocationClass extends acymailingClass{
	var $tables = array('geolocation');
	var $pkey = 'geolocation_id';

	function saveGeolocation($geoloc_action, $subid){
		$config = acymailing_config();
		$geoloc_config = $config->get('geolocation');
		if(stripos($geoloc_config, $geoloc_action) === false) return false;

		$geo_element = new stdClass();
		$geo_element->geolocation_subid = $subid;
		$geo_element->geolocation_type = $geoloc_action;

		$userHelper = acymailing_get('helper.user');
		$geo_element->geolocation_ip = $userHelper->getIP();
		if(empty($geo_element->geolocation_subid) || empty($geo_element->geolocation_ip)) return false;

		$geo_element = $this->getIpLocation($geo_element);
		if($geo_element != false){
			parent::save($geo_element);
			return $geo_element;
		}else{
			return false;
		}
	}

	function getIpLocation($element){
		$oldElement = $this->getMostRecentDataByIp($element->geolocation_ip);
		if(!empty($oldElement) && (time() - $oldElement->geolocation_created < 2592000)){
			$element->geolocation_latitude = $oldElement->geolocation_latitude;
			$element->geolocation_longitude = $oldElement->geolocation_longitude;
			$element->geolocation_postal_code = $oldElement->geolocation_postal_code;
			$element->geolocation_country = $oldElement->geolocation_country;
			$element->geolocation_country_code = $oldElement->geolocation_country_code;
			$element->geolocation_state = $oldElement->geolocation_state;
			$element->geolocation_state_code = $oldElement->geolocation_state_code;
			$element->geolocation_city = $oldElement->geolocation_city;
			$element->geolocation_created = time();
			$element->geolocation_continent = (!empty($oldElement->geolocation_country_code) ? $this->countryToContinent($oldElement->geolocation_country_code) : '');
			$element->geolocation_timezone = $oldElement->geolocation_timezone;
			return $element;
		}

		$geoClass = acymailing_get('inc.ipinfodb');

		$config = acymailing_config();
		$api_key = trim($config->get('geoloc_api_key', ''));
		if($api_key == '') return false;
		$geoClass->setKey($api_key);
		$location = $geoClass->getCity($element->geolocation_ip);
		$errorLoc = $geoClass->getError();

		if(empty($errorLoc) && !empty($location) && !empty($location->countryCode) && $location->countryCode != '-'){
			$element->geolocation_latitude = (!empty($location->latitude) ? $location->latitude : 0);
			$element->geolocation_longitude = (!empty($location->longitude) ? $location->longitude : 0);
			$element->geolocation_postal_code = (!empty($location->zipCode) ? $location->zipCode : '');
			$element->geolocation_country = (!empty($location->countryName) ? ucwords(strtolower($location->countryName)) : '');
			$element->geolocation_country_code = (!empty($location->countryCode) ? $location->countryCode : '');
			$element->geolocation_state = (!empty($location->regionName) ? $location->regionName : '');
			$element->geolocation_state_code = (!empty($location->regioncode) ? $location->regioncode : '');
			$element->geolocation_city = (!empty($location->cityName) ? ucwords(strtolower($location->cityName)) : '');
			$element->geolocation_created = time();
			$element->geolocation_continent = (!empty($location->countryCode) ? $this->countryToContinent($location->countryCode) : '');
			$element->geolocation_timezone = (!empty($location->timeZone) ? $location->timeZone : '');
			return $element;
		}else{
			return false;
		}
	}

	function getMostRecentDataByIp($ip){
		return acymailing_loadObject("SELECT * FROM #__acymailing_geolocation WHERE geolocation_ip=".acymailing_escapeDB($ip)." ORDER BY geolocation_created DESC");
	}

	function testApiKey($apiKey){
		$geoClass = acymailing_get('inc.ipinfodb');
		$geoClass->setKey(trim($apiKey));

		$userHelper = acymailing_get('helper.user');
		$ipUser = $userHelper->getIP();
		$test = $geoClass->getCity($ipUser);
		$errorLoc = $geoClass->getError();

		if(!empty($test)){ // Has a return from the API
			return $test;
		}else{ // No return, we will display the IP used when calling API
			$retourError = new stdClass();
			$retourError->statusCode = 'noReturn';
			$retourError->ip = $ipUser;
			if(!empty($errorLoc)) $retourError->errorAPI = $errorLoc;
			return $retourError;
		}
	}

	function countryToContinent($country){
		$continent = '';
		$asia = array('AF', 'AM', 'AZ', 'BH', 'BD', 'BT', 'BN', 'IO', 'KH', 'CN', 'CX', 'CC', 'CY', 'GE', 'HK', 'IN', 'ID', 'IR', 'IQ', 'IL', 'JP', 'JO', 'KZ', 'KP', 'KR', 'KW', 'KG', 'LA', 'LB', 'MO', 'MY', 'MV', 'MN', 'MM', 'NP', 'OM', 'PK', 'PS', 'PH', 'QA', 'SA', 'SG', 'LK', 'SY', 'TW', 'TJ', 'TH', 'TL', 'TR', 'TM', 'AE', 'UZ', 'VN', 'YE');
		$africa = array('AO', 'BJ', 'DZ', 'BW', 'BF', 'BI', 'CM', 'CV', 'CF', 'TD', 'KM', 'CD', 'CG', 'CI', 'DJ', 'EG', 'GQ', 'ER', 'ET', 'GA', 'GM', 'GH', 'GN', 'GW', 'KE', 'LS', 'LR', 'LY', 'MG', 'MW', 'ML', 'MR', 'MU', 'YT', 'MA', 'MZ', 'NA', 'NE', 'NG', 'RE', 'RW', 'SH', 'ST', 'SN', 'SC', 'SL', 'SO', 'ZA', 'SD', 'SZ', 'TZ', 'TG', 'TN', 'UG', 'EH', 'ZM', 'ZW');
		$europe = array('AX', 'AL', 'AT', 'AD', 'BY', 'BE', 'BA', 'BG', 'HR', 'CZ', 'DK', 'EE', 'FO', 'FI', 'FR', 'DE', 'GI', 'GR', 'GG', 'VA', 'HU', 'IS', 'IE', 'IM', 'IT', 'JE', 'LV', 'LI', 'LT', 'LU', 'MK', 'MT', 'MD', 'MC', 'ME', 'NL', 'NO', 'PL', 'PT', 'RO', 'RU', 'SM', 'RS', 'SK', 'SI', 'ES', 'SJ', 'SE', 'CH', 'UA', 'GB');
		$oceania = array('AS', 'AU', 'CK', 'FJ', 'PF', 'GU', 'KI', 'MH', 'FM', 'NR', 'NC', 'NZ', 'NU', 'NF', 'MP', 'PW', 'PG', 'PN', 'WS', 'SB', 'TK', 'TO', 'TV', 'UM', 'VU', 'WF');
		$northAmerica = array('AI', 'AG', 'AW', 'BS', 'BB', 'BZ', 'BM', 'VG', 'CA', 'KY', 'CR', 'CU', 'DM', 'DO', 'SV', 'GL', 'GD', 'GP', 'GT', 'HT', 'HN', 'JM', 'MQ', 'MX', 'MS', 'AN', 'NI', 'PA', 'PR', 'BL', 'KN', 'LC', 'MF', 'PM', 'VC', 'TT', 'TC', 'US', 'VI');
		$southAmerica = array('AR', 'BO', 'BR', 'CL', 'CO', 'EC', 'FK', 'GF', 'GY', 'PY', 'PE', 'SR', 'UY', 'VE');
		$antarctica = array('AQ', 'BV', 'TF', 'HM', 'GS');

		if(in_array($country, $asia)) $continent = 'Asia';
		if(in_array($country, $africa)) $continent = 'Africa';
		if(in_array($country, $europe)) $continent = 'Europe';
		if(in_array($country, $oceania)) $continent = 'Oceania';
		if(in_array($country, $northAmerica)) $continent = 'North America';
		if(in_array($country, $southAmerica)) $continent = 'South America';
		if(in_array($country, $antarctica)) $continent = 'Antarctica';

		return $continent;
	}
}
classes/index.html000060400000000054152455705230010201 0ustar00<html><body bgcolor="#FFFFFF"></body></html>install.acymailing.php000060400000140035152455705230011046 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.8.0
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

if(version_compare(PHP_VERSION, '5.0.0', '<')){
	echo '<p style="color:red">This version of AcyMailing does not support PHP4, it is time to upgrade your server to PHP5!</p>';
	exit;
}

function installAcyMailing(){
	$success = true;
	try{
		include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');
	}catch(Exception $e){
		$updateHelper = acymailing_get('helper.update');
		$updateHelper->installTables();
		$success = false;
	}

	acymailing_increasePerf();

	$installClass = new acymailingInstall();
	$installClass->updateJoomailing();
	$installClass->addPref();
	$installClass->updatePref();
	$installClass->updateSQL();
	if($success) $installClass->displayInfo();
}

function uninstallAcyMailing(){
	$uninstallClass = new acymailingUninstall();
	$uninstallClass->unpublishModules();
	$uninstallClass->message();
}

if(!function_exists('com_install')){
	function com_install(){
		return installAcyMailing();
	}
}

if(!function_exists('com_uninstall')){
	function com_uninstall(){
		return uninstallAcyMailing();
	}
}

class com_acymailingInstallerScript{
	function install($parent){
		installAcyMailing();
	}

	function update($parent){
		installAcyMailing();
	}

	function uninstall($parent){
		uninstallAcyMailing();
	}

	function preflight($type, $parent){
		return true;
	}

	function postflight($type, $parent){
		return true;
	}
}


class acymailingInstall{

	var $level = 'starter';
	var $version = '5.8.0';
	var $update = false;
	var $fromLevel = '';
	var $fromVersion = '';
	var $db;

	function __construct(){
		$this->db = JFactory::getDBO();
		include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');
	}

	function displayInfo(){

		echo '<h1>Please wait... </h1><h2>AcyMailing will now automatically install the Plugins and the Module</h2>';
		$url = 'index.php?option=com_acymailing&ctrl=update&task=install&fromlevel='.$this->fromLevel.'&fromversion='.$this->fromVersion;
		echo '<a href="'.$url.'">Please click here if you are not automatically redirected within 3 seconds</a>';
		echo "<script language=\"javascript\" type=\"text/javascript\">document.location.href='$url';</script>\n";
	}


	function updatePref(){

		$this->db->setQuery("SELECT `namekey`, `value` FROM `#__acymailing_config` WHERE `namekey` IN ('version','level') LIMIT 2");
		try{
			$results = $this->db->loadObjectList('namekey');
		}catch(Exception $e){
			$results = null;
		}

		if($results === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags($this->db->getErrorMsg()), 0, 200).'...', 'error');
			return false;
		}

		if($results['version']->value == $this->version AND $results['level']->value == $this->level) return true;

		$this->update = true;
		$this->fromLevel = $results['level']->value;
		$this->fromVersion = $results['version']->value;

		$query = "REPLACE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('level',".$this->db->Quote($this->level)."),('version',".$this->db->Quote($this->version)."),('installcomplete','0')";
		$this->db->setQuery($query);
		$this->db->query();

		return true;
	}

	function updateSQL(){
		if(!$this->update) return true;
		$config = acymailing_config();




		if(version_compare($this->fromVersion, '1.1.4', '<')){
			$replace1 = "REPLACE(`params`, 'showhtml=1\nshowname=1', 'customfields=name,email,html' )";
			$replace2 = "REPLACE( $replace1 , 'showhtml=0\nshowname=1', 'customfields=name,email' )";
			$replace3 = "REPLACE( $replace2 , 'showhtml=1\nshowname=0', 'customfields=email,html' )";
			$replace4 = "REPLACE( $replace3 , 'showhtml=0\nshowname=0', 'customfields=email' )";
			$this->updateQuery("UPDATE #__modules SET `params`= $replace4 WHERE `module` = 'mod_acymailing' ");
		}

		if(version_compare($this->fromVersion, '1.2.1', '<')){
			$this->updateQuery("UPDATE `#__acymailing_config` SET `value` = 'data' WHERE `value` = '0' AND `namekey` = 'allow_modif' LIMIT 1");
			$this->updateQuery("UPDATE `#__acymailing_config` SET `value` = 'all' WHERE `value` = '1' AND `namekey` = 'allow_modif' LIMIT 1");
		}

		if(version_compare($this->fromVersion, '1.2.2', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `sentby` INT UNSIGNED NULL DEFAULT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `subject` VARCHAR( 250 ) NULL DEFAULT NULL");
			$this->updateQuery("DELETE FROM `#__plugins` WHERE `folder` = 'acymailing' AND `element` = 'autocontent'");
		}

		if(version_compare($this->fromVersion, '1.2.3', '<')){
			$this->updateQuery("UPDATE `#__plugins` SET `folder` = 'system', `element`= 'regacymailing', `name` = 'AcyMailing : (auto)Subscribe during Joomla registration', `params`= REPLACE(`params`, 'lists=', 'autosub=' ) WHERE `folder` = 'user' AND `element` = 'acymailing'");
			$this->updateQuery("DELETE FROM `#__plugins` WHERE `folder` = 'acymailing' AND `element` = 'autocontent'");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `stylesheet` TEXT NULL");

			if(is_dir(ACYMAILING_BACK.'plugins'.DS.'plg_user_acymailing')){
				acymailing_deleteFolder(ACYMAILING_BACK.'plugins'.DS.'plg_user_acymailing');
			}
			if(is_dir(ACYMAILING_BACK.'plugins'.DS.'plg_acymailing_autocontent')){
				acymailing_deleteFolder(ACYMAILING_BACK.'plugins'.DS.'plg_acymailing_autocontent');
			}
		}

		if(version_compare($this->fromVersion, '1.3.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_config` CHANGE `value` `value` TEXT NULL ");

			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `listing` TINYINT NULL DEFAULT NULL ");
			$this->updateQuery("UPDATE `#__acymailing_fields` SET `listing` = 1 WHERE `namekey` IN ('name','email','html') ");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `fromname` VARCHAR( 250 ) NULL , ADD `fromemail` VARCHAR( 250 ) NULL , ADD `replyname` VARCHAR( 250 ) NULL , ADD `replyemail` VARCHAR( 250 ) NULL ");
		}

		if(version_compare($this->fromVersion, '1.5.2', '<')){

			$existingEntry = acymailing_loadResult("SELECT `params` FROM #__plugins WHERE `element` = 'regacymailing' LIMIT 1");
			$listids = 'None';
			if(preg_match('#autosub=(.*)#i', $existingEntry, $autosubResult)){
				$listids = $autosubResult[1];
			}
			$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('autosub',".$this->db->Quote($listids).")");
		}

		if(version_compare($this->fromVersion, '1.5.3', '<')){
			$this->updateQuery('UPDATE #__acymailing_config SET `value` = REPLACE(`value`,\'<sup style="font-size: 4px;">TM</sup>\',\'™\')');
		}


		if(version_compare($this->fromVersion, '1.6.2', '<')){

			$this->updateQuery("UPDATE #__acymailing_config SET `value` = 'media/com_acymailing/upload' WHERE `namekey` = 'uploadfolder' AND `value` = 'components/com_acymailing/upload' ");

			$this->updateQuery("UPDATE #__acymailing_config SET `value` = 'media/com_acymailing/logs/report".rand(0, 999999999).".log' WHERE `namekey` = 'cron_savepath' ");

			if(!ACYMAILING_J16){
				$this->updateQuery("UPDATE #__plugins SET `params` = REPLACE(`params`,'components/com_acymailing/images','media/com_acymailing/images') ");
			}else{
				$this->updateQuery("UPDATE #__extensions SET `params` = REPLACE(`params`,'components\/com_acymailing\/images','media\/com_acymailing\/images') ");
			}


			$updateClass = acymailing_get('helper.update');
			$removeFiles = array();
			$removeFiles[] = ACYMAILING_FRONT.'css'.DS.'component_default.css';
			$removeFiles[] = ACYMAILING_FRONT.'css'.DS.'frontendedition.css';
			$removeFiles[] = ACYMAILING_FRONT.'css'.DS.'module_default.css';
			foreach($removeFiles as $oneFile){
				if(is_file($oneFile)) acymailing_deleteFile($oneFile);
			}

			$fromFolders = array();
			$toFolders = array();
			$fromFolders[] = ACYMAILING_FRONT.'css';
			$toFolders[] = ACYMAILING_MEDIA.'css';
			$fromFolders[] = ACYMAILING_FRONT.'templates'.DS.'plugins';
			$toFolders[] = ACYMAILING_MEDIA.'plugins';
			$fromFolders[] = ACYMAILING_FRONT.'upload';
			$toFolders[] = ACYMAILING_MEDIA.'upload';

			foreach($fromFolders as $i => $oneFolder){
				if(!is_dir($oneFolder)) continue;
				if(is_dir($toFolders[$i])){
					$updateClass->copyFolder($oneFolder, $toFolders[$i]);
				}
			}

			$deleteFolders = array();
			$deleteFolders[] = ACYMAILING_FRONT.'css';
			$deleteFolders[] = ACYMAILING_FRONT.'images';
			$deleteFolders[] = ACYMAILING_FRONT.'js';
			$deleteFolders[] = ACYMAILING_BACK.'logs';

			foreach($deleteFolders as $oneFolder){
				if(!is_dir($oneFolder)) continue;
				acymailing_deleteFolder($oneFolder);
			}
		}

		if(version_compare($this->fromVersion, '1.7.1', '<')){
			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_history` (`subid` INT UNSIGNED NOT NULL ,`date` INT UNSIGNED NOT NULL ,`ip` VARCHAR( 50 ) NULL ,
								`action` VARCHAR( 50 ) NOT NULL , `data` TEXT NULL , `source` TEXT NULL , INDEX ( `subid` , `date` ) ) ;");
		}

		if(version_compare($this->fromVersion, '1.7.3', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `metakey` TEXT NULL , ADD `metadesc` TEXT NULL ");
		}

		if(version_compare($this->fromVersion, '1.8.4', '<')){
			$this->updateQuery("UPDATE `#__acymailing_config` as a, `#__acymailing_config` as b SET a.`value` = b.`value` WHERE a.`namekey`= 'queue_nbmail_auto' AND b.`namekey`= 'queue_nbmail' ");
			$this->updateQuery("UPDATE `#__acymailing_mail` SET `body` = CONCAT(`body`,'<p>{survey}</p>') WHERE type = 'notification' AND `alias` IN ('notification_refuse','notification_unsub','notification_unsuball')");
		}

		if(version_compare($this->fromVersion, '1.8.5', '<')){
			$metaFile = ACYMAILING_FRONT.'metadata.xml';
			if(file_exists($metaFile)) acymailing_deleteFile($metaFile);
			$this->updateQuery('ALTER TABLE #__acymailing_url DROP INDEX url');
			$this->updateQuery('ALTER TABLE `#__acymailing_url` CHANGE `url` `url` TEXT NOT NULL');
			$this->updateQuery('ALTER TABLE `#__acymailing_url` ADD INDEX `url` ( `url` ( 250 ) ) ');
			$this->updateQuery("UPDATE `#__acymailing_mail` SET `body` = CONCAT(`body`,'<p>Subscription : {user:subscription}</p>') WHERE type = 'notification' AND `alias` = 'notification_created'");
		}

		if(version_compare($this->fromVersion, '1.9.1', '<')){
			$this->updateQuery('ALTER TABLE `#__acymailing_history` ADD `mailid` MEDIUMINT UNSIGNED NULL');

			$this->updateQuery('CREATE TABLE IF NOT EXISTS `#__acymailing_rules` (
				`ruleid` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
				`name` VARCHAR( 250 ) NOT NULL ,
				`ordering` SMALLINT UNSIGNED NULL ,
				`regex` VARCHAR( 250 ) NOT NULL ,
				`executed_on` TEXT NOT NULL ,
				`action_message` TEXT NOT NULL ,
				`action_user` TEXT NOT NULL ,
				`published` TINYINT UNSIGNED NOT NULL
				)');
			$this->updateQuery("UPDATE `#__acymailing_mail` SET `body` = CONCAT(`body`,'<p>Subscription : {user:subscription}</p>') WHERE type = 'notification' AND `alias` IN ( 'notification_unsuball','notification_refuse','notification_unsub')");
			$this->updateQuery("REPLACE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('auto_bounce','0')");
		}

		if(version_compare($this->fromVersion, '3.0.1', '<')){
			$this->updateQuery('ALTER TABLE `#__acymailing_mail` ADD `filter` TEXT NULL');

			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` CHANGE `userid` `userid` INT UNSIGNED NOT NULL DEFAULT '0'");
		}

		if(version_compare($this->fromVersion, '3.5.1', '<')){
			if(file_exists(ACYMAILING_FRONT.'sef_ext.php')) acymailing_deleteFile(ACYMAILING_FRONT.'sef_ext.php');

			$this->updateQuery("ALTER TABLE `#__acymailing_queue` ADD `paramqueue` VARCHAR( 250 ) NULL ");

			if(!ACYMAILING_J16){
				$this->updateQuery("DELETE FROM `#__plugins` WHERE folder = 'acymailing' AND element LIKE 'tagvm%'");
			}else{
				$this->updateQuery("DELETE FROM `#__extensions` WHERE folder = 'acymailing' AND element LIKE 'tagvm%'");
			}
		}

		if(version_compare($this->fromVersion, '3.6.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_rules` CHANGE `regex` `regex` TEXT NOT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_stats` ADD `bouncedetails` TEXT NULL");
		}

		if(version_compare($this->fromVersion, '3.7.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_userstats` ADD `ip` VARCHAR( 100 ) NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_urlclick` ADD `ip` VARCHAR( 100 ) NULL");
		}

		if(version_compare($this->fromVersion, '3.8.1', '<')){
			$this->updateQuery("UPDATE #__acymailing_mail SET subject = CONCAT(subject,' ','{mainreport}') WHERE type = 'notification' AND alias = 'report' AND subject NOT LIKE '%mainreport%' LIMIT 1");
		}

		if(version_compare($this->fromVersion, '3.8.2', '<')){
			$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('optimize_listsub',0),('optimize_stats',0),('optimize_list',0),('optimize_mail',0),('optimize_userstats',0),('optimize_urlclick',0),('optimize_history',0),('optimize_template',0),('optimize_queue',0),('optimize_subscriber',0) ");
		}

		$file = ACYMAILING_FRONT.'views'.DS.'newsletter'.DS.'metadata.xml';
		if(file_exists($file)) acymailing_deleteFile($file);

		$file = ACYMAILING_BACK.'admin.acymailing.php';
		if(file_exists($file)) acymailing_deleteFile($file);

		if(version_compare($this->fromVersion, '4.0.0', '<')){

			$this->db->setQuery("SELECT params,id FROM #__modules WHERE module = 'mod_acymailing'");
			$allModules = $this->db->loadObjectList();

			foreach($allModules as $oneMod){
				$newParams = preg_replace('#fieldsize=.*#i', 'fieldsize=80%', $oneMod->params);
				$newParams = preg_replace('#"fieldsize":"[^"]*"#i', '"fieldsize":"80%"', $newParams);
				$this->updateQuery("UPDATE #__modules SET params = ".$this->db->Quote($newParams)." WHERE id = ".intval($oneMod->id));
			}

			$this->db->setQuery("SELECT options,fieldid FROM #__acymailing_fields WHERE type IN ('phone','text','date','file') AND options LIKE '%size%'");
			$allFields = $this->db->loadObjectList();

			foreach($allFields as $oneField){
				$options = unserialize($oneField->options);
				$options['size'] = intval($options['size'] * 5);
				$this->updateQuery("UPDATE #__acymailing_fields SET options = ".$this->db->Quote(serialize($options))." WHERE fieldid = ".intval($oneField->fieldid));
			}
		}

		if(is_dir(ACYMAILING_BACK.'inc'.DS.'openflash')){
			acymailing_deleteFolder(ACYMAILING_BACK.'inc'.DS.'openflash');
		}
		if(is_dir(ACYMAILING_FRONT.'inc'.DS.'openflash')){
			acymailing_deleteFolder(ACYMAILING_FRONT.'inc'.DS.'openflash');
		}

		if(version_compare($this->fromVersion, '4.2.0', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `thumb` VARCHAR( 250 ) NULL , ADD `readmore` VARCHAR( 250 ) NULL ");

			$this->db->setQuery("SELECT tempid, description FROM #__acymailing_template WHERE `thumb` IS NULL");
			$allTemplates = $this->db->loadObjectList();
			foreach($allTemplates as $oneTemplate){
				if(preg_match('#<img[^>]*src="([^"]*)"[^>]*>#Ui', $oneTemplate->description, $onethumb)){
					$this->updateQuery('UPDATE #__acymailing_template SET `description` = '.$this->db->Quote(str_replace($onethumb[0], '', $oneTemplate->description)).', `thumb` = '.$this->db->Quote($onethumb[1]).' WHERE tempid = '.$oneTemplate->tempid);
				}
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` ADD `confirmed_date` INT UNSIGNED NOT NULL DEFAULT '0', ADD `confirmed_ip` VARCHAR(100) NULL , ADD `lastopen_date` INT UNSIGNED NOT NULL DEFAULT '0', ADD `lastclick_date` INT UNSIGNED NOT NULL DEFAULT '0'");
			$this->updateQuery('UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_history as hist ON sub.subid = hist.subid AND hist.action = "confirmed" SET sub.confirmed_date = hist.date, sub.confirmed_ip = hist.ip WHERE sub.confirmed_date = 0');
			$this->updateQuery('UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_userstats as stats ON sub.subid = stats.subid SET sub.lastopen_date = stats.opendate WHERE sub.lastopen_date = 0');
			$this->updateQuery('UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_urlclick as url ON sub.subid = url.subid SET sub.lastclick_date = url.date WHERE sub.lastclick_date = 0');
			$this->updateQuery('ALTER TABLE `#__acymailing_list` CHANGE `ordering` `ordering` SMALLINT UNSIGNED NULL DEFAULT \'0\'');
			$this->updateQuery('ALTER TABLE `#__acymailing_template` CHANGE `ordering` `ordering` SMALLINT UNSIGNED NULL DEFAULT \'0\'');

			$templateClass = acymailing_get('class.template');
			for($i = 1; $i <= 10; $i++){
				$templateClass->createTemplateFile($i);
			}
		}

		if(version_compare($this->fromVersion, '4.3.0', '<')){
			if(!ACYMAILING_J16){
				$queryReplace = "UPDATE `#__plugins` SET `name` = REPLACE(`name`,'(beta)','') WHERE `element` = 'acyeditor'";
			}else{
				$queryReplace = "UPDATE `#__extensions` SET `name` = REPLACE(`name`,'(beta)','') WHERE `element` = 'acyeditor'";
			}
			$this->updateQuery($queryReplace);

			if(!ACYMAILING_J16){
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__plugins WHERE `element` = 'urltracker' LIMIT 1");
				$pattern = '#trackingsystem=(.*)#i';
			}else{
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__extensions WHERE `element` = 'urltracker' LIMIT 1");
				$pattern = '#"trackingsystem":"([^"]*)"#i';
			}
			$trackingMode = 'acymailing';
			if(preg_match($pattern, $existingEntry, $autosubResult)){
				$trackingMode = $autosubResult[1];
			}
			if($trackingMode == 'googleacy') $trackingMode = 'acymailing,google';
			$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('trackingsystem',".$this->db->Quote($trackingMode).")");
		}

		if(version_compare($this->fromVersion, '4.3.1', '<')){
			$query = 'CREATE TABLE IF NOT EXISTS `#__acymailing_geolocation` (`geolocation_id` int unsigned NOT NULL AUTO_INCREMENT, `geolocation_subid` int unsigned NOT NULL DEFAULT \'0\',';
			$query .= ' `geolocation_type` varchar(255) NOT NULL DEFAULT \'subscription\', `geolocation_ip` varchar(255) NOT NULL DEFAULT \'\', `geolocation_created` int unsigned NOT NULL DEFAULT \'0\',';
			$query .= ' `geolocation_latitude` decimal(9,6) NOT NULL DEFAULT \'0.000000\', `geolocation_longitude` decimal(9,6) NOT NULL DEFAULT \'0.000000\', `geolocation_postal_code` varchar(255) NOT NULL DEFAULT \'\',';
			$query .= ' `geolocation_country` varchar(255) NOT NULL DEFAULT \'\', `geolocation_country_code` varchar(255) NOT NULL DEFAULT \'\', `geolocation_state` varchar(255) NOT NULL DEFAULT \'\',';
			$query .= ' `geolocation_state_code` varchar(255) NOT NULL DEFAULT \'\', `geolocation_city` varchar(255) NOT NULL DEFAULT \'\',';
			$query .= ' PRIMARY KEY (`geolocation_id`), KEY `geolocation_type` (`geolocation_subid`, `geolocation_type`)) ;';
			$this->updateQuery($query);
		}

		if(version_compare($this->fromVersion, '4.3.3', '<')){
			$this->updateQuery('UPDATE #__acymailing_list SET access_manage = CONCAT(",",access_manage) WHERE access_manage NOT IN ("all","none","")');
		}

		if(version_compare($this->fromVersion, '4.4.2', '<')){
			$this->updateQuery('ALTER TABLE `#__acymailing_fields` ADD `frontlisting` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\', ADD `frontjoomlaprofile` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\', ADD `frontjoomlaregistration` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\', ADD `joomlaprofile` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\'');
			$this->updateQuery('UPDATE `#__acymailing_fields` SET `frontlisting`  = `listing`');

			if(!ACYMAILING_J16){
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__plugins WHERE `element` = 'regacymailing' LIMIT 1");
				$pattern = '#customfields=(.*)#i';
			}else{
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__extensions WHERE `element` = 'regacymailing' LIMIT 1");
				$pattern = '#"customfields":"([^"]*)"#i';
			}
			if(preg_match($pattern, $existingEntry, $pregResult)){
				$existingEntries = explode(',', $pregResult[1]);
				foreach($existingEntries as $fieldToDisplay){
					$this->updateQuery("UPDATE `#__acymailing_fields` SET frontjoomlaregistration=1 WHERE namekey=".$this->db->Quote(trim($fieldToDisplay)));
				}
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_list` ADD `startrule` VARCHAR(50) NOT NULL DEFAULT '0'");

			if(is_dir(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'kcfinder')){
				acymailing_deleteFolder(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'kcfinder');
			}
			if(is_dir(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'kcfinder')){
				acymailing_deleteFolder(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'kcfinder');
			}
			if(is_dir(ACYMAILING_BACK.'extensions'.DS.'plg_editors_acyeditor'.DS.'acyeditor'.DS.'kcfinder')){
				acymailing_deleteFolder(ACYMAILING_BACK.'extensions'.DS.'plg_editors_acyeditor'.DS.'acyeditor'.DS.'kcfinder');
			}
		}

		if(version_compare($this->fromVersion, '4.5.2', '<')){
			$this->db->setQuery("SELECT * FROM #__acymailing_config WHERE namekey='acl_newsletters_manage'");
			$res = $this->db->query();
			if(!empty($res)){
				$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('acl_newsletters_lists', 'all'), ('acl_newsletters_attachments', 'all'), ('acl_newsletters_sender_informations', 'all'), ('acl_newsletters_meta_data','all')");
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `access` VARCHAR( 250 ) NOT NULL DEFAULT 'all'");
			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` ADD `lastopen_ip` VARCHAR( 100 ) NULL, ADD `lastsent_date` INT UNSIGNED NOT NULL DEFAULT '0'");

			$this->updateQuery("UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_userstats as stats ON sub.subid = stats.subid SET sub.lastopen_ip = stats.ip WHERE stats.ip != ''");

			$this->updateQuery("UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_userstats as stats ON sub.subid = stats.subid SET sub.lastsent_date = stats.senddate");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` MODIFY `type` ENUM('news','autonews','followup','unsub','welcome','notification','joomlanotification') NOT NULL DEFAULT 'news'");
		}

		if(version_compare($this->fromVersion, '4.6.3', '<')){
			$file = ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor_j30.xml';
			if(file_exists($file)) acymailing_deleteFile($file);

			$file = ACYMAILING_ROOT.'plugins'.DS.'system'.DS.'acymailingclassmail'.DS.'acymailingclassmail_j30.xml';
			if(file_exists($file)) acymailing_deleteFile($file);

			if($config->get('mailer_method') == 'smtp_com'){
				$newConfig = new stdClass();
				$newConfig->mailer_method = 'smtp';
				$newConfig->smtp_host = 'retail.smtp.com';
				$newConfig->smtp_port = '2525';
				$newConfig->smtp_username = $config->get('smtp_com_username');
				$newConfig->smtp_password = $config->get('smtp_com_password');
				$newConfig->smtp_auth = 1;
				$newConfig->smtp_keepalive = 1;
				$newConfig->smtp_secured = '';
				$config->save($newConfig);
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_userstats` ADD `browser` VARCHAR( 255 ) DEFAULT NULL, ADD `browser_version` TINYINT UNSIGNED DEFAULT NULL, ADD `is_mobile` TINYINT UNSIGNED DEFAULT NULL, ADD `mobile_os` VARCHAR( 255 ) DEFAULT NULL, ADD `user_agent` VARCHAR( 255 ) DEFAULT NULL");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `language` VARCHAR( 50 ) NOT NULL DEFAULT ''");
		}

		if(version_compare($this->fromVersion, '4.7.3', '<')){
			try{
				$this->db->setQuery("SELECT * FROM #__acymailing_config WHERE namekey='acl_newsletters_manage'");
				$res = $this->db->query();
				if(!empty($res)){
					$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('acl_newsletters_abtesting', 'all')");
				}
			}catch(Exception $e){
				$res = null;
			}
			if($res === null) acymailing_enqueueMessage(isset($e) ? $e->getMessage() : substr(strip_tags($this->db->getErrorMsg()), 0, 200).'...', 'error');

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `abtesting` VARCHAR( 250 ) DEFAULT NULL");

			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` ADD `source` VARCHAR( 250 ) NOT NULL DEFAULT ''");
		}

		if(version_compare($this->fromVersion, '4.8.2', '<')){
			$tagsFile = JPATH_SITE.DS.'plugins'.DS.'acymailing'.DS.'tagcontent'.DS.'tagcontenttags.xml';
			if(file_exists($tagsFile)) acymailing_deleteFile($tagsFile);

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `thumb` VARCHAR( 250 ) DEFAULT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `summary` TEXT NOT NULL DEFAULT ''");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `category` VARCHAR( 250 ) NOT NULL DEFAULT ''");
			$this->updateQuery("ALTER TABLE `#__acymailing_list` ADD `category` VARCHAR( 250 ) NOT NULL DEFAULT ''");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `access` VARCHAR( 250 ) NOT NULL DEFAULT 'all'");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `fieldcat` INT( 11 ) NOT NULL DEFAULT '0'");

			$this->updateQuery("UPDATE `#__acymailing_template` SET body = REPLACE(body,'<tbody>','<tbody class=\"acyeditor_sortable\">') WHERE body LIKE '%acyeditor_%' ");
		}

		if(version_compare($this->fromVersion, '4.9.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_geolocation` ADD KEY `geolocation_ip_created` (`geolocation_ip`, `geolocation_created`)");
		}

		if(version_compare($this->fromVersion, '4.9.3', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_userstats` ADD `bouncerule` VARCHAR( 255 ) NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `listingfilter` TINYINT NULL DEFAULT NULL ");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `frontlistingfilter` TINYINT NULL DEFAULT NULL ");
		}

		if(version_compare($this->fromVersion, '4.9.4', '<')){
			$this->updateQuery("UPDATE #__acymailing_mail SET body = REPLACE(REPLACE(body, 'newsletter-4/top.png', 'newsletter-4/images/top.png'), 'newsletter-4/bottom.png', 'newsletter-4/images/bottom.png')");
		}

		if(version_compare($this->fromVersion, '5.0.0', '<')){
			$this->db->setQuery('SELECT mailid, attach FROM #__acymailing_mail WHERE attach IS NOT NULL');
			$mails = $this->db->loadObjectList();
			if(!empty($mails)){
				$query = 'INSERT INTO #__acymailing_mail (`mailid`,`attach`) VALUES ';
				$folderPath = acymailing_getFilesFolder();
				foreach($mails as $oneMail){
					$attachments = unserialize($oneMail->attach);
					foreach($attachments as &$oneAttach){
						if(strpos($oneAttach->filename, $folderPath) === false) $oneAttach->filename = $folderPath.'/'.$oneAttach->filename;
					}
					$query .= '('.$oneMail->mailid.','.$this->db->Quote(serialize($attachments)).'),';
				}
				$query = rtrim($query, ',');
				$query .= ' ON DUPLICATE KEY UPDATE `attach` = VALUES(`attach`)';
				$this->updateQuery($query);
			}
			$newConfig = new stdClass();
			$newConfig->css_backend = '';
			$config->save($newConfig);
		}

		if(version_compare($this->fromVersion, '5.0.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `frontform` TINYINT NULL DEFAULT 1");
			$this->updateQuery("UPDATE `#__acymailing_fields` SET frontform = backend");
		}

		if(version_compare($this->fromVersion, '5.1.0', '<')){
			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_action` (`action_id` int unsigned NOT NULL AUTO_INCREMENT,`name` varchar(255) DEFAULT NULL,`description` text,`frequency` int unsigned NOT NULL,
	`nextdate` int unsigned NOT NULL,`server` varchar(255) NOT NULL,`port` varchar(50) NOT NULL,`connection_method` varchar(10) NOT NULL DEFAULT '0',`secure_method` varchar(10) NOT NULL DEFAULT '0',
	`self_signed` tinyint NOT NULL DEFAULT '0',`username` varchar(255) NOT NULL,`password` varchar(50) NOT NULL,`userid` int unsigned DEFAULT NULL,`conditions` text,`actions` text,`report` text,
	`published` tinyint NOT NULL DEFAULT '0',`ordering` smallint unsigned NULL DEFAULT '0',PRIMARY KEY (`action_id`)) ;");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `favicon` text");
		}

		if(version_compare($this->fromVersion, '5.2.0', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` MODIFY `type` ENUM('news','autonews','followup','unsub','welcome','notification','joomlanotification','action') NOT NULL DEFAULT 'news'");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `bccaddresses` varchar(250) DEFAULT NULL");
			$managetext = JPluginHelper::getPlugin('acymailing', 'managetext');
			$managetextParams = new acyParameter($managetext->params);

			$possibleVars = array('', 2, 3);
			foreach($possibleVars as $oneSuffix){
				$bcc = $managetextParams->get('bccaddresses'.$oneSuffix);
				$mailids = trim(str_replace(array(',', ' '), ';', $managetextParams->get('bccmailids'.$oneSuffix)));
				if(empty($mailids) || empty($bcc)) continue;

				$emails = explode(';', $mailids);
				acymailing_arrayToInteger($emails);

				$this->updateQuery('UPDATE `#__acymailing_mail` SET bccaddresses = '.$this->db->quote($bcc).' WHERE mailid IN ('.implode(',', $emails).')');
			}

			$this->updateQuery('UPDATE `#__acymailing_rules` SET name = (CASE name WHEN "Action Required" THEN "ACY_RULE_ACTION"
																					 WHEN "Acknowledgement of receipt - in subject" THEN "ACY_RULE_ACKNOWLEDGE"
																					 WHEN "Feedback loop" THEN "ACY_RULE_LOOP"
																					 WHEN "Feedback loop - in body" THEN "ACY_RULE_LOOP_BODY"
																					 WHEN "Mailbox Full" THEN "ACY_RULE_FULL"
																					 WHEN "Blocked by Google Groups" THEN "ACY_RULE_GOOGLE"
																					 WHEN "Mailbox does not exist 1" THEN "ACY_RULE_EXIST1"
																					 WHEN "Message blocked by recipient filters" THEN "ACY_RULE_FILTERED"
																					 WHEN "Mailbox does not exist 2" THEN "ACY_RULE_EXIST2"
																					 WHEN "Domain does not exist" THEN "ACY_RULE_DOMAIN"
																					 WHEN "Temporary failures" THEN "ACY_RULE_TEMPORAR"
																					 WHEN "Failed Permanently" THEN "ACY_RULE_PERMANENT"
																					 WHEN "Acknowledgement of receipt - in body" THEN "ACY_RULE_ACKNOWLEDGE_BODY"
																					 WHEN "Final Rule" THEN "ACY_RULE_FINAL"
																					 ELSE name
																					 END)');

			$this->updateQuery("ALTER TABLE #__acymailing_geolocation ADD `geolocation_continent` varchar(255) NOT NULL DEFAULT '', ADD `geolocation_timezone` varchar(255) NOT NULL DEFAULT ''");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Asia' WHERE geolocation_country_code IN ('AF', 'AM', 'AZ', 'BH', 'BD', 'BT', 'BN', 'IO', 'KH', 'CN', 'CX', 'CC', 'CY', 'GE', 'HK', 'IN', 'ID', 'IR', 'IQ', 'IL', 'JP', 'JO', 'KZ', 'KP', 'KR', 'KW', 'KG', 'LA', 'LB', 'MO', 'MY', 'MV', 'MN', 'MM', 'NP', 'OM', 'PK', 'PS', 'PH', 'QA', 'SA', 'SG', 'LK', 'SY', 'TW', 'TJ', 'TH', 'TL', 'TR', 'TM', 'AE', 'UZ', 'VN', 'YE')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Africa' WHERE geolocation_country_code IN ('AO', 'BJ', 'DZ', 'BW', 'BF', 'BI', 'CM', 'CV', 'CF', 'TD', 'KM', 'CD', 'CG', 'CI', 'DJ', 'EG', 'GQ', 'ER', 'ET', 'GA', 'GM', 'GH', 'GN', 'GW', 'KE', 'LS', 'LR', 'LY', 'MG', 'MW', 'ML', 'MR', 'MU', 'YT', 'MA', 'MZ', 'NA', 'NE', 'NG', 'RE', 'RW', 'SH', 'ST', 'SN', 'SC', 'SL', 'SO', 'ZA', 'SD', 'SZ', 'TZ', 'TG', 'TN', 'UG', 'EH', 'ZM', 'ZW')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Europe' WHERE geolocation_country_code IN ('AX', 'AL', 'AT', 'AD', 'BY', 'BE', 'BA', 'BG', 'HR', 'CZ', 'DK', 'EE', 'FO', 'FI', 'FR', 'DE', 'GI', 'GR', 'GG', 'VA', 'HU', 'IS', 'IE', 'IM', 'IT', 'JE', 'LV', 'LI', 'LT', 'LU', 'MK', 'MT', 'MD', 'MC', 'ME', 'NL', 'NO', 'PL', 'PT', 'RO', 'RU', 'SM', 'RS', 'SK', 'SI', 'ES', 'SJ', 'SE', 'CH', 'UA', 'GB')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Oceania' WHERE geolocation_country_code IN ('AS', 'AU', 'CK', 'FJ', 'PF', 'GU', 'KI', 'MH', 'FM', 'NR', 'NC', 'NZ', 'NU', 'NF', 'MP', 'PW', 'PG', 'PN', 'WS', 'SB', 'TK', 'TO', 'TV', 'UM', 'VU', 'WF')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'North America' WHERE geolocation_country_code IN ('AI', 'AG', 'AW', 'BS', 'BB', 'BZ', 'BM', 'VG', 'CA', 'KY', 'CR', 'CU', 'DM', 'DO', 'SV', 'GL', 'GD', 'GP', 'GT', 'HT', 'HN', 'JM', 'MQ', 'MX', 'MS', 'AN', 'NI', 'PA', 'PR', 'BL', 'KN', 'LC', 'MF', 'PM', 'VC', 'TT', 'TC', 'US', 'VI')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'South America' WHERE geolocation_country_code IN ('AR', 'BO', 'BR', 'CL', 'CO', 'EC', 'FK', 'GF', 'GY', 'PY', 'PE', 'SR', 'UY', 'VE')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Antartica' WHERE geolocation_country_code IN ('AQ', 'BV', 'TF', 'HM', 'GS')");

			if($config->get('captcha_enabled') == 1){
				$this->updateQuery('INSERT INTO `#__acymailing_config` (namekey, value) VALUES ("captcha_plugin", "acycaptcha") ON DUPLICATE KEY UPDATE value="acycaptcha"');
			}else{
				$this->updateQuery('INSERT INTO `#__acymailing_config` (namekey, value) VALUES ("captcha_plugin", "no") ON DUPLICATE KEY UPDATE value="no"');
			}
			try{
				$this->db->setQuery('SELECT tempid, stylesheet FROM #__acymailing_template');
				$res = $this->db->loadObjectList('tempid');
				foreach($res as $oneTmpl){
					$changedStyle = preg_replace('/(table *(,[^{}]*)?)({[^}]*font-family)/', '$1, td$3', $oneTmpl->stylesheet);
					$this->updatequery('UPDATE #__acymailing_template SET stylesheet = '.$this->db->Quote($changedStyle).' WHERE tempid = '.$oneTmpl->tempid);
				}
			}catch(Exception $e){
				$res = null;
			}
			if($res === null) acymailing_enqueueMessage(isset($e) ? $e->getMessage() : substr(strip_tags($this->db->getErrorMsg()), 0, 200).'...', 'error');
		}

		if(version_compare($this->fromVersion, '5.5.0', '<')){
			$this->updateQuery("ALTER TABLE #__acymailing_action ADD `delete_wrong_emails` tinyint NOT NULL DEFAULT 0");
			$this->updateQuery("ALTER TABLE #__acymailing_action ADD `senderfrom` tinyint NOT NULL DEFAULT 0");
			$this->updateQuery("ALTER TABLE #__acymailing_action ADD `senderto` tinyint NOT NULL DEFAULT 0");
		}

		if(version_compare($this->fromVersion, '5.6.0', '<')){
			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_forward` (`subid` int unsigned NOT NULL,`mailid` mediumint unsigned NOT NULL, `date` int unsigned NOT NULL,
			`ip` varchar(50) DEFAULT NULL, `nbforwarded` int unsigned NOT NULL, PRIMARY KEY (`subid`,`mailid`)) ;");

			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_tag` (`tagid` smallint unsigned NOT NULL AUTO_INCREMENT, `name` varchar(250) NOT NULL,
			`userid` int unsigned DEFAULT NULL,PRIMARY KEY (`tagid`),KEY `useridindex` (`userid`)) ;");

			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_tagmail` (`tagid` smallint unsigned NOT NULL,	`mailid` mediumint unsigned NOT NULL,
			PRIMARY KEY (`tagid`,`mailid`)) ;");
		}

		if(version_compare($this->fromVersion, '5.6.5', '<')) {
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` MODIFY subject text");
		}

		if(version_compare($this->fromVersion, '5.7.1', '<')) {
			$daycron = $config->get('cron_plugins_next', 0);

			$this->updateQuery("ALTER TABLE `#__acymailing_filter` ADD `daycron` int unsigned");
			$this->db->setQuery('UPDATE #__acymailing_filter SET `daycron` = '.intval($daycron).' WHERE `trigger` LIKE "%daycron%"');
			$this->db->query();
		}

		if(version_compare($this->fromVersion, '5.8.0', '<')) {
			$this->updateQuery("ALTER TABLE #__acymailing_mail ADD `lastupdate` int unsigned DEFAULT NULL");
			$this->updateQuery("ALTER TABLE #__acymailing_mail ADD `userlastupdate` int unsigned DEFAULT NULL");
		}
	}

	function updateQuery($query){
		try{
			$this->db->setQuery($query);
			$res = $this->db->query();
		}catch(Exception $e){
			$res = null;
		}
		if($res === null) acymailing_enqueueMessage(isset($e) ? $e->getMessage() : substr(strip_tags($this->db->getErrorMsg()), 0, 200).'...', 'error');
	}

	function updateJoomailing(){
		$result = acymailing_loadResult("SHOW TABLES LIKE '".$this->db->getPrefix()."joomailing_config'");

		if(empty($result)) return true;


		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) SELECT `namekey`, REPLACE(`value`,'com_joomailing','com_acymailing') FROM `#__joomailing_config`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_list` (`name`, `description`, `ordering`, `listid`, `published`, `userid`, `alias`, `color`, `visible`, `welmailid`, `unsubmailid`, `type`) SELECT `name`, `description`, `ordering`, `listid`, `published`, `userid`, `alias`, `color`, `visible`, `welmailid`, `unsubmailid`, `type` FROM `#__joomailing_list`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_listcampaign` (`campaignid`, `listid`) SELECT `campaignid`, `listid` FROM `#__joomailing_listcampaign`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_listmail` (`listid`, `mailid`) SELECT `listid`, `mailid` FROM `#__joomailing_listmail`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_listsub` (`listid`, `subid`, `subdate`, `unsubdate`, `status`) SELECT `listid`, `subid`, `subdate`, `unsubdate`, `status` FROM `#__joomailing_listsub`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_mail` (`mailid`, `subject`, `body`, `altbody`, `published`, `senddate`, `created`, `fromname`, `fromemail`, `replyname`, `replyemail`, `type`, `visible`, `userid`, `alias`, `attach`, `html`, `tempid`, `key`, `frequency`, `params`) SELECT `mailid`, `subject`, REPLACE(`body`,'joomailing','acymailing'), REPLACE(`altbody`,'joomailing','acymailing'), `published`, `senddate`, `created`, `fromname`, `fromemail`, `replyname`, `replyemail`, `type`, `visible`, `userid`, `alias`, REPLACE(`attach`,'com_joomailing','com_acymailing'), `html`, `tempid`, `key`, `frequency`, REPLACE(`params`,'com_joomailing','com_acymailing') FROM `#__joomailing_mail`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_queue` (`senddate`, `subid`, `mailid`, `priority`, `try`) SELECT `senddate`, `subid`, `mailid`, `priority`, `try` FROM `#__joomailing_queue`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_stats` (`mailid`, `senthtml`, `senttext`, `senddate`, `openunique`, `opentotal`, `bounceunique`, `fail`, `clicktotal`, `clickunique`, `unsub`, `forward`) SELECT `mailid`, `senthtml`, `senttext`, `senddate`, `openunique`, `opentotal`, `bounceunique`, `fail`, `clicktotal`, `clickunique`, `unsub`, `forward` FROM `#__joomailing_stats`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_subscriber` (`subid`, `email`, `userid`, `name`, `created`, `confirmed`, `enabled`, `accept`, `ip`, `html`, `key`) SELECT `subid`, `email`, `userid`, `name`, `created`, `confirmed`, `enabled`, `accept`, `ip`, `html`, `key` FROM `#__joomailing_subscriber`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_template` (`tempid`, `name`, `description`, `body`, `altbody`, `created`, `published`, `premium`, `ordering`, `namekey`, `styles`) SELECT `tempid`, `name`, REPLACE(`description`,'joomailing','acymailing'), REPLACE(`body`,'joomailing','acymailing'), REPLACE(`altbody`,'joomailing','acymailing'), `created`, `published`, `premium`, `ordering`, `namekey`, REPLACE(`styles`,'joomailing','acymailing') FROM `#__joomailing_template`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_url` (`urlid`, `name`, `url`) SELECT `urlid`, REPLACE(`name`,'com_joomailing','com_acymailing'), REPLACE(`url`,'com_joomailing','com_acymailing') FROM `#__joomailing_url`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_urlclick` (`urlid`, `mailid`, `click`, `subid`, `date`) SELECT `urlid`, `mailid`, `click`, `subid`, `date` FROM `#__joomailing_urlclick`");
		$this->db->query();
		$this->db->setQuery("INSERT IGNORE INTO `#__acymailing_userstats` (`mailid`, `subid`, `html`, `sent`, `senddate`, `open`, `opendate`, `bounce`, `fail`) SELECT `mailid`, `subid`, `html`, `sent`, `senddate`, `open`, `opendate`, `bounce`, `fail` FROM `#__joomailing_userstats`");
		$this->db->query();

		$this->db->setQuery("DROP TABLE IF EXISTS `#__joomailing_config`, `#__joomailing_list`, `#__joomailing_listcampaign`, `#__joomailing_listmail`, `#__joomailing_listsub`, `#__joomailing_mail`, `#__joomailing_queue` , `#__joomailing_stats`, `#__joomailing_subscriber`, `#__joomailing_template` , `#__joomailing_url`, `#__joomailing_urlclick`, `#__joomailing_userstats`");
		$this->db->query();

		$this->db->setQuery("UPDATE `#__modules` SET `title` = REPLACE(`title`,'JooMailing','AcyMailing'), `module` = REPLACE(`module`,'joomailing','acymailing'), `params` = REPLACE(`params`,'joomailing','acymailing')");
		$this->db->query();
		$this->db->setQuery("UPDATE `#__plugins` SET `name` = REPLACE(REPLACE(REPLACE(`name`,'jooMailing','AcyMailing'),'joomailing','acymailing'),'JooMailing','AcyMailing'), `element` = REPLACE(`element`,'joomailing','acymailing'), `folder` = REPLACE(`folder`,'joomailing','acymailing'), `params` = REPLACE(`params`,'joomailing','acymailing')");
		$this->db->query();

		$this->db->setQuery("DELETE FROM `#__components` WHERE `option` LIKE '%joomailing%' OR `admin_menu_link` LIKE '%joomailing%'");
		$this->db->query();

		$this->db->setQuery("UPDATE `#__menu` SET `menutype` = REPLACE(`menutype`,'joomailing','acymailing'), `name` = REPLACE(`name`,'joomailing','acymailing'), `alias` = REPLACE(`alias`,'joomailing','acymailing'), `link` = REPLACE(`link`,'joomailing','acymailing')");
		$this->db->query();


		$newFile = '<?php
					$url = \'index.php?option=com_acymailing\';
					foreach($_GET as $name => $value){
						if($name == \'option\') continue;
						$url .= \'&\'.$name.\'=\'.$value;
					}
					acymailing_redirect($url);
					';

		@file_put_contents(rtrim(JPATH_SITE, DS).DS.'components'.DS.'com_joomailing'.DS.'joomailing.php', $newFile);
		@file_put_contents(rtrim(JPATH_ADMINISTRATOR, DS).DS.'components'.DS.'com_joomailing'.DS.'admin.joomailing.php', $newFile);
	}

	function addPref(){
		$conf = JFactory::getConfig();

		$this->level = ucfirst($this->level);

		$allPref = array();

		$allPref['level'] = $this->level;
		$allPref['version'] = $this->version;
		$allPref['smtp_port'] = '';

		if(ACYMAILING_J30){
			$allPref['from_name'] = $conf->get('fromname');
			$allPref['from_email'] = $conf->get('mailfrom');
			$allPref['bounce_email'] = $conf->get('mailfrom');
			$allPref['mailer_method'] = $conf->get('mailer');
			$allPref['sendmail_path'] = $conf->get('sendmail');
			$smtpinfos = explode(':', $conf->get('smtphost'));
			$allPref['smtp_port'] = $conf->get('smtpport');
			$allPref['smtp_secured'] = $conf->get('smtpsecure');
			$allPref['smtp_auth'] = $conf->get('smtpauth');
			$allPref['smtp_username'] = $conf->get('smtpuser');
			$allPref['smtp_password'] = $conf->get('smtppass');
		}else{
			$allPref['from_name'] = $conf->getValue('config.fromname');
			$allPref['from_email'] = $conf->getValue('config.mailfrom');
			$allPref['bounce_email'] = $conf->getValue('config.mailfrom');
			$allPref['mailer_method'] = $conf->getValue('config.mailer');
			$allPref['sendmail_path'] = $conf->getValue('config.sendmail');
			$smtpinfos = explode(':', $conf->getValue('config.smtphost'));
			$allPref['smtp_secured'] = $conf->getValue('config.smtpsecure');
			$allPref['smtp_auth'] = $conf->getValue('config.smtpauth');
			$allPref['smtp_username'] = $conf->getValue('config.smtpuser');
			$allPref['smtp_password'] = $conf->getValue('config.smtppass');
		}

		$allPref['reply_name'] = $allPref['from_name'];
		$allPref['reply_email'] = $allPref['from_email'];
		$allPref['cron_sendto'] = $allPref['from_email'];

		$allPref['add_names'] = '1';
		$allPref['encoding_format'] = '8bit';
		$allPref['charset'] = 'UTF-8';
		$allPref['word_wrapping'] = '150';
		$allPref['hostname'] = '';
		$allPref['embed_images'] = '0';
		$allPref['embed_files'] = '1';
		$allPref['editor'] = 'acyeditor';
		$allPref['multiple_part'] = '1';
		$allPref['smtp_host'] = $smtpinfos[0];
		if(isset($smtpinfos[1])) $allPref['smtp_port'] = $smtpinfos[1];
		if(!in_array($allPref['smtp_secured'], array('tls', 'ssl'))) $allPref['smtp_secured'] = '';

		$allPref['queue_nbmail'] = '40';
		$allPref['queue_nbmail_auto'] = '70';
		$allPref['queue_type'] = 'auto';
		$allPref['queue_try'] = '3';
		$allPref['queue_pause'] = '120';
		$allPref['allow_visitor'] = '1';
		$allPref['require_confirmation'] = '0';
		$allPref['priority_newsletter'] = '3';
		$allPref['allowedfiles'] = 'zip,doc,docx,pdf,xls,txt,gzip,rar,jpg,jpeg,gif,xlsx,pps,csv,bmp,ico,odg,odp,ods,odt,png,ppt,swf,xcf,mp3,wma';
		$allPref['uploadfolder'] = 'media/com_acymailing/upload';
		$allPref['confirm_redirect'] = '';
		$allPref['subscription_message'] = '1';
		$allPref['notification_unsuball'] = '';
		$allPref['cron_next'] = '1251990901';
		$allPref['confirmation_message'] = '1';
		$allPref['welcome_message'] = '1';
		$allPref['unsub_message'] = '1';
		$allPref['cron_last'] = '0';
		$allPref['cron_fromip'] = '';
		$allPref['cron_report'] = '';
		$allPref['cron_frequency'] = '900';
		$allPref['cron_sendreport'] = '2';

		$allPref['cron_fullreport'] = '1';
		$allPref['cron_savereport'] = '2';
		$allPref['cron_savepath'] = 'media/com_acymailing/logs/report'.rand(0, 999999999).'.log';
		$allPref['notification_created'] = '';
		$allPref['notification_accept'] = '';
		$allPref['notification_refuse'] = '';
		$allPref['forward'] = '0';

		$descriptions = array('Joomla!® Newsletter Extension', 'Joomla!® Mailing Extension', 'Joomla!® Newsletter System', 'Joomla!® E-mail Marketing', 'Joomla!® Marketing Campaign');
		$allPref['description_starter'] = $descriptions[rand(0, 4)];
		$allPref['description_essential'] = $descriptions[rand(0, 4)];
		$allPref['description_business'] = $descriptions[rand(0, 4)];
		$allPref['description_enterprise'] = $descriptions[rand(0, 4)];
		$allPref['description_sidekick'] = $descriptions[rand(0, 4)];

		$allPref['priority_followup'] = '2';
		$allPref['unsub_redirect'] = '';
		$allPref['use_sef'] = '0';
		$allPref['itemid'] = '0';
		$allPref['css_module'] = 'default';
		$allPref['css_frontend'] = 'default';
		$allPref['css_backend'] = '';
		$allPref['bootstrap_frontend'] = 0;

		$allPref['unsub_reasons'] = serialize(array('UNSUB_SURVEY_FREQUENT', 'UNSUB_SURVEY_RELEVANT'));

		$allPref['security_key'] = acymailing_generateKey(30);


		$allPref['installcomplete'] = '0';

		$allPref['Starter'] = '0';
		$allPref['Essential'] = '1';
		$allPref['Business'] = '2';
		$allPref['Enterprise'] = '3';
		$allPref['Sidekick'] = '4';

		$query = "INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ";
		foreach($allPref as $namekey => $value){
			$query .= '('.$this->db->Quote($namekey).','.$this->db->Quote($value).'),';
		}
		$query = rtrim($query, ',');

		$this->db->setQuery($query);
		try{
			$res = $this->db->query();
		}catch(Exception $e){
			$res = null;
		}
		if($res === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags($this->db->getErrorMsg()), 0, 200).'...', 'error');
			return false;
		}
		return true;
	}
}

class acymailingUninstall{
	var $db;

	function __construct(){
		$this->db = JFactory::getDBO();
	}

	function message(){
		?>
		You uninstalled the AcyMailing component.<br/>
		AcyMailing also unpublished the modules attached to the component.<br/><br/>
		If you want to completely uninstall AcyMailing, please select all the AcyMailing modules and plugins and uninstall them from the Joomla Extensions Manager.<br/>
		Then execute this query via phpMyAdmin to remove all AcyMailing data:<br/><br/>
		DROP TABLE <?php
		$this->db->setQuery("SHOW TABLES LIKE '".$this->db->getPrefix()."acymailing%' ");
		if(version_compare(JVERSION, '3.0.0', '>=')){
			echo implode(' , ', $this->db->loadColumn());
		}else{
			echo implode(' , ', $this->db->loadResultArray());
		}

		?>;<br/><br/>
		If you DO NOT execute the query, you will be able to install AcyMailing again without losing data.<br/>
		Please note that you don't have to uninstall AcyMailing to install a new version, simply install the new one without uninstalling your current version.
		<?php
	}

	function unpublishModules(){
		$this->db->setQuery("UPDATE `#__modules` SET `published` = 0 WHERE `module` LIKE '%acymailing%'");
		$this->db->query();
	}
}
logs/index.html000060400000000054152455705230007510 0ustar00<html><body bgcolor="#FFFFFF"></body></html>logs/.htaccess000060400000000036152455705230007311 0ustar00Order deny,allow
Deny from alltypes/creatorfilter.php000060400000002742152455705230011277 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class creatorfilterType extends acymailingClass{
	var $type = '';
	function load($table){
		$query = 'SELECT COUNT(*) as total,userid FROM '.acymailing_table($table).' WHERE `userid` > 0';
		if(!empty($this->type)) $query .= ' AND `type` = '.acymailing_escapeDB($this->type);
		$query .= ' GROUP BY userid';
		$allusers = acymailing_loadObjectList($query, 'userid');

		$allnames = array();
		if(!empty($allusers)){
			$allnames = acymailing_loadObjectList('SELECT '.$this->cmsUserVars->name.' AS name, '.$this->cmsUserVars->id.' AS id FROM '.acymailing_table($this->cmsUserVars->table, false).' WHERE '.$this->cmsUserVars->id.' IN ('.implode(',',array_keys($allusers)).') ORDER BY '.$this->cmsUserVars->name.' ASC', 'id');
		}

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_CREATORS'));
		foreach($allnames as $userid => $oneCreator){
			$this->values[] = acymailing_selectOption($userid, $oneCreator->name.' ( '.$allusers[$userid]->total.' )' );
		}
	}

	function display($map,$value,$table){
		$this->load($table);
		return acymailing_select(  $this->values, $map, 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
types/statusquick.php000060400000002137152455705230011010 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class statusquickType extends acymailingClass{
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('JOOMEXT_RESET'));
		$this->values[] = acymailing_selectOption('1', acymailing_translation('SUBSCRIBE_ALL'));

		$js = "function updateStatus(statusval){".
			'var i=0;'.
			"while(window.document.getElementById('status'+i+statusval)){";
		if(ACYMAILING_J30){
			$js .= 'jQuery("label[for=status"+i+statusval+"]").click();';
		}
		$js .= "window.document.getElementById('status'+i+statusval).checked = true;";
		$js .= 'i++;}'.
		'}';
		acymailing_addScript(true, $js);
	}

	function display($map){
		return acymailing_radio($this->values, $map , 'class="radiobox" size="1" onclick="updateStatus(this.value)"', 'value', 'text', '','status_all');
	}
}
types/index.html000060400000000054152455705230007710 0ustar00<html><body bgcolor="#FFFFFF"></body></html>types/editor.php000060400000002251152455705230007713 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class editorType extends acymailingClass{

	function __construct(){
		parent::__construct();
		if(!ACYMAILING_J16){
			$query = 'SELECT DISTINCT element,name FROM '.acymailing_table('plugins',false).' WHERE folder=\'editors\' AND published=1 ORDER BY ordering ASC, name ASC';
 		}else{
			$query = 'SELECT element,name FROM '.acymailing_table('extensions',false).' WHERE folder=\'editors\' AND enabled=1 AND type=\'plugin\' ORDER BY ordering ASC, name ASC';
		}

		$joomEditors = acymailing_loadObjectList($query);

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ACY_DEFAULT'));
		if(!empty($joomEditors)){
			foreach($joomEditors as $myEditor){
				$this->values[] = acymailing_selectOption($myEditor->element, $myEditor->name);
			}
		}
	}

	function display($map,$value){
		return acymailing_select($this->values, $map , 'size="1"', 'value', 'text', $value);
	}

}
types/statusfilterlist.php000060400000002113152455705230012047 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class statusfilterlistType extends acymailingClass{
	var $extra = '';
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption('1', acymailing_translation('SUBSCRIBERS'));
		$this->values[] = acymailing_selectOption('2', acymailing_translation('PENDING_SUBSCRIPTION'));
		$this->values[] = acymailing_selectOption('-1', acymailing_translation('UNSUBSCRIBERS'));
		$this->values[] = acymailing_selectOption('-2', acymailing_translation('NO_SUBSCRIPTION'));
	}

	function display($map,$value,$submit = true){
		$onChange = $submit ? 'onchange="document.adminForm.limitstart.value=0;document.adminForm.submit( );"' : '';
		return acymailing_select(  $this->values, $map, 'class="inputbox" size="1" '.$onChange.' '.$this->extra, 'value', 'text', (int) $value );
	}
}
types/authorname.php000060400000001410152455705230010564 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class authornameType extends acymailingClass{
	var $onclick = "updateTag();";
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption("|author", acymailing_translation('JOOMEXT_YES'));
		$this->values[] = acymailing_selectOption("", acymailing_translation('JOOMEXT_NO'));

	}

	function display($map,$value){
		return acymailing_radio($this->values, $map , 'size="1" onclick="'.$this->onclick.'"', 'value', 'text', (string) $value);
	}

}
types/delay.php000060400000010117152455705230007523 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class delayType extends acymailingClass{
	var $values = array();
	var $num = 0;
	var $onChange = '';

	function __construct(){
		parent::__construct();

		static $i = 0;
		$i++;
		$this->num = $i;

		$js = "function updateDelay".$this->num."(){";
			$js .= "delayvar = window.document.getElementById('delayvar".$this->num."');";
			$js .= "delaytype = window.document.getElementById('delaytype".$this->num."').value;";
			$js .= "delayvalue = window.document.getElementById('delayvalue".$this->num."');";
			$js .= "realValue = delayvalue.value;";
			$js .= "if(delaytype == 'minute'){realValue = realValue*60; }";
			$js .= "if(delaytype == 'hour'){realValue = realValue*3600; }";
			$js .= "if(delaytype == 'day'){realValue = realValue*86400; }";
			$js .= "if(delaytype == 'week'){realValue = realValue*604800; }";
			$js .= "if(delaytype == 'month'){realValue = realValue*2592000; }";
			$js .= "delayvar.value = realValue;";
		$js .= '}';
		acymailing_addScript(true, $js);

	}

	function display($map,$value,$type = 1){
		if($type == 0){
			$this->values[] = acymailing_selectOption('second', acymailing_translation('ACY_SECONDS'));
			$this->values[] = acymailing_selectOption('minute', acymailing_translation('ACY_MINUTES'));
		}elseif($type == 1){
			$this->values[] = acymailing_selectOption('minute', acymailing_translation('ACY_MINUTES'));
			$this->values[] = acymailing_selectOption('hour', acymailing_translation('HOURS'));
			$this->values[] = acymailing_selectOption('day', acymailing_translation('DAYS'));
			$this->values[] = acymailing_selectOption('week', acymailing_translation('WEEKS'));
		}elseif($type == 2){
			$this->values[] = acymailing_selectOption('minute', acymailing_translation('ACY_MINUTES'));
			$this->values[] = acymailing_selectOption('hour', acymailing_translation('HOURS'));
		}elseif($type == 3){
			$this->values[] = acymailing_selectOption('hour', acymailing_translation('HOURS'));
			$this->values[] = acymailing_selectOption('day', acymailing_translation('DAYS'));
			$this->values[] = acymailing_selectOption('week', acymailing_translation('WEEKS'));
			$this->values[] = acymailing_selectOption('month', acymailing_translation('MONTHS'));
		}elseif($type == 4){
			$this->values[] = acymailing_selectOption('week', acymailing_translation('WEEKS'));
			$this->values[] = acymailing_selectOption('month', acymailing_translation('MONTHS'));
		}

		$return = $this->get($value,$type);
		$delayValue = '<input class="inputbox" onchange="updateDelay'.$this->num.'();'.$this->onChange.'" type="text" id="delayvalue'.$this->num.'" style="width:50px" value="'.$return->value.'" /> ';
		$delayVar = '<input type="hidden" name="'.$map.'" id="delayvar'.$this->num.'" value="'.$value.'"/>';
		return $delayValue.acymailing_select(  $this->values, 'delaytype'.$this->num, 'class="inputbox" size="1" style="width:100px" onchange="updateDelay'.$this->num.'();'.$this->onChange.'"', 'value', 'text', $return->type ,'delaytype'.$this->num).$delayVar;
	}

	function get($value,$type){

		$return = new stdClass();

		$return->value = $value;
		if($type == 0){
			$return->type = 'second';
		}else{
			$return->type = 'minute';
		}

		if($return->value >= 60  AND $return->value%60 == 0){
			$return->value = (int) $return->value / 60;
			$return->type = 'minute';
			if($type != 0 AND $return->value >=60 AND $return->value%60 == 0){
				$return->type = 'hour';
				$return->value = $return->value / 60;
				if($type != 2 AND $return->value >=24 AND $return->value%24 == 0){
					$return->type = 'day';
					$return->value = $return->value / 24;
					if($type >= 3 AND $return->value >=30 AND $return->value%30 == 0){
						$return->type = 'month';
						$return->value = $return->value / 30;
					}elseif($return->value >=7 AND $return->value%7 == 0){
						$return->type = 'week';
						$return->value = $return->value / 7;
					}
				}
			}
		}

		return $return;

	}

}
types/operators.php000060400000004356152455705230010453 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class operatorsType extends acymailingClass{
	var $extra = '';
	function __construct(){
		parent::__construct();

		$this->values = array();

		$this->values[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('ACY_NUMERIC'));
		$this->values[] = acymailing_selectOption('=', '=');
		$this->values[] = acymailing_selectOption('!=', '!=');
		$this->values[] = acymailing_selectOption('>', '>');
		$this->values[] = acymailing_selectOption('<', '<');
		$this->values[] = acymailing_selectOption('>=', '>=');
		$this->values[] = acymailing_selectOption('<=', '<=');
		$this->values[] = acymailing_selectOption('</OPTGROUP>');
		$this->values[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('ACY_STRING'));
		$this->values[] = acymailing_selectOption('BEGINS', acymailing_translation('ACY_BEGINS_WITH'));
		$this->values[] = acymailing_selectOption('END', acymailing_translation('ACY_ENDS_WITH'));
		$this->values[] = acymailing_selectOption('CONTAINS', acymailing_translation('ACY_CONTAINS'));
		$this->values[] = acymailing_selectOption('NOTCONTAINS', acymailing_translation('ACY_NOT_CONTAINS'));
		$this->values[] = acymailing_selectOption('LIKE', 'LIKE');
		$this->values[] = acymailing_selectOption('NOT LIKE', 'NOT LIKE');
		$this->values[] = acymailing_selectOption('REGEXP', 'REGEXP');
		$this->values[] = acymailing_selectOption('NOT REGEXP', 'NOT REGEXP');
		$this->values[] = acymailing_selectOption('</OPTGROUP>');
		$this->values[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('OTHER'));
		$this->values[] = acymailing_selectOption('IS NULL', 'IS NULL');
		$this->values[] = acymailing_selectOption('IS NOT NULL', 'IS NOT NULL');
		$this->values[] = acymailing_selectOption('</OPTGROUP>');

	}

	function display($map, $valueSelected = '', $otherClass = ''){
		return acymailing_select($this->values, $map, 'class="inputbox'. (!empty($otherClass)?' '.$otherClass:'') .'" size="1" style="width:120px;" '.$this->extra, 'value', 'text', $valueSelected);
	}

}
types/statusfilter.php000060400000003303152455705230011155 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class statusfilterType extends acymailingClass{
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_STATUS'));
		$this->values[] = acymailing_selectOption( '<OPTGROUP>', acymailing_translation( 'ACCEPT_REFUSE' ));
		$this->values[] = acymailing_selectOption('1', acymailing_translation('ACCEPT_EMAIL'));
		$this->values[] = acymailing_selectOption('-1', acymailing_translation('REFUSE_EMAIL'));
		$this->values[] = acymailing_selectOption( '</OPTGROUP>');
		$config = acymailing_config();
		if($config->get('require_confirmation',0)){
			$this->values[] = acymailing_selectOption( '<OPTGROUP>', acymailing_translation( 'SUBSCRIPTION' ));
			$this->values[] = acymailing_selectOption('2', acymailing_translation('PENDING_SUBSCRIPTION'));
			$this->values[] = acymailing_selectOption( '</OPTGROUP>');
		}
		$this->values[] = acymailing_selectOption( '<OPTGROUP>', acymailing_translation( 'ENABLED_DISABLED' ));
		$this->values[] = acymailing_selectOption('3', acymailing_translation('ENABLED'));
		$this->values[] = acymailing_selectOption('-3', acymailing_translation('DISABLED'));
		$this->values[] = acymailing_selectOption( '</OPTGROUP>');
	}

	function display($map,$value){
		return acymailing_select(  $this->values, $map, 'size="1" onchange="document.adminForm.limitstart.value=0;document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
types/detailstatsmail.php000060400000002157152455705230011616 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class detailstatsmailType extends acymailingClass{
	function __construct(){
		parent::__construct();

		$query = 'SELECT b.subject, a.mailid FROM '.acymailing_table('stats').' as a';
		$query .= ' JOIN '.acymailing_table('mail').' as b on a.mailid = b.mailid ORDER BY a.senddate DESC LIMIT 200';
		$emails = acymailing_loadObjectList($query);

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_EMAILS'));
		foreach($emails as $oneMail){
			if(!empty($oneMail->subject)) $oneMail->subject = acyEmoji::Decode($oneMail->subject);
			$this->values[] = acymailing_selectOption($oneMail->mailid, $oneMail->subject );
		}
	}

	function display($map,$value){
		return acymailing_select(  $this->values, $map, 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
types/bounceaction.php000060400000004056152455705230011103 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class bounceactionType extends acymailingClass{
	function __construct(){
		parent::__construct();

		$this->values = array();
		$this->values[] = acymailing_selectOption('noaction', acymailing_translation('DO_NOTHING'));
		$this->values[] = acymailing_selectOption('remove', acymailing_translation('REMOVE_SUB'));
		$this->values[] = acymailing_selectOption('unsub', acymailing_translation('UNSUB_USER'));
		$this->values[] = acymailing_selectOption('sub', acymailing_translation('SUBSCRIBE_USER'));
		$this->values[] = acymailing_selectOption('block', acymailing_translation('BLOCK_USER'));
		$this->values[] = acymailing_selectOption('delete', acymailing_translation('DELETE_USER'));

		$this->config = acymailing_config();
		$this->lists = acymailing_get('type.lists');
		$this->lists->getValues();
		array_shift($this->lists->values);

		$js = "function updateSubAction(num){";
			$js .= "myAction = window.document.getElementById('bounce_action_'+num).value;";
			$js .= "if(myAction == 'sub') {window.document.getElementById('bounce_action_lists_'+num).style.display = '';}else{window.document.getElementById('bounce_action_lists_'+num).style.display = 'none';}";
		$js .= '}';
		acymailing_addScript(true, $js);
	}

	function display($num,$value){
		$js ='document.addEventListener("DOMContentLoaded", function(){ updateSubAction("'.$num.'"); });';
		acymailing_addScript(true, $js);

		$return = acymailing_select(  $this->values, 'config[bounce_action_'.$num.']', 'class="inputbox" size="1" onchange="updateSubAction(\''.$num.'\');"', 'value', 'text', $value ,'bounce_action_'.$num);
		$return .= '<span id="bounce_action_lists_'.$num.'" style="display:none">'.$this->lists->display('config[bounce_action_lists_'.$num.']',$this->config->get('bounce_action_lists_'.$num),false).'</span>';

		return $return;
	}

}
types/charset.php000060400000003561152455705230010063 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class charsetType extends acymailingClass{
	var $addinfo = '';
	function __construct(){
		parent::__construct();
		$charsets = array(
					'BIG5'=>'BIG5',//Iconv,mbstring
					'ISO-8859-1'=>'ISO-8859-1',//Iconv,mbstring
					'ISO-8859-2'=>'ISO-8859-2',//Iconv,mbstring
					'ISO-8859-3'=>'ISO-8859-3',//Iconv,mbstring
					'ISO-8859-4'=>'ISO-8859-4',//Iconv,mbstring
					'ISO-8859-5'=>'ISO-8859-5',//Iconv,mbstring
					'ISO-8859-6'=>'ISO-8859-6',//Iconv,mbstring
					'ISO-8859-7'=>'ISO-8859-7',//Iconv,mbstring
					'ISO-8859-8'=>'ISO-8859-8',//Iconv,mbstring
					'ISO-8859-9'=>'ISO-8859-9',//Iconv,mbstring
					'ISO-8859-10'=>'ISO-8859-10',//Iconv,mbstring
					'ISO-8859-13'=>'ISO-8859-13',//Iconv,mbstring
					'ISO-8859-14'=>'ISO-8859-14',//Iconv,mbstring
					'ISO-8859-15'=>'ISO-8859-15',//Iconv,mbstring
					'ISO-2022-JP'=>'ISO-2022-JP',//mbstring for sure... not sure about Iconv
					'US-ASCII'=>'US-ASCII', //Iconv,mbstring
					'UTF-7'=>'UTF-7',//Iconv,mbstring
					'UTF-8'=>'UTF-8',//Iconv,mbstring
					'UTF-16'=>'UTF-16',//Iconv,mbstring
					'Windows-1251'=>'Windows-1251', //Iconv,mbstring
					'Windows-1252'=>'Windows-1252' //Iconv,mbstring
				);

		if(function_exists('iconv')){
			$charsets['ARMSCII-8'] = 'ARMSCII-8';
			$charsets['ISO-8859-16'] = 'ISO-8859-16';
		}

		$this->charsets = $charsets;

		$this->values = array();
		foreach($charsets as $code => $charset){
			$this->values[] = acymailing_selectOption($code, $charset);
		}

	}

	function display($map,$value){
		return acymailing_select($this->values, $map , 'size="1" style="width:150px;" '.$this->addinfo, 'value', 'text', $value);
	}

}
types/color.php000060400000014004152455705230007542 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class colorType extends acymailingClass{
	function __construct(){
		parent::__construct();

		$this->values = array();

		for($red=0; $red<6;$red++) {
			$rhex = dechex($red * 0x33);
			$rhex = (strlen($rhex) < 2)?"0".$rhex:$rhex;
			for($blue=0; $blue<6;$blue++) {
				$bhex = dechex($blue * 0x33);
				$bhex = (strlen($bhex) < 2)?"0".$bhex:$bhex;
				for($green=0; $green<6;$green++) {
					$ghex = dechex($green * 0x33);
					$ghex = (strlen($ghex) < 2)?"0".$ghex:$ghex;
					$this->values[$red][] = '#'.$rhex.$ghex.$bhex;
				}
			}
		}

		$this->othervalues[] = '#000000';
		$this->othervalues[] = '#111111';
		$this->othervalues[] = '#222222';
		$this->othervalues[] = '#333333';
		$this->othervalues[] = '#444444';
		$this->othervalues[] = '#555555';
		$this->othervalues[] = '#666666';
		$this->othervalues[] = '#777777';
		$this->othervalues[] = '#888888';
		$this->othervalues[]  = '#999999';
		$this->othervalues[]  = '#AAAAAA';
		$this->othervalues[]  = '#BBBBBB';
		$this->othervalues[]  = '#CCCCCC';
		$this->othervalues[]  = '#DDDDDD';
		$this->othervalues[]  = '#EEEEEE';
		$this->othervalues[]  = '#FFFFFF';
		$this->othervalues[]  = '#FF0000';
		$this->othervalues[]  = '#00FFFF';
		$this->othervalues[]  = '#0000FF';
		$this->othervalues[]  = '#0000A0';
		$this->othervalues[]  = '#FF0080';
		$this->othervalues[]  = '#800080';
		$this->othervalues[]  = '#FFFF00';
		$this->othervalues[]  = '#00FF00';
		$this->othervalues[]  = '#FF00FF';
		$this->othervalues[]  = '#FF8040';
		$this->othervalues[]  = '#804000';
		$this->othervalues[]  = '#800000';
		$this->othervalues[]  = '#808000';
		$this->othervalues[]  = '#408080';

	}

	function displayAll($id,$map,$color){
		 $this->jsScript = 'function applyColor'.$id.'(newcolor){document.getElementById(\'color'.$id.'\').value = newcolor; document.getElementById("colordiv'.$id.'").style.display = "none";applyColorExample'.$id.'();}';

		$code = '<input type="text" name="'.$map.'" id="color'.$id.'" onchange=\'applyColorExample'.$id.'()\' class="inputbox" style="width:50px" value="'.htmlspecialchars($color,ENT_COMPAT, 'UTF-8').'" />';
		$code .= ' <input type="text" maxlength="0" style="cursor:pointer;width:50px;background-color:'.htmlspecialchars($color,ENT_COMPAT, 'UTF-8').';" onclick="if(document.getElementById(\'colordiv'.$id.'\').style.display == \'block\'){document.getElementById(\'colordiv'.$id.'\').style.display = \'none\';}else{document.getElementById(\'colordiv'.$id.'\').style.display = \'block\';}" id=\'colorexample'.$id.'\' />';
		$code .= '<div id=\'colordiv'.$id.'\' style=\'display:none;position:absolute;z-index:100;background-color:white;border:1px solid grey\'>'.$this->display($id).'</div>';
		return $code;
	}

	function displayOne($id,$map,$color){

	$this->jsScript = 'function applyColorwysijacolor(newcolor){
							 var myRegex = new RegExp(/([^a-z-])color *:[^;]*(!important)?[^;]*;/i);
							document.getElementById("name_"+currentValueId).style.color = newcolor;
							document.getElementById("colorexamplewysijacolor").style.backgroundColor = newcolor;
							spaced = document.getElementById("style_"+currentValueId).value.substr(0,1);
							if(spaced != " "){
								stringToQuery = \' \' + document.getElementById("style_"+currentValueId).value;
							}
							else{
								stringToQuery = document.getElementById("style_"+currentValueId).value;
							}
							if(stringToQuery.search(myRegex) != -1){
							if(currentValueId.search("tag_h") != -1){
								document.getElementById("style_"+currentValueId).value = stringToQuery.replace(myRegex, "$1"+"color:"+newcolor+" !important;");
							}
							else{
								document.getElementById("style_"+currentValueId).value = stringToQuery.replace(myRegex, "$1"+"color:"+newcolor+";");
							}
							}
							else{
								 if(currentValueId.search("tag_h") != -1){
								document.getElementById("style_"+currentValueId).value = "color:"+newcolor+" !important;" + document.getElementById("style_"+currentValueId).value;
							}
							else{
								document.getElementById("style_"+currentValueId).value = "color:"+newcolor+";" + document.getElementById("style_"+currentValueId).value;
							}
							}
							document.getElementById("colordivwysijacolor").style.display = "none";
							document.getElementById(\'colorexample'.$id.'\').style.backgroundColor = newcolor;
						}';
		$code = ' <input type="text" maxlength="0" style=\'width:17px;height:13px;padding:0px;margin:0px;cursor:pointer;background-color:'.$color.'\' onclick="if(document.getElementById(\'colordivwysijacolor\').style.display == \'block\'){document.getElementById(\'colordivwysijacolor\').style.display = \'none\';}else{document.getElementById(\'colordivwysijacolor\').style.display = \'block\';}" id=\'colorexamplewysijacolor\' />';
		$code .= '<div id=\'colordivwysijacolor\' style=\'display:none;width:300px;position:absolute;background-color:white;border:1px solid grey\'>'.$this->display($id).'</div>';
		return $code;
	}

	function display($id = ''){

		$js =  $this->jsScript;
		$js .= 'function applyColorExample'.$id.'(){document.getElementById(\'colorexample'.$id.'\').style.backgroundColor = document.getElementById(\'color'.$id.'\').value; document.getElementById("colordiv'.$id.'").style.display = "none";}';
		acymailing_addScript(true, $js);


		$text = '<table><tr>';
		foreach($this->othervalues as $oneColor){
			$text .= '<td style="cursor:pointer" width="10" height="10" bgcolor="'.$oneColor.'" onclick="applyColor'.$id.'(\''.$oneColor.'\')"></td>';
		}
		$text .= '</tr></table>';
		$text .= '<table>';
		foreach($this->values as $line){
			$text .= '<tr>';
			foreach($line as $oneColor){
				$text .= '<td style="cursor:pointer" width="10" height="10" bgcolor="'.$oneColor.'" onclick="applyColor'.$id.'(\''.$oneColor.'\')"></td>';
			}
			$text .= '</tr>';
		}
		$text .= '</table>';

		return $text;
	}

}
types/status.php000060400000001657152455705230007761 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class statusType extends acymailingClass{
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption('-1', acymailing_translation('UNSUBSCRIBED'));
		$this->values[] = acymailing_selectOption('0', acymailing_translation('NO_SUBSCRIPTION'));
		$this->values[] = acymailing_selectOption('2', acymailing_translation('PENDING_SUBSCRIPTION'));
		$this->values[] = acymailing_selectOption('1', acymailing_translation('SUBSCRIBED'));
	}

	function display($map,$value){
		static $i = 0;
		return acymailing_radio($this->values, $map , 'class="radiobox" size="1"', 'value', 'text', (int) $value,'status'.$i++);
	}

}
types/deliverstatus.php000060400000002066152455705230011327 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class deliverstatusType extends acymailingClass{

	function __construct(){
		parent::__construct();

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_STATUS'));
		$this->values[] = acymailing_selectOption('open', acymailing_translation('OPEN'));
		$this->values[] = acymailing_selectOption('notopen', acymailing_translation('NOT_OPEN'));
		$this->values[] = acymailing_selectOption('failed', acymailing_translation('FAILED'));
		if(acymailing_level(3)) $this->values[] = acymailing_selectOption('bounce', acymailing_translation('BOUNCES'));

	}

	function display($map,$value){
		return acymailing_select(  $this->values, $map, 'class="inputbox" size="1" style="width:150px;" onchange="document.adminForm.submit( );"', 'value', 'text', $value );
	}
}
types/mailcreator.php000060400000002371152455705230010732 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.0.1
 * @author	acyba.com
 * @copyright	(C) 2009-2015 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class mailcreatorType{
	var $type = 'news';
	function load(){

		$db = JFactory::getDBO();

		$db->setQuery('SELECT COUNT(*) as total,userid FROM #__acymailing_mail WHERE `type` = '.$db->Quote($this->type).' AND `userid` > 0 GROUP BY userid');
		$allusers = $db->loadObjectList('userid');

		$allnames = array();
		if(!empty($allusers)){
			$db->setQuery('SELECT name,id FROM #__users WHERE id IN ('.implode(',',array_keys($allusers)).') ORDER BY name ASC');
			$allnames = $db->loadObjectList('id');
		}

		$this->values = array();
		$this->values[] = JHTML::_('select.option', '0', JText::_('ALL_CREATORS') );
		foreach($allnames as $userid => $oneCreator){
			$this->values[] = JHTML::_('select.option', $userid, $oneCreator->name.' ( '.$allusers[$userid]->total.' )' );
		}
	}

	function display($map,$value){
		$this->load();
		return JHTML::_('select.genericlist',   $this->values, $map, 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
types/contentfilter.php000060400000001755152455705230011315 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class contentfilterType extends acymailingClass{
	var $onclick = 'updateTag();';
	function __construct(){
		parent::__construct();
	}

	function display($map,$value,$label = true,$modified = true){
		$prefix = $label ? '|filter:' : '';
		$this->values = array();
		$this->values[] = acymailing_selectOption("", acymailing_translation('ACY_ALL'));
		$this->values[] = acymailing_selectOption($prefix."created", acymailing_translation('ONLY_NEW_CREATED'));
		if($modified) $this->values[] = acymailing_selectOption($prefix."modify", acymailing_translation('ONLY_NEW_MODIFIED'));
		return acymailing_select($this->values, $map , 'size="1" onchange="'.$this->onclick.'" style="max-width:200px;"', 'value', 'text', (string) $value);
	}
}
types/operatorsin.php000060400000001362152455705230010774 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class operatorsinType extends acymailingClass{
	var $js = '';
	function __construct(){
		parent::__construct();

		$this->values = array();

		$this->values[] = acymailing_selectOption('IN', acymailing_translation('ACY_IN'));
		$this->values[] = acymailing_selectOption('NOT IN', acymailing_translation('ACY_NOT_IN'));

	}

	function display($map){
		return acymailing_select($this->values, $map, 'class="inputbox" size="1" style="width:120px;" '.$this->js, 'value', 'text');
	}

}
types/uploadpict.php000060400000001357152455705230010577 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	4.9.3
 * @author	acyba.com
 * @copyright	(C) 2009-2015 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class uploadpictType{
	function display($map, $mapDelete, $previous){
		$result = '<input type="file" name="pictures['.$mapDelete.']" style="width:auto;"/>';
		if(!empty($previous)){
			$result .='<img src="'.ACYMAILING_LIVE.$previous.'" style="float:left;max-height:50px;margin-right:10px;" />
			<br /><input type="checkbox" name="'.$map.'" value="" id="delete'.$mapDelete.'" /> <label for="delete'.$mapDelete.'">'.JText::_('DELETE_PICT').'</label>';
		}
		return $result;
	}
}
types/frequency.php000060400000022251152455705230010430 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class frequencyType extends acymailingClass{
	var $valuesEvery = array();
	var $valuesFrequency = array();
	var $valuesOnThe = array();
	var $valuesOnTheDay = array();

	var $txtDays = array();
	var $days = array();
	var $txtPos = array();

	function __construct(){
		parent::__construct();
		$this->txtDays = array(acymailing_translation('MONDAY'), acymailing_translation('TUESDAY'), acymailing_translation('WEDNESDAY'), acymailing_translation('THURSDAY'), acymailing_translation('FRIDAY'), acymailing_translation('SATURDAY'), acymailing_translation('SUNDAY'));
		$this->txtPos = array(acymailing_translation('FREQUENCY_FIRST'), acymailing_translation('FREQUENCY_SECOND'), acymailing_translation('FREQUENCY_THIRD'), acymailing_translation('FREQUENCY_LAST'));
		$this->days = array('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday');

		$js = "function updateFrequency(){
					frequencyType = window.document.getElementById('frequencyType');
					everyFields = window.document.getElementById('everyFields');
					onTheFields = window.document.getElementById('onTheFields');
					onField = window.document.getElementById('onField');
					delayvar = window.document.getElementById('delayvar');

					if(frequencyType.value == 'asap'){
						onField.style.display='none';
						everyFields.style.display='none';
						onTheFields.style.display='none';
					}

					if(frequencyType.value == 'onthe'){
						onField.style.display='none';
						everyFields.style.display='none';
						onTheFields.style.display='inline';
					}

					if(frequencyType.value == 'on'){
						onField.style.display='inline';
						everyFields.style.display='none';
						onTheFields.style.display='none';
					}

					if(frequencyType.value == 'every'){
						onField.style.display='none';
						everyFields.style.display='inline';
						onTheFields.style.display='none';
					}
					updateDelay();
				}";

		$js .= "function updateDelay(){
					frequencyType = window.document.getElementById('frequencyType');
					delayvar = window.document.getElementById('delayvar');
					if(frequencyType.value == 'asap'){
						delayvar.value = 0;
					}

					if(frequencyType.value == 'onthe'){
						valuesOnThe = window.document.getElementById('valuesOnThe').value;
						valuesOnTheDay = window.document.getElementById('valuesOnTheDay').value;
						delayvar.value = valuesOnThe+'_'+valuesOnTheDay;
					}

					if(frequencyType.value == 'on'){
						valuesOn = window.document.getElementById('valuesOn');
						selection = [];
						for(var i = 0 ; i < valuesOn.length ; i++){
							if(valuesOn[i].selected) {
								selection.push(valuesOn[i].value);
							}
						}
						delayvar.value = 'on_'+selection.join('_');
					}

					if(frequencyType.value == 'every'){
						delaytype = window.document.getElementById('delaytype').value;
						delayvalue = window.document.getElementById('delayvalue');
						realValue = delayvalue.value;
						if(delaytype == 'minute'){realValue = realValue*60; }
						if(delaytype == 'hour'){realValue = realValue*3600; }
						if(delaytype == 'day'){realValue = realValue*86400; }
						if(delaytype == 'week'){realValue = realValue*604800; }
						if(delaytype == 'month'){realValue = realValue*2592000; }
						delayvar.value = realValue;
					}
				}";

		acymailing_addScript(true, $js);
	}

	function displayFrequency($map, $value, $type = 1){
		$styleEvery = 'style="display:none"';
		$styleOnThe = 'style="display:none"';
		$styleOn = 'style="display:none"';
		$value_array = array('first', 'Monday');
		$weekdays = array();

		if(empty($value) || (!is_numeric($value) && strpos($value, '_') === false)){
			$defaultVal = 'asap';
			$styleEvery = 'style="display:none"';
			$styleOnThe = 'style="display:none"';
			$styleOn = 'style="display:none"';
		}elseif(is_numeric($value)){
			$defaultVal = 'every';
			$styleEvery = '';
		}elseif(strpos($value, 'on_') !== false){
			$defaultVal = 'on';
			$styleOn = '';

			if(ltrim($value, 'on_') != ''){
				$values = explode('_', ltrim($value, 'on_'));
				foreach($values as $oneDay){
					$weekdays[] = acymailing_selectOption($oneDay, acymailing_translation(strtoupper($oneDay)));
				}
			}
		}else{
			$defaultVal = 'onthe';
			$styleOnThe = '';
			$value_array = explode('_', $value);
		}

		$this->valuesFrequency[] = acymailing_selectOption('asap', acymailing_translation('ACY_ASAP'));
		$this->valuesFrequency[] = acymailing_selectOption('onthe', acymailing_translation('ACY_ONTHE'));
		$this->valuesFrequency[] = acymailing_selectOption('on', acymailing_translation('ACY_ON'));
		$this->valuesFrequency[] = acymailing_selectOption('every', acymailing_translation('EVERY'));
		$returnFrequency = acymailing_select($this->valuesFrequency, 'frequencyType', 'class="inputbox" size="1" onchange="updateFrequency();" style="width:160px;vertical-align:top;"', 'value', 'text', $defaultVal);

		$this->valuesEvery[] = acymailing_selectOption('hour', acymailing_translation('HOURS'));
		$this->valuesEvery[] = acymailing_selectOption('day', acymailing_translation('DAYS'));
		$this->valuesEvery[] = acymailing_selectOption('week', acymailing_translation('WEEKS'));
		$this->valuesEvery[] = acymailing_selectOption('month', acymailing_translation('MONTHS'));
		$return = $this->get($value, $type);
		$everyValue = '<input class="inputbox" onchange="updateDelay();" type="text" id="delayvalue" style="width:50px" value="'.$return->value.'" /> ';
		$everyType = acymailing_select($this->valuesEvery, 'delaytype', 'class="inputbox" size="1" style="width:100px" onchange="updateDelay();"', 'value', 'text', $return->type, 'delaytype');
		$everyFields = '<span id="everyFields" '.$styleEvery.'>'.$everyValue.$everyType.'</span>';

		$this->valuesOnThe[] = acymailing_selectOption('first', $this->txtPos[0]);
		$this->valuesOnThe[] = acymailing_selectOption('second', $this->txtPos[1]);
		$this->valuesOnThe[] = acymailing_selectOption('third', $this->txtPos[2]);
		$this->valuesOnThe[] = acymailing_selectOption('last', $this->txtPos[3]);
		$onTheNumber = acymailing_select($this->valuesOnThe, 'valuesOnThe', 'class="inputbox" size="1" onchange="updateDelay();" style="width:80px;"', 'value', 'text', $value_array[0]);

		for($i = 0; $i < 7; $i++){
			$this->valuesOnTheDay[] = acymailing_selectOption($this->days[$i], $this->txtDays[$i]);
		}
		$onTheDay = acymailing_select($this->valuesOnTheDay, 'valuesOnTheDay', 'class="inputbox" size="1" onchange="updateDelay();" style="width:120px;"', 'value', 'text', $value_array[1]);
		$onTheFields = '<span id="onTheFields" '.$styleOnThe.'>'.$onTheNumber.$onTheDay.' '.acymailing_translation('ACY_DAYOFMONTH').'</span>';

		$delayVar = '<input type="hidden" name="'.$map.'" id="delayvar" value="'.$value.'" />';

		$onField = '<span id="onField" '.$styleOn.'>'.acymailing_select($this->valuesOnTheDay, 'valuesOn', 'class="inputbox" size="1" onchange="updateDelay();" multiple style="width:120px;height:70px;"', 'value', 'text', $weekdays).'</span>';


		return $returnFrequency.$onTheFields.$onField.$everyFields.$delayVar;
	}

	function get($value, $type){
		$return = new stdClass();

		if(!is_numeric($value)){
			$return->value = 0;
			$return->type = 'hour';
			return $return;
		}

		$return->value = $value;
		if($type == 0){
			$return->type = 'second';
		}else{
			$return->type = 'minute';
		}

		if($return->value >= 60 AND $return->value % 60 == 0){
			$return->value = (int)$return->value / 60;
			$return->type = 'minute';
			if($type != 0 AND $return->value >= 60 AND $return->value % 60 == 0){
				$return->type = 'hour';
				$return->value = $return->value / 60;
				if($type != 2 AND $return->value >= 24 AND $return->value % 24 == 0){
					$return->type = 'day';
					$return->value = $return->value / 24;
					if($type >= 3 AND $return->value >= 30 AND $return->value % 30 == 0){
						$return->type = 'month';
						$return->value = $return->value / 30;
					}elseif($return->value >= 7 AND $return->value % 7 == 0){
						$return->type = 'week';
						$return->value = $return->value / 7;
					}
				}
			}
		}
		return $return;
	}

	function display($value){
		if(is_numeric($value)){
			if($value == 0){
				return acymailing_translation('ACY_ASAP');
			}else{
				if(empty($value)) return acymailing_translation('ACY_ASAP');
				$type = 'ACY_SECONDS';
				if($value >= 60 AND $value % 60 == 0){
					$value = (int)$value / 60;
					$type = 'ACY_MINUTES';
					if($value >= 60 AND $value % 60 == 0){
						$type = 'HOURS';
						$value = $value / 60;
						if($value >= 24 AND $value % 24 == 0){
							$type = 'DAYS';
							$value = $value / 24;
							if($value >= 30 AND $value % 30 == 0){
								$type = 'MONTHS';
								$value = $value / 30;
							}elseif($value >= 7 AND $value % 7 == 0){
								$type = 'WEEKS';
								$value = $value / 7;
							}
						}
					}
				}
				return acymailing_translation('EVERY').' '.$value.' '.acymailing_translation($type);
			}
		}

		$arrayValue = explode('_', $value);
		return acymailing_translation('ACY_ONTHE').' '.$arrayValue[0].' '.$arrayValue[1].' '.acymailing_translation('ACY_DAYOFMONTH');
	}
}

?>

types/content.php000060400000001712152455705230010100 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class contentType extends acymailingClass{
	var $onclick = 'updateTag();';
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption("|type:title", acymailing_translation('TITLE_ONLY'));
		$this->values[] = acymailing_selectOption("|type:intro", acymailing_translation('INTRO_ONLY'));
		$this->values[] = acymailing_selectOption("|type:text", acymailing_translation('FIELD_TEXT'));
		$this->values[] = acymailing_selectOption("|type:full", acymailing_translation('FULL_TEXT'));
	}

	function display($map,$value){
		return acymailing_radio($this->values, $map , 'size="1" onclick="'.$this->onclick.'"', 'value', 'text', $value);
	}

}
types/testreceiver.php000060400000016157152455705230011143 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class testreceiverType extends acymailingClass{
	function display($selection = '', $group = '', $emails = ''){
		if(empty($emails)) $emails = acymailing_currentUserEmail();

		$js = 'function timeoutAddNewTestAddress(currentValue){
					if(currentValue.length > 1 && ((currentValue.indexOf("@") != -1 && currentValue.slice(-1) == " ") || currentValue.slice(-1) == ";" || currentValue.slice(-1) == ",")){
						currentValue = currentValue.substring(0, currentValue.length - 1);
						setUser(currentValue);
						return;
					}
					setTimeout(function(){addNewTestAddress(currentValue);}, 500);
				}

			function addNewTestAddress(currentValue){';
		if(acymailing_isAdmin()){
			$js .= 'if(currentValue != document.getElementById("message_receivers").value) return;
					var xhr = new XMLHttpRequest();
					xhr.open("GET", "'.acymailing_prepareAjaxURL('subscriber').'&task=getSubscribersByEmail&search="+currentValue);
					xhr.onload = function(){
						document.getElementById("acymailing_divSelectReceiver").style.display = "block";
						document.getElementById("acymailing_receiversTable").innerHTML = xhr.responseText;
						receiversList = document.getElementById("acymailing_receiversTable");
						if(receiversList.getElementsByClassName("row_user").length==0) {
							document.getElementById("acymailing_divSelectReceiver").style.display = "none";
						}
					};
					xhr.send();';
		}
		$js .= '}

			var selected = new Array("'.str_replace(',', '","', $emails).'");
			function setUser(userEmail){
				userEmail = userEmail.replace(/^\s+|\s+$/gm,"");
				if(validateEmail(userEmail, "'.str_replace('"', '\\"', acymailing_translation('SEND_TEST_TO')).'") && selected.indexOf(userEmail) == -1){
					selected.push(userEmail);
					document.getElementById("usersSelected").innerHTML += "<span class=\"selectedUsers\">"+userEmail+"<span class=\"removeUser\" onclick=\"removeUser(this, \'"+userEmail+"\');\"></span></span>";
					document.getElementById("test_emails").value = selected.join(",");
				}
				document.getElementById("message_receivers").value = "";
				document.getElementById("acymailing_divSelectReceiver").style.display = "none";
			}

			function removeUser(element, userEmail){
				var toRemove = element.parentElement;
				toRemove.parentElement.removeChild(toRemove);
				var index = selected.indexOf(userEmail);
				if (index > -1) {
					selected.splice(index, 1);
				}
				document.getElementById("test_emails").value = selected.join(",");
			}

			function showOptions(selection){
				if(selection == "users"){
					document.getElementById("userSelection").style.display = "";
					document.getElementById("groupSelection").style.display = "none";
				}else{
					document.getElementById("userSelection").style.display = "none";
					document.getElementById("groupSelection").style.display = "";
				}
			}

			function myKeyPress(e, value){
				var keynum;

				if(window.event) {
				  keynum = e.keyCode;
				}else if(e.which){
				  keynum = e.which;
				}

				if(keynum == 13){
					setUser(value);
					return false;
				}

				return true;
			}';

		acymailing_addScript(true, $js);
		?>
		<style>
			.removeUser{
				width: 20px;
				background-image: url(<?php echo ACYMAILING_LIVE.'/'.ACYMAILING_MEDIA_FOLDER; ?>/images/closecross.png);
				background-size: cover;
				height: 20px;
				cursor: pointer;
				float: right;
			}

			.selectedUsers{
				background-color: #F5F5F5;
				padding-left: 5px;
				display: inline-block;
				border: solid 1px #C5C4C4;
				border-radius: 4px;
				margin-right: 3px;
				margin-top: 5px;
				line-height: 20px;
			}

			#acymailing_divSelectReceiver td{
				padding: 10px 5px;
			}

			#acymailing_divSelectReceiver{
				position: absolute;
				width: 400px;
				border: solid 1px #D3D3D3;
				z-index: 9999;
				background: white;
				box-shadow: 1px 1px 5px #D5D5DD;
			}

			#acymailing_receiversTable .row_user:hover{
				background-color: #EBEBEB;
				cursor: pointer;
			}

			.row_user{
				border-top: solid 1px #EBEBEB;
			}

			#usersSelected{
				margin-bottom: 2px;
				width: 100%;
				display: block;
			}
		</style>
		<?php
		echo acymailing_getFunctionsEmailCheck();
		if(acymailing_isAdmin()){
			$values = array();
			$values[] = acymailing_selectOption('users', acymailing_translation('ACY_SUBSCRIBER'));
			$values[] = acymailing_selectOption('group', acymailing_translation('ACY_GROUP'));
			echo acymailing_select($values, 'test_selection', 'size="1" style="margin:0;" onchange="showOptions(this.value);"', 'value', 'text', $selection);
		}else{
			echo '<input class="inputbox" type="hidden" id="test_selection" name="test_selection" value="users" />';
		}
		?>
		<div id="userSelection" style="margin-top:5px;<?php if($selection == 'group') echo 'display:none;'; ?>">
			<input onkeypress="return myKeyPress(event, this.value);" style="width:212px;margin:0;" placeholder="<?php echo acymailing_translation('EMAIL_ADDRESS'); ?>..." type="text" id="message_receivers" onkeyup="timeoutAddNewTestAddress(this.value);" class="inputbox" autocomplete="off"/>
			<span id="usersSelected">
				<?php
				$allEmails = explode(',', $emails);
				foreach($allEmails as $oneEmail){
					echo '<span class="selectedUsers">'.htmlspecialchars($oneEmail, ENT_COMPAT, 'UTF-8').'<span class="removeUser" onclick="removeUser(this, \''.htmlspecialchars($oneEmail, ENT_COMPAT, 'UTF-8').'\');"></span></span>';
				}
				?>
			</span>

			<div id="acymailing_divSelectReceiver" style="display:none; overflow-y:scroll !important;">
				<div id="acymailing_receiversTable"></div>
			</div>
			<input class="inputbox" type="hidden" id="test_emails" name="test_emails" value="<?php echo htmlspecialchars($emails, ENT_COMPAT, 'UTF-8'); ?>"/>
		</div>
		<?php
		if(acymailing_isAdmin()){
			if(ACYMAILING_J16){
				$values = acymailing_getGroups();
			}else{
				$values = acymailing_loadObjectList('SELECT ug.id, ug.parent_id, ug.name AS text, COUNT(u.'.$this->cmsUserVars->id.') AS nbusers FROM #__core_acl_aro_groups AS ug LEFT JOIN '.acymailing_table($this->cmsUserVars->table, false).' u ON ug.id = u.gid GROUP BY ug.id');
			}
			$this->cats = array();
			if(!empty($values)){
				foreach($values as $oneCat){
					$this->cats[$oneCat->parent_id][] = $oneCat;
				}
			}
			$this->catvalues = array();
			$this->catvalues[] = acymailing_selectOption(-1, '- - -');
			$this->_handleChildren();
			echo '<div id="groupSelection" style="'.($selection != 'group' ? 'display:none;' : '').'margin-top:5px;">'.acymailing_select($this->catvalues, 'test_group', 'size="1"', 'value', 'text', $group).'</div>';
		}
	}

	private function _handleChildren($parent_id = 0, $level = 0){
		if(empty($this->cats[$parent_id])) return;
		foreach($this->cats[$parent_id] as $cat){
			$addValue = acymailing_selectOption($cat->id, str_repeat(" - - ", $level).$cat->text);
			if($cat->nbusers > 10 || $cat->nbusers == 0) $addValue->disable = true;
			$this->catvalues[] = $addValue;
			$this->_handleChildren($cat->id, $level + 1);
		}
	}
}
types/detailstatsbounce.php000060400000002156152455705230012146 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class detailstatsbounceType extends acymailingClass{
	function display($map, $value){
		$query = 'SELECT DISTINCT bouncerule FROM '.acymailing_table('userstats').' WHERE bouncerule IS NOT NULL';
		$bouncerules = acymailing_loadObjectList($query);
		if(empty($bouncerules)) return '';
		$valueBounce = array();
		$valueBounce[] = acymailing_selectOption(0, acymailing_translation('ALL_RULES'));
		foreach($bouncerules as $oneRule){
			$found = preg_match('#^([A-Z0-9_]*) \[#Uis', $oneRule->bouncerule, $match);
			$text = $found ? str_replace($match[1], acymailing_translation($match[1]), $oneRule->bouncerule) : $oneRule->bouncerule;
			$valueBounce[] = acymailing_selectOption($oneRule->bouncerule, $text);
		}
		return acymailing_select($valueBounce, $map, 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', $value);
	}
}


types/jflanguages.php000060400000005576152455705230010730 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class jflanguagesType extends acymailingClass{
	var $onclick = '';
	var $id = 'jflang';
	var $jid = 'jlang';
	var $sef = false;
	var $multilingue = false;
	var $languages;
	var $found = false;

	function __construct(){
		parent::__construct();
		$this->values = array();

		$defines = ACYMAILING_ROOT.'components'.DS.'com_joomfish'.DS.'helpers'.DS.'defines.php';
		if(file_exists($defines) && ((ACYMAILING_J16 && file_exists(ACYMAILING_ROOT.'libraries'.DS.'joomfish'.DS.'manager.php')) || (!ACYMAILING_J16 && file_exists(ACYMAILING_ROOT.'administrator'.DS.'components'.DS.'com_joomfish'.DS.'classes'.DS.'JoomfishManager.class.php')))){
			include_once($defines);
			if(!ACYMAILING_J16){
				include_once(JOOMFISH_ADMINPATH.DS.'classes'.DS.'JoomfishManager.class.php');
			}else{
				include_once(ACYMAILING_ROOT.'libraries'.DS.'joomfish'.DS.'manager.php');
			}
			$jfManager = JoomFishManager::getInstance();
			$langActive = $jfManager->getActiveLanguages();
			$this->values[] = acymailing_selectOption('', acymailing_translation('DEFAULT_LANGUAGE'));
			foreach($langActive as $oneLanguage){
				$this->values[] = acymailing_selectOption($oneLanguage->shortcode.', '.$oneLanguage->id, $oneLanguage->name);
			}
			$this->found = true;
		}

		$defines = ACYMAILING_ROOT.'components'.DS.'com_falang'.DS.'helpers'.DS.'defines.php';
		if(empty($this->values) && file_exists($defines) && include_once($defines)){
			JLoader::register('FalangManager', FALANG_ADMINPATH.'/classes/FalangManager.class.php');
			$fManager = FalangManager::getInstance();
			$langActive = $fManager->getActiveLanguages();
			$this->values[] = acymailing_selectOption('', acymailing_translation('DEFAULT_LANGUAGE'));
			foreach($langActive as $oneLanguage){
				$this->values[] = acymailing_selectOption($oneLanguage->lang_code.', '.$oneLanguage->lang_id, $oneLanguage->title);
			}
			$this->found = true;
		}

		if(ACYMAILING_J16){
			$this->languages = acymailing_getLanguages(true);
			$this->multilingue = (count($this->languages) > 1);
		}
	}

	function display($map, $value = ''){
		if(empty($this->values)) return '';
		return acymailing_select($this->values, $map, 'size="1" style="max-width:150px" '.$this->onclick, 'value', 'text', $value, $this->id);
	}

	function displayJLanguages($map, $value = ''){
		if(!ACYMAILING_J16 || !$this->multilingue) return '';

		$default = new stdClass();
		$default->name = ' - - - ';
		$default->sef = '';
		$default->language = '';

		array_unshift($this->languages, $default);

		return acymailing_select($this->languages, $map, 'size="1" style="width:150px;" '.$this->onclick, $this->sef ? 'sef' : 'language', 'name', $value, $this->jid);
	}
}
types/categoryfield.php000060400000004355152455705230011255 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class categoryfieldType extends acymailingClass{
	function display($table, $map, $previous){
		$allCats = acymailing_loadObjectList('SELECT DISTINCT category FROM `#__acymailing_'.$table.'` WHERE category NOT LIKE "" ORDER BY category');
		$possibleCats = array();
		$possibleCats[] = acymailing_selectOption('', '- - -');
		$possibleCats[] = acymailing_selectOption('-1', acymailing_translation('ACY_NEW_CATEGORY'));
		if(!empty($allCats)){
			$separator = acymailing_selectOption('-1', '-----------------------------------------');
			$separator->disable = true;
			$possibleCats[] = $separator;
			foreach($allCats as &$oneCat){
				$oneCat->category = htmlspecialchars($oneCat->category);
				$possibleCats[] = acymailing_selectOption($oneCat->category, $oneCat->category);
			}
		}

		$result = acymailing_select($possibleCats, $map, 'onchange="if(this.value == -1){document.getElementById(\'newcategory\').style.display = \'\';}else{document.getElementById(\'newcategory\').style.display = \'none\';}" size="1" style="width:208px;font-size:12px;"', 'value', 'text', htmlspecialchars($previous));
		$result .= '<input type="text" id="newcategory" name="newcategory" class="inputbox" style="display:none;width:200px;"/>';

		return $result;
	}

	function getFilter($table, $map, $previous, $js = ''){
		$allCats = acymailing_loadObjectList('SELECT DISTINCT category FROM '.acymailing_table($table).' WHERE category NOT LIKE "" ORDER BY category');
		$possibleCats = array();
		$possibleCats[] = acymailing_selectOption(0, acymailing_translation('ACY_ALL_CATEGORIES'));
		$catExists = empty($previous);
		if(!empty($allCats)){
			foreach($allCats as &$oneCat){
				$possibleCats[] = acymailing_selectOption($oneCat->category, $oneCat->category);
				if(!$catExists && $oneCat->category == $previous) $catExists = true;
			}
		}
		if(!$catExists) $possibleCats[] = acymailing_selectOption($previous, $previous);

		return acymailing_select($possibleCats, $map, 'size="1"'.$js, 'value', 'text', $previous);
	}
}
types/unsub.php000060400000004306152455705230007564 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class unsubType extends acymailingClass{
	function __construct(){
		parent::__construct();
		$messages = acymailing_loadObjectList('SELECT `subject`, `mailid` FROM '.acymailing_table('mail').' WHERE `type`= \'unsub\'');

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('NO_UNSUB_MESSAGE'));
		foreach($messages as $oneMessage){
			$this->values[] = acymailing_selectOption($oneMessage->mailid, '['.acymailing_translation('ACY_ID').' '.$oneMessage->mailid.'] '.$oneMessage->subject);
		}

		$js = "function changeMessage(idField,value){
			linkEdit = idField+'_edit';
			if(value>0){
				window.document.getElementById(linkEdit).onclick = function(){acymailing.openpopup('".acymailing_completeLink((acymailing_isAdmin() ? '' : 'front')."email&task=edit", true, true)."&mailid='+value, 800, 500);return false;};
				window.document.getElementById(linkEdit).style.display = 'inline';
			}else{
				window.document.getElementById(linkEdit).style.display = 'none';
			}
		}";
		acymailing_addScript(true, $js);

	}

	function display($value){
		$linkEdit = acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'email', true).'&amp;task=edit&amp;type=unsub&amp;mailid='.$value;
		$linkAdd = acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'email', true).'&amp;task=add&amp;type=unsub';
		$style = empty($value) ? 'style="display:none!important;"' : '';
		$text = acymailing_popup($linkEdit, '<img src="'.ACYMAILING_IMAGES.'icons/icon-16-edit.png" alt="'.acymailing_translation('EDIT_EMAIL',true).'"/>', '', 0, 500, 'unsub_edit', $style);
		$text .= acymailing_popup($linkAdd, '<img src="'.ACYMAILING_IMAGES.'icons/icon-16-add.png" alt="'.acymailing_translation('CREATE_EMAIL',true).'"/>', '', 0, 500, 'unsub_add');

		return acymailing_select($this->values, 'data[list][unsubmailid]', 'class="inputbox" size="1" onchange="changeMessage(\'unsub\',this.value);"', 'value', 'text', (int) $value ).$text;
	}
}
types/listcreator.php000060400000002311152455705230010755 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.0.1
 * @author	acyba.com
 * @copyright	(C) 2009-2015 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class listcreatorType{
	function listcreatorType(){

		$db = JFactory::getDBO();

		$db->setQuery('SELECT COUNT(*) as total,userid FROM #__acymailing_list WHERE `type` = "list" AND `userid` > 0 GROUP BY userid');
		$allusers = $db->loadObjectList('userid');

		$allnames = array();
		if(!empty($allusers)){
			$db->setQuery('SELECT name,id FROM #__users WHERE id IN ('.implode(',',array_keys($allusers)).') ORDER BY name ASC');
			$allnames = $db->loadObjectList('id');
		}

		$this->values = array();
		$this->values[] = JHTML::_('select.option', '0', JText::_('ALL_CREATORS') );
		foreach($allnames as $userid => $oneCreator){
			$this->values[] = JHTML::_('select.option', $userid, $oneCreator->name.' ( '.$allusers[$userid]->total.' )' );
		}
	}

	function display($map,$value){
		return JHTML::_('select.genericlist',   $this->values, $map, 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
types/contentorder.php000060400000002155152455705230011136 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	4.9.3
 * @author	acyba.com
 * @copyright	(C) 2009-2015 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class contentorderType{
	var $onclick = 'updateTag();';
	function contentorderType(){
		$this->values = array();
		$this->values[] = JHTML::_('select.option', "|order:id,DESC",JText::_('ACY_ID'));
		$this->values[] = JHTML::_('select.option', "|order:ordering,ASC",JText::_('ACY_ORDERING'));
		$this->values[] = JHTML::_('select.option', "|order:created,DESC",JText::_('CREATED_DATE'));
		$this->values[] = JHTML::_('select.option', "|order:modified,DESC",JText::_('MODIFIED_DATE'));
		$this->values[] = JHTML::_('select.option', "|order:title,ASC",JText::_('FIELD_TITLE'));
		$this->values[] = JHTML::_('select.option', "|order:rand",JText::_('ACY_RANDOM'));
	}

	function display($map,$value){
		return JHTML::_('select.genericlist', $this->values, $map , 'size="1" style="width:150px;" onchange="'.$this->onclick.'"', 'value', 'text', (string) $value);
	}

}
types/festatus.php000060400000001604152455705230010264 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class festatusType extends acymailingClass{
	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[0] = acymailing_selectOption('-1', acymailing_translation('JOOMEXT_NO'));
		$this->values[1] = acymailing_selectOption('1', acymailing_translation('JOOMEXT_YES'));
		$this->values[0]->class = 'btn-danger';
		$this->values[1]->class = 'btn-success';
	}

	function display($map,$value){
		static $i = 0;
		$value = (int) $value;
		$value = ($value >= 1) ? 1 : -1;
		return acymailing_radio($this->values, $map , 'class="radiobox" size="1"', 'value', 'text', (int) $value,'status'.$i++);
	}

}
types/filetree.php000060400000010360152455705230010224 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class filetreeType extends acymailingClass{
	public function display($folders, $currentFolder, $nameInput, $onclickCallBack){
		$tree = array();
		foreach($folders as $root => $children){
			$tree = array_merge($tree, $this->_searchChildren($children, $root));
		}
		echo '<div id="displaytree"><input style="margin:0; cursor:pointer; float: left; height: 20px;" disabled type="text" name="currentPath" id="currentPath" value="'.$currentFolder.'">';
		echo '<button style="margin:0; min-height: 24px;" class="btn"><i class="acyicon-tree"></i></button></div>';
		echo '<div style="display:none" class="tree" id="treefile">'.$this->_displayTree($tree, $currentFolder).'</div>';
		echo '<input type="hidden" name="'.$nameInput.'" id="'.$nameInput.'" value="'.$currentFolder.'">';
		$this->_treeBehavior($nameInput, $onclickCallBack);
	}

	private function _treeBehavior($idHiddenSelected, $onclickCallBack){
		$script = "
		var buttonDisplay = document.getElementById('displaytree');
		buttonDisplay.addEventListener('click', function(event){
			event.preventDefault();
			event.stopPropagation();
			var tree = document.getElementById('treefile');
			tree.style.display = (tree.style.display == 'block') ? 'none' : 'block';
		});

		var items = document.getElementsByClassName('tree-icon');
		for(var i = 0; i < items.length; i++) {
			var item = items[i];
			item.addEventListener('click', function(event) {
				event.preventDefault();
				event.stopPropagation();

				var input = document.getElementById('".$idHiddenSelected."');
				input.value = this.parentNode.dataset.path;

				if(this.parentNode.className.indexOf('tree-closed') != -1) {
					var foldericon = this.getElementsByClassName('acyicon-folder')[0];
					foldericon.className = foldericon.className.replace('acyicon-folder', 'acyicon-folderopen');
					this.parentNode.className = this.parentNode.className.replace('tree-closed', '');
				} else {
					var foldericon = this.getElementsByClassName('acyicon-folderopen')[0];
					foldericon.className = foldericon.className.replace('acyicon-folderopen', 'acyicon-folder');
					this.parentNode.className += ' tree-closed';
				}
			});
		}

		var links = document.getElementsByClassName('tree-child-title');
		for(var i = 0; i < links.length; i++) {
			var link = links[i];
			link.addEventListener('click', function(event) {
				event.preventDefault();
				event.stopPropagation();

				var path = this.parentNode.dataset.path;

				var input = document.getElementById('".$idHiddenSelected."');
				input.value = path;

				input = document.getElementById('currentPath');
				input.value = path;
				".$onclickCallBack."
			});
		}
		";

		echo '<script type="text/javascript">window.addEventListener("load", function() {'.$script.'})</script>';
	}

	private function _searchChildren($folders, $root){
		$tree = array();
		$tree[$root] = array();

		foreach($folders as $folder){
			$folder = trim(str_replace($root, '', $folder), '/\\');
			if(empty($folder)) continue;

			$pathParts = explode('/', $folder);
			$variable = &$tree[$root];
			foreach($pathParts as $pathPart){
				if(empty($variable[$pathPart])) $variable[$pathPart] = array();
				$variable = &$variable[$pathPart];
			}
		}
		return $tree;
	}

	private function _displayTree($tree, $pathValue, $path = ''){
		$results = '';
		$results .= '<ul>';
		foreach($tree as $key => $treeItem){
			$currentPath = (empty($path)) ? $key : $path.'/'.$key;
			if(strpos($pathValue, $currentPath) !== false){
				$extraClass = ($pathValue == $currentPath) ? 'tree-current' : '';
				$icon = 'acyicon-folderopen';
			}else{
				$extraClass = 'tree-closed';
				$icon = 'acyicon-folder';
			}

			if(empty($treeItem)){
				$extraClass .= ' tree-empty';
			}

			$subTree = $this->_displayTree($treeItem, $pathValue, $currentPath);
			$results .= '<li class="tree-child-item '.$extraClass.'" data-path="'.$currentPath.'"><span class="tree-icon"><i class="'.$icon.'"></i></span><span class="tree-child-title">'.$key.'</span>'.$subTree.'</li>';
		}
		$results .= '</ul>';

		return $results;
	}
}
types/titlelink.php000060400000001434152455705230010426 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class titlelinkType extends acymailingClass{
	var $onclick="updateTag();";

	function __construct(){
		parent::__construct();
		$this->values = array();
		$this->values[] = acymailing_selectOption("|link", acymailing_translation('JOOMEXT_YES'));
		$this->values[] = acymailing_selectOption("", acymailing_translation('JOOMEXT_NO'));

	}

	function display($map,$value){
		if(empty($value)) $value = '';
		return acymailing_radio($this->values, $map , 'size="1" onclick="'.$this->onclick.'"', 'value', 'text', $value);
	}

}
types/delaydisp.php000060400000001655152455705230010412 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class delaydispType extends acymailingClass{

	function display($value){

		if(empty($value)) return 0;

		$type = 'ACY_SECONDS';

		if($value >= 60  AND $value%60 == 0){
			$value = (int) $value / 60;
			$type = 'ACY_MINUTES';
			if($value >=60 AND $value%60 == 0){
				$type = 'HOURS';
				$value = $value/ 60;
				if($value >=24 AND $value%24 == 0){
					$type = 'DAYS';
					$value = $value / 24;
					if($value >= 30 AND $value%30 == 0){
						$type = 'MONTHS';
						$value = $value / 30;
					}elseif($value >=7 AND $value%7 == 0){
						$type = 'WEEKS';
						$value = $value / 7;
					}
				}
			}
		}

		return $value.' '.acymailing_translation($type);
	}

}
types/queuemail.php000060400000002322152455705230010413 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class queuemailType extends acymailingClass{
	function __construct(){
		parent::__construct();
		$allmails = acymailing_loadObjectList('SELECT COUNT(*) as total, mailid FROM #__acymailing_queue GROUP BY mailid', 'mailid');

		$subjects = array();
		if(!empty($allmails)){
			$subjects = acymailing_loadObjectList('SELECT mailid,subject FROM #__acymailing_mail WHERE mailid IN ('.implode(',',array_keys($allmails)).') ORDER BY subject ASC', 'mailid');
		}

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_EMAILS'));
		foreach($subjects as $mailid => $oneMail){
			$this->values[] = acymailing_selectOption($mailid, $oneMail->subject.' ( '.$allmails[$mailid]->total.' )' );
		}
	}

	function display($map,$value){
		return acymailing_select(  $this->values, $map, 'class="inputbox" style="max-width:600px;width:auto;" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
types/lists.php000060400000003453152455705230007570 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listsType extends acymailingClass{
	function __construct(){
		parent::__construct();

		$listClass = acymailing_get('class.list');
		$this->data = $listClass->getLists('listid');
	}

	function display($map, $value, $js = true, $clickableCategories = false){
		if(empty($this->values)) $this->getValues($clickableCategories);
		$onchange = $js ? 'onchange="document.adminForm.limitstart.value=0;document.adminForm.submit();"' : '';
		return acymailing_select($this->values, $map, 'class="inputbox" style="max-width:220px" size="1" '.$onchange, 'value', 'text', $value, str_replace(array('[', ']'), array('_', ''), $map));
	}

	function getData(){
		return $this->data;
	}

	function getValues($clickableCategories = false){
		$allCats = array();
		foreach($this->data as $oneList){
			if(empty($oneList->category)) $oneList->category = acymailing_translation('ACY_NO_CATEGORY');
			$allCats[$oneList->category][] = $oneList->listid;
		}

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_LISTS'));
		foreach($allCats as $name => $lists){
			if($clickableCategories){
				$this->values[] = acymailing_selectOption(implode(',', $lists).',', $name);
			}else{
				$this->values[] = acymailing_selectOption('<OPTGROUP>', $name);
			}

			foreach($lists as $listId){
				$this->values[] = acymailing_selectOption($listId, (count($allCats) > 1 ? ' - - ' : '').$this->data[$listId]->name);
			}

			if(!$clickableCategories) $msgType[] = acymailing_selectOption('</OPTGROUP>');
		}
		return $this->values;
	}
}
types/uploadfile.php000060400000002675152455705230010563 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class uploadfileType extends acymailingClass{
	function display($picture, $map, $value, $mapdelete = ''){
		if(!$picture){
			$result = '<input type="hidden" name="'.$map.'[]" id="'.$map.$value.'" />';
			$result .= acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'file', true).'&task=select&id='.$map.$value, acymailing_translation('SELECT'), 'acyupload acymailing_button_grey', 850, 600);
			$result .= '<span id="'.$map.$value.'selection"></span>';
			return $result;
		}

		$result = '<input type="hidden" name="'.$mapdelete.'" id="'.$map.'" />';
		$result .= acymailing_popup(acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'file', true).'&task=select&id='.$map, acymailing_translation('SELECT'), 'acyupload acymailing_button_grey', 850, 600);

		if(empty($value)) $value = ACYMAILING_MEDIA_FOLDER.'/images/emptyimg.png';
		$result .= '<img id="'.$map.'preview" src="'.ACYMAILING_LIVE.$value.'" style="float:left;max-height:50px;margin-right:10px;" />
		<br /><input type="checkbox" name="'.$mapdelete.'" value="delete" id="delete'.$map.'" /> <label for="delete'.$map.'">'.acymailing_translation('DELETE_PICT').'</label>';

		return $result;
	}
}
types/listsmail.php000060400000002533152455705230010431 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class listsmailType extends acymailingClass{
	var $type = 'news';

	function load(){
		$query = 'SELECT a.listid as listid,COUNT(a.mailid) as total FROM `#__acymailing_mail` as c';
		$query .= ' JOIN `#__acymailing_listmail` as a ON a.mailid = c.mailid';
		$query .= ' WHERE c.type = \''.$this->type.'\' GROUP BY a.listid';
		$alllists = acymailing_loadObjectList($query, 'listid');

		$allnames = array();
		if(!empty($alllists)){
			$allnames = acymailing_loadObjectList('SELECT name,listid FROM `#__acymailing_list` WHERE listid IN ('.implode(',',array_keys($alllists)).') ORDER BY ordering ASC', 'listid');
		}

		$this->values = array();
		$this->values[] = acymailing_selectOption('0', acymailing_translation('ALL_LISTS'));
		foreach($allnames as $listid => $oneName){
			$this->values[] = acymailing_selectOption($listid, $oneName->name.' ( '.$alllists[$listid]->total.' )' );
		}
	}

	function display($map,$value){
		$this->load();
		return acymailing_select(  $this->values, $map, 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int) $value );
	}
}
acymailing.xml000060400000005636152455705230007421 0ustar00<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="3.0" method="upgrade">
	<name>AcyMailing</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<level>starter</level>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved.</copyright>
	<description>Manage your Mailing lists, Newsletters, e-mail marketing campaigns</description>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<languages folder="language">
		<language tag="en-GB">en-GB.com_acymailing.ini</language>
	</languages>
	<install>
		<sql>
			<file driver="mysql">tables.sql</file>
			<file driver="mysql" charset="utf8">tables.sql</file>
			<file driver="mysqli">tables.sql</file>
			<file driver="mysqli" charset="utf8">tables.sql</file>
		</sql>
	</install>
	<scriptfile>install.joomla.php</scriptfile>
	<files folder="front">
		<folder>controllers</folder>
		<folder>inc</folder>
		<folder>params</folder>
		<folder>sef_ext</folder>
		<folder>views</folder>
		<filename>acymailing.php</filename>
		<filename>index.html</filename>
		<filename>router.php</filename>
	</files>
	<media folder="media" destination="com_acymailing">
		<folder>css</folder>
		<folder>images</folder>
		<folder>js</folder>
		<folder>templates</folder>
		<filename>index.html</filename>
	</media>
	<administration>
		<files folder="back">
			<folder>classes</folder>
			<folder>controllers</folder>
			<folder>compat</folder>
			<folder>extensions</folder>
			<folder>helpers</folder>
			<folder>logs</folder>
			<folder>types</folder>
			<folder>views</folder>
			<filename>acymailing.php</filename>
			<filename>config.xml</filename>
			<filename>index.html</filename>
			<filename>tables.sql</filename>
		</files>
		<menu img="../media/com_acymailing/images/icons/icon-16-acymailing.png" link="option=com_acymailing">AcyMailing</menu>
		<submenu>
			<menu link="option=com_acymailing&amp;ctrl=subscriber" img="../media/com_acymailing/images/icons/icon-16-users.png">Users</menu>
			<menu link="option=com_acymailing&amp;ctrl=list" img="../media/com_acymailing/images/icons/icon-16-acylist.png">Lists</menu>
			<menu link="option=com_acymailing&amp;ctrl=newsletter" img="../media/com_acymailing/images/icons/icon-16-newsletter.png">Newsletters</menu>
			<menu link="option=com_acymailing&amp;ctrl=template" img="../media/com_acymailing/images/icons/icon-16-acytemplate.png">Templates</menu>
			<menu link="option=com_acymailing&amp;ctrl=queue" img="../media/com_acymailing/images/icons/icon-16-process.png">Queue</menu>
			<menu link="option=com_acymailing&amp;ctrl=stats" img="../media/com_acymailing/images/icons/icon-16-stats.png">Statistics</menu>
			<menu link="option=com_acymailing&amp;ctrl=cpanel" img="../media/com_acymailing/images/icons/icon-16-acyconfig.png">Configuration</menu>
		</submenu>
	</administration>
</extension>
config.xml000060400000001005152455705230006533 0ustar00<?xml version="1.0" encoding="utf-8" ?>
<config>
	<fieldset name="permissions" label="JCONFIG_PERMISSIONS_LABEL" description="JCONFIG_PERMISSIONS_DESC">
		<field name="rules" type="rules" label="JCONFIG_PERMISSIONS_LABEL" filter="rules" component="com_acymailing" section="component">
			<action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" />
			<action name="core.manage" title="JACTION_MANAGE" description="JACTION_MANAGE_COMPONENT_DESC" />
		</field>
	</fieldset>
</config>

tables.sql000060400000033343152455705230006551 0ustar00CREATE TABLE IF NOT EXISTS `#__acymailing_config` (
	`namekey` varchar(200) NOT NULL,
	`value` text,
	PRIMARY KEY (`namekey`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_fields` (
	`fieldid` smallint unsigned NOT NULL AUTO_INCREMENT,
	`fieldname` varchar(250) NOT NULL,
	`namekey` varchar(50) NOT NULL,
	`type` varchar(50) DEFAULT NULL,
	`value` text NOT NULL,
	`published` tinyint unsigned NOT NULL DEFAULT '1',
	`ordering` smallint unsigned DEFAULT '99',
	`options` text,
	`core` tinyint unsigned NOT NULL DEFAULT '0',
	`required` tinyint unsigned NOT NULL DEFAULT '0',
	`backend` tinyint unsigned NOT NULL DEFAULT '1',
	`frontcomp` tinyint unsigned NOT NULL DEFAULT '0',
	`frontform` tinyint unsigned NOT NULL DEFAULT '1',
	`default` longtext DEFAULT NULL,
	`listing` tinyint unsigned DEFAULT NULL,
	`frontlisting` tinyint unsigned NOT NULL DEFAULT '0',
	`frontjoomlaprofile` tinyint unsigned NOT NULL DEFAULT '0',
	`frontjoomlaregistration` tinyint unsigned NOT NULL DEFAULT '0',
	`joomlaprofile` tinyint unsigned NOT NULL DEFAULT '0',
	`access` varchar(250) NOT NULL DEFAULT 'all',
	`fieldcat` int(11) NOT NULL DEFAULT '0',
	`listingfilter` tinyint unsigned NOT NULL DEFAULT '0',
	`frontlistingfilter` tinyint unsigned NOT NULL DEFAULT '0',
	PRIMARY KEY (`fieldid`),
	UNIQUE KEY `namekey` (`namekey`),
	KEY `orderingindex` (`published`,`ordering`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_filter` (
	`filid` mediumint unsigned NOT NULL AUTO_INCREMENT,
	`name` varchar(250) DEFAULT NULL,
	`description` text,
	`published` tinyint unsigned DEFAULT NULL,
	`lasttime` int unsigned DEFAULT NULL,
	`trigger` text,
	`report` text,
	`action` text,
	`filter` text,
	`daycron` int unsigned,
	PRIMARY KEY (`filid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_history` (
	`subid` int unsigned NOT NULL,
	`date` int unsigned NOT NULL,
	`ip` varchar(50) DEFAULT NULL,
	`action` varchar(50) NOT NULL COMMENT 'different actions: created,modified,confirmed',
	`data` text,
	`source` text,
	`mailid` mediumint unsigned DEFAULT NULL,
	PRIMARY KEY `subid` (`subid`,`date`),
	KEY `dateindex` (`date`),
	KEY `actionindex` (`action`,`mailid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_list` (
	`name` varchar(250) NOT NULL,
	`description` text,
	`ordering` smallint unsigned NULL DEFAULT '0',
	`listid` smallint unsigned NOT NULL AUTO_INCREMENT,
	`published` tinyint DEFAULT NULL,
	`userid` int unsigned DEFAULT NULL,
	`alias` varchar(250) DEFAULT NULL,
	`color` varchar(30) DEFAULT NULL,
	`visible` tinyint NOT NULL DEFAULT '1',
	`welmailid` mediumint DEFAULT NULL,
	`unsubmailid` mediumint DEFAULT NULL,
	`type` enum('list','campaign') NOT NULL DEFAULT 'list',
	`access_sub` varchar(250) NOT NULL DEFAULT 'all',
	`access_manage` varchar(250) NOT NULL DEFAULT 'none',
	`languages` varchar(250) NOT NULL DEFAULT 'all',
	`startrule` varchar(50) NOT NULL DEFAULT '0',
	`category` varchar(250) NOT NULL DEFAULT '',
	PRIMARY KEY (`listid`),
	KEY `typeorderingindex` (`type`,`ordering`),
	KEY `useridindex` (`userid`),
	KEY `typeuseridindex` (`type`,`userid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_listcampaign` (
	`campaignid` smallint unsigned NOT NULL,
	`listid` smallint unsigned NOT NULL,
	PRIMARY KEY (`campaignid`,`listid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_listmail` (
	`listid` smallint unsigned NOT NULL,
	`mailid` mediumint unsigned NOT NULL,
	PRIMARY KEY (`listid`,`mailid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_listsub` (
	`listid` smallint unsigned NOT NULL,
	`subid` int unsigned NOT NULL,
	`subdate` int unsigned DEFAULT NULL,
	`unsubdate` int unsigned DEFAULT NULL,
	`status` tinyint NOT NULL,
	PRIMARY KEY (`listid`,`subid`),
	KEY `subidindex` (`subid`),
	KEY `listidstatusindex` (`listid`,`status`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_mail` (
	`mailid` mediumint unsigned NOT NULL AUTO_INCREMENT,
	`subject` varchar(250) NOT NULL,
	`body` longtext NOT NULL,
	`altbody` longtext NOT NULL,
	`published` tinyint DEFAULT '1',
	`senddate` int unsigned DEFAULT NULL,
	`created` int unsigned DEFAULT NULL,
	`lastupdate` int unsigned DEFAULT NULL,
	`userlastupdate` int unsigned DEFAULT NULL,
	`fromname` varchar(250) DEFAULT NULL,
	`fromemail` varchar(250) DEFAULT NULL,
	`replyname` varchar(250) DEFAULT NULL,
	`replyemail` varchar(250) DEFAULT NULL,
	`bccaddresses` varchar(250) DEFAULT NULL,
	`type` enum('news','autonews','followup','unsub','welcome','notification','joomlanotification','action', 'article') NOT NULL DEFAULT 'news',
	`visible` tinyint NOT NULL DEFAULT '1',
	`userid` int unsigned DEFAULT NULL,
	`alias` varchar(250) DEFAULT NULL,
	`attach` text,
	`favicon` text,
	`html` tinyint NOT NULL DEFAULT '1',
	`tempid` smallint NOT NULL DEFAULT '0',
	`key` varchar(200) DEFAULT NULL,
	`frequency` varchar(50) DEFAULT NULL,
	`params` text,
	`sentby` int unsigned DEFAULT NULL,
	`metakey` text,
	`metadesc` text,
	`filter` text,
	`language` varchar(50) NOT NULL DEFAULT '',
	`abtesting` varchar(250) DEFAULT NULL,
	`thumb` varchar(250) DEFAULT NULL,
	`summary` text NOT NULL,
	PRIMARY KEY (`mailid`),
	KEY `senddate` (`senddate`),
	KEY `typemailidindex` (`type`,`mailid`),
	KEY `useridindex` (`userid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_queue` (
	`senddate` int unsigned NOT NULL,
	`subid` int unsigned NOT NULL,
	`mailid` mediumint unsigned NOT NULL,
	`priority` tinyint unsigned DEFAULT '3',
	`try` tinyint unsigned NOT NULL DEFAULT '0',
	`paramqueue` varchar(250) DEFAULT NULL,
	PRIMARY KEY (`subid`,`mailid`),
	KEY `listingindex` (`senddate`,`subid`),
	KEY `mailidindex` (`mailid`),
	KEY `orderingindex` (`priority`,`senddate`,`subid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_rules` (
	`ruleid` smallint unsigned NOT NULL AUTO_INCREMENT,
	`name` varchar(250) NOT NULL,
	`ordering` smallint DEFAULT NULL,
	`regex` text NOT NULL,
	`executed_on` text NOT NULL,
	`action_message` text NOT NULL,
	`action_user` text NOT NULL,
	`published` tinyint unsigned NOT NULL,
	PRIMARY KEY (`ruleid`),
	KEY `ordering` (`published`,`ordering`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_stats` (
	`mailid` mediumint unsigned NOT NULL,
	`senthtml` int unsigned NOT NULL DEFAULT '0',
	`senttext` int unsigned NOT NULL DEFAULT '0',
	`senddate` int unsigned NOT NULL,
	`openunique` mediumint unsigned NOT NULL DEFAULT '0',
	`opentotal` int unsigned NOT NULL DEFAULT '0',
	`bounceunique` mediumint unsigned NOT NULL DEFAULT '0',
	`fail` mediumint unsigned NOT NULL DEFAULT '0',
	`clicktotal` int unsigned NOT NULL DEFAULT '0',
	`clickunique` mediumint unsigned NOT NULL DEFAULT '0',
	`unsub` mediumint unsigned NOT NULL DEFAULT '0',
	`forward` mediumint unsigned NOT NULL DEFAULT '0',
	`bouncedetails` text,
	PRIMARY KEY (`mailid`),
	KEY `senddateindex` (`senddate`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_subscriber` (
	`subid` int unsigned NOT NULL AUTO_INCREMENT,
	`email` varchar(200) NOT NULL,
	`userid` int unsigned NOT NULL DEFAULT '0',
	`name` varchar(250) NOT NULL DEFAULT '',
	`created` int unsigned DEFAULT NULL,
	`confirmed` tinyint NOT NULL DEFAULT '0',
	`enabled` tinyint NOT NULL DEFAULT '1',
	`accept` tinyint NOT NULL DEFAULT '1',
	`ip` varchar(100) DEFAULT NULL,
	`html` tinyint NOT NULL DEFAULT '1',
	`key` varchar(250) DEFAULT NULL,
	`confirmed_date` int unsigned NOT NULL DEFAULT '0',
	`confirmed_ip` varchar(100) DEFAULT NULL,
	`lastopen_date` int unsigned NOT NULL DEFAULT '0',
	`lastopen_ip` varchar(100) DEFAULT NULL,
	`lastclick_date` int unsigned NOT NULL DEFAULT '0',
	`lastsent_date` int unsigned NOT NULL DEFAULT '0',
	`source` varchar(250) NOT NULL DEFAULT '',
	`filterflags` varchar(50) NOT NULL DEFAULT '',
	PRIMARY KEY (`subid`),
	UNIQUE KEY `email` (`email`),
	KEY `userid` (`userid`),
	KEY `queueindex` (`enabled`,`accept`,`confirmed`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_template` (
	`tempid` smallint unsigned NOT NULL AUTO_INCREMENT,
	`name` varchar(250) DEFAULT NULL,
	`description` text,
	`body` longtext,
	`altbody` longtext,
	`header` longtext,
	`created` int unsigned DEFAULT NULL,
	`published` tinyint NOT NULL DEFAULT '1',
	`premium` tinyint NOT NULL DEFAULT '0',
	`ordering` smallint unsigned NULL DEFAULT '0',
	`namekey` varchar(50) NOT NULL,
	`styles` text,
	`subject` varchar(250) DEFAULT NULL,
	`stylesheet` text,
	`fromname` varchar(250) DEFAULT NULL,
	`fromemail` varchar(250) DEFAULT NULL,
	`replyname` varchar(250) DEFAULT NULL,
	`replyemail` varchar(250) DEFAULT NULL,
	`thumb` varchar(250) DEFAULT NULL,
	`readmore` varchar(250) DEFAULT NULL,
	`access` varchar(250) NOT NULL DEFAULT 'all',
	`category` varchar(250) NOT NULL DEFAULT '',
	PRIMARY KEY (`tempid`),
	UNIQUE KEY `namekey` (`namekey`),
	KEY `orderingindex` (`ordering`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_url` (
	`urlid` int unsigned NOT NULL AUTO_INCREMENT,
	`name` varchar(250) NOT NULL,
	`url` text NOT NULL,
	PRIMARY KEY (`urlid`),
	KEY `url` (`url`(250))
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_urlclick` (
	`urlid` int unsigned NOT NULL,
	`mailid` mediumint unsigned NOT NULL,
	`click` smallint unsigned NOT NULL DEFAULT '0',
	`subid` int unsigned NOT NULL,
	`date` int unsigned NOT NULL,
	`ip` varchar(100) DEFAULT NULL,
	PRIMARY KEY (`urlid`,`mailid`,`subid`),
	KEY `dateindex` (`date`),
	KEY `mailidindex` (`mailid`),
	KEY `subidindex` (`subid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_userstats` (
	`mailid` mediumint unsigned NOT NULL,
	`subid` int unsigned NOT NULL,
	`html` tinyint unsigned NOT NULL DEFAULT '1',
	`sent` tinyint unsigned NOT NULL DEFAULT '1',
	`senddate` int unsigned NOT NULL,
	`open` tinyint unsigned NOT NULL DEFAULT '0',
	`opendate` int NOT NULL,
	`bounce` tinyint NOT NULL DEFAULT '0',
	`fail` tinyint NOT NULL DEFAULT '0',
	`ip` varchar(100) DEFAULT NULL,
	`browser` varchar(255) DEFAULT NULL,
	`browser_version` tinyint unsigned DEFAULT NULL,
	`is_mobile` tinyint unsigned DEFAULT NULL,
	`mobile_os` varchar(255) DEFAULT NULL,
	`user_agent` varchar(255) DEFAULT NULL,
	`bouncerule` varchar(255) DEFAULT NULL,
	PRIMARY KEY (`mailid`,`subid`),
	KEY `senddateindex` (`senddate`),
	KEY `subidindex` (`subid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_geolocation` (
	`geolocation_id` int unsigned NOT NULL AUTO_INCREMENT,
	`geolocation_subid` int unsigned NOT NULL DEFAULT '0',
	`geolocation_type` varchar(255) NOT NULL DEFAULT 'subscription',
	`geolocation_ip` varchar(255) NOT NULL DEFAULT '',
	`geolocation_created` int unsigned NOT NULL DEFAULT '0',
	`geolocation_latitude` decimal(9,6) NOT NULL DEFAULT '0.000000',
	`geolocation_longitude` decimal(9,6) NOT NULL DEFAULT '0.000000',
	`geolocation_postal_code` varchar(255) NOT NULL DEFAULT '',
	`geolocation_country` varchar(255) NOT NULL DEFAULT '',
	`geolocation_country_code` varchar(255) NOT NULL DEFAULT '',
	`geolocation_state` varchar(255) NOT NULL DEFAULT '',
	`geolocation_state_code` varchar(255) NOT NULL DEFAULT '',
	`geolocation_city` varchar(255) NOT NULL DEFAULT '',
	`geolocation_continent` varchar(255) NOT NULL DEFAULT '',
	`geolocation_timezone` varchar(255) NOT NULL DEFAULT '',
	PRIMARY KEY (`geolocation_id`),
	KEY `geolocation_type` (`geolocation_subid`, `geolocation_type`),
	KEY `geolocation_ip_created` (`geolocation_ip`, `geolocation_created`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_action` (
	`action_id` int unsigned NOT NULL AUTO_INCREMENT,
	`name` varchar(255) DEFAULT NULL,
	`frequency` int unsigned NOT NULL,
	`nextdate` int unsigned NOT NULL,
	`description` text,
	`server` varchar(255) NOT NULL,
	`port` varchar(50) NOT NULL,
	`connection_method` varchar(10) NOT NULL DEFAULT '0',
	`secure_method` varchar(10) NOT NULL DEFAULT '0',
	`self_signed` tinyint NOT NULL DEFAULT '0',
	`username` varchar(255) NOT NULL,
	`password` varchar(50) NOT NULL,
	`userid` int unsigned DEFAULT NULL,
	`conditions` text,
	`actions` text,
	`report` text,
	`delete_wrong_emails` tinyint NOT NULL DEFAULT 0,
	`senderfrom` tinyint NOT NULL DEFAULT 0,
	`senderto` tinyint NOT NULL DEFAULT 0,
	`published` tinyint NOT NULL DEFAULT '0',
	`ordering` smallint unsigned NULL DEFAULT '0',
	PRIMARY KEY (`action_id`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_forward` (
	`subid` int unsigned NOT NULL,
	`mailid` mediumint unsigned NOT NULL,
	`date` int unsigned NOT NULL,
	`ip` varchar(50) DEFAULT NULL,
	`nbforwarded` int unsigned NOT NULL,
	PRIMARY KEY (`subid`,`mailid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_tag` (
	`tagid` smallint unsigned NOT NULL AUTO_INCREMENT,
	`name` varchar(250) NOT NULL,
	`userid` int unsigned DEFAULT NULL,
	PRIMARY KEY (`tagid`),
	KEY `useridindex` (`userid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;

CREATE TABLE IF NOT EXISTS `#__acymailing_tagmail` (
	`tagid` smallint unsigned NOT NULL,
	`mailid` mediumint unsigned NOT NULL,
	PRIMARY KEY (`tagid`,`mailid`)
) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;compat/compat1.php000060400000001746152455705230010120 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.7.0
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php
jimport( 'joomla.html.parameter' );

class acymailingView extends JView{

}

class acymailingControllerCompat extends JController{

}

function acymailing_loadResultArray(&$db){
	return $db->loadResultArray();
}

function acymailing_loadMootools($loadMootoolsMoreLib = false){
	JHTML::_('behavior.mootools');
}

function acymailing_getColumns($table){
	$db = JFactory::getDBO();
	$allfields = $db->getTableFields($table);
	return reset($allfields);
}

function acymailing_getEscaped($value, $extra = false) {
	$db = JFactory::getDBO();
	return $db->getEscaped($value, $extra);
}

function acymailing_getFormToken() {
	return JUtility::getToken();
}

if(!class_exists('acyParameter')){
	class acyParameter extends JParameter{}
}
compat/index.html000060400000000054152455705230010027 0ustar00<html><body bgcolor="#FFFFFF"></body></html>compat/joomla.php000060400000065742152455705230010043 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

define('ACYMAILING_CMS', 'Joomla!®');
define('ACYMAILING_COMPONENT', 'com_acymailing');
define('ACYMAILING_DEFAULT_LANGUAGE', 'en-GB');

define('ACYMAILING_BASE', rtrim(JPATH_BASE, DS).DS);
define('ACYMAILING_ROOT', rtrim(JPATH_ROOT, DS).DS);
define('ACYMAILING_FRONT', rtrim(JPATH_SITE, DS).DS.'components'.DS.ACYMAILING_COMPONENT.DS);
define('ACYMAILING_BACK', rtrim(JPATH_ADMINISTRATOR, DS).DS.'components'.DS.ACYMAILING_COMPONENT.DS);
define('ACYMAILING_HELPER', ACYMAILING_BACK.'helpers'.DS);
define('ACYMAILING_CLASS', ACYMAILING_BACK.'classes'.DS);
define('ACYMAILING_TYPE', ACYMAILING_BACK.'types'.DS);
define('ACYMAILING_CONTROLLER', ACYMAILING_BACK.'controllers'.DS);
define('ACYMAILING_CONTROLLER_FRONT', ACYMAILING_FRONT.'controllers'.DS);
define('ACYMAILING_MEDIA', ACYMAILING_ROOT.'media'.DS.ACYMAILING_COMPONENT.DS);
define('ACYMAILING_TEMPLATE', ACYMAILING_MEDIA.'templates'.DS);
define('ACYMAILING_LANGUAGE', ACYMAILING_ROOT.'language'.DS);
define('ACYMAILING_INC', ACYMAILING_FRONT.'inc'.DS);

define('ACYMAILING_MEDIA_URL', acymailing_rootURI().'/media/'.ACYMAILING_COMPONENT.'/');
define('ACYMAILING_IMAGES', ACYMAILING_MEDIA_URL.'images/');
define('ACYMAILING_CSS', ACYMAILING_MEDIA_URL.'css/');
define('ACYMAILING_JS', ACYMAILING_MEDIA_URL.'js/');

define('ACYMAILING_MEDIA_FOLDER', 'media/com_acymailing');

$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
define('ACYMAILING_J16', version_compare($jversion, '1.6.0', '>='));
define('ACYMAILING_J25', version_compare($jversion, '2.5.0', '>='));
define('ACYMAILING_J30', version_compare($jversion, '3.0.0', '>='));
define('ACYMAILING_J40', version_compare($jversion, '4.0.0', '>='));

define('ACY_ALLOWRAW', defined('JREQUEST_ALLOWRAW') ? JREQUEST_ALLOWRAW : 2);
define('ACY_ALLOWHTML', defined('JREQUEST_ALLOWHTML') ? JREQUEST_ALLOWHTML : 4);

function acymailing_loadEditor(){
    include_once(rtrim(dirname(__DIR__), DS).DS.'compat'.DS.'joomla.editor.php');
}

function acymailing_getTime($date){
    static $timeoffset = null;
    if($timeoffset === null){
        $timeoffset = acymailing_getCMSConfig('offset');

        if(ACYMAILING_J16){
            $dateC = JFactory::getDate($date, $timeoffset);
            $timeoffset = $dateC->getOffsetFromGMT(true);
        }
    }

    return strtotime($date) - $timeoffset * 60 * 60 + date('Z');
}

function acymailing_fileGetContent($url, $timeout = 10){
    ob_start();
    $data = '';
    if(class_exists('JHttpFactory') && method_exists('JHttpFactory', 'getHttp')) {
        $http = JHttpFactory::getHttp();
        try {
            $response = $http->get($url, array(), $timeout);
        } catch (RuntimeException $e) {
            $response = null;
        }

        if ($response !== null && $response->code === 200) $data = $response->body;
    }

    if(empty($data) && function_exists('curl_exec') && filter_var($url, FILTER_VALIDATE_URL)){
        $conn = curl_init($url);
        curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, true);
        curl_setopt($conn, CURLOPT_FRESH_CONNECT, true);
        curl_setopt($conn, CURLOPT_RETURNTRANSFER, 1);
        if(!empty($timeout)){
            curl_setopt($conn, CURLOPT_TIMEOUT, $timeout);
            curl_setopt($conn, CURLOPT_CONNECTTIMEOUT, $timeout);
        }

        $data = curl_exec($conn);
        if($data === false) echo curl_error($conn);
        curl_close($conn);
    }

    if(empty($data) && function_exists('file_get_contents')){
        if(!empty($timeout)){
            ini_set('default_socket_timeout', $timeout);
        }
        $streamContext = stream_context_create(array('ssl' => array('verify_peer' => false, 'verify_peer_name' => false)));
        $data = file_get_contents($url, false, $streamContext);
    }

    if(empty($data) && function_exists('fopen') && function_exists('stream_get_contents')){
        $handle = fopen($url, "r");
        if(!empty($timeout)){
            stream_set_timeout($handle, $timeout);
        }
        $data = stream_get_contents($handle);
    }
    $warnings = ob_get_clean();

    if(acymailing_isDebug()) echo $warnings;

    return $data;
}

function acymailing_formToken(){
    return JHTML::_('form.token');
}

function acymailing_checkToken(){
    if(ACYMAILING_J40){
        \JSession::checkToken() or die('Invalid Token');;
    }else{
        if(!JRequest::checkToken() && !JRequest::checkToken('get')){
            if(!ACYMAILING_J16) die('Invalid Token');
            JSession::checkToken() || JSession::checkToken('get') || die('Invalid Token');
        }
    }
}

function acymailing_getFormToken() {
    if(ACYMAILING_J30) return JSession::getFormToken().'=1';
    return JUtility::getToken().'=1';
}

function acymailing_translation($key, $jsSafe = false, $interpretBackSlashes = true){
    return JText::_($key, $jsSafe, $interpretBackSlashes);
}

function acymailing_translation_sprintf(){
    $args = func_get_args();
    $return = "return JText::sprintf('".array_shift($args)."'";
    foreach($args as $oneArg){
        $return .= ",'".str_replace("'", "\\'", $oneArg)."'";
    }
    $return .= ');';
    return eval($return);
}

function acymailing_route($url, $xhtml = true, $ssl = null){
    return JRoute::_($url, $xhtml, $ssl);
}

function acymailing_getVar($type, $name, $default = null, $hash = 'default', $mask = 0){
    if(ACYMAILING_J40){
        if($mask & ACY_ALLOWRAW) $type = 'RAW';
        elseif($mask & ACY_ALLOWHTML) $type = 'HTML';

        return JFactory::getApplication()->input->get($name, $default, $type);
    }
    return JRequest::getVar($name, $default, $hash, $type, $mask);
}

function acymailing_setVar($name, $value = null, $hash = 'method', $overwrite = true){
    if(ACYMAILING_J40) return JFactory::getApplication()->input->set($name, $value);
    return JRequest::setVar($name, $value, $hash, $overwrite);
}

function acymailing_raiseError($level, $code, $msg, $info = null){
    return JError::raise($level, $code, $msg, $info);
}

function acymailing_getGroupsByUser($userid = null, $recursive = null){
    if(ACYMAILING_J16){
        if($userid === null){
            $userid = acymailing_currentUserId();
            $recursive = true;
        }

        jimport('joomla.access.access');
        return JAccess::getGroupsByUser($userid, $recursive);
    }

    $my = JFactory::getUser($userid);
    return array($my->gid);
}

function acymailing_getGroups(){
    $groups = acymailing_loadObjectList('SELECT a.*, a.title as text, a.id as value, COUNT(ugm.user_id) AS nbusers FROM #__usergroups AS a LEFT JOIN #__user_usergroup_map ugm ON a.id = ugm.group_id GROUP BY a.id', 'id');
    return $groups;
}

function acymailing_getLanguages($installed = false){
    $result = array();

    $path = acymailing_getLanguagePath(ACYMAILING_ROOT);
    $dirs = acymailing_getFolders($path);

    $languages = acymailing_loadObjectList('SELECT * FROM #__languages', 'lang_code');

    foreach($dirs as $dir){
        if(strlen($dir) != 5 || $dir == "xx-XX") continue;
        if($installed && (empty($languages[$dir]) || $languages[$dir]->published != 1)) continue;

        $xmlFiles = acymailing_getFiles($path.DS.$dir, '^([-_A-Za-z]*)\.xml$');
        $xmlFile = reset($xmlFiles);
        if(empty($xmlFile)){
            $data = array();
        }else{
            if(ACYMAILING_J40){
                $data = \JInstaller::parseXMLInstallFile(ACYMAILING_LANGUAGE.$dir.DS.$xmlFile);
            }else{
                $data = JApplicationHelper::parseXMLLangMetaFile(ACYMAILING_LANGUAGE.$dir.DS.$xmlFile);
            }
        }

        $lang = new stdClass();
        $lang->sef = empty($languages[$dir]) ? null : $languages[$dir]->sef;
        $lang->language = strtolower($dir);
        $lang->name = empty($data['name']) ? (empty($languages[$dir]) ? $dir : $languages[$dir]->title_native) : $data['name'];
        $lang->exists = file_exists(ACYMAILING_LANGUAGE.$dir.DS.$dir.'.com_acymailing.ini');
        $lang->content = empty($languages[$dir]) ? false : $languages[$dir]->published == 1;

        $result[$dir] = $lang;
    }

    return $result;
}

function acymailing_languageFolder($code){
    return ACYMAILING_LANGUAGE.$code.DS;
}

function acymailing_cleanSlug($slug){
    $method = acymailing_getCMSConfig('unicodeslugs', 0) == 1 ? 'stringURLUnicodeSlug' : 'stringURLSafe';
    return JFilterOutput::$method(trim($slug));
}

function acymailing_punycode($email, $method = 'emailToPunycode'){
    if(empty($email) || version_compare(JVERSION, '3.1.2', '<')) return $email;
    $email = JStringPunycode::$method($email);
    return $email;
}

function acymailing_extractArchive($archive, $destination){
    return JArchive::extract($archive, $destination);
}

function acymailing_selectOption($value, $text = '', $optKey = 'value', $optText = 'text', $disable = false){
    return JHTML::_('select.option', $value, $text, $optKey, $optText, $disable);
}

function acymailing_gridID($rowNum, $recId, $checkedOut = false, $name = 'cid', $stub = 'cb'){
    return JHTML::_('grid.id', $rowNum, $recId, $checkedOut, $name, $stub);
}

function acymailing_select($data, $name, $attribs = null, $optKey = 'value', $optText = 'text', $selected = null, $idtag = false, $translate = false){
    return JHTML::_('select.genericlist', $data, $name, $attribs, $optKey, $optText, $selected, $idtag, $translate);
}

function acymailing_radio($data, $name, $attribs = null, $optKey = 'value', $optText = 'text', $selected = null, $idtag = false, $translate = false, $vertical = false){
    $element = class_exists('JHtmlAcyselect') ? 'acyselect' : 'select';
    return JHTML::_($element.'.radiolist', $data, $name, $attribs, $optKey, $optText, $selected, $idtag, $translate, $vertical);
}

function acymailing_calendar($value, $name, $id, $format = '%Y-%m-%d', $attribs = null){
    return JHTML::_('calendar', $value, $name, $id, $format, $attribs);
}

function acymailing_date($input = 'now', $format = null, $tz = true, $gregorian = false){
    return JHTML::_('date', $input, $format, $tz, $gregorian);
}

function acymailing_boolean($name, $attribs = null, $selected = null, $yes = 'JOOMEXT_YES', $no = 'JOOMEXT_NO', $id = false){
    $element = class_exists('JHtmlAcyselect') ? 'acyselect' : 'select';
    return JHTML::_($element.'.booleanlist', $name, $attribs, $selected, $yes, $no, $id);
}

function acymailing_addScript($raw, $script, $type = "text/javascript", $defer = false, $async = false){
    $acyDocument = acymailing_getGlobal('doc');

    if($raw){
        $acyDocument->addScriptDeclaration($script, $type);
    }else{
        $acyDocument->addScript($script, $type, $defer, $async);
    }
}

function acymailing_addStyle($raw, $style, $type = 'text/css', $media = null, $attribs = array()){
    $acyDocument = acymailing_getGlobal('doc');

    if($raw){
        $acyDocument->addStyleDeclaration($style, $type);
    }else{
        $acyDocument->addStyleSheet($style, $type, $media, $attribs);
    }
}

function acymailing_addMetadata($meta, $data, $name = 'name'){
    $acyDocument = acymailing_getGlobal('doc');

    $acyDocument->setMetaData($meta, $data, $name);
}

function acymailing_trigger($method, $args = array()){
    if(ACYMAILING_J40) return \JFactory::getApplication()->triggerEvent($method, $args);

    global $acydispatcher;
    if($acydispatcher === null){
        $acydispatcher = JDispatcher::getInstance();
    }
    return @$acydispatcher->trigger($method, $args);
}

function acymailing_isAdmin(){
    $acyapp = acymailing_getGlobal('app');

    return $acyapp->isAdmin();
}

function acymailing_getUserVar($key, $request, $default = null, $type = 'none'){
    $acyapp = acymailing_getGlobal('app');

    return $acyapp->getUserStateFromRequest($key, $request, $default, $type);
}

function acymailing_getCMSConfig($varname, $default = null){
    if(ACYMAILING_J30) {
        $acyapp = acymailing_getGlobal('app');
        $result = $acyapp->getCfg($varname, $default);
    }else{
        $conf = JFactory::getConfig();
        $val = $conf->getValue('config.'.$varname);

        $result = empty($val) ? $default : $val;
    }

    if ($varname == 'list_limit') {
        $possibilities = array(5, 10, 15, 20, 25, 30, 50, 100);
        $closest = 5;
        foreach ($possibilities as $possibility) {
            if (abs($result - $closest) > abs($result - $possibility)) {
                $closest = $possibility;
            }
        }
        $result = $closest;
    }

    return $result;
}

function acymailing_redirect($url, $msg = '', $msgType = 'message'){
    $acyapp = acymailing_getGlobal('app');

    return $acyapp->redirect($url, $msg, $msgType);
}

function acymailing_getLanguageTag(){
    $acylanguage = JFactory::getLanguage();

    return $acylanguage->getTag();
}

function acymailing_getLanguageLocale(){
    $acylanguage = JFactory::getLanguage();

    return $acylanguage->getLocale();
}

function acymailing_setLanguage($lang){
    $acylanguage = JFactory::getLanguage();

    $acylanguage->setLanguage($lang);
}

function acymailing_baseURI($pathonly = false){
    return JURI::base($pathonly);
}

function acymailing_rootURI($pathonly = false, $path = null){
    return JURI::root($pathonly, $path);
}

function acymailing_generatePassword($length = 8){
    return JUserHelper::genrandompassword($length);
}

function acymailing_currentUserId(){
    $acymy = JFactory::getUser();

    return $acymy->id;
}

function acymailing_currentUserName($userid = null){
    if(!empty($userid)){
        $special = JFactory::getUser($userid);
        return $special->name;
    }

    $acymy = JFactory::getUser();

    return $acymy->name;
}

function acymailing_currentUserEmail($userid = null){
    if(!empty($userid)){
        $special = JFactory::getUser($userid);
        return $special->email;
    }

    $acymy = JFactory::getUser();

    return $acymy->email;
}

function acymailing_authorised($action, $assetname = null){
    $acymy = JFactory::getUser();

    return $acymy->authorise($action, $assetname);
}

function acymailing_loadLanguageFile($extension = 'joomla', $basePath = JPATH_SITE, $lang = null, $reload = false, $default = true){
    $acylanguage = JFactory::getLanguage();

    $acylanguage->load($extension, $basePath, $lang, $reload, $default);
}

function acymailing_getGlobal($type){
    $variables = array(
        'db' => array('acydb', 'getDBO'),
        'doc' => array('acyDocument', 'getDocument'),
        'app' => array('acyapp', 'getApplication')
    );

    global ${$variables[$type][0]};
    if(${$variables[$type][0]} === null){
        $method = $variables[$type][1];
        ${$variables[$type][0]} = JFactory::$method();
    }
    return ${$variables[$type][0]};
}

function acymailing_escapeDB($value){
    $acydb = acymailing_getGlobal('db');

    return $acydb->quote($value);
}

function acymailing_query($query){
    $acydb = acymailing_getGlobal('db');
    $acydb->setQuery($query);

    $method = ACYMAILING_J40 ? 'execute' : 'query';

    $result = $acydb->$method();
    if(!$result) return false;
    return $acydb->getAffectedRows();
}

function acymailing_loadObjectList($query, $key = '', $offset = null, $limit = null){
    $acydb = acymailing_getGlobal('db');

    $acydb->setQuery($query, $offset, $limit);
    return $acydb->loadObjectList($key);
}

function acymailing_loadObject($query){
    $acydb = acymailing_getGlobal('db');

    $acydb->setQuery($query);
    return $acydb->loadObject();
}

function acymailing_loadResult($query){
    $acydb = acymailing_getGlobal('db');

    $acydb->setQuery($query);
    return $acydb->loadResult();
}

function acymailing_loadResultArray($query){
    if(is_string($query)){
        $acydb = acymailing_getGlobal('db');
        $acydb->setQuery($query);
    }else{
        $acydb = $query;
    }

    if(ACYMAILING_J30) return $acydb->loadColumn();
    return $acydb->loadResultArray();
}

function acymailing_getEscaped($value, $extra = false) {
    $acydb = acymailing_getGlobal('db');

    if(ACYMAILING_J30) return $acydb->escape($value, $extra);
    return $acydb->getEscaped($value, $extra);
}

function acymailing_getDBError(){
    $acydb = acymailing_getGlobal('db');

    return $acydb->getErrorMsg();
}

function acymailing_insertObject($table, $element){
    $acydb = acymailing_getGlobal('db');
    $acydb->insertObject($table, $element);

    return $acydb->insertid();
}

function acymailing_insertID(){
    $acydb = acymailing_getGlobal('db');
    return $acydb->insertid();
}

function acymailing_updateObject($table, $element, $pkey){
    $acydb = acymailing_getGlobal('db');
    return $acydb->updateObject($table, $element, $pkey);
}

function acymailing_getColumns($table){
    $acydb = acymailing_getGlobal('db');
    
    if(ACYMAILING_J30) return $acydb->getTableColumns($table);
    $allfields = $acydb->getTableFields($table);
    return reset($allfields);
}

function acymailing_getPrefix(){
    $acydb = acymailing_getGlobal('db');
    return $acydb->getPrefix();
}

function acymailing_getTableList(){
    $acydb = acymailing_getGlobal('db');
    return $acydb->getTableList();
}

function acymailing_completeLink($link, $popup = false, $redirect = false){
    if($popup || acymailing_isNoTemplate()) $link .= '&'.acymailing_noTemplate();
    return acymailing_route('index.php?option='.ACYMAILING_COMPONENT.'&ctrl='.$link, !$redirect);
}

function acymailing_noTemplate(){
    return 'tmpl=component';
}

function acymailing_isNoTemplate(){
    return acymailing_getVar('cmd', 'tmpl') == 'component';
}

function acymailing_setNoTemplate($status = true){
    if($status) acymailing_setVar('tmpl', 'component');
    else acymailing_setVar('tmpl', '');
}

function acymailing_cmsLoaded(){
    defined('_JEXEC') or die('Restricted access');
}

function acymailing_formOptions($order = null, $task = ''){
    echo '<input type="hidden" name="option" value="'.ACYMAILING_COMPONENT.'"/>';
    echo '<input type="hidden" name="task" value="'.$task.'"/>';
    echo '<input type="hidden" name="ctrl" value="'.acymailing_getVar('cmd', 'ctrl', '').'"/>';
    if($order) {
        echo '<input type="hidden" name="boxchecked" value="0"/>';
        echo '<input type="hidden" name="filter_order" value="'.$order->value.'"/>';
        echo '<input type="hidden" name="filter_order_Dir" value="'.$order->dir.'"/>';
    }
    echo acymailing_formToken();
}

function acymailing_enqueueMessage($message, $type = 'success'){
    $result = is_array($message) ? implode('<br/>', $message) : $message;

    if(acymailing_isAdmin()){
        if(ACYMAILING_J30){
            $type = str_replace(array('notice', 'message'), array('info', 'success'), $type);
        }else{
            $type = str_replace(array('message', 'notice', 'warning'), array('info', 'warning', 'error'), $type);
        }
    }else{
        if(ACYMAILING_J30){
            $type = str_replace(array('success', 'info'), array('message', 'notice'), $type);
        }else{
            $type = str_replace(array('success', 'error', 'warning', 'info'), array('message', 'warning', 'notice', 'message'), $type);
        }
    }

    $acyapp = acymailing_getGlobal('app');

    $acyapp->enqueueMessage($result, $type);
}

function acymailing_displayMessages(){
    $acyapp = acymailing_getGlobal('app');
    $messages = $acyapp->getMessageQueue(true);
    if(empty($messages)) return;

    $sorted = array();
    foreach ($messages as $oneMessage) {
        $sorted[$oneMessage['type']][] = $oneMessage['message'];
    }

    foreach ($sorted as $type => $message) {
        acymailing_display($message, $type);
    }
}

function acymailing_editCMSUser($userid){
    return acymailing_route('index.php?option=com_users&view=user&layout=edit&id='.$userid);
}

function acymailing_prepareAjaxURL($url){
    return htmlspecialchars_decode(acymailing_completeLink($url, true));
}

function acymailing_cmsACL(){
    if(!ACYMAILING_J16 || !acymailing_authorised('core.admin', 'com_acymailing')) return '';

    $return = urlencode(base64_encode((string)JUri::getInstance()));
    return '<div class="onelineblockoptions">
        <span class="acyblocktitle">'.acymailing_translation('ACY_JOOMLA_PERMISSIONS').'</span>
        <a class="acymailing_button_grey" style="color:#666;" target="_blank" href="index.php?option=com_config&view=component&component=com_acymailing&path=&return='.$return.'">'.acymailing_translation('JTOOLBAR_OPTIONS').'</a><br/>
    </div>';
}

function acymailing_isDebug(){
    return defined('JDEBUG') && JDEBUG;
}

function acymailing_setPageTitle($title){
    if(empty($title)){
        $title = acymailing_getCMSConfig('sitename');
    }elseif(acymailing_getCMSConfig('sitename_pagetitles', 0) == 1){
        $title = acymailing_translation_sprintf('ACY_JPAGETITLE', acymailing_getCMSConfig('sitename'), $title);
    }elseif(acymailing_getCMSConfig('sitename_pagetitles', 0) == 2){
        $title = acymailing_translation_sprintf('ACY_JPAGETITLE', $title, acymailing_getCMSConfig('sitename'));
    }
    $document = JFactory::getDocument();
    $document->setTitle($title);
}

function acymailing_importPlugin($family, $name = null){
    JPluginHelper::importPlugin($family, $name);
}

function acymailing_getPlugin($type, $name = null){
    return JPluginHelper::getPlugin($type, $name);
}

function acymailing_isPluginEnabled($type, $name = null){
    return JPluginHelper::isEnabled($type, $name);
}

function acymailing_getLanguagePath($basePath = ACYMAILING_BASE, $language = null){
    return JLanguage::getLanguagePath(rtrim($basePath, DS), $language);
}

function acymailing_userEditLink(){
    if(file_exists(ACYMAILING_ROOT.'components'.DS.'com_comprofiler'.DS.'comprofiler.php')){
        $editLink = 'index.php?option=com_comprofiler&task=edit&cid[]=';
    }elseif(!ACYMAILING_J16){
        $editLink = 'index.php?option=com_users&task=edit&cid[]=';
    }else{
        $editLink = 'index.php?option=com_users&task=user.edit&id=';
    }
    return $editLink;
}

function acymailing_filterText($text){
    if(ACYMAILING_J25) return JComponentHelper::filterText($text);
    return $text;
}

function acymailing_checkPluginsFolders(){
    $folders = array(ACYMAILING_ROOT.'plugins' => '', ACYMAILING_ROOT.'plugins'.DS.'user' => '', ACYMAILING_ROOT.'plugins'.DS.'system' => '');
    $results = array('', '', '');
    foreach($folders as $oneFolderToCheck => &$result){
        if(!is_writable($oneFolderToCheck)){
            $writableIssue = true;
            break;
        }
    }
    if(!empty($writableIssue)){
        $results = array();
        foreach($folders as $oneFolderToCheck => &$result){
            $results[] = ' : <span style="color:'.(is_writable($oneFolderToCheck) ? 'green;">OK' : 'red;">Not writable').'</span>';
        }
    }
    $errorPluginTxt = 'Some required AcyMailing plugins have not been installed.<br />Please make sure your plugins folders are writables by checking the user/group permissions:<br />* Joomla / Plugins'.$results[0].'<br />* Joomla / Plugins / User'.$results[1].'<br />* Joomla / Plugins / System'.$results[0].'<br />';
    if(empty($writableIssue)) $errorPluginTxt .= 'Please also empty your plugins cache: System => Clear cache => com_plugins => Delete<br />';
    acymailing_display($errorPluginTxt.'<a href="index.php?option=com_acymailing&amp;ctrl=update&amp;task=install">'.acymailing_translation('ACY_ERROR_INSTALLAGAIN').'</a>', 'warning');
}

function acymailing_askLog($current = true, $message = 'ACY_NOTALLOWED', $type = 'error'){
    $usercomp = ACYMAILING_J16 ? 'com_users' : 'com_user';
    $url = 'index.php?option='.$usercomp.'&view=login';
    if($current) $url .= '&return='.base64_encode(acymailing_currentURL());
    acymailing_redirect($url, acymailing_translation($message), $type);
}

function acymailing_frontendLink($link, $newsletter = true, $popup = false, $complete = false){
    if($complete) $link = 'index.php?option=com_acymailing&ctrl='.$link;

    if($popup) $link .= '&'.acymailing_noTemplate();
    $config = acymailing_config();

    if($config->get('use_sef', 0) && strpos($link, '&ctrl=cron') === false){

        if($newsletter) return '{acyfrontsef}'.$link.'{/acyfrontsef}';

        $sefLink = acymailing_fileGetContent(acymailing_rootURI().'index.php?option=com_acymailing&ctrl=url&task=sef&urls[0]='.base64_encode($link));
        $json = json_decode($sefLink, true);
        if($json == null){
            if(!empty($sefLink) && acymailing_isDebug()) acymailing_enqueueMessage('Error trying to get the sef link: '.$sefLink);
        }else{
            $link = array_shift($json);
            return $link;
        }
    }

    $mainurl = acymailing_mainURL($link);

    return $mainurl.$link;
}

function acymailing_addBreadcrumb($title, $link = ''){
    $acyapp = acymailing_getGlobal('app');
    $pathway = $acyapp->getPathway();
    $pathway->addItem($title, $link);
}

function acymailing_getMenu(){
    global $Itemid;

    $jsite = JFactory::getApplication('site');
    $menus = $jsite->getMenu();
    $menu = $menus->getActive();

    if(empty($menu) && !empty($Itemid)){
        $menus->setActive($Itemid);
        $menu = $menus->getItem($Itemid);
    }
    
    return $menu;
}

function acymailing_getTitle(){
    $document = acymailing_getGlobal('doc');
    return $document->getTitle();
}

jimport('joomla.application.component.controller');
jimport('joomla.application.component.view');

if(ACYMAILING_J30){
    class acymailingBridgeController extends JControllerLegacy{
        function __construct($config = array()){
            parent::__construct($config);
            global $acymailingCmsUserVars;
            $this->cmsUserVars = $acymailingCmsUserVars;
        }
    }

    class acymailingView extends JViewLegacy{
        var $chosen = true;

        function __construct($config = array()){
            parent::__construct($config);
            global $acymailingCmsUserVars;
            $this->cmsUserVars = $acymailingCmsUserVars;
        }

        function display($tpl = null){
            if($this->chosen && acymailing_isAdmin()){
                JHtml::_('formbehavior.chosen', 'select');
            }

            return parent::display($tpl);
        }
    }
}else{
    class acymailingBridgeController extends JController{
        function __construct($config = array()){
            parent::__construct($config);
            global $acymailingCmsUserVars;
            $this->cmsUserVars = $acymailingCmsUserVars;
        }
    }
    class acymailingView extends JView{
        function __construct($config = array()){
            parent::__construct($config);
            global $acymailingCmsUserVars;
            $this->cmsUserVars = $acymailingCmsUserVars;
        }
    }
}

acymailing_boolean('acymailing');
$config = acymailing_config();
if(!ACYMAILING_J40 && ACYMAILING_J30 && (acymailing_isAdmin() || $config->get('bootstrap_frontend', 0))){
    require(ACYMAILING_BACK.'compat'.DS.'bootstrap.php');
}else{
    class JHtmlAcyselect extends JHTMLSelect{
    }
}

global $acymailingCmsUserVars;
$acymailingCmsUserVars = new stdClass();
$acymailingCmsUserVars->table = 'users';
$acymailingCmsUserVars->name = 'name';
$acymailingCmsUserVars->username = 'username';
$acymailingCmsUserVars->id = 'id';
$acymailingCmsUserVars->email = 'email';
$acymailingCmsUserVars->registered = 'registerDate';
$acymailingCmsUserVars->blocked = 'block';
compat/bootstrap.php000060400000013127152455705230010565 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php


JHtml::_('bootstrap.framework');

class JHtmlAcyselect extends JHTMLSelect{
	static $event = false;

	public static function booleanlist($name, $attribs = null, $selected = null, $yes = 'JOOMEXT_YES', $no = 'JOOMEXT_NO', $id = false){
		$arr = array(acymailing_selectOption('0', acymailing_translation($no)), acymailing_selectOption('1', acymailing_translation($yes)));
		$arr[0]->class = 'btn-danger';
		$arr[1]->class = 'btn-success';
		return acymailing_radio($arr, $name, $attribs, 'value', 'text', (int)$selected, $id);
	}

	public static function radiolist($data, $name, $attribs = null, $optKey = 'value', $optText = 'text', $selected = null, $idtag = false, $translate = false, $vertical = false){
		reset($data);
		$backend = acymailing_isAdmin();
		$config = acymailing_config();
		if(!self::$event){
			self::$event = true;
			if($backend){
				acymailing_addScript(true, '
(function($){
	$.propHooks.checked = {
		set: function(elem, value, name) {
			var ret = (elem[ name ] = value);
			$(elem).trigger("change");
			return ret;
		}
	};
})(jQuery);');
			}else{
				acymailing_addScript(true, '
(function($){
if(!window.acyLocal)
	window.acyLocal = {};
window.acyLocal.radioEvent = function(el) {
	var id = $(el).attr("id"), c = $(el).attr("class"), lbl = $("label[for=\"" + id + "\"]");
	if(c !== undefined && c.length > 0)
		lbl.addClass(c);
	lbl.addClass("active");
	$("input[name=\"" + $(el).attr("name") + "\"]").each(function() {
		if($(this).attr("id") != id) {
			c = $(this).attr("class");
			lbl = $("label[for=\"" + $(this).attr("id") + "\"]");
			if(c !== undefined && c.length > 0)
				lbl.removeClass(c);
			lbl.removeClass("active");
		}
	});
}
$(document).ready(function() {
	setTimeout(function() { $(".acyradios .btn-group label").off("click"); }, 200 );
});

})(jQuery);');
			}
		}

		if(is_array($attribs)){
			$attribs = acymailing_arrayToString($attribs);
		}

		if(!$backend){
			$attribs = ' '.$attribs;
			$onclick = '';
			if(strpos($attribs, ' onclick="') !== false || strpos($attribs, 'onclick=\'') !== false){
				$onclick = $attribs;
			}
			if(strpos($attribs, ' style="') !== false){
				$attribs = str_replace(' style="', ' style="display:none;', $attribs);
			}elseif(strpos($attribs, 'style=\'') !== false){
				$attribs = str_replace(' style=\'', ' style=\'display:none;', $attribs);
			}else{
				$attribs .= ' style="display:none;"';
			}
			if(strpos($attribs, ' onchange="') !== false){
				$attribs = str_replace(' onchange="', ' onchange="window.acyLocal.radioEvent(this);', $attribs);
			}elseif(strpos($attribs, 'onchange=\'') !== false){
				$attribs = str_replace(' onchange=\'', ' onchange=\'window.acyLocal.radioEvent(this);', $attribs);
			}else{
				$attribs .= ' onchange="window.acyLocal.radioEvent(this);"';
			}
		}

		$id_text = preg_replace('#[^a-zA-Z0-9]+#mi', '_', str_replace(array('[', ']'), array('_', ''), $idtag ? $idtag : $name));
		$htmlBootstrap2 = '';
		$htmlBootstrap3 = '';
		if($backend){
			$html = '<div class="controls"><fieldset id="'.$id_text.'fieldset" class="radio btn-group'.($vertical ? ' btn-group-vertical' : '').'">';


		}else{
			$html = '<div class="acyradios" id="'.$id_text.'">';
		}

		foreach($data as $obj){
			if(is_string($obj)){
				$html .= $obj;
				continue;
			}

			$k = $obj->$optKey;
			$t = $translate ? acymailing_translation($obj->$optText) : $obj->$optText;
			$id = (isset($obj->id) ? $obj->id : null);

			$active = '';
			$sel = false;
			$extra = $id ? ' id="'.$obj->id.'"' : '';
			$currId = $id_text.$k;
			if(isset($obj->id)){
				$currId = $obj->id;
			}

			if(is_array($selected)){
				foreach($selected as $val){
					$k2 = is_object($val) ? $val->$optKey : $val;
					if($k == $k2){
						$extra .= ' selected="selected"';
						$sel = true;
						break;
					}
				}
			}elseif((string)$k == (string)$selected){
				$extra .= ' checked="checked"';
				$sel = true;
				$active = 'active';
				if(!empty($obj->class)) $active .= ' '.$obj->class;
			}

			if(!empty($obj->class)) $extra .= ' class="'.$obj->class.'"';

			if($backend){
				$html .= "\n\t\n\t".'<input type="radio" name="'.$name.'" id="'.$id_text.$k.'" value="'.$k.'" '.$extra.' '.$attribs.'/>';
				$html .= "\n\t".'<label for="'.$id_text.$k.'">'.$t.'</label>';

			}else{
				if($config->get('bootstrap_frontend') == 2){
					$onclickFinal = str_replace('this.value', "'".$k."'", $onclick);
					$htmlBootstrap3 .= "\n\t".'<label for="'.$currId.'" class="btn btn-primary '.$active.'" '.$onclickFinal.'>';
					$htmlBootstrap3 .= "\n\t".'<input type="radio" name="'.$name.'"'.' id="'.$currId.'"'.$extra.' '.$attribs.' value="'.$k.'" > '.$t.'</label>';
				}else{
					$html .= "\n\t".'<input type="radio" name="'.$name.'"'.' id="'.$currId.'" value="'.$k.'"'.' '.$extra.' '.$attribs.'/>';
					$htmlBootstrap2 .= "\n\t"."\n\t".'<label for="'.$currId.'"'.' class="btn'.($sel ? ' active'.(empty($obj->class) ? '' : ' '.$obj->class) : '').'">'.$t.'</label>';
				}
			}
		}
		if($backend){
			$html .= '</fieldset></div>';
		}else{
			if($config->get('bootstrap_frontend') == 2){
				$html .= "\n".'<div class="btn-group'.($vertical ? ' btn-group-vertical' : '').'" data-toggle="buttons">'.$htmlBootstrap3."\n".'</div>';
			}else{
				$html .= "\n".'<div class="btn-group'.($vertical ? ' btn-group-vertical' : '').'" data-toggle="buttons-radio">'.$htmlBootstrap2."\n".'</div>';
			}
			$html .= "\n".'</div>';
		}
		$html .= "\n";
		return $html;
	}

}
compat/compat3.php000060400000002440152455705230010112 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.7.0
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class acymailingView extends JViewLegacy{

	var $chosen = true;

	function display($tpl = null){
		$app = JFactory::getApplication();
		if($this->chosen && $app->isAdmin()){
			JHtml::_('formbehavior.chosen', 'select');
		}

		return parent::display($tpl);
	}

}

class acymailingControllerCompat extends JControllerLegacy{

}

function acymailing_loadResultArray(&$db){
	return $db->loadColumn();
}

function acymailing_loadMootools($loadMootoolsMoreLib = false){
	JHTML::_('behavior.framework', $loadMootoolsMoreLib);
}

function acymailing_getColumns($table){
	$db = JFactory::getDBO();
	return $db->getTableColumns($table);
}

function acymailing_getEscaped($value, $extra = false) {
	$db = JFactory::getDBO();
	return $db->escape($value, $extra);
}

function acymailing_getFormToken() {
	return JSession::getFormToken();
}

class acyParameter extends JRegistry {

	function get($path, $default = null){
		$value = parent::get($path, 'noval');
		if($value === 'noval') $value = parent::get('data.'.$path,$default);
		return $value;
	}
}
compat/joomla.editor.php000060400000013556152455705230011324 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

use Joomla\CMS\Editor\Editor AS Editor;

class acyeditorHelper{

	var $width = '95%';

	var $height = '600';

	var $cols = 100;

	var $rows = 30;

	var $editor = null;

	var $name = '';

	var $content = '';

	var $editorConfig = array();

	var $editorContent = '';

	function __construct(){
		$config = acymailing_config();
		$this->editor = $config->get('editor', null);
		if(empty($this->editor)) $this->editor = null;
		if(!class_exists('Joomla\CMS\Editor\Editor')){
			$this->myEditor = JFactory::getEditor($this->editor);
		}else{
			if(empty($this->editor)){
				$user = JFactory::getUser();
				$this->editor = $user->getParam('editor', acymailing_getCMSConfig('editor'));
			}
			$this->myEditor = Editor::getInstance($this->editor);
		}
		$this->myEditor->initialise();

		if(ACYMAILING_J16 && $this->editor == 'tinymce'){
			$this->editorConfig['extended_elements'] = 'table[background|cellspacing|cellpadding|width|align|bgcolor|border|style|class|id],tr[background|width|bgcolor|style|class|id|valign],td[background|width|align|bgcolor|valign|colspan|rowspan|height|style|class|id|nowrap]';
		}
	}

	function setTemplate($id){
		if(empty($id)) return;

		$cssurl = acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'template&task=load&tempid='.$id.'&time='.time());

		$classTemplate = acymailing_get('class.template');
		$filepath = $classTemplate->createTemplateFile($id);

		if($this->editor == 'tinymce'){
			$this->editorConfig['content_css_custom'] = $cssurl.'&local=http';
			$this->editorConfig['content_css'] = '0';
		}elseif($this->editor == 'jckeditor' || $this->editor == 'fckeditor'){
			$this->editorConfig['content_css_custom'] = $filepath;
			$this->editorConfig['content_css'] = '0';
			$this->editorConfig['editor_css'] = '0';
		}else{
			$fileurl = ACYMAILING_MEDIA_FOLDER.'/templates/css/template_'.$id.'.css?time='.time();
			$this->editorConfig['custom_css_url'] = $cssurl;
			$this->editorConfig['custom_css_file'] = $fileurl;
			$this->editorConfig['custom_css_path'] = $filepath;
			acymailing_setVar('acycssfile', $fileurl);
		}
	}

	function prepareDisplay(){
		$this->content = htmlspecialchars($this->content, ENT_COMPAT, 'UTF-8');
		ob_start();
		if(!ACYMAILING_J16){
			echo $this->myEditor->display($this->name, $this->content, $this->width, $this->height, $this->cols, $this->rows, array('pagebreak', 'readmore'), $this->editorConfig);
		}else{
			echo $this->myEditor->display($this->name, $this->content, $this->width, $this->height, $this->cols, $this->rows, array('pagebreak', 'readmore'), null, 'com_content', null, $this->editorConfig);
		}

		$this->editorContent = ob_get_clean();
	}


	function setDescription(){
		$this->width = 700;
		$this->height = 200;
		$this->cols = 80;
		$this->rows = 10;
	}

	function setContent($var){
		if(method_exists($this->myEditor, 'setContent')){
			$function = "try{ Joomla.editors.instances['".$this->name."'].setValue(".$var."); }catch(err){alert('Error using the setContent function of the wysiwyg editor')} ";
			$function = "try{".$this->myEditor->setContent($this->name, $var)." }catch(err){".$function."}";
		}else{
			$function = "alert('There is no setContent method defined for this editor');";
		}

		if(!empty($this->editor)){
			if($this->editor == 'jce'){
				return " try{JContentEditor.setContent('".$this->name."', $var ); }catch(err){try{WFEditor.setContent('".$this->name."', $var )}catch(err){".$function."} }";
			}
			if($this->editor == 'fckeditor'){
				return " try{FCKeditorAPI.GetInstance('".$this->name."').SetHTML( $var ); }catch(err){".$function."} ";
			}
			if($this->editor == 'jckeditor'){
				return " try{oEditor.setData(".$var.");}catch(err){(!oEditor) ? CKEDITOR.instances.".$this->name.".setData($var) : oEditor.insertHtml = ".$var.'}';
			}
			if($this->editor == 'ckeditor'){
				return " try{CKEDITOR.instances.".$this->name.".setData( $var ); }catch(err){".$function."} ";
			}
			if($this->editor == 'artofeditor'){
				return " try{CKEDITOR.instances.".$this->name.".setData( $var ); }catch(err){".$function."} ";
			}
			if($this->editor == 'tinymce'){
				return ' try{ Joomla.editors.instances["'.$this->name.'"].setValue('.$var.'); }catch(err){'.$function.'} ';
			}
		}

		return $function;
	}

	function setEditorStylesheet($tempid){
		$cssurl = acymailing_completeLink((acymailing_isAdmin() ? '' : 'front').'template&task=load&time='.time().'&tempid=');

		$function = 'if('.$tempid.' !== 0){
						try{
							setEditorStylesheet(\''.$this->name.'\',\''.$cssurl.'\'+'.$tempid.',\''.ACYMAILING_MEDIA_FOLDER.'/templates/css/template_\'+'.$tempid.'+\'.css\');
						}catch(err){
							var iframe = document.getElementById("'.$this->name.'_ifr");
							if(typeof iframe != undefined && iframe){
								var css = iframe.contentDocument.querySelector(\'link[href*="'.ACYMAILING_MEDIA_FOLDER.'/templates/css/template_"]\');
								if(typeof css != undefined && css){
									css.href = css.href.replace(/template_\d{1,10}.css/, "template_"+'.$tempid.'+".css");
								}else{
									var css = iframe.contentDocument.querySelector(\'link[href*="com_acymailing&ctrl=template&task=load&tempid="]\');
									if(typeof css != undefined && css){
										css.href = css.href.replace(/&tempid=\d{1,10}&time/, "&tempid="+'.$tempid.'+"&time");
									}
								}
							}
						}
					}';

		return $function;
	}

	function getContent(){
		return $this->myEditor->getContent($this->name);
	}

	function display(){
		if(empty($this->editorContent)) $this->prepareDisplay();
		return $this->editorContent;
	}

	function jsCode(){
		return method_exists($this->myEditor, 'save') ? $this->myEditor->save($this->name) : '';
	}

	function jsMethods(){
		return '';
	}

}//endclass
compat/compat2.php000060400000001017152455705230010110 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.7.0
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php
class acyParameter extends JRegistry {

	function get($path, $default = null){
		$value = parent::get($path, 'noval');
		if($value === 'noval') $value = parent::get('data.'.$path,$default);
		return $value;
	}
}
require(dirname(__FILE__).DS.'compat1.php');
install.joomla.php000060400000143631152455705230010217 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

if(version_compare(PHP_VERSION, '5.3.0', '<')){
	echo '<p style="color:red">This version of AcyMailing requires at least PHP 5.3.0, it is time to upgrade the PHP version of your server!</p>';
	exit;
}

function installAcyMailing(){
	$success = true;
	try{
		include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');
	}catch(Exception $e){
		$updateHelper = acymailing_get('helper.update');
		$updateHelper->installTables();
		$success = false;
		if(!function_exists('acymailing_loadResult')) include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');
	}

	acymailing_increasePerf();

	$installClass = new acymailingInstall();
	$installClass->updateJoomailing();
	$installClass->addPref();
	$installClass->updatePref();
	$installClass->updateSQL();
	if($success) $installClass->displayInfo();
}

function uninstallAcyMailing(){
	$uninstallClass = new acymailingUninstall();
	$uninstallClass->unpublishModules();
	$uninstallClass->message();
}

if(!function_exists('com_install')){
	function com_install(){
		return installAcyMailing();
	}
}

if(!function_exists('com_uninstall')){
	function com_uninstall(){
		return uninstallAcyMailing();
	}
}

class com_acymailingInstallerScript{
	function install($parent){
		installAcyMailing();
	}

	function update($parent){
		installAcyMailing();
	}

	function uninstall($parent){
		uninstallAcyMailing();
	}

	function preflight($type, $parent){
		return true;
	}

	function postflight($type, $parent){
		return true;
	}
}


class acymailingInstall{

	var $level = 'starter';
	var $version = '5.9.6';
	var $update = false;
	var $fromLevel = '';
	var $fromVersion = '';
	var $db;

	function __construct(){
		include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');
	}

	function displayInfo(){

		echo '<h1>Please wait... </h1><h2>AcyMailing will now automatically install the Plugins and the Module</h2>';
		$url = 'index.php?option=com_acymailing&ctrl=update&task=install&fromlevel='.$this->fromLevel.'&fromversion='.$this->fromVersion;
		echo '<a href="'.$url.'">Please click here if you are not automatically redirected within 3 seconds</a>';
		echo "<script language=\"javascript\" type=\"text/javascript\">document.location.href='$url';</script>\n";
	}

	function updatePref(){

		try{
			$results = acymailing_loadObjectList("SELECT `namekey`, `value` FROM `#__acymailing_config` WHERE `namekey` IN ('version','level') LIMIT 2", 'namekey');
		}catch(Exception $e){
			$results = null;
		}

		if($results === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			return false;
		}

		if($results['version']->value == $this->version && $results['level']->value == $this->level) return true;

		$this->update = true;
		$this->fromLevel = $results['level']->value;
		$this->fromVersion = $results['version']->value;

		$query = "REPLACE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('level',".acymailing_escapeDB($this->level)."),('version',".acymailing_escapeDB($this->version)."),('installcomplete','0')";
		acymailing_query($query);

		return true;
	}

	function updateSQL(){
		if(!$this->update) return true;
		$config = acymailing_config();


		if(version_compare($this->fromVersion, '1.1.4', '<')){
			$replace1 = "REPLACE(`params`, 'showhtml=1\nshowname=1', 'customfields=name,email,html' )";
			$replace2 = "REPLACE( $replace1 , 'showhtml=0\nshowname=1', 'customfields=name,email' )";
			$replace3 = "REPLACE( $replace2 , 'showhtml=1\nshowname=0', 'customfields=email,html' )";
			$replace4 = "REPLACE( $replace3 , 'showhtml=0\nshowname=0', 'customfields=email' )";
			$this->updateQuery("UPDATE #__modules SET `params`= $replace4 WHERE `module` = 'mod_acymailing' ");
		}

		if(version_compare($this->fromVersion, '1.2.1', '<')){
			$this->updateQuery("UPDATE `#__acymailing_config` SET `value` = 'data' WHERE `value` = '0' AND `namekey` = 'allow_modif' LIMIT 1");
			$this->updateQuery("UPDATE `#__acymailing_config` SET `value` = 'all' WHERE `value` = '1' AND `namekey` = 'allow_modif' LIMIT 1");
		}

		if(version_compare($this->fromVersion, '1.2.2', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `sentby` INT UNSIGNED NULL DEFAULT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `subject` VARCHAR( 250 ) NULL DEFAULT NULL");
			$this->updateQuery("DELETE FROM `#__plugins` WHERE `folder` = 'acymailing' AND `element` = 'autocontent'");
		}

		if(version_compare($this->fromVersion, '1.2.3', '<')){
			$this->updateQuery("UPDATE `#__plugins` SET `folder` = 'system', `element`= 'regacymailing', `name` = 'AcyMailing : (auto)Subscribe during Joomla registration', `params`= REPLACE(`params`, 'lists=', 'autosub=' ) WHERE `folder` = 'user' AND `element` = 'acymailing'");
			$this->updateQuery("DELETE FROM `#__plugins` WHERE `folder` = 'acymailing' AND `element` = 'autocontent'");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `stylesheet` TEXT NULL");

			if(is_dir(ACYMAILING_BACK.'plugins'.DS.'plg_user_acymailing')){
				acymailing_deleteFolder(ACYMAILING_BACK.'plugins'.DS.'plg_user_acymailing');
			}
			if(is_dir(ACYMAILING_BACK.'plugins'.DS.'plg_acymailing_autocontent')){
				acymailing_deleteFolder(ACYMAILING_BACK.'plugins'.DS.'plg_acymailing_autocontent');
			}
		}

		if(version_compare($this->fromVersion, '1.3.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_config` CHANGE `value` `value` TEXT NULL ");

			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `listing` TINYINT NULL DEFAULT NULL ");
			$this->updateQuery("UPDATE `#__acymailing_fields` SET `listing` = 1 WHERE `namekey` IN ('name','email','html') ");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `fromname` VARCHAR( 250 ) NULL , ADD `fromemail` VARCHAR( 250 ) NULL , ADD `replyname` VARCHAR( 250 ) NULL , ADD `replyemail` VARCHAR( 250 ) NULL ");
		}

		if(version_compare($this->fromVersion, '1.5.2', '<')){

			$existingEntry = acymailing_loadResult("SELECT `params` FROM #__plugins WHERE `element` = 'regacymailing' LIMIT 1");
			$listids = 'None';
			if(preg_match('#autosub=(.*)#i', $existingEntry, $autosubResult)){
				$listids = $autosubResult[1];
			}
			$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('autosub',".acymailing_escapeDB($listids).")");
		}

		if(version_compare($this->fromVersion, '1.5.3', '<')){
			$this->updateQuery('UPDATE #__acymailing_config SET `value` = REPLACE(`value`,\'<sup style="font-size: 4px;">TM</sup>\',\'™\')');
		}


		if(version_compare($this->fromVersion, '1.6.2', '<')){

			$this->updateQuery("UPDATE #__acymailing_config SET `value` = 'media/com_acymailing/upload' WHERE `namekey` = 'uploadfolder' AND `value` = 'components/com_acymailing/upload' ");

			$this->updateQuery("UPDATE #__acymailing_config SET `value` = 'media/com_acymailing/logs/report".rand(0, 999999999).".log' WHERE `namekey` = 'cron_savepath' ");

			if(!ACYMAILING_J16){
				$this->updateQuery("UPDATE #__plugins SET `params` = REPLACE(`params`,'components/com_acymailing/images','media/com_acymailing/images') ");
			}else{
				$this->updateQuery("UPDATE #__extensions SET `params` = REPLACE(`params`,'components\/com_acymailing\/images','media\/com_acymailing\/images') ");
			}


			$updateClass = acymailing_get('helper.update');
			$removeFiles = array();
			$removeFiles[] = ACYMAILING_FRONT.'css'.DS.'component_default.css';
			$removeFiles[] = ACYMAILING_FRONT.'css'.DS.'frontendedition.css';
			$removeFiles[] = ACYMAILING_FRONT.'css'.DS.'module_default.css';
			foreach($removeFiles as $oneFile){
				if(is_file($oneFile)) acymailing_deleteFile($oneFile);
			}

			$fromFolders = array();
			$toFolders = array();
			$fromFolders[] = ACYMAILING_FRONT.'css';
			$toFolders[] = ACYMAILING_MEDIA.'css';
			$fromFolders[] = ACYMAILING_FRONT.'templates'.DS.'plugins';
			$toFolders[] = ACYMAILING_MEDIA.'plugins';
			$fromFolders[] = ACYMAILING_FRONT.'upload';
			$toFolders[] = ACYMAILING_MEDIA.'upload';

			foreach($fromFolders as $i => $oneFolder){
				if(!is_dir($oneFolder)) continue;
				if(is_dir($toFolders[$i])){
					$updateClass->copyFolder($oneFolder, $toFolders[$i]);
				}
			}

			$deleteFolders = array();
			$deleteFolders[] = ACYMAILING_FRONT.'css';
			$deleteFolders[] = ACYMAILING_FRONT.'images';
			$deleteFolders[] = ACYMAILING_FRONT.'js';
			$deleteFolders[] = ACYMAILING_BACK.'logs';

			foreach($deleteFolders as $oneFolder){
				if(!is_dir($oneFolder)) continue;
				acymailing_deleteFolder($oneFolder);
			}
		}

		if(version_compare($this->fromVersion, '1.7.1', '<')){
			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_history` (`subid` INT UNSIGNED NOT NULL ,`date` INT UNSIGNED NOT NULL ,`ip` VARCHAR( 50 ) NULL ,
								`action` VARCHAR( 50 ) NOT NULL , `data` TEXT NULL , `source` TEXT NULL , INDEX ( `subid` , `date` ) ) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;");
		}

		if(version_compare($this->fromVersion, '1.7.3', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `metakey` TEXT NULL , ADD `metadesc` TEXT NULL ");
		}

		if(version_compare($this->fromVersion, '1.8.4', '<')){
			$this->updateQuery("UPDATE `#__acymailing_config` as a, `#__acymailing_config` as b SET a.`value` = b.`value` WHERE a.`namekey`= 'queue_nbmail_auto' AND b.`namekey`= 'queue_nbmail' ");
			$this->updateQuery("UPDATE `#__acymailing_mail` SET `body` = CONCAT(`body`,'<p>{survey}</p>') WHERE type = 'notification' AND `alias` IN ('notification_refuse','notification_unsub','notification_unsuball')");
		}

		if(version_compare($this->fromVersion, '1.8.5', '<')){
			$metaFile = ACYMAILING_FRONT.'metadata.xml';
			if(file_exists($metaFile)) acymailing_deleteFile($metaFile);
			$this->updateQuery('ALTER TABLE #__acymailing_url DROP INDEX url');
			$this->updateQuery('ALTER TABLE `#__acymailing_url` CHANGE `url` `url` TEXT NOT NULL');
			$this->updateQuery('ALTER TABLE `#__acymailing_url` ADD INDEX `url` ( `url` ( 250 ) ) ');
			$this->updateQuery("UPDATE `#__acymailing_mail` SET `body` = CONCAT(`body`,'<p>Subscription : {user:subscription}</p>') WHERE type = 'notification' AND `alias` = 'notification_created'");
		}

		if(version_compare($this->fromVersion, '1.9.1', '<')){
			$this->updateQuery('ALTER TABLE `#__acymailing_history` ADD `mailid` MEDIUMINT UNSIGNED NULL');

			$this->updateQuery('CREATE TABLE IF NOT EXISTS `#__acymailing_rules` (
				`ruleid` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
				`name` VARCHAR( 250 ) NOT NULL ,
				`ordering` SMALLINT UNSIGNED NULL ,
				`regex` VARCHAR( 250 ) NOT NULL ,
				`executed_on` TEXT NOT NULL ,
				`action_message` TEXT NOT NULL ,
				`action_user` TEXT NOT NULL ,
				`published` TINYINT UNSIGNED NOT NULL
				)');
			$this->updateQuery("UPDATE `#__acymailing_mail` SET `body` = CONCAT(`body`,'<p>Subscription : {user:subscription}</p>') WHERE type = 'notification' AND `alias` IN ( 'notification_unsuball','notification_refuse','notification_unsub')");
			$this->updateQuery("REPLACE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('auto_bounce','0')");
		}

		if(version_compare($this->fromVersion, '3.0.1', '<')){
			$this->updateQuery('ALTER TABLE `#__acymailing_mail` ADD `filter` TEXT NULL');

			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` CHANGE `userid` `userid` INT UNSIGNED NOT NULL DEFAULT '0'");
		}

		if(version_compare($this->fromVersion, '3.5.1', '<')){
			if(file_exists(ACYMAILING_FRONT.'sef_ext.php')) acymailing_deleteFile(ACYMAILING_FRONT.'sef_ext.php');

			$this->updateQuery("ALTER TABLE `#__acymailing_queue` ADD `paramqueue` VARCHAR( 250 ) NULL ");

			if(!ACYMAILING_J16){
				$this->updateQuery("DELETE FROM `#__plugins` WHERE folder = 'acymailing' AND element LIKE 'tagvm%'");
			}else{
				$this->updateQuery("DELETE FROM `#__extensions` WHERE folder = 'acymailing' AND element LIKE 'tagvm%'");
			}
		}

		if(version_compare($this->fromVersion, '3.6.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_rules` CHANGE `regex` `regex` TEXT NOT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_stats` ADD `bouncedetails` TEXT NULL");
		}

		if(version_compare($this->fromVersion, '3.7.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_userstats` ADD `ip` VARCHAR( 100 ) NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_urlclick` ADD `ip` VARCHAR( 100 ) NULL");
		}

		if(version_compare($this->fromVersion, '3.8.1', '<')){
			$this->updateQuery("UPDATE #__acymailing_mail SET subject = CONCAT(subject,' ','{mainreport}') WHERE type = 'notification' AND alias = 'report' AND subject NOT LIKE '%mainreport%' LIMIT 1");
		}

		if(version_compare($this->fromVersion, '3.8.2', '<')){
			$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('optimize_listsub',0),('optimize_stats',0),('optimize_list',0),('optimize_mail',0),('optimize_userstats',0),('optimize_urlclick',0),('optimize_history',0),('optimize_template',0),('optimize_queue',0),('optimize_subscriber',0) ");
		}

		$file = ACYMAILING_FRONT.'views'.DS.'newsletter'.DS.'metadata.xml';
		if(file_exists($file)) acymailing_deleteFile($file);

		$file = ACYMAILING_BACK.'admin.acymailing.php';
		if(file_exists($file)) acymailing_deleteFile($file);

		if(version_compare($this->fromVersion, '4.0.0', '<')){

			$allModules = acymailing_loadObjectList("SELECT params,id FROM #__modules WHERE module = 'mod_acymailing'");

			foreach($allModules as $oneMod){
				$newParams = preg_replace('#fieldsize=.*#i', 'fieldsize=80%', $oneMod->params);
				$newParams = preg_replace('#"fieldsize":"[^"]*"#i', '"fieldsize":"80%"', $newParams);
				$this->updateQuery("UPDATE #__modules SET params = ".acymailing_escapeDB($newParams)." WHERE id = ".intval($oneMod->id));
			}

			$allFields = acymailing_loadObjectList("SELECT options,fieldid FROM #__acymailing_fields WHERE type IN ('phone','text','date','file') AND options LIKE '%size%'");

			foreach($allFields as $oneField){
				$options = unserialize($oneField->options);
				$options['size'] = intval($options['size'] * 5);
				$this->updateQuery("UPDATE #__acymailing_fields SET options = ".acymailing_escapeDB(serialize($options))." WHERE fieldid = ".intval($oneField->fieldid));
			}
		}

		if(is_dir(ACYMAILING_BACK.'inc'.DS.'openflash')){
			acymailing_deleteFolder(ACYMAILING_BACK.'inc'.DS.'openflash');
		}
		if(is_dir(ACYMAILING_INC.'openflash')){
			acymailing_deleteFolder(ACYMAILING_INC.'openflash');
		}

		if(version_compare($this->fromVersion, '4.2.0', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `thumb` VARCHAR( 250 ) NULL , ADD `readmore` VARCHAR( 250 ) NULL ");

			$allTemplates = acymailing_loadObjectList("SELECT tempid, description FROM #__acymailing_template WHERE `thumb` IS NULL");
			foreach($allTemplates as $oneTemplate){
				if(preg_match('#<img[^>]*src="([^"]*)"[^>]*>#Ui', $oneTemplate->description, $onethumb)){
					$this->updateQuery('UPDATE #__acymailing_template SET `description` = '.acymailing_escapeDB(str_replace($onethumb[0], '', $oneTemplate->description)).', `thumb` = '.acymailing_escapeDB($onethumb[1]).' WHERE tempid = '.$oneTemplate->tempid);
				}
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` ADD `confirmed_date` INT UNSIGNED NOT NULL DEFAULT '0', ADD `confirmed_ip` VARCHAR(100) NULL , ADD `lastopen_date` INT UNSIGNED NOT NULL DEFAULT '0', ADD `lastclick_date` INT UNSIGNED NOT NULL DEFAULT '0'");
			$this->updateQuery('UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_history as hist ON sub.subid = hist.subid AND hist.action = "confirmed" SET sub.confirmed_date = hist.date, sub.confirmed_ip = hist.ip WHERE sub.confirmed_date = 0');
			$this->updateQuery('UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_userstats as stats ON sub.subid = stats.subid SET sub.lastopen_date = stats.opendate WHERE sub.lastopen_date = 0');
			$this->updateQuery('UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_urlclick as url ON sub.subid = url.subid SET sub.lastclick_date = url.date WHERE sub.lastclick_date = 0');
			$this->updateQuery('ALTER TABLE `#__acymailing_list` CHANGE `ordering` `ordering` SMALLINT UNSIGNED NULL DEFAULT \'0\'');
			$this->updateQuery('ALTER TABLE `#__acymailing_template` CHANGE `ordering` `ordering` SMALLINT UNSIGNED NULL DEFAULT \'0\'');

			$templateClass = acymailing_get('class.template');
			for($i = 1; $i <= 10; $i++){
				$templateClass->createTemplateFile($i);
			}
		}

		if(version_compare($this->fromVersion, '4.3.0', '<')){
			if(!ACYMAILING_J16){
				$queryReplace = "UPDATE `#__plugins` SET `name` = REPLACE(`name`,'(beta)','') WHERE `element` = 'acyeditor'";
			}else{
				$queryReplace = "UPDATE `#__extensions` SET `name` = REPLACE(`name`,'(beta)','') WHERE `element` = 'acyeditor'";
			}
			$this->updateQuery($queryReplace);

			if(!ACYMAILING_J16){
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__plugins WHERE `element` = 'urltracker' LIMIT 1");
				$pattern = '#trackingsystem=(.*)#i';
			}else{
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__extensions WHERE `element` = 'urltracker' LIMIT 1");
				$pattern = '#"trackingsystem":"([^"]*)"#i';
			}
			$trackingMode = 'acymailing';
			if(preg_match($pattern, $existingEntry, $autosubResult)){
				$trackingMode = $autosubResult[1];
			}
			if($trackingMode == 'googleacy') $trackingMode = 'acymailing,google';
			$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('trackingsystem',".acymailing_escapeDB($trackingMode).")");
		}

		if(version_compare($this->fromVersion, '4.3.1', '<')){
			$query = 'CREATE TABLE IF NOT EXISTS `#__acymailing_geolocation` (`geolocation_id` int unsigned NOT NULL AUTO_INCREMENT, `geolocation_subid` int unsigned NOT NULL DEFAULT \'0\',';
			$query .= ' `geolocation_type` varchar(255) NOT NULL DEFAULT \'subscription\', `geolocation_ip` varchar(255) NOT NULL DEFAULT \'\', `geolocation_created` int unsigned NOT NULL DEFAULT \'0\',';
			$query .= ' `geolocation_latitude` decimal(9,6) NOT NULL DEFAULT \'0.000000\', `geolocation_longitude` decimal(9,6) NOT NULL DEFAULT \'0.000000\', `geolocation_postal_code` varchar(255) NOT NULL DEFAULT \'\',';
			$query .= ' `geolocation_country` varchar(255) NOT NULL DEFAULT \'\', `geolocation_country_code` varchar(255) NOT NULL DEFAULT \'\', `geolocation_state` varchar(255) NOT NULL DEFAULT \'\',';
			$query .= ' `geolocation_state_code` varchar(255) NOT NULL DEFAULT \'\', `geolocation_city` varchar(255) NOT NULL DEFAULT \'\',';
			$query .= ' PRIMARY KEY (`geolocation_id`), KEY `geolocation_type` (`geolocation_subid`, `geolocation_type`)) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;';
			$this->updateQuery($query);
		}

		if(version_compare($this->fromVersion, '4.3.3', '<')){
			$this->updateQuery('UPDATE #__acymailing_list SET access_manage = CONCAT(",",access_manage) WHERE access_manage NOT IN ("all","none","")');
		}

		if(version_compare($this->fromVersion, '4.4.2', '<')){
			$this->updateQuery('ALTER TABLE `#__acymailing_fields` ADD `frontlisting` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\', ADD `frontjoomlaprofile` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\', ADD `frontjoomlaregistration` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\', ADD `joomlaprofile` TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT \'0\'');
			$this->updateQuery('UPDATE `#__acymailing_fields` SET `frontlisting`  = `listing`');

			if(!ACYMAILING_J16){
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__plugins WHERE `element` = 'regacymailing' LIMIT 1");
				$pattern = '#customfields=(.*)#i';
			}else{
				$existingEntry = acymailing_loadResult("SELECT `params` FROM #__extensions WHERE `element` = 'regacymailing' LIMIT 1");
				$pattern = '#"customfields":"([^"]*)"#i';
			}
			if(preg_match($pattern, $existingEntry, $pregResult)){
				$existingEntries = explode(',', $pregResult[1]);
				foreach($existingEntries as $fieldToDisplay){
					$this->updateQuery("UPDATE `#__acymailing_fields` SET frontjoomlaregistration=1 WHERE namekey=".acymailing_escapeDB(trim($fieldToDisplay)));
				}
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_list` ADD `startrule` VARCHAR(50) NOT NULL DEFAULT '0'");

			if(is_dir(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'kcfinder')){
				acymailing_deleteFolder(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'kcfinder');
			}
			if(is_dir(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'kcfinder')){
				acymailing_deleteFolder(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'kcfinder');
			}
			if(is_dir(ACYMAILING_BACK.'extensions'.DS.'plg_editors_acyeditor'.DS.'acyeditor'.DS.'kcfinder')){
				acymailing_deleteFolder(ACYMAILING_BACK.'extensions'.DS.'plg_editors_acyeditor'.DS.'acyeditor'.DS.'kcfinder');
			}
		}

		if(version_compare($this->fromVersion, '4.5.2', '<')){
			$res = acymailing_query("SELECT * FROM #__acymailing_config WHERE namekey='acl_newsletters_manage'");
			if(!empty($res)){
				$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('acl_newsletters_lists', 'all'), ('acl_newsletters_attachments', 'all'), ('acl_newsletters_sender_informations', 'all'), ('acl_newsletters_meta_data','all')");
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `access` VARCHAR( 250 ) NOT NULL DEFAULT 'all'");
			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` ADD `lastopen_ip` VARCHAR( 100 ) NULL, ADD `lastsent_date` INT UNSIGNED NOT NULL DEFAULT '0'");

			$this->updateQuery("UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_userstats as stats ON sub.subid = stats.subid SET sub.lastopen_ip = stats.ip WHERE stats.ip != ''");

			$this->updateQuery("UPDATE #__acymailing_subscriber as sub JOIN #__acymailing_userstats as stats ON sub.subid = stats.subid SET sub.lastsent_date = stats.senddate");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` MODIFY `type` ENUM('news','autonews','followup','unsub','welcome','notification','joomlanotification') NOT NULL DEFAULT 'news'");
		}

		if(version_compare($this->fromVersion, '4.6.3', '<')){
			$file = ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor_j30.xml';
			if(file_exists($file)) acymailing_deleteFile($file);

			$file = ACYMAILING_ROOT.'plugins'.DS.'system'.DS.'acymailingclassmail'.DS.'acymailingclassmail_j30.xml';
			if(file_exists($file)) acymailing_deleteFile($file);

			if($config->get('mailer_method') == 'smtp_com'){
				$newConfig = new stdClass();
				$newConfig->mailer_method = 'smtp';
				$newConfig->smtp_host = 'retail.smtp.com';
				$newConfig->smtp_port = '2525';
				$newConfig->smtp_username = $config->get('smtp_com_username');
				$newConfig->smtp_password = $config->get('smtp_com_password');
				$newConfig->smtp_auth = 1;
				$newConfig->smtp_keepalive = 1;
				$newConfig->smtp_secured = '';
				$config->save($newConfig);
			}

			$this->updateQuery("ALTER TABLE `#__acymailing_userstats` ADD `browser` VARCHAR( 255 ) DEFAULT NULL, ADD `browser_version` TINYINT UNSIGNED DEFAULT NULL, ADD `is_mobile` TINYINT UNSIGNED DEFAULT NULL, ADD `mobile_os` VARCHAR( 255 ) DEFAULT NULL, ADD `user_agent` VARCHAR( 255 ) DEFAULT NULL");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `language` VARCHAR( 50 ) NOT NULL DEFAULT ''");
		}

		if(version_compare($this->fromVersion, '4.7.3', '<')){
			try{
				$res = acymailing_query("SELECT * FROM #__acymailing_config WHERE namekey='acl_newsletters_manage'");
				if(!empty($res)){
					$this->updateQuery("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ('acl_newsletters_abtesting', 'all')");
				}
			}catch(Exception $e){
				$res = null;
			}
			if($res === null) acymailing_enqueueMessage(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `abtesting` VARCHAR( 250 ) DEFAULT NULL");

			$this->updateQuery("ALTER TABLE `#__acymailing_subscriber` ADD `source` VARCHAR( 250 ) NOT NULL DEFAULT ''");
		}

		if(version_compare($this->fromVersion, '4.8.2', '<')){
			$tagsFile = JPATH_SITE.DS.'plugins'.DS.'acymailing'.DS.'tagcontent'.DS.'tagcontenttags.xml';
			if(file_exists($tagsFile)) acymailing_deleteFile($tagsFile);

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `thumb` VARCHAR( 250 ) DEFAULT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `summary` TEXT NOT NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_template` ADD `category` VARCHAR( 250 ) NOT NULL DEFAULT ''");
			$this->updateQuery("ALTER TABLE `#__acymailing_list` ADD `category` VARCHAR( 250 ) NOT NULL DEFAULT ''");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `access` VARCHAR( 250 ) NOT NULL DEFAULT 'all'");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `fieldcat` INT( 11 ) NOT NULL DEFAULT '0'");

			$this->updateQuery("UPDATE `#__acymailing_template` SET body = REPLACE(body,'<tbody>','<tbody class=\"acyeditor_sortable\">') WHERE body LIKE '%acyeditor_%' ");
		}

		if(version_compare($this->fromVersion, '4.9.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_geolocation` ADD KEY `geolocation_ip_created` (`geolocation_ip`, `geolocation_created`)");
		}

		if(version_compare($this->fromVersion, '4.9.3', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_userstats` ADD `bouncerule` VARCHAR( 255 ) NULL");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `listingfilter` TINYINT NULL DEFAULT NULL ");
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `frontlistingfilter` TINYINT NULL DEFAULT NULL ");
		}

		if(version_compare($this->fromVersion, '4.9.4', '<')){
			$this->updateQuery("UPDATE #__acymailing_mail SET body = REPLACE(REPLACE(body, 'newsletter-4/top.png', 'newsletter-4/images/top.png'), 'newsletter-4/bottom.png', 'newsletter-4/images/bottom.png')");
		}

		if(version_compare($this->fromVersion, '5.0.0', '<')){
			$mails = acymailing_loadObjectList('SELECT mailid, attach FROM #__acymailing_mail WHERE attach IS NOT NULL');
			if(!empty($mails)){
				$query = 'INSERT INTO #__acymailing_mail (`mailid`,`attach`) VALUES ';
				$folderPath = acymailing_getFilesFolder();
				foreach($mails as $oneMail){
					$attachments = unserialize($oneMail->attach);
					foreach($attachments as &$oneAttach){
						if(strpos($oneAttach->filename, $folderPath) === false) $oneAttach->filename = $folderPath.'/'.$oneAttach->filename;
					}
					$query .= '('.$oneMail->mailid.','.acymailing_escapeDB(serialize($attachments)).'),';
				}
				$query = rtrim($query, ',');
				$query .= ' ON DUPLICATE KEY UPDATE `attach` = VALUES(`attach`)';
				$this->updateQuery($query);
			}
			$newConfig = new stdClass();
			$newConfig->css_backend = '';
			$config->save($newConfig);
		}

		if(version_compare($this->fromVersion, '5.0.1', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_fields` ADD `frontform` TINYINT NULL DEFAULT 1");
			$this->updateQuery("UPDATE `#__acymailing_fields` SET frontform = backend");
		}

		if(version_compare($this->fromVersion, '5.1.0', '<')){
			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_action` (`action_id` int unsigned NOT NULL AUTO_INCREMENT,`name` varchar(255) DEFAULT NULL,`description` text,`frequency` int unsigned NOT NULL,
	`nextdate` int unsigned NOT NULL,`server` varchar(255) NOT NULL,`port` varchar(50) NOT NULL,`connection_method` varchar(10) NOT NULL DEFAULT '0',`secure_method` varchar(10) NOT NULL DEFAULT '0',
	`self_signed` tinyint NOT NULL DEFAULT '0',`username` varchar(255) NOT NULL,`password` varchar(50) NOT NULL,`userid` int unsigned DEFAULT NULL,`conditions` text,`actions` text,`report` text,
	`published` tinyint NOT NULL DEFAULT '0',`ordering` smallint unsigned NULL DEFAULT '0',PRIMARY KEY (`action_id`)) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `favicon` text");
		}

		if(version_compare($this->fromVersion, '5.2.0', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` MODIFY `type` ENUM('news','autonews','followup','unsub','welcome','notification','joomlanotification','action') NOT NULL DEFAULT 'news'");

			$this->updateQuery("ALTER TABLE `#__acymailing_mail` ADD `bccaddresses` varchar(250) DEFAULT NULL");
			$managetext = acymailing_getPlugin('acymailing', 'managetext');
			$managetextParams = new acyParameter($managetext->params);

			$possibleVars = array('', 2, 3);
			foreach($possibleVars as $oneSuffix){
				$bcc = $managetextParams->get('bccaddresses'.$oneSuffix);
				$mailids = trim(str_replace(array(',', ' '), ';', $managetextParams->get('bccmailids'.$oneSuffix)));
				if(empty($mailids) || empty($bcc)) continue;

				$emails = explode(';', $mailids);
				acymailing_arrayToInteger($emails);

				$this->updateQuery('UPDATE `#__acymailing_mail` SET bccaddresses = '.acymailing_escapeDB($bcc).' WHERE mailid IN ('.implode(',', $emails).')');
			}

			$this->updateQuery('UPDATE `#__acymailing_rules` SET name = (CASE name WHEN "Action Required" THEN "ACY_RULE_ACTION"
																					 WHEN "Acknowledgement of receipt - in subject" THEN "ACY_RULE_ACKNOWLEDGE"
																					 WHEN "Feedback loop" THEN "ACY_RULE_LOOP"
																					 WHEN "Feedback loop - in body" THEN "ACY_RULE_LOOP_BODY"
																					 WHEN "Mailbox Full" THEN "ACY_RULE_FULL"
																					 WHEN "Blocked by Google Groups" THEN "ACY_RULE_GOOGLE"
																					 WHEN "Mailbox does not exist 1" THEN "ACY_RULE_EXIST1"
																					 WHEN "Message blocked by recipient filters" THEN "ACY_RULE_FILTERED"
																					 WHEN "Mailbox does not exist 2" THEN "ACY_RULE_EXIST2"
																					 WHEN "Domain does not exist" THEN "ACY_RULE_DOMAIN"
																					 WHEN "Temporary failures" THEN "ACY_RULE_TEMPORAR"
																					 WHEN "Failed Permanently" THEN "ACY_RULE_PERMANENT"
																					 WHEN "Acknowledgement of receipt - in body" THEN "ACY_RULE_ACKNOWLEDGE_BODY"
																					 WHEN "Final Rule" THEN "ACY_RULE_FINAL"
																					 ELSE name
																					 END)');

			$this->updateQuery("ALTER TABLE #__acymailing_geolocation ADD `geolocation_continent` varchar(255) NOT NULL DEFAULT '', ADD `geolocation_timezone` varchar(255) NOT NULL DEFAULT ''");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Asia' WHERE geolocation_country_code IN ('AF', 'AM', 'AZ', 'BH', 'BD', 'BT', 'BN', 'IO', 'KH', 'CN', 'CX', 'CC', 'CY', 'GE', 'HK', 'IN', 'ID', 'IR', 'IQ', 'IL', 'JP', 'JO', 'KZ', 'KP', 'KR', 'KW', 'KG', 'LA', 'LB', 'MO', 'MY', 'MV', 'MN', 'MM', 'NP', 'OM', 'PK', 'PS', 'PH', 'QA', 'SA', 'SG', 'LK', 'SY', 'TW', 'TJ', 'TH', 'TL', 'TR', 'TM', 'AE', 'UZ', 'VN', 'YE')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Africa' WHERE geolocation_country_code IN ('AO', 'BJ', 'DZ', 'BW', 'BF', 'BI', 'CM', 'CV', 'CF', 'TD', 'KM', 'CD', 'CG', 'CI', 'DJ', 'EG', 'GQ', 'ER', 'ET', 'GA', 'GM', 'GH', 'GN', 'GW', 'KE', 'LS', 'LR', 'LY', 'MG', 'MW', 'ML', 'MR', 'MU', 'YT', 'MA', 'MZ', 'NA', 'NE', 'NG', 'RE', 'RW', 'SH', 'ST', 'SN', 'SC', 'SL', 'SO', 'ZA', 'SD', 'SZ', 'TZ', 'TG', 'TN', 'UG', 'EH', 'ZM', 'ZW')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Europe' WHERE geolocation_country_code IN ('AX', 'AL', 'AT', 'AD', 'BY', 'BE', 'BA', 'BG', 'HR', 'CZ', 'DK', 'EE', 'FO', 'FI', 'FR', 'DE', 'GI', 'GR', 'GG', 'VA', 'HU', 'IS', 'IE', 'IM', 'IT', 'JE', 'LV', 'LI', 'LT', 'LU', 'MK', 'MT', 'MD', 'MC', 'ME', 'NL', 'NO', 'PL', 'PT', 'RO', 'RU', 'SM', 'RS', 'SK', 'SI', 'ES', 'SJ', 'SE', 'CH', 'UA', 'GB')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Oceania' WHERE geolocation_country_code IN ('AS', 'AU', 'CK', 'FJ', 'PF', 'GU', 'KI', 'MH', 'FM', 'NR', 'NC', 'NZ', 'NU', 'NF', 'MP', 'PW', 'PG', 'PN', 'WS', 'SB', 'TK', 'TO', 'TV', 'UM', 'VU', 'WF')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'North America' WHERE geolocation_country_code IN ('AI', 'AG', 'AW', 'BS', 'BB', 'BZ', 'BM', 'VG', 'CA', 'KY', 'CR', 'CU', 'DM', 'DO', 'SV', 'GL', 'GD', 'GP', 'GT', 'HT', 'HN', 'JM', 'MQ', 'MX', 'MS', 'AN', 'NI', 'PA', 'PR', 'BL', 'KN', 'LC', 'MF', 'PM', 'VC', 'TT', 'TC', 'US', 'VI')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'South America' WHERE geolocation_country_code IN ('AR', 'BO', 'BR', 'CL', 'CO', 'EC', 'FK', 'GF', 'GY', 'PY', 'PE', 'SR', 'UY', 'VE')");
			$this->updateQuery("UPDATE #__acymailing_geolocation SET geolocation_continent = 'Antartica' WHERE geolocation_country_code IN ('AQ', 'BV', 'TF', 'HM', 'GS')");

			if($config->get('captcha_enabled') == 1){
				$this->updateQuery('INSERT INTO `#__acymailing_config` (namekey, value) VALUES ("captcha_plugin", "acycaptcha") ON DUPLICATE KEY UPDATE value="acycaptcha"');
			}else{
				$this->updateQuery('INSERT INTO `#__acymailing_config` (namekey, value) VALUES ("captcha_plugin", "no") ON DUPLICATE KEY UPDATE value="no"');
			}
			try{
				$res = acymailing_loadObjectList('SELECT tempid, stylesheet FROM #__acymailing_template', 'tempid');
				foreach($res as $oneTmpl){
					$changedStyle = preg_replace('/(table *(,[^{}]*)?)({[^}]*font-family)/', '$1, td$3', $oneTmpl->stylesheet);
					$this->updatequery('UPDATE #__acymailing_template SET stylesheet = '.acymailing_escapeDB($changedStyle).' WHERE tempid = '.$oneTmpl->tempid);
				}
			}catch(Exception $e){
				$res = null;
			}
			if($res === null) acymailing_enqueueMessage(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
		}

		if(version_compare($this->fromVersion, '5.5.0', '<')){
			$this->updateQuery("ALTER TABLE #__acymailing_action ADD `delete_wrong_emails` tinyint NOT NULL DEFAULT 0");
			$this->updateQuery("ALTER TABLE #__acymailing_action ADD `senderfrom` tinyint NOT NULL DEFAULT 0");
			$this->updateQuery("ALTER TABLE #__acymailing_action ADD `senderto` tinyint NOT NULL DEFAULT 0");
		}

		if(version_compare($this->fromVersion, '5.6.0', '<')){
			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_forward` (`subid` int unsigned NOT NULL,`mailid` mediumint unsigned NOT NULL, `date` int unsigned NOT NULL,
			`ip` varchar(50) DEFAULT NULL, `nbforwarded` int unsigned NOT NULL, PRIMARY KEY (`subid`,`mailid`)) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;");

			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_tag` (`tagid` smallint unsigned NOT NULL AUTO_INCREMENT, `name` varchar(250) NOT NULL,
			`userid` int unsigned DEFAULT NULL,PRIMARY KEY (`tagid`),KEY `useridindex` (`userid`)) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;");

			$this->updateQuery("CREATE TABLE IF NOT EXISTS `#__acymailing_tagmail` (`tagid` smallint unsigned NOT NULL,	`mailid` mediumint unsigned NOT NULL,
			PRIMARY KEY (`tagid`,`mailid`)) /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;");
		}

		if(version_compare($this->fromVersion, '5.6.5', '<')){
			$this->updateQuery("ALTER TABLE `#__acymailing_mail` MODIFY subject text");
		}

		if(version_compare($this->fromVersion, '5.7.1', '<')){
			$daycron = $config->get('cron_plugins_next', 0);

			$this->updateQuery("ALTER TABLE `#__acymailing_filter` ADD `daycron` int unsigned");
			acymailing_query('UPDATE #__acymailing_filter SET `daycron` = '.intval($daycron).' WHERE `trigger` LIKE "%daycron%"');
		}

		if(version_compare($this->fromVersion, '5.8.0', '<')){
			$this->updateQuery("ALTER TABLE #__acymailing_mail ADD `lastupdate` int unsigned DEFAULT NULL");
			$this->updateQuery("ALTER TABLE #__acymailing_mail ADD `userlastupdate` int unsigned DEFAULT NULL");
		}

		if(version_compare($this->fromVersion, '5.9.0', '<')){
			$this->updateQuery("ALTER TABLE #__acymailing_fields MODIFY `default` TEXT DEFAULT NULL");
			$this->updateQuery("ALTER TABLE #__acymailing_subscriber ADD `filterflags` varchar(50) NOT NULL DEFAULT ''");
			if(substr($config->get('cron_savepath'), 0, 32) == 'media/com_acymailing/logs/report'){
				$this->updateQuery("UPDATE #__acymailing_config SET `value` = 'media/com_acymailing/logs/report{year}_{month}.log' WHERE namekey = 'cron_savepath'");
			}

			$allFilters = acymailing_loadObjectList('SELECT filid, action, filter FROM '.acymailing_table('filter'));
			if(!empty($allFilters)){
				foreach($allFilters as $oneFilter){
					$oneFilter->action = unserialize($oneFilter->action);
					if(!empty($oneFilter->action['type'])) $oneFilter->action['type'] = array($oneFilter->action['type']);

					$oneFilter->filter = unserialize($oneFilter->filter);
					if(!empty($oneFilter->filter['type'])) $oneFilter->filter['type'] = array($oneFilter->filter['type']);

					$this->updateQuery('UPDATE '.acymailing_table('filter').' SET action = '.acymailing_escapeDB(serialize($oneFilter->action)).', filter = '.acymailing_escapeDB(serialize($oneFilter->filter)).' WHERE filid = '.intval($oneFilter->filid));
				}
			}

			$mailFilters = acymailing_loadObjectList('SELECT mailid, filter FROM '.acymailing_table('mail').' WHERE filter LIKE "%type%"');
			if(!empty($mailFilters)){
				foreach($mailFilters as $oneMail){
					$oneMail->filter = unserialize($oneMail->filter);
					if(!empty($oneMail->filter['type'])) $oneMail->filter['type'] = array($oneMail->filter['type']);
					$this->updateQuery('UPDATE '.acymailing_table('mail').' SET filter = '.acymailing_escapeDB(serialize($oneMail->filter)).' WHERE mailid = '.intval($oneMail->mailid));
				}
			}
			$this->updateQuery("ALTER TABLE #__acymailing_template ADD `header` longtext");
			$this->updateQuery("ALTER TABLE #__acymailing_mail MODIFY `type` enum('news','autonews','followup','unsub','welcome','notification','joomlanotification','action', 'article') NOT NULL DEFAULT 'news'");

			if(!ACYMAILING_J16){
				$this->updateQuery("UPDATE #__plugins SET `ordering` = 0 WHERE `element` = 'plginboxactions' AND `folder` = 'acymailing'");
			}else{
				$this->updateQuery("UPDATE #__extensions SET `ordering` = 0 WHERE `element` = 'plginboxactions' AND `folder` = 'acymailing'");
			}
		}

		if(version_compare($this->fromVersion, '5.9.4', '<')){
			if(!ACYMAILING_J16){
				$this->updateQuery("UPDATE #__plugins SET `ordering` = 24 WHERE `element` = 'urltracker' AND `folder` = 'acymailing'");
				$this->updateQuery("UPDATE #__plugins SET `ordering` = 52 WHERE `element` = 'template' AND `folder` = 'acymailing'");
			}else{
				$this->updateQuery("UPDATE #__extensions SET `ordering` = 24 WHERE `element` = 'urltracker' AND `folder` = 'acymailing'");
				$this->updateQuery("UPDATE #__extensions SET `ordering` = 52 WHERE `element` = 'template' AND `folder` = 'acymailing'");
			}
		}
	}

	function updateQuery($query){
		try{
			$res = acymailing_query($query);
		}catch(Exception $e){
			$res = null;
		}
		if($res === null) acymailing_enqueueMessage(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
	}

	function updateJoomailing(){
		$result = acymailing_loadResult("SHOW TABLES LIKE '".acymailing_getPrefix()."joomailing_config'");

		if(empty($result)) return true;


		acymailing_query("INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) SELECT `namekey`, REPLACE(`value`,'com_joomailing','com_acymailing') FROM `#__joomailing_config`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_list` (`name`, `description`, `ordering`, `listid`, `published`, `userid`, `alias`, `color`, `visible`, `welmailid`, `unsubmailid`, `type`) SELECT `name`, `description`, `ordering`, `listid`, `published`, `userid`, `alias`, `color`, `visible`, `welmailid`, `unsubmailid`, `type` FROM `#__joomailing_list`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_listcampaign` (`campaignid`, `listid`) SELECT `campaignid`, `listid` FROM `#__joomailing_listcampaign`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_listmail` (`listid`, `mailid`) SELECT `listid`, `mailid` FROM `#__joomailing_listmail`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_listsub` (`listid`, `subid`, `subdate`, `unsubdate`, `status`) SELECT `listid`, `subid`, `subdate`, `unsubdate`, `status` FROM `#__joomailing_listsub`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_mail` (`mailid`, `subject`, `body`, `altbody`, `published`, `senddate`, `created`, `fromname`, `fromemail`, `replyname`, `replyemail`, `type`, `visible`, `userid`, `alias`, `attach`, `html`, `tempid`, `key`, `frequency`, `params`) SELECT `mailid`, `subject`, REPLACE(`body`,'joomailing','acymailing'), REPLACE(`altbody`,'joomailing','acymailing'), `published`, `senddate`, `created`, `fromname`, `fromemail`, `replyname`, `replyemail`, `type`, `visible`, `userid`, `alias`, REPLACE(`attach`,'com_joomailing','com_acymailing'), `html`, `tempid`, `key`, `frequency`, REPLACE(`params`,'com_joomailing','com_acymailing') FROM `#__joomailing_mail`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_queue` (`senddate`, `subid`, `mailid`, `priority`, `try`) SELECT `senddate`, `subid`, `mailid`, `priority`, `try` FROM `#__joomailing_queue`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_stats` (`mailid`, `senthtml`, `senttext`, `senddate`, `openunique`, `opentotal`, `bounceunique`, `fail`, `clicktotal`, `clickunique`, `unsub`, `forward`) SELECT `mailid`, `senthtml`, `senttext`, `senddate`, `openunique`, `opentotal`, `bounceunique`, `fail`, `clicktotal`, `clickunique`, `unsub`, `forward` FROM `#__joomailing_stats`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_subscriber` (`subid`, `email`, `userid`, `name`, `created`, `confirmed`, `enabled`, `accept`, `ip`, `html`, `key`) SELECT `subid`, `email`, `userid`, `name`, `created`, `confirmed`, `enabled`, `accept`, `ip`, `html`, `key` FROM `#__joomailing_subscriber`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_template` (`tempid`, `name`, `description`, `body`, `altbody`, `created`, `published`, `premium`, `ordering`, `namekey`, `styles`) SELECT `tempid`, `name`, REPLACE(`description`,'joomailing','acymailing'), REPLACE(`body`,'joomailing','acymailing'), REPLACE(`altbody`,'joomailing','acymailing'), `created`, `published`, `premium`, `ordering`, `namekey`, REPLACE(`styles`,'joomailing','acymailing') FROM `#__joomailing_template`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_url` (`urlid`, `name`, `url`) SELECT `urlid`, REPLACE(`name`,'com_joomailing','com_acymailing'), REPLACE(`url`,'com_joomailing','com_acymailing') FROM `#__joomailing_url`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_urlclick` (`urlid`, `mailid`, `click`, `subid`, `date`) SELECT `urlid`, `mailid`, `click`, `subid`, `date` FROM `#__joomailing_urlclick`");
		acymailing_query("INSERT IGNORE INTO `#__acymailing_userstats` (`mailid`, `subid`, `html`, `sent`, `senddate`, `open`, `opendate`, `bounce`, `fail`) SELECT `mailid`, `subid`, `html`, `sent`, `senddate`, `open`, `opendate`, `bounce`, `fail` FROM `#__joomailing_userstats`");

		acymailing_query("DROP TABLE IF EXISTS `#__joomailing_config`, `#__joomailing_list`, `#__joomailing_listcampaign`, `#__joomailing_listmail`, `#__joomailing_listsub`, `#__joomailing_mail`, `#__joomailing_queue` , `#__joomailing_stats`, `#__joomailing_subscriber`, `#__joomailing_template` , `#__joomailing_url`, `#__joomailing_urlclick`, `#__joomailing_userstats`");

		acymailing_query("UPDATE `#__modules` SET `title` = REPLACE(`title`,'JooMailing','AcyMailing'), `module` = REPLACE(`module`,'joomailing','acymailing'), `params` = REPLACE(`params`,'joomailing','acymailing')");
		acymailing_query("UPDATE `#__plugins` SET `name` = REPLACE(REPLACE(REPLACE(`name`,'jooMailing','AcyMailing'),'joomailing','acymailing'),'JooMailing','AcyMailing'), `element` = REPLACE(`element`,'joomailing','acymailing'), `folder` = REPLACE(`folder`,'joomailing','acymailing'), `params` = REPLACE(`params`,'joomailing','acymailing')");

		acymailing_query("DELETE FROM `#__components` WHERE `option` LIKE '%joomailing%' OR `admin_menu_link` LIKE '%joomailing%'");

		acymailing_query("UPDATE `#__menu` SET `menutype` = REPLACE(`menutype`,'joomailing','acymailing'), `name` = REPLACE(`name`,'joomailing','acymailing'), `alias` = REPLACE(`alias`,'joomailing','acymailing'), `link` = REPLACE(`link`,'joomailing','acymailing')");


		$newFile = '<?php
					$url = \'index.php?option=com_acymailing\';
					foreach($_GET as $name => $value){
						if($name == \'option\') continue;
						$url .= \'&\'.$name.\'=\'.$value;
					}
					acymailing_redirect($url);
					';

		@file_put_contents(rtrim(JPATH_SITE, DS).DS.'components'.DS.'com_joomailing'.DS.'joomailing.php', $newFile);
		@file_put_contents(rtrim(JPATH_ADMINISTRATOR, DS).DS.'components'.DS.'com_joomailing'.DS.'admin.joomailing.php', $newFile);
	}

	function addPref(){
		$this->level = ucfirst($this->level);

		$allPref = array();

		$allPref['level'] = $this->level;
		$allPref['version'] = $this->version;
		$allPref['smtp_port'] = '';

		$allPref['from_name'] = acymailing_getCMSConfig('fromname');
		$allPref['from_email'] = acymailing_getCMSConfig('mailfrom');
		$allPref['bounce_email'] = acymailing_getCMSConfig('mailfrom');
		$allPref['mailer_method'] = acymailing_getCMSConfig('mailer');
		$allPref['sendmail_path'] = acymailing_getCMSConfig('sendmail');
		$smtpinfos = explode(':', acymailing_getCMSConfig('smtphost'));
		$allPref['smtp_port'] = acymailing_getCMSConfig('smtpport');
		$allPref['smtp_secured'] = acymailing_getCMSConfig('smtpsecure');
		$allPref['smtp_auth'] = acymailing_getCMSConfig('smtpauth');
		$allPref['smtp_username'] = acymailing_getCMSConfig('smtpuser');
		$allPref['smtp_password'] = acymailing_getCMSConfig('smtppass');

		$allPref['reply_name'] = $allPref['from_name'];
		$allPref['reply_email'] = $allPref['from_email'];
		$allPref['cron_sendto'] = $allPref['from_email'];

		$allPref['add_names'] = '1';
		$allPref['encoding_format'] = '8bit';
		$allPref['charset'] = 'UTF-8';
		$allPref['word_wrapping'] = '150';
		$allPref['hostname'] = '';
		$allPref['embed_images'] = '0';
		$allPref['embed_files'] = '1';
		$allPref['editor'] = 'acyeditor';
		$allPref['multiple_part'] = '1';
		$allPref['smtp_host'] = $smtpinfos[0];
		if(isset($smtpinfos[1])) $allPref['smtp_port'] = $smtpinfos[1];
		if(!in_array($allPref['smtp_secured'], array('tls', 'ssl'))) $allPref['smtp_secured'] = '';

		$allPref['queue_nbmail'] = '40';
		$allPref['queue_nbmail_auto'] = '70';
		$allPref['queue_type'] = 'auto';
		$allPref['queue_try'] = '3';
		$allPref['queue_pause'] = '120';
		$allPref['allow_visitor'] = '1';
		$allPref['require_confirmation'] = '0';
		$allPref['priority_newsletter'] = '3';
		$allPref['allowedfiles'] = 'zip,doc,docx,pdf,xls,txt,gzip,rar,jpg,jpeg,gif,xlsx,pps,csv,bmp,ico,odg,odp,ods,odt,png,ppt,swf,xcf,mp3,wma';
		$allPref['uploadfolder'] = 'media/com_acymailing/upload';
		$allPref['confirm_redirect'] = '';
		$allPref['subscription_message'] = '1';
		$allPref['notification_unsuball'] = '';
		$allPref['cron_next'] = '1251990901';
		$allPref['confirmation_message'] = '1';
		$allPref['welcome_message'] = '1';
		$allPref['unsub_message'] = '1';
		$allPref['cron_last'] = '0';
		$allPref['cron_fromip'] = '';
		$allPref['cron_report'] = '';
		$allPref['cron_frequency'] = '900';
		$allPref['cron_sendreport'] = '2';

		$allPref['cron_fullreport'] = '1';
		$allPref['cron_savereport'] = '2';
		$allPref['cron_savepath'] = 'media/com_acymailing/logs/report{year}_{month}.log';
		$allPref['notification_created'] = '';
		$allPref['notification_accept'] = '';
		$allPref['notification_refuse'] = '';
		$allPref['forward'] = '0';

		$allPref['priority_followup'] = '2';
		$allPref['unsub_redirect'] = '';
		$allPref['use_sef'] = '0';
		$allPref['itemid'] = '0';
		$allPref['css_module'] = 'default';
		$allPref['css_frontend'] = 'default';
		$allPref['css_backend'] = '';
		$allPref['bootstrap_frontend'] = 0;
		$allPref['export_excelsecurity'] = 1;

		$allPref['unsub_reasons'] = serialize(array('UNSUB_SURVEY_FREQUENT', 'UNSUB_SURVEY_RELEVANT'));

		$allPref['security_key'] = acymailing_generateKey(30);


		$allPref['installcomplete'] = '0';

		$allPref['Starter'] = '0';
		$allPref['Essential'] = '1';
		$allPref['Business'] = '2';
		$allPref['Enterprise'] = '3';
		$allPref['Sidekick'] = '4';

		$query = "INSERT IGNORE INTO `#__acymailing_config` (`namekey`,`value`) VALUES ";
		foreach($allPref as $namekey => $value){
			$query .= '('.acymailing_escapeDB($namekey).','.acymailing_escapeDB($value).'),';
		}
		$query = rtrim($query, ',');

		try{
			$res = acymailing_query($query);
		}catch(Exception $e){
			$res = null;
		}
		if($res === null){
			acymailing_display(isset($e) ? $e->getMessage() : substr(strip_tags(acymailing_getDBError()), 0, 200).'...', 'error');
			return false;
		}
		return true;
	}
}

class acymailingUninstall{
	function __construct(){
	}

	function message(){
		?>
		You uninstalled the AcyMailing component.<br/>
		AcyMailing also unpublished the modules attached to the component.<br/><br/>
		If you want to completely uninstall AcyMailing, please select all the AcyMailing modules and plugins and uninstall them from the Joomla Extensions Manager.<br/>
		Then execute this query via phpMyAdmin to remove all AcyMailing data:<br/><br/>
		DROP TABLE <?php


		$db = JFactory::getDBO();
		$db->setQuery("SHOW TABLES LIKE '".$db->getPrefix()."acymailing%' ");
		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		if(version_compare($jversion, '3.0.0', '>=')) $tables = $db->loadColumn();
		else $tables = $db->loadResultArray();

		echo implode(' , ', $tables);

		?>;<br/><br/>
		If you DO NOT execute the query, you will be able to install AcyMailing again without losing data.<br/>
		Please note that you don't have to uninstall AcyMailing to install a new version, simply install it over the current version.
		<?php
	}

	function unpublishModules(){
		$db = JFactory::getDBO();
		$db->setQuery("UPDATE `#__modules` SET `published` = 0 WHERE `module` LIKE '%acymailing%'");

		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		$method = version_compare($jversion, '4.0.0', '>=') ? 'execute' : 'query';

		$db->$method();
	}
}
extensions/plg_acymailing_share/index.html000060400000000054152455705230015104 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_share/share.php000060400000021016152455705230014723 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingShare extends JPlugin{
	var $pictresults = array();

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'share');
			$this->params = new acyParameter($plugin->params);
		}
	}

	function acymailing_getPluginType(){

		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation_sprintf('SOCIAL_SHARE', '...');
		$onePlugin->function = 'acymailingtagshare_show';
		$onePlugin->help = 'plugin-share';

		return $onePlugin;
	}

	function _getPictures($folder){
		$allFolders = acymailing_getFolders($folder);
		foreach($allFolders as $oneFolder){
			$this->_getPictures($folder.DS.$oneFolder);
		}
		$allFiles = acymailing_getFiles($folder, $this->regex);
		foreach($allFiles as $oneFile){
			$this->pictresults[substr($oneFile, 0, 4)][$oneFile.filesize($folder.DS.$oneFile)] = $folder.DS.$oneFile;
		}
	}

	function acymailingtagshare_show(){
		$uploadFolders = acymailing_getFilesFolder('upload', true);
		$uploadFolder = acymailing_getVar('string', 'currentFolder', $uploadFolders[0]);
		$uploadPath = acymailing_cleanPath(ACYMAILING_ROOT.trim(str_replace('/', DS, trim($uploadFolder)), DS));
		$uploadedFile = acymailing_getVar('array', 'socialfile', array(), 'files');
		
		if(!empty($uploadedFile) && !empty($uploadedFile['name'])){
			$uploadedFile['name'] = acymailing_getVar('string', 'socialchoice').substr($uploadedFile['name'], strrpos($uploadedFile['name'], '.'));
			acymailing_importFile($uploadedFile, $uploadPath, true, 150);
		}
		
		
		$networks = array();
		$networks['facebook'] = 'Facebook';
		$networks['linkedin'] = 'LinkedIn';
		$networks['twitter'] = 'Twitter';
		$networks['google'] = 'Google+';
		$networks['print'] = acymailing_translation('ACY_PRINT');

		$k = 0;
		
		$this->regex = '('.implode('|', array_keys($networks)).').*(png|gif|jpeg|jpg)';
		$this->_getPictures(ACYMAILING_MEDIA);

		$socialList = array();
		$socialList[] = acymailing_selectOption('facebook', 'Facebook');
		$socialList[] = acymailing_selectOption('linkedIn', 'LinkedIn');
		$socialList[] = acymailing_selectOption('twitter', 'Twitter');
		$socialList[] = acymailing_selectOption('google', 'Google+');
		$socialChoice = acymailing_select($socialList, 'socialchoice', 'size="1" style="width:100px;"');
?>
		<br style="clear:both;">

		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('UPLOAD_NEW_IMAGE'); ?></span>

			<table>
				<tr>
					<td style="padding: 5px;"><?php echo $socialChoice; ?></td>
					<td style="padding: 5px;"><input type="file" name="socialfile"></td>
					<td style="padding: 5px;"><input class="acymailing_button_grey" type="submit" value="Upload"></td>
				</tr>
			</table>
		</div>
<?php
		foreach($networks as $name => $desc){
			$shortName = substr($name, 0, 4);
			if(empty($this->pictresults[$shortName])) continue;

			if($desc == acymailing_translation('ACY_PRINT')){
				$legendTxt = $desc;
			}else{
				$legendTxt = acymailing_translation_sprintf('SOCIAL_SHARE', $desc);
			}

			echo '<div class="onelineblockoptions">
					<span class="acyblocktitle">'.$legendTxt.'</span>';
			foreach($this->pictresults[$shortName] as $onePict){
				$imgPath = preg_replace('#^'.preg_quote(ACYMAILING_ROOT, '#').'#i', ACYMAILING_LIVE, $onePict);
				$imgPath = str_replace(DS, '/', $imgPath);

				if($desc == acymailing_translation('ACY_PRINT')){
					$insertedtag = '<a target="_blank" href="{print:newsletter}" title="'.acymailing_translation('ACY_PRINT').'" ><img src="'.$imgPath.'" alt="'.$desc.'" /></a>';
				}else{
					$insertedtag = '<a target="_blank" href="{sharelink:'.$name.'}" title="'.acymailing_translation_sprintf('SOCIAL_SHARE', $desc).'" ><img src="'.$imgPath.'" alt="'.$desc.'" /></a>';
				}

				echo '<img style="max-width:200px;cursor:pointer;padding:5px;" onclick="setTag(\''.htmlentities($insertedtag).'\');insertTag();" src="'.$imgPath.'" />';
			}
			echo '</div>';
			$k = 1 - $k;
		}
	}

	function acymailing_replacetags(&$email, $send = true){
		if(acymailing_getVar('none', 'task', '') == 'replacetags') return;
		$this->_print($email, $send);
		$this->_shareButtons($email, $send);
	}

	function _shareButtons(&$email, $send = true){
		$match = '#(?:{|%7B)(share|sharelink):(.*)(?:}|%7D)#Ui';
		$variables = array('body', 'altbody');
		$found = false;
		$results = array();
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
			if(empty($results[$var][0])) unset($results[$var]);
		}

		if(!$found) return;

		$archiveLink = acymailing_frontendLink('index.php?option=com_acymailing&ctrl=archive&task=view&mailid='.$email->mailid, false, $this->params->get('template', 'component') == 'component' ? true : false);
		if(empty($email->published)){
			$archiveLink .= (strpos($archiveLink, '?') ? '&' : '?').'time='.time();
		}

		$tags = array();
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $numres => $tagname){
				if(isset($tags[$tagname])) continue;
				$arguments = explode('|', $allresults[2][$numres]);
				$tag = new stdClass();
				$tag->network = $arguments[0];
				for($i = 1, $a = count($arguments); $i < $a; $i++){
					$args = explode(':', $arguments[$i]);
					if(isset($args[1])){
						$tag->{$args[0]} = $args[1];
					}else{
						$tag->{$args[0]} = true;
					}
				}

				$link = '';
				if($tag->network == 'facebook'){
					$link = 'http://www.facebook.com/sharer.php?u='.urlencode($archiveLink).'&t='.urlencode($email->subject);
					$tags[$tagname] = '<a target="_blank" href="'.$link.'" title="'.acymailing_translation_sprintf('SOCIAL_SHARE', 'Facebook').'"><img alt="Facebook" src="'.ACYMAILING_LIVE.$this->params->get('picturefb', 'media/com_acymailing/images/facebookshare.png').'" /></a>';
				}elseif($tag->network == 'twitter'){
					$text = acymailing_translation_sprintf('SHARE_TEXT', $archiveLink);
					$link = 'http://twitter.com/home?status='.urlencode($text);
					$tags[$tagname] = '<a target="_blank" href="'.$link.'" title="'.acymailing_translation_sprintf('SOCIAL_SHARE', 'Twitter').'"><img alt="Twitter" src="'.ACYMAILING_LIVE.$this->params->get('picturetwitter', 'media/com_acymailing/images/twittershare.png').'" /></a>';
				}elseif($tag->network == 'linkedin'){
					$link = 'http://www.linkedin.com/shareArticle?mini=true&url='.urlencode($archiveLink).'&title='.urlencode($email->subject);
					$tags[$tagname] = '<a target="_blank" href="'.$link.'" title="'.acymailing_translation_sprintf('SOCIAL_SHARE', 'LinkedIn').'"><img alt="LinkedIn" src="'.ACYMAILING_LIVE.$this->params->get('picturelinkedin', 'media/com_acymailing/images/linkedin.png').'" /></a>';
				}elseif($tag->network == 'google'){
					$link = 'https://plus.google.com/share?url='.urlencode($archiveLink);
					$tags[$tagname] = '<a target="_blank" href="'.$link.'" title="'.acymailing_translation_sprintf('SOCIAL_SHARE', 'Google+').'"><img alt="Google+" src="'.ACYMAILING_LIVE.$this->params->get('picturegoogleplus', 'media/com_acymailing/images/google_plusshare.png').'" /></a>';
				}

				if($allresults[1][$numres] == 'sharelink'){
					$tags[$tagname] = $link;
				}

				if(file_exists(ACYMAILING_MEDIA.'plugins'.DS.'share.php')){
					ob_start();
					require(ACYMAILING_MEDIA.'plugins'.DS.'share.php');
					$tags[$tagname] = ob_get_clean();
				}
			}
		}

		$email->body = str_replace(array_keys($tags), $tags, $email->body);
		$email->altbody = str_replace(array_keys($tags), '', $email->altbody);
	}

	private function _print(&$email, $send = true){
		$variables = array('subject', 'body', 'altbody');
		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$tags = $acypluginsHelper->extractTags($email, 'print');

		$archiveLink = acymailing_frontendLink('index.php?option=com_acymailing&ctrl=archive&task=view&mailid='.$email->mailid, true, $this->params->get('template', 'component') == 'component' ? true : false);
		$addkey = (!empty($email->key)) ? '&key='.$email->key : '';
		$adduserkey = '&subid={subtag:subid}-{subtag:key}';
		$link = $archiveLink.'&print=1'.$addkey.$adduserkey;

		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$email->$var = str_replace(array_keys($tags), $link, $email->$var);
		}
	}
}//endclass
extensions/plg_acymailing_share/share.xml000060400000007332152455705230014741 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing : share on social networks</name>
	<creationDate>August 2010</creationDate>
	<version>1.0.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add a share icon for social networks</description>
	<files>
		<filename plugin="share">share.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-share"/>
		<param name="template" type="radio" default="component" label="Display the online version" description="Select if you want to display the online version (when the user will share your link on the social network) without any Joomla module (no template) or inside your default Joomla Template">
			<option value="standard">Standard template</option>
			<option value="component">No template</option>
		</param>

		<param name="picturefb" type="text" label="Facebook picture - DEPRECATED" default="media/com_acymailing/images/facebookshare.png" />
		<param name="picturetwitter" type="text" label="Twitter picture - DEPRECATED" default="media/com_acymailing/images/twittershare.png" />
		<param name="picturelinkedin" type="text" label="LinkedIn picture - DEPRECATED" default="media/com_acymailing/images/linkedin.png" />
		<param name="picturegoogleplus" type="text" label="Google+ picture - DEPRECATED" default="media/com_acymailing/images/google_plusshare.png" />
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>

	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-share"/>
				<field name="template" type="radio" default="component" label="Display the online version" description="Select if you want to display the online version (when the user will share your link on the social network) without any Joomla module (no template) or inside your default Joomla Template">
					<option value="standard">Standard template</option>
					<option value="component">No template</option>
				</field>

				<field name="picturefb" type="text" label="Facebook picture - DEPRECATED" default="media/com_acymailing/images/facebookshare.png" />
				<field name="picturetwitter" type="text" label="Twitter picture - DEPRECATED" default="media/com_acymailing/images/twittershare.png" />
				<field name="picturelinkedin" type="text" label="LinkedIn picture - DEPRECATED" default="media/com_acymailing/images/linkedin.png" />
				<field name="picturegoogleplus" type="text" label="Google+ picture - DEPRECATED" default="media/com_acymailing/images/google_plusshare.png" />
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>

			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_tagcbuser/tagcbuser_j30.xml000060400000001561152455705230017145 0ustar00<?xml version="1.0" encoding="utf-8"?>
<extension type="plugin" version="3.0" method="upgrade" group="acymailing">
	<name>AcyMailing Tag and filter : Community Builder</name>
	<creationDate>September 2009</creationDate>
	<version>3.7.2</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2016 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add information from the CB Profile of the user in your newsletters. It also allows you to filter the users based on CB fields and modify these field values</description>
	<files>
		<filename plugin="tagcbuser">tagcbuser.php</filename>
		<filename>tagcbuser.xml</filename>
		<filename>index.html</filename>
	</files>
</extension>
extensions/plg_acymailing_tagcbuser/index.html000060400000000000152455705230015750 0ustar00extensions/plg_acymailing_tagcbuser/tagcbuser.xml000060400000003717152455705230016476 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag and filter : Community Builder</name>
	<creationDate>September 2009</creationDate>
	<version>3.7.2</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2016 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add information from the CB Profile of the user in your newsletters. It also allows you to filter the users based on CB fields and modify these field values</description>
	<files>
		<filename plugin="tagcbuser">tagcbuser.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagcbuser"/>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagcbuser"/>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_tagcbuser/tagcbuser.php000060400000031570152455705230016463 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.6.1
 * @author	acyba.com
 * @copyright	(C) 2009-2017 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingTagcbuser extends JPlugin{
	var $sendervalues = array();

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'tagcbuser');
			$this->params = new JParameter($plugin->params);
		}
	}

	function acymailing_getPluginType(){

		$app = JFactory::getApplication();
		if(!file_exists(ACYMAILING_ROOT.'components'.DS.'com_comprofiler'.DS.'comprofiler.php')) return;
		if($this->params->get('frontendaccess') == 'none' && !$app->isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = JText::_('CB User');
		$onePlugin->function = 'acymailingtagcb_show';
		$onePlugin->help = 'plugin-tagcbuser';

		return $onePlugin;
	}

	function onAcyDisplayFilters(&$type, $context = "massactions"){

		if($this->params->get('displayfilter_'.$context, true) == false) return;
		if(!file_exists(ACYMAILING_ROOT.'components'.DS.'com_comprofiler'.DS.'comprofiler.php')) return;

		$db = JFactory::getDBO();
		$fields = acymailing_getColumns('#__comprofiler');
		if(empty($fields)) return;

		$db->setQuery('SELECT name,title FROM #__comprofiler_fields WHERE `table` LIKE '.$db->Quote('#__comprofiler'));
		$fieldTitles = $db->loadObjectList('name');

		$languages = array();
		if(file_exists(JPATH_SITE.DS.'components'.DS.'com_comprofiler'.DS.'plugin'.DS.'language'.DS.'default_language'.DS.'language.php')){
			if(!defined('CBLIB')) include_once(JPATH_SITE.DS.'libraries/CBLib/CB/Application/CBApplication.php');
			$languages = include_once JPATH_SITE.DS.'components'.DS.'com_comprofiler'.DS.'plugin'.DS.'language'.DS.'default_language'.DS.'language.php';
		}elseif(file_exists(JPATH_SITE.DS.'components'.DS.'com_comprofiler'.DS.'plugin'.DS.'language'.DS.'default_language'.DS.'default_language.php')){
			include_once JPATH_SITE.DS.'components'.DS.'com_comprofiler'.DS.'plugin'.DS.'language'.DS.'default_language'.DS.'default_language.php';
		}

		ksort($fields);
		$cbfield = array();
		foreach($fields as $oneField => $fieldType){
			$text = $oneField;
			if(!empty($fieldTitles[$oneField])){
				if(!empty($languages[$fieldTitles[$oneField]->title])){
					$text .= ' ('.$languages[$fieldTitles[$oneField]->title].')';
				}else{
					if(defined($fieldTitles[$oneField]->title)){
						$text .= ' ('.constant($fieldTitles[$oneField]->title).')';
					}else $text .= ' ('.$fieldTitles[$oneField]->title.')';
				}
			}
			$cbfield[] = JHTML::_('select.option', $oneField, $text);
		}
		$type['cbfield'] = JText::_('CB_FIELD');

		$operators = acymailing_get('type.operators');
		$operators->extra = 'onchange="countresults(__num__)"';

		$return = '<div id="filter__num__cbfield">'.JHTML::_('select.genericlist', $cbfield, "filter[__num__][cbfield][map]", 'class="inputbox" size="1" onchange="countresults(__num__)"', 'value', 'text');
		$return .= ' '.$operators->display("filter[__num__][cbfield][operator]").' <input onchange="countresults(__num__)" class="inputbox" type="text" name="filter[__num__][cbfield][value]" style="width:200px" value="" /></div>';

		return $return;
	}

	function onAcyProcessFilter_cbfield(&$query, $filter, $num){
		$query->leftjoin['cbfield'] = '#__comprofiler AS cbfield ON cbfield.id = sub.userid';
		$query->where[] = $query->convertQuery('cbfield', $filter['map'], $filter['operator'], $filter['value']);
	}

	function onAcyProcessFilterCount_cbfield(&$query, $filter, $num){
		$this->onAcyProcessFilter_cbfield($query, $filter, $num);
		return JText::sprintf('SELECTED_USERS', $query->count());
	}

	function acymailingtagcb_show(){
		?>

		<script language="javascript" type="text/javascript">
			function applyTag(tagname){
				var string = '{cbtag:' + tagname;
				for(var i = 0; i < document.adminForm.typeinfo.length; i++){
					if(document.adminForm.typeinfo[i].checked){
						string += '|info:' + document.adminForm.typeinfo[i].value;
					}
				}
				string += '}';
				setTag(string);
				insertTag();
			}
		</script>
		<?php
		$typeinfo = array();
		$typeinfo[] = JHTML::_('select.option', "receiver", JText::_('RECEIVER_INFORMATION'));
		$typeinfo[] = JHTML::_('select.option', "sender", JText::_('SENDER_INFORMATIONS'));
		echo JHTML::_('acyselect.radiolist', $typeinfo, 'typeinfo', '', 'value', 'text', 'receiver');

		$text = '<table class="acymailing_table" cellpadding="1">';
		$db = JFactory::getDBO();
		$fields = acymailing_getColumns('#__comprofiler');

		$db->setQuery('SELECT name,type FROM #__comprofiler_fields');
		$fieldType = $db->loadObjectList('name');

		$k = 0;

		$text .= '<tr style="cursor:pointer" class="row1" onclick="applyTag(\'thumb\');" ><td class="acytdcheckbox"></td><td>Thumb Avatar</td></tr>';
		foreach($fields as $fieldname => $oneField){
			$type = '';
			if(strpos(strtolower($oneField), 'date') !== false) $type = '|type:date';
			if(!empty($fieldType[$fieldname]) AND $fieldType[$fieldname]->type == 'image') $type = '|type:image';
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="applyTag(\''.$fieldname.$type.'\');" ><td class="acytdcheckbox"></td><td>'.$fieldname.'</td></tr>';
			$k = 1 - $k;
		}


		$db->setQuery("SELECT * FROM #__comprofiler_fields WHERE tablecolumns = '' AND published = 1");
		$otherFields = $db->loadObjectList();
		foreach($otherFields as $oneField){
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="applyTag(\'cbapi_'.$oneField->name.'\');" ><td class="acytdcheckbox"></td><td>'.$oneField->name.'</td></tr>';
			$k = 1 - $k;
		}

		$text .= '</table>';

		echo $text;
	}

	function acymailing_replaceusertags(&$email, &$user, $send = true){
		$match = '#(?:{|%7B)cbtag:(.*)(?:}|%7D)#Ui';
		$variables = array('subject', 'body', 'altbody');
		$found = false;
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
			if(empty($results[$var][0])) unset($results[$var]);
		}

		if(!$found) return;

		$uservalues = null;
		$db = JFactory::getDBO();
		if(!empty($user->userid)){
			$db->setQuery('SELECT * FROM '.acymailing_table('comprofiler', false).' WHERE user_id = '.$user->userid.' LIMIT 1');
			$uservalues = $db->loadObject();
		}

		$db->setQuery('SELECT fieldid, `table`, name, type, params FROM #__comprofiler_fields');
		$fieldObjects = $db->loadObjectList('name');

		include_once(ACYMAILING_ROOT.'administrator'.DS.'components'.DS.'com_comprofiler'.DS.'plugin.foundation.php');
		cbimport('cb.database');
		$pluginsHelper = acymailing_get('helper.acyplugins');
		$currentCBUser = null;

		$tags = array();
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($tags[$oneTag])) continue;

				$arguments = explode('|', $allresults[1][$i]);
				$field = $arguments[0];
				unset($arguments[0]);
				$mytag = new stdClass();
				$mytag->default = $this->params->get('default_'.$field, '');
				if(!empty($arguments)){
					foreach($arguments as $onearg){
						$args = explode(':', $onearg);
						if(isset($args[1])){
							$mytag->{$args[0]} = $args[1];
						}else{
							$mytag->{$args[0]} = 1;
						}
					}
				}

				$values = new stdClass();

				if(!empty($mytag->info) AND $mytag->info == 'sender'){
					if(empty($this->sendervalues[$email->mailid]) AND !empty($email->userid)){
						$db->setQuery('SELECT * FROM #__comprofiler WHERE user_id = '.$email->userid.' LIMIT 1');
						$this->sendervalues[$email->mailid] = $db->loadObject();
					}
					if(!empty($this->sendervalues[$email->mailid])) $values = $this->sendervalues[$email->mailid];
				}else{
					$values = $uservalues;
				}

				if(substr($field, 0, 6) == 'cbapi_'){
					if(!empty($mytag->info) AND $mytag->info == 'sender'){
						if(empty($this->sendervalues[$email->mailid]->$field) AND !empty($email->userid)){
							$currentSender = CBuser::getInstance($email->userid);
							$values->$field = $currentSender->getField(substr($field, 6), $mytag->default, 'html', 'none', 'profile', 0, true);
							$this->sendervalues[$email->mailid]->$field = $values->$field;
						}elseif(!empty($this->sendervalues[$email->mailid]->$field)){
							$values->$field = @$this->sendervalues[$email->mailid]->$field;
						}
					}elseif(!empty($user->userid)){
						if(empty($currentCBUser)) $currentCBUser = CBuser::getInstance($user->userid);
						if(!empty($currentCBUser)) $values->$field = $currentCBUser->getField(substr($field, 6), $mytag->default, 'html', 'none', 'profile', 0, true);
						if(empty($values->$field) && !empty($fieldObjects[substr($field, 6)]) && $fieldObjects[substr($field, 6)]->type == 'progress'){
							$fieldObjects[substr($field, 6)]->decodedParams = json_decode($fieldObjects[substr($field, 6)]->params);
							if(!empty($fieldObjects[substr($field, 6)]->decodedParams->prg_fields)){
								$requiredFields = explode('|*|', $fieldObjects[substr($field, 6)]->decodedParams->prg_fields);
								$filled_in = 0;
								foreach($fieldObjects as $oneField){
									if(!in_array($oneField->fieldid, $requiredFields) || !in_array($oneField->table, array('#__comprofiler', '#__users'))) continue;
									$fieldName = $oneField->name;
									if(!empty($currentCBUser->_cbuser->$fieldName)) $filled_in++;
								}
								$values->$field = intval(($filled_in * 100) / count($requiredFields)).'%';
							}
						}
					}
				}

				$replaceme = isset($values->$field) ? $values->$field : $mytag->default;
				if(!empty($mytag->type)){
					if($mytag->type == 'image' AND !empty($replaceme)){
						$replaceme = '<img src="'.ACYMAILING_LIVE.'images/comprofiler/'.$replaceme.'" alt="'.htmlspecialchars(@$user->name, ENT_COMPAT, 'UTF-8').'" />';
					}
				}

				if($field == 'thumb'){
					$replaceme = '<img src="'.ACYMAILING_LIVE.'images/comprofiler/tn'.$values->avatar.'" alt="'.htmlspecialchars(@$user->name, ENT_COMPAT, 'UTF-8').'" />';
				}elseif($field == 'avatar'){
					$replaceme = '<img src="'.ACYMAILING_LIVE.'images/comprofiler/'.$values->avatar.'" alt="'.htmlspecialchars(@$user->name, ENT_COMPAT, 'UTF-8').'" />';
				}

				$tags[$oneTag] = $replaceme;
				$pluginsHelper->formatString($tags[$oneTag], $mytag);
			}
		}

		foreach($results as $var => $allresults){
			$email->$var = str_replace(array_keys($tags), $tags, $email->$var);
		}
	}

	function onAcyDisplayActions(&$type){
		$fields = acymailing_getColumns('#__comprofiler');

		$field = array();
		$field[] = JHTML::_('select.option', 0, '- - -');
		foreach($fields as $oneField => $fieldType){
			if(in_array($oneField, array('id', 'user_id', 'hits', 'message_last_sent', 'message_number_sent', 'canvas', 'cbactivation'))) continue;
			$field[] = JHTML::_('select.option', $oneField, $oneField);
		}

		$content = '<div id="action__num__cbfieldval">'.JHTML::_('select.genericlist', $field, "action[__num__][cbfieldval][map]", 'class="inputbox" size="1"', 'value', 'text');
		$content .= ' = <input class="inputbox" type="text" id="action__num__cbfieldvalvalue" name="action[__num__][cbfieldval][value]" style="width:200px" value=""></div>';

		$type['cbfieldval'] = 'Community Builder: '.jtext::_('FIELD');

		return $content;
	}

	function onAcyProcessAction_cbfieldval($cquery, $action, $num){

		$replace = array('{year}', '{month}', '{weekday}', '{day}', '{hour}', '{minute}');
		$replaceBy = array(date('Y'), date('m'), date('N'), date('d'), date('H'), date('i'));
		$newValue = str_replace($replace, $replaceBy, acymailing_replaceDate($action['value']));

		if(preg_match_all('#{(year|month|weekday|day)\|(add|remove):([^}]*)}#Uis', $newValue, $results)){
			foreach($results[0] as $i => $oneMatch){
				$format = str_replace(array('year', 'month', 'weekday', 'day'), array('Y','m','N','d'), $results[1][$i]);
				$delay = str_replace(array('add', 'remove'), array('+', '-'), $results[2][$i]).intval($results[3][$i]).' '.str_replace('weekday', 'day', $results[1][$i]);
				$newValue = str_replace($oneMatch, date($format, strtotime($delay)), $newValue);
			}
		}

		if(empty($action['operator'])) $action['operator'] = '=';

		$fields = array_keys(acymailing_getColumns('#__comprofiler'));
		if(!in_array($action['map'], $fields)) return 'Unexisting field: '.$action['map'].' | The available fields are: '.implode(', ', $fields);

		$query = 'UPDATE #__comprofiler AS cb JOIN #__acymailing_subscriber AS sub ON cb.user_id = sub.userid';
		if(!empty($cquery->join)) $query .= ' JOIN '.implode(' JOIN ', $cquery->join);
		if(!empty($cquery->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $cquery->leftjoin);

		$query .= " SET cb.`".acymailing_secureField($action['map'])."` = ".$cquery->db->Quote($newValue);
		if(!empty($cquery->where)) $query .= ' WHERE ('.implode(') AND (', $cquery->where).')';

		$cquery->db->setQuery($query);
		$cquery->db->query();
		$nbAffected = $cquery->db->getAffectedRows();
		return JText::sprintf('NB_MODIFIED', $nbAffected);
	}
}//endclass
extensions/plg_acymailing_tagsubscription/index.html000060400000000054152455705230017222 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_tagsubscription/tagsubscription.xml000060400000013735152455705230021201 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag : Manage the Subscription</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add link to manage the subscription of the user</description>
	<files>
		<filename plugin="tagsubscription">tagsubscription.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagsubscription"/>
		<param name="unsubscribetemplate" type="radio" default="0" label="Display the unsubscribe page" description="Select if you want to display the unsubscribe page (when the user clicks on the unsubscribe link) without any Joomla module (no template) or inside your default Joomla Template">
			<option value="0">Standard template</option>
			<option value="1">No template</option>
		</param>
		<param name="listunsubscribe" type="radio" default="0" label="Add list-unsubscribe header" description="If you insert an unsubscribe link, should Acy also insert the link in the list-unsubscribe field? See www.list-unsubscribe.com">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="listunsubscribeemail" type="text" size="20" default="" label="List-unsubscribe e-mail" description="The GMail feedback loops works with a list-unsubscribe e-mail address. By default Acy will add the reply-to e-mail address but you can specify another e-mail address there" />
		<param name="modifytemplate" type="radio" default="0" label="Display the modify your subscription" description="Select if you want to display the modify your subscription page (when the user clicks on the modify you subscription link) without any Joomla module (no template) or inside your default Joomla Template">
			<option value="0">Standard template</option>
			<option value="1">No template</option>
		</param>
		<param name="confirmtemplate" type="radio" default="0" label="Display the confirmation page" description="Select if you want to display the confirmation page (when the user clicks on the confirmation link) without any Joomla module (no template) or inside your default Joomla Template">
			<option value="0">Standard template</option>
			<option value="1">No template</option>
		</param>
		<param name="displayfilter_mail" type="radio" default="1" label="Display filter" description="Display the subscription filter on the Newsletter creation interface">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagsubscription"/>
				<field name="unsubscribetemplate" type="radio" default="0" label="Display the unsubscribe page" description="Select if you want to display the unsubscribe page (when the user clicks on the unsubscribe link) without any Joomla module (no template) or inside your default Joomla Template">
					<option value="0">Standard template</option>
					<option value="1">No template</option>
				</field>
				<field name="listunsubscribe" type="radio" default="0" label="Add list-unsubscribe header" description="If you insert an unsubscribe link, should Acy also insert the link in the list-unsubscribe field? See www.list-unsubscribe.com">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="listunsubscribeemail" type="text" size="20" default="" label="List-unsubscribe e-mail" description="The GMail feedback loops works with a list-unsubscribe e-mail address. By default Acy will add the reply-to e-mail address but you can specify another e-mail address there" />
				<field name="modifytemplate" type="radio" default="0" label="Display the modify your subscription" description="Select if you want to display the modify your subscription page (when the user clicks on the modify you subscription link) without any Joomla module (no template) or inside your default Joomla Template">
					<option value="0">Standard template</option>
					<option value="1">No template</option>
				</field>
				<field name="confirmtemplate" type="radio" default="0" label="Display the confirmation page" description="Select if you want to display the confirmation page (when the user clicks on the confirmation link) without any Joomla module (no template) or inside your default Joomla Template">
					<option value="0">Standard template</option>
					<option value="1">No template</option>
				</field>
				<field name="displayfilter_mail" type="radio" default="1" label="Display filter" description="Display the subscription filter on the Newsletter creation interface">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_tagsubscription/tagsubscription.php000060400000104064152455705230021164 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingTagsubscription extends JPlugin{
	var $listunsubscribe = false;
	var $lists = array();
	var $listsowner = array();
	var $listsinfo = array();
	var $campaigns = array();
	var $unsubscribeLink = false;
	var $unsubscribeItem = '';

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'tagsubscription');
			$this->params = new acyParameter($plugin->params);
		}
		$this->acypluginsHelper = acymailing_get('helper.acyplugins');
	}

	function acymailing_getPluginType(){

		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('SUBSCRIPTION');
		$onePlugin->function = 'acymailingtagsubscription_show';
		$onePlugin->help = 'plugin-tagsubscription';

		return $onePlugin;
	}

	function acymailingtagsubscription_show(){

		$others = array();
		$others['unsubscribe'] = array('name' => acymailing_translation('UNSUBSCRIBE_LINK'), 'default' => acymailing_translation('UNSUBSCRIBE', true));
		$others['modify'] = array('name' => acymailing_translation('MODIFY_SUBSCRIPTION_LINK'), 'default' => acymailing_translation('MODIFY_SUBSCRIPTION', true));
		$others['confirm'] = array('name' => acymailing_translation('CONFIRM_SUBSCRIPTION_LINK'), 'default' => acymailing_translation('CONFIRM_SUBSCRIPTION', true));
		$others['subscribe'] = array('name' => acymailing_translation('SUBSCRIBE_LINK'), 'default' => acymailing_translation('SUBSCRIBE', true));

		?>
		<script language="javascript" type="text/javascript">
			<!--
			var openLists = true;
			var selectedTag = '';
			function changeTag(tagName){
				selectedTag = tagName;
				defaultText = [];
				<?php
				$k = 0;
				foreach($others as $tagname => $tag){
					echo "document.getElementById('tr_$tagname').className = 'row$k';";
					echo "defaultText['$tagname'] = '".$tag['default']."';";
					$k = 1 - $k;
				}
				?>
				document.getElementById('tr_' + tagName).className = 'selectedrow';
				document.adminForm.tagtext.value = defaultText[tagName];
				if(tagName == 'subscribe'){
					document.getElementById('iframelists').style.display = '';
					document.getElementById('subscriptionlists').style.display = '';
					if(openLists) displayLists();
				}else{
					document.getElementById('iframelists').style.display = 'none';
					document.getElementById('subscriptionlists').style.display = 'none';
				}
				setSubscriptionTag();
			}

			function setSubscriptionTag(){
				var tag = '{' + selectedTag;

				if(document.getElementById('tagmenu').value != 0) tag += "|itemid:" + document.getElementById('tagmenu').value;
				if(selectedTag == 'subscribe') tag += "|lists:" + document.getElementById('paramslistids').value;

				tag += '}' + document.adminForm.tagtext.value + '{/' + selectedTag + '}'
				setTag(tag);
			}

			function displayLists(){
				var box = document.getElementById('iframelists');
				if(openLists){
					box.style.display = 'block';
					box.className += ' slide_open';
				}else{
					box.className = box.className.replace('slide_open', 'slide_close');
				}

				if(!openLists) setSubscriptionTag();
				openLists = !openLists;
			}
			//-->
		</script>
		<?php

		acymailing_addScript(true, "document.addEventListener(\"DOMContentLoaded\", function(){ changeTag('unsubscribe'); });");

		$text = '<div id="iframelists" style="display:none;"><iframe src="index.php?option=com_acymailing&tmpl=component&ctrl='.(acymailing_isAdmin() ? '' : 'front').'chooselist&popup=0&task=listids&all=0" width="98%" height="100%" scrolling="auto"></iframe></div>
				<div class="onelineblockoptions">
					<span class="acyblocktitle">'.acymailing_translation('SUBSCRIPTION').'</span>
					<table class="acymailing_table" cellpadding="1">';
		$menus = acymailing_loadObjectList('SELECT 0 AS id, "- - -" AS title UNION SELECT id, title FROM #__menu WHERE link LIKE "%com_acymailing%" AND client_id = 0 AND published = 1');
		$text .= '<tr>
					<td><label for="tagtext">'.acymailing_translation('FIELD_TEXT').': </label><input type="text" name="tagtext" id="tagtext" onchange="setSubscriptionTag();"></td>
					<td><label for="tagmenu">'.acymailing_translation('ACY_MENU').': </label>'.acymailing_select($menus, "tagmenu", 'class="inputbox" size="1" onchange="setSubscriptionTag();"', 'id', 'title', '').'</td>
				</tr>
				<tr id="subscriptionlists">
					<td colspan="2">
						<button class="acymailing_button_grey" onclick="displayLists();return false;">'.acymailing_translation('LISTS').'</button>
						<input class="inputbox" id="paramslistids" name="listids" type="text" style="width:100px" value="">
					</td>
				</tr>';
		$text .= '</table>
					<table class="acymailing_table" cellpadding="1">';

		$k = 0;
		foreach($others as $tagname => $tag){
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="changeTag(\''.$tagname.'\');" id="tr_'.$tagname.'" ><td class="acytdcheckbox"></td><td>'.$tag['name'].'</td></tr>';
			$k = 1 - $k;
		}
		$text .= '</table></div>';

		$others = array();
		$others['name'] = acymailing_translation('LIST_NAME');
		$others['names'] = acymailing_translation('ACY_LIST_NAMES');
		$others['description'] = acymailing_translation('ACY_DESCRIPTION');
		$others['count'] = trim(acymailing_translation('GEOLOC_NB_USERS', true), ':');
		$others['count|listid:0'] = trim(acymailing_translation('GEOLOC_NB_USERS', true), ':').' ('.acymailing_translation('ALL_LISTS').')';
		$others['id'] = acymailing_translation('ACY_ID', true);

		$text .= '<div class="onelineblockoptions">
					<span class="acyblocktitle">'.acymailing_translation('LIST').'</span>
					<table class="acymailing_table" cellpadding="1">';

		$k = 0;
		foreach($others as $tagname => $tag){
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\'{list:'.$tagname.'}\');insertTag();" id="tr_'.$tagname.'" ><td class="acytdcheckbox"></td><td>'.$tag.'</td></tr>';
			$k = 1 - $k;
		}

		$text .= '</table></div>';

		$text .= '<div class="onelineblockoptions">
					<span class="acyblocktitle">'.acymailing_translation('NEWSLETTER').'</span>
					<table class="acymailing_table" cellpadding="1">';
		$othersMail = array('mailid', 'subject', 'alias', 'key', 'altbody');
		$k = 0;
		foreach($othersMail as $tag){
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\'{mail:'.$tag.'}\');insertTag();" id="tr_'.$tag.'" ><td class="acytdcheckbox"></td><td>'.$tag.'</td></tr>';
			$k = 1 - $k;
		}
		$text .= '</table></div>';

		echo $text;
	}

	function onAcyDisplayActions(&$type){
		$type['list'] = acymailing_translation('ACYMAILING_LIST');
		$status = array();
		$status[] = acymailing_selectOption(1, acymailing_translation('SUBSCRIBE_TO'));
		$status[] = acymailing_selectOption(0, acymailing_translation('REMOVE_FROM'));
		$status[] = acymailing_selectOption(-1, acymailing_translation('ACY_UNSUB_FROM'));

		$lists = $this->_getLists();
		$otherlists = array();
		$onChange = '';
		if(acymailing_level(3)){
			$otherlists = acymailing_loadObjectList('SELECT b.listid, b.name FROM #__acymailing_listcampaign as a JOIN #__acymailing_list as b on a.listid = b.listid GROUP BY b.listid ORDER BY b.ordering ASC', 'listid');
			$onChange = 'onchange="onAcyDisplayAction_list(__num__);"';

			$js = "function onAcyDisplayAction_list(num){
				if(!document.getElementById('campaigndelay'+num)) return;
				if(document.getElementById('subliststatus'+num).value == 1 && document.getElementById('sublistvalue'+num).value.indexOf('_campaign') > 0){
					document.getElementById('campaigndelay'+num).style.display = 'inline';
				}else{
					document.getElementById('campaigndelay'+num).style.display = 'none';
				}
			}";
			acymailing_addScript(true, $js);
		}

		$listsdrop = array();
		foreach($lists as $oneList){
			if(!empty($otherlists[$oneList->listid])) $listsdrop[] = acymailing_selectOption($oneList->listid.'_campaign', $otherlists[$oneList->listid]->name.' + '.acymailing_translation('CAMPAIGN'));
			$listsdrop[] = acymailing_selectOption($oneList->listid, $oneList->name);
		}

		$return = '<div id="action__num__list">'.acymailing_select($status, "action[__num__][list][status]", 'class="inputbox" size="1" '.$onChange, 'value', 'text', '', 'subliststatus__num__').' '.acymailing_select($listsdrop, "action[__num__][list][selectedlist]", 'class="inputbox" size="1" '.$onChange, 'value', 'text', '', 'sublistvalue__num__');
		if(!empty($otherlists)){
			$delay = array();
			$delay[] = acymailing_selectOption('day', acymailing_translation('DAYS'));
			$delay[] = acymailing_selectOption('week', acymailing_translation('WEEKS'));
			$delay[] = acymailing_selectOption('month', acymailing_translation('MONTHS'));

			$listHours = array();
			$listHours[] = acymailing_selectOption('', '- -');
			for($i = 0; $i < 24; $i++){
				$listHours[] = acymailing_selectOption(($i < 10 ? '0'.$i : $i), ($i < 10 ? '0'.$i : $i));
			}
			$hours = acymailing_select($listHours, 'action[__num__][list][sendhours]', 'class="inputbox" size="1" style="width:60px;"', 'value', 'text', '');

			$listMinutess = array();
			$listMinutess[] = acymailing_selectOption('', '- -');
			for($i = 0; $i < 60; $i += 5){
				$listMinutess[] = acymailing_selectOption(($i < 10 ? '0'.$i : $i), ($i < 10 ? '0'.$i : $i));
			}
			$minutes = acymailing_select($listMinutess, 'action[__num__][list][sendminutes]', 'class="inputbox" size="1" style="width:60px;"', 'value', 'text', '');

			$return .= '<br /><span id="campaigndelay__num__">'.acymailing_translation_sprintf('TRIGGER_CAMPAIGN', '<input type="text" name="action[__num__][list][delaynum]" value="0" style="width:50px" />', acymailing_select($delay, "action[__num__][list][delaytype]", 'class="inputbox" size="1" style="width:120px;"', 'value', 'text')).' @ '.$hours.' : '.$minutes;
			$return .= '<br />'.acymailing_translation_sprintf('ACY_CAMPAIGN_NB_FOLLOW_SKIPED', '<input type="text" name="action[__num__][list][skipedfollowups]" value="0" style="width:25px;" />').'</span>';
		}
		$return .= '</div>';

		return $return;
	}

	private function _getLists(){
		if(!empty($this->allLists)) return $this->allLists;
		$list = acymailing_get('class.list');
		if(acymailing_isAdmin()){
			$this->allLists = $list->getLists();
		}else{
			$this->allLists = $list->getFrontendLists();
		}

		return $this->allLists;
	}

	private function _getCampaigns(){

		$list = acymailing_get('class.list');
		if(acymailing_isAdmin()){
			return $list->getAllCampaigns();
		}
		return $list->getFrontendCampaigns();
	}

	function onAcyDisplayFilters(&$type, $context = "massactions"){

		if($this->params->get('displayfilter_'.$context, true) == false) return;

		$type['list'] = acymailing_translation('ACYMAILING_LIST');
		$status = acymailing_get('type.statusfilterlist');
		$status->extra = 'onchange="countresults(__num__);"';

		$lists = $this->_getLists();
		$campaigns = $this->_getCampaigns();
		$listsdrop = array();

		$listsdrop[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('LISTS'));
		foreach($lists as $oneList){
			$listsdrop[] = acymailing_selectOption($oneList->listid, $oneList->name);
		}
		$listsdrop[] = acymailing_selectOption('</OPTGROUP>');

		if(count($campaigns) > 0){
			$listsdrop[] = acymailing_selectOption('<OPTGROUP>', acymailing_translation('ACY_CAMPAIGNS'));
			foreach($campaigns as $campaign){
				$listsdrop[] = acymailing_selectOption($campaign->listid, $campaign->name);
			}
			$listsdrop[] = acymailing_selectOption('</OPTGROUP>');
		}
		
		$dates = array();
		$dates[] = acymailing_selectOption(0, acymailing_translation('SUBSCRIPTION_DATE'));
		$dates[] = acymailing_selectOption(1, acymailing_translation('UNSUBSCRIPTION_DATE'));

		$filter = '<div id="filter__num__list">'.$status->display("filter[__num__][list][status]", 1, false).' '.acymailing_select($listsdrop, "filter[__num__][list][selectedlist]", 'class="inputbox" style="max-width:200px" size="1" onchange="countresults(__num__)"', 'value', 'text');
		$filter .= '<br /><input type="text" name="filter[__num__][list][subdateinf]" onclick="displayDatePicker(this,event)" onchange="countresults(__num__)" style="width:60px;" /> < '.acymailing_select($dates, "filter[__num__][list][dates]", 'class="inputbox" style="max-width:200px" size="1" onchange="countresults(__num__)"', 'value', 'text').' < <input type="text" name="filter[__num__][list][subdatesup]" onclick="displayDatePicker(this,event)" onchange="countresults(__num__)" style="width:60px;" /></div>';
		return $filter;
	}

	function onAcyProcessFilter_list(&$query, $filter, $num){
		$otherconditions = '';
		$field = empty($filter['dates']) ? 'subdate' : 'unsubdate';
		if(!empty($filter['subdateinf'])){
			$filter['subdateinf'] = acymailing_replaceDate($filter['subdateinf']);
			if(!is_numeric($filter['subdateinf'])) $filter['subdateinf'] = strtotime($filter['subdateinf']);
			if(!empty($filter['subdateinf'])) $otherconditions .= ' AND list'.$num.'.'.$field.' > '.$filter['subdateinf'];
		}

		if(!empty($filter['subdatesup'])){
			$filter['subdatesup'] = acymailing_replaceDate($filter['subdatesup']);
			if(!is_numeric($filter['subdatesup'])) $filter['subdatesup'] = strtotime($filter['subdatesup']);
			if(!empty($filter['subdatesup'])) $otherconditions .= ' AND list'.$num.'.'.$field.' < '.$filter['subdatesup'];
		}

		$query->leftjoin['list'.$num] = '#__acymailing_listsub AS list'.$num.' ON sub.subid = list'.$num.'.subid AND list'.$num.'.listid = '.intval($filter['selectedlist']).$otherconditions;
		if($filter['status'] == -2){
			$query->where[] = 'list'.$num.'.listid IS NULL';
		}else{
			$query->where[] = 'list'.$num.'.status = '.intval($filter['status']);
		}
	}

	function onAcyProcessFilterCount_list(&$query, $filter, $num){
		$this->onAcyProcessFilter_list($query, $filter, $num);
		return acymailing_translation_sprintf('SELECTED_USERS', $query->count());
	}

	function onAcyProcessAction_list($cquery, $action, $num){
		$listid = intval($action['selectedlist']);
		$listClass = acymailing_get('class.list');
		if(is_numeric($action['selectedlist'])){
			$myList = $listClass->get($listid);
			if(empty($myList->listid)){
				return 'ERROR : List '.$listid.' not found';
			}

			if(empty($action['status'])){
				$query = 'DELETE listremove.* FROM '.acymailing_table('listsub').' AS listremove ';
				$query .= 'JOIN #__acymailing_subscriber AS sub ON listremove.subid = sub.subid ';
				if(!empty($cquery->join)) $query .= ' JOIN '.implode(' JOIN ', $cquery->join);
				if(!empty($cquery->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $cquery->leftjoin);
				$query .= ' WHERE listremove.listid = '.$listid;
				if(!empty($cquery->where)) $query .= ' AND ('.implode(') AND (', $cquery->where).')';
			}elseif($action['status'] == -1){
				$query = 'UPDATE '.acymailing_table('listsub').' AS listsub'.$num.' JOIN '.acymailing_table('subscriber').' AS sub ON listsub'.$num.'.subid = sub.subid ';
				if(!empty($cquery->join)) $query .= ' JOIN '.implode(' JOIN ', $cquery->join);
				if(!empty($cquery->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $cquery->leftjoin);
				$query .= ' SET listsub'.$num.'.status = -1, listsub'.$num.'.unsubdate = '.time().' WHERE listsub'.$num.'.listid = '.$listid;
				if(!empty($cquery->where)) $query .= ' AND ('.implode(') AND (', $cquery->where).')';
			}else{
				$query = 'INSERT IGNORE INTO '.acymailing_table('listsub').' (listid,subid,subdate,status) ';
				$query .= $cquery->getQuery(array($listid, 'sub.subid', time(), 1));
			}
			$nbsubscribed = acymailing_query($query);

			if(empty($action['status'])){
				return acymailing_translation_sprintf('IMPORT_REMOVE', $nbsubscribed, '<b><i>'.$myList->name.'</i></b>');
			}elseif($action['status'] == -1){
				return acymailing_translation_sprintf('NB_UNSUB_USERS', $nbsubscribed);
			}else{
				return acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $nbsubscribed, '<b><i>'.$myList->name.'</i></b>');
			}
		}

		$myList = $listClass->get($listid);
		if(empty($myList->listid)){
			return 'ERROR : List '.$listid.' not found';
		}
		if(empty($action['status'])){
			$query = 'SELECT listremove.`subid` FROM #__acymailing_listsub as listremove';
			$query .= ' JOIN #__acymailing_subscriber as sub ON listremove.subid = sub.subid ';
			$condition = ' WHERE listremove.listid = '.$listid;
		}elseif($action['status'] == -1){
			$query = 'SELECT listunsub.`subid` FROM #__acymailing_listsub as listunsub JOIN #__acymailing_subscriber as sub ON listunsub.subid = sub.subid ';
			$condition = ' WHERE listunsub.listid = '.$listid.' AND listunsub.status != -1';
		}else{
			$query = 'SELECT sub.`subid` FROM #__acymailing_subscriber as sub';
			$query .= ' LEFT JOIN #__acymailing_listsub as listsubscribe ON listsubscribe.subid = sub.subid AND listsubscribe.listid = '.$listid;
			$condition = ' WHERE listsubscribe.subid IS NULL';
		}
		if(!empty($cquery->join)) $query .= ' JOIN '.implode(' JOIN ', $cquery->join);
		if(!empty($cquery->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $cquery->leftjoin);
		$query .= $condition;
		if(!empty($cquery->where)) $query .= ' AND ('.implode(') AND (', $cquery->where).')';
		if(!empty($cquery->orderBy)) $query .= ' ORDER BY '.$cquery->orderBy;
		if(!empty($cquery->limit)) $query .= ' LIMIT '.intval($cquery->limit);
		$subids = acymailing_loadResultArray($query);

		if(!empty($subids)){
			$listsubClass = acymailing_get('class.listsub');
			$time = time();
			$timeFunction = 'acymailing_getTime';
			if(!isset($action['sendhours']) || strlen($action['sendhours']) < 1){
				$action['sendhours'] = '%H';
				$timeFunction = 'strftime';
			}
			if(!isset($action['sendminutes']) || strlen($action['sendminutes']) < 1) $action['sendminutes'] = '%M';
			$format = '%Y-%m-%d '.$action['sendhours'].':'.$action['sendminutes'].':00';
			if($action['status'] == 1 && !empty($action['delaynum'])){
				$listsubClass->campaigndelay = $timeFunction(strftime($format, strtotime('+'.intval($action['delaynum']).' '.$action['delaytype'])));
			}else{
				$listsubClass->campaigndelay = $timeFunction(strftime($format, $time));
			}
			if($listsubClass->campaigndelay < $time){
				$listsubClass->campaigndelay = 0;
			}else $listsubClass->campaigndelay -= $time;

			if(!empty($action['skipedfollowups'])){
				$action['skipedfollowups'] = intval($action['skipedfollowups']);
				if(!empty($action['skipedfollowups'])) $listsubClass->skipedfollowups = $action['skipedfollowups'];
			}
			$listsubClass->checkAccess = false;
			$listsubClass->sendNotif = false;
			$listsubClass->sendConf = false;
			foreach($subids as $subid){
				if(empty($action['status'])){
					$listsubClass->removeSubscription($subid, array($listid));
				}elseif($action['status'] == -1) $listsubClass->updateSubscription($subid, array('-1' => array($listid)));
				else $listsubClass->addSubscription($subid, array('1' => array($listid)));
			}
		}

		$nbsubscribed = count($subids);
		if(empty($action['status'])){
			return acymailing_translation_sprintf('IMPORT_REMOVE', $nbsubscribed, '<b><i>'.$myList->name.'</i></b>');
		}elseif($action['status'] == -1){
			return acymailing_translation_sprintf('NB_UNSUB_USERS', $nbsubscribed);
		}else{
			return acymailing_translation_sprintf('IMPORT_SUBSCRIBE_CONFIRMATION', $nbsubscribed, '<b><i>'.$myList->name.'</i></b>');
		}
	}

	function acymailing_replaceusertags(&$email, &$user, $send = true){
		$this->_replacelisttags($email, $user, $send);

		if(empty($user->key) && !empty($user->subid)){
			$user->key = acymailing_generateKey(14);
			acymailing_query('UPDATE '.acymailing_table('subscriber').' SET `key`= '.acymailing_escapeDB($user->key).' WHERE subid = '.(int)$user->subid.' LIMIT 1');
		}

		if(!isset($user->key)) $user->key = '';

		if($this->unsubscribeLink && !$this->listunsubscribe && $this->params->get('listunsubscribe', 0) && method_exists($email, 'addCustomHeader')){
			$lang = empty($email->language) ? '' : '&lang='.$email->language;
			$myLink = 'index.php?subid='.intval($user->subid).'&option=com_acymailing&ctrl=user&task=out&mailid='.$email->mailid.'&key='.urlencode($user->key).$this->unsubscribeItem.$lang;
			
			$mainurl = acymailing_mainURL($myLink);
			$myLink = $mainurl.$myLink;
			if((bool)$this->params->get('unsubscribetemplate', false)) $myLink .= '&tmpl=component';

			$this->listunsubscribe = true;
			$mailto = $this->params->get('listunsubscribeemail');
			if(empty($mailto)) $mailto = @$email->replyemail;
			if(empty($mailto)){
				$config = acymailing_config();
				$mailto = $config->get('reply_email');
			}
			$email->addCustomHeader('List-Unsubscribe: <'.$myLink.'>, <mailto:'.$mailto.'?subject=unsubscribe_user_'.$user->subid.'&body=Please%20unsubscribe%20user%20ID%20'.$user->subid.'>');
		}
	}

	function acymailing_replacetags(&$email, $send = true){
		if(acymailing_getVar('none', 'task', '') == 'replacetags') return;
		
		$this->_replacesubscriptiontags($email);
		$this->_replacemailtags($email);
	}

	private function _replacemailtags(&$email){
		$variables = array('subject', 'body', 'altbody');
		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$result = $acypluginsHelper->extractTags($email, 'mail');
		$tags = array();

		foreach($result as $key => $oneTag){
			$field = $oneTag->id;
			if(!empty($email) && !empty($email->$field)){
				$text = $email->$field;
				$acypluginsHelper->formatString($text, $oneTag);
				$tags[$key] = $text;
			}else{
				$tags[$key] = $oneTag->default;
			}
		}

		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$email->$var = str_replace(array_keys($tags), $tags, $email->$var);
		}
	}

	private function _replacelisttags(&$email, &$user, $send){
		if(!empty($email->ReplyTo)){
			$toDelete = 0;
			foreach($email->ReplyTo as $i => $replyto){
				if(trim($i) != '{list:members}') continue;
				$toDelete = $i;
				break;
			}
			if(!empty($toDelete)){
				unset($email->ReplyTo[$toDelete]);
				$acyConfig = acymailing_config();
				$listMembers = $this->loadlistmembers($email, $user);
				foreach($listMembers as $member){
					if($acyConfig->get('add_names', true) && !empty($member->name)){
						$replyToName = $email->cleanText(trim($member->name));
					}else{
						$replyToName = '';
					}
					$email->AddReplyTo($email->cleanText($member->email), $replyToName);
				}
			}
		}

		$this->acypluginsHelper = acymailing_get('helper.acyplugins');
		$tags = $this->acypluginsHelper->extractTags($email, 'list');
		if(empty($tags)) return;

		$replaceTags = array();
		foreach($tags as $oneTag => $parameter){
			$method = '_list'.trim(strtolower($parameter->id));

			if(method_exists($this, $method)){
				$replaceTags[$oneTag] = $this->$method($email, $user, $parameter);
			}else{
				$replaceTags[$oneTag] = 'Method not found : '.$method;
			}
		}

		$this->acypluginsHelper->replaceTags($email, $replaceTags, true);
	}

	private function _getattachedlistid($email, $subid){

		$mailid = $email->mailid;
		$type = strtolower($email->type);

		if(isset($this->lists[$mailid][$subid])) return $this->lists[$mailid][$subid];


		if($type == 'followup'){
			$listid = acymailing_loadResult('SELECT a.listid
							FROM #__acymailing_listsub AS a
							JOIN #__acymailing_listcampaign AS b
								ON a.listid = b.listid
							JOIN #__acymailing_listmail AS c
								ON b.campaignid = c.listid
							WHERE a.subid = '.intval($subid).'
								AND c.mailid = '.intval($mailid).'
							ORDER BY a.status DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}
		}

		if(in_array($type, array('news', 'autonews'))){
			if(!empty($subid)){
				$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_listsub as a JOIN #__acymailing_listmail as b ON a.listid = b.listid WHERE a.subid = '.intval($subid).' AND b.mailid = '.intval($mailid).' ORDER BY a.status DESC LIMIT 1');
				if(!empty($listid)){
					$this->lists[$mailid][$subid] = $listid;
					return $listid;
				}
			}

			$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_listmail as a JOIN #__acymailing_list as b ON a.listid = b.listid WHERE a.mailid = '.intval($mailid).' ORDER BY b.published DESC , b.visible DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}
		}

		if($type == 'welcome' && !empty($subid)){
			$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_list as a JOIN #__acymailing_listsub as b ON a.listid = b.listid WHERE a.welmailid = '.intval($mailid).' AND b.subid = '.intval($subid).' ORDER BY b.subdate DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}
		}

		if($type == 'unsub' && !empty($subid)){
			$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_list as a JOIN #__acymailing_listsub as b ON a.listid = b.listid WHERE a.unsubmailid = '.intval($mailid).' AND b.subid = '.intval($subid).' ORDER BY b.unsubdate DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}
		}

		$allLists = array_merge(acymailing_getVar('array', 'subscription', '', ''), explode(',', acymailing_getVar('string', 'hiddenlists', '', '')));
		$data = acymailing_getVar('array', 'data', '', '');
		if(!empty($data['listsub'])){
			$allLists = array_merge($allLists, array_keys($data['listsub']));
		}

		if(!empty($allLists) && in_array($type, array('unsub', 'welcome'))){
			acymailing_arrayToInteger($allLists);
			$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_list as a WHERE (a.welmailid = '.intval($mailid).' OR unsubmailid = '.intval($mailid).') AND listid IN ('.implode(',', $allLists).') ORDER BY a.published DESC, a.visible DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}

			$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_list as a WHERE (a.welmailid = '.intval($mailid).' OR unsubmailid = '.intval($mailid).') ORDER BY a.published DESC, a.visible DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}
		}

		if(!empty($allLists)){
			foreach($allLists as $listid){
				if(!empty($listid)){
					$this->lists[$mailid][$subid] = intval($listid);
					return intval($listid);
				}
			}
		}

		if(!empty($subid)){
			$listid = acymailing_loadResult('SELECT a.listid FROM #__acymailing_listsub as a JOIN #__acymailing_list as b ON a.listid = b.listid WHERE a.subid = '.intval($subid).' ORDER BY b.published DESC , b.visible DESC LIMIT 1');
			if(!empty($listid)){
				$this->lists[$mailid][$subid] = $listid;
				return $listid;
			}
		}
	}


	private function _listcount(&$email, &$user, &$parameter){
		if(!isset($parameter->listid)){
			$listid = $this->_getattachedlistid($email, $user->subid);
		}else{
			$listid = $parameter->listid;
		}

		if(empty($listid)){
			return acymailing_loadResult('SELECT COUNT(subid) FROM #__acymailing_subscriber');
		}else{
			return acymailing_loadResult('SELECT COUNT(subid) FROM #__acymailing_listsub WHERE listid = '.intval($listid).' AND status = 1');
		}
	}

	private function _listsubscription(&$email, &$user, &$parameter){
		if(empty($user->subid)) return "";
		$listSubClass = acymailing_get('class.listsub');
		return $listSubClass->getSubscriptionString($user->subid);
	}

	private function _listnames(&$email, &$user, &$parameter){
		if(empty($user->subid)) return "";
		$listSubClass = acymailing_get('class.listsub');
		$usersubscription = $listSubClass->getSubscription($user->subid);
		if(empty($usersubscription)){
			$subscribedLists = $this->_getFormListNames();
			if(empty($subscribedLists)) return '';
			return implode(isset($parameter->separator) ? $parameter->separator : ', ', $subscribedLists);
		}
		$lists = array();
		if(!empty($usersubscription)){
			foreach($usersubscription as $onesub){
				if($onesub->status < 1 || empty($onesub->published)) continue;
				$lists[] = $onesub->name;
			}
		}
		return implode(isset($parameter->separator) ? $parameter->separator : ', ', $lists);
	}


	private function _getFormListNames(){
		$allLists = array_merge(acymailing_getVar('array', 'subscription', '', ''), explode(',', acymailing_getVar('string', 'hiddenlists', '', '')));
		$data = acymailing_getVar('array', 'data', '', '');
		if(!empty($data['listsub'])){
			foreach($data['listsub'] as $i => $oneList){
				if($oneList['status'] != 1) unset($data['listsub'][$i]);
			}
			$allLists = array_merge($allLists, array_keys($data['listsub']));
		}
		if(empty($allLists)) return array();

		acymailing_arrayToInteger($allLists);
		foreach($allLists as $i => $oneList){
			if(empty($oneList)) unset($allLists[$i]);
		}
		if(empty($allLists)) return array();

		return acymailing_loadResultArray('SELECT name FROM #__acymailing_list WHERE listid IN ('.implode(',', $allLists).')');
	}

	private function _listowner(&$email, &$user, &$parameter){
		if(empty($user->subid)) return '';
		$listid = $this->_getattachedlistid($email, $user->subid);
		if(empty($listid)) return "";

		if(!isset($this->listsowner[$listid])){
			$this->listsowner[$listid] = acymailing_loadObject('SELECT u.* FROM #__acymailing_list as list JOIN #__users as u ON u.id = list.userid WHERE list.listid = '.intval($listid));
		}

		if(!in_array($parameter->field, array('username', 'name', 'email'))) return 'Field not found : '.$parameter->field;
		return @$this->listsowner[$listid]->{$parameter->field};
	}

	private function _loadlist($listid){
		if(isset($this->listsinfo[$listid])) return;

		$this->listsinfo[$listid] = acymailing_loadObject('SELECT * FROM #__acymailing_list WHERE listid = '.intval($listid));
	}

	private function _listname(&$email, &$user, &$parameter){
		if(empty($user->subid)) return '';
		$listid = $this->_getattachedlistid($email, $user->subid);
		if(empty($listid)) return "No list => no name!";

		$this->_loadlist($listid);

		return @$this->listsinfo[$listid]->name;
	}

	private function _listdescription(&$email, &$user, &$parameter){
		if(empty($user->subid)) return '';
		$listid = $this->_getattachedlistid($email, $user->subid);
		if(empty($listid)) return "No list => no description!";

		$this->_loadlist($listid);

		return @$this->listsinfo[$listid]->description;
	}

	private function _listid(&$email, &$user, &$parameter){
		if(empty($user->subid)) return '';
		$listid = $this->_getattachedlistid($email, $user->subid);
		if(empty($listid)) return "No list => no ID!";

		return $listid;
	}

	private function loadlistmembers(&$email, &$user){
		if(empty($user->subid)) return '';
		$listid = $this->_getattachedlistid($email, $user->subid);
		if(empty($listid)) return array();

		return acymailing_loadObjectList('SELECT s.email, s.name FROM #__acymailing_listsub AS l JOIN #__acymailing_subscriber AS s ON s.subid=l.subid WHERE l.listid='.intval($listid).' AND l.status=1 AND s.enabled=1 AND s.accept=1');
	}

	private function _replacesubscriptiontags(&$email){
		$match = '#(?:{|%7B)(modify[^}]*|confirm[^}]*|unsubscribe(?:\|[^}]*)?|subscribe[^}]*)(?:}|%7D)(.*)(?:{|%7B)/(modify|confirm|unsubscribe|subscribe)(?:}|%7D)#Uis';
		$variables = array('subject', 'body', 'altbody');
		$found = false;
		$results = array();
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
			if(empty($results[$var][0])) unset($results[$var]);
		}

		if(!$found) return;

		$tags = array();
		$this->listunsubscribe = false;
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($tags[$oneTag])) continue;
				$tags[$oneTag] = $this->replaceSubscriptionTag($allresults, $i, $email);
			}
		}

		foreach(array_keys($results) as $var){
			$email->$var = str_replace(array_keys($tags), $tags, $email->$var);
		}
	}

	function replaceSubscriptionTag(&$allresults, $i, &$email){
		$config = acymailing_config();
		$lang = empty($email->language) ? '' : '&lang='.$email->language;

		$parameters = $this->acypluginsHelper->extractTag($allresults[1][$i]);
		$itemId = $this->params->get(strtolower($parameters->id).'itemid', $config->get('itemid', 0));
		$itemId = empty($parameters->itemid) ? $itemId : intval($parameters->itemid);
		$item = empty($itemId) ? '' : '&Itemid='.$itemId;

		if($parameters->id == 'confirm'){ //confirm your subscription link
			$myLink = acymailing_frontendLink('index.php?subid={subtag:subid}&option=com_acymailing&ctrl=user&task=confirm&key={subtag:key|urlencode}'.$item.$lang, true, (bool)$this->params->get('confirmtemplate', false));
			if(empty($allresults[2][$i])) return $myLink;
			return '<a target="_blank" href="'.$myLink.'">'.$allresults[2][$i].'</a>';
		}elseif($parameters->id == 'modify'){ //modify your subscription link
			$myLink = acymailing_frontendLink('index.php?subid={subtag:subid}&option=com_acymailing&ctrl=user&task=modify&key={subtag:key|urlencode}'.$item.$lang, true, (bool)$this->params->get('modifytemplate', false));
			if(empty($allresults[2][$i])) return $myLink;
			return '<a style="text-decoration:none;" target="_blank" href="'.$myLink.'"><span class="acymailing_modify">'.$allresults[2][$i].'</span></a>';
		}elseif($parameters->id == 'subscribe'){ //add a direct subscription link
			if(empty($parameters->lists)) return 'You must select at least one list';
			$lists = explode(',', $parameters->lists);
			acymailing_arrayToInteger($lists);
			$captchaKey = $config->get('captcha_enabled') ? '&seckey='.$config->get('security_key', '') : '';
			$myLink = acymailing_frontendLink('index.php?option=com_acymailing&ctrl=sub&task=optin&hiddenlists='.implode(',', $lists).'&user[email]={subtag:email|urlencode}'.$item.$lang.$captchaKey);
			if(empty($allresults[2][$i])) return $myLink;
			return '<a style="text-decoration:none;" target="_blank" href="'.$myLink.'"><span class="acymailing_sub">'.$allresults[2][$i].'</span></a>';
		}//unsubscribe link
		$myLink = acymailing_frontendLink('index.php?subid={subtag:subid}&option=com_acymailing&ctrl=user&task=out&mailid='.$email->mailid.'&key={subtag:key|urlencode}'.$item.$lang, true, (bool)$this->params->get('unsubscribetemplate', false));

		$this->unsubscribeLink = true;
		$this->unsubscribeItem = $item;

		if(empty($allresults[2][$i])) return $myLink;
		return '<a style="text-decoration:none;" target="_blank" href="'.$myLink.'"><span class="acymailing_unsub">'.$allresults[2][$i].'</span></a>';
	}
}//endclass
extensions/plg_acymailing_tablecontents/index.html000060400000000054152455705230016647 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_tablecontents/tablecontents.xml000060400000003330152455705230020241 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing table of contents generator</name>
	<creationDate>January 2011</creationDate>
	<version>1.0.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to generate table of contents</description>
	<files>
		<filename plugin="tablecontents">tablecontents.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tablecontents"/>
		<param name="divider" type="radio" default="br" label="Divider" description="Separator added between each link">
			<option value="br">Carriage return</option>
			<option value="space">Space</option>
			<option value="li">ul / li</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tablecontents"/>
				<field name="divider" type="radio" default="br" label="Divider" description="Separator added between each link">
					<option value="br">Carriage return</option>
					<option value="space">Space</option>
					<option value="li">ul / li</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_tablecontents/tablecontents.php000060400000021112152455705230020226 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
defined('_JEXEC') or die('Restricted access');

class plgAcymailingTablecontents extends JPlugin{

	var $noResult = array();

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'tablecontents');
			$this->params = new acyParameter($plugin->params);
		}
	}

	function acymailing_getPluginType(){
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('ACY_TABLECONTENTS');
		$onePlugin->function = 'acymailingtablecontents_show';
		$onePlugin->help = 'plugin-tablecontents';

		return $onePlugin;
	}

	function acymailingtablecontents_show(){

		$contenttype = array();
		$contenttype[] = acymailing_selectOption('', acymailing_translation('ACY_EXISTINGANCHOR'));
		for($i = 1; $i < 6; $i++){
			$contenttype[] = acymailing_selectOption("|type:h".$i, 'H'.$i);
		}
		$contenttype[] = acymailing_selectOption('class', acymailing_translation('CLASS_NAME'));

		$contentsubtype = array();
		$contentsubtype[] = acymailing_selectOption('', acymailing_translation('ACY_NONE'));
		for($i = 1; $i < 6; $i++){
			$contentsubtype[] = acymailing_selectOption("|subtype:h".$i, 'H'.$i);
		}
		$contentsubtype[] = acymailing_selectOption('class', acymailing_translation('CLASS_NAME'));

		?>

		<script language="javascript" type="text/javascript">
			<!--
			function updateTag(){
				var tag = '{tableofcontents';
				if(document.adminForm.contenttype.value){
					if(document.adminForm.contenttype.value == 'class'){
						document.adminForm.classvalue.style.display = '';
						tag += '|class:' + document.adminForm.classvalue.value;
					}else{
						document.adminForm.classvalue.style.display = 'none';
						tag += document.adminForm.contenttype.value;
					}
				}
				if(document.adminForm.contentsubtype.value){
					if(document.adminForm.contentsubtype.value == 'class'){
						document.adminForm.subclassvalue.style.display = '';
						tag += '|subclass:' + document.adminForm.subclassvalue.value;
					}else{
						document.adminForm.subclassvalue.style.display = 'none';
						tag += document.adminForm.contentsubtype.value;
					}
				}
				tag += '}';

				setTag(tag);
			}
			//-->
		</script>
		<div class="onelineblockoptions">
			<span class="acyblocktitle"><?php echo acymailing_translation('ACY_GENERATEANCHOR'); ?></span>
			<table width="100%" class="acymailing_table">
				<tr>
					<td><?php echo acymailing_translation_sprintf('ACY_LEVEL', 1)?></td>
					<td><?php echo acymailing_select($contenttype, 'contenttype', 'size="1" onchange="updateTag();"', 'value', 'text'); ?><input type="text" style="display:none" onchange="updateTag();" name="classvalue"/></td>
				</tr>
				<tr>
					<td><?php echo acymailing_translation_sprintf('ACY_LEVEL', 2)?></td>
					<td><?php echo acymailing_select($contentsubtype, 'contentsubtype', 'size="1" onchange="updateTag();"', 'value', 'text'); ?><input type="text" style="display:none" onchange="updateTag();" name="subclassvalue"/></td>
				</tr>
			</table>
		</div>
		<?php
		acymailing_addScript(true, "document.addEventListener(\"DOMContentLoaded\", function(){ updateTag(); });");
	}


	function acymailing_replaceusertags(&$email, &$user, $send = true){

		if(isset($this->noResult[intval($email->mailid)])) return;

		$match = '#{tableofcontents(.*)}#Ui';

		$variables = array('subject', 'body', 'altbody');

		$found = false;
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
			if(empty($results[$var][0])) unset($results[$var]);
		}

		if(!$found){
			$this->noResult[intval($email->mailid)] = true;
			return;
		}

		$mailerHelper = acymailing_get('helper.mailer');

		$htmlreplace = array();
		$textreplace = array();
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($htmlreplace[$oneTag])) continue;

				$article = $this->_generateTable($allresults, $i, $email);
				$htmlreplace[$oneTag] = $article;
				$textreplace[$oneTag] = $mailerHelper->textVersion($article);
				$subjectreplace[$oneTag] = strip_tags($article);
			}
		}
		$email->body = str_replace(array_keys($htmlreplace), $htmlreplace, $email->body);
		$email->altbody = str_replace(array_keys($textreplace), $textreplace, $email->altbody);
		$email->subject = str_replace(array_keys($subjectreplace), $subjectreplace, $email->subject);
	}

	function _generateTable(&$results, $i, &$email){

		$arguments = explode('|', strip_tags($results[1][$i]));
		$tag = new stdClass();
		$tag->divider = $this->params->get('divider', 'br');
		$tag->before = '';
		$tag->after = '';
		$tag->subdivider = $this->params->get('divider', 'br');
		$tag->subbefore = '';
		$tag->subafter = '';
		for($i = 1, $a = count($arguments); $i < $a; $i++){
			$args = explode(':', $arguments[$i]);
			if(isset($args[1])){
				$tag->{$args[0]} = $args[1];
			}else{
				$tag->{$args[0]} = true;
			}
		}

		if($tag->divider == 'br'){
			$tag->divider = '<br />';
			$tag->subbefore = $tag->subdivider = '<br /> - ';
		}elseif($tag->divider == 'space'){
			$tag->subdivider = ', ';
			$tag->divider = ' ';
			$tag->subbefore = ' ( ';
			$tag->subafter = ' ) ';
		}elseif($tag->divider == 'li'){
			$tag->subdivider = $tag->divider = '</li><li>';
			$tag->subbefore = $tag->before = '<ul><li>';
			$tag->subafter = $tag->after = '</li></ul>';
		}

		$this->updateMail = array();
		$this->links = array();
		$this->sublinks = array();
		$anchorLinks = $this->_findLinks($tag, $email);
		if(!empty($tag->subtype) || !empty($tag->subclass)){
			$anchorSubLinks = $this->_findLinks($tag, $email, true);
			if(empty($this->links)){
				$this->links = $this->sublinks;
				unset($this->sublinks);
			}
		}

		$links = $this->links;
		if(!empty($tag->limit)){
			$links = array_slice($links, 0, $tag->limit);
		}

		if(empty($links)) return '';
		if(!empty($this->updateMail)) $email->body = str_replace(array_keys($this->updateMail), $this->updateMail, $email->body);

		if(!empty($this->sublinks)){
			$sublinks = $this->sublinks;
			foreach($links as $ilink => $oneLink){
				$allsublinks = array();
				$from = $anchorLinks['pos'][$ilink];
				$to = empty($anchorLinks['pos'][$ilink + 1]) ? 9999999999999 : $anchorLinks['pos'][$ilink + 1];
				foreach($sublinks as $isublink => $oneSubLink){
					if($anchorSubLinks['pos'][$isublink] > $to) break;
					if($anchorSubLinks['pos'][$isublink] > $from) $allsublinks[] = $oneSubLink;
				}
				if(!empty($allsublinks)) $links[$ilink] = $links[$ilink].$tag->subbefore.implode($tag->subdivider, $allsublinks).$tag->subafter;
			}
		}

		$result = '<div class="tableofcontents">'.$tag->before.implode($tag->divider, $links).$tag->after.'</div>';
		if(file_exists(ACYMAILING_MEDIA.'plugins'.DS.'tablecontents.php')){
			ob_start();
			require(ACYMAILING_MEDIA.'plugins'.DS.'tablecontents.php');
			$result = ob_get_clean();
		}
		return $result;
	}

	function _findLinks(&$tag, &$email, $sub = false){
		if($sub){
			$varType = 'subtype';
			$varClass = 'subclass';
			$varLink = &$this->sublinks;
		}else{
			$varType = 'type';
			$varClass = 'class';
			$varLink = &$this->links;
		}
		if(!empty($tag->$varType)){
			preg_match_all('#<'.$tag->$varType.'[^>]*>((?!</ *'.$tag->$varType.'>).)*</ *'.$tag->$varType.'>#Uis', $email->body, $anchorresults);
		}elseif(!empty($tag->class)){
			preg_match_all('#<[^>]*class="'.$tag->$varClass.'"[^>]*>(<[^>]*>|[^<>])*</.*>#Uis', $email->body, $anchorresults);
			$tag->$varType = 'item';
		}else{
			preg_match_all('#<a[^>]*name="([^">]*)"[^>]*>((?!</ *a>).)*</ *a>#Uis', $email->body, $anchorresults);
		}

		if(empty($anchorresults)) return '';


		foreach($anchorresults[0] as $i => $oneContent){
			$anchorresults['pos'][$i] = strpos($email->body, $oneContent);
			$linktext = strip_tags($oneContent);
			if(empty($linktext)) continue;
			if(empty($tag->$varType)){
				$varLink[$i] = '<a href="#'.$anchorresults[1][$i].'" class="oneitem" >'.$linktext.'</a>';
			}else{
				$varLink[$i] = '<a href="#'.$tag->$varType.$i.'" class="oneitem oneitem'.$tag->$varType.'" >'.$linktext.'</a>';
				if(preg_match('#<a[^>]*>[^<]*'.preg_quote($oneContent, '#').'#Uis', $email->body, $linkBefore)){
					$this->updateMail[$linkBefore[0]] = '<a name="'.$tag->$varType.$i.'"></a>'.$linkBefore[0];
				}else{
					$this->updateMail[$oneContent] = '<a name="'.$tag->$varType.$i.'"></a>'.$oneContent;
				}
			}
		}

		return $anchorresults;
	}
}//endclass
extensions/plg_system_regacymailing/regacymailing.php000060400000123414152455705230017361 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgSystemRegacymailing extends JPlugin{
	var $option = '';
	var $view = '';

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
	}

	function initAcy(){
		if(!include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')) return false;

		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('system', 'regacymailing');
			$this->params = new acyParameter($plugin->params);
		}

		return true;
	}

	function onAfterRoute(){
		if(!empty($_POST['option']) && $_POST['option'] == 'com_virtuemart' && !empty($_POST['func']) && $_POST['func'] == 'shopperupdate'){
			if($this->initAcy() === false) return true;
			$this->_updateVM();
		}

		if(!empty($_REQUEST['option']) && $_REQUEST['option'] == 'com_community' && !empty($_REQUEST['task']) && ($_REQUEST['task'] == 'register_save' || $_REQUEST['task'] == 'save')){
			if($this->initAcy() === false) return true;
			$this->_saveInSession();
		}

		if(!empty($_REQUEST['option']) && $_REQUEST['option'] == 'com_jblance' && !empty($_REQUEST['layout']) && in_array($_REQUEST['layout'], array('showfront', 'planadd'))){
			if($this->initAcy() === false) return true;
			$this->_saveInSession();
		}

		if(!empty($_REQUEST['option']) && in_array($_REQUEST['option'], array('com_user', 'com_users')) && !empty($_REQUEST['view']) && in_array($_REQUEST['view'], array('register', 'registration', 'profile', 'user'))){
			if($this->initAcy() === false) return true;
			$fieldsClass = acymailing_get('class.fields');
			$fieldsClass->origin = 'joomla';
			$user = new stdClass();

			$taskVar = ACYMAILING_J16 ? 'layout' : 'task';

			if(acymailing_isAdmin()){
				if($_REQUEST['view'] == 'user' && !empty($_REQUEST[$taskVar]) && $_REQUEST[$taskVar] == 'edit'){
					$extraFields = $fieldsClass->getFields('joomlaprofile', $user);
				}
			}else{
				if(in_array($_REQUEST['view'], array('register', 'registration'))){
					$extraFields = $fieldsClass->getFields('frontjoomlaregistration', $user);
				}elseif(in_array($_REQUEST['view'], array('user', 'profile')) && (!empty($_REQUEST[$taskVar]) && $_REQUEST[$taskVar] == 'edit')){
					$extraFields = $fieldsClass->getFields('frontjoomlaprofile', $user);
				}
			}

			if(!empty($extraFields)){
				foreach($extraFields as $oneField){
					if($oneField->type != 'date') continue;
					JHTML::_('behavior.calendar');
					break;
				}
			}
		}
	}

	private function _saveInSession(){
		$acysub = acymailing_getVar('array', 'acysub', array(), '');
		$session = JFactory::getSession();
		if(!empty($acysub)){
			$session->set('acysub', $acysub);
		}

		$acysubhidden = acymailing_getVar('string', 'acysubhidden');
		if(!empty($acysubhidden)){
			$session->set('acysubhidden', $acysubhidden);
		}

		$regacy = acymailing_getVar('array', 'regacy', array(), '');
		if(!empty($regacy)){
			$session->set('regacy', $regacy);
		}
	}

	private function _updateVM(){
		$currentUserid = acymailing_currentUserId();
		if(empty($currentUserid)) return;

		$acylistsdisplayed = acymailing_getVar('string', 'acylistsdisplayed_dispall').','.acymailing_getVar('string', 'acylistsdisplayed_onecheck');
		if(strlen($acylistsdisplayed) < 2) return;
		$listsDisplayed = explode(',', $acylistsdisplayed);
		acymailing_arrayToInteger($listsDisplayed);
		if(empty($listsDisplayed)) return;

		$userClass = acymailing_get('class.subscriber');

		$subid = $userClass->subid($currentUserid);
		if(empty($subid)) return; //The user should already be there

		$visiblelistschecked = acymailing_getVar('array', 'acysub', array(), '');
		$acySubHidden = acymailing_getVar('string', 'acysubhidden');
		if(!empty($acySubHidden)){
			$visiblelistschecked = array_merge($visiblelistschecked, explode(',', $acySubHidden));
		}

		$listsClass = acymailing_get('class.list');
		$allLists = $listsClass->getLists('listid');
		if(acymailing_level(1)){
			$allLists = $listsClass->onlyCurrentLanguage($allLists);
		}

		$formLists = array();
		foreach($listsDisplayed as $listidDisplayed){
			$newlists = array();
			$newlists['status'] = in_array($listidDisplayed, $visiblelistschecked) ? '1' : '-1';
			$formLists[$listidDisplayed] = $newlists;
		}

		$userClass->saveSubscription($subid, $formLists);
	}

	function _getVmVersion(){
		$file = ACYMAILING_ROOT.'administrator'.DS.'components'.DS.'com_virtuemart'.DS.'version.php';
		if(!file_exists($file)) return '0.0.0';
		include_once($file);
		$vmversion = new vmVersion();
		if(empty($vmversion->RELEASE)){
			return vmVersion::$RELEASE;
		}else{
			return $vmversion->RELEASE;
		}
	}

	function onAfterRender(){
		if($this->initAcy() === false) return true;

		$option = acymailing_getVar('cmd', 'option', '', 'GET');
		if(empty($option)) $option = acymailing_getVar('cmd', 'option');

		if(empty($option)) return;
		$this->option = $option;

		$this->components = array();
		$this->components['com_user'] = array('view' => array('register', 'user'), 'edittasks' => array('profile', 'user'), 'lengthafter' => 200, 'email' => array('email2', 'email'), 'password' => array('password2', 'password'), 'displayBackend' => true, 'displayLoggedin' => true);
		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		if(version_compare($jversion, '1.6.0', '>=')){
			$this->components['com_users'] = array('view' => array('registration', 'profile', 'user'), 'edittasks' => array('profile', 'user'), 'lengthafter' => 200, 'email' => array('jform[email2]', 'jform[email]'), 'password' => 'jform[password2]', 'displayBackend' => true, 'displayLoggedin' => true, 'checkLayout' => array('profile' => 'edit'));
		}else{
			$this->components['com_users'] = array('view' => array('registration', 'profile', 'user'), 'edittasks' => array('profile', 'user'), 'lengthafter' => 200, 'email' => array('email2', 'email'), 'password' => 'password2', 'displayBackend' => true, 'displayLoggedin' => true, 'tdfieldlabelclass' => 'key', 'tdclassfield' => 'key');
		}

		$this->components['com_alpharegistration'] = array('view' => array('register'), 'lengthafter' => 250);
		$this->components['com_ccusers'] = array('view' => array('register'), 'lengthafter' => 500);
		$this->components['com_community'] = array('view' => array('register', 'profile'), 'edittasks' => array('profile'), 'lengthafter' => 500, 'password' => 'jspassword2', 'email' => 'jsemail', 'displayLoggedin' => true, 'fieldclass' => 'form-field', 'labelclass' => 'form-label', 'tdclassfield' => 'paramlist_key', 'tdclassvalue' => 'paramlist_value');
		$this->components['com_extendedreg'] = array('view' => array('register'), 'lengthafter' => 200, 'password' => 'verify-password', 'email' => 'email');
		$this->components['com_gcontact'] = array('view' => array('registration'), 'lengthafter' => 200);
		$this->components['com_hikashop'] = array('view' => array('checkout', 'user'), 'viewvar' => 'ctrl', 'lengthafter' => 500, 'tdclassfield' => 'key', 'email' => 'data[register][email]', 'password' => 'data[register][password2]');
		$this->components['com_jblance'] = array('view' => array('guest'), 'layout' => array('register'), 'lengthaftermin' => 250, 'lengthafter' => 300, 'email' => 'email', 'password' => 'password2');
		$this->components['com_jshopping'] = array('view' => array('register', 'checkout'), 'viewvar' => array('task', 'controller'), 'lengthafter' => 200, 'email' => 'email', 'password' => 'password_2', 'displayLoggedin' => true);
		$this->components['com_juser'] = array('view' => array('user'), 'lengthafter' => 200);
		$this->components['com_mijoshop'] = array('viewvar' => array('route', 'view'), 'view' => array('registration', 'account/register', 'account/edit', 'account/registration'), 'edittasks' => array('account/edit', 'account/registration'), 'displayLoggedin' => true, 'lengthafter' => 500, 'email' => 'email', 'password' => array('confirm', 'password'));
		$this->components['com_osemsc'] = array('view' => array('register'), 'lengthafter' => 200, 'email' => 'oseemail', 'password' => 'osepassword2');
		$this->components['com_redshop'] = array('view' => array('registration'), 'lengthafter' => 200, 'password' => 'password2', 'email' => 'email1');
		$this->components['com_tienda'] = array('view' => array('checkout'), 'lengthafter' => 500, 'email' => 'email_address', 'password' => 'password2');
		$vmViews = array('shop.registration', 'account.billing', 'checkout.index', 'user', 'cart', 'editaddresscart', 'editaddresscheckout');
		if(version_compare($this->_getVmVersion(), '3.0.10', '>=')) $vmViews[] = 'askquestion';
		$this->components['com_virtuemart'] = array('view' => $vmViews, 'displayLoggedin' => true, 'viewvar' => 'page', 'lengthafter' => 500, 'acysubscribestyle' => 'style="clear:both"');

		if($option == 'com_rsform'){
			$formId = acymailing_getVar('cmd', 'formId', '', 'GET');
			if(empty($formId)) $formId = acymailing_getVar('cmd', 'formId');
			if(!empty($formId) && in_array(acymailing_getPrefix().'rsform_registration', acymailing_getTableList())){
				$registration = acymailing_loadObject('SELECT * FROM #__rsform_registration WHERE form_id = '.intval($formId).' AND published = 1');
				if(!empty($registration)){
					$regVar = empty($registration->reg_merge_vars) ? 'vars' : 'reg_merge_vars';
					$registrationVars = unserialize($registration->$regVar);
					$this->components['com_rsform'] = array('view' => array('rsform'), 'lengthafter' => 220, 'lengthaftermin' => 190, 'password' => array('form['.$registrationVars['password2'].']', 'form['.$registrationVars['password1'].']'), 'email' => array('form['.$registrationVars['email2'].']', 'form['.$registrationVars['email1'].']'));
				}
			}
		}

		$excludedComponents = $this->params->get('excluded');
		if(!empty($excludedComponents)){
			if(!ACYMAILING_J16) $excludedComponents = explode(',', $excludedComponents);
			foreach($excludedComponents as $oneComponent){
				unset($this->components[$oneComponent]);
			}
		}

		if(!isset($this->components[$option])) return;
		$viewVar = (isset($this->components[$option]['viewvar']) ? $this->components[$option]['viewvar'] : 'view');
		if(!is_array($viewVar)){
			if(!in_array(acymailing_getVar('string', $viewVar, acymailing_getVar('string', 'task', acymailing_getVar('string', 'view'))), $this->components[$option]['view'])) return;
			$this->view = acymailing_getVar('string', $viewVar, acymailing_getVar('string', 'task', acymailing_getVar('string', 'view')));
		}else{
			$isvalid = false;
			foreach($viewVar as $oneVar){
				if(in_array(acymailing_getVar('string', $oneVar, acymailing_getVar('string', 'task', acymailing_getVar('string', 'view'))), $this->components[$option]['view'])){
					$isvalid = true;
					$this->view = acymailing_getVar('string', $oneVar, acymailing_getVar('string', 'task', acymailing_getVar('string', 'view')));
					break;
				}
			}
			if(!$isvalid) return;
		}

		if(isset($this->components[$option]['layout']) && !in_array(acymailing_getVar('string', 'layout'), $this->components[$option]['layout'])) return;

		if(empty($this->components[$option]['displayBackend'])){
			if(acymailing_isAdmin()) return;
		}
		if(empty($this->components[$option]['displayLoggedin'])){
			$currentUserid = acymailing_currentUserId();
			if(!empty($currentUserid)) return;
		}


		if($option == 'com_community' && in_array(acymailing_getVar('string', 'task'), array('registerAvatar', 'registerProfile'))) return;

		$this->_addFields();
		$this->_addLists();
		$this->_addCSS();
	}

	private function _addFields(){
		if(!acymailing_level(3)) return;

		$option = $this->option;

		if(empty($this->components[$option]['lengthaftermin'])) $this->components[$option]['lengthaftermin'] = 0;

		if(acymailing_isAdmin()){
			$area = 'joomlaprofile';
		}elseif(!empty($this->components[$option]['edittasks']) && in_array($this->view, $this->components[$option]['edittasks'])){
			$area = 'frontjoomlaprofile';
		}else{
			$area = 'frontjoomlaregistration';
		}

		$fieldsClass = acymailing_get('class.fields');
		$fieldsClass->origin = 'joomla';
		$user = new stdClass();
		$extraFields = $fieldsClass->getFields($area, $user);

		$newOrdering = array();
		foreach($extraFields as $fieldnamekey => $oneField){
			if(in_array($oneField->namekey, array('name', 'email'))) continue;
			$newOrdering[] = $fieldnamekey;
		}

		if(empty($newOrdering)) return;

		$body = JResponse::getBody();

		$severalValueTest = false;
		if($this->params->get('customfieldsafter', 'email') == "custom"){
			$customFieldAfter = explode(';', str_replace(array('\\[', '\\]'), array('[', ']'), $this->params->get('customfieldsaftercustom')));
			$after = !empty($customFieldAfter) ? $customFieldAfter : $this->components[$option]['email'];
		}elseif(!empty($this->components[$option][$this->params->get('customfieldsafter', 'email')])){
			$after = $this->components[$option][$this->params->get('customfieldsafter', 'email')];
		}else{
			$after = ($this->params->get('customfieldsafter', 'email') == 'email') ? 'email' : 'password2';
		}
		if(is_array($after)){
			$severalValueTest = true;
			$allAfters = $after;
			$after = $after[0];
		}

		$allFormats = array();
		$allFormats['tr'] = array('tagfield' => 'tr', 'tagfieldname' => 'td', 'tagfieldvalue' => 'td');
		$allFormats['li'] = array('tagfield' => 'li', 'tagfieldname' => '', 'tagfieldvalue' => 'div');
		$allFormats['div'] = array('tagfield' => 'div', 'tagfieldname' => '', 'tagfieldvalue' => '');
		$allFormats['p'] = array('tagfield' => 'p', 'tagfieldname' => '', 'tagfieldvalue' => '');
		$allFormats['dd'] = array('tagfield' => '', 'tagfieldname' => 'dt', 'tagfieldvalue' => 'dd');

		$currentFormat = '';
		foreach($allFormats as $oneFormat => $values){
			if(preg_match('#(name="'.preg_quote($after).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</'.$oneFormat.'>)#Uis', $body)){
				$currentFormat = $oneFormat;
				break;
			}
		}

		if(empty($currentFormat) && $severalValueTest){
			$i = 1;
			while(empty($currentFormat) && $i < count($allAfters)){
				foreach($allFormats as $oneFormat => $values){
					if(preg_match('#(name="'.preg_quote($allAfters[$i]).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</'.$oneFormat.'>)#Uis', $body)){
						$after = $allAfters[$i];
						$currentFormat = $oneFormat;
						break;
					}
				}
				$i++;
			}
		}

		if(empty($currentFormat)){
			if(JDEBUG) echo 'regAcyMailing plugin, could not find the right format to display the fields...';
			return false;
		}

		$text = '';
		if(!empty($this->components[$option]['labelclass'])){
			$fieldsClass->labelClass = $this->components[$option]['labelclass'];
		}

		if(acymailing_isAdmin()){
			$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
			if(version_compare($jversion, '1.6.0', '>=')){
				$currentUserId = acymailing_getVar('int', 'id', 0);
			}else{
				$currentUserIdArray = acymailing_getVar('array', 'cid', array());
				if(is_array($currentUserIdArray) && !empty($currentUserIdArray)){
					$currentUserId = array_shift($currentUserIdArray);
				}else{
					$currentUserId = 0;
				}
			}
		}else{
			$currentUserId = acymailing_currentUserId();
		}

		if(!empty($this->components[$option]['edittasks']) && in_array($this->view, $this->components[$option]['edittasks']) && $currentUserId != 0){
			$userClass = acymailing_get('class.subscriber');
			$acyUserData = $userClass->get($userClass->subid($currentUserId));
			if(!empty($acyUserData->email)) $fieldsClass->currentUser = $acyUserData;
		}

		foreach($newOrdering as $fieldName){
			if(!empty($allFormats[$currentFormat]['tagfield'])) $text .= '<'.$allFormats[$currentFormat]['tagfield'].' id="acy'.$fieldName.'" class="acyregfield">';
			if(!empty($allFormats[$currentFormat]['tagfieldname'])) $text .= '<'.$allFormats[$currentFormat]['tagfieldname'].' class="key acyregfieldname'.(!empty($this->components[$option]['tdfieldlabelclass']) ? ' '.$this->components[$option]['tdfieldlabelclass'] : '').'">';
			$text .= $fieldsClass->getFieldName($extraFields[$fieldName]);
			if(!empty($allFormats[$currentFormat]['tagfieldname'])) $text .= '</'.$allFormats[$currentFormat]['tagfieldname'].'>';
			if(!empty($allFormats[$currentFormat]['tagfieldvalue'])) $text .= '<'.$allFormats[$currentFormat]['tagfieldvalue'].' class="acyregfieldvalue'.(empty($this->components[$option]['fieldclass']) ? '' : ' '.$this->components[$option]['fieldclass']).'" >';
			$fieldValue = (!empty($acyUserData->$fieldName) ? $acyUserData->$fieldName : $extraFields[$fieldName]->default);
			$text .= $fieldsClass->display($extraFields[$fieldName], $fieldValue, 'regacy['.$fieldName.']');
			if(!empty($allFormats[$currentFormat]['tagfieldvalue'])) $text .= '</'.$allFormats[$currentFormat]['tagfieldvalue'].'>';
			if(!empty($allFormats[$currentFormat]['tagfield'])) $text .= '</'.$allFormats[$currentFormat]['tagfield'].'>';
		}
		$currentUserid = acymailing_currentUserId();
		if(acymailing_isAdmin()){
			if(ACYMAILING_J25){
				$formid = 'user-form';
			}else $formid = 'adminForm';
		}elseif(empty($currentUserid)){
			if(ACYMAILING_J25){
				$formid = 'member-registration';
			}else $formid = 'josForm';
		}else{
			if(ACYMAILING_J25 || (ACYMAILING_J30 && (!JComponentHelper::isInstalled('com_k2') || !JComponentHelper::isEnabled('com_k2')))){
				$formid = 'member-profile';
			}else $formid = 'userform';
		}

		$js = $fieldsClass->prepareConditionalDisplay($extraFields, 'regacy', 'joomlaProfile', $formid);
		$js .= $this->_getAdditionalJs($extraFields);

		if(ACYMAILING_J16) {
			$script = '';
			$fieldsClass = acymailing_get('class.fields');
			foreach($extraFields as $oneField){
				if($oneField->type != 'text' || empty($oneField->options['checkcontent'])) continue;
				$script .= '
						var '.$oneField->namekey.'Test = new RegExp("';
				switch($oneField->options['checkcontent']) {
					case 'number':
						$script .= '^[0-9]*$';
						break;
					case 'letter':
						$script .= '^[A-Za-z\u00C0-\u017F ]*$';
						break;
					case 'letnum':
						$script .= '^[0-9a-zA-Z\u00C0-\u017F ]*$';
						break;
					case 'regexp':
						$script .= $oneField->options['regexp'];
						break;
				}

				if(!empty($oneField->options['errormessagecheckcontent'])){
					$errorMessage = $oneField->options['errormessagecheckcontent'];
				}elseif(!empty($oneField->options['errormessage'])){
					$errorMessage = $oneField->options['errormessage'];
				}else{
					$errorMessage = acymailing_translation_sprintf('FIELD_CONTENT_VALID', $fieldsClass->trans($oneField->fieldname));
				}

				$script .= '");
						if(document.getElementById("field_'.$oneField->namekey.'").value.length > 0 && !'.$oneField->namekey.'Test.test(document.getElementById("field_'.$oneField->namekey.'").value)){
							alert("'.addslashes($errorMessage).'");
							return false;
						}';
			}
			if(!empty($script)){

				if(acymailing_isAdmin()){
					$script = 'if(arguments[0] != "user.cancel"){' . $script . '}';
					if (strpos($body, 'Joomla.submitbutton =') === false) {

						$script = 'Joomla.submitbutton = function(pressbutton) {
										' . $script . '
										Joomla.submitform(pressbutton);
									}';
						$js .= $script;
					} else {
						$body = preg_replace('#(Joomla\.submitbutton =[^{]+\{)#Uis', '$1' . $script, $body, 1);
					}
				}else {
					$currentUserid = acymailing_currentUserId();
					if (empty($currentUserid) && ACYMAILING_J30) {
						$script = 'var regform = document.getElementById("' . $formid . '");
								if(!regform) regform = document.getElementsByName("' . $formid . '")[0];
								var submitbutton = regform.querySelector(\'button[type="submit"]\');
								var oldclick = submitbutton.getAttribute("onclick");
								var newclick = function(){
									' . $script . '
									eval(oldclick);
								}
								submitbutton.onclick = newclick;';
					}else{
						$script = 'var regform = document.getElementById("' . $formid . '");
									if(!regform) regform = document.getElementsByName("' . $formid . '")[0];
									var oldsubmit = regform.getAttribute("onsubmit");
									var newsubmit = function(){
										' . $script . '
										eval(oldsubmit);
									}
									regform.onsubmit = newsubmit;';
					}
					$body = str_replace('</body>', '<script type="text/javascript">' . $script . '</script></body>', $body);
				}
			}
		}

		$body = str_replace('</head>', '<script type="text/javascript">'.$js.'</script></head>', $body);

		$body = preg_replace('#(name="'.preg_quote($after).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</'.$currentFormat.'>)#Uis', '$1'.$text, $body, 1);
		JResponse::setBody($body);
		return;
	}

	private function _getAdditionalJs($fields){
		$js = '';
		foreach($fields as $oneField){
			if($oneField->type == 'date'){
				if(empty($oneField->options['format'])) $oneField->options['format'] = "%Y-%m-%d";
				$js .= 'document.addEventListener("DOMContentLoaded", function(){Calendar.setup({
						inputField: "field_'.$oneField->namekey.'",
						ifFormat: "'.$oneField->options['format'].'",
						button: "field_'.$oneField->namekey.'_img",
						align: "Tl",
						singleClick: true,
						firstDay: 0
					});});';
			}
		}
		return $js;
	}

	private function _addLists(){
		$option = $this->option;

		$visibleLists = $this->params->get('lists', 'None');
		if($visibleLists == 'None') return;

		$visibleListsArray = array();
		$listsClass = acymailing_get('class.list');
		$allLists = $listsClass->getLists('listid');
		if(acymailing_level(1)){
			$allLists = $listsClass->onlyCurrentLanguage($allLists);
		}

		$isAdmin = acymailing_isAdmin();
		if(strpos($visibleLists, ',') OR is_numeric($visibleLists)){
			$allvisiblelists = explode(',', $visibleLists);
			foreach($allLists as $oneList){
				if($oneList->published && ($oneList->visible || $isAdmin) && in_array($oneList->listid, $allvisiblelists)) $visibleListsArray[] = $oneList->listid;
			}
		}elseif(strtolower($visibleLists) == 'all'){
			foreach($allLists as $oneList){
				if($oneList->published && ($oneList->visible || $isAdmin)){
					$visibleListsArray[] = $oneList->listid;
				}
			}
		}

		if(empty($visibleListsArray)) return;

		$checkedLists = $this->params->get('listschecked', 'All');
		$userClass = acymailing_get('class.subscriber');

		if(acymailing_isAdmin()){
			$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
			if(version_compare($jversion, '1.6.0', '>=')){
				$currentUserId = acymailing_getVar('int', 'id', 0);
			}else{
				$currentUserIdArray = acymailing_getVar('array', 'cid', array());
				if(is_array($currentUserIdArray) && !empty($currentUserIdArray)) $currentUserId = array_shift($currentUserIdArray);
			}
		}else{
			$currentid = acymailing_currentUserId();
			if(!empty($currentid)){
				$currentUserId = $currentid;
			}
		}

		if(!empty($currentUserId)){
			$currentSubid = $userClass->subid($currentUserId);
			if(!empty($currentSubid)){
				$currentSubscription = $userClass->getSubscriptionStatus($currentSubid, $visibleListsArray);
				$checkedLists = '';
				foreach($currentSubscription as $listid => $oneSubsciption){
					if($oneSubsciption->status == '1' || $oneSubsciption->status == '2') $checkedLists .= $listid.',';
				}
			}
		}

		if(strtolower($checkedLists) == 'all'){
			$checkedListsArray = $visibleListsArray;
		}elseif(strpos($checkedLists, ',') OR is_numeric($checkedLists)){
			$checkedListsArray = explode(',', $checkedLists);
		}else{
			$checkedListsArray = array();
		}

		$subText = $this->params->get('subscribetext');
		if(empty($subText)){
			if(in_array($this->params->get('displaymode', 'dispall'), array('dispall', 'dropdown'))){
				$subText = acymailing_translation('SUBSCRIPTION').':';
			}else{
				$subText = acymailing_translation('YES_SUBSCRIBE_ME');
			}
		}else{
			$subText = acymailing_translation($subText);
		}

		$body = JResponse::getBody();

		$severalValueTest = false;
		if($this->params->get('fieldafter', 'password') == 'custom'){
			$listAfter = explode(';', str_replace(array('\\[', '\\]'), array('[', ']'), $this->params->get('fieldaftercustom')));
			$after = !empty($listAfter) ? $listAfter : $this->components[$option]['password'];
		}elseif(!empty($this->components[$option][$this->params->get('fieldafter', 'password')])){
			$after = $this->components[$option][$this->params->get('fieldafter', 'password')];
		}else{
			$after = ($this->params->get('fieldafter', 'password') == 'email') ? 'email' : 'password2';
		}
		if(is_array($after)){
			$severalValueTest = true;
			$allAfters = $after;
			$after = $after[0];
		}

		$listsDisplayed = '<input type="hidden" value="'.implode(',', $visibleListsArray).'" name="acylistsdisplayed_'.$this->params->get('displaymode', 'dispall').'" />';
		$return = '';
		if($this->params->get('displaymode', 'dispall') == 'dispall'){
			$return = '<table class="acy_lists" style="border:0px">';

			$displayCategories = $this->params->get('addcategory', '0');
			if($displayCategories){
				$listsByCategory = array();
				foreach($allLists as $id => $oneList){
					if(in_array($id,$visibleListsArray)) $listsByCategory[$oneList->category][] = $id;
				}
				ksort($listsByCategory);

				$visibleListsArray = array();
				foreach($listsByCategory as $oneCat => $itsLists){
					$visibleListsArray = array_merge($visibleListsArray, $itsLists);
				}
			}
			$currentCategory = '';
			foreach($visibleListsArray as $oneList){
				if(!empty($displayCategories) && !empty($allLists[$oneList]->category) && $currentCategory != $allLists[$oneList]->category){
					$return .= '<tr style="border:0px"><td style="border:0px" nowrap="nowrap" colspan="2"><div class="acylistcategory'.htmlspecialchars($allLists[$oneList]->category, ENT_QUOTES, 'UTF-8').'">'.htmlspecialchars($allLists[$oneList]->category, ENT_QUOTES, 'UTF-8').'</div></td></tr>';
					$currentCategory = $allLists[$oneList]->category;
				}
				$check = in_array($oneList, $checkedListsArray) ? 'checked="checked"' : '';
				$return .= '<tr style="border:0px"><td style="border:0px"><input type="checkbox" id="acy_list_'.$oneList.'" class="acymailing_checkbox" name="acysub[]" '.$check.' value="'.$oneList.'"/></td><td style="border:0px;padding-left:10px;" nowrap="nowrap"><label for="acy_list_'.$oneList.'" class="acylabellist">';
				$return .= $allLists[$oneList]->name;
				$return .= '</label></td></tr>';
			}
			$return .= '</table>';
		}elseif($this->params->get('displaymode', 'dispall') == 'onecheck'){
			$check = '';
			foreach($visibleListsArray as $oneList){
				if(in_array($oneList, $checkedListsArray)){
					$check = 'checked="checked"';
					break;
				};
			}
			$return = '<span class="acysubscribe_span"><input type="checkbox" id="acysubhidden" name="acysubhidden" value="'.implode(',', $visibleListsArray).'" '.$check.' /><label for="acysubhidden">'.$subText.'</label>'.$listsDisplayed.'</span>';
		}elseif($this->params->get('displaymode', 'dispall') == 'dropdown'){
			$return = '<select name="acysub[1]">';
			foreach($visibleListsArray as $oneList){
				$return .= '<option value="'.$oneList.'">'.$allLists[$oneList]->name.'</option>';
			}
			$return .= '</select>';
		}

		$return .= '<input type="hidden" name="allVisibleLists" value="'.implode(',', $visibleListsArray).'" />';

		$resInsertLists = $this->addListsReplace($after, $body, $subText, $listsDisplayed, $return);
		if(!$resInsertLists && $severalValueTest){
			$i = 1;
			while(!$resInsertLists && $i < count($allAfters)){
				$resInsertLists = $this->addListsReplace($allAfters[$i], $body, $subText, $listsDisplayed, $return);
				$i++;
			}
		}
	}

	private function addListsReplace($after, $body, $subText, $listsDisplayed, $return){
		$option = $this->option;

		if(empty($this->components[$option]['lengthaftermin'])) $this->components[$option]['lengthaftermin'] = 0;
		if(empty($this->components[$option]['acysubscribestyle'])) $this->components[$option]['acysubscribestyle'] = '';
		if(preg_match('#(name *= *"'.preg_quote($after).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</tr>)#Uis', $body)){
			$tdclassfield = '';
			$tdclassvalue = '';
			if(!empty($this->components[$option]['tdclassfield'])) $tdclassfield = 'class="'.$this->components[$option]['tdclassfield'].'"';
			if(!empty($this->components[$option]['tdclassvalue'])) $tdclassvalue = 'class="'.$this->components[$option]['tdclassvalue'].'"';

			if(in_array($this->params->get('displaymode', 'dispall'), array('dispall', 'dropdown'))){
				$return = '<tr class="acysubscribe"><td '.$tdclassfield.' style="padding-top:5px" valign="top">'.$subText.$listsDisplayed.'</td><td '.$tdclassvalue.'>'.$return.'</td></tr>';
			}else{
				$return = '<tr class="acysubscribe"><td colspan="2">'.$return.'</td></tr>';
			}
			$body = preg_replace('#(name *= *"'.preg_quote($after).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</tr>)#Uis', '$1'.$return, $body, 1);
			JResponse::setBody($body);
			return true;
		}

		$formats = array('li' => array('li', 'li'), 'div' => array('div', 'div'), 'p' => array('div', 'div'), 'dd' => array('dt', 'div'));
		foreach($formats as $oneFormat => $dispall){
			if(preg_match('#(name *= *"'.preg_quote($after).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</'.$oneFormat.'>)#Uis', $body)){
				if(in_array($this->params->get('displaymode', 'dispall'), array('dispall', 'dropdown'))){
					if($oneFormat == 'dd'){
						$return = '<dt class="acysubscribe"><label class="labelacysubscribe">'.$subText.$listsDisplayed.'</label></dt><dd>'.$return.'</dd>';
					}else{
						$return = '<'.$dispall[0].' class="acysubscribe"><label class="labelacysubscribe">'.$subText.$listsDisplayed.'</label>'.$return.'</'.$dispall[0].'>';
					}
				}else{
					$return = '<'.$dispall[1].' class="acysubscribe" '.$this->components[$option]['acysubscribestyle'].' >'.$return.'</'.$dispall[1].'>';
				}
				$body = preg_replace('#(name *= *"'.preg_quote($after).'".{'.$this->components[$option]['lengthaftermin'].','.$this->components[$option]['lengthafter'].'}</'.$oneFormat.'>)#Uis', '$1'.$return, $body, 1);
				JResponse::setBody($body);
				return true;
			}
		}

		foreach($formats as $oneFormat => $dispall){
			if(preg_match('#(name *= *"'.preg_quote($after).'"((?!</'.$oneFormat.'>).)*</'.$oneFormat.'>)#Uis', $body)){
				if(in_array($this->params->get('displaymode', 'dispall'), array('dispall', 'dropdown'))){
					if($oneFormat == 'dd'){
						$return = '<dt class="acysubscribe"><label class="labelacysubscribe">'.$subText.$listsDisplayed.'</label></dt><dd>'.$return.'</dd>';
					}else{
						$return = '<'.$dispall[0].' class="acysubscribe"><label class="labelacysubscribe">'.$subText.$listsDisplayed.'</label>'.$return.'</'.$dispall[0].'>';
					}
				}else{
					$return = '<'.$dispall[1].' class="acysubscribe" '.$this->components[$option]['acysubscribestyle'].' >'.$return.'</'.$dispall[1].'>';
				}
				$body = preg_replace('#(name *= *"'.preg_quote($after).'"((?!</'.$oneFormat.'>).)*</'.$oneFormat.'>)#Uis', '$1'.$return, $body, 1);
				JResponse::setBody($body);
				return true;
			}
		}

		return false;
	}

	private function _addCSS(){
		$style = $this->params->get('customcss');
		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);

		if(empty($style) && version_compare($jversion, '1.6.0', '<')) return;

		if(empty($style)){
			$stylestring = '<style type="text/css">'."\n";
			if(version_compare($jversion, '3.0.0', '>=')){
				$stylestring .= '.acyregfield label, .acysubscribe label {float:left; width:160px; '.(!acymailing_isAdmin() ? 'text-align:right;' : '').'}'."\n";
				$stylestring .= '.acyregfield span label, .acysubscribe .acy_lists label {width:auto;}'."\n";
				$stylestring .= '.acyregfield div:first-of-type, .acyregfield select:first-of-type, .acyregfield input, .acyregfield textarea, .acysubscribe input {margin-left:20px;}'."\n";
				$stylestring .= '.acyregfield, .acysubscribe {clear:both; padding-top:18px;}'."\n";
			}elseif(version_compare($jversion, '1.6.0', '>=') && acymailing_isAdmin()){
				$stylestring .= 'table.acy_lists{float:left;}'."\n";
			}
			$stylestring .= '</style>'."\n";
		}else{
			$stylestring = '<style type="text/css">'."\n".$style."\n".'</style>'."\n";
		}
		$body = JResponse::getBody();
		$body = preg_replace('#</head>#', $stylestring.'</head>', $body, 1);
		JResponse::setBody($body);
	}

	function onUserBeforeSave($user, $isnew, $new){
		if($this->initAcy() === false) return true;

		return $this->onBeforeStoreUser($user, $isnew);
	}

	function plgVmOnAskQuestion($VendorEmail, $vars, $function){
		if($this->initAcy() === false) return true;

		$user = JFactory::getUser();

		$id = acymailing_loadResult('SELECT id FROM #__users WHERE email = '.acymailing_escapeDB($vars['user'][email]));
		if(empty($id)){
			$isnew = true;
			$user->id = 0;
		}else{
			$isnew = false;
			$user->id = $id;
		}
		$user->email = $vars['user'][email];
		$user->name = $vars['user'][name];
		$user->block = 0;

		$this->onAfterStoreUser($user, $isnew, true, '');
	}

	function onBeforeStoreUser($user, $isnew){
		if($this->initAcy() === false) return true;

		if(is_object($user)) $user = get_object_vars($user);

		$this->oldUser = $user;

		return true;
	}

	function onAfterUserCreate(&$element){
		if($this->initAcy() === false) return true;

		$formData = acymailing_getVar('array', 'data', array(), '');

		if(empty($element->user_email) || empty($formData['address']) || !empty($element->user_cms_id) || acymailing_isAdmin()) return;

		acymailing_setVar('acy_source', 'hikashop');

		$name = @$formData['address']['address_firstname'].(!empty($formData['address']['address_middle_name']) ? ' '.$formData['address']['address_middle_name'] : '').(!empty($formData['address']['address_lastname']) ? ' '.$formData['address']['address_lastname'] : '');
		$user = array('id' => 0, 'block' => 0, 'email' => $element->user_email, 'name' => $name);
		$this->onAfterStoreUser($user, true, true, '');
	}

	function onUserAfterSave($user, $isnew, $success, $msg){
		if($this->initAcy() === false) return true;

		return $this->onAfterStoreUser($user, $isnew, $success, $msg);
	}

	function onAfterStoreUser($user, $isnew, $success, $msg){
		if($this->initAcy() === false) return true;

		if(is_object($user)) $user = get_object_vars($user);

		if($success === false OR empty($user['email'])) return true;

		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('system', 'regacymailing');
			$this->params = new acyParameter($plugin->params);
		}

		if(!acymailing_getVar('cmd', 'acy_source')) acymailing_setVar('acy_source', 'joomla');

		$config = acymailing_config();

		$userClass = acymailing_get('class.subscriber');
		$joomUser = new stdClass();
		$joomUser->email = trim(strip_tags($user['email']));
		if(!empty($user['name'])) $joomUser->name = trim(strip_tags($user['name']));
		if(empty($user['block']) && !$this->params->get('forceconf', 0)) $joomUser->confirmed = 1;
		$joomUser->enabled = 1 - (int)$user['block'];
		$joomUser->userid = $user['id'];

		$userHelper = acymailing_get('helper.user');
		if(!$userHelper->validEmail($joomUser->email)) return true;

		if(!acymailing_isAdmin()) $userClass->geolocRight = true;

		if(!$isnew AND !empty($this->oldUser['email']) AND $user['email'] != $this->oldUser['email']){
			$joomUser->subid = $userClass->subid($this->oldUser['email']);
		}
		if(empty($joomUser->subid)){
			if(empty($joomUser->userid)){
				$joomUser->subid = null;
			}else{
				$joomUser->subid = $userClass->subid($joomUser->userid);
			}
		}

		if(!empty($joomUser->subid)){
			$currentSubid = $userClass->subid($joomUser->email);
			if(!empty($currentSubid) && $joomUser->subid != $currentSubid){
				$userClass->delete($currentSubid);
			}
		}

		$userClass->checkVisitor = false;
		$userClass->sendConf = false;

		$isnew = (bool)($isnew || empty($joomUser->subid));

		$customValues = acymailing_getVar('array', 'regacy', array(), '');
		$session = JFactory::getSession();
		if(empty($customValues) && $session->get('regacy')){
			$customValues = $session->get('regacy');
			$session->set('regacy', null);
		}
		if(!empty($customValues)){
			$userClass->checkFields($customValues, $joomUser);
		}

		$userClass->triggerFilterBE = true;
		$subid = $userClass->save($joomUser);

		$listsToSubscribe = ($isnew) ? $config->get('autosub', 'None') : 'None';
		$currentSubscription = $userClass->getSubscriptionStatus($subid);

		$listsClass = acymailing_get('class.list');
		$allLists = $listsClass->getLists('listid');
		if(acymailing_level(1)){
			$allLists = $listsClass->onlyCurrentLanguage($allLists);
		}

		$session = JFactory::getSession();
		$visiblelistschecked = acymailing_getVar('array', 'acysub', array(), '');
		if(empty($visiblelistschecked) && $session->get('acysub')){
			$visiblelistschecked = $session->get('acysub');
			$session->set('acysub', null);
		}

		$acySubHidden = acymailing_getVar('string', 'acysubhidden');
		if(empty($acySubHidden) && $session->get('acysubhidden')){
			$acySubHidden = $session->get('acysubhidden');
			$session->set('acysubhidden', null);
		}

		if(!empty($acySubHidden)){
			$visiblelistschecked = array_merge($visiblelistschecked, explode(',', $acySubHidden));
		}

		$allvisiblelists = acymailing_getVar('string', 'allVisibleLists');
		$allvisiblelistsArray = explode(',', $allvisiblelists);

		$listsArray = array();
		if(strpos($listsToSubscribe, ',') || is_numeric($listsToSubscribe)){
			$listsArrayParam = explode(',', $listsToSubscribe);
			foreach($allLists as $oneList){
				$okSub = false;
				if(in_array($oneList->listid, $listsArrayParam) && (!in_array($oneList->listid, $allvisiblelistsArray) || in_array($oneList->listid, $visiblelistschecked))) $okSub = true;
				if($oneList->published && (in_array($oneList->listid, $visiblelistschecked) || $okSub)){
					$listsArray[] = $oneList->listid;
				}
			}
		}elseif(strtolower($listsToSubscribe) == 'all'){
			foreach($allLists as $oneList){
				$okSub = false;
				if(!in_array($oneList->listid, $allvisiblelistsArray) || in_array($oneList->listid, $visiblelistschecked)) $okSub = true;
				if($oneList->published && $okSub){
					$listsArray[] = $oneList->listid;
				}
			}
		}elseif(!empty($visiblelistschecked)){
			foreach($allLists as $oneList){
				if($oneList->published && in_array($oneList->listid, $visiblelistschecked)){
					$listsArray[] = $oneList->listid;
				}
			}
		}
		$statusAdd = (empty($joomUser->enabled) || (empty($joomUser->confirmed) && $config->get('require_confirmation', false))) ? 2 : 1;
		$addlists = array();
		if(!empty($listsArray)){
			foreach($listsArray as $idOneList){
				if(!isset($currentSubscription[$idOneList]) || $currentSubscription[$idOneList]->status == -1){
					$addlists[$statusAdd][$idOneList] = $idOneList;
				}
			}
		}

		$listsubClass = acymailing_get('class.listsub');
		$userSubscriptions = $listsubClass->getSubscription($subid);

		if(!$isnew && !empty($allvisiblelistsArray)){
			$subscribedLists = array_keys($userSubscriptions);
			$unsubscribeLists = array_intersect($subscribedLists, array_diff($allvisiblelistsArray, $visiblelistschecked));
			if(!empty($unsubscribeLists)) $listsubClass->updateSubscription($subid, array(-1 => $unsubscribeLists));
		}

		if(!empty($addlists)){
			if(!empty($user['gid'])) $listsubClass->gid = $user['gid'];
			if(!empty($user['groups'])) $listsubClass->gid = $user['groups'];
			$listsToUpdate = array_intersect(array_keys($userSubscriptions), $addlists[$statusAdd]);
			$updateLists = array();

			if(!empty($listsToUpdate)){
				foreach($listsToUpdate as $key => $oneListToUpdate){
					if($userSubscriptions[$oneListToUpdate]->status == -1 && !in_array($oneListToUpdate, $allvisiblelistsArray)) continue;
					$updateLists[] = $oneListToUpdate;
				}

				if(!empty($updateLists)) $listsubClass->updateSubscription($subid, array($statusAdd => $updateLists));
				$addlists[$statusAdd] = array_diff($addlists[$statusAdd], $listsToUpdate);
			}

			if(!empty($addlists[$statusAdd])) $listsubClass->addSubscription($subid, $addlists);
		}

		if($isnew && $this->params->get('sendnotif', false)){
			$userClass->sendNotification();
		}

		$listssub = $listsubClass->getSubscription($subid);

		if($isnew && $this->params->get('forceconf', 0) && empty($user['block'])){
			$userClass->sendConf($subid);
			return true;
		}

		if($isnew || empty($this->oldUser['block']) || !empty($user['block'])) return true;

		if($this->params->get('forceconf', 0)){
			if(!empty($listssub)) $userClass->sendConf($subid);
		}else{
			$userClass->confirmSubscription($subid);
		}

		return true;
	}

	function onUserAfterDelete($user, $success, $msg){
		if($this->initAcy() === false) return true;

		return $this->onAfterDeleteUser($user, $success, $msg);
	}

	function onAfterDeleteUser($user, $success, $msg){
		if($this->initAcy() === false) return true;

		if(is_object($user)) $user = get_object_vars($user);

		if($success === false || empty($user['email'])) return true;

		$userClass = acymailing_get('class.subscriber');
		$subid = $userClass->subid($user['email']);
		if(!empty($subid)){
			if($this->params->get('deletebehavior', '0') == 0){
				$userClass->delete($subid);
			}else{
				acymailing_query('UPDATE #__acymailing_subscriber SET `userid` = 0 WHERE subid = '.intval($subid));
			}
		}

		return true;
	}

	function onExtregUserActivate($form_id = 0, $er_user = null){
		if($this->initAcy() === false) return true;

		if(empty($er_user->id)) return true;
		$userClass = acymailing_get('class.subscriber');
		$userSubid = $userClass->subid($er_user->id);
		if(empty($userSubid)) return true;

		if(!empty($er_user->approve)){
			$query = 'UPDATE  #__acymailing_subscriber SET `enabled` = '.(int)$er_user->approve.' WHERE subid ='.intval($userSubid);
			acymailing_query($query);
		}
		$userClass->confirmSubscription($userSubid);
		return true;
	}

	function onExtregUserApprove($form_id = 0, $er_user = null){
		if($this->initAcy() === false) return true;

		if(empty($er_user->id)) return true;
		$userClass = acymailing_get('class.subscriber');
		$userSubid = $userClass->subid($er_user->id);
		if(empty($userSubid)) return true;

		$query = 'UPDATE  #__acymailing_subscriber SET `enabled` = "1" WHERE subid ='.intval($userSubid);
		acymailing_query($query);

		return true;
	}
}//endclass
extensions/plg_system_regacymailing/regacymailing.xml000060400000025535152455705230017377 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="system">
	<name>AcyMailing : (auto)Subscribe during Joomla registration</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved.</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>Automatically subscribe the user to AcyMailing during the Joomla registration process</description>
	<files>
		<filename plugin="regacymailing">regacymailing.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-regacymailing"/>
		<param name="lists" type="lists" default="None" label="Lists displayed on registration form" description="The following selected lists will be added to your Joomla registration form and will be visible." />
		<param name="listschecked" type="lists" default="All" label="Lists checked by default" description="The selected lists will be checked by default on your registration form." />
		<param name="subscribetext" type="text" size="50" default="" label="Subscribe Caption" description="Text displayed for the subscription field. If you don't specify anything, the default value will be used from the current language file" />
		<param name="displaymode" type="list" default="dispall" label="Display mode" description="Select the way you want AcyMailing to display your lists">
			<option value="dispall">Display one checkbox per list</option>
			<option value="onecheck">Group the lists into one checkbox</option>
			<option value="dropdown">Display the lists in a dropdown</option>
		</param>
		<param name="fieldafter" type="radio" default="password" label="Display the lists after" description="AcyMailing will display the lists after the selected field on your registration form">
			<option value="password">Password</option>
			<option value="email">Email</option>
			<option value="custom">Custom</option>
		</param>
		<param name="fieldaftercustom" default="" type="text" size="10" label="Display the lists after (custom)" description="If your registration page contains other fields, you can specify the name of other fields (separated with a ;) to display the lists after these custom fields (The previous option should be set to 'custom')" />
		<param name="@spacer" type="spacer" default="" label="" description="" />
		<param name="customfieldsafter" type="radio" default="email" label="Display the fields after" description="AcyMailing will display the extra fields after the selected field on your registration form">
			<option value="password">Password</option>
			<option value="email">Email</option>
			<option value="custom">Custom</option>
		</param>
		<param name="customfieldsaftercustom" default="" type="text" size="10" label="Display the fields after (custom)" description="If your registration page contains other fields, you can specify the name of other fields (separated with a ;) to display the lists after these custom fields (The previous option should be set to 'custom')" />
		<param name="@spacer" type="spacer" default="" label="" description="" />
		<param name="sendnotif" type="radio" default="0" label="Send notification" description="When an user is created, send the Acy notification message">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="forceconf" type="radio" default="0" label="Force double opt-in" description="The registration process may already have its confirmation e-mail... Do you want Acy to send its own confirmation e-mail (so in addition to the Joomla one)?">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="@spacer" type="spacer" default="" label="" description="" />
		<param name="customcss" cols="40" rows="5" type="textarea" default="" label="Custom CSS" description="You can specify here some CSS which will be added to the registration page" />
        <param name="deletebehavior" type="radio" default="0" label="User deletion behavior" description="Choose if the AcyMailing user should also be deleted when the Joomla account is deleted">
            <option value="0">Delete AcyMailing user</option>
            <option value="1">Keep AcyMailing user</option>
        </param>
        <param label="Excluded components" name="excluded" size="50" type="text" value="" description="Acy won't display the subscription lists on the components you exclude with this option. Each value should be separated by a coma, here are the possible values: com_user, com_users, com_alpharegistration, com_ccusers, com_community, com_extendedreg, com_gcontact, com_hikashop, com_jblance, com_jshopping, com_juser, com_mijoshop, com_osemsc, com_redshop, com_tienda, com_virtuemart." />
		<param name="addcategory" type="radio" default="0" label="Display category name" description="Order the lists by category and display their category name above them.">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
    </params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-regacymailing"/>
				<field name="lists" type="lists" default="None" label="Lists displayed on registration form" description="The following selected lists will be added to your Joomla registration form and will be visible." />
				<field name="listschecked" type="lists" default="All" label="Lists checked by default" description="The selected lists will be checked by default on your registration form." />
				<field name="subscribetext" type="text" size="50" default="" label="Subscribe Caption" description="Text displayed for the subscription field. If you don't specify anything, the default value will be used from the current language file" />
				<field name="displaymode" type="list" default="dispall" label="Display mode" description="Select the way you want AcyMailing to display your lists">
					<option value="dispall">Display one checkbox per list</option>
					<option value="onecheck">Group the lists into one checkbox</option>
					<option value="dropdown">Display the lists in a dropdown</option>
				</field>
				<field name="fieldafter" type="radio" default="password" label="Display the lists after" description="AcyMailing will display the lists after the selected field on your registration form">
					<option value="password">Password</option>
					<option value="email">Email</option>
					<option value="custom">Custom</option>
				</field>
				<field name="fieldaftercustom" default="" type="text" size="10" label="Display the lists after (custom)" description="If your registration page contains other fields, you can specify the name of other fields (separated with a ;) to display the lists after these custom fields (The previous option should be set to 'custom')" />
				<field name="@spacer" type="spacer" default="" label="" description="" />
				<field name="customfieldsafter" type="radio" default="email" label="Display the fields after" description="AcyMailing will display the extra fields after the selected field on your registration form">
					<option value="password">Password</option>
					<option value="email">Email</option>
					<option value="custom">Custom</option>
				</field>
				<field name="customfieldsaftercustom" default="" type="text" size="10" label="Display the fields after (custom)" description="If your registration page contains other fields, you can specify the name of other fields (separated with a ;) to display the lists after these custom fields (The previous option should be set to 'custom')" />
				<field name="@spacer" type="spacer" default="" label="" description="" />
				<field name="sendnotif" type="radio" default="0" label="Send notification" description="When an user is created, send the Acy notification message">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="forceconf" type="radio" default="0" label="Force double opt-in" description="The registration process may already have its confirmation e-mail... Do you want Acy to send its own confirmation e-mail (so in addition to the Joomla one)?">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="@spacer" type="spacer" default="" label="" description="" />
				<field name="customcss" cols="40" rows="5" type="textarea" default="" label="Custom CSS" description="You can specify here some CSS which will be added to the registration page" />
                <field name="deletebehavior" type="radio" default="0" label="User deletion behavior" description="Choose if the AcyMailing user should also be deleted when the Joomla account is deleted">
                    <option value="0">Delete AcyMailing user</option>
                    <option value="1">Keep AcyMailing user</option>
                </field>
                <field label="Excluded components" name="excluded" type="checkboxes" description="Acy won't display the subscription lists on the components you exclude with this option">
                    <option value="com_user">com_user</option>
                    <option value="com_users">com_users</option>
                    <option value="com_alpharegistration">com_alpharegistration</option>
                    <option value="com_ccusers">com_ccusers</option>
                    <option value="com_community">com_community</option>
                    <option value="com_extendedreg">com_extendedreg</option>
                    <option value="com_gcontact">com_gcontact</option>
                    <option value="com_hikashop">com_hikashop</option>
                    <option value="com_jblance">com_jblance</option>
                    <option value="com_jshopping">com_jshopping</option>
                    <option value="com_juser">com_juser</option>
                    <option value="com_mijoshop">com_mijoshop</option>
                    <option value="com_osemsc">com_osemsc</option>
                    <option value="com_redshop">com_redshop</option>
                    <option value="com_tienda">com_tienda</option>
                    <option value="com_virtuemart">com_virtuemart</option>
                </field>
				<field name="addcategory" type="radio" default="0" label="Display category name" description="Order the lists by category and display their category name above them.">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_system_regacymailing/index.html000060400000000054152455705230016024 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_tagtime/tagtime.xml000060400000003471152455705230015621 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag : Date / Time</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add time or date in your Newsletter</description>
	<files>
		<filename plugin="tagtime">tagtime.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagtime"/>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagtime"/>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_tagtime/index.html000060400000000054152455705230015434 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_tagtime/tagtime.php000060400000007052152455705230015607 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingTagtime extends JPlugin{

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'tagtime');
			$this->params = new acyParameter($plugin->params);
		}
	}


	function acymailing_getPluginType(){

		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('ACY_TIME');
		$onePlugin->function = 'acymailingtagtime_show';
		$onePlugin->help = 'plugin-tagtime';

		return $onePlugin;
	}

	function acymailingtagtime_show(){

		$text = '<br style="clear:both;"/><div class="onelineblockoptions"><table class="acymailing_table" cellpadding="1">';

		$others = array();
		$others['{date}'] = 'DATE_FORMAT_LC';
		$others['{date:1}'] = 'DATE_FORMAT_LC1';
		$others['{date:2}'] = 'DATE_FORMAT_LC2';
		$others['{date:3}'] = 'DATE_FORMAT_LC3';
		$others['{date:4}'] = 'DATE_FORMAT_LC4';
		$others['{date:%m/%d/%Y}'] = '%m/%d/%Y';
		$others['{date:%d/%m/%y}'] = '%d/%m/%y';
		$others['{date:%A}'] = '%A';
		$others['{date:%B}'] = '%B';


		$k = 0;
		foreach($others as $tagname => $tag){
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\''.$tagname.'\');insertTag();" ><td class="acytdcheckbox"></td><td>'.$tag.'</td><td>'.acymailing_getDate(time(), acymailing_translation($tag)).'</td></tr>';
			$k = 1 - $k;
		}

		$text .= '</table></div>';

		echo $text;
	}

	function acymailing_replacetags(&$email, $send = true){

		$match = '#{date:?([^:].*)?}#Ui';
		$variables = array('subject', 'body', 'altbody');

		foreach($variables as $var){
			$email->$var = str_replace(array('{mailid}', '%7Bmailid%7D', '{emailsubject}'), array($email->mailid, $email->mailid, $email->subject), $email->$var);
		}
		$email->body = str_replace('{textversion}', nl2br($email->altbody), $email->body);


		$found = false;
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
			if(empty($results[$var][0])) unset($results[$var]);
		}

		if(!$found) return;

		$tags = array();
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($tags[$oneTag])) continue;
				$arguments = explode('|', strip_tags($allresults[1][$i]));
				$parameter = new stdClass();
				$parameter->format = $arguments[0];
				for($i = 1; $i < count($arguments); $i++){
					$args = explode(':', $arguments[$i]);
					$arg0 = trim($args[0]);
					if(isset($args[1])){
						$parameter->$arg0 = $args[1];
					}else{
						$parameter->$arg0 = true;
					}
				}

				$time = time();
				if(!empty($parameter->senddate) && !empty($email->senddate)) $time = $email->senddate;
				if(!empty($parameter->add)) $time += intval($parameter->add);
				if(!empty($parameter->remove)) $time -= intval($parameter->remove);

				if(empty($parameter->format) OR is_numeric($parameter->format)){
					$tags[$oneTag] = acymailing_getDate($time, acymailing_translation('DATE_FORMAT_LC'.$parameter->format));
				}else{
					$tags[$oneTag] = acymailing_getDate($time, $parameter->format);
				}
			}
		}

		foreach(array_keys($results) as $var){
			$email->$var = str_replace(array_keys($tags), $tags, $email->$var);
		}
	}
}//endclass
extensions/mod_acymailing/mod_acymailing.php000060400000025113152455705230015412 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

if(!include_once(rtrim(JPATH_ADMINISTRATOR, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php')){
	echo 'This module can not work without the AcyMailing Component';
	return;
};

$config = acymailing_config();
$overridedesign = preg_replace('#[^a-z0-9_]#i', '', acymailing_getVar('cmd', 'design'));
if(!empty($overridedesign)){
	if($overridedesign == 'popup') $overridedesign = '';
	$params->set('effect', 'mootools-box');
}

$redirectMode = $params->get('redirectmode', '0');
switch($redirectMode){
	case 1 :
		$redirectUrl = acymailing_completeLink('lists', false, true);
		$redirectUrlUnsub = $redirectUrl;
		break;
	case 2 :
		$redirectUrl = $params->get('redirectlink');
		$redirectUrlUnsub = $params->get('redirectlinkunsub');
		break;
	default :
		if(isset($_SERVER["REQUEST_URI"])){
			$requestUri = $_SERVER["REQUEST_URI"];
		}else{
			$requestUri = $_SERVER['PHP_SELF'];
			if(!empty($_SERVER['QUERY_STRING'])) $requestUri = rtrim($requestUri, '/').'?'.$_SERVER['QUERY_STRING'];
		}
		$redirectUrl = (((!empty($_SERVER['HTTPS']) AND strtolower($_SERVER['HTTPS']) == "on") || $_SERVER['SERVER_PORT'] == 443) ? 'https://' : 'http://').$_SERVER["HTTP_HOST"].$requestUri;
		$redirectUrlUnsub = $redirectUrl;
		if($params->get('effect', 'normal') == 'mootools-box') $redirectUrlUnsub = $redirectUrl = '';
}

$subController = acymailing_get('controller_front.sub');
$subController->_checkRedirectUrl($redirectUrl);
$subController->_checkRedirectUrl($redirectUrlUnsub);

$formName = acymailing_getModuleFormName();
if(!empty($overridedesign)){
	$params->set('includejs', 'module');
}

$introText = $params->get('introtext');
$postText = $params->get('finaltext');
$mootoolsIntro = $params->get('mootoolsintro', '');
if(!empty($introText) && preg_match('#^[A-Z_]*$#', $introText)){
	$introText = acymailing_translation($introText);
}
if(!empty($postText) && preg_match('#^[A-Z_]*$#', $postText)){
	$postText = acymailing_translation($postText);
}
if(!empty($mootoolsIntro) && preg_match('#^[A-Z_]*$#', $mootoolsIntro)){
	$mootoolsIntro = acymailing_translation($mootoolsIntro);
}


if($params->get('effect') == 'mootools-box' AND acymailing_getVar('string', 'tmpl') != 'component'){
	$mootoolsButton = $params->get('mootoolsbutton', '');
	if(empty($mootoolsButton)){
		$mootoolsButton = acymailing_translation('SUBSCRIBE');
	}else{
		if(!empty($mootoolsButton) && preg_match('#^[A-Z_]*$#', $mootoolsButton)){
			$mootoolsButton = acymailing_translation($mootoolsButton);
		}
	}

	$moduleCSS = $config->get('css_module', 'default');
	if(!empty($moduleCSS)){
		acymailing_addStyle(false, ACYMAILING_CSS.'module_'.$moduleCSS.'.css?v='.filemtime(ACYMAILING_MEDIA.'css'.DS.'module_'.$moduleCSS.'.css'));
	}
	require(JModuleHelper::getLayoutPath('mod_acymailing', 'popup'));
	return;
}
acymailing_initModule($params);

$userClass = acymailing_get('class.subscriber');
$identifiedUser = null;
$currentUserEmail = acymailing_currentUserEmail();
if($params->get('loggedin', 1) && !empty($currentUserEmail)){
	$identifiedUser = $userClass->get($currentUserEmail);
}

if(!empty($currentUserEmail)) $currentUserEmail = acymailing_punycode($currentUserEmail, 'emailToUTF8');
if(!empty($identifiedUser->email)) $identifiedUser->email = acymailing_punycode($identifiedUser->email, 'emailToUTF8');

$visibleLists = trim($params->get('lists', 'None'));
$hiddenLists = trim($params->get('hiddenlists', 'All'));
$visibleListsArray = array();
$hiddenListsArray = array();
$listsClass = acymailing_get('class.list');
if(empty($identifiedUser->subid)){
	$allLists = $listsClass->getLists('listid');
}else{
	$allLists = $userClass->getSubscription($identifiedUser->subid, 'listid');
}


if(strpos($visibleLists, ',') OR is_numeric($visibleLists)){
	$allvisiblelists = explode(',', $visibleLists);
	foreach($allLists as $oneList){
		if($oneList->published AND in_array($oneList->listid, $allvisiblelists)) $visibleListsArray[] = $oneList->listid;
	}
}elseif(strtolower($visibleLists) == 'all'){
	foreach($allLists as $oneList){
		if($oneList->published){
			$visibleListsArray[] = $oneList->listid;
		}
	}
}

if(strpos($hiddenLists, ',') OR is_numeric($hiddenLists)){
	$allhiddenlists = explode(',', $hiddenLists);
	foreach($allLists as $oneList){
		if($oneList->published AND in_array($oneList->listid, $allhiddenlists)) $hiddenListsArray[] = $oneList->listid;
	}
}elseif(strtolower($hiddenLists) == 'all'){
	$visibleListsArray = array();
	foreach($allLists as $oneList){
		if(!empty($oneList->published)){
			$hiddenListsArray[] = $oneList->listid;
		}
	}
}

if(!empty($visibleListsArray) AND !empty($hiddenListsArray)){
	$visibleListsArray = array_diff($visibleListsArray, $hiddenListsArray);
}

$visibleLists = $params->get('dropdown', 0) ? '' : implode(',', $visibleListsArray);
$hiddenLists = implode(',', $hiddenListsArray);

if(!$params->get('dropdown', 0) && empty($hiddenLists) && empty($visibleLists)){
	echo '<p style="color:red">Error : Please select some lists in your AcyMailing module configuration for the field "'.acymailing_translation('AUTO_SUBSCRIBE_TO').'" and make sure the selected lists are enabled </p>';
}

if(!empty($identifiedUser->subid)){
	$countSub = 0;
	$countUnsub = 0;
	foreach($visibleListsArray as $idOneList){
		if($allLists[$idOneList]->status == -1){
			$countSub++;
		}elseif($allLists[$idOneList]->status == 1) $countUnsub++;
	}
	foreach($hiddenListsArray as $idOneList){
		if($allLists[$idOneList]->status == -1){
			$countSub++;
		}elseif($allLists[$idOneList]->status == 1) $countUnsub++;
	}
}

$checkedLists = $params->get('listschecked', 'All');
if(strtolower($checkedLists) == 'all'){
	$checkedListsArray = $visibleListsArray;
}elseif(strpos($checkedLists, ',') OR is_numeric($checkedLists)){
	$checkedListsArray = explode(',', $checkedLists);
}else{
	$checkedListsArray = array();
}

$listPosition = $params->get('listposition', 'before');


$nameCaption = $params->get('nametext', acymailing_translation('NAMECAPTION'));
$emailCaption = $params->get('emailtext', acymailing_translation('EMAILCAPTION'));
$displayOutside = $params->get('displayfields', 0);
$displayInline = ($params->get('displaymode', 'vertical') == 'vertical') ? false : true;

$displayedFields = $params->get('customfields', 'name,email');
$fieldsToDisplay = explode(',', $displayedFields);
$extraFields = array();

$fieldsize = $params->get('fieldsize', '80%');
if(is_numeric($fieldsize)) $fieldsize .= 'px';

$currentUserid = acymailing_currentUserId();
if(!in_array('email', $fieldsToDisplay) && empty($currentUserid)) $fieldsToDisplay[] = 'email';

if($params->get('effect') == 'mootools-slide'){
	$mootoolsButton = $params->get('mootoolsbutton', '');
	if(empty($mootoolsButton)) $mootoolsButton = acymailing_translation('SUBSCRIBE');
	
	$js .= "document.addEventListener(\"DOMContentLoaded\", function(){
				var acytogglemodule = document.getElementById('acymailing_togglemodule_$formName');
				var module = document.getElementById('acymailing_fulldiv_$formName');
				module.style.display = 'none';

				acytogglemodule.addEventListener('click', function(){
					module.style.display = '';
					if(acytogglemodule.className.indexOf('acyactive') > -1){
						acytogglemodule.className = 'acymailing_togglemodule';
						module.className = 'slide_close';
					}else{
						acytogglemodule.className = 'acymailing_togglemodule acyactive';
						module.className = 'slide_open';
					}
					
					return false;
				});
			});
		";

	if($params->get('includejs', 'header') == 'header'){
		acymailing_addScript(true, $js);
	}else{
		echo "<script type=\"text/javascript\">
			<!--
				$js
			//-->
				</script>";
	}
}

if($params->get('showterms', false)){
	require_once JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php';
	$termsIdContent = $params->get('termscontent', 0);
	if(empty($termsIdContent)){
		$termslink = acymailing_translation('JOOMEXT_TERMS');
	}else{
		if(is_numeric($termsIdContent)){
			if(!ACYMAILING_J16){
				$query = 'SELECT a.id,a.alias,a.catid,a.sectionid, c.alias as catalias, s.alias as secalias FROM #__content as a ';
				$query .= ' LEFT JOIN #__categories AS c ON c.id = a.catid ';
				$query .= ' LEFT JOIN #__sections AS s ON s.id = a.sectionid ';
				$query .= 'WHERE a.id = '.$termsIdContent.' LIMIT 1';
				$article = acymailing_loadObject($query);

				$section = $article->sectionid.(!empty($article->secalias) ? ':'.$article->secalias : '');
				$category = $article->catid.(!empty($article->catalias) ? ':'.$article->catalias : '');
				$articleid = $article->id.(!empty($article->alias) ? ':'.$article->alias : '');
				$url = ContentHelperRoute::getArticleRoute($articleid, $category, $section);
			}else{
				$query = 'SELECT a.id,a.alias,a.catid, c.alias as catalias FROM #__content as a ';
				$query .= ' LEFT JOIN #__categories AS c ON c.id = a.catid ';
				$query .= 'WHERE a.id = '.$termsIdContent.' LIMIT 1';
				$article = acymailing_loadObject($query);

				$category = $article->catid.(!empty($article->catalias) ? ':'.$article->catalias : '');
				$articleid = $article->id.(!empty($article->alias) ? ':'.$article->alias : '');

				$url = ContentHelperRoute::getArticleRoute($articleid, $category);
			}
			$url .= (strpos($url, '?') ? '&' : '?').'tmpl=component';
		}else{
			$url = $termsIdContent;
		}

		if($params->get('showtermspopup', 1) == 1){
			$acypop = acymailing_get('helper.acypopup');
			$termslink = $acypop->display(acymailing_translation('JOOMEXT_TERMS'), acymailing_translation('JOOMEXT_TERMS', true), $url, $articleid, 650, 375, '', '', 'text');
		}else{
			$termslink = '<a title="'.acymailing_translation('JOOMEXT_TERMS', true).'"  href="'.$url.'" target="_blank">'.acymailing_translation('JOOMEXT_TERMS').'</a>';
		}
	}
}

if(!empty($overridedesign)){
	ob_start();
}

if($params->get('displaymode') == 'tableless'){
	require(JModuleHelper::getLayoutPath('mod_acymailing', 'tableless'));
}else{
	require(JModuleHelper::getLayoutPath('mod_acymailing'));
}

$currentEmail = acymailing_currentUserEmail();
if(!empty($currentEmail)){
	echo '<span style="display:none">{emailcloak=off}</span>';
}

if(!empty($overridedesign)){
	$moduleDisplay = ob_get_clean();
	$file = ACYMAILING_MEDIA.'plugins'.DS.'squeezepage'.DS.$overridedesign.'.php';
	if(file_exists($file)){
		ob_start();
		require($file);
		$squeezePage = ob_get_clean();
		$squeezePage = str_replace('{module}', $moduleDisplay, $squeezePage);
		echo $squeezePage;
	}else{
		echo $moduleDisplay;
	}
}
extensions/mod_acymailing/tmpl/popup.php000060400000001654152455705230014561 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div class="acymailing_module<?php echo $params->get('moduleclass_sfx') ?>" id="acymailing_module_<?php echo $formName; ?>">
	<?php
	if(!empty($mootoolsIntro)) echo '<p class="acymailing_mootoolsintro">'.$mootoolsIntro.'</p>'; ?>
	<div class="acymailing_mootoolsbutton">
		<?php
		$acypop = acymailing_get('helper.acypopup');
		$href = acymailing_completeLink('sub&task=display&autofocus=1&formid='.$module->id, true);

		$link = $acypop->display($mootoolsButton, '', $href, 'acymailing_togglemodule_'.$formName, $params->get('boxwidth', 250), $params->get('boxheight', 200), 'class="acymailing_togglemodule"', '', 'link');

		?>
		<p><?php echo $link; ?></p>
	</div>
</div>
extensions/mod_acymailing/tmpl/index.html000060400000000054152455705230014673 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/mod_acymailing/tmpl/tableless.php000060400000031676152455705230015403 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div class="acymailing_module<?php echo $params->get('moduleclass_sfx')?>" id="acymailing_module_<?php echo $formName; ?>">
<?php
	$style = array();
	if($params->get('effect','normal') == 'mootools-slide'){
		if(!empty($mootoolsIntro)) echo '<p class="acymailing_mootoolsintro">'.$mootoolsIntro.'</p>'; ?>
		<div class="acymailing_mootoolsbutton" id="acymailing_toggle_<?php echo $formName; ?>">
			<p><a class="acymailing_togglemodule" id="acymailing_togglemodule_<?php echo $formName; ?>" href="#subscribe"><?php echo $mootoolsButton ?></a></p>
	<?php
	}
	if($params->get('textalign','none') != 'none') $style[] .= 'text-align:'.$params->get('textalign');
	$styleString = empty($style) ? '' : 'style="'.implode(';',$style).'"';
	?>
	<div class="acymailing_fulldiv" id="acymailing_fulldiv_<?php echo $formName; ?>" <?php echo $styleString; ?> >
		<form id="<?php echo $formName; ?>" action="<?php echo acymailing_route('index.php'); ?>" onsubmit="return submitacymailingform('optin','<?php echo $formName;?>')" method="post" name="<?php echo $formName ?>" <?php if(!empty($fieldsClass->formoption)) echo $fieldsClass->formoption; ?> >
		<div class="acymailing_module_form" >
			<?php if(!empty($introText)) echo '<div class="acymailing_introtext">'.$introText.'</div>';

			$listContent = '';
			if($params->get('dropdown',0)){
				$listContent .= '<select name="subscription[1]">';
				foreach($visibleListsArray as $myListId){
					$listContent .= '<option value="'.$myListId.'">'.$allLists[$myListId]->name.'</option>';
				}
				$listContent .= '</select>';
			} else{
				$listContent .= '<div class="acymailing_lists">';
				foreach($visibleListsArray as $myListId){
					$check = in_array($myListId,$checkedListsArray) ? 'checked="checked"' : '';

					if($params->get('checkmode',0) == '0' AND !empty($identifiedUser->email)){
						if(empty($allLists[$myListId]->status)){$check = '';}
						else{
							$check = $allLists[$myListId]->status == '-1' ? '' : 'checked="checked"';
						}
					}
					$listContent .= '
					<p class="onelist">
						<label for="acylist_'.$myListId.'">
						<input type="checkbox" class="acymailing_checkbox" name="subscription[]" id="acylist_'.$myListId.'" '.$check.' value="'.$myListId.'"/>';
						$joomItem = $params->get('itemid',0);
						if(empty($joomItem)) $joomItem = $config->get('itemid',0);
						$addItem = empty($joomItem) ? '' : '&Itemid='.$joomItem;
						$archivelink = acymailing_completeLink('archive&listid='.$allLists[$myListId]->listid.'-'.$allLists[$myListId]->alias.$addItem);
						if($params->get('overlay',0)){
							if(!$params->get('link',1) OR !$allLists[$myListId]->visible) $archivelink = '';
							$listContent .= acymailing_tooltip($allLists[$myListId]->description,$allLists[$myListId]->name,'',$allLists[$myListId]->name,$archivelink);
						}else{
							if($params->get('link',1) AND $allLists[$myListId]->visible){
								$listContent .= '<a href="'.$archivelink.'" alt="'.$allLists[$myListId]->alias.'"'.((acymailing_getVar('cmd', 'tmpl') == 'component') ? 'target="_blank"' : '').' >';
							}
							$listContent .= $allLists[$myListId]->name;
							if($params->get('link',1) AND $allLists[$myListId]->visible){
								$listContent .= '</a>';
							}
						}
						$listContent .= '
						</label>
					</p>';
				 }
				$listContent .= '</div>';
			}

			if(!empty($visibleListsArray) && $listPosition == 'before') echo $listContent; ?>
			<div class="acymailing_form">
					<?php
					$tmpCatId = array();
					$tmpCatTag = array();
					foreach($fieldsToDisplay as $oneField){
						if(empty($extraFields[$oneField])) echo '<p class="onefield fieldacy'.$oneField.'" id="field_'.$oneField.'_'.$formName.'">';
						if($oneField == 'name' AND empty($extraFields[$oneField])){
							if($displayOutside) echo '<label for="user_name_'.$formName.'" class="acy_requiredField">'.$nameCaption.'</label>'; ?>
							<span class="acyfield_<?php echo $oneField. (!$displayOutside? ' acy_requiredField':''); ?>"><input id="user_name_<?php echo $formName; ?>" <?php if(!empty($identifiedUser->userid)) echo 'readonly="readonly" '; if(!$displayOutside){ ?> onfocus="if(this.value == '<?php echo $nameCaption;?>') this.value = '';" onblur="if(this.value=='') this.value='<?php echo $nameCaption?>';"<?php } ?> class="inputbox" type="text" name="user[name]" style="width:<?php echo $fieldsize; ?>" value="<?php if(!empty($identifiedUser->userid)) echo $identifiedUser->name; elseif(!$displayOutside) echo $nameCaption; ?>" title="<?php echo $nameCaption;?>"/></span>
							<?php
						}elseif($oneField == 'email' AND empty($extraFields[$oneField])){
							if($displayOutside) echo '<label for="user_email_'.$formName.'" class="acy_requiredField">'.$emailCaption.'</label>'; ?>
							<span class="acyfield_<?php echo $oneField. (!$displayOutside? ' acy_requiredField':''); ?>"><input id="user_email_<?php echo $formName; ?>" <?php if(!empty($identifiedUser->userid)) echo 'readonly="readonly" '; if(!$displayOutside){ ?> onfocus="if(this.value == '<?php echo $emailCaption;?>') this.value = '';" onblur="if(this.value=='') this.value='<?php echo $emailCaption?>';"<?php } ?> class="inputbox" type="text" name="user[email]" style="width:<?php echo $fieldsize; ?>" value="<?php if(!empty($identifiedUser->userid)) echo $identifiedUser->email; elseif(!$displayOutside) echo $emailCaption; ?>" title="<?php echo $emailCaption;?>" /></span>
							<?php
						}elseif($oneField == 'html' AND empty($extraFields[$oneField])){
							echo '<label>'.acymailing_translation('RECEIVE').'</label>';
							echo '<span class="acyfield_'.$oneField.'">'.acymailing_boolean("user[html]" ,'title="'.acymailing_translation('RECEIVE').'"',isset($identifiedUser->html) ? $identifiedUser->html : 1,acymailing_translation('HTML'),acymailing_translation('JOOMEXT_TEXT'),'user_html_'.$formName).'</span>';
						}elseif(!empty($extraFields[$oneField])){
							if($extraFields[$oneField]->type == 'category'){
								if(empty($extraFields[$oneField]->fieldcat) && !empty($tmpCatId)){
									while(!empty($tmpCatId)){
										echo '</'.str_replace('fldset', 'fieldset', end($tmpCatTag)).'>';
										array_pop($tmpCatId);
										array_pop($tmpCatTag);
									}
								}
								$tmpCatId[] = $extraFields[$oneField]->fieldid;
								$tmpCatTag[] = $extraFields[$oneField]->options['fieldcattag'];
								echo '<'.str_replace('fldset', 'fieldset', end($tmpCatTag)).' class="fieldCategory fieldacy'.$extraFields[$oneField]->namekey.' '.$extraFields[$oneField]->options['fieldcatclass'].'">';
								if(in_array(end($tmpCatTag), array('fieldset', 'fldset'))) echo '<legend>'.$extraFields[$oneField]->fieldname.'</legend>';
							}else{
								if(in_array($extraFields[$oneField]->fieldcat, $tmpCatId) || empty($extraFields[$oneField]->fieldcat)){
									while(!empty($tmpCatId) && $extraFields[$oneField]->fieldcat != end($tmpCatId)){
										echo '</'.str_replace('fldset', 'fieldset', end($tmpCatTag)).'>';
										array_pop($tmpCatId);
										array_pop($tmpCatTag);
									}
								}
								echo '<p class="onefield fieldacy'.$oneField.'" id="field_'.$oneField.'_'.$formName.'">';
								if($displayOutside){
									if(!empty($extraFields[$oneField]->required)) $requireClass = 'class="acy_requiredField"';
									else $requireClass = "";
									 echo '<label '.((strpos($extraFields[$oneField]->type,'text') !== false) ? 'for="user_'.$oneField.'_'.$formName.'"' : '' ).' '.$requireClass.'>'.$fieldsClass->trans($extraFields[$oneField]->fieldname).'</label>';
								}
								$sizestyle = '';
								if(!empty($extraFields[$oneField]->options['size'])){
									$sizestyle = 'style="width:'.(is_numeric($extraFields[$oneField]->options['size']) ? ($extraFields[$oneField]->options['size'].'px') : $extraFields[$oneField]->options['size']).'"';
								}
								if(!empty($extraFields[$oneField]->required) && !$displayOutside) $requireClass = ' acy_requiredField';
								else $requireClass = "";
								?>
								<span class="acyfield_<?php echo $oneField.$requireClass; ?>">
								<?php if(!empty($identifiedUser->userid) AND in_array($oneField,array('name','email'))){ ?>
										<input id="user_<?php echo $oneField; ?>_<?php echo $formName; ?>" readonly="readonly" class="inputbox" type="text" name="user[<?php echo $oneField;?>]" <?php echo $sizestyle; ?> value="<?php echo @$identifiedUser->$oneField; ?>" title="<?php echo $oneField;?>"/>
								<?php }else{
										echo $fieldsClass->display($extraFields[$oneField],@$identifiedUser->$oneField,'user['.$oneField.']',!$displayOutside);
								}?>
								</span>
								</p>
								<?php
							}
						}
						if(empty($extraFields[$oneField])) echo '</p>';
					}
					if(!empty($extraFields)){
						$lastVal = end($tmpCatId);
						while(!empty($lastVal)){
							echo '</'.str_replace('fldset', 'fieldset', end($tmpCatTag)).'>';
							array_pop($tmpCatId);
							array_pop($tmpCatTag);
							$lastVal = end($tmpCatId);
						}
					}

				if(empty($identifiedUser->userid) AND $config->get('captcha_enabled') AND acymailing_level(1)){ ?>
					<?php
					echo '<div class="onefield fieldacycaptcha" id="field_captcha_'.$formName.'">';
					$captchaClass = acymailing_get('class.acycaptcha');
					$captchaClass->display($formName, true);
					?>
					</div>
				<?php }

				 if($params->get('showterms',false)){
					echo '<p class="onefield fieldacyterms" id="field_terms_'.$formName.'">';
					?>
					<label for="mailingdata_terms_<?php echo $formName; ?>"><input id="mailingdata_terms_<?php echo $formName; ?>" class="checkbox" type="checkbox" name="terms" title="<?php echo acymailing_translation('JOOMEXT_TERMS'); ?>"/> <?php echo $termslink; ?></label>
					</p>
					<?php } ?>

					<?php if(!empty($visibleListsArray) && $listPosition == 'after')  echo $listContent; ?>

					<p class="acysubbuttons">
						<?php if($params->get('showsubscribe',true)){?>
						<input class="button subbutton btn btn-primary" type="submit" value="<?php $subtext = $params->get('subscribetextreg'); if(empty($identifiedUser->userid) OR empty($subtext)){ $subtext = $params->get('subscribetext',acymailing_translation('SUBSCRIBECAPTION')); } echo $subtext;  ?>" name="Submit" onclick="try{ return submitacymailingform('optin','<?php echo $formName;?>'); }catch(err){alert('The form could not be submitted '+err);return false;}"/>
						<?php }if($params->get('showunsubscribe',false) AND (!$params->get('showsubscribe',true) OR empty($identifiedUser->userid) OR !empty($countUnsub)) ){?>
						<input class="button unsubbutton btn btn-inverse" type="button" value="<?php echo $params->get('unsubscribetext',acymailing_translation('UNSUBSCRIBECAPTION')); ?>" name="Submit" onclick="return submitacymailingform('optout','<?php echo $formName;?>')"/>
						<?php } ?>
					</p>
				</div>
			<?php
			if(!empty($fieldsClass->excludeValue)){
				$js = "\n"."acymailingModule['excludeValues".$formName."'] = Array();";
				foreach($fieldsClass->excludeValue as $namekey => $value){
					$js .= "\n"."acymailingModule['excludeValues".$formName."']['".$namekey."'] = '".$value."';";
				}
				$js .= "\n";
				if($params->get('includejs','header') == 'header'){
					acymailing_addScript(true, $js);
				}else{
					echo "<script type=\"text/javascript\">
							<!--
							$js
							//-->
							</script>";
				}
			}
			if(!empty($postText)) echo '<div class="acymailing_finaltext">'.$postText.'</div>';
			$ajax = ($params->get('redirectmode') == '3') ? 1 : 0;?>
			<input type="hidden" name="ajax" value="<?php echo $ajax; ?>"/>
			<input type="hidden" name="acy_source" value="<?php echo 'module_'.$module->id ?>" />
			<input type="hidden" name="ctrl" value="sub"/>
			<input type="hidden" name="task" value="notask"/>
			<input type="hidden" name="redirect" value="<?php echo urlencode($redirectUrl); ?>"/>
			<input type="hidden" name="redirectunsub" value="<?php echo urlencode($redirectUrlUnsub); ?>"/>
			<input type="hidden" name="option" value="<?php echo ACYMAILING_COMPONENT ?>"/>
			<?php if(!empty($identifiedUser->userid)){ ?><input type="hidden" name="visiblelists" value="<?php echo $visibleLists;?>"/><?php } ?>
			<input type="hidden" name="hiddenlists" value="<?php echo $hiddenLists;?>"/>
			<input type="hidden" name="acyformname" value="<?php echo $formName; ?>" />
			<?php if(acymailing_getVar('cmd', 'tmpl') == 'component'){ ?>
				<input type="hidden" name="tmpl" value="component" />
				<?php if($params->get('effect','normal') == 'mootools-box' AND !empty($redirectUrl)){ ?>
					<input type="hidden" name="closepop" value="1" />
				<?php } } ?>
			<?php $myItemId = $config->get('itemid',0); if(empty($myItemId)){ global $Itemid; $myItemId = $Itemid;} if(!empty($myItemId)){ ?><input type="hidden" name="Itemid" value="<?php echo $myItemId;?>"/><?php } ?>
			</div>
		</form>
	</div>
	<?php if($params->get('effect','normal') == 'mootools-slide'){ ?> </div> <?php } ?>
</div>

extensions/mod_acymailing/tmpl/default.php000060400000027502152455705230015042 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><div class="acymailing_module<?php echo $params->get('moduleclass_sfx')?>" id="acymailing_module_<?php echo $formName; ?>">
<?php
	$style = array();
	if($params->get('effect','normal') == 'mootools-slide'){
		if(!empty($mootoolsIntro)) echo '<p class="acymailing_mootoolsintro">'.$mootoolsIntro.'</p>'; ?>
		<div class="acymailing_mootoolsbutton" id="acymailing_toggle_<?php echo $formName; ?>" >
			<p><a class="acymailing_togglemodule" id="acymailing_togglemodule_<?php echo $formName; ?>" href="#subscribe"><?php echo $mootoolsButton ?></a></p>
	<?php
	}
	if($params->get('textalign','none') != 'none') $style[] .= 'text-align:'.$params->get('textalign');
	$styleString = empty($style) ? '' : 'style="'.implode(';',$style).'"';
    $config = acymailing_config();
	?>
	<div class="acymailing_fulldiv" id="acymailing_fulldiv_<?php echo $formName; ?>" <?php echo $styleString; ?> >
		<form id="<?php echo $formName; ?>" action="<?php echo acymailing_route('index.php'); ?>" onsubmit="return submitacymailingform('optin','<?php echo $formName;?>')" method="post" name="<?php echo $formName ?>" <?php if(!empty($fieldsClass->formoption)) echo $fieldsClass->formoption; ?> >
		<div class="acymailing_module_form" >
			<?php if(!empty($introText)) echo '<div class="acymailing_introtext">'.$introText.'</div>';

			$listContent = '';
			if($params->get('dropdown',0)){
				$listContent .= '<select name="subscription[1]">';
				foreach($visibleListsArray as $myListId){
					$listContent .= '<option value="'.$myListId.'">'.$allLists[$myListId]->name.'</option>';
				}
				$listContent .= '</select>';
			} else{
				$listContent .= '<table class="acymailing_lists">';
				foreach($visibleListsArray as $myListId){
					$check = in_array($myListId,$checkedListsArray) ? 'checked="checked"' : '';
					if($params->get('checkmode',0) == '0' AND !empty($identifiedUser->email)){
						if(empty($allLists[$myListId]->status)){$check = '';}
						else{
							$check = $allLists[$myListId]->status == '-1' ? '' : 'checked="checked"';
						}
					}
					$listContent .= '
					<tr>
						<td>
						<label for="acylist_'.$myListId.'">
						<input type="checkbox" class="acymailing_checkbox" name="subscription[]" id="acylist_'.$myListId.'" '.$check.' value="'.$myListId.'"/>';
						$joomItem = $params->get('itemid',0);
						if(empty($joomItem)) $joomItem = $config->get('itemid',0);
						$addItem = empty($joomItem) ? '' : '&Itemid='.$joomItem;
						$archivelink = acymailing_completeLink('archive&listid='.$allLists[$myListId]->listid.'-'.$allLists[$myListId]->alias.$addItem);
						if($params->get('overlay',0)){
							if(!$params->get('link',1) OR !$allLists[$myListId]->visible) $archivelink = '';
							$listContent .= ' '.acymailing_tooltip($allLists[$myListId]->description,$allLists[$myListId]->name,'',$allLists[$myListId]->name,$archivelink);
						}else{
							if($params->get('link',1) AND $allLists[$myListId]->visible){
								$listContent .= ' <a href="'.$archivelink.'" alt="'.$allLists[$myListId]->alias.'"'.((acymailing_getVar('cmd', 'tmpl') == 'component') ? 'target="_blank"' : '').' >';
							}
							$listContent .= $allLists[$myListId]->name;
							if($params->get('link',1) AND $allLists[$myListId]->visible){
								$listContent .= '</a>';
							}
						}
						$listContent .= '</label>
						</td>
					</tr>';
				}
				$listContent .= '</table>';
			}

			if(!empty($visibleListsArray) && $listPosition == 'before'){
				echo $listContent;
			}//endif visiblelists
			?>
			<table class="acymailing_form">
				<tr>
					<?php foreach($fieldsToDisplay as $oneField){
						if($oneField == 'name' AND empty($extraFields[$oneField])){
							if($displayOutside) echo '<td><label for="user_name_'.$formName.'" class="acy_requiredField">'.$nameCaption.'</label></td>'; ?>
							<td class="acyfield_<?php echo $oneField. (!$displayOutside? ' acy_requiredField':''); ?>">
								<input id="user_name_<?php echo $formName; ?>" <?php if(!empty($identifiedUser->userid)) echo 'readonly="readonly" ';  if(!$displayOutside){ ?> onfocus="if(this.value == '<?php echo $nameCaption;?>') this.value = '';" onblur="if(this.value=='') this.value='<?php echo $nameCaption?>';"<?php } ?> class="inputbox" type="text" name="user[name]" style="width:<?php echo $fieldsize; ?>" value="<?php if(!empty($identifiedUser->userid)) echo $identifiedUser->name; elseif(!$displayOutside) echo $nameCaption; ?>" title="<?php echo $nameCaption?>"/>
							</td> <?php
						}elseif($oneField == 'email' AND empty($extraFields[$oneField])){
							if($displayOutside) echo '<td><label for="user_email_'.$formName.'" class="acy_requiredField">'.$emailCaption.'</label></td>'; ?>
							<td class="acyfield_<?php echo $oneField. (!$displayOutside? ' acy_requiredField':''); ?>">
								<input id="user_email_<?php echo $formName; ?>" <?php if(!empty($identifiedUser->userid)) echo 'readonly="readonly" ';  if(!$displayOutside){ ?> onfocus="if(this.value == '<?php echo $emailCaption;?>') this.value = '';" onblur="if(this.value=='') this.value='<?php echo $emailCaption?>';"<?php } ?> class="inputbox" type="text" name="user[email]" style="width:<?php echo $fieldsize; ?>" value="<?php if(!empty($identifiedUser->userid)) echo $identifiedUser->email; elseif(!$displayOutside) echo $emailCaption; ?>" title="<?php echo $emailCaption;?>"/>
							</td> <?php
						}elseif($oneField == 'html' AND empty($extraFields[$oneField])){
							echo '<td class="acyfield_'.$oneField.'" ';
							if($displayOutside AND !$displayInline) echo 'colspan="2"';
							echo '>'.acymailing_translation('RECEIVE').acymailing_boolean("user[html]" ,'title="'.acymailing_translation('RECEIVE').'"',isset($identifiedUser->html) ? $identifiedUser->html : 1,acymailing_translation('HTML'),acymailing_translation('JOOMEXT_TEXT'),'user_html_'.$formName).'</td>';
						}elseif(!empty($extraFields[$oneField])){
							if($extraFields[$oneField]->type == 'category'){
								echo '<td '. ($displayOutside && !$displayInline?'colspan="2"':'').' class="category_warning">Please use Tableless mode to display categories.</td>';
							} else{
								if($displayOutside){
									if(!empty($extraFields[$oneField]->required)) $requireClass = 'class="acy_requiredField"';
									else $requireClass = "";
									echo '<td><label '.((strpos($extraFields[$oneField]->type,'text') !== false) ? 'for="user_'.$oneField.'_'.$formName.'"' : '' ).' '. $requireClass .'>'.$fieldsClass->trans($extraFields[$oneField]->fieldname).'</label></td>';
								}
								$sizestyle = '';
								if(!empty($extraFields[$oneField]->options['size'])){
									$sizestyle = 'style="width:'.(is_numeric($extraFields[$oneField]->options['size']) ? ($extraFields[$oneField]->options['size'].'px') : $extraFields[$oneField]->options['size']).'"';
								}
								if(!empty($extraFields[$oneField]->required) && !$displayOutside) $requireClass = 'acy_requiredField';
								else $requireClass = "";
								?>
								<td class="acyfield_<?php echo $oneField .' '. $requireClass; ?>">
								<?php if(!empty($identifiedUser->userid) AND in_array($oneField,array('name','email'))){ ?>
										<input id="user_<?php echo $oneField; ?>_<?php echo $formName; ?>" readonly="readonly" class="inputbox" type="text" name="user[<?php echo $oneField;?>]" <?php echo $sizestyle; ?> value="<?php echo @$identifiedUser->$oneField; ?>" title="<?php echo $oneField;?>"/>
								<?php }else{
										echo $fieldsClass->display($extraFields[$oneField],@$identifiedUser->$oneField,'user['.$oneField.']',!$displayOutside);
								}?>
								</td><?php
							}
						}else{
							continue;
						}
						if(!$displayInline) echo '</tr><tr>';
					}

				if(empty($identifiedUser->userid) AND $config->get('captcha_enabled') AND acymailing_level(1)){ ?>
					<td class="captchakeymodule">
					<?php
						$captchaClass = acymailing_get('class.acycaptcha');
						if($displayOutside){ $captchaClass->display($formName, true).'</td><td class="captchafieldmodule">'; }else{$captchaClass->display($formName, true);}
					?>
					<?php if(!$displayInline) echo '</tr><tr>';
				}

				 if($params->get('showterms',false)){
					?>
					<td class="acyterms" <?php if($displayOutside AND !$displayInline) echo 'colspan="2"'; ?> >
					<input id="mailingdata_terms_<?php echo $formName; ?>" class="checkbox" type="checkbox" name="terms" title="<?php echo acymailing_translation('JOOMEXT_TERMS'); ?>"/> <?php echo $termslink;?>
					</td>
					<?php if(!$displayInline) echo '</tr><tr>';
					} ?>

					<?php if(!empty($visibleListsArray) && $listPosition == 'after') echo $listContent; ?>

					<td <?php if($displayOutside AND !$displayInline) echo 'colspan="2"'; ?> class="acysubbuttons">
						<?php if($params->get('showsubscribe',true)){?>
						<input class="button subbutton btn btn-primary" type="submit" value="<?php $subtext = $params->get('subscribetextreg'); if(empty($identifiedUser->userid) OR empty($subtext)){ $subtext = $params->get('subscribetext',acymailing_translation('SUBSCRIBECAPTION')); } echo $subtext;  ?>" name="Submit" onclick="try{ return submitacymailingform('optin','<?php echo $formName;?>'); }catch(err){alert('The form could not be submitted '+err);return false;}"/>
						<?php }if($params->get('showunsubscribe',false) AND (!$params->get('showsubscribe',true) OR empty($identifiedUser->userid) OR !empty($countUnsub)) ){?>
						<input class="button unsubbutton  btn btn-inverse" type="button" value="<?php echo $params->get('unsubscribetext',acymailing_translation('UNSUBSCRIBECAPTION')); ?>" name="Submit" onclick="return submitacymailingform('optout','<?php echo $formName;?>')"/>
						<?php } ?>
					</td>
				</tr>
			</table>
			<?php
			if(!empty($fieldsClass->excludeValue)){
				$js = "\n"."acymailingModule['excludeValues".$formName."'] = Array();";
				foreach($fieldsClass->excludeValue as $namekey => $value){
					$js .= "\n"."acymailingModule['excludeValues".$formName."']['".$namekey."'] = '".$value."';";
				}
				$js .= "\n";
				if($params->get('includejs','header') == 'header'){
					acymailing_addScript(true, $js);
				}else{
					echo "<script type=\"text/javascript\">
							<!--
							$js
							//-->
							</script>";
				}
			}
			if(!empty($postText)) echo '<div class="acymailing_finaltext">'.$postText.'</div>';
			$ajax = ($params->get('redirectmode') == '3') ? 1 : 0;?>
			<input type="hidden" name="ajax" value="<?php echo $ajax; ?>" />
			<input type="hidden" name="acy_source" value="<?php echo 'module_'.$module->id ?>" />
			<input type="hidden" name="ctrl" value="sub"/>
			<input type="hidden" name="task" value="notask"/>
			<input type="hidden" name="redirect" value="<?php echo urlencode($redirectUrl); ?>"/>
			<input type="hidden" name="redirectunsub" value="<?php echo urlencode($redirectUrlUnsub); ?>"/>
			<input type="hidden" name="option" value="<?php echo ACYMAILING_COMPONENT ?>"/>
			<?php if(!empty($identifiedUser->userid)){ ?><input type="hidden" name="visiblelists" value="<?php echo $visibleLists;?>"/><?php } ?>
			<input type="hidden" name="hiddenlists" value="<?php echo $hiddenLists;?>"/>
			<input type="hidden" name="acyformname" value="<?php echo $formName; ?>" />
			<?php if(acymailing_getVar('cmd', 'tmpl') == 'component'){ ?>
				<input type="hidden" name="tmpl" value="component" />
				<?php if($params->get('effect','normal') == 'mootools-box' AND !empty($redirectUrl)){ ?>
					<input type="hidden" name="closepop" value="1" />
				<?php } } ?>
			<?php $myItemId = $config->get('itemid',0); if(empty($myItemId)){ global $Itemid; $myItemId = $Itemid;} if(!empty($myItemId)){ ?><input type="hidden" name="Itemid" value="<?php echo $myItemId;?>"/><?php } ?>
			</div>
		</form>
	</div>
	<?php if($params->get('effect','normal') == 'mootools-slide'){ ?> </div> <?php } ?>
</div>

extensions/mod_acymailing/mod_acymailing.xml000060400000051473152455705230015433 0ustar00<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="1.5.0" method="upgrade">
	<name>AcyMailing Module</name>
	<creationDate>September 2009</creationDate>
	<version>3.7.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>Subscribe / Unsubscribe Module for AcyMailing</description>
	<files>
		<filename module="mod_acymailing">mod_acymailing.php</filename>
		<filename>index.html</filename>
		<folder>tmpl</folder>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" default="module" label="Help" description="Click on the help button to get some help"/>
		<param name="effect" type="radio" default="normal" label="DISPLAY_EFFECT" description="Select the effect you want to add to your module">
			<option value="normal">Normal (no effect)</option>
			<option value="mootools-slide">Slide effect</option>
			<option value="mootools-box">Popup effect</option>
		</param>
		<param name="lists" type="lists" default="None" label="VISIBLE_LISTS" description="The following selected lists will be added on the Module and will be visible (if they are not selected as automatically subscribed to)."/>
		<param name="hiddenlists" type="lists" default="All" label="AUTO_SUBSCRIBE_TO" description="The user will be automatically subscribed to the selected lists. They won't be displayed on your module but if the user subscribes, he will be subscribed to those lists as well"/>
		<param name="displaymode" type="radio" default="vertical" label="DISPLAY_MODE" description="Select whether you want to display the form horizontally, vertically or without table">
			<option value="inline">Horizontal</option>
			<option value="vertical">Vertical</option>
			<option value="tableless">Tableless</option>
		</param>
		<param name="listschecked" type="lists" default="All" label="LISTS_CHECKED_DEFAULT" description="The selected lists will be checked by default on your module if they are visible."/>
		<param name="checkmode" type="radio" default="0" label="CHECKED_MODE" description="If you select the first option - Show user's subscription status - only the lists that the logged-in user is subscribed to will be checked. This option has an effect on logged-in users only so you can choose whether you want to display his own subscription or always the default one.">
			<option value="0">Show user's subscription status</option>
			<option value="1">Default checked lists</option>
		</param>
		<param name="dropdown" type="radio" default="0" label="DROPDOWN_LISTS" description="Display the visible lists in a dropdown">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="overlay" type="radio" default="0" label="DESC_OVERLAY" description="Add the description of each visible list as an overlay of the list name. Be careful, you might have conflicts using this option if you have some flash elements on your website.">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="link" type="radio" default="1" label="LINKED_ARCHIVE" description="Add a link to the archive section for each list.">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="listposition" type="radio" default="before" label="LIST_POSITION" description="Select where to display the list.">
			<option value="before">ACY_BEFORE_FIELDS</option>
			<option value="after">ACY_AFTER_FIELDS</option>
		</param>
		<param name="customfields" type="customfields" default="name,email" label="DISP_FIELDS" description="Select the fields you want to display on your subscription module"/>

		<param name="@spacer" type="spacer" default="" label="" description=""/>

		<param name="nametext" type="text" size="50" default="" label="CAPT_NAME" description="Text displayed on the name field. If you don't specify anything, the default value will be used from the current language file"/>
		<param name="emailtext" type="text" size="50" default="" label="CAPT_EMAIL" description="Text displayed on the e-mail field. If you don't specify anything, the default value will be used from the current language file"/>
		<param name="fieldsize" type="text" size="10" default="80%" label="FIELD_SIZE" description="Specify the size of the email and name fields on your subscription form"/>
		<param name="displayfields" type="radio" default="0" label="DISP_TEXT_MODE" description="Display the Name and E-mail text inside or outside the field?">
			<option value="0">Inside</option>
			<option value="1">Outside</option>
		</param>
		<param name="introtext" type="textarea" rows="5" cols="35" default="" label="INTRO_TEXT" description="This text will be displayed before the form inside a span class=acymailing_introtext"/>
		<param name="finaltext" type="textarea" rows="5" cols="35" default="" label="POST_TEXT" description="This text will be displayed after the form inside a span class=acymailing_finaltext"/>
		<param name="@spacer" type="spacer" default="" label="" description=""/>
		<param name="showsubscribe" type="radio" default="1" label="DISP_SUB_BUTTON" description="Display the subscribe button on the module">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="subscribetext" type="text" size="50" default="" label="CAPT_SUB" description="Text displayed on the subscribe button. If you don't specify anything, the default value will be used from the current language file"/>
		<param name="subscribetextreg" type="text" size="50" default="" label="CAPT_SUB_LOGGED" description="Text displayed on the subscribe button if the user is logged in. If you don't specify anything, the default value will be used from the current language file"/>
		<param name="showunsubscribe" type="radio" default="0" label="DISP_UNSUB_BUTTON" description="Display the unsubscribe button on the module">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="unsubscribetext" type="text" size="50" default="" label="CAPT_UNSUB" description="Text displayed on the unsubscribe button. If you don't specify anything, the default value will be used from the current language file"/>

		<param name="@spacer" type="spacer" default="" label="" description=""/>
		<param name="redirectmode" type="radio" default="0" label="REDIRECT_MODE" description="After submitting the form, the user can be redirected to the previous page, to the Acymailing archive page or to a custom link (in that case, please write the url in the next field)">
			<option value="3">Ajax</option>
			<option value="0">Previous page</option>
			<option value="1">AcyMailing Archive</option>
			<option value="2">Custom Redirect Link</option>
		</param>
		<param name="redirectlink" type="text" size="50" default="" label="REDIRECT_LINK" description="If you selected the mode 'Custom Redirect Link', the user will be redirected to this url after clicking on the button subscribe"/>
		<param name="redirectlinkunsub" type="text" size="50" default="" label="REDIRECTION_UNSUB" description="If you selected the mode 'Custom Redirect Link', the user will be redirected to this url after clicking on the button unsubscribe"/>

		<param name="@spacer" type="spacer" default="" label="" description=""/>

		<param name="showterms" type="radio" default="0" label="JOOMEXT_TERMS" description="Display the 'Accept Terms and Conditions' box">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="showtermspopup" type="radio" default="1" label="TERMS_POPUP" description="If you select 'Yes', the article linked to the terms and conditions will be displayed in a popup, otherwise it will be displayed as a separated page">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="termscontent" type="termscontent" default="0" label="TERMS_CONTENT" description="The selected article will be displayed if the user clicks on the link 'Terms and Conditions'"/>
		<param name="@spacer" type="spacer" default="" label="" description=""/>
		<param name="mootoolsintro" type="textarea" rows="5" cols="35" default="" label="MOO_INTRO" description="This text will be displayed before the button in case of you use the Slide / Popup effect"/>
		<param name="mootoolsbutton" type="text" size="50" default="" label="MOO_BUTTON" description="Text displayed on the button in case of you use the Slide / Popup effect. If you don't specify anything, the default value will be used from the current language file"/>
		<param name="boxwidth" type="text" size="5" default="250" label="MOO_BOX_WIDTH" description="If you use the popup effect, you can set the width of the box in this area"/>
		<param name="boxheight" type="text" size="5" default="200" label="MOO_BOX_HEIGHT" description="If you use the popup effect, you can set the height of the box in this area"/>

	</params>

	<params group="advanced">
		<param name="moduleclass_sfx" type="text" default="" label="MODULE_CLASSSUF" description="PARAMMODULECLASSSUFFIX"/>
		<param name="textalign" type="list" default="0" label="MODULE_ALIGNMENT" description="This option enables you to align the text inside the module">
			<option value="none">Default CSS alignment</option>
			<option value="right">Right</option>
			<option value="left">Left</option>
			<option value="center">Center</option>
		</param>
		<param name="loggedin" type="radio" default="1" label="MODULE_AUTOID" description="Do you want the logged in users to be automatically identified in the module?">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="cache" type="list" default="0" label="MODULE_CACHING" description="Select whether to cache the content of this module">
			<option value="0">No caching</option>
			<option value="1">Use global</option>
		</param>
		<param name="cache_time" type="text" default="15" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" description="COM_MODULES_FIELD_CACHE_TIME_DESC"/>
		<param name="includejs" type="list" default="header" label="MODULE_JS" description="How should AcyMailing add the necessary JS files">
			<option value="header">In the header</option>
			<option value="module">On the module itself</option>
		</param>
		<param name="itemid" size="10" type="text" default="" label="ACY_ITEMID" description="Menu ID used in the archive links coming from this module"/>
	</params>

	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" default="module" label="Help" description="Click on the help button to get some help"/>
				<field name="effect" type="radio" default="normal" label="DISPLAY_EFFECT" description="Select the effect you want to add to your module">
					<option value="normal">Normal (no effect)</option>
					<option value="mootools-slide">Slide effect</option>
					<option value="mootools-box">Popup effect</option>
				</field>
				<field name="lists" type="lists" default="None" label="VISIBLE_LISTS" description="The following selected lists will be added on the Module and will be visible (if they are not selected as automatically subscribed to)."/>
				<field name="hiddenlists" type="lists" default="All" label="AUTO_SUBSCRIBE_TO" description="The user will be automatically subscribed to the selected lists. They won't be displayed on your module but if the user subscribes, he will be subscribed to those lists as well"/>
				<field name="displaymode" type="radio" default="vertical" label="DISPLAY_MODE" description="Select whether you want to display the form horizontally, vertically or without table">
					<option value="inline">Horizontal</option>
					<option value="vertical">Vertical</option>
					<option value="tableless">Tableless</option>
				</field>
				<field name="listschecked" type="lists" default="All" label="LISTS_CHECKED_DEFAULT" description="The selected lists will be checked by default on your module if they are visible."/>
				<field name="checkmode" type="radio" default="0" label="CHECKED_MODE" description="If you select the first option - Show user's subscription status - only the lists that the logged-in user is subscribed to will be checked. This option has an effect on logged-in users only so you can choose whether you want to display his own subscription or always the default one.">
					<option value="0">Show user's subscription status</option>
					<option value="1">Default checked lists</option>
				</field>
				<field name="dropdown" type="radio" default="0" label="DROPDOWN_LISTS" description="Display the visible lists in a dropdown">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="overlay" type="radio" default="0" label="DESC_OVERLAY" description="Add the description of each visible list as an overlay of the list name. Be careful, you might have conflicts using this option if you have some flash elements on your website.">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="link" type="radio" default="1" label="LINKED_ARCHIVE" description="Add a link to the archive section for each list.">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="listposition" type="radio" default="before" label="LIST_POSITION" description="Select where to display the list.">
					<option value="before">ACY_BEFORE_FIELDS</option>
					<option value="after">ACY_AFTER_FIELDS</option>
				</field>
				<field name="customfields" type="customfields" default="name,email" label="DISP_FIELDS" description="Select the fields you want to display on your subscription module"/>

				<field name="@spacer" type="spacer" default="" label="" description=""/>

				<field name="nametext" type="text" size="50" default="" label="CAPT_NAME" description="Text displayed on the name field. If you don't specify anything, the default value will be used from the current language file" filter="SAFEHTML"/>
				<field name="emailtext" type="text" size="50" default="" label="CAPT_EMAIL" description="Text displayed on the e-mail field. If you don't specify anything, the default value will be used from the current language file" filter="SAFEHTML"/>
				<field name="fieldsize" type="text" size="10" default="80%" label="FIELD_SIZE" description="Specify the size of the email and name fields on your subscription form"/>
				<field name="displayfields" type="radio" default="0" label="DISP_TEXT_MODE" description="Display the Name and E-mail text inside or outside the field?">
					<option value="0">Inside</option>
					<option value="1">Outside</option>
				</field>
				<field name="introtext" type="textarea" rows="5" cols="35" default="" label="INTRO_TEXT" description="This text will be displayed before the form inside a span class=acymailing_introtext" filter="SAFEHTML"/>
				<field name="finaltext" type="textarea" rows="5" cols="35" default="" label="POST_TEXT" description="This text will be displayed after the form inside a span class=acymailing_finaltext" filter="SAFEHTML"/>
				<field name="@spacer" type="spacer" default="" label="" description=""/>
				<field name="showsubscribe" type="radio" default="1" label="DISP_SUB_BUTTON" description="Display the subscribe button on the module">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="subscribetext" type="text" size="50" default="" label="CAPT_SUB" description="Text displayed on the subscribe button. If you don't specify anything, the default value will be used from the current language file" filter="SAFEHTML"/>
				<field name="subscribetextreg" type="text" size="50" default="" label="CAPT_SUB_LOGGED" description="Text displayed on the subscribe button if the user is logged in. If you don't specify anything, the default value will be used from the current language file" filter="SAFEHTML"/>
				<field name="showunsubscribe" type="radio" default="0" label="DISP_UNSUB_BUTTON" description="Display the unsubscribe button on the module">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="unsubscribetext" type="text" size="50" default="" label="CAPT_UNSUB" description="Text displayed on the unsubscribe button. If you don't specify anything, the default value will be used from the current language file" filter="SAFEHTML"/>

				<field name="@spacer" type="spacer" default="" label="" description=""/>
				<field name="redirectmode" type="radio" default="0" label="REDIRECT_MODE" description="After submitting the form, the user can be redirected to the previous page, to the Acymailing archive page or to a custom link (in that case, please write the url in the next field)">
					<option value="3">Ajax</option>
					<option value="0">Previous page</option>
					<option value="1">AcyMailing Archive</option>
					<option value="2">Custom Redirect Link</option>
				</field>
				<field name="redirectlink" type="text" size="50" default="" label="REDIRECT_LINK" description="If you selected the mode 'Custom Redirect Link', the user will be redirected to this url after clicking on the button subscribe"/>
				<field name="redirectlinkunsub" type="text" size="50" default="" label="REDIRECTION_UNSUB" description="If you selected the mode 'Custom Redirect Link', the user will be redirected to this url after clicking on the button unsubscribe"/>

				<field name="@spacer" type="spacer" default="" label="" description=""/>

				<field name="showterms" type="radio" default="0" label="JOOMEXT_TERMS" description="Display the 'Accept Terms and Conditions' box">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="showtermspopup" type="radio" default="1" label="TERMS_POPUP" description="If you select 'Yes', the article linked to the terms and conditions will be displayed in a popup, otherwise it will be displayed as a separated page">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="termscontent" type="termscontent" default="0" label="TERMS_CONTENT" description="The selected article will be displayed if the user clicks on the link 'Terms and Conditions'"/>
				<field name="@spacer" type="spacer" default="" label="" description=""/>
				<field name="mootoolsintro" type="textarea" rows="5" cols="35" default="" label="MOO_INTRO" description="This text will be displayed before the button in case of you use the Slide / Popup effect" filter="SAFEHTML"/>
				<field name="mootoolsbutton" type="text" size="50" default="" label="MOO_BUTTON" description="Text displayed on the button in case of you use the Slide / Popup effect. If you don't specify anything, the default value will be used from the current language file" filter="SAFEHTML"/>
				<field name="boxwidth" type="text" size="5" default="250" label="MOO_BOX_WIDTH" description="If you use the popup effect, you can set the width of the box in this area"/>
				<field name="boxheight" type="text" size="5" default="200" label="MOO_BOX_HEIGHT" description="If you use the popup effect, you can set the height of the box in this area"/>

			</fieldset>
			<fieldset name="advanced">
				<field name="moduleclass_sfx" type="text" default="" label="MODULE_CLASSSUF" description="COM_MODULES_FIELD_MODULECLASS_SFX_DESC"/>
				<field name="textalign" type="list" default="0" label="MODULE_ALIGNMENT" description="This option enables you to align the text inside the module">
					<option value="none">Default CSS alignment</option>
					<option value="right">Right</option>
					<option value="left">Left</option>
					<option value="center">Center</option>
				</field>
				<field name="loggedin" type="radio" default="1" label="MODULE_AUTOID" description="Do you want the logged in users to be automatically identified in the module?">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="cache" type="list" default="0" label="MODULE_CACHING" description="Select whether to cache the content of this module">
					<option value="0">No caching</option>
					<option value="1">Use global</option>
				</field>
				<field name="cache_time" type="text" default="15" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" description="COM_MODULES_FIELD_CACHE_TIME_DESC"/>
				<field name="includejs" type="list" default="header" label="MODULE_JS" description="How should AcyMailing add the necessary JS files">
					<option value="header">In the header</option>
					<option value="module">On the module itself</option>
				</field>
				<field name="itemid" size="10" type="text" default="" label="ACY_ITEMID" description="Menu ID used in the archive links coming from this module"/>
			</fieldset>
		</fields>
	</config>
</install>

extensions/mod_acymailing/index.html000060400000000054152455705230013717 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_managetext/managetext.xml000060400000006551152455705230017031 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Manage text</name>
	<creationDate>October 2010</creationDate>
	<version>1.0.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to remove some text from your Newsletter or add a signature at the end of all your Newsletters or add/remove an e-mail from the queue...</description>
	<files>
		<filename plugin="managetext">managetext.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-managetext"/>
		<param name="removetext" type="text" size="100" default="{reg},{/reg},{pub},{/pub}" label="Text to remove" description="Enter the different strings you want AcyMailing to remove and separate them with a comma. Example : {reg},{/reg},{pub},{/pub}" />
		<param name="removetags" type="text" size="100" default="youtube" label="Code to remove" description="AcyMailing will remove all tags specified in this option and its content, separate them with a comma" />

		<param name="footer" type="textarea" rows="5" cols="35" default="" label="Footer" description="Write the text you want to be added at the end of each e-mail" />
		<param name="@spacer" type="spacer" default="" label="" description="" />

		<param name="frontendaccess" type="list" default="all" label="Front-end Access for filter" description="You can restrict the access to the filter 'Randomly select X Users' on the Front-end">
			<option value="all">Always display this filter</option>
			<option value="none">Don't display this filter on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-managetext"/>
				<field name="removetext" type="text" size="100" default="{reg},{/reg},{pub},{/pub}" label="Text to remove" description="Enter the different strings you want AcyMailing to remove and separate them with a comma. Example : {reg},{/reg},{pub},{/pub}" />
				<field name="removetags" type="text" size="100" default="youtube" label="Code to remove" description="AcyMailing will remove all tags specified in this option and its content, separate them with a comma" />

				<field name="footer" type="textarea" rows="5" cols="35" default="" label="Footer" description="Write the text you want to be added at the end of each e-mail" filter="SAFEHTML" />
				<field name="@spacer" type="spacer" default="" label="" description="" />

				<field name="frontendaccess" type="list" default="all" label="Front-end Access for filter" description="You can restrict the access to the filter 'Randomly select X Users' on the Front-end">
					<option value="all">Always display this filter</option>
					<option value="none">Don't display this filter on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_managetext/managetext.php000060400000032512152455705230017014 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php
defined('_JEXEC') or die('Restricted access');

class plgAcymailingManagetext extends JPlugin{
	var $foundtags = array();

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'managetext');
			$this->params = new acyParameter($plugin->params);
		}
	}

	function acymailing_replacetags(&$email, $send = true){
		$this->_replaceConstant($email);
		$this->_replaceRandom($email);
	}

	function acymailing_replaceusertags(&$email, &$user, $send = true){
		$this->_removetext($email);
		$this->_addfooter($email);
		$this->_ifstatement($email, $user);
	}

	private function _replaceConstant(&$email){
		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$tags = $acypluginsHelper->extractTags($email, '(?:const|trans|config)');
		if(empty($tags)) return;

		$jconfig = JFactory::getConfig();

		$tagsReplaced = array();
		foreach($tags as $i => $oneTag){
			$val = '';
			$arrayVal = array();
			foreach($oneTag as $valname => $oneValue){
				if($valname == 'id'){
					$val = trim(strip_tags($oneValue));
				}elseif($valname != 'default'){
					$arrayVal[] = '{'.$valname.'}';
				}
			}

			if(empty($val)) continue;
			$tagValues = explode(':', $i);
			$type = ltrim($tagValues[0], '{');
			if($type == 'const'){
				$tagsReplaced[$i] = defined($val) ? constant($val) : 'Constant not defined : '.$val;
			}elseif($type == 'config'){
				if($val == 'sitename'){
					$tagsReplaced[$i] = ACYMAILING_J30 ? $jconfig->get($val) : $jconfig->getValue('config.'.$val);
				}
			}else{
				static $done = false;
				if(!$done){
					$done = true;
					acymailing_loadLanguageFile('com_users', JPATH_SITE);
					acymailing_loadLanguageFile('com_users', JPATH_ADMINISTRATOR);
					acymailing_loadLanguageFile('plg_user_joomla', JPATH_ADMINISTRATOR);
				}
				if(!empty($arrayVal)){
					$tagsReplaced[$i] = nl2br(vsprintf(acymailing_translation($val), $arrayVal));
				}else{
					$tagsReplaced[$i] = acymailing_translation($val);
				}
			}
		}

		$acypluginsHelper->replaceTags($email, $tagsReplaced, true);
	}

	private function _replaceRandom(&$email){
		$pluginHelper = acymailing_get('helper.acyplugins');
		$randTag = $pluginHelper->extractTags($email, "rand");
		if(empty($randTag)) return;
		foreach($randTag as $oneRandTag){
			$results[$oneRandTag->id] = explode(';', $oneRandTag->id);
			$randNumber = rand(0, count($results[$oneRandTag->id]) - 1);
			$results[$oneRandTag->id][count($results[$oneRandTag->id])] = $results[$oneRandTag->id][$randNumber];
		}

		$tags = array();
		foreach(array_keys($results) as $oneResult){
			$tags['{rand:'.$oneResult.'}'] = end($results[$oneResult]);
		}

		if(empty($tags)) return;
		$pluginHelper->replaceTags($email, $tags, true);
	}


	private function _ifstatement(&$email, $user, $loop = 1){
		if(isset($this->noIfStatementTags[$email->mailid])) return;

		$isAdmin = JFactory::getApplication()->isAdmin();

		if($loop > 3){
			if($isAdmin) acymailing_display('You cannot have more than 3 nested {if} tags.', 'warning');
			return;
		}

		$match = '#{if:(((?!{if).)*)}(((?!{if).)*){/if}#Uis';
		$variables = array('subject', 'body', 'altbody', 'From', 'FromName', 'ReplyTo');
		$found = false;
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			if(is_array($email->$var)){
				foreach($email->$var as $i => &$arrayField){
					if(empty($arrayField) || !is_array($arrayField)) continue;
					foreach($arrayField as $key => &$oneval){
						$found = preg_match_all($match, $oneval, $results[$var.$i.'-'.$key]) || $found;
						if(empty($results[$var.$i.'-'.$key][0])) unset($results[$var.$i.'-'.$key]);
					}
				}
			}else{
				$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
				if(empty($results[$var][0])) unset($results[$var]);
			}
		}

		if(!$found){
			if($loop == 1) $this->noIfStatementTags[$email->mailid] = true;
			return;
		}

		static $a = false;

		$tags = array();
		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($tags[$oneTag])) continue;
				$allresults[1][$i] = html_entity_decode($allresults[1][$i]);
				if(!preg_match('#^(.+)(!=|<|>|&gt;|&lt;|!~)([^=!<>~]+)$#is', $allresults[1][$i], $operators) && !preg_match('#^(.+)(=|~)([^=!<>~]+)$#is', $allresults[1][$i], $operators)){
					if($isAdmin) acymailing_display('Operation not found : '.$allresults[1][$i], 'error');
					$tags[$oneTag] = $allresults[3][$i];
					continue;
				};
				$field = trim($operators[1]);
				$prop = '';

				$operatorsParts = explode('.', $operators[1]);
				$operatorComp = 'acymailing';
				if(count($operatorsParts) > 1 && in_array($operatorsParts[0], array('acymailing', 'joomla', 'var'))){
					$operatorComp = $operatorsParts[0];
					unset($operatorsParts[0]);
					$field = implode('.', $operatorsParts);
				}
				
				if($operatorComp == 'joomla'){
					if(!empty($user->userid)){
						if($field == 'gid' && ACYMAILING_J16){
							$prop = implode(';', acymailing_loadResultArray('SELECT group_id FROM #__user_usergroup_map WHERE user_id = '.intval($user->userid)));
						}else{
							$juser = acymailing_loadObject('SELECT * FROM #__users WHERE id = '.intval($user->userid));
							if(isset($juser->{$field})){
								$prop = strtolower($juser->{$field});
							}else{
								if($isAdmin && !$a) acymailing_display('User variable not set : '.$field.' in '.$allresults[1][$i], 'error');
								$a = true;
							}
						}
					}
				}elseif($operatorComp == 'var'){
					$prop = strtolower($field);
				}else{
					if(!isset($user->{$field})){
						if($isAdmin && !$a) acymailing_display('User variable not set : '.$field.' in '.$allresults[1][$i], 'error');
						$a = true;
					}else{
						$prop = strtolower($user->{$field});
					}
				}

				$tags[$oneTag] = '';
				$val = trim(strtolower($operators[3]));
				if($operators[2] == '=' && ($prop == $val || in_array($prop, explode(';', $val)) || in_array($val, explode(';', $prop)))){
					$tags[$oneTag] = $allresults[3][$i];
				}elseif($operators[2] == '!=' && $prop != $val){
					$tags[$oneTag] = $allresults[3][$i];
				}elseif(($operators[2] == '>' || $operators[2] == '&gt;') && $prop > $val){
					$tags[$oneTag] = $allresults[3][$i];
				}elseif(($operators[2] == '<' || $operators[2] == '&lt;') && $prop < $val){
					$tags[$oneTag] = $allresults[3][$i];
				}elseif($operators[2] == '~' && strpos($prop, $val) !== false){
					$tags[$oneTag] = $allresults[3][$i];
				}elseif($operators[2] == '!~' && strpos($prop, $val) === false){
					$tags[$oneTag] = $allresults[3][$i];
				}
			}
		}

		foreach($variables as &$var){
			if(empty($email->$var)) continue;
			if(is_array($email->$var)){
				foreach($email->$var as &$arrayField){
					if(empty($arrayField) || !is_array($arrayField)) continue;
					foreach($arrayField as &$oneval){
						$oneval = str_replace(array_keys($tags), $tags, $oneval);
					}
				}
			}else{
				$email->$var = str_replace(array_keys($tags), $tags, $email->$var);
			}
		}
		$this->_ifstatement($email, $user, $loop + 1);
	}

	private function _removetext(&$email){
		$removetext = $this->params->get('removetext', '{reg},{/reg},{pub},{/pub}');
		if(!empty($removetext)){
			$removeArray = explode(',', trim($removetext, ' ,'));
			if(!empty($email->body)) $email->body = str_replace($removeArray, '', $email->body);
			if(!empty($email->altbody)) $email->altbody = str_replace($removeArray, '', $email->altbody);
		}


		$removetags = $this->params->get('removetags', 'youtube');
		if(!empty($removetags)){
			$regex = array();
			$removeArray = explode(',', trim($removetags, ' ,'));
			foreach($removeArray as $oneTag){
				if(empty($oneTag)) continue;
				$regex[] = '#(?:{|%7B)'.preg_quote($oneTag, '#').'(?:}|%7D).*(?:{|%7B)/'.preg_quote($oneTag, '#').'(?:}|%7D)#Uis';
				$regex[] = '#(?:{|%7B)'.preg_quote($oneTag, '#').'[^}]*(?:}|%7D)#Uis';
			}

			if(!empty($email->body)) $email->body = preg_replace($regex, '', $email->body);
			if(!empty($email->altbody)) $email->altbody = preg_replace($regex, '', $email->altbody);
		}
	}

	private function _addfooter(&$email){
		$footer = $this->params->get('footer');
		if(!empty($footer)){
			if(strpos($email->body, '</body>')){
				$email->body = str_replace('</body>', '<br />'.$footer.'</body>', $email->body);
			}else{
				$email->body .= '<br />'.$footer;
			}

			if(!empty($email->altbody)){
				$email->altbody .= "\n".$footer;
			}
		}
	}

	function onAcyDisplayFilters(&$type, $context = "massactions"){
		if($this->params->get('displayfilter_'.$context, true) == false || ($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin())) return;

		$type['limitrand'] = acymailing_translation_sprintf('ACY_RAND_LIMIT', 'X');

		$return = '<div id="filter__num__limitrand">'.acymailing_translation_sprintf('ACY_RAND_LIMIT', '<input type="text" style="width:60px" value="30" name="filter[__num__][limitrand][nbusers]" />').'</div>';

		return $return;
	}

	function onAcyDisplayFilter_limitrand($filter){
		return acymailing_translation_sprintf('ACY_RAND_LIMIT', $filter['nbusers']);
	}


	function onAcyProcessFilter_limitrand(&$query, $filter, $num){
		$query->limit = intval($filter['nbusers']);
		$query->orderBy = 'RAND()';
	}

	function onAcyDisplayActions(&$type){
		$type['addqueue'] = acymailing_translation('ADD_QUEUE');
		$type['removequeue'] = acymailing_translation('REMOVE_QUEUE');

		$allEmails = acymailing_loadObjectList("SELECT `mailid`,`subject`, `type` FROM `#__acymailing_mail` WHERE `type` NOT IN ('notification','autonews','joomlanotification') OR `alias` = 'confirmation' ORDER BY `type`,`senddate` DESC LIMIT 5000");

		$emailsToDisplay = array();
		$typeNews = '';
		foreach($allEmails as $oneMail){
			$oneMail->subject = acyEmoji::Decode($oneMail->subject);
			if($oneMail->type != $typeNews){
				if(!empty($typeNews)) $emailsToDisplay[] = acymailing_selectOption('</OPTGROUP>');
				$typeNews = $oneMail->type;
				if($oneMail->type == 'news'){
					$label = acymailing_translation('NEWSLETTERS');
				}elseif($oneMail->type == 'followup'){
					$label = acymailing_translation('FOLLOWUP');
				}elseif($oneMail->type == 'welcome'){
					$label = acymailing_translation('MSG_WELCOME');
				}elseif($oneMail->type == 'unsub'){
					$label = acymailing_translation('MSG_UNSUB');
				}else{
					$label = $oneMail->type;
				}
				$emailsToDisplay[] = acymailing_selectOption('<OPTGROUP>', $label);
			}
			$emailsToDisplay[] = acymailing_selectOption($oneMail->mailid, $oneMail->subject.' ['.$oneMail->mailid.']');
		}
		$emailsToDisplay[] = acymailing_selectOption('</OPTGROUP>');

		$addqueue = '<div id="action__num__addqueue">'.acymailing_select($emailsToDisplay, "action[__num__][addqueue][mailid]", 'class="inputbox" size="1"').'<br /><label for="addqueuesenddate__num__">'.acymailing_translation('SEND_DATE').' </label> <input type="text" value="{time}" id="addqueuesenddate__num__" name="action[__num__][addqueue][senddate]" onclick="displayDatePicker(this,event)"/></div>';

		$allMessages = acymailing_selectOption(0, acymailing_translation('ACY_ALL'));
		array_unshift($emailsToDisplay, $allMessages);
		$removequeue = '<div id="action__num__removequeue">'.acymailing_select($emailsToDisplay, "action[__num__][removequeue][mailid]", 'class="inputbox" size="1"').'</div>';
		return $addqueue.$removequeue;
	}

	function onAcyProcessAction_addqueue($cquery, $action, $num){
		$action['mailid'] = intval($action['mailid']);
		if(empty($action['mailid'])) return 'Mailid not valid';
		if(empty($action['senddate'])) return 'Send date not valid';

		$action['senddate'] = acymailing_replaceDate($action['senddate']);
		if(!is_numeric($action['senddate'])) $action['senddate'] = acymailing_getTime($action['senddate']);
		if(empty($action['senddate'])) return 'send date not valid';

		$query = 'INSERT IGNORE INTO `#__acymailing_queue` (`mailid`,`subid`,`senddate`,`priority`) '.$cquery->getQuery(array($action['mailid'], 'sub.`subid`', $action['senddate'], '2'));
		$affected = acymailing_query($query);
		return acymailing_translation_sprintf('ADDED_QUEUE', $affected);
	}

	function onAcyProcessAction_removequeue($cquery, $action, $num){
		$action['mailid'] = intval($action['mailid']);
		if(!empty($action['mailid'])) $cquery->where['queueremove'] = 'queueremove.mailid = '.$action['mailid'];

		$query = 'DELETE queueremove.* FROM `#__acymailing_queue` as queueremove ';
		$query .= 'JOIN `#__acymailing_subscriber` as sub ON queueremove.subid = sub.subid ';
		if(!empty($cquery->join)) $query .= ' JOIN '.implode(' JOIN ', $cquery->join);
		if(!empty($cquery->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $cquery->leftjoin);
		if(!empty($cquery->where)) $query .= ' WHERE ('.implode(') AND (', $cquery->where).')';

		$affected = acymailing_query($query);

		unset($cquery->where['queueremove']);

		return acymailing_translation_sprintf('SUCC_DELETE_ELEMENTS', $affected);
	}

	function onAcyProcessAction_displayUsers($cquery, $action, $num){

		$res = array();
		$res['countTotal'] = $cquery->count();

		if(empty($cquery->limit) || $cquery->limit > 50) $cquery->limit = 20;

		$query = $cquery->getQuery(array('sub.`subid`', 'sub.email', 'sub.name'));
		$users = acymailing_loadObjectList($query);

		$res['users'] = $users;
		return $res;
	}

}//endclass
extensions/plg_acymailing_managetext/index.html000060400000000054152455705230016137 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_stats/stats.php000060400000013340152455705230015014 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingStats extends JPlugin{
	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'stats');
			$this->params = new acyParameter($plugin->params);
		}
		$this->acypluginsHelper = acymailing_get('helper.acyplugins');
	}

	function acymailing_replacetags(&$email, $send = true){
		$this->statPicture($email, $send);
	}

	function statPicture(&$email, $send = true){
		if(!empty($email->altbody)){
			$email->altbody = str_replace(array('{statpicture}', '{nostatpicture}'), '', $email->altbody);
		}
		if(((isset($email->sendHTML) && !$email->sendHTML) || (isset($email->html) && !$email->html))
			|| empty($email->type)
			|| !in_array($email->type, array('news', 'autonews', 'followup', 'welcome', 'unsub', 'joomlanotification', 'action'))
			|| strpos($email->body, '{nostatpicture}')){
			$email->body = str_replace(array('{statpicture}', '{nostatpicture}'), '', $email->body);
			return;
		}

		if(!$send){
			$pictureLink = ACYMAILING_LIVE.$this->params->get('picture', 'media/com_acymailing/images/statpicture.png');
		}else {
			$config = acymailing_config();
			$itemId = $config->get('itemid', 0);
			$item = empty($itemId) ? '' : '&Itemid=' . $itemId;
			$pictureLink = acymailing_frontendLink('index.php?option=com_acymailing&ctrl=statistics&mailid=' . $email->mailid . '&subid={subtag:subid}' . $item, false);
		}

		$widthsize = $this->params->get('width', 50);
		$heightsize = $this->params->get('height', 1);
		$width = empty($widthsize) ? '' : ' width="'.$widthsize.'" ';
		$height = empty($heightsize) ? '' : ' height="'.$heightsize.'" ';

		$statPicture = '<img class="spict" alt="'.$this->params->get('alttext', '').'" src="'.$pictureLink.'"  border="0" '.$height.$width.'/>';

		if(strpos($email->body, '{statpicture}')){
			$email->body = str_replace('{statpicture}', $statPicture, $email->body);
		}elseif(strpos($email->body, '</body>')) $email->body = str_replace('</body>', $statPicture.'</body>', $email->body);
		else $email->body .= $statPicture;
	}//endfct

	function acymailing_getstatpicture(){
		return $this->params->get('picture', 'media/com_acymailing/images/statpicture.png');
	}

	function onAcyDisplayTriggers(&$triggers){
		$triggers['opennews'] = acymailing_translation('ON_OPEN_NEWS');
	}

	function onAcyDisplayFilters(&$type, $context = "massactions"){

		if($context != "massactions" AND !$this->params->get('displayfilter_'.$context, false)) return;

		$type['deliverstat'] = acymailing_translation('STATISTICS');

		$allemails = acymailing_loadObjectList("SELECT `mailid`,CONCAT(`subject`,' [',".acymailing_escapeDB(acymailing_translation('ACY_ID').' ').", CAST(`mailid` AS char),']') as 'value' FROM `#__acymailing_mail` WHERE `type` IN('news','welcome','unsub','followup','notification','joomlanotification') ORDER BY `senddate` DESC LIMIT 5000");
		$element = new stdClass();
		$element->mailid = 0;
		$element->value = acymailing_translation('EMAIL_NAME');
		array_unshift($allemails, $element);

		$actions = array();
		$actions[] = acymailing_selectOption('open', acymailing_translation('OPEN'));
		$actions[] = acymailing_selectOption('notopen', acymailing_translation('NOT_OPEN'));
		$actions[] = acymailing_selectOption('failed', acymailing_translation('FAILED'));
		if(acymailing_level(3)) $actions[] = acymailing_selectOption('bounce', acymailing_translation('BOUNCES'));
		$actions[] = acymailing_selectOption('htmlsent', acymailing_translation('SENT_HTML'));
		$actions[] = acymailing_selectOption('textsent', acymailing_translation('SENT_TEXT'));
		$actions[] = acymailing_selectOption('notsent', acymailing_translation('NOT_SENT'));

		$return = '<div id="filter__num__deliverstat">'.acymailing_select($actions, "filter[__num__][deliverstat][action]", 'class="inputbox" onchange="countresults(__num__);" size="1"', 'value', 'text');
		$return .= ' '.acymailing_select($allemails, "filter[__num__][deliverstat][mailid]", 'onchange="countresults(__num__)" class="inputbox" size="1" style="max-width:200px"', 'mailid', 'value').'</div>';

		return $return;
	}

	function onAcyProcessFilterCount_deliverstat(&$query, $filter, $num){
		$this->onAcyProcessFilter_deliverstat($query, $filter, $num);
		return acymailing_translation_sprintf('SELECTED_USERS', $query->count());
	}

	function onAcyProcessFilter_deliverstat(&$query, $filter, $num){

		$alias = 'stats'.$num;
		$jl = '#__acymailing_userstats AS '.$alias.' ON '.$alias.'.subid = sub.subid';
		if(!empty($filter['mailid'])) $jl .= ' AND '.$alias.'.mailid = '.intval($filter['mailid']);

		$query->leftjoin[$alias] = $jl;

		if($filter['action'] == 'open'){
			$where = $alias.'.open > 0';
		}elseif($filter['action'] == 'notopen'){
			if(empty($filter['mailid'])) {
				unset($query->leftjoin[$alias]);
				$usersNeverOpened = acymailing_loadResultArray('SELECT subid FROM #__acymailing_userstats GROUP BY subid HAVING MAX(open) = 0');
				if(empty($usersNeverOpened)) $usersNeverOpened = array(0);
				$where = 'sub.subid IN ('.implode(',', $usersNeverOpened).')';
			}else{
				$where = $alias.'.open = 0';
			}
		}elseif($filter['action'] == 'failed'){
			$where = $alias.'.fail = 1';
		}elseif($filter['action'] == 'bounce'){
			$where = $alias.'.bounce = 1';
		}elseif($filter['action'] == 'htmlsent'){
			$where = $alias.'.html = 1';
		}elseif($filter['action'] == 'textsent'){
			$where = $alias.'.html = 0';
		}elseif($filter['action'] == 'notsent'){
			$where = $alias.'.subid IS NULL';
		}

		$query->where[] = $where;
	}

}//endclass
extensions/plg_acymailing_stats/stats.xml000060400000006406152455705230015032 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing : Statistics Plugin</name>
	<creationDate>September 2009</creationDate>
	<version>3.7.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin is used to handle statistics on any AcyMailing e-mail</description>
	<files>
		<filename plugin="stats">stats.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-stats"/>
		<param name="picture" type="text" size="60" label="Stat picture" default="media/com_acymailing/images/statpicture.png" description="Path of the statistic picture"/>
		<param name="alttext" type="text" size="60" default="" label="Alt Text" description="Alternatif text which will be displayed if the user does not accept to load your images" />
		<param name="width" type="text" size="2" default="50" label="Stat picture width" description="An image will be added in your HTML e-mails to be able to handle statistics. You can modify the width of the stat picture." />
		<param name="height" type="text" size="2" default="1" label="Stat picture height" description="An image will be added in your HTML e-mails to be able to handle statistics. You can modify the height of the stat picture." />
		<param name="displayfilter_mail" type="radio" default="0" label="Display filter" description="Display the statistics filter on the Newsletter creation interface">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-stats"/>
				<field name="picture" type="text" size="60" label="Stat picture" default="media/com_acymailing/images/statpicture.png" description="Path of the statistic picture"/>
				<field name="alttext" type="text" size="60" default="" label="Alt Text" description="Alternatif text which will be displayed if the user does not accept to load your images" />
				<field name="width" type="text" size="2" default="50" label="Stat picture width" description="An image will be added in your HTML e-mails to be able to handle statistics. You can modify the width of the stat picture." />
				<field name="height" type="text" size="2" default="1" label="Stat picture height" description="An image will be added in your HTML e-mails to be able to handle statistics. You can modify the height of the stat picture." />
				<field name="displayfilter_mail" type="radio" default="0" label="Display filter" description="Display the statistics filter on the Newsletter creation interface">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_stats/index.html000060400000000054152455705230015140 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_system_jceacymailing/index.html000060400000000054152455705230016010 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_system_jceacymailing/jceacymailing.xml000060400000001346152455705230017341 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="system">
	<name>AcyMailing JCE integration</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to use the JCE editor with AcyMailing</description>
	<files>
		<filename plugin="jceacymailing">jceacymailing.php</filename>
	</files>
</install>
extensions/plg_system_jceacymailing/jceacymailing.php000060400000001041152455705230017320 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgSystemJceacymailing extends JPlugin{
	function onBeforeWfEditorRender(&$settings) {
		if(empty($_REQUEST['option']) || $_REQUEST['option'] != 'com_acymailing') return;

		if(!empty($_REQUEST['acycssfile'])) $settings['content_css'] = $_REQUEST['acycssfile'];
	}
}
extensions/plg_acymailing_online/index.html000060400000000054152455705230015266 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_online/online.xml000060400000010456152455705230015306 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag : Website links</name>
	<creationDate>September 2009</creationDate>
	<version>3.7.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add links in your Newsletter such as "read in your browser" or "forward to a friend"</description>
	<files>
		<filename plugin="online">online.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-online"/>
		<param name="addkey" type="radio" default="yes" label="Add Newsletter key" description="Add the Newsletter key in the link so the online version will be always accessible from the link inserted in the Newsletter">
			<option value="yes">Yes</option>
			<option value="no">No</option>
		</param>
		<param name="adduserkey" type="radio" default="yes" label="Add User key" description="Add the user key in the link so the online version will contain the personal information as well">
			<option value="yes">Yes</option>
			<option value="no">No</option>
		</param>
		<param name="viewtemplate" type="radio" default="notemplate" label="Display the online version - DEPRECATED" description="This option is not useful any more, please use the option when inserting the tag instead">
			<option value="standard">Standard template</option>
			<option value="notemplate">No template</option>
		</param>
		<param name="forwardtemplate" type="radio" default="notemplate" label="Display the forward version - DEPRECATED" description="This option is not useful any more, please use the option when inserting the tag instead">
			<option value="standard">Standard template</option>
			<option value="notemplate">No template</option>
		</param>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-online"/>
				<field name="addkey" type="radio" default="yes" label="Add Newsletter key" description="Add the Newsletter key in the link so the online version will be always accessible from the link inserted in the Newsletter">
					<option value="yes">Yes</option>
					<option value="no">No</option>
				</field>
				<field name="adduserkey" type="radio" default="yes" label="Add User key" description="Add the user key in the link so the online version will contain the personal information as well">
					<option value="yes">Yes</option>
					<option value="no">No</option>
				</field>
				<field name="viewtemplate" type="radio" default="notemplate" label="Display the online version - DEPRECATED" description="This option is not useful any more, please use the option when inserting the tag instead">
					<option value="standard">Standard template</option>
					<option value="notemplate">No template</option>
				</field>
				<field name="forwardtemplate" type="radio" default="notemplate" label="Display the forward version - DEPRECATED" description="This option is not useful any more, please use the option when inserting the tag instead">
					<option value="standard">Standard template</option>
					<option value="notemplate">No template</option>
				</field>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_online/online.php000060400000013366152455705230015300 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingOnline extends JPlugin{
	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'online');
			$this->params = new acyParameter($plugin->params);
		}
	}

	function acymailing_getPluginType(){

		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('WEBSITE_LINKS');
		$onePlugin->function = 'acymailingtagonline_show';
		$onePlugin->help = 'plugin-online';

		return $onePlugin;
	}

	function acymailingtagonline_show(){

		$others = array();
		$config = acymailing_config();
		$others['readonline'] = array('default' => acymailing_translation('VIEW_ONLINE', true), 'desc' => acymailing_translation('VIEW_ONLINE_LINK'));
		if($config->get('forward', true)){
			$others['forward'] = array('default' => acymailing_translation('FORWARD_FRIEND', true), 'desc' => acymailing_translation('FORWARD_FRIEND_LINK'));
		}

		?>
		<script language="javascript" type="text/javascript">
			<!--
			var selectedTag = '';
			function changeTag(tagName){
				selectedTag = tagName;
				defaultText = new Array();
				<?php
								$k = 0;
								foreach($others as $tagname => $tag){
									echo "document.getElementById('tr_$tagname').className = 'row$k';";
									echo "defaultText['$tagname'] = '".$tag['default']."';";
								}
								$k = 1-$k;
				?>
				document.getElementById('tr_' + tagName).className = 'selectedrow';
				document.adminForm.tagtext.value = defaultText[tagName];
				setOnlineTag();
			}

			function setOnlineTag(){
				if(!selectedTag) changeTag('readonline');
				otherinfo = '';
				for(var i = 0; i < document.adminForm.template.length; i++){
					if(document.adminForm.template[i].checked){
						otherinfo += '|template:' + document.adminForm.template[i].value;
					}
				}
				setTag('<a href=' + '"{' + selectedTag + otherinfo + '}{/' + selectedTag + '}" target="_blank" style="text-decoration:none;"><span class="acymailing_online">' + document.adminForm.tagtext.value + '</span></a>');
			}
			//-->
		</script>
		<?php
		echo acymailing_translation('FIELD_TEXT').' : <input type="text" name="tagtext" size="100px" onchange="setOnlineTag();" /><br /><br />';
		$radios = array();
		$radios[] = acymailing_selectOption("standard", acymailing_translation('IN_TEMPLATE'));
		$radios[] = acymailing_selectOption("notemplate", acymailing_translation('WITHOUT_TEMPLATE'));
		echo acymailing_radio($radios, 'template', 'size="1" onclick="setOnlineTag();"', 'value', 'text', 'notemplate');
		echo '<div class="onelineblockoptions">
				<table class="acymailing_table" cellpadding="1">';
		$k = 0;
		foreach($others as $tagname => $tag){
			echo '<tr style="cursor:pointer" class="row'.$k.'" onclick="changeTag(\''.$tagname.'\');" id="tr_'.$tagname.'" ><td class="acytdcheckbox" ></td><td>'.$tag['desc'].'</td></tr>';
			$k = 1 - $k;
		}
		echo '</table></div>';
	}

	function acymailing_replacetags(&$email, $send = true){
		if(acymailing_getVar('none', 'task', '') == 'replacetags') return;

		$match = '#(?:{|%7B)(readonline|forward)([^}]*)(?:}|%7D)(.*)(?:{|%7B)/(readonline|forward)(?:}|%7D)#Uis';
		$variables = array('body', 'altbody');
		$found = false;
		$results = array();
		foreach($variables as $var){
			if(empty($email->$var)) continue;
			$found = preg_match_all($match, $email->$var, $results[$var]) || $found;
			if(empty($results[$var][0])) unset($results[$var]);
		}

		if(!$found) return;

		$config = acymailing_config();

		$tags = array();

		foreach($results as $var => $allresults){
			foreach($allresults[0] as $i => $oneTag){
				if(isset($tags[$oneTag])) continue;
				$arguments = explode('|', strip_tags(str_replace('%7C', '|', $allresults[2][$i])));
				$tag = new stdClass();
				$tag->type = $allresults[1][$i];
				$tag->template = ($tag->type == 'readonline') ? $this->params->get('viewtemplate', 'notemplate') : $this->params->get('forwardtemplate', 'notemplate');
				$tag->itemid = $config->get('itemid', 0);
				for($j = 0, $a = count($arguments); $j < $a; $j++){
					$args = explode(':', $arguments[$j]);
					$arg0 = trim($args[0]);
					if(empty($arg0)) continue;
					if(isset($args[1])){
						$tag->$arg0 = $args[1];
					}else{
						$tag->$arg0 = true;
					}
				}

				$addkey = (!empty($email->key) && $this->params->get('addkey', 'yes') == 'yes') ? '&key='.$email->key : '';
				$adduserkey = $this->params->get('adduserkey', 'yes') == 'yes' ? '&subid={subtag:subid}-{subtag:key}' : '';
				$tmpl = ($tag->template == 'notemplate') ? '&tmpl=component' : '';
				$item = empty($tag->itemid) ? '' : '&Itemid='.$tag->itemid;
				$lang = empty($email->language) ? '' : '&lang='.$email->language;

				if($tag->type == 'readonline'){
					$link = acymailing_frontendLink('index.php?option=com_acymailing&ctrl=archive&task=view&mailid='.$email->mailid.$addkey.$adduserkey.$tmpl.$item.$lang);
				}elseif($tag->type == 'forward'){
					$link = acymailing_frontendLink('index.php?option=com_acymailing&ctrl=archive&task=forward&mailid='.$email->mailid.$addkey.$adduserkey.$tmpl.$item.$lang);
				}

				if(empty($allresults[3][$i])){
					$tags[$oneTag] = $link;
				}else $tags[$oneTag] = '<a style="text-decoration:none;" href="'.$link.'"><span class="acymailing_online">'.$allresults[3][$i].'</span></a>';
			}
		}

		$email->body = str_replace(array_keys($tags), $tags, $email->body);
		if(!empty($email->altbody)) $email->altbody = str_replace(array_keys($tags), $tags, $email->altbody);
	}
}//endclass
extensions/plg_acymailing_template/index.html000060400000000054152455705230015615 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_template/template.xml000060400000002307152455705230016160 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Template Class Replacer</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved.</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables AcyMailing to replace CSS class in each email</description>
	<files>
		<filename plugin="template">template.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-template"/>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-template"/>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_template/template.php000060400000027114152455705230016152 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingTemplate extends JPlugin{

	var $templates = array();
	var $tags = array();
	var $headerstyles = array();
	var $others = array();
	var $stylesheets = array();
	var $templateClass = '';
	var $config;

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'template');
			$this->params = new acyParameter($plugin->params);
		}
		$this->config = acymailing_config();
		if(version_compare(PHP_VERSION, '5.0.0', '>=') && class_exists('DOMDocument') && function_exists('mb_convert_encoding')){
			require_once(ACYMAILING_FRONT.'inc'.DS.'emogrifier'.DS.'emogrifier.php');
		}
	}

	private function _applyTemplate(&$email, $addbody){
		if(empty($email->tempid)) return;

		if(!isset($this->templates[$email->tempid])){
			$this->headerstyles[$email->tempid] = array();
			$this->headerstyles[$email->tempid][] = '.ReadMsgBody{width: 100%;}';
			$this->headerstyles[$email->tempid][] = '.ExternalClass{width: 100%;}';
			$this->headerstyles[$email->tempid][] = 'div, p, a, li, td { -webkit-text-size-adjust:none; }';
			$this->headerstyles[$email->tempid][] = 'a[x-apple-data-detectors]{
			color: inherit !important;
			text-decoration: inherit !important;
			font-size: inherit !important;
			font-family: inherit !important;
			font-weight: inherit !important;
			line-height: inherit !important;
			}';

			$this->templates[$email->tempid] = array();
			if(empty($this->templateClass)){
				$this->templateClass = acymailing_get('class.template');
			}
			if(!empty($email->template) && $email->tempid == $email->template->tempid){
				$template = $email->template;
			}else{
				$template = $email->template = $this->templateClass->get($email->tempid);
			}

			if(!empty($template->styles) OR !empty($template->stylesheet)){
				$this->stylesheets[$email->tempid] = $this->templateClass->buildCSS($template->styles, $template->stylesheet);

				if(preg_match_all('#@import[^;]*;#is', $this->stylesheets[$email->tempid], $results)){
					foreach($results[0] as $oneResult){
						array_unshift($this->headerstyles[$email->tempid], trim($oneResult));
					}
				}

				if(preg_match_all('#@media.*}[^{}]*}#Uis', $this->stylesheets[$email->tempid], $results)){

					foreach($results[0] as $oneResult){
						$this->stylesheets[$email->tempid] = str_replace($oneResult, '', $this->stylesheets[$email->tempid]);
						$this->headerstyles[$email->tempid][] = trim($oneResult);
					}
				}

				if(preg_match_all('#}([^}]+:hover[^{]*{[^{]*})#Uis', '} '.$this->stylesheets[$email->tempid], $results)){
					foreach($results[1] as $oneResult){
						$this->stylesheets[$email->tempid] = str_replace($oneResult, '', $this->stylesheets[$email->tempid]);
						$this->headerstyles[$email->tempid][] = trim($oneResult);
					}
				}
			}


			if(!empty($template->styles)){
				foreach($template->styles as $class => $style){
					if(empty($style)) continue;
					if(preg_match('#^tag_(.*)$#', $class, $result)){
						$this->tags[$email->tempid]['#< *'.$result[1].'((?:(?!style).)*)>#Ui'] = '<'.$result[1].' style="'.$style.'" $1>';
						if(strpos($style, '!important')) $this->headerstyles[$email->tempid][] = $result[1].'{ '.str_replace('!important', '', $style).' }';
					}elseif($class == 'color_bg'){
						$this->others[$email->tempid][$class] = $style;
					}else{
						$this->templates[$email->tempid]['class="'.$class.'"'] = 'style="'.$style.'"';
					}
				}
				if(!empty($template->styles['tag_a'])){
					$this->headerstyles[$email->tempid][] = 'a:visited{'.$template->styles['tag_a'].'}';
				}
			}
		}

		if($addbody AND !strpos($email->body, '</body>')){
			$before = '<html><head>'."\n";
			if(!empty($template->header)) $before .= $template->header."\n";
			$before .= '<meta http-equiv="Content-Type" content="text/html; charset='.strtolower($this->config->get('charset')).'" />'."\n";
			$before .= '<meta name="viewport" content="width=device-width, initial-scale=1.0" />'."\n";
			$before .= '<title>'.$email->subject.'</title>'."\n";
			if(!empty($this->headerstyles[$email->tempid])){
				$before .= '<style type="text/css">'."\n";
				$before .= implode("\n", $this->headerstyles[$email->tempid])."\n";
				$before .= '</style>'."\n";
			}
			$before .= '</head>'."\n".'<body yahoo="fix"';
			if(!empty($this->others[$email->tempid]['color_bg'])) $before .= ' bgcolor="'.$this->others[$email->tempid]['color_bg'].'" ';
			$before .= '>'."\n";
			$email->body = $before.$email->body.'</body>'."\n".'</html>';
		}

		if(!empty($this->stylesheets[$email->tempid]) AND class_exists('acymailingEmogrifier')){
			$emogrifier = new acymailingEmogrifier($email->body, $this->stylesheets[$email->tempid]);
			$email->body = $emogrifier->emogrify();

			if(!$addbody AND strpos($email->body, '<!DOCTYPE') !== false){
				$email->body = preg_replace('#<\!DOCTYPE.*<body([^>]*)>#Usi', '', $email->body);
				$email->body = preg_replace('#</body>.*$#si', '', $email->body);
			}
		}else{
			if(!empty($this->templates[$email->tempid])){
				$email->body = str_replace(array_keys($this->templates[$email->tempid]), $this->templates[$email->tempid], $email->body);
			}

			if(!empty($this->tags[$email->tempid])){
				$email->body = preg_replace(array_keys($this->tags[$email->tempid]), $this->tags[$email->tempid], $email->body);
			}
		}

		$newbody = preg_replace('#(<(div|tr|td|table)[^>]*)title="[^"]*"#Uis', '$1', $email->body);
		if(!empty($newbody)) $email->body = $newbody;

		$newbody = preg_replace('# id="zone_[0-9]+"#Uis', ' ', $email->body);
		if(!empty($newbody)) $email->body = $newbody;

		$newbody = preg_replace('# *(acyeditor_text|acyeditor_picture|acyeditor_delete|acyeditor_sortable|ui-sortable) *#is', '', $email->body);
		$newbody = preg_replace('#(class|title|style|id)=" *"#Ui', '', $newbody);
		if(!empty($newbody)) $email->body = $newbody;
	}

	public function acymailing_replaceusertags(&$email, &$user, $send = true){

		if(!$email->sendHTML) return;

		if((!acymailing_level(1) || acymailing_level(4)) && !empty($email->type) && in_array($email->type, array('news', 'followup'))){
			$pict = '<div style="text-align:center;margin:10px auto;display:block;"><a target="_blank" href="https://www.acyba.com/?utm_source=acymailing&utm_medium=e-mail&utm_content=img&utm_campaign=powered-by"><img alt="Powered by AcyMailing" src="media/com_acymailing/images/poweredby.png" /></a></div>';

			if(strpos($email->body, '</body>')){
				$email->body = str_replace('</body>', $pict.'</body>', $email->body);
			}else{
				$email->body .= $pict;
			}
		}

		$this->_applyTemplate($email, $send);

		$email->body = preg_replace('#< *(tr|td|table)([^>]*)(style="[^"]*)background-image *: *url\(\'?([^)\']*)\'?\);?#Ui', '<$1 background="$4" $2 $3', $email->body);
		$email->body = acymailing_absoluteURL($email->body);

		if(preg_match_all('#< *img([^>]*)>#Ui', $email->body, $allPictures)){

			foreach($allPictures[0] as $i => $onePict){
				if(strpos($onePict, 'align=') !== false) continue;
				if(!preg_match('#(style="[^"]*)(float *: *)(right|left|top|bottom|middle)#Ui', $onePict, $pictParams)) continue;

				$newPict = str_replace('<img', '<img align="'.$pictParams[3].'" ', $onePict);

				$email->body = str_replace($onePict, $newPict, $email->body);

				if(strpos($onePict, 'hspace=') !== false) continue;

				$hspace = 5;
				if(preg_match('#margin(-right|-left)? *:([^";]*)#i', $onePict, $margins)){
					$currentMargins = explode(' ', trim($margins[2]));
					$myMargin = (count($currentMargins) > 1) ? $currentMargins[1] : $currentMargins[0];
					if(strpos($myMargin, 'px') !== false) $hspace = preg_replace('#[^0-9]#i', '', $myMargin);
				}

				$lastPict = str_replace('<img', '<img hspace="'.$hspace.'" ', $newPict);

				$email->body = str_replace($newPict, $lastPict, $email->body);
			}
		}

		if(!preg_match('#(<thead|<tfoot|< *tbody *[^> ]+ *>)#Ui', $email->body)){
			$email->body = preg_replace('#< *\/? *tbody *>#Ui', '', $email->body);
		}

		$email->body = preg_replace_callback('/src="([^"]* [^"]*)"/Ui', array($this, '_convertSpaces'), $email->body);

		$this->fixPictureSize($email->body);

		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$acypluginsHelper->fixPictureDim($email->body);
	}//endfct

	public function acymailing_replacetags(&$email, $send = true){
		$this->linksSEF($email);
		$this->checkThumbnailYoutube($email);
	}

	public function linksSEF(&$email){
		$results = array();
		$altresults = array();
		$found = preg_match_all('#(?:{|%7B)acyfrontsef(?:}|%7D)(.*)(?:{|%7B)/acyfrontsef(?:}|%7D)#Uis', $email->body, $results);
		$found = preg_match_all('#(?:{|%7B)acyfrontsef(?:}|%7D)(.*)(?:{|%7B)/acyfrontsef(?:}|%7D)#Uis', $email->altbody, $altresults) || $found;

		if(!$found) return;

		$results[0] = array_merge($results[0], $altresults[0]);
		$results[1] = array_merge($results[1], $altresults[1]);

		$clearesults = array(0 => array(), 1 => array());
		foreach($results[0] as $i => $val){
			if(in_array($val, $clearesults[0])) continue;
			$clearesults[0][] = $val;
			$clearesults[1][] = $results[1][$i];
		}
		$results = $clearesults;

		$urls = '';
		$i = 0;
		$passedResults = array(0 => array(), 1 => array());
		foreach($results[1] as $key => $link){
			$urls .= '&urls['.$i.']='.base64_encode($link);
			$passedResults[0][] = $results[0][$key];
			$passedResults[1][] = $link;
			$i++;

			if($i > 40){
				$this->_callFrontURL($email, $urls, $passedResults);
				$passedResults = array(0 => array(), 1 => array());
				$urls = '';
				$i = 0;
			}
		}

		if(!empty($urls)) $this->_callFrontURL($email, $urls, $passedResults);
	}

	private function _callFrontURL(&$email, $urls, $results){
		$sefLinks = acymailing_fileGetContent(acymailing_rootURI().'index.php?option=com_acymailing&ctrl=url&task=sef'.$urls);
		$newLinks = json_decode($sefLinks, true);

		if($newLinks == null){
			if(!empty($sefLinks) && defined('JDEBUG') && JDEBUG) acymailing_enqueueMessage('Error trying to get the sef links: '.$sefLinks);

			$newLinks = array();
			foreach($results[1] as $link){
				$key = $link;
				$link = ltrim($link, '/');
				$mainurl = acymailing_mainURL($link);
				$newLinks[$key] = $mainurl.$link;
			}
		}
		$replacement = array();
		if(empty($newLinks)) return;

		foreach($results[1] as $key => $origin){
			$replacement[$results[0][$key]] = $newLinks[$results[1][$key]];
		}

		$email->body = str_replace(array_keys($replacement), $replacement, $email->body);
		$email->altbody = str_replace(array_keys($replacement), $replacement, $email->altbody);
	}

	public function _convertSpaces($matches){
		return "src='".str_replace(' ', '%20', $matches[1])."'";
	}

	private function fixPictureSize(&$body){
		if(!preg_match_all('#(<img)([^>]*>)#i', $body, $results)) return;

		$replace = array();
		$widthheight = array('width', 'height');
		foreach($results[0] as $num => $oneResult){
			$add = array();
			foreach($widthheight as $whword){
				if(preg_match('#'.$whword.' *=#i', $oneResult) || !preg_match('#[^a-z_\-]'.$whword.' *:([0-9 ]{1,8})px#i', $oneResult, $resultWH)) continue;

				if(empty($resultWH[1])) continue;
				$add[] = $whword.'="'.trim($resultWH[1]).'" ';
			}
			if(!empty($add)) $replace[$oneResult] = '<img '.implode(' ', $add).$results[2][$num];
		}

		if(empty($replace)) return;

		$body = str_replace(array_keys($replace), $replace, $body);
	}

	function checkThumbnailYoutube(&$mail){
		$acypluginsHelper = acymailing_get('helper.acyplugins');
		$mail->body = $acypluginsHelper->replaceVideos($mail->body);
	}
}//endclass
extensions/plg_acymailing_tagcontent/index.html000060400000000054152455705230016150 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_tagcontent/tagcontent.xml000060400000020355152455705230017051 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag : content insertion</name>
	<creationDate>September 2009</creationDate>
	<version>3.7.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This AcyMailing plugin enables you to include Joomla Articles in any e-mail sent by AcyMailing</description>
	<files>
		<filename plugin="tagcontent">tagcontent.php</filename>
		<filename>tagcontent.xml</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagcontent"/>
		<param name="customtemplate" type="customtemplate" label="Custom template" description="Click on the Custom template button to create a custom layout that will override the default view" default="tagcontent"/>
		<param name="displayart" type="radio" default="all" label="Display articles" description="Select if you want to display all articles in the popup for article selection or only published articles">
			<option value="all">All articles</option>
			<option value="onlypub">Only published articles</option>
		</param>
		<param name="contentaccess" type="radio" default="registered" label="Content Access" description="If you use the automatic article insertion (via the categories tab), AcyMailing will only include articles having the selected access in your Newsletter">
			<option value="public">Public only</option>
			<option value="registered">Public and Registered</option>
			<option value="all">All</option>
		</param>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="Using AcyMailing Enterprise, you can restrict the access to this tag system">
			<option value="all">Display all articles</option>
			<option value="author">Display only author's articles</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
		<param name="metaselect" type="radio" default="0" label="Select articles by meta tags" description="Do you want to display an interface on the content category insertion to filter articles by meta tags? Meta tags must be separated by a comma.">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="integration" type="radio" default="0" label="Act for another component" description="Some Joomla components use the content table to store their articles. This option enables you to make sure Acy will act for this third part component and not for the default Joomla content system" >
			<option value="0">Joomla content</option>
			<option value="jreviews">jReviews</option>
			<option value="flexicontent">FlexiContent</option>
			<option value="jaggyblog">JaggyBlog</option>
		</param>
		<param name="@spacer" type="spacer" default="" label="" description="" />
		<param name="default_type" type="radio" default="intro" label="DISPLAY" description="FIELD_DEFAULT">
			<option value="title">TITLE_ONLY</option>
			<option value="intro">INTRO_ONLY</option>
			<option value="text">FIELD_TEXT</option>
			<option value="full">FULL_TEXT</option>
		</param>
		<param name="wordwrap" type="text" size="10" default="0" label="Intro Word Wrapping" description="If you insert only the introduction and you didn't insert the read more link, AcyMailing will only load the first XX characters of your content. If you specify 0, AcyMailing won't wrap your content" />
		<param name="default_titlelink" type="radio" default="link" label="CLICKABLE_TITLE" description="FIELD_DEFAULT">
			<option value="link">JOOMEXT_YES</option>
			<option value="0">JOOMEXT_NO</option>
		</param>
		<param name="default_author" type="radio" default="0" label="AUTHOR_NAME" description="FIELD_DEFAULT">
			<option value="author">JOOMEXT_YES</option>
			<option value="0">JOOMEXT_NO</option>
		</param>
		<param name="default_pict" type="radio" default="1" label="DISPLAY_PICTURES" description="FIELD_DEFAULT">
			<option value="1">JOOMEXT_YES</option>
			<option value="resized">RESIZED</option>
			<option value="0">JOOMEXT_NO</option>
		</param>
		<param name="maxwidth" type="text" size="10" default="150" label="Max picture width" description="FIELD_DEFAULT" />
		<param name="maxheight" type="text" size="10" default="150" label="Max picture height" description="FIELD_DEFAULT" />

	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagcontent"/>
				<field name="customtemplate" type="customtemplate" label="Custom template" description="Click on the Custom template button to create a custom layout that will override the default view" default="tagcontent"/>
				<field name="displayart" type="radio" default="all" label="Display articles" description="Select if you want to display all articles in the popup for article selection or only published articles">
					<option value="all">All articles</option>
					<option value="onlypub">Only published articles</option>
				</field>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="Using AcyMailing Enterprise, you can restrict the access to this tag system">
					<option value="all">Display all articles</option>
					<option value="author">Display only author's articles</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
				<field name="metaselect" type="radio" default="0" label="Select articles by meta tags" description="Do you want to display an interface on the content category insertion to filter articles by meta tags? Meta tags must be separated by a comma.">
					<option value="0">No</option>
					<option value="1">Yes</option>
				</field>
				<field name="integration" type="radio" default="0" label="Act for another component" description="Some Joomla components use the content table to store their articles. This option enables you to make sure Acy will act for this third part component and not for the default Joomla content system" >
					<option value="0">Joomla content</option>
					<option value="jreviews">jReviews</option>
					<option value="flexicontent">FlexiContent</option>
					<option value="jaggyblog">JaggyBlog</option>
				</field>
				<field name="@spacer" type="spacer" default="" label="" description="" />
				<field name="default_type" type="radio" default="intro" label="DISPLAY" description="FIELD_DEFAULT">
					<option value="title">TITLE_ONLY</option>
					<option value="intro">INTRO_ONLY</option>
					<option value="text">FIELD_TEXT</option>
					<option value="full">FULL_TEXT</option>
				</field>
				<field name="wordwrap" type="text" size="10" default="0" label="Intro Word Wrapping" description="If you insert only the introduction and you didn't insert the read more link, AcyMailing will only load the first XX characters of your content. If you specify 0, AcyMailing won't wrap your content" />
				<field name="default_titlelink" type="radio" default="link" label="CLICKABLE_TITLE" description="FIELD_DEFAULT">
					<option value="link">JOOMEXT_YES</option>
					<option value="0">JOOMEXT_NO</option>
				</field>
				<field name="default_author" type="radio" default="" label="AUTHOR_NAME" description="FIELD_DEFAULT">
					<option value="author">JOOMEXT_YES</option>
					<option value="">JOOMEXT_NO</option>
				</field>
				<field name="default_pict" type="radio" default="1" label="DISPLAY_PICTURES" description="FIELD_DEFAULT">
					<option value="1">JOOMEXT_YES</option>
					<option value="resized">RESIZED</option>
					<option value="0">JOOMEXT_NO</option>
				</field>
				<field name="maxwidth" type="text" size="10" default="150" label="Max picture width" description="FIELD_DEFAULT" />
				<field name="maxheight" type="text" size="10" default="150" label="Max picture height" description="FIELD_DEFAULT" />
			</fieldset>
		</fields>
	</config>
</install>

extensions/plg_acymailing_tagcontent/tagcontent.php000060400000211076152455705230017042 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php defined('_JEXEC') or die('Restricted access'); ?>
<?php

class plgAcymailingTagcontent extends JPlugin{
	public function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'tagcontent');
			$this->params = new acyParameter($plugin->params);
		}
		$this->acypluginsHelper = acymailing_get('helper.acyplugins');
		$tables = acymailing_getTableList();
		$this->newMulticats = in_array(acymailing_getPrefix().'content_multicats', $tables);
	}

	public function acymailing_getPluginType(){
		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;

		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('JOOMLA_CONTENT');
		$onePlugin->function = 'acymailingtagcontent_show';
		$onePlugin->help = 'plugin-tagcontent';

		return $onePlugin;
	}

	public function acymailingtagcontent_show(){

		$pageInfo = new stdClass();
		$pageInfo->filter = new stdClass();
		$pageInfo->filter->order = new stdClass();
		$pageInfo->limit = new stdClass();
		$pageInfo->elements = new stdClass();
		
		acymailing_loadLanguageFile('com_content', JPATH_SITE);

		$paramBase = ACYMAILING_COMPONENT.'.tagcontent';
		$pageInfo->filter->order->value = acymailing_getUserVar($paramBase.".filter_order", 'filter_order', 'a.id', 'cmd');
		$pageInfo->filter->order->dir = acymailing_getUserVar($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word');
		if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc';
		$pageInfo->search = acymailing_getUserVar($paramBase.".search", 'search', '', 'string');
		$pageInfo->search = strtolower(trim($pageInfo->search));
		$pageInfo->filter_cat = acymailing_getUserVar($paramBase.".filter_cat", 'filter_cat', '', 'int');
		$pageInfo->contenttype = acymailing_getUserVar($paramBase.".contenttype", 'contenttype', $this->params->get('default_type', 'intro'), 'string');
		$pageInfo->author = acymailing_getUserVar($paramBase.".author", 'author', $this->params->get('default_author', '0'), 'string');
		$pageInfo->titlelink = acymailing_getUserVar($paramBase.".titlelink", 'titlelink', $this->params->get('default_titlelink', 'link'), 'string');
		$pageInfo->lang = acymailing_getUserVar($paramBase.".lang", 'lang', '', 'string');
		$pageInfo->pict = acymailing_getUserVar($paramBase.".pict", 'pict', $this->params->get('default_pict', 1), 'string');
		$pageInfo->pictheight = acymailing_getUserVar($paramBase.".pictheight", 'pictheight', $this->params->get('maxheight', 150), 'string');
		$pageInfo->pictwidth = acymailing_getUserVar($paramBase.".pictwidth", 'pictwidth', $this->params->get('maxwidth', 150), 'string');


		$pageInfo->limit->value = acymailing_getUserVar($paramBase.'.list_limit', 'limit', acymailing_getCMSConfig('list_limit'), 'int');
		$pageInfo->limit->start = acymailing_getUserVar($paramBase.'.limitstart', 'limitstart', 0, 'int');

		$picts = array();
		$picts[] = acymailing_selectOption("1", acymailing_translation('JOOMEXT_YES'));
		$pictureHelper = acymailing_get('helper.acypict');
		if($pictureHelper->available()) $picts[] = acymailing_selectOption("resized", acymailing_translation('RESIZED'));
		$picts[] = acymailing_selectOption("0", acymailing_translation('JOOMEXT_NO'));

		$contenttype = array();
		$contenttype[] = acymailing_selectOption("title", acymailing_translation('TITLE_ONLY'));
		$contenttype[] = acymailing_selectOption("intro", acymailing_translation('INTRO_ONLY'));
		$contenttype[] = acymailing_selectOption("text", acymailing_translation('FIELD_TEXT'));
		$contenttype[] = acymailing_selectOption("full", acymailing_translation('FULL_TEXT'));

		$titlelink = array();
		$titlelink[] = acymailing_selectOption("link", acymailing_translation('JOOMEXT_YES'));
		$titlelink[] = acymailing_selectOption("0", acymailing_translation('JOOMEXT_NO'));

		$authorname = array();
		$authorname[] = acymailing_selectOption("author", acymailing_translation('JOOMEXT_YES'));
		$authorname[] = acymailing_selectOption("0", acymailing_translation('JOOMEXT_NO'));

		$searchFields = array('a.id', 'a.title', 'a.alias', 'a.created_by', 'b.name', 'b.username');
		if(!empty($pageInfo->search)){
			$searchVal = '\'%'.acymailing_getEscaped($pageInfo->search, true).'%\'';
			$filters[] = implode(" LIKE $searchVal OR ", $searchFields)." LIKE $searchVal";
		}

		if(!empty($pageInfo->filter_cat)){
			$filters[] = "a.catid = ".$pageInfo->filter_cat;
		}

		if($this->params->get('displayart', 'all') == 'onlypub'){
			$filters[] = "a.state = 1";
		}else{
			$filters[] = "a.state != -2";
		}

		if(!acymailing_isAdmin()){
			$my = JFactory::getUser();

			if(!ACYMAILING_J16){
				$filters[] = 'a.`access` <= '.(int)$my->get('aid');
			}else{
				$groups = implode(',', $my->getAuthorisedViewLevels());
				$filters[] = 'a.`access` IN ('.$groups.')';
			}
		}

		if($this->params->get('frontendaccess') == 'author' && !acymailing_isAdmin()){
			$filters[] = "a.created_by = ".intval(acymailing_currentUserId());
		}

		$whereQuery = '';
		if(!empty($filters)){
			$whereQuery = ' WHERE ('.implode(') AND (', $filters).')';
		}

		$query = 'SELECT SQL_CALC_FOUND_ROWS a.*,b.name,b.username,a.created_by FROM '.acymailing_table('content', false).' as a';
		$query .= ' LEFT JOIN `#__users` AS b ON b.id = a.created_by';
		if(!empty($whereQuery)) $query .= $whereQuery;
		if(!empty($pageInfo->filter->order->value)){
			$query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir;
		}

		$rows = acymailing_loadObjectList($query, '', $pageInfo->limit->start, $pageInfo->limit->value);

		if(!empty($pageInfo->search)){
			$rows = acymailing_search($pageInfo->search, $rows);
		}

		$pageInfo->elements->total = acymailing_loadResult('SELECT FOUND_ROWS()');
		$pageInfo->elements->page = count($rows);

		if(!ACYMAILING_J16){
			$query = 'SELECT a.id, a.id as catid, a.title as category, b.title as section, b.id as secid from #__categories as a ';
			$query .= 'INNER JOIN #__sections as b on a.section = b.id ORDER BY b.ordering,a.ordering';

			$categories = acymailing_loadObjectList($query, 'id');
			$categoriesValues = array();
			$categoriesValues[] = acymailing_selectOption('', acymailing_translation('ACY_ALL'));
			$currentSec = '';
			foreach($categories as $catid => $oneCategorie){
				if($currentSec != $oneCategorie->section){
					if(!empty($currentSec)) $this->values[] = acymailing_selectOption('</OPTGROUP>');
					$categoriesValues[] = acymailing_selectOption('<OPTGROUP>', $oneCategorie->section);
					$currentSec = $oneCategorie->section;
				}
				$categoriesValues[] = acymailing_selectOption($catid, $oneCategorie->category);
			}
		}else{
			$query = "SELECT * from #__categories WHERE `extension` = 'com_content' ORDER BY lft ASC";

			$categories = acymailing_loadObjectList($query, 'id');
			$categoriesValues = array();
			$categoriesValues[] = acymailing_selectOption('', acymailing_translation('ACY_ALL'));
			foreach($categories as $catid => $oneCategorie){
				$categories[$catid]->title = str_repeat('- - ', $categories[$catid]->level).$categories[$catid]->title;
				$categoriesValues[] = acymailing_selectOption($catid, $categories[$catid]->title);
			}
		}

		$pagination = new acyPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value);

		$tabs = acymailing_get('helper.acytabs');
		echo $tabs->startPane('joomlacontent_tab');
		echo $tabs->startPanel(acymailing_translation('JOOMLA_CONTENT'), 'joomlacontent_content');

		?>
		<script language="javascript" type="text/javascript">
			<!--
			var selectedContents = new Array();
			function applyContent(contentid, rowClass){
				var tmp = selectedContents.indexOf(contentid)
				if(tmp != -1){
					window.document.getElementById('content' + contentid).className = rowClass;
					delete selectedContents[tmp];
				}else{
					window.document.getElementById('content' + contentid).className = 'selectedrow';
					selectedContents.push(contentid);
				}
				updateTag();
			}

			function updateTag(){
				var tag = '';
				var otherinfo = '';
				for(var i = 0; i < document.adminForm.contenttype.length; i++){
					if(document.adminForm.contenttype[i].checked){
						selectedtype = document.adminForm.contenttype[i].value;
						otherinfo += '| type:' + document.adminForm.contenttype[i].value;
					}
				}

				if(document.adminForm.customfields){
					if(document.adminForm.customfields.length == undefined){
						if(document.adminForm.customfields.checked) otherinfo += "| custom:" + document.adminForm.customfields.value;
					}else{
						tmp = 0;
						for(i = 0; i < document.adminForm.customfields.length; i++){
							if(!document.adminForm.customfields[i].checked) continue;
							if(tmp == 0){
								tmp += 1;
								otherinfo += "| custom:" + document.adminForm.customfields[i].value;
							}else{
								otherinfo += "," + document.adminForm.customfields[i].value;
							}
						}
					}
				}

				for(var i = 0; i < document.adminForm.titlelink.length; i++){
					if(document.adminForm.titlelink[i].checked && document.adminForm.titlelink[i].value.length > 1){
						otherinfo += '| ' + document.adminForm.titlelink[i].value;
					}
				}

				var already = 0;
				if(document.adminForm.socialshare){
					for(var i = 0; i < document.adminForm.socialshare.length; i++){
						if(document.adminForm.socialshare[i].checked){
							if(already == 0){
								otherinfo += '| share:' + document.adminForm.socialshare[i].value;
								already++;
							}else{
								otherinfo += ',' + document.adminForm.socialshare[i].value;
							}
						}
					}
				}

				if(selectedtype != 'title'){
					for(var i = 0; i < document.adminForm.author.length; i++){
						if(document.adminForm.author[i].checked && document.adminForm.author[i].value.length > 1){
							otherinfo += '| ' + document.adminForm.author[i].value;
						}
					}
					for(var i = 0; i < document.adminForm.pict.length; i++){
						if(document.adminForm.pict[i].checked){
							otherinfo += '| pict:' + document.adminForm.pict[i].value;
							if(document.adminForm.pict[i].value == 'resized'){
								document.getElementById('pictsize').style.display = '';
								if(document.adminForm.pictwidth.value) otherinfo += '| maxwidth:' + document.adminForm.pictwidth.value;
								if(document.adminForm.pictheight.value) otherinfo += '| maxheight:' + document.adminForm.pictheight.value;
							}else{
								document.getElementById('pictsize').style.display = 'none';
							}
						}
					}
					document.getElementById('format').style.display = '';
				}else{
					document.getElementById('format').style.display = 'none';
				}

				if(document.adminForm.contentformat && document.adminForm.contentformat.value){
					otherinfo += '| format:' + document.adminForm.contentformat.value;
				}

				if(window.document.getElementById('jflang') && window.document.getElementById('jflang').value != ''){
					otherinfo += '|lang:';
					otherinfo += window.document.getElementById('jflang').value;
				}

				for(var i in selectedContents){
					if(selectedContents[i] && !isNaN(i)){
						tag = tag + '{joomlacontent:' + selectedContents[i] + otherinfo + '}<br />';
					}
				}
				setTag(tag);
			}
			//-->
		</script>
		<div class="onelineblockoptions">
			<table width="100%" class="acymailing_table">
				<tr>
					<td>
						<?php echo acymailing_translation('DISPLAY'); ?>
					</td>
					<td colspan="2">
						<?php echo acymailing_radio($contenttype, 'contenttype', 'size="1" onclick="updateTag();"', 'value', 'text', $pageInfo->contenttype); ?>
					</td>
					<td>
						<?php $jflanguages = acymailing_get('type.jflanguages');
						$jflanguages->onclick = 'onchange="updateTag();"';
						echo $jflanguages->display('lang', $pageInfo->lang); ?>
					</td>
				</tr>
				<tr id="format" class="acyplugformat">
					<td valign="top">
						<?php echo acymailing_translation('FORMAT'); ?>
					</td>
					<td valign="top">
						<?php echo $this->acypluginsHelper->getFormatOption('tagcontent'); ?>
					</td>
					<td valign="top"><?php echo acymailing_translation('DISPLAY_PICTURES'); ?></td>
					<td valign="top"><?php echo acymailing_radio($picts, 'pict', 'size="1" onclick="updateTag();"', 'value', 'text', $pageInfo->pict); ?>
						<span id="pictsize" <?php if($pageInfo->pict != 'resized') echo 'style="display:none;"'; ?>><br/><?php echo acymailing_translation('CAPTCHA_WIDTH') ?>
							<input name="pictwidth" type="text" onchange="updateTag();" value="<?php echo $pageInfo->pictwidth; ?>" style="width:30px;"/>
							x <?php echo acymailing_translation('CAPTCHA_HEIGHT') ?>
							<input name="pictheight" type="text" onchange="updateTag();" value="<?php echo $pageInfo->pictheight; ?>" style="width:30px;"/>
						</span>
					</td>
				</tr>
				<tr>
					<td>
						<?php echo acymailing_translation('CLICKABLE_TITLE'); ?>
					</td>
					<td>
						<?php echo acymailing_radio($titlelink, 'titlelink', 'size="1" onclick="updateTag();"', 'value', 'text', $pageInfo->titlelink); ?>
					</td>
					<td>
						<?php echo acymailing_translation('AUTHOR_NAME'); ?>
					</td>
					<td>
						<?php echo acymailing_radio($authorname, 'author', 'size="1" onclick="updateTag();"', 'value', 'text', (string)$pageInfo->author); ?>
					</td>
				</tr>
				<tr>
					<td>
						<?php echo acymailing_translation('SHARE'); ?>
					</td>
				<?php
				$socialMedias = array('facebook' => 'Facebook',
									'linkedin' => 'LinkedIn',
									'twitter' => 'Twitter',
									'google' => 'Google+');

				$cpt = 1;
				foreach($socialMedias as $key => $oneSocial){
					if($cpt == 4){
						$cpt = 1;
						echo '</tr><tr><td/>';
					}
					echo '<td><input value="'.$key.'" name="socialshare" id="'.$key.'" type="checkbox" onclick="updateTag();" /> ';
					echo '<label for="'.$key.'">'.$oneSocial.'</label></td>';
					$cpt++;
				}
				while($cpt != 4){
					$cpt++;
					echo '<td/>';
				}
				?>
				</tr>
			</table>
<?php
		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		if(version_compare($jversion, '3.7.0', '>=')){
			$query = 'SELECT id, title, group_id FROM #__fields WHERE context = "com_content.article" AND state = 1 ORDER BY title ASC';
			$customFields = acymailing_loadObjectList($query);

			if(!empty($customFields)){
				$query = 'SELECT id, title FROM #__fields_groups WHERE context = "com_content.article" AND state = 1 ORDER BY title ASC';
				$groups = acymailing_loadObjectList($query);
				$defaultGroup = new stdClass();
				$defaultGroup->id = 0;
				$defaultGroup->title = acymailing_translation('ACY_NO_GROUP');
				array_unshift($groups, $defaultGroup);

				echo '<div class="onelineblockoptions">
						<span class="acyblocktitle">'.acymailing_translation('EXTRA_FIELDS').'</span>
						<table class="acymailing_table" cellpadding="1">';
				foreach($groups as $oneGroup){
					echo '<tr><td style="font-weight: bold;">'.$oneGroup->title.'</td>';
					$i = 1;
					foreach($customFields as $oneCF){
						if($oneCF->group_id != $oneGroup->id) continue;
						if($i == 4){
							$i = 1;
							echo '</tr><tr><td/>';
						}
						echo '<td><input value="'.$oneCF->id.'" name="customfields" id="cf_'.$oneCF->id.'" type="checkbox" onclick="updateTag();"/>';
						echo '<label style="margin-left:5px" for="cf_'.$oneCF->id.'">'.$oneCF->title.'</label></td>';
						$i++;
					}
					while($i != 4){
						$i++;
						echo '<td/>';
					}
					echo '</tr>';
				}
				echo '</table></div>';
			}
		}
?>
		</div>
		<div class="onelineblockoptions">
			<table class="acymailing_table_options">
				<tr>
					<td width="100%">
						<?php acymailing_listingsearch($pageInfo->search); ?>
					</td>
					<td nowrap="nowrap">
						<?php echo acymailing_select($categoriesValues, 'filter_cat', 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', (int)$pageInfo->filter_cat); ?>
					</td>
				</tr>
			</table>

			<table class="acymailing_table" cellpadding="1" width="100%">
				<thead>
				<tr>
					<th class="title">
					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('FIELD_TITLE'), 'a.title', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?>
					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_AUTHOR'), 'b.name', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?>
					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation(ACYMAILING_J16 ? 'COM_CONTENT_PUBLISHED_DATE' : 'START PUBLISHING'), 'a.publish_up', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?>
					</th>
					<th class="title">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_CREATED'), 'a.created', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?>
					</th>
					<th class="title titleid">
						<?php echo acymailing_gridSort(acymailing_translation('ACY_ID'), 'a.id', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?>
					</th>
				</tr>
				</thead>
				<tfoot>
				<tr>
					<td colspan="6">
						<?php echo $pagination->getListFooter(); ?>
						<?php echo $pagination->getResultsCounter(); ?>
					</td>
				</tr>
				</tfoot>
				<tbody>
				<?php
				$k = 0;
				for($i = 0, $a = count($rows); $i < $a; $i++){
					$row =& $rows[$i];
					?>
					<tr id="content<?php echo $row->id ?>" class="<?php echo "row$k"; ?>" onclick="applyContent(<?php echo $row->id.",'row$k'" ?>);" style="cursor:pointer;">
						<td class="acytdcheckbox"></td>
						<td>
							<?php
							$text = '<b>'.acymailing_translation('JOOMEXT_ALIAS').': </b>'.$row->alias;
							echo acymailing_tooltip($text, $row->title, '', $row->title);
							?>
						</td>
						<td>
							<?php
							if(!empty($row->name)){
								$text = '<b>'.acymailing_translation('JOOMEXT_NAME').' : </b>'.$row->name;
								$text .= '<br /><b>'.acymailing_translation('ACY_USERNAME').' : </b>'.$row->username;
								$text .= '<br /><b>'.acymailing_translation('ACY_ID').' : </b>'.$row->created_by;
								echo acymailing_tooltip($text, $row->name, '', $row->name);
							}
							?>
						</td>
						<td align="center">
							<?php echo acymailing_date(strip_tags($row->publish_up), acymailing_translation('DATE_FORMAT_LC4')); ?>
						</td>
						<td align="center">
							<?php echo acymailing_date(strip_tags($row->created), acymailing_translation('DATE_FORMAT_LC4')); ?>
						</td>
						<td align="center">
							<?php echo $row->id; ?>
						</td>
					</tr>
					<?php
					$k = 1 - $k;
				}
				?>
				</tbody>
			</table>
		</div>
		<input type="hidden" name="boxchecked" value="0"/>
		<input type="hidden" name="filter_order" value="<?php echo $pageInfo->filter->order->value; ?>"/>
		<input type="hidden" name="filter_order_Dir" value="<?php echo $pageInfo->filter->order->dir; ?>"/>
		<?php
		echo $tabs->endPanel();
		echo $tabs->startPanel(acymailing_translation('TAG_CATEGORIES'), 'joomlacontent_auto');

		$type = acymailing_getVar('string', 'type');

		?>
		<script language="javascript" type="text/javascript">
			<!--
			window.onload = function(){
				if(window.document.getElementById('tagsauto')){
					window.document.getElementById('tagsauto').onchange = updateAutoTag;
				}
			}
			var selectedCategories = new Array();
			<?php if(!ACYMAILING_J16){ ?>
			function applyAutoContent(secid, catid, rowClass){
				if(selectedCategories[secid] && selectedCategories[secid][catid]){
					window.document.getElementById('content_sec' + secid + '_cat' + catid).className = rowClass;
					delete selectedCategories[secid][catid];
				}else{
					if(!selectedCategories[secid]) selectedCategories[secid] = new Array();
					if(secid == 0){
						for(var isec in selectedCategories){
							for(var icat in selectedCategories[isec]){
								if(selectedCategories[isec][icat] == 'content'){
									window.document.getElementById('content_sec' + isec + '_cat' + icat).className = 'row0';
									delete selectedCategories[isec][icat];
								}
							}
						}
					}else{
						if(selectedCategories[0] && selectedCategories[0][0]){
							window.document.getElementById('content_sec0_cat0').className = 'row0';
							delete selectedCategories[0][0];
						}

						if(catid == 0){
							for(var icat in selectedCategories[secid]){
								if(selectedCategories[secid][icat] == 'content'){
									window.document.getElementById('content_sec' + secid + '_cat' + icat).className = 'row0';
									delete selectedCategories[secid][icat];
								}
							}
						}else{
							if(selectedCategories[secid][0]){
								window.document.getElementById('content_sec' + secid + '_cat0').className = 'row0';
								delete selectedCategories[secid][0];
							}
						}
					}

					window.document.getElementById('content_sec' + secid + '_cat' + catid).className = 'selectedrow';
					selectedCategories[secid][catid] = 'content';
				}

				updateAutoTag();
			}
			<?php }else{ ?>
			function applyAutoContent(catid, rowClass){
				if(selectedCategories[catid]){
					window.document.getElementById('content_cat' + catid).className = rowClass;
					delete selectedCategories[catid];
				}else{
					window.document.getElementById('content_cat' + catid).className = 'selectedrow';
					selectedCategories[catid] = 'content';
				}

				updateAutoTag();
			}
			<?php } ?>

			function updateAutoTag(){
				tag = '{autocontent:';
				<?php if(!ACYMAILING_J16){ ?>
				for(var isec in selectedCategories){
					for(var icat in selectedCategories[isec]){
						if(selectedCategories[isec][icat] == 'content'){
							if(icat != 0){
								tag += 'cat' + icat + '-';
							}else{
								tag += 'sec' + isec + '-';
							}
						}
					}
				}
				<?php }else{ ?>
				for(var icat in selectedCategories){
					if(selectedCategories[icat] == 'content'){
						tag += icat + '-';
					}
				}
				<?php } ?>

				var already = 0;
				if(document.adminForm.autosocialshare){
					for(var i = 0; i < document.adminForm.autosocialshare.length; i++){
						if(document.adminForm.autosocialshare[i].checked){
							if(already == 0){
								tag += '| share:' + document.adminForm.autosocialshare[i].value;
								already++;
							}else{
								tag += ',' + document.adminForm.autosocialshare[i].value;
							}
						}
					}
				}

				if(document.adminForm.min_article && document.adminForm.min_article.value && document.adminForm.min_article.value != 0){
					tag += '| min:' + document.adminForm.min_article.value;
				}
				if(document.adminForm.max_article.value && document.adminForm.max_article.value != 0){
					tag += '| max:' + document.adminForm.max_article.value;
				}
				if(document.adminForm.contentorder.value){
					tag += "| order:" + document.adminForm.contentorder.value + "," + document.adminForm.contentorderdir.value;
				}
				if(document.adminForm.contentfilter && document.adminForm.contentfilter.value){
					tag += document.adminForm.contentfilter.value;
				}
				if(document.adminForm.meta_article && document.adminForm.meta_article.value){
					tag += '| meta:' + document.adminForm.meta_article.value;
				}

				for(var i = 0; i < document.adminForm.contenttypeauto.length; i++){
					if(document.adminForm.contenttypeauto[i].checked){
						selectedtype = document.adminForm.contenttypeauto[i].value;
						tag += '| type:' + document.adminForm.contenttypeauto[i].value;
					}
				}

				if(document.adminForm.customfieldsauto){
					if(document.adminForm.customfieldsauto.length == undefined){
						if(document.adminForm.customfieldsauto.checked) tag += "| custom:" + document.adminForm.customfieldsauto.value;
					}else{
						tmp = 0;
						for(i = 0; i < document.adminForm.customfieldsauto.length; i++){
							if(!document.adminForm.customfieldsauto[i].checked) continue;
							if(tmp == 0){
								tmp += 1;
								tag += "| custom:" + document.adminForm.customfieldsauto[i].value;
							}else{
								tag += "," + document.adminForm.customfieldsauto[i].value;
							}
						}
					}
				}

				for(var i = 0; i < document.adminForm.titlelinkauto.length; i++){
					if(document.adminForm.titlelinkauto[i].checked && document.adminForm.titlelinkauto[i].value.length > 1){
						tag += '|' + document.adminForm.titlelinkauto[i].value;
					}
				}
				if(selectedtype != 'title'){
					for(var i = 0; i < document.adminForm.authorauto.length; i++){
						if(document.adminForm.authorauto[i].checked && document.adminForm.authorauto[i].value.length > 1){
							tag += '|' + document.adminForm.authorauto[i].value;
						}
					}
					for(var i = 0; i < document.adminForm.pictauto.length; i++){
						if(document.adminForm.pictauto[i].checked){
							tag += '| pict:' + document.adminForm.pictauto[i].value;
							if(document.adminForm.pictauto[i].value == 'resized'){
								document.getElementById('pictsizeauto').style.display = '';
								if(document.adminForm.pictwidthauto.value) tag += '| maxwidth:' + document.adminForm.pictwidthauto.value;
								if(document.adminForm.pictheightauto.value) tag += '| maxheight:' + document.adminForm.pictheightauto.value;
							}else{
								document.getElementById('pictsizeauto').style.display = 'none';
							}
						}
					}
					document.getElementById('formatauto').style.display = '';
				}else{
					document.getElementById('formatauto').style.display = 'none';
				}

				if(document.getElementById('contentformatautoinvert').value == 1) tag += '| invert';
				if(document.adminForm.contentformatauto && document.adminForm.contentformatauto.value){
					tag += '| format:' + document.adminForm.contentformatauto.value;
				}

				if(document.adminForm.cols && document.adminForm.cols.value > 1){
					tag += '| cols:' + document.adminForm.cols.value;
				}
				if(window.document.getElementById('jflangauto') && window.document.getElementById('jflangauto').value != ''){
					tag += '| lang:' + window.document.getElementById('jflangauto').value;
				}
				if(window.document.getElementById('jlang') && window.document.getElementById('jlang').value != ''){
					tag += '| language:' + window.document.getElementById('jlang').value;
				}

				if(window.document.getElementById('tagsauto')){
					var tmp = 0;
					for(var i = 0; i < window.document.getElementById('tagsauto').length; i++){
						if(window.document.getElementById('tagsauto')[i].selected){
							if(tmp == 0){
								tag += '| tags:' + window.document.getElementById('tagsauto')[i].value;
								tmp = 1;
							}else{
								tag += ',' + window.document.getElementById('tagsauto')[i].value;
							}
						}
					}
				}

				tag += '}';

				setTag(tag);
			}
			//-->
		</script>
		<div class="onelineblockoptions">
			<table width="100%" class="acymailing_table">
				<tr>
					<td>
						<?php echo acymailing_translation('DISPLAY'); ?>
					</td>
					<td colspan="2">
						<?php echo acymailing_radio($contenttype, 'contenttypeauto', 'size="1" onclick="updateAutoTag();"', 'value', 'text', $this->params->get('default_type', 'intro')); ?>
					</td>
					<td id="languagesauto">
						<?php $jflanguages = acymailing_get('type.jflanguages');
						$jflanguages->onclick = 'onchange="updateAutoTag();"';
						$jflanguages->id = 'jflangauto';
						echo $jflanguages->display('langauto');
						if(empty($jflanguages->found)){
							echo $jflanguages->displayJLanguages('jlangauto');
						}
						?>
					</td>
				</tr>
				<tr id="formatauto" class="acyplugformat">
					<td valign="top">
						<?php echo acymailing_translation('FORMAT'); ?>
					</td>
					<td valign="top">
						<?php echo $this->acypluginsHelper->getFormatOption('tagcontent', 'TOP_LEFT', false, 'updateAutoTag'); ?>
					</td>
					<td valign="top"><?php echo acymailing_translation('DISPLAY_PICTURES'); ?></td>
					<td valign="top"><?php echo acymailing_radio($picts, 'pictauto', 'size="1" onclick="updateAutoTag();"', 'value', 'text', $this->params->get('default_pict', '1')); ?>
						<span id="pictsizeauto" <?php if($this->params->get('default_pict', '1') != 'resized') echo 'style="display:none;"'; ?> ><br/><?php echo acymailing_translation('CAPTCHA_WIDTH') ?>
							<input name="pictwidthauto" type="text" onchange="updateAutoTag();" value="<?php echo $this->params->get('maxwidth', '150'); ?>" style="width:30px;"/>
							x <?php echo acymailing_translation('CAPTCHA_HEIGHT') ?>
							<input name="pictheightauto" type="text" onchange="updateAutoTag();" value="<?php echo $this->params->get('maxheight', '150'); ?>" style="width:30px;"/>
						</span>
					</td>
				</tr>
				<tr>
					<td>
						<?php echo acymailing_translation('CLICKABLE_TITLE'); ?>
					</td>
					<td>
						<?php echo acymailing_radio($titlelink, 'titlelinkauto', 'size="1" onclick="updateAutoTag();"', 'value', 'text', $this->params->get('default_titlelink', 'link')); ?>
					</td>
					<td>
						<?php echo acymailing_translation('AUTHOR_NAME'); ?>
					</td>
					<td>
						<?php echo acymailing_radio($authorname, 'authorauto', 'size="1" onclick="updateAutoTag();"', 'value', 'text', (string)$this->params->get('default_author', '0')); ?>
					</td>
				</tr>
				<tr>
					<?php if(version_compare(JVERSION, '3.1.0', '>=')){ ?>
						<td valign="top">
							<?php echo acymailing_translation('TAGS'); ?>
						</td>
						<td>
							<?php
							$form = JForm::getInstance('acytagcontenttags', JPATH_SITE.DS.'components'.DS.'com_acymailing'.DS.'params'.DS.'tagcontenttags.xml');
							foreach($form->getFieldset('tagcontenttagfield') as $field){
								echo $field->input;
							}
							?>
						</td>
					<?php }else{ ?>
						<td colspan="2"></td>
					<?php } ?>
					<td valign="top"><?php echo acymailing_translation('FIELD_COLUMNS'); ?></td>
					<td valign="top">
						<select name="cols" style="width:150px" onchange="updateAutoTag();" size="1">
							<?php for($o = 1; $o < 11; $o++) echo '<option value="'.$o.'">'.$o.'</option>'; ?>
						</select>
					</td>
				</tr>
				<tr>
					<td>
						<?php echo acymailing_translation('MAX_ARTICLE'); ?>
					</td>
					<td>
						<input type="text" name="max_article" style="width:50px" value="20" onchange="updateAutoTag();"/>
					</td>
					<td>
						<?php echo acymailing_translation('ACY_ORDER'); ?>
					</td>
					<td>
						<?php
						$values = array('id' => 'ACY_ID', 'ordering' => 'ACY_ORDERING', 'created' => 'CREATED_DATE', 'modified' => 'MODIFIED_DATE', 'title' => 'FIELD_TITLE', 'hits' => 'ACY_HITS');
						if(ACYMAILING_J16) $values['publish_up'] = 'COM_CONTENT_PUBLISHED_DATE';
						echo $this->acypluginsHelper->getOrderingField($values, 'id', 'DESC', 'updateAutoTag');
						?>
					</td>
				</tr>
				<?php if($this->params->get('metaselect')){ ?>
					<tr>
						<td>
							<?php echo acymailing_translation('META_KEYWORDS'); ?>
						</td>
						<td colspan="3">
							<input type="text" name="meta_article" style="width:200px" value="" onchange="updateAutoTag();"/>
						</td>
					</tr>
				<?php } ?>
				<?php if($type == 'autonews'){ ?>
					<tr>
						<td>
							<?php echo acymailing_translation('MIN_ARTICLE'); ?>
						</td>
						<td>
							<input type="text" name="min_article" style="width:50px" value="1" onchange="updateAutoTag();"/>
						</td>
						<td>
							<?php echo acymailing_translation('JOOMEXT_FILTER'); ?>
						</td>
						<td>
							<?php $filter = acymailing_get('type.contentfilter');
							$filter->onclick = "updateAutoTag();";
							echo $filter->display('contentfilter', '|filter:created'); ?>
						</td>
					</tr>
				<?php } ?>
				<tr>
					<td>
						<?php echo acymailing_translation('SHARE'); ?>
					</td>
					<?php
					$cpt = 1;
					foreach($socialMedias as $key => $oneSocial){
						if($cpt == 4){
							$cpt = 1;
							echo '</tr><tr><td/>';
						}
						echo '<td><input value="'.$key.'" name="autosocialshare" id="auto'.$key.'" type="checkbox" onclick="updateAutoTag();" /> ';
						echo '<label for="auto'.$key.'">'.$oneSocial.'</label></td>';
						$cpt++;
					}
					while($cpt != 4){
						$cpt++;
						echo '<td/>';
					}
					?>
				</tr>
			</table>
<?php
		if(version_compare($jversion, '3.7.0', '>=') && !empty($customFields)){
			echo '<div class="onelineblockoptions">
					<span class="acyblocktitle">'.acymailing_translation('EXTRA_FIELDS').'</span>
					<table class="acymailing_table" cellpadding="1">';
			foreach($groups as $oneGroup){
				echo '<tr><td style="font-weight: bold;">'.$oneGroup->title.'</td>';
				$i = 1;
				foreach($customFields as $oneCF){
					if($oneCF->group_id != $oneGroup->id) continue;
					if($i == 4){
						$i = 1;
						echo '</tr><tr><td/>';
					}
					echo '<td><input value="'.$oneCF->id.'" name="customfieldsauto" id="autocf_'.$oneCF->id.'" type="checkbox" onclick="updateAutoTag();"/>';
					echo '<label style="margin-left:5px" for="autocf_'.$oneCF->id.'">'.$oneCF->title.'</label></td>';
					$i++;
				}
				while($i != 4){
					$i++;
					echo '<td/>';
				}
				echo '</tr>';
			}
			echo '</table></div>';
		}
?>
		</div>

		<div class="onelineblockoptions">
			<table class="acymailing_table" cellpadding="1" width="100%">
				<thead>
				<tr>
					<th class="title"></th>
					<?php if(!ACYMAILING_J16){ ?>
						<th class="title">
							<?php echo acymailing_translation('SECTION'); ?>
						</th>
					<?php } ?>
					<th class="title">
						<?php echo acymailing_translation('TAG_CATEGORIES'); ?>
					</th>
				</tr>
				</thead>
				<tbody>
				<?php
				$k = 0;
				if(!ACYMAILING_J16){
					?>
					<tr id="content_sec0_cat0" class="<?php echo "row$k"; ?>" onclick="applyAutoContent(0,0,'<?php echo "row$k" ?>');" style="cursor:pointer;">
						<td class="acytdcheckbox"></td>
						<td style="font-weight: bold;">
							<?php
							echo acymailing_translation('ACY_ALL');
							?>
						</td>
						<td style="text-align:center;font-weight: bold;">
							<?php
							echo acymailing_translation('ACY_ALL');
							?>
						</td>
					</tr>

					<?php
				}

				$k = 1 - $k;
				$currentSection = '';
				foreach($categories as $row){

					if(!ACYMAILING_J16 && $currentSection != $row->section){
						?>
						<tr id="content_sec<?php echo $row->secid ?>_cat0" class="<?php echo "row$k"; ?>" onclick="applyAutoContent(<?php echo $row->secid ?>,0,'<?php echo "row$k" ?>');" style="cursor:pointer;">
							<td class="acytdcheckbox"></td>
							<td style="font-weight: bold;">
								<?php
								echo $row->section;
								?>
							</td>
							<td style="text-align:center;font-weight: bold;">
								<?php
								echo acymailing_translation('ACY_ALL');
								?>
							</td>
						</tr>
						<?php
						$k = 1 - $k;
						$currentSection = $row->section;
					}
					if(!ACYMAILING_J16){
						?>
						<tr id="content_sec<?php echo $row->secid ?>_cat<?php echo $row->catid ?>" class="<?php echo "row$k"; ?>" onclick="applyAutoContent(<?php echo $row->secid ?>,<?php echo $row->catid ?>,'<?php echo "row$k" ?>');" style="cursor:pointer;">
							<td class="acytdcheckbox"></td>
							<td>
							</td>
							<td>
								<?php
								echo $row->category;
								?>
							</td>
						</tr>
						<?php
					}else{ ?>
						<tr id="content_cat<?php echo $row->id ?>" class="<?php echo "row$k"; ?>" onclick="applyAutoContent(<?php echo $row->id ?>,'<?php echo "row$k" ?>');" style="cursor:pointer;">
							<td class="acytdcheckbox"></td>
							<td>
								<?php
								echo $row->title;
								?>
							</td>
						</tr>
					<?php }
					$k = 1 - $k;
				}
				?>
				</tbody>
			</table>
		</div>
		<?php

		echo $tabs->endPanel();
		echo $tabs->endPane();
	}

	public function acymailing_replacetags(&$email, $send = true){
		$this->_replaceAuto($email);
		$this->_replaceArticles($email);
	}

	private function _replaceArticles(&$email){
		$tags = $this->acypluginsHelper->extractTags($email, 'joomlacontent');
		if(empty($tags)) return;

		$this->newslanguage = new stdClass();
		if(!empty($email->language)){
			$this->newslanguage = acymailing_loadObject('SELECT lang_id, lang_code FROM #__languages WHERE sef = '.acymailing_escapeDB($email->language).' LIMIT 1');
		}

		$this->currentcatid = -1;
		$this->readmore = empty($email->template->readmore) ? acymailing_translation('JOOMEXT_READ_MORE') : '<img class="readmorepict" src="'.ACYMAILING_LIVE.$email->template->readmore.'" alt="'.acymailing_translation('JOOMEXT_READ_MORE', true).'" />';

		require_once JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php';

		if($this->params->get('integration') == 'flexicontent' && file_exists(JPATH_SITE.DS.'components'.DS.'com_flexicontent'.DS.'helpers'.DS.'route.php')){
			require_once JPATH_SITE.DS.'components'.DS.'com_flexicontent'.DS.'helpers'.DS.'route.php';
		}

		$tagsReplaced = array();
		foreach($tags as $i => $oneTag){
			if(isset($tagsReplaced[$i])) continue;
			$tagsReplaced[$i] = $this->_replaceContent($oneTag);
		}

		$this->acypluginsHelper->replaceTags($email, $tagsReplaced, true);
	}

	private function _replaceContent(&$tag){
		$oldFormat = empty($tag->format);

		if($tag->id == 'current'){
			$article_id = acymailing_getVar('int', 'articleId');
			if(empty($article_id)) return;
			$tag->id = $article_id;
		}
		if(!ACYMAILING_J16){
			$query = 'SELECT a.*,b.name as authorname, c.alias as catalias, c.title as cattitle, c.image AS catpict, s.alias as secalias, s.title as sectitle FROM '.acymailing_table('content', false).' as a ';
			$query .= 'LEFT JOIN '.acymailing_table('users', false).' as b ON a.created_by = b.id ';
			$query .= ' LEFT JOIN '.acymailing_table('categories', false).' AS c ON c.id = a.catid ';
			$query .= ' LEFT JOIN '.acymailing_table('sections', false).' AS s ON s.id = a.sectionid ';
			$query .= 'WHERE a.id = '.$tag->id.' LIMIT 1';
		}else{
			$query = 'SELECT a.*,b.name as authorname, c.alias as catalias, c.title as cattitle, c.params AS catparams FROM '.acymailing_table('content', false).' as a ';
			$query .= 'LEFT JOIN '.acymailing_table('users', false).' as b ON a.created_by = b.id ';
			$query .= ' LEFT JOIN '.acymailing_table('categories', false).' AS c ON c.id = a.catid ';
			$query .= 'WHERE a.id = '.$tag->id.' LIMIT 1';
		}

		$article = acymailing_loadObject($query);

		if(empty($article)){
			if(acymailing_isAdmin()) acymailing_enqueueMessage('The article "'.$tag->id.'" could not be loaded', 'notice');
			return '';
		}

		if(empty($tag->lang) && !empty($this->newslanguage) && !empty($this->newslanguage->lang_code)) $tag->lang = $this->newslanguage->lang_code.','.$this->newslanguage->lang_id;

		$this->acypluginsHelper->translateItem($article, $tag, 'content');

		$varFields = array();
		foreach($article as $fieldName => $oneField){
			$varFields['{'.$fieldName.'}'] = $oneField;
		}

		$this->acypluginsHelper->cleanHtml($article->introtext);
		$this->acypluginsHelper->cleanHtml($article->fulltext);


		if($this->params->get('integration') == 'jreviews' && !empty($article->images)){
			$firstpict = explode('|', trim(reset(explode("\n", $article->images))).'|||||||');
			if(!empty($firstpict[0])){
				$picturePath = file_exists(ACYMAILING_ROOT.'images'.DS.'stories'.DS.str_replace('/', DS, $firstpict[0])) ? ACYMAILING_LIVE.'images/stories/'.$firstpict[0] : ACYMAILING_LIVE.'images/'.$firstpict[0];
				$myPict = '<img src="'.$picturePath.'" alt="" hspace="5" style="margin:5px" align="left" border="'.intval($firstpict[5]).'" />';
				$article->introtext = $myPict.$article->introtext;
			}
		}
		$completeId = $article->id;
		$completeCat = $article->catid;

		if(!empty($article->alias)) $completeId .= ':'.$article->alias;
		if(!empty($article->catalias)) $completeCat .= ':'.$article->catalias;

		if(empty($tag->itemid)){
			if(!ACYMAILING_J16){
				$completeSec = $article->sectionid;
				if(!empty($article->secalias)) $completeSec .= ':'.$article->secalias;
				if($this->params->get('integration') == 'flexicontent' && class_exists('FlexicontentHelperRoute')){
					$link = FlexicontentHelperRoute::getItemRoute($completeId, $completeCat, $completeSec);
				}else{
					$link = ContentHelperRoute::getArticleRoute($completeId, $completeCat, $completeSec);
				}
			}else{
				if($this->params->get('integration') == 'flexicontent' && class_exists('FlexicontentHelperRoute')){
					$link = FlexicontentHelperRoute::getItemRoute($completeId, $completeCat);
				}else{
					$link = ContentHelperRoute::getArticleRoute($completeId, $completeCat);
				}
			}
		}else{
			$link = 'index.php?option=com_content&view=article&id='.$completeId.'&catid='.$completeCat;
		}


		if($this->params->get('integration') == 'flexicontent' && !class_exists('FlexicontentHelperRoute')){
			$link = 'index.php?option=com_flexicontent&view=items&id='.$completeId;
		}elseif($this->params->get('integration') == 'jaggyblog'){
			$link = 'index.php?option=com_jaggyblog&task=viewpost&id='.$completeId;
		}

		if(!empty($tag->itemid)) $link .= '&Itemid='.$tag->itemid;
		if(!empty($tag->lang)) $link .= (strpos($link, '?') ? '&' : '?').'lang='.substr($tag->lang, 0, strpos($tag->lang, ACYMAILING_J16 ? '-' : ','));
		if(!empty($tag->autologin)) $link .= (strpos($link, '?') ? '&' : '?').'user={usertag:username|urlencode}&passw={usertag:password|urlencode}';

		if(empty($tag->lang) && !empty($article->language) && $article->language != '*'){
			if(!isset($this->langcodes[$article->language])){
				$this->langcodes[$article->language] = acymailing_loadResult('SELECT sef FROM #__languages WHERE lang_code = '.acymailing_escapeDB($article->language).' ORDER BY `published` DESC LIMIT 1');
				if(empty($this->langcodes[$article->language])) $this->langcodes[$article->language] = $article->language;
			}
			$link .= (strpos($link, '?') ? '&' : '?').'lang='.$this->langcodes[$article->language];
		}

		$nonsefLink = $link;
		$mainurl = acymailing_mainURL($nonsefLink);
		$nonsefLink = $mainurl.$nonsefLink;

		$link = acymailing_frontendLink($link);
		$varFields['{link}'] = $link;

		$afterTitle = '';
		$afterArticle = '';
		$contentText = '';
		$pictPath = '';

		if(!empty($tag->author)){
			$authorName = empty($article->created_by_alias) ? $article->authorname : $article->created_by_alias;
			if($tag->type == 'title') $afterTitle .= '<br />';
			$afterTitle .= '<span class="authorname">'.$authorName.'</span><br />';
		}

		$dateFormat = empty($tag->dateformat) ? acymailing_translation('DATE_FORMAT_LC2') : $tag->dateformat;
		if(!empty($tag->created)){
			if($tag->type == 'title') $afterTitle .= '<br />';
			$varFields['{createddate}'] = acymailing_date($article->created, $dateFormat);
			$afterTitle .= '<span class="createddate">'.$varFields['{createddate}'].'</span><br />';
		}

		if(!empty($tag->modified)){
			if($tag->type == 'title') $afterTitle .= '<br />';
			$varFields['{modifieddate}'] = acymailing_date($article->modified, $dateFormat);
			$afterTitle .= '<span class="modifieddate">'.$varFields['{modifieddate}'].'</span><br />';
		}

		if(!isset($tag->pict) && $tag->type != 'title'){
			if($this->params->get('removepictures', 'never') == 'always' || ($this->params->get('removepictures', 'never') == 'intro' && $tag->type == "intro")){
				$tag->pict = 0;
			}else{
				$tag->pict = 1;
			}
		}

		if(strpos($article->introtext, 'jseblod') !== false && file_exists(ACYMAILING_ROOT.'plugins'.DS.'content'.DS.'cckjseblod.php')){
			global $mainframe;
			include_once(ACYMAILING_ROOT.'plugins'.DS.'content'.DS.'cckjseblod.php');
			if(function_exists('plgContentCCKjSeblod')){
				$paramsContent = JComponentHelper::getParams('com_content');
				$article->text = $article->introtext.$article->fulltext;
				plgContentCCKjSeblod($article, $paramsContent);
				$article->introtext = $article->text;
				$article->fulltext = '';
			}
		}

		if($tag->type != "title"){
			if($tag->type == "intro"){
				$forceReadMore = false;
				$mytag = new stdClass();
				$mytag->wrap = $this->params->get('wordwrap', 0);
				if(empty($article->fulltext)){
					$article->introtext = $this->acypluginsHelper->wrapText($article->introtext, $mytag);
					if(!empty($this->acypluginsHelper->wraped)) $forceReadMore = true;
				}
			}

			if(empty($article->fulltext) || $tag->type != "text"){
				$contentText .= $article->introtext;
			}

			if($tag->type != "intro" && !empty($article->fulltext)){
				if($tag->type != "text" && !empty($article->introtext) && !preg_match('#^<[div|p]#i', trim($article->fulltext))){
					$contentText .= '<br />';
				}
				$contentText .= $article->fulltext;
			}

			$contentText = $this->acypluginsHelper->wrapText($contentText, $tag);
			if(!empty($this->acypluginsHelper->wraped)) $forceReadMore = true;

			if(!empty($tag->clean)){
				$contentText = strip_tags($contentText, '<p><br><span><ul><li><h1><h2><h3><h4><a>');
			}

			$varFields['{picthtml}'] = '';
			if(ACYMAILING_J16 && !empty($article->images) && !empty($tag->pict) && empty($tag->nomainimage)){
				$picthtml = '';
				$images = json_decode($article->images);
				$pictVar = ($tag->type == 'intro') ? 'image_intro' : 'image_fulltext';
				$floatVar = ($tag->type == 'intro') ? 'float_intro' : 'float_fulltext';
				if(!empty($images->$pictVar)){
					if($images->$floatVar != 'right'){
						if(empty($tag->format)) $tag->format = 'TOP_LEFT';
						$images->$floatVar = 'left';
					}elseif(empty($tag->format)) $tag->format = 'TOP_RIGHT';
					$style = 'float:'.$images->$floatVar.';padding-'.(($images->$floatVar == 'right') ? 'left' : 'right').':10px;padding-bottom:10px;';
					if(!empty($tag->link) && empty($tag->nopictlink)) $picthtml .= '<a target="_blank" href="'.$link.'" style="text-decoration:none" >';
					$alt = '';
					$altVar = $pictVar.'_alt';
					if(!empty($images->$altVar)) $alt = $images->$altVar;
					$picthtml .= '<img'.(empty($tag->nopictstyle) ? ' style="'.$style.'"' : '').' alt="'.$alt.'" border="0" src="'.acymailing_rootURI().$images->$pictVar.'" />';
					$pictPath = acymailing_rootURI().$images->$pictVar;
					if(!empty($tag->link) && empty($tag->nopictlink)) $picthtml .= '</a>';
					$varFields['{picthtml}'] = $picthtml;
				}
			}

			$contentText = preg_replace('/^\s*(<img[^>]*>)\s*(?:<br[^>]*>\s*)*/i', '$1', $contentText);

			if(!empty($tag->custom)){
				$tag->custom = explode(',', $tag->custom);
				acymailing_arrayToInteger($tag->custom);

				$articleCFValues = acymailing_loadObjectList('SELECT fv.value, f.id, f.fieldparams, f.params, f.type, f.label, f.default_value 
																FROM #__fields AS f 
																LEFT JOIN #__fields_values AS fv ON fv.field_id = f.id AND fv.item_id = '.intval($tag->id).' 
																WHERE  f.id IN ('.implode(',', $tag->custom).')');

				$fields = array();
				foreach($articleCFValues as $oneVal){
					$fields[$oneVal->id]['values'][] = $oneVal->value;
					$fields[$oneVal->id]['field'] = $oneVal;
				}

				foreach($fields as $oneField){
					if(!empty($oneField['field']->fieldparams)) $oneField['field']->fieldparams = json_decode($oneField['field']->fieldparams, true);
					$oneField['field']->params = json_decode($oneField['field']->params, true);

					if($oneField['values'][0] === NULL){
						if(($oneField['field']->type == 'user' && empty($oneField['field']->default_value)) || ($oneField['field']->type != 'user' && strlen($oneField['field']->default_value) == 0)) continue;
						$oneField['values'] = array($oneField['field']->default_value);
					}

					foreach($oneField['values'] as &$oneFieldVal){
						switch($oneField['field']->type){
							case 'radio':
							case 'list':
							case 'checkboxes':
								foreach($oneField['field']->fieldparams['options'] as $oneOPT){
									if($oneOPT['value'] == $oneFieldVal){
										$oneFieldVal = $oneOPT['name'];
										break;
									}
								}
								break;

							case 'usergrouplist':
								if(empty($this->usergroups)) $this->usergroups = acymailing_loadObjectList('SELECT id, title FROM #__usergroups', 'id');

								$oneFieldVal = $this->usergroups[$oneFieldVal]->title;
								break;

							case 'imagelist':
								if($oneFieldVal == -1){
									$oneFieldVal = NULL;
									continue;
								}

								if(strlen($oneField['field']->fieldparams['directory']) > 1) $oneFieldVal = '/'.$oneFieldVal;
								else $oneField['field']->fieldparams['directory'] = '';
								$oneFieldVal = '<img src="images/'.$oneField['field']->fieldparams['directory'].$oneFieldVal.'" />';
								break;

							case 'url':
								$oneFieldVal = '<a target="_blank" href="'.$oneFieldVal.'">'.$oneFieldVal.'</a>';
								break;

							case 'sql':
								if(empty($oneField['field']->options)){
									$oneField['field']->options = acymailing_loadObjectList($oneField['field']->fieldparams['query'], 'value');
								}

								$oneFieldVal = $oneField['field']->options[$oneFieldVal]->text;
								break;

							case 'user':
								$oneFieldVal = acymailing_currentUserName($oneFieldVal);
								break;

							case 'media':
								$oneFieldVal = '<img src="'.$oneFieldVal.'" />';
								break;

							case 'calendar':
								$format = $oneField['field']->fieldparams['showtime'] == '1' ? 'Y-m-d H:i' : 'Y-m-d';
								$oneFieldVal = acymailing_date(strtotime($oneFieldVal), $format);
								break;
						}
					}

					$replaceme = trim(implode(', ', $oneField['values']), ', ');
					if(empty($replaceme)) continue;

					if($oneField['field']->params['showlabel'] == '1'){
						$label = $oneField['field']->label.': ';
						if($oneField['field']->type == 'imagelist') $label .= '<br/>';
						$replaceme = $label.$replaceme;
					}
					$afterArticle .= '<br />'.$replaceme;
				}
			}
			
			if(file_exists(JPATH_SITE.DS.'plugins'.DS.'attachments') && empty($tag->noattach)){
				try{
					$query = 'SELECT display_name, url, filename '.'FROM #__attachments '.'WHERE (parent_entity = "article" '.'AND parent_id = '.intval($tag->id).')';
					if(ACYMAILING_J16){
						$query .= ' OR (parent_entity = "category" '.'AND parent_id = '.intval($article->catid).')';
					}
					$attachments = acymailing_loadObjectList($query);
				}catch(Exception $e){
					$attachments = array();
				}

				if(!empty($attachments)){
					$afterArticle .= '<br />'.acymailing_translation('ATTACHED_FILES').' :';
					foreach($attachments as $oneAttachment){
						$afterArticle .= '<br /><a target="_blank" href="'.$oneAttachment->url.'">'.(empty($oneAttachment->display_name) ? $oneAttachment->filename : $oneAttachment->display_name).'</a>';
					}
				}
			}

			if(!empty($tag->share)){
				$links = array();
				$shareOpt = explode(',', $tag->share);
				foreach($shareOpt as $socialNetwork){
					$knownNetwork = true;
					$socialNetwork = strtolower(trim($socialNetwork));
					if($socialNetwork == 'facebook'){
						$linkShare = 'http://www.facebook.com/sharer.php?u='.urlencode($nonsefLink).'&t='.urlencode($article->title);
						$picSrc = (file_exists(ACYMAILING_MEDIA.'plugins'.DS.'facebook.png') ? 'media/com_acymailing/plugins/facebook.png' : 'media/com_acymailing/images/facebookshare.png');
						$altText = 'Facebook';
					}elseif($socialNetwork == 'twitter'){
						$text = acymailing_translation_sprintf('SHARE_TEXT', $nonsefLink);
						$linkShare = 'http://twitter.com/home?status='.urlencode($text);
						$picSrc = (file_exists(ACYMAILING_MEDIA.'plugins'.DS.'twitter.png') ? 'media/com_acymailing/plugins/twitter.png' : 'media/com_acymailing/images/twittershare.png');
						$altText = 'Twitter';
					}elseif($socialNetwork == 'linkedin'){
						$linkShare = 'http://www.linkedin.com/shareArticle?mini=true&url='.urlencode($nonsefLink).'&title='.urlencode($article->title);
						$picSrc = (file_exists(ACYMAILING_MEDIA.'plugins'.DS.'linkedin.png') ? 'media/com_acymailing/plugins/linkedin.png' : 'media/com_acymailing/images/linkedin.png');
						$altText = 'LinkedIn';
					}elseif($socialNetwork == 'google'){
						$linkShare = 'https://plus.google.com/share?url='.urlencode($nonsefLink);
						$picSrc = (file_exists(ACYMAILING_MEDIA.'plugins'.DS.'google.png') ? 'media/com_acymailing/plugins/google.png' : 'media/com_acymailing/images/google_plusshare.png');
						$altText = 'Google+';
					}elseif($socialNetwork == 'mailto'){
						$linkShare = 'mailto:?subject='.urlencode($article->title).'&body='.urlencode($article->title.' ('.$nonsefLink.')');
						$picSrc = (file_exists(ACYMAILING_MEDIA.'plugins'.DS.'mailto.png') ? 'media/com_acymailing/plugins/mailto.png' : 'media/com_acymailing/images/mailto.png');
						$altText = 'MailTo';
					}else{
						$knownNetwork = false;
						acymailing_display('Network not found: '.$socialNetwork.'. Availables networks are facebook, twitter, linkedin, google and mailto.', 'warning');
					}
					if($knownNetwork){
						array_push($links, '<a target="_blank" href="'.$linkShare.'" title="'.acymailing_translation_sprintf('SOCIAL_SHARE', $altText).'"><img alt="'.$altText.'" src="'.$picSrc.'" /></a>');
					}
				}
				$afterArticle .= '<br />'.(!empty($tag->sharetxt) ? $tag->sharetxt.' ' : '').implode(' ', $links);
			}
		}

		if(!empty($tag->jtags) && version_compare(JVERSION, '3.1.0', '>=')){
			$tags = acymailing_loadObjectList('SELECT t.id, t.alias, t.title FROM #__tags AS t JOIN #__contentitem_tag_map AS m ON t.id = m.tag_id WHERE t.published = 1 AND m.type_alias = "com_content.article" AND m.content_item_id = '.intval($tag->id));
			if(!empty($tags)){
				$afterArticle .= '<br />';
				foreach($tags as $oneTag){
					$afterArticle .= ' <a target="_blank" href="index.php?option=com_tags&view=tag&id='.$oneTag->id.'-'.$oneTag->alias.'">'.$oneTag->title.'</a> ';
				}
			}
		}

		$readMoreText = empty($tag->readmore) ? $this->readmore : $tag->readmore;
		$varFields['{readmore}'] = '<a class="acymailing_readmore_link" style="text-decoration:none;" target="_blank" href="'.$link.'"><span class="acymailing_readmore">'.$readMoreText.'</span></a>';

		if($tag->type == "intro" && empty($tag->noreadmore) && (!empty($article->fulltext) || $forceReadMore)){
			if(!empty($afterArticle)) $afterArticle .= '<br />';
			$afterArticle .= $varFields['{readmore}'];
		}

		$format = new stdClass();
		$format->tag = $tag;
		$format->title = empty($tag->notitle) ? $article->title : '';
		$format->afterTitle = $afterTitle;
		$format->afterArticle = $afterArticle;
		$format->imagePath = $pictPath;
		$format->description = $contentText;
		$format->link = empty($tag->link) ? '' : $link;
		$format->cols = 2;
		$result = $this->acypluginsHelper->getStandardDisplay($format);

		if(!empty($tag->theme)){
			if(preg_match('#<img[^>]*>#Uis', $article->introtext.$article->fulltext, $pregresult)){
				$cleanContent = strip_tags($result, '<p><br><span><ul><li><h1><h2><h3><h4><a>');
				$tdwidth = (empty($tag->maxwidth) ? $this->params->get('maxwidth', 150) : $tag->maxwidth) + 20;
				$result = '<table cellspacing="0" width="500" cellpadding="0" border="0" ><tr><td class="contentpicture" width="'.$tdwidth.'" valign="top" align="center"><a href="'.$link.'" target="_blank" style="border:0px;text-decoration:none">'.$pregresult[0].'</a></td><td class="contenttext">'.$cleanContent.'</td></tr></table>';
			}
		}

		if($tag->type != 'title') $result = '<div class="acymailing_content">'.$result.'</div>';

		if(!(empty($tag->cattitle) && empty($tag->catpict)) && ((!strpos($article->catid, ',') && $this->currentcatid != $article->catid) || (strpos($article->catid, ',') && !in_array($this->currentcatid, explode(',', $article->catid))))){
			if(strpos($article->catid, ',')){
				$catids = explode(',', $article->catid);
				$this->currentcatid = $catids[0];
			}else{
				$this->currentcatid = $article->catid;
			}

			if(ACYMAILING_J16){
				$params = json_decode($article->catparams);
				$article->catpict = $params->image;
			}

			$resultTitle = $article->cattitle;

			if(!empty($tag->catpict) && !empty($article->catpict)){
				$style = '';
				if(!empty($tag->catmaxwidth)) $style .= 'max-width:'.intval($tag->catmaxwidth).'px;';
				if(!empty($tag->catmaxheight)) $style .= 'max-height:'.intval($tag->catmaxheight).'px;';
				$resultTitle = '<img'.(empty($style) ? '' : ' style="'.$style.'"').' alt="" src="'.$article->catpict.'" />';
				if(!empty($tag->cattitlelink)) $resultTitle = '<a target="_blank" href="index.php?option=com_content&view=category&id='.$this->currentcatid.'">'.$resultTitle.'</a>';
			}else{
				if(!empty($tag->cattitlelink)) $resultTitle = '<a target="_blank" href="index.php?option=com_content&view=category&id='.$this->currentcatid.'">'.$resultTitle.'</a>';
				$resultTitle = '<h3 class="cattitle">'.$resultTitle.'</h3>';
			}

			$result = $resultTitle.$result;
		}

		if($oldFormat){
			if(file_exists(ACYMAILING_MEDIA.'plugins'.DS.'tagcontent_html.php')){
				ob_start();
				require(ACYMAILING_MEDIA.'plugins'.DS.'tagcontent_html.php');
				$result = ob_get_clean();
			}elseif(file_exists(ACYMAILING_MEDIA.'plugins'.DS.'tagcontent.php')){
				ob_start();
				require(ACYMAILING_MEDIA.'plugins'.DS.'tagcontent.php');
				$result = ob_get_clean();
			}
		}elseif(!empty($tag->template) && file_exists(ACYMAILING_MEDIA.'plugins'.DS.$tag->template)){
			ob_start();
			require(ACYMAILING_MEDIA.'plugins'.DS.$tag->template);
			$result = ob_get_clean();
		}
		$result = str_replace(array_keys($varFields), $varFields, $result);

		$result = $this->acypluginsHelper->removeJS($result);

		$tag->maxheight = empty($tag->maxheight) ? $this->params->get('maxheight', 150) : $tag->maxheight;
		$tag->maxwidth = empty($tag->maxwidth) ? $this->params->get('maxwidth', 150) : $tag->maxwidth;
		$result = $this->acypluginsHelper->managePicts($tag, $result);

		if(!empty($tag->maxchar) && strlen(strip_tags($result)) > $tag->maxchar){
			$result = strip_tags($result);
			for($i = $tag->maxchar; $i > 0; $i--){
				if($result[$i] == ' ') break;
			}
			if(!empty($i)) $result = substr($result, 0, $i).@$tag->textafter;
		}

		return $result;
	}

	private function _replaceAuto(&$email){
		$this->acymailing_generateautonews($email);
		if(empty($this->tags)) return;
		$this->acypluginsHelper->replaceTags($email, $this->tags, true);
	}

	public function acymailing_generateautonews(&$email){
		$time = time();

		$tags = $this->acypluginsHelper->extractTags($email, 'autocontent');
		$return = new stdClass();
		$return->status = true;
		$return->message = '';
		$this->tags = array();

		if(empty($tags)) return $return;

		foreach($tags as $oneTag => $parameter){
			if(isset($this->tags[$oneTag])) continue;
			$allcats = explode('-', $parameter->id);
			$selectedArea = array();
			foreach($allcats as $oneCat){
				if(!ACYMAILING_J16){
					$sectype = substr($oneCat, 0, 3);
					$num = substr($oneCat, 3);
					if(empty($num)) continue;
					if($sectype == 'cat'){
						$selectedArea[] = 'catid = '.(int)$num;
					}elseif($sectype == 'sec'){
						$selectedArea[] = 'sectionid = '.(int)$num;
					}
				}else{
					if(empty($oneCat)) continue;
					$selectedArea[] = intval($oneCat);
				}
			}

			$query = 'SELECT DISTINCT a.id FROM `#__content` as a ';
			$where = array();

			if(!empty($parameter->tags) && version_compare(JVERSION, '3.1.0', '>=')){
				$tagsArray = explode(',', $parameter->tags);
				acymailing_arrayToInteger($tagsArray);
				if(!empty($tagsArray)){
					foreach($tagsArray as $oneTagId){
						$query .= 'JOIN #__contentitem_tag_map AS tagsmap'.$oneTagId.' ON (a.id = tagsmap'.$oneTagId.'.content_item_id AND tagsmap'.$oneTagId.'.type_alias LIKE "com_content.article" AND tagsmap'.$oneTagId.'.tag_id = '.$oneTagId.') ';
					}
				}
			}

			if(!empty($parameter->featured)){
				if(ACYMAILING_J16){
					$where[] = 'a.featured = 1';
				}else{
					$query .= 'JOIN `#__content_frontpage` as b ON a.id = b.content_id ';
					$where[] = 'b.content_id IS NOT NULL';
				}
			}

			if(!empty($parameter->nofeatured)){
				if(ACYMAILING_J16){
					$where[] = 'a.featured = 0';
				}else{
					$query .= 'LEFT JOIN `#__content_frontpage` as b ON a.id = b.content_id ';
					$where[] = 'b.content_id IS NULL';
				}
			}

			if(ACYMAILING_J16 && !empty($parameter->subcats) && !empty($selectedArea)){
				$catinfos = acymailing_loadObjectList('SELECT lft,rgt FROM #__categories WHERE id IN ('.implode(',', $selectedArea).')');
				if(!empty($catinfos)){
					$whereCats = array();
					foreach($catinfos as $onecat){
						$whereCats[] = 'lft > '.$onecat->lft.' AND rgt < '.$onecat->rgt;
					}
					$othercats = acymailing_loadResultArray('SELECT id FROM #__categories WHERE ('.implode(') OR (', $whereCats).')');
					$selectedArea = array_merge($selectedArea, $othercats);
				}
			}

			if($this->newMulticats && (!empty($selectedArea) || !empty($parameter->excludedcats))) $query .= ' JOIN `#__multicats_content_catid` as mcc ON a.id = mcc.item_id ';

			if(!empty($selectedArea)){
				if(!ACYMAILING_J16){
					$where[] = implode(' OR ', $selectedArea);
				}else{
					$filter_cat = '`catid` IN ('.implode(',', $selectedArea).')';
					if(file_exists(JPATH_SITE.DS.'components'.DS.'com_multicats')){
						if($this->newMulticats){
							$filter_cat = 'mcc.`catid` REGEXP "^([0-9]+,)*'.implode('(,[0-9]+)*$" OR mcc.`catid` REGEXP "^([0-9]+,)*', $selectedArea).'(,[0-9]+)*$"';
						}else{
							$filter_cat = '`catid` REGEXP "^([0-9]+,)*'.implode('(,[0-9]+)*$" OR `catid` REGEXP "^([0-9]+,)*', $selectedArea).'(,[0-9]+)*$"';
						}
					}
					$where[] = $filter_cat;
				}
			}

			if(!empty($parameter->excludedcats)){
				$excludedCats = explode('-', $parameter->excludedcats);
				acymailing_arrayToInteger($excludedCats);
				$filter_cat = '`catid` NOT IN ("'.implode('","', $excludedCats).'")';
				if(file_exists(JPATH_SITE.DS.'components'.DS.'com_multicats')){
					if($this->newMulticats){
						$filter_cat = 'mcc.`catid` NOT REGEXP "^([0-9]+,)*'.implode('(,[0-9]+)*$" AND mcc.`catid` NOT REGEXP "^([0-9]+,)*', $excludedCats).'(,[0-9]+)*$"';
					}else{
						$filter_cat = '`catid` NOT REGEXP "^([0-9]+,)*'.implode('(,[0-9]+)*$" AND `catid` NOT REGEXP "^([0-9]+,)*', $excludedCats).'(,[0-9]+)*$"';
					}
				}
				$where[] = $filter_cat;
			}

			if(!empty($parameter->filter) && !empty($email->params['lastgenerateddate'])){
				$condition = '(`publish_up` > \''.date('Y-m-d H:i:s', $email->params['lastgenerateddate'] - date('Z')).'\' AND `publish_up` < \''.date('Y-m-d H:i:s', $time - date('Z')).'\')';
				$condition .= ' OR (`created` > \''.date('Y-m-d H:i:s', $email->params['lastgenerateddate'] - date('Z')).'\' AND `created` < \''.date('Y-m-d H:i:s', $time - date('Z')).'\')';
				if($parameter->filter == 'modify'){
					$modify = '(`modified` > \''.date('Y-m-d H:i:s', $email->params['lastgenerateddate'] - date('Z')).'\' AND `modified` < \''.date('Y-m-d H:i:s', $time - date('Z')).'\')';
					if(!empty($parameter->maxpublished)) $modify = '('.$modify.' AND `publish_up` > \''.date('Y-m-d H:i:s', time() - date('Z') - ((int)$parameter->maxpublished * 60 * 60 * 24)).'\')';
					$condition .= ' OR '.$modify;
				}

				$where[] = $condition;
			}

			if(!empty($parameter->maxcreated)){
				$date = $parameter->maxcreated;
				if(strpos($parameter->maxcreated, '[time]') !== false) $date = acymailing_replaceDate(str_replace('[time]', '{time}', $parameter->maxcreated));
				if(!is_numeric($date)) $date = strtotime($parameter->maxcreated);
				if(empty($date)){
					acymailing_display('Wrong date format ('.$parameter->maxcreated.' in '.$oneTag.'), please use YYYY-MM-DD', 'warning');
				}
				$where[] = '`created` < '.acymailing_escapeDB(date('Y-m-d H:i:s', $date)).' OR `publish_up` < '.acymailing_escapeDB(date('Y-m-d H:i:s', $date));
			}else{
				$where[] = '`publish_up` < \''.date('Y-m-d H:i:s', $time - date('Z')).'\'';
			}

			if(!empty($parameter->mincreated)){
				$date = $parameter->mincreated;
				if(strpos($parameter->mincreated, '[time]') !== false) $date = acymailing_replaceDate(str_replace('[time]', '{time}', $parameter->mincreated));
				if(!is_numeric($date)) $date = strtotime($parameter->mincreated);
				if(empty($date)){
					acymailing_display('Wrong date format ('.$parameter->mincreated.' in '.$oneTag.'), please use YYYY-MM-DD', 'warning');
				}
				$where[] = '`created` > '.acymailing_escapeDB(date('Y-m-d H:i:s', $date)).' OR `publish_up` > '.acymailing_escapeDB(date('Y-m-d H:i:s', $date));
			}


			if(!empty($parameter->meta)){
				$allMetaTags = explode(',', $parameter->meta);
				$metaWhere = array();
				foreach($allMetaTags as $oneMeta){
					if(empty($oneMeta)) continue;
					$metaWhere[] = "`metakey` LIKE '%".acymailing_getEscaped($oneMeta, true)."%'";
				}
				if(!empty($metaWhere)) $where[] = implode(' OR ', $metaWhere);
			}

			$where[] = '`publish_down` > \''.date('Y-m-d H:i:s', $time - date('Z')).'\' OR `publish_down` = 0';
			if(empty($parameter->unpublished)){
				$where[] = 'state = 1';
			}else{
				$where[] = 'state = 0';
			}

			if(!ACYMAILING_J16){
				if(isset($parameter->access)){
					$where[] = 'access <= '.intval($parameter->access);
				}else{
					if($this->params->get('contentaccess', 'registered') == 'registered'){
						$where[] = 'access <= 1';
					}elseif($this->params->get('contentaccess', 'registered') == 'public') $where[] = 'access = 0';
				}
			}elseif(isset($parameter->access)){
				if(strpos($parameter->access, ',')){
					$allAccess = explode(',', $parameter->access);
					acymailing_arrayToInteger($allAccess);
					$where[] = 'access IN ('.implode(',', $allAccess).')';
				}else{
					$where[] = 'access = '.intval($parameter->access);
				}
			}

			if(ACYMAILING_J16 && !empty($parameter->language)){
				$allLanguages = explode(',', $parameter->language);
				$langWhere = 'language IN (';
				foreach($allLanguages as $oneLanguage){
					$langWhere .= acymailing_escapeDB(trim($oneLanguage)).',';
				}
				$where[] = trim($langWhere, ',').')';
			}

			$query .= ' WHERE ('.implode(') AND (', $where).')';
			if(!empty($parameter->order)){
				$ordering = explode(',', $parameter->order);
				if($ordering[0] == 'rand'){
					$query .= ' ORDER BY rand()';
				}else{
					$query .= ' ORDER BY `'.acymailing_secureField($ordering[0]).'` '.acymailing_secureField($ordering[1]).' , a.`id` DESC';
				}
			}

			$start = '';
			if(!empty($parameter->start)) $start = intval($parameter->start).',';

			if(empty($parameter->max)) $parameter->max = 100;

			$query .= ' LIMIT '.$start.(int)$parameter->max;

			$allArticles = acymailing_loadResultArray($query);

			if(!empty($parameter->min) && count($allArticles) < $parameter->min){
				$return->status = false;
				$return->message = 'Not enough articles for the tag '.$oneTag.' : '.count($allArticles).' / '.$parameter->min.' between '.acymailing_getDate($email->params['lastgenerateddate']).' and '.acymailing_getDate($time);
			}

			$stringTag = empty($parameter->noentrytext) ? '' : $parameter->noentrytext;
			if(!empty($allArticles)){
				if(file_exists(ACYMAILING_MEDIA.'plugins'.DS.'autocontent.php')){
					ob_start();
					require(ACYMAILING_MEDIA.'plugins'.DS.'autocontent.php');
					$stringTag = ob_get_clean();
				}else{
					$arrayElements = array();
					$numArticle = 1;
					foreach($allArticles as $oneArticleId){
						$args = array();
						$args[] = 'joomlacontent:'.$oneArticleId;
						$args[] = 'num:'.$numArticle++;
						if(!empty($parameter->invert) && $numArticle % 2 == 1) $args[] = 'invert';
						if(!empty($parameter->type)) $args[] = 'type:'.$parameter->type;
						if(!empty($parameter->custom)) $args[] = 'custom:'.$parameter->custom;
						if(!empty($parameter->format)) $args[] = 'format:'.$parameter->format;
						if(!empty($parameter->template)) $args[] = 'template:'.$parameter->template;
						if(!empty($parameter->jtags)) $args[] = 'jtags';
						if(!empty($parameter->link)) $args[] = 'link';
						if(!empty($parameter->author)) $args[] = 'author';
						if(!empty($parameter->autologin)) $args[] = 'autologin';
						if(!empty($parameter->cattitle)) $args[] = 'cattitle';
						if(!empty($parameter->cattitlelink)) $args[] = 'cattitlelink';
						if(!empty($parameter->lang)) $args[] = 'lang:'.$parameter->lang;
						if(!empty($parameter->theme)) $args[] = 'theme';
						if(!empty($parameter->clean)) $args[] = 'clean';
						if(!empty($parameter->notitle)) $args[] = 'notitle';
						if(!empty($parameter->nopictstyle)) $args[] = 'nopictstyle';
						if(!empty($parameter->nopictlink)) $args[] = 'nopictlink';
						if(!empty($parameter->created)) $args[] = 'created';
						if(!empty($parameter->noattach)) $args[] = 'noattach';
						if(!empty($parameter->itemid)) $args[] = 'itemid:'.$parameter->itemid;
						if(!empty($parameter->noreadmore)) $args[] = 'noreadmore';
						if(isset($parameter->pict)) $args[] = 'pict:'.$parameter->pict;
						if(!empty($parameter->wrap)) $args[] = 'wrap:'.$parameter->wrap;
						if(!empty($parameter->maxwidth)) $args[] = 'maxwidth:'.$parameter->maxwidth;
						if(!empty($parameter->maxheight)) $args[] = 'maxheight:'.$parameter->maxheight;
						if(!empty($parameter->readmore)) $args[] = 'readmore:'.$parameter->readmore;
						if(!empty($parameter->dateformat)) $args[] = 'dateformat:'.$parameter->dateformat;
						if(!empty($parameter->textafter)) $args[] = 'textafter:'.$parameter->textafter;
						if(!empty($parameter->maxchar)) $args[] = 'maxchar:'.$parameter->maxchar;
						if(!empty($parameter->share)) $args[] = 'share:'.$parameter->share;
						if(!empty($parameter->sharetxt)) $args[] = 'sharetxt:'.$parameter->sharetxt;
						if(!empty($parameter->catpict)) $args[] = 'catpict';
						if(!empty($parameter->catmaxwidth)) $args[] = 'catmaxwidth:'.$parameter->catmaxwidth;
						if(!empty($parameter->catmaxheight)) $args[] = 'catmaxheight:'.$parameter->catmaxheight;
						if(!empty($parameter->nomainimage)) $args[] = 'nomainimage';
						$arrayElements[] = '{'.implode('|', $args).'}';
					}
					$stringTag = $this->acypluginsHelper->getFormattedResult($arrayElements, $parameter);
				}
			}
			$this->tags[$oneTag] = $stringTag;
		}

		return $return;
	}
}//endclass
extensions/plg_acymailing_taguser/index.html000060400000000054152455705230015454 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_taguser/taguser.xml000060400000004611152455705230015656 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag : Joomla User Information</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add informations of the Joomla user in the Newsletter</description>
	<files>
		<filename plugin="taguser">taguser.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-taguser"/>
		<param name="displayfilter_mail" type="radio" default="1" label="Display filter" description="Display the user fields filter and group filter on the Newsletter creation interface">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-taguser"/>
				<field name="displayfilter_mail" type="radio" default="1" label="Display filter" description="Display the user fields filter and group filter on the Newsletter creation interface">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_taguser/taguser.php000060400000047114152455705230015652 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingTaguser extends JPlugin{

	var $sendervalues = array();

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'taguser');
			$this->params = new acyParameter($plugin->params);
		}
	}

	function acymailing_getPluginType(){
		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('TAGUSER_TAGUSER');
		$onePlugin->function = 'acymailingtaguser_show';
		$onePlugin->help = 'plugin-taguser';

		return $onePlugin;
	}

	function acymailingtaguser_show(){
		?>

		<script language="javascript" type="text/javascript">
			function applyTag(tagname){
				var string = '{usertag:' + tagname;
				for(var i = 0; i < document.adminForm.typeinfo.length; i++){
					if(document.adminForm.typeinfo[i].checked){
						string += '|info:' + document.adminForm.typeinfo[i].value;
					}
				}
				string += '}';
				setTag(string);
				insertTag();
			}
		</script>
		<?php
		$typeinfo = array();
		$typeinfo[] = acymailing_selectOption("receiver", acymailing_translation('RECEIVER_INFORMATION'));
		$typeinfo[] = acymailing_selectOption("sender", acymailing_translation('SENDER_INFORMATIONS'));
		echo acymailing_radio($typeinfo, 'typeinfo', '', 'value', 'text', 'receiver');


		$notallowed = array('password', 'params', 'sendemail', 'gid', 'block', 'email', 'name', 'id');
		$text = '<div class="onelineblockoptions"><table class="acymailing_table" cellpadding="1">';
		$fields = acymailing_getColumns('#__users');
		if(ACYMAILING_J30) $fields = array_merge($fields, array('usertype' => 'usertype'));

		$descriptions['username'] = acymailing_translation('TAGUSER_USERNAME');
		$descriptions['usertype'] = acymailing_translation('TAGUSER_GROUP');
		$descriptions['lastvisitdate'] = acymailing_translation('TAGUSER_LASTVISIT');
		$descriptions['registerdate'] = acymailing_translation('TAGUSER_REGISTRATION');

		$k = 0;
		foreach($fields as $fieldname => $oneField){
			if(in_array(strtolower($fieldname), $notallowed)) continue;
			$type = '';
			if(strpos(strtolower($oneField), 'date') !== false) $type = '|type:date';
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="applyTag(\''.$fieldname.$type.'\');" ><td class="acytdcheckbox"></td><td>'.$fieldname.'</td><td>'.@$descriptions[strtolower($fieldname)].'</td></tr>';
			$k = 1 - $k;
		}

		if(ACYMAILING_J16){
			$extraFields = acymailing_loadObjectList('SELECT DISTINCT `profile_key` FROM `#__user_profiles`');
			if(!empty($extraFields)){
				foreach($extraFields as $oneField){
					$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="applyTag(\''.$oneField->profile_key.'|type:extra\');" ><td class="acytdcheckbox"></td><td>'.$oneField->profile_key.'</td><td></td></tr>';
					$k = 1 - $k;
				}
			}
		}
		if(ACYMAILING_J30){
			$link = 'index.php/component/users/?task=registration.activate&token={usertag:activation|info:receiver}';
		}elseif(ACYMAILING_J16){
			$link = 'index.php?option=com_users&task=registration.activate&token={usertag:activation|info:receiver}';
		}else{
			$link = 'index.php?option=com_user&task=activate&activation={usertag:activation|info:receiver}';
		}
		$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\''.htmlentities('<a target="_blank" href="'.$link.'">'.acymailing_translation('JOOMLA_CONFIRM_ACCOUNT').'</a>').'\'); insertTag();" ><td class="acytdcheckbox"></td><td>confirmJoomla</td><td>'.acymailing_translation('JOOMLA_CONFIRM_LINK').'</td></tr>';
		$text .= '</table></div>';

		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		if(version_compare($jversion, '3.7.0', '>=')){
			$query = 'SELECT id, title FROM #__fields_groups WHERE context = "com_users.user" AND state = 1 ORDER BY title ASC';
			$groups = acymailing_loadObjectList($query);
			$defaultGroup = new stdClass();
			$defaultGroup->id = 0;
			$defaultGroup->title = acymailing_translation('ACY_NO_GROUP');
			array_unshift($groups, $defaultGroup);

			$query = 'SELECT id, title, group_id FROM #__fields WHERE context = "com_users.user" AND state = 1 ORDER BY title ASC';
			$customFields = acymailing_loadObjectList($query);

			if(!empty($customFields)){
				$text .= '<div class="onelineblockoptions">
							<span class="acyblocktitle">'.acymailing_translation('EXTRA_FIELDS').'</span>
							<table class="acymailing_table" cellpadding="1">';
				foreach($groups as $oneGroup){
					$openedGroup = false;
					foreach($customFields as $oneCF){
						if($oneCF->group_id != $oneGroup->id) continue;
						if(!$openedGroup){
							$text .= '<tr><td></td><td style="font-weight: bold;">'.$oneGroup->title.'</td><td></td></tr>';
							$openedGroup = true;
						}
						$text .= '<tr style="cursor:pointer" onclick="applyTag(\''.$oneCF->id.'|type:custom\');" ><td class="acytdcheckbox"></td><td>'.$oneCF->title.'</td><td></td></tr>';
					}
				}
				$text .= '</table></div>';
			}
		}


		echo $text;
	}

	function acymailing_replaceusertags(&$email, &$user, $send = true){
		$pluginsHelper = acymailing_get('helper.acyplugins');
		$extractedTags = $pluginsHelper->extractTags($email, 'usertag');
		if(empty($extractedTags)) return;

		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		if(empty($this->customFields) && version_compare($jversion, '3.7.0', '>=')){
			$this->customFields = acymailing_loadObjectList('SELECT * FROM #__fields WHERE context = "com_users.user"', 'id');
			foreach($this->customFields as &$oneCF){
				if(!empty($oneCF->fieldparams)) $oneCF->fieldparams = json_decode($oneCF->fieldparams, true);
			}
		}

		$tags = array();
		$receivervalues = array();
		foreach($extractedTags as $i => $mytag){
			if(isset($tags[$i])) continue;
			$mytag->default = $this->params->get('default_'.$mytag->id, '');

			$values = new stdClass();
			$idused = 0;
			$save = false;

			if(!empty($mytag->info) && $mytag->info == 'sender' && !empty($email->userid)){
				$idused = $email->userid;
				$save = true;
			}
			if(!empty($mytag->info) && $mytag->info == 'current'){   
				$currentUserid = acymailing_currentUserId();
				if(!empty($currentUserid)) $idused = $currentUserid;
			}
			if((empty($mytag->info) || $mytag->info == 'receiver') && !empty($user->userid)){
				$idused = $user->userid;
			}

			if(!empty($idused) && empty($this->sendervalues[$idused]) && empty($receivervalues[$idused])){
				$receivervalues[$idused] = acymailing_loadObject('SELECT * FROM '.acymailing_table('users', false).' WHERE id = '.intval($idused).' LIMIT 1');

				if(ACYMAILING_J16){
					$receivervalues[$idused]->extraFields = acymailing_loadObjectList('SELECT * FROM #__user_profiles WHERE user_id = '.intval($idused), 'profile_key');
				}

				if($save) $this->sendervalues[$idused] = $receivervalues[$idused];
			}

			if(!empty($this->sendervalues[$idused])){
				$values = $this->sendervalues[$idused];
			}elseif(!empty($receivervalues[$idused])) $values = $receivervalues[$idused];

			if($mytag->id == 'usertype' && ACYMAILING_J16){
				if(empty($this->acyuserHelper)) $this->acyuserHelper = acymailing_get('helper.acyuser');
				$groups = $this->acyuserHelper->getUserGroups($idused);
				$allGroups = array();
				foreach($groups as $oneGroup) $allGroups[] = $oneGroup->title;
				$values->usertype = implode(', ', $allGroups);
			}

			if(empty($mytag->type)) $mytag->type = '';
			if($mytag->type == 'extra'){
				$replaceme = isset($values->extraFields[$mytag->id]) ? trim(json_decode($values->extraFields[$mytag->id]->profile_value), '"') : $mytag->default;
			}elseif($mytag->type == 'custom'){
				$mytag->id = intval($mytag->id);
				if(empty($mytag->id)){
					$replaceme = '';
				}else{
					$userFieldVals = acymailing_loadResultArray('SELECT value FROM #__fields_values WHERE item_id = '.intval($idused).' AND field_id = '.intval($mytag->id));

					$fieldValues = trim(implode(', ', $userFieldVals), ', ');
					if(empty($fieldValues)){
						$defaultValue = acymailing_loadObject('SELECT default_value, type FROM #__fields WHERE id = '.intval($mytag->id));
						if(($defaultValue->type == 'user' && !empty($defaultValue->default_value)) || ($defaultValue->type != 'user' && strlen($defaultValue->default_value) > 0)){
							$userFieldVals = array($defaultValue->default_value);
						}
					}

					foreach($userFieldVals as &$oneFieldVal){
						switch($this->customFields[$mytag->id]->type){
							case 'radio':
							case 'list':
							case 'checkboxes':
								foreach($this->customFields[$mytag->id]->fieldparams['options'] as $oneOPT){
									if($oneOPT['value'] == $oneFieldVal){
										$oneFieldVal = $oneOPT['name'];
										break;
									}
								}
								break;

							case 'usergrouplist':
								if(empty($this->usergroups)) $this->usergroups = acymailing_loadObjectList('SELECT id, title FROM #__usergroups', 'id');

								$oneFieldVal = $this->usergroups[$oneFieldVal]->title;
								break;

							case 'imagelist':
								if(strlen($this->customFields[$mytag->id]->fieldparams['directory']) > 1) $oneFieldVal = '/'.$oneFieldVal;
								else $this->customFields[$mytag->id]->fieldparams['directory'] = '';
								$oneFieldVal = '<img src="images/'.$this->customFields[$mytag->id]->fieldparams['directory'].$oneFieldVal.'" />';
								break;

							case 'url':
								$oneFieldVal = '<a target="_blank" href="'.$oneFieldVal.'">'.$oneFieldVal.'</a>';
								break;

							case 'sql':
								if(empty($this->customFields[$mytag->id]->options)){
									$this->customFields[$mytag->id]->options = acymailing_loadObjectList($this->customFields[$mytag->id]->fieldparams['query'], 'value');
								}

								$oneFieldVal = $this->customFields[$mytag->id]->options[$oneFieldVal]->text;
								break;

							case 'user':
								$oneFieldVal = acymailing_currentUserName($oneFieldVal);
								break;

							case 'media':
								$oneFieldVal = '<img src="'.$oneFieldVal.'" />';
								break;

							case 'calendar':
								$format = $this->customFields[$mytag->id]->fieldparams['showtime'] == '1' ? 'Y-m-d H:i' : 'Y-m-d';
								$oneFieldVal = acymailing_date(strtotime($oneFieldVal), $format);
								break;
						}
					}

					$replaceme = implode(', ', $userFieldVals);
				}
			}else{
				$replaceme = isset($values->{$mytag->id}) ? $values->{$mytag->id} : $mytag->default;
			}

			$tags[$i] = $replaceme;
			$pluginsHelper->formatString($tags[$i], $mytag);
		}

		$pluginsHelper->replaceTags($email, $tags);
	}//endfct

	function onAcyDisplayFilters(&$type, $context = "massactions"){

		if($this->params->get('displayfilter_'.$context, true) == false) return;

		$fields = acymailing_getColumns('#__users');
		if(empty($fields)) return;

		$type['joomlafield'] = acymailing_translation('JOOMLA_FIELD');
		$type['joomlagroup'] = acymailing_translation('ACY_GROUP');

		$field = array();
		$field[] = acymailing_selectOption(0, '- - -');
		foreach($fields as $oneField => $fieldType){
			$field[] = acymailing_selectOption($oneField, $oneField);
		}

		if(ACYMAILING_J16){
			$extraFields = acymailing_loadObjectList('SELECT DISTINCT `profile_key` FROM `#__user_profiles`');
			if(!empty($extraFields)){
				foreach($extraFields as $oneField){
					$field[] = acymailing_selectOption('customfield_'.$oneField->profile_key, $oneField->profile_key);
				}
			}
		}

		$jversion = preg_replace('#[^0-9\.]#i', '', JVERSION);
		if(version_compare($jversion, '3.7.0', '>=')){
			$query = 'SELECT id, title 
						FROM #__fields 
						WHERE context = "com_users.user"
							AND state = 1
							AND type IN ("calendar", "checkboxes", "color", "integer", "list", "imagelist", "radio", "sql", "text", "textarea", "url", "user", "usergrouplist")
						ORDER BY title ASC';
			$customFields = acymailing_loadObjectList($query);
			foreach ($customFields as $oneCF) {
				$field[] = acymailing_selectOption($oneCF->id, $oneCF->title);
			}
		}

		$jsOnChange = "displayCondFilter('displayUserValues', 'toChange__num__',__num__,'map='+document.getElementById('filter__num__joomlafieldmap').value+'&cond='+document.getElementById('filter__num__joomlafieldoperator').value+'&value='+document.getElementById('filter__num__joomlafieldvalue').value); ";

		$operators = acymailing_get('type.operators');
		$operators->extra = 'onchange="'.$jsOnChange.'countresults(__num__)"';

		$return = '<div id="filter__num__joomlafield">'.acymailing_select($field, "filter[__num__][joomlafield][map]", 'class="inputbox" size="1" onchange="'.$jsOnChange.'countresults(__num__)"', 'value', 'text');
		$return .= ' '.$operators->display("filter[__num__][joomlafield][operator]").' <span id="toChange__num__"><input onchange="countresults(__num__)" class="inputbox" type="text" name="filter[__num__][joomlafield][value]" id="filter__num__joomlafieldvalue" style="width:200px" value=""></span></div>';

		if(!ACYMAILING_J16){
			$acl = JFactory::getACL();
			$groups = $acl->get_group_children_tree(null, 'USERS', false);
		}else{
			$groups = acymailing_loadObjectList('SELECT a.*, a.title as text, a.id as value FROM #__usergroups AS a ORDER BY a.lft ASC', 'id');
			foreach($groups as $id => $group){
				if(isset($groups[$group->parent_id])){
					$groups[$id]->level = empty($groups[$group->parent_id]->level) ? 1 : intval($groups[$group->parent_id]->level + 1);
					$groups[$id]->text = str_repeat('- - ', $groups[$id]->level).$groups[$id]->text;
				}
			}
		}

		$inoperator = acymailing_get('type.operatorsin');
		$inoperator->js = 'onchange="countresults(__num__)"';

		$return .= '<div id="filter__num__joomlagroup">'.$inoperator->display("filter[__num__][joomlagroup][type]").' '.acymailing_select($groups, "filter[__num__][joomlagroup][group]", 'class="inputbox" size="1" onchange="countresults(__num__)"', 'value', 'text').'<label for="filter__num__joomlagroupsubgroups"><input type="checkbox" value="1" id="filter__num__joomlagroupsubgroups" name="filter[__num__][joomlagroup][subgroups]" onchange="countresults(__num__)"/>'.acymailing_translation('ACY_SUB_GROUPS').'</label></div>';

		return $return;
	}

	function onAcyTriggerFct_displayUserValues(){
		$num = acymailing_getVar('int', 'num');
		$map = acymailing_getVar('cmd', 'map');
		$cond = acymailing_getVar('string', 'cond', '', '', ACY_ALLOWHTML);
		$value = acymailing_getVar('string', 'value', '', '', ACY_ALLOWHTML);

		$emptyInputReturn = '<input onchange="countresults('.$num.')" class="inputbox" type="text" name="filter['.$num.'][joomlafield][value]" id="filter'.$num.'joomlafieldvalue" style="width:200px" value="'.$value.'">';
		$dateInput = '<input onclick="displayDatePicker(this,event)" onchange="countresults('.$num.')" class="inputbox" type="text" name="filter['.$num.'][joomlafield][value]" id="filter'.$num.'joomlafieldvalue" style="width:200px" value="'.$value.'">';

		if(in_array($map, array('registerDate', 'lastvisitDate', 'lastResetTime'))) return $dateInput;

		if(empty($map) || in_array($map, array('password', 'params', 'optKey', 'otep')) || !in_array($cond, array('=', '!='))) return $emptyInputReturn;

		if(strpos($map, 'customfield_') !== false){
			$prop = acymailing_loadObjectList('SELECT DISTINCT TRIM(BOTH \'"\' FROM `profile_value`) AS value FROM #__user_profiles WHERE profile_key = '.acymailing_escapeDB(str_replace('customfield_', '', $map)).' LIMIT 100');
		}elseif(intval($map) != 0){
			$prop = acymailing_loadObjectList('SELECT DISTINCT `value` FROM #__fields_values WHERE field_id = '.intval($map).' LIMIT 100');
		}else{
			$prop = acymailing_loadObjectList('SELECT DISTINCT `' . acymailing_secureField($map) . '` AS value FROM #__users LIMIT 100');
		}

		if(empty($prop) || count($prop) >= 100 || (count($prop) == 1 && (empty($prop[0]->value) || $prop[0]->value == '-'))) return $emptyInputReturn;

		return acymailing_select($prop, "filter[$num][joomlafield][value]", 'onchange="countresults('.$num.')" class="inputbox" size="1" style="width:200px"', 'value', 'value', $value, 'filter'.$num.'joomlafieldvalue');
	}

	function onAcyProcessFilterCount_joomlafield(&$query, $filter, $num){
		$this->onAcyProcessFilter_joomlafield($query, $filter, $num);
		return acymailing_translation_sprintf('SELECTED_USERS', $query->count());
	}

	function onAcyDisplayFilter_joomlafield($filter){
		return acymailing_translation('JOOMLA_FIELD').' : '.$filter['map'].' '.$filter['operator'].' '.$filter['value'];
	}

	function onAcyProcessFilter_joomlafield(&$query, $filter, $num){
		if(empty($filter['map'])) return;
		$type = '';
		if(strpos($filter['map'], 'customfield_') !== false){
			$query->leftjoin['joomlauserprofiles'.$num] = '#__user_profiles AS joomlauserprofiles'.$num.' ON joomlauserprofiles'.$num.'.user_id = sub.userid AND joomlauserprofiles'.$num.'.profile_key = '.acymailing_escapeDB(str_replace('customfield_', '', $filter['map']));
			$val = trim($filter['value'], '"');
			if(in_array($filter['operator'], array('=', '!=', '<', '>', '<=', '>=', 'BEGINS', 'LIKE', 'NOT LIKE'))){
				$val = '"'.$val;
			}
			if(in_array($filter['operator'], array('=', '!=', '<', '>', '<=', '>=', 'END', 'LIKE', 'NOT LIKE'))){
				$val = $val.'"';
			}

			$query->where[] = $query->convertQuery('joomlauserprofiles'.$num, 'profile_value', $filter['operator'], $val, $type);
		}elseif(intval($filter['map']) != 0){
			$query->leftjoin['joomlauserfields'.$num] = '#__fields_values AS joomlauserfields'.$num.' ON joomlauserfields'.$num.'.item_id = sub.userid AND joomlauserfields'.$num.'.field_id = '.intval($filter['map']);
			$query->where[] = $query->convertQuery('joomlauserfields'.$num, 'value', $filter['operator'], $filter['value'], $type);
		}else{
			$query->leftjoin['joomlauser'.$num] = '#__users AS joomlauser'.$num.' ON joomlauser'.$num.'.id = sub.userid';
			if(in_array($filter['map'], array('registerDate', 'lastvisitDate'))){
				$filter['value'] = acymailing_replaceDate($filter['value']);
				if(!is_numeric($filter['value']) && strtotime($filter['value']) !== false) $filter['value'] = strtotime($filter['value']);
				if(is_numeric($filter['value'])) $filter['value'] = strftime('%Y-%m-%d %H:%M:%S', $filter['value']);
				$type = 'datetime';
			}
			$query->where[] = $query->convertQuery('joomlauser'.$num, $filter['map'], $filter['operator'], $filter['value'], $type);
		}
	}

	function onAcyProcessFilterCount_joomlagroup(&$query, $filter, $num){
		$this->onAcyProcessFilter_joomlagroup($query, $filter, $num);
		return acymailing_translation_sprintf('SELECTED_USERS', $query->count());
	}

	function onAcyProcessFilter_joomlagroup(&$query, $filter, $num){
		$operator = (empty($filter['type']) || $filter['type'] == 'IN') ? 'IS NOT NULL AND joomlauser'.$num.'.'.(ACYMAILING_J16 ? 'user_' : '').'id != 0' : "IS NULL";
		$filter['group'] = intval($filter['group']);

		if(!empty($filter['subgroups'])){
			$groupTable = ACYMAILING_J16 ? 'usergroups' : 'core_acl_aro_groups';
			$lftrgt = acymailing_loadObject('SELECT lft, rgt FROM #__'.$groupTable.' WHERE id = '.$filter['group']);
			$allGroups = acymailing_loadResultArray('SELECT id FROM #__'.$groupTable.' WHERE lft > '.$lftrgt->lft.' AND rgt < '.$lftrgt->rgt);
			array_unshift($allGroups, $filter['group']);
			$value = ' IN ('.implode(', ', $allGroups).')';
		}else{
			$value = ' = '.$filter['group'];
		}

		if(!ACYMAILING_J16){
			$query->leftjoin['joomlauser'.$num] = "#__users AS joomlauser$num ON joomlauser$num.id = sub.userid AND joomlauser$num.gid".$value;
			$query->where[] = "joomlauser$num.id ".$operator;
		}else{
			$query->leftjoin['joomlauser'.$num] = "#__user_usergroup_map AS joomlauser$num ON joomlauser$num.user_id = sub.userid AND joomlauser$num.group_id".$value;
			$query->where[] = "joomlauser$num.user_id ".$operator;
		}
	}
}//endclass

extensions/plg_acymailing_tagsubscriber/tagsubscriber.php000060400000044404152455705240020224 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingTagsubscriber extends JPlugin{

	var $fields = array();

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'tagsubscriber');
			$this->params = new acyParameter($plugin->params);
		}
	}

	function acymailing_getPluginType(){
		if($this->params->get('frontendaccess') == 'none' && !acymailing_isAdmin()) return;
		$onePlugin = new stdClass();
		$onePlugin->name = acymailing_translation('SUBSCRIBER_SUBSCRIBER');
		$onePlugin->function = 'acymailingtagsubscriber_show';
		$onePlugin->help = 'plugin-tagsubscriber';

		return $onePlugin;
	}

	function acymailingtagsubscriber_show(){
		$fields = acymailing_getColumns('#__acymailing_subscriber');

		$descriptions['subid'] = acymailing_translation('SUBSCRIBER_ID');
		$descriptions['email'] = acymailing_translation('SUBSCRIBER_EMAIL');
		$descriptions['name'] = acymailing_translation('SUBSCRIBER_NAME');
		$descriptions['userid'] = acymailing_translation('SUBSCRIBER_USERID');
		$descriptions['ip'] = acymailing_translation('SUBSCRIBER_IP');
		$descriptions['created'] = acymailing_translation('SUBSCRIBER_CREATED');
		echo '<br style="clear:both;"/>';
		if(acymailing_getVar('none', 'type') == 'notification'){
			$text = '<div class="onelineblockoptions">
						<span class="acyblocktitle">'.acymailing_translation('CURRENT_USER_INFO').'</span>
						<table class="acymailing_table" cellpadding="1">';
			$k = 0;
			foreach($fields as $fieldname => $oneField){
				if(!isset($descriptions[$fieldname]) AND $oneField == 'tinyint') continue;
				if(empty($descriptions[$fieldname])) $descriptions[$fieldname] = '';

				$type = '';
				if(in_array($fieldname, array('created', 'confirmed_date', 'lastclick_date', 'lastsent_date', 'lastopen_date'))) $type = '|type:time';
				$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\'{user:'.$fieldname.$type.'}\');insertTag();" ><td class="acytdcheckbox"></td><td>'.$fieldname.'</td><td>'.$descriptions[$fieldname].'</td></tr>';
				$k = 1 - $k;
			}
			$text .= '</table></div>';
			echo $text;
		}

		$text = '<div class="onelineblockoptions">
					<span class="acyblocktitle">'.acymailing_translation('RECEIVER_INFORMATION').'</span>
					<table class="acymailing_table" cellpadding="1">';

		$others = array();
		$others['{subtag:name|part:first|ucfirst}'] = array('name' => acymailing_translation('SUBSCRIBER_FIRSTPART'), 'desc' => acymailing_translation('SUBSCRIBER_FIRSTPART').' '.acymailing_translation('SUBSCRIBER_FIRSTPART_DESC'));
		$others['{subtag:name|part:last|ucfirst}'] = array('name' => acymailing_translation('SUBSCRIBER_LASTPART'), 'desc' => acymailing_translation('SUBSCRIBER_LASTPART').' '.acymailing_translation('SUBSCRIBER_LASTPART_DESC'));

		$k = 0;

		foreach($others as $tagname => $tag){
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\''.$tagname.'\');insertTag();" ><td class="acytdcheckbox"></td><td>'.$tag['name'].'</td><td>'.$tag['desc'].'</td></tr>';
			$k = 1 - $k;
		}

		foreach($fields as $fieldname => $oneField){
			if(!isset($descriptions[$fieldname]) AND $oneField == 'tinyint') continue;
			if(empty($descriptions[$fieldname])) $descriptions[$fieldname] = '';

			$type = '';
			if(in_array($fieldname, array('created', 'confirmed_date', 'lastclick_date', 'lastopen_date', 'lastsent_date'))) $type = '|type:time';
			$text .= '<tr style="cursor:pointer" class="row'.$k.'" onclick="setTag(\'{subtag:'.$fieldname.$type.'}\');insertTag();" ><td class="acytdcheckbox"></td><td>'.$fieldname.'</td><td>'.$descriptions[$fieldname].'</td></tr>';
			$k = 1 - $k;
		}

		$text .= '</table></div>';

		echo $text;
	}

	function acymailing_replaceusertags(&$email, &$user, $send = true){
		$this->pluginsHelper = acymailing_get('helper.acyplugins');
		$extractedTags = $this->pluginsHelper->extractTags($email, 'subtag');
		if(empty($extractedTags)) return;

		$tags = array();
		foreach($extractedTags as $i => $oneTag){
			if(isset($tags[$i])) continue;
			$tags[$i] = $this->replaceSubTag($oneTag, $user);
		}

		$this->pluginsHelper->replaceTags($email, $tags);
	}

	private function replaceSubTag(&$mytag, $user){
		if(!empty($mytag->juser)){
			$subClass = acymailing_get('class.subscriber');
			if(strpos($mytag->juser, '@') !== false){
				$userTmp = $subClass->get($mytag->juser);
			}else{
				$query = "SELECT * FROM #__users WHERE username= ".acymailing_escapeDB($mytag->juser);
				$JuserTmp = acymailing_loadObject($query);
				if(!empty($JuserTmp->email)) $userTmp = $subClass->get($JuserTmp->email);
			}
			if(!empty($userTmp)){
				$user = $userTmp;
			}else acymailing_enqueueMessage('User not found for tag juser', 'warning');
		}

		$field = $mytag->id;
		if(empty($mytag->titlevalue)){
			$replaceme = (isset($user->$field) && strlen($user->$field) > 0) ? $user->$field : $mytag->default;
		}else{
			$fieldClass = acymailing_get('class.fields');
			if(!isset($this->fields[$field])){
				$this->fields[$field] = $fieldClass->get($field);
			}
			$replaceme = (isset($user->$field) && strlen($user->$field) > 0 && !empty($this->fields[$field]->value[$user->$field]->value)) ? $fieldClass->trans($this->fields[$field]->value[$user->$field]->value) : $mytag->default;
		}
		$replaceme = nl2br($replaceme);

		$this->pluginsHelper->formatString($replaceme, $mytag);

		return $replaceme;
	}

	function onAcyDisplayFilters(&$type, $context = "massactions"){

		if($this->params->get('displayfilter_'.$context, true) == false) return;

		$fields = acymailing_getColumns('#__acymailing_subscriber');
		if(empty($fields)) return;

		$field = array();
		$field[] = acymailing_selectOption(0, '- - -');
		foreach($fields as $oneField => $fieldType){
			$field[] = acymailing_selectOption($oneField, $oneField);
		}
		$type['acymailingfield'] = acymailing_translation('ACYMAILING_FIELD');

		$jsOnChange = "displayCondFilter('displaySubscriberValues', 'toChange__num__',__num__,'map='+document.getElementById('filter__num__acymailingfieldmap').value+'&cond='+document.getElementById('filter__num__acymailingfieldoperator').value+'&value='+document.getElementById('filter__num__acymailingfieldvalue').value); ";

		$operators = acymailing_get('type.operators');
		$operators->extra = 'onchange="'.$jsOnChange.'"';

		$return = '<div id="filter__num__acymailingfield">'.acymailing_select($field, "filter[__num__][acymailingfield][map]", 'onchange="'.$jsOnChange.'" class="inputbox" size="1"', 'value', 'text');
		$return .= ' '.$operators->display("filter[__num__][acymailingfield][operator]").' <span id="toChange__num__"><input onchange="countresults(__num__)" class="inputbox" type="text" name="filter[__num__][acymailingfield][value]" style="width:200px" value="" id="filter__num__acymailingfieldvalue"></span></div>';

		return $return;
	}

	function onAcyTriggerFct_displaySubscriberValues(){
		$num = acymailing_getVar('int', 'num');
		$map = acymailing_getVar('cmd', 'map');
		$cond = acymailing_getVar('string', 'cond', '', '', ACY_ALLOWHTML);
		$value = acymailing_getVar('string', 'value', '', '', ACY_ALLOWHTML);

		$emptyInputReturn = '<input onchange="countresults('.$num.')" class="inputbox" type="text" name="filter['.$num.'][acymailingfield][value]" id="filter'.$num.'acymailingfieldvalue" style="width:200px" value="'.$value.'">';
		$dateInput = '<input onClick="displayDatePicker(this,event)" onchange="countresults('.$num.')" class="inputbox" type="text" name="filter['.$num.'][acymailingfield][value]" id="filter'.$num.'acymailingfieldvalue" style="width:200px" value="'.$value.'">';

		if(in_array($map, array('created', 'confirmed_date', 'lastopen_date', 'lastclick_date'))) return $dateInput;

		if(empty($map) || $map == 'key' || !in_array($cond, array('=', '!='))) return $emptyInputReturn;

		$query = 'SELECT DISTINCT `'.acymailing_secureField($map).'` AS value FROM #__acymailing_subscriber LIMIT 100';
		$prop = acymailing_loadObjectList($query);

		if(empty($prop) || count($prop) >= 100 || (count($prop) == 1 && (empty($prop[0]->value) || $prop[0]->value == '-'))) return $emptyInputReturn;

		return acymailing_select($prop, "filter[$num][acymailingfield][value]", 'onchange="countresults('.$num.')" class="inputbox" size="1" style="width:200px"', 'value', 'value', $value, 'filter'.$num.'acymailingfieldvalue');
	}

	function onAcyDisplayFilter_acymailingfield($filter){
		return acymailing_translation('ACYMAILING_FIELD').' : '.$filter['map'].' '.$filter['operator'].' '.$filter['value'];
	}

	function onAcyProcessFilter_acymailingfield(&$query, $filter, $num){
		if(empty($filter['map'])) return;
		$type = '';
		$value = acymailing_replaceDate($filter['value']);

		if(strpos($filter['value'], '{time}') !== false && !in_array($filter['map'], array('created', 'confirmed_date', 'lastclick_date', 'lastopen_date', 'lastsent_date'))){
			$value = strftime('%Y-%m-%d', $value);
		}

		if(in_array($filter['map'], array('created', 'confirmed_date', 'lastclick_date', 'lastopen_date', 'lastsent_date'))){
			if(!is_numeric($value)) $value = strtotime($value);
			$type = 'timestamp';
		}

		$query->where[] = $query->convertQuery('sub', $filter['map'], $filter['operator'], $value, $type);
	}

	function onAcyProcessFilterCount_acymailingfield(&$query, $filter, $num){
		$this->onAcyProcessFilter_acymailingfield($query, $filter, $num);
		return acymailing_translation_sprintf('SELECTED_USERS', $query->count());
	}

	function onAcyDisplayActions(&$type){
		$config = acymailing_config();

		$type['acymailingfield'] = acymailing_translation('BOUNCE_ACTION');
		$status = array();
		$status[] = acymailing_selectOption('confirm', acymailing_translation('CONFIRM_USERS'));
		$status[] = acymailing_selectOption('unconfirm', acymailing_translation('ACY_ACTION_UNCONFIRM'));
		$status[] = acymailing_selectOption('enable', acymailing_translation('ENABLE_USERS'));
		$status[] = acymailing_selectOption('block', acymailing_translation('BLOCK_USERS'));

		if(acymailing_isAllowed($config->get('acl_subscriber_delete', 'all'))) $status[] = acymailing_selectOption('delete', acymailing_translation('DELETE_USERS'));

		$content = '<div id="action__num__acymailingfield">'.acymailing_select($status, "action[__num__][acymailingfield][action]", 'class="inputbox" size="1"', 'value', 'text').'</div>';

		if(!acymailing_level(3)) return $content;

		$fields = acymailing_getColumns('#__acymailing_subscriber');
		if(empty($fields)) return $content;

		$field = array();
		$field[] = acymailing_selectOption(0, '- - -');
		foreach($fields as $oneField => $fieldType){
			if(in_array($oneField, array('name', 'email', 'subid', 'created', 'ip'))) continue;
			$field[] = acymailing_selectOption($oneField, $oneField);
		}

		$jsOnChange = "if(document.getElementById('action__num__acymailingfieldvalvalue')!= undefined){ currentVal=document.getElementById('action__num__acymailingfieldvalvalue').value;} else{currentVal='';}
			displayCondFilter('displayFieldPossibleValues', 'toChangeAction__num__',__num__,'map='+document.getElementById('action__num__acymailingfieldvalmap').value+'&value='+currentVal+'&operator='+document.getElementById('action__num__acymailingfieldvaloperator').value); ";

		$operator = array();
		$operator[] = acymailing_selectOption('=', '=');
		$operator[] = acymailing_selectOption('+', '+');
		$operator[] = acymailing_selectOption('-', '-');
		$operator[] = acymailing_selectOption('addend', acymailing_translation('ACY_OPERATOR_ADDEND'));
		$operator[] = acymailing_selectOption('addbegin', acymailing_translation('ACY_OPERATOR_ADDBEGINNING'));

		$content .= '<div id="action__num__acymailingfieldval">'.acymailing_select($field, "action[__num__][acymailingfieldval][map]", 'onchange="'.$jsOnChange.'" class="inputbox" size="1"', 'value', 'text');
		$content .= ' '.acymailing_select($operator, "action[__num__][acymailingfieldval][operator]", 'onchange="'.$jsOnChange.'" class="inputbox" size="1" style="width:150px;"', 'value', 'text', '=');
		$content .= ' <span id="toChangeAction__num__"><input class="inputbox" type="text" id="action__num__acymailingfieldvalvalue" name="action[__num__][acymailingfieldval][value]" style="width:200px" value=""></span></div>';

		$type['acymailingfieldval'] = acymailing_translation('SET_SUBSCRIBER_VALUE');

		return $content;
	}

	function onAcyTriggerFct_displayFieldPossibleValues(){
		$num = acymailing_getVar('int', 'num');
		$map = acymailing_getVar('cmd', 'map');
		$value = acymailing_getVar('string', 'value');
		$operator = acymailing_getVar('string', 'operator');

		if(in_array($operator, array('addend', 'addbegin'))){
			$emptyInputReturn = '<textarea class="inputbox" type="text" name="action['.$num.'][acymailingfieldval][value]" id="action'.$num.'acymailingfieldvalvalue" style="width:200px">'.$value.'</textarea>';
		}else{
			$emptyInputReturn = '<input class="inputbox" type="text" name="action['.$num.'][acymailingfieldval][value]" id="action'.$num.'acymailingfieldvalvalue" style="width:200px" value="'.$value.'">';
		}

		if(empty($map) || $map == 'key' || $operator != '=') return $emptyInputReturn;

		$fieldClass = acymailing_get('class.fields');
		$myField = $fieldClass->get($map);
		if(empty($myField) || !in_array($myField->type, array('radio', 'checkbox', 'singledropdown', 'multipledropdown'))) return $emptyInputReturn;

		return $fieldClass->display($myField, '', 'action['.$num.'][acymailingfieldval][value]');
	}

	function onAcyProcessAction_acymailingfieldval($cquery, $action, $num){

		$value = is_array($action['value']) ? implode(',', $action['value']) : $action['value'];
		$replace = array('{year}', '{month}', '{weekday}', '{day}');
		$replaceBy = array(date('Y'), date('m'), date('N'), date('d'));
		$value = str_replace($replace, $replaceBy, $value);

		if(preg_match_all('#{(year|month|weekday|day)\|(add|remove):([^}]*)}#Uis', $value, $results)){
			foreach($results[0] as $i => $oneMatch){
				$format = str_replace(array('year', 'month', 'weekday', 'day'), array('Y','m','N','d'), $results[1][$i]);
				$delay = str_replace(array('add', 'remove'), array('+', '-'), $results[2][$i]).intval($results[3][$i]).' '.str_replace('weekday', 'day', $results[1][$i]);
				$value = str_replace($oneMatch, date($format, strtotime($delay)), $value);
			}
		}

		if(empty($action['operator'])) $action['operator'] = '=';

		preg_match_all('#(?:{|%7B)field:(.*)(?:}|%7D)#Ui', $value, $tags);
		$fields = array_keys(acymailing_getColumns('#__acymailing_subscriber'));
		if(!in_array($action['map'], $fields)) return 'Unexisting field: '.$action['map'].' | The available fields are: '.implode(', ', $fields);

		if(in_array($action['operator'], array('+', '-'))){
			if(empty($tags) || empty($tags[1])){
				$value = intval($value);
			}else{
				if(count($tags[1]) > 1 || substr($value, 0, 1) != '{' || substr($value, strlen($value) - 1, 1) != '}'){
					return 'You can\'t use more than one tag for the + and - operators (you also can\'t add or remove a value from the inserted tag for these two operators)';
				}
				if(!in_array($tags[1][0], $fields)) return 'Unexisting field: '.$tags[1][0].' | The available fields are: '.implode(', ', $fields);
				$value = 'sub.`'.acymailing_secureField($tags[1][0]).'`';
			}
		}else{
			$value = acymailing_escapeDB($value);
			if(!empty($tags)){
				foreach($tags[1] as $i => $oneField){
					if(!in_array($oneField, $fields)) return 'Unexisting field: '.$oneField.' | The available fields are: '.implode(', ', $fields);
					$value = str_replace($tags[0][$i], "', sub.`".acymailing_secureField($oneField)."`, '", $value);
				}
				$value = "CONCAT(".$value.")";
			}
		}

		$query = 'UPDATE #__acymailing_subscriber AS sub';
		if(!empty($cquery->join)) $query .= ' JOIN '.implode(' JOIN ', $cquery->join);
		if(!empty($cquery->leftjoin)) $query .= ' LEFT JOIN '.implode(' LEFT JOIN ', $cquery->leftjoin);

		if($action['operator'] == '='){
			$newValue = $value;
		}elseif(in_array($action['operator'], array('+', '-'))){
			$newValue = "sub.`".acymailing_secureField($action['map'])."` ".$action['operator']." ".$value;
		}elseif($action['operator'] == 'addend'){
			$newValue = "CONCAT(sub.`".acymailing_secureField($action['map'])."`, ".$value.")";
		}elseif($action['operator'] == 'addbegin'){
			$newValue = "CONCAT(".$value.", sub.`".acymailing_secureField($action['map'])."`)";
		}else{
			return 'Non existing operator: '.$action['operator'];
		}

		$query .= " SET sub.`".acymailing_secureField($action['map'])."` = ".$newValue;
		if(!empty($cquery->where)) $query .= ' WHERE ('.implode(') AND (', $cquery->where).')';

		$nbAffected = acymailing_query($query);
		return acymailing_translation_sprintf('NB_MODIFIED', $nbAffected);
	}

	function onAcyProcessAction_acymailingfield($cquery, $action, $num){

		$config = acymailing_config();
		$subClass = acymailing_get('class.subscriber');

		if($action['action'] == 'confirm'){
			$cquery->where['confirmed'] = 'sub.confirmed = 0';
			$allSubids = acymailing_loadResultArray($cquery->getQuery(array('sub.subid')));
			if(!empty($allSubids)){
				$subClass->sendConf = false;
				$subClass->sendWelcome = false;
				$subClass->sendNotif = false;
				foreach($allSubids as $oneId){
					$subClass->confirmSubscription($oneId);
				}
			}
			unset($cquery->where['confirmed']);
			return acymailing_translation_sprintf('NB_CONFIRMED', count($allSubids));
		}

		if($action['action'] == 'enable'){
			$action['map'] = 'enabled';
			$action['value'] = 1;
			return $this->onAcyProcessAction_acymailingfieldval($cquery, $action, $num);
		}

		if($action['action'] == 'block'){
			$action['map'] = 'enabled';
			$action['value'] = 0;
			return $this->onAcyProcessAction_acymailingfieldval($cquery, $action, $num);
		}

		if($action['action'] == 'unconfirm'){
			$action['map'] = 'confirmed';
			$action['value'] = 0;
			return $this->onAcyProcessAction_acymailingfieldval($cquery, $action, $num);
		}

		if($action['action'] == 'delete'){
			if(!acymailing_isAllowed($config->get('acl_subscriber_delete', 'all'))) return 'Not allowed to delete users';
			$query = $cquery->getQuery(array('sub.subid'));
			$allSubids = acymailing_loadResultArray($query);
			$nbAffected = $subClass->delete($allSubids);
			return acymailing_translation_sprintf('IMPORT_DELETE', $nbAffected);
		}

		return 'Filter AcyMailingField error, action not found : '.$action['action'];
	}
}//endclass
extensions/plg_acymailing_tagsubscriber/index.html000060400000000054152455705240016642 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_tagsubscriber/tagsubscriber.xml000060400000004653152455705240020237 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing Tag : Subscriber information</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to add information of the subscriber in your Newsletter</description>
	<files>
		<filename plugin="tagsubscriber">tagsubscriber.php</filename>
		<filename>index.html</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagsubscriber"/>
		<param name="displayfilter_mail" type="radio" default="1" label="Display filter" description="Display the subscriber fields filter on the Newsletter creation interface">
			<option value="0">JOOMEXT_NO</option>
			<option value="1">JOOMEXT_YES</option>
		</param>
		<param name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
			<option value="all">Always display this tag system</option>
			<option value="none">Don't display this tag system on the front-end</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-tagsubscriber"/>
				<field name="displayfilter_mail" type="radio" default="1" label="Display filter" description="Display the subscriber fields filter on the Newsletter creation interface">
					<option value="0">JOOMEXT_NO</option>
					<option value="1">JOOMEXT_YES</option>
				</field>
				<field name="frontendaccess" type="list" default="all" label="Front-end Access" description="You can restrict the access to this tag system with this option">
					<option value="all">Always display this tag system</option>
					<option value="none">Don't display this tag system on the front-end</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>
extensions/index.html000060400000000054152455705240010744 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_acymailing_contentplugin/contentplugin.xml000060400000002655152455705240020323 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="acymailing">
	<name>AcyMailing : trigger Joomla Content plugins</name>
	<creationDate>November 2009</creationDate>
	<version>3.7.0</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved..</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This plugin enables you to trigger the content plugin system on AcyMailing. The Joomla Content plugin system has not been developed to be triggered from the backend and so you may have some non compatible plugins, that's why this plugin is not enabled by default</description>
	<files>
		<filename plugin="contentplugin">contentplugin.php</filename>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-contentplugin"/>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="help" type="help" label="Help" description="Click on the help button to get some help" default="plugin-contentplugin"/>
			</fieldset>
		</fields>
	</config>
</install>
extensions/plg_acymailing_contentplugin/contentplugin.php000060400000006166152455705240020313 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgAcymailingContentplugin extends JPlugin
{

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);

		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'contentplugin');
			$this->params = new acyParameter( $plugin->params );
		}

		$this->paramsContent = JComponentHelper::getParams('com_content');
		acymailing_importPlugin('content');

		$excludedHandlers = array('plgContentEmailCloak','pluginImageShow');
		$excludedNames = array('system' => array('SEOGenerator','SEOSimple'), 'content' => array('webeecomment','highslide','smartresizer','phocagallery'));
		$excludedType = array_keys($excludedNames);

		if(!ACYMAILING_J16){
			$this->dispatcherContent = JDispatcher::getInstance();
			foreach ($this->dispatcherContent->_observers as $id => $observer){
				if (is_array($observer) AND in_array($observer['handler'],$excludedHandlers)){
					$this->dispatcherContent->_observers[$id]['event'] = '';
				}elseif(is_object($observer)){
					if(in_array($observer->_type,$excludedType) AND in_array($observer->_name,$excludedNames[$observer->_type])){
						$this->dispatcherContent->_observers[$id] = null;
					}
				}
			}
		}

		if(!class_exists('JSite')) include_once(ACYMAILING_ROOT.'includes'.DS.'application.php');

	}

	function acymailing_replacetags(&$email,$send = true){

		$art = new stdClass();
		$art->title = $email->subject;
		$art->introtext = $email->body;
		$art->fulltext = $email->body;
		$art->attribs = '';
		$art->state=1;
		$art->created_by=@$email->userid;
		$art->images = '';
		$art->id = 0;
		$art->section = 0;
		$art->catid = 0;

		$context = 'com_acymailing';


		try{
			if(!empty($email->body)){
				$art->text = $email->body;
				if(!ACYMAILING_J16){
					$resultsPlugin = acymailing_trigger('onPrepareContent', array(&$art, &$this->paramsContent, 0));
				}else{
					if($send) $art->text .= '{emailcloak=off}';
					$resultsPlugin = acymailing_trigger('onContentPrepare', array($context, &$art, &$this->paramsContent, 0));
					if($send) $art->text = str_replace(array('{emailcloak=off}','{* emailcloak=off}'),'',$art->text);
				}
				$email->body = $art->text;
			}
			if(!empty($email->altbody)){
				$art->text = $email->altbody;
				if(!ACYMAILING_J16){
					$resultsPlugin = acymailing_trigger('onPrepareContent', array(&$art, &$this->paramsContent, 0));
				}else{
					if($send) $art->text .= '{emailcloak=off}';
					$resultsPlugin = acymailing_trigger('onContentPrepare', array ($context,&$art, &$this->paramsContent, 0 ));
					if($send) $art->text = str_replace(array('{emailcloak=off}','{* emailcloak=off}'),'',$art->text);
				}
				$email->altbody = $art->text;
			}
		}catch(Exception $e){
			acymailing_display(array('An error occured with the AcyMailing contentplugin plugin, you may want to disable it from the AcyMailing configuration page',$e->getMessage()),'error');
		}

	}
}//endclass
extensions/plg_acymailing_contentplugin/index.html000060400000000054152455705240016674 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/index.html000060400000000054152455705240015322 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor.php000060400000017041152455705240016025 0ustar00<?php
/**
 * @package	AcyMailing for Joomla!
 * @version	5.9.6
 * @author	acyba.com
 * @copyright	(C) 2009-2018 ACYBA S.A.R.L. All rights reserved.
 * @license	GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */

defined('_JEXEC') or die('Restricted access');
?><?php

class plgEditorAcyEditor extends JPlugin
{

	function __construct(&$subject, $config){
		parent::__construct($subject, $config);

		include_once(rtrim(JPATH_ADMINISTRATOR,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_acymailing'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'helper.php');

		if(!isset($this->params)){
			$plugin = JPluginHelper::getPlugin('acymailing', 'acyeditor');
			$this->params = new acyParameter( $plugin->params );
		}
	}


	public function onInit()
	{
		acymailing_addScript(false, ACYMAILING_JS.'acyeditor.js?v='.@filemtime(ACYMAILING_MEDIA.'js'.DS.'acyeditor.js'));

		$websiteurl = rtrim(acymailing_rootURI(),'/').'/';

		acymailing_addStyle(false, $websiteurl.'plugins/editors/acyeditor/acyeditor/css/acyeditor.css?v='.@filemtime(JPATH_SITE.DS.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'css'.DS.'acyeditor.css'));

		if (ACYMAILING_J16){
			acymailing_addScript(false, $websiteurl.'plugins/editors/acyeditor/acyeditor/ckeditor/ckeditor.js?v='.@filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'ckeditor.js'));
		} else{
			acymailing_addScript(false, $websiteurl.'plugins/editors/acyeditor/ckeditor/ckeditor.js?v='.@filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'ckeditor'.DS.'ckeditor.js'));
		}
		acymailing_addScript(false, $websiteurl.'media/com_acymailing/js/jquery/jquery-1.9.1.min.js?v='.@filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'jquery'.DS.'jquery-1.9.1.min.js'));
		acymailing_addStyle(false, $websiteurl.'media/com_acymailing/js/colorpicker/css/colorpicker.css?v='.@filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'colorpicker'.DS.'css'.DS.'colorpicker.css'));
		acymailing_addScript(false, $websiteurl.'media/com_acymailing/js/colorpicker/js/colorpicker.js?v='.@filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'colorpicker'.DS.'js'.DS.'colorpicker.js'));
		acymailing_addScript(false, $websiteurl.'media/com_acymailing/js/jquery/jquery-ui.min.js?v='.@filemtime(ACYMAILING_ROOT.'media'.DS.'com_acymailing'.DS.'js'.DS.'jquery'.DS.'jquery-ui.min.js'));
		return '';
	}

	function onSave()
	{
		return;
	}

	function onGetContent($id)
	{
		return "AcyGetData();\n";
	}

	function onSetContent($id, $html)
	{
		$idIframe = "#".$id."_ifr";
		$initialisation = $this->GetInitialisationFunction($id);

		return "document.getElementById('$id').value = $html;$initialisation";
	}

	function onGetInsertMethod($id)
	{
		static $done = false;

		if($done) return true;
		$done = true;

		$js = "\tfunction jInsertEditorText(text, editor) {
				insertAtCursor(document.getElementById(editor), text);
				}";
		acymailing_addScript(true, $js);

		return true;
	}

	function onDisplay($name, $content, $width, $height, $col, $row, $buttons = true, $id = null, $asset = null, $author = null, $params = array())
	{
		if (empty($id)) {
			$id = $name;
		}

		if (is_numeric($width)) {
			$width .= 'px';
		}

		if (is_numeric($height)) {
			$height .= 'px';
		}

		$idIframe = $id."_ifr";
		$initialisation = $this->GetInitialisationFunction($id);

		$contentAvecOnClick = htmlspecialchars_decode($content);
		$editor  = "<textarea name=\"$name\" id=\"$id\" cols=\"$col\" rows=\"$row\" style=\"width:$width; height:$height;display:none\">$content</textarea>\n
					<script type=\"text/javascript\">
						$initialisation
					</script>";

		return $editor;
	}

	function GetInitialisationFunction($id)
	{

		$texteSuppression = acymailing_translation('ACYEDITOR_DELETEAREA');
		$tooltipSuppression = acymailing_translation('ACY_DELETE');
		$tooltipEdition = acymailing_translation('ACY_EDIT');
		$urlBase = acymailing_rootURI();
		$urlAdminBase = acymailing_baseURI();
		$cssurl = acymailing_getVar('none', 'acycssfile');
		$forceComplet = (acymailing_getVar('cmd', 'option') != 'com_acymailing' || acymailing_getVar('cmd', 'ctrl') == 'template' || acymailing_getVar('cmd', 'ctrl') == 'list');
		$modeList = (acymailing_getVar('cmd', 'option') == 'com_acymailing' && acymailing_getVar('cmd', 'ctrl') == 'list');
		$modeTemplate = (acymailing_getVar('cmd', 'option') == 'com_acymailing' && acymailing_getVar('cmd', 'ctrl') == 'template');
		$modeArticle = (acymailing_getVar('cmd', 'option') == 'com_content' && acymailing_getVar('cmd', 'view') == 'article');
		$joomla2_5 = ACYMAILING_J16;
		$joomla3 = ACYMAILING_J30;
		$titleTemplateDelete = acymailing_translation('ACYEDITOR_TEMPLATEDELETE');
		$titleTemplateText = acymailing_translation('ACYEDITOR_TEMPLATETEXT');
		$titleTemplatePicture = acymailing_translation('ACYEDITOR_TEMPLATEPICTURE');
		$titleShowAreas = acymailing_translation('ACYEDITOR_SHOWAREAS');
		$isBack = 0;
		if(acymailing_isAdmin()){
			$isBack = 1;
		};
		$tagAllowed = 0;
		$config = acymailing_config();
		if(acymailing_getVar('cmd', 'option') == 'com_acymailing'
		&& acymailing_getVar('cmd', 'ctrl') != 'list'
		&& acymailing_getVar('cmd', 'ctrl') != 'campaign'
		&& acymailing_isAllowed($config->get('acl_tags_view','all'))
		&& acymailing_getVar('cmd', 'tmpl') != 'component'){
			$tagAllowed = 1;
		}
		$type = 'news';
		if(acymailing_getVar('cmd', 'ctrl') == 'autonews' || acymailing_getVar('cmd', 'ctrl') == 'followup'){
			$type = acymailing_getVar('cmd', 'ctrl');
		}

		$pasteType = $this->params->get('pasteType', 'plain');
		$enterMode = $this->params->get('enterMode', 'br');
		$inlineSource = $this->params->get('inlineSource', 1);

		$js = "
		acyEnterMode='".$enterMode."';
		pasteType='".$pasteType."';
		urlSite='".$urlBase."';
		defaultText='".str_replace("'", "\'", acymailing_translation('ACYEDITOR_DEFAULTTEXT'))."';
		titleBtnMore='".str_replace("'", "\'", acymailing_translation('ACYEDITOR_TEMPLATEMORE'))."';
		titleBtnDupliAfter='".str_replace("'", "\'", acymailing_translation('ACYEDITOR_DUPLICATE_AFTER'))."';
		tooltipInitAreas='".str_replace("'", "\'", acymailing_translation('ACYEDITOR_REINIT_ZONE_TOOLTIP'))."';
		confirmInitAreas='".str_replace("'", "\'", acymailing_translation('ACYEDITOR_REINIT_ZONE_CONFIRMATION'))."';
		tooltipTemplateSortable='".str_replace("'", "\'", acymailing_translation('ACYEDITOR_SORTABLE_AREA_TOOLTIP'))."';
		var bgroundColorTxt='".str_replace("'", "\'", acymailing_translation('BACKGROUND_COLOUR'))."';
		var confirmDeleteBtnTxt='".str_replace("'", "\'", acymailing_translation('ACY_DELETE'))."';
		var confirmCancelBtnTxt='".str_replace("'", "\'", acymailing_translation('ACY_CANCEL'))."';
		inlineSource='".$inlineSource."';
		var emojis = false;
		";

		$installedPlugin = JPluginHelper::getPlugin('acymailing', 'emojis');
		if(!empty($installedPlugin)) {
			$params = new acyParameter($installedPlugin->params);
			if(JPluginHelper::isEnabled('acymailing', 'emojis') && $params->get('editor', 1) == 1) {
				$js .= "emojis = true;";
			}
		}

		acymailing_addScript(true, $js);

		$ckEditorFileVersion = @filemtime(ACYMAILING_ROOT.'plugins'.DS.'editors'.DS.'acyeditor'.DS.'acyeditor'.DS.'ckeditor'.DS.'ckeditor.js');
		return "Initialisation(\"$id\", \"$type\", \"$urlBase\", \"$urlAdminBase\", \"$cssurl\", \"$forceComplet\", \"$modeList\", \"$modeTemplate\", \"$modeArticle\", \"$joomla2_5\", \"$joomla3\", \"$isBack\", \"$tagAllowed\", \"$texteSuppression\", \"$tooltipSuppression\", \"$tooltipEdition\", \"$titleTemplateDelete\", \"$titleTemplateText\", \"$titleTemplatePicture\", \"$titleShowAreas\", \"$ckEditorFileVersion\");\n";
	}
}

extensions/plg_editors_acyeditor/acyeditor.xml000060400000005057152455705240016042 0ustar00<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install type="plugin" version="1.5" method="upgrade" group="editors">
	<name>AcyMailing Editor</name>
	<creationDate>March 2018</creationDate>
	<version>5.9.6</version>
	<author>Acyba</author>
	<authorEmail>dev@acyba.com</authorEmail>
	<authorUrl>http://www.acyba.com</authorUrl>
	<copyright>Copyright (C) 2009-2018 ACYBA SAS - All rights reserved.</copyright>
	<license>GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html</license>
	<description>This editor will make your life easier when writing Newsletters with AcyMailing</description>
	<files>
		<filename plugin="acyeditor">acyeditor.php</filename>
		<folder>acyeditor</folder>
	</files>
	<params addpath="/components/com_acymailing/params">
		<param name="pasteType" type="radio" default="plain" label="Copy/paste type" description="Choose the way you want to paste text in your newsletter">
			<option value="plain">Plain text</option>
			<option value="simpleStyle">Simple styles from word</option>
		</param>
		<param name="enterMode" type="radio" default="br" label="Behaviour of the Enter key" description="Choose the separator when pressing the enter key">
			<option value="p">p</option>
			<option value="br">br</option>
			<option value="div">div</option>
		</param>
		<param name="inlineSource" type="radio" default="1" label="Display source button for inline editor" description="Choose to display the source button for the editor inb inline mode">
			<option value="0">No</option>
			<option value="1">Yes</option>
		</param>
	</params>
	<config>
		<fields name="params" addfieldpath="/components/com_acymailing/params">
			<fieldset name="basic">
				<field name="pasteType" type="radio" default="plain" label="Copy/paste type" description="Choose the way you want to paste text in your newsletter">
					<option value="plain">Plain text</option>
					<option value="simpleStyle">Simple styles from word</option>
				</field>
				<field name="enterMode" type="radio" default="br" label="Behaviour of the Enter key" description="Choose the separator when pressing the enter key">
					<option value="p">p</option>
					<option value="br">br</option>
					<option value="div">div</option>
				</field>
				<field name="inlineSource" type="radio" default="1" label="Display source button for inline editor" description="Choose to display the source button for the editor inb inline mode">
					<option value="0">No</option>
					<option value="1">Yes</option>
				</field>
			</fieldset>
		</fields>
	</config>
</install>

extensions/plg_editors_acyeditor/acyeditor/images/arrow2.png000060400000002776152455705240020514 0ustar00�PNG


IHDRL�n�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:01576FDDED7B11E49FE4D5385305D429" xmpMM:DocumentID="xmp.did:01576FDEED7B11E49FE4D5385305D429"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:01576FDBED7B11E49FE4D5385305D429" stRef:documentID="xmp.did:01576FDCED7B11E49FE4D5385305D429"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��NrIDATx�b���?�@�\@�@��|@�	��� ���(����=������{�@��Z�A1�`���|�b�_��Ι-���K\QR�E�Š8-B�x�1kqq��ĉ��όb �%�b �	;z�'++S��#�B�������1��=ɍ�@lb,]�Xx��2��a���b���ofn�NNV�����CC�o����)�$g�c�ǏKM�6Eb�֭b@�8�@�r00333��������@__�cNn�355�H漁���Z`���6mY�����-;+++�!��L�/_���T�~�'Zp�����Y���������������YX��؁����G���^���3��j1sCC�����ttt�������+����ebZ��111���Ծ���|aaa�����gϞqJIK}SW�� �JN�y��BB��JI��=k���Ϲ��X|}}�-�'��7opN�6M��~~���(YA�����������162z���{�w�ޡ @_~onny`h`�	��))2Ay�Y��ϟ��V����z/""�]3H/0
��ۆLY��v�����i"9>�g1]�c���x�4�*IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/popup_delete_hover.png000060400000002212152455705240023151 0ustar00�PNG


IHDR2=50tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:25F50BB44AFB11E5872CC6FFBA9ABBBE" xmpMM:DocumentID="xmp.did:25F50BB54AFB11E5872CC6FFBA9ABBBE"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:25F50BB24AFB11E5872CC6FFBA9ABBBE" stRef:documentID="xmp.did:25F50BB34AFB11E5872CC6FFBA9ABBBE"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�J��IDATxڄ�?O1��<"EO�4��q#�¤�&I�nQYHL`�s@�s^��<J~ɧ-�s��3�9�����o���n�����4cL5x�N��,
����2��w�a
=~ƹ���
�(I�ˈ�;HL�ŶvN�~鬾�q�3�1�Q���"3�u���Uկj����~[�m0^/�0l�����᙮�[��B�8����87�7��o��
w��#|b���6��ُM�}�o��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/edit_picture.png000060400000002067152455705240021751 0ustar00�PNG


IHDRVΎWtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:8284EF62B06911E4B380A37DD123F96D" xmpMM:DocumentID="xmp.did:8284EF63B06911E4B380A37DD123F96D"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:8284EF60B06911E4B380A37DD123F96D" stRef:documentID="xmp.did:8284EF61B06911E4B380A37DD123F96D"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>1+L_�IDATx�b�TLTT3��chhH�����c7]@���aT__�q�̙��i�&0�t�R�ؗ/_RSSnݺE~��IJJb8s�������r��m0��ׯ`>Q.i������97�X]
���|�/^0̘1�AEE���fD�k�$����m1�`��R���u�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/edit_text.png000060400000002221152455705240021252 0ustar00�PNG


IHDR٬tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:D1024FB3B06811E4A380B4651962F653" xmpMM:DocumentID="xmp.did:D1024FB4B06811E4A380B4651962F653"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:D1024FB1B06811E4A380B4651962F653" stRef:documentID="xmp.did:D1024FB2B06811E4A380B4651962F653"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��w�IDATx�b���?选�,@���?>|�E�?!���[[[EEŋ/������'AA���(�8~=���\\\���ohh�K1�
I�����ׯ_���*++O�0�������m=@RJJ
�eff�|!	�#**�����4k�,�U�"Y;;���tgg'�=X�a����ԃ�7HX		����:u���۳gϲ�����x�B������~XXP'~=@u��Ǐ_�|ijj����X4������$���t�o�:���p'IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/popup_cancel.png000060400000002156152455705240021740 0ustar00�PNG


IHDR��w&tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:FE3E210C4AFA11E5BC2FB3422BD422F9" xmpMM:DocumentID="xmp.did:FE3E210D4AFA11E5BC2FB3422BD422F9"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:FE3E210A4AFA11E5BC2FB3422BD422F9" stRef:documentID="xmp.did:FE3E210B4AFA11E5BC2FB3422BD422F9"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��;o�IDATx�bL�ߦ������(�Lc@��R�@�$��
�%&�)�S��{X��z ΄��|ҭ@\
�#�]����	�@N��9 6B�O:��je'�$v$E?�x"Pa9�W�pH�!)�T��0!)����Pq�b��ː�pJ��ePy��Ӏt.�i��H���Ŗw�AA���(�h"R�����w�x6P!r�1@����.�2L� �IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/param.png000060400000003061152455705240020364 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:EC05C96F254C11E5B6E3BAFE8D3FCFE7" xmpMM:DocumentID="xmp.did:EC05C970254C11E5B6E3BAFE8D3FCFE7"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:EC05C96D254C11E5B6E3BAFE8D3FCFE7" stRef:documentID="xmp.did:EC05C96E254C11E5B6E3BAFE8D3FCFE7"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�T��IDATx�bL,jg�`b�|�`�P������?�3"&�Y������t��}�
��407���7'GAJ(�<}���7Y��p�lh���VSp�1V�����fgc����,�N������/_�cff&F@Env�2��@���w��~�� [NF"��h��?����/^{����o?��8.]��?{�w��.k�_���}��������qss�=���)@ƑS��6M�;�c[U�� ?D%�,dס4c��?A��@�@������Z���	Y=�8t��~����Z[s�����x]GC���(���������_̐�k�rR�L�@��89�dl-�U����șw���{��@�cw���J���2��cbb���D�q�O���c]
)	�K�n�K��||��\>}���K�zg,�����=l�
޽����?=-n.�ū�H���>y��-0��[^�}1�Q�6�&��f wfO���P�詋�2-##��� ���\�4����������G.�$q~`�B�@������T��S
4M\T����$l(�����'h¹p���$�ݺ�� �,j�}���u�1���'/U��E"0��r�#g�/!����� � x$R�̆D"A
(^�hi�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/editor_zone_picture.png000060400000002264152455705240023344 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:0167BFF5B06C11E487C6CEC55A836C39" xmpMM:DocumentID="xmp.did:0167BFF6B06C11E487C6CEC55A836C39"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:0167BFF3B06C11E487C6CEC55A836C39" stRef:documentID="xmp.did:0167BFF4B06C11E487C6CEC55A836C39"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>ﶖ(IDATx�b�:Ê����J`� €S(+�(Am�}����i3�q��߿�������7###9^����߿����_������g��C5Џ��Ih
3@\�)@��&�3HC�H��C�ll<���E�U�L�2�~���'Q^��?MZ�((p;78��#+���;.�����7MXH�f�
	���"���@<<��Rf���pq0� �.V����bj����2$��,��EET�M^�o�~P�E,,�LL�T0���UP�HR!��.�l "�i��$��5�`!�`v�9�2IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/editor_zone_plus.png000060400000002546152455705240022657 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:57DFBA24B06C11E497D38F6FCDAB583E" xmpMM:DocumentID="xmp.did:57DFBA25B06C11E497D38F6FCDAB583E"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:57DFBA22B06C11E497D38F6FCDAB583E" stRef:documentID="xmp.did:57DFBA23B06C11E497D38F6FCDAB583E"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>u2#��IDATx�bL,jg�`b�5�0`�2�V�	r���q����22���w���{��#֠�P�m��:v�߿����3KAV�� �����%� NN�=O�x�Ȗ�eaa���|�n��-|<,_��������A��caf�K�t�3r�R?~�dgcJ�ܸ���+�f�`�0�G2�bNV�?{�&ke����i�!&ff|Å���ׯ�=��쭻����a����,,,��h
0��������������A@�������t��~���� �_�U䙘�H0��G,�Wo�_�m�����O�R��#g��� "$	oL?��G>����_�y���?VVV[s��O^�)�0���;a������݇ϋVm�Jeň�/_�O���(��I���c�S�w�1�aI�,,��x�%� HH1�/##�E����`�oN..fff*��@�����

L`�kƭ!��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/editor_zone_drag.png000060400000002613152455705240022604 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:6002D97EB11111E49415D2D3980B09AA" xmpMM:DocumentID="xmp.did:6002D97FB11111E49415D2D3980B09AA"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:6002D97CB11111E49415D2D3980B09AA" stRef:documentID="xmp.did:6002D97DB11111E49415D2D3980B09AA"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>N���IDATx�bL,jg�`b�|��fea	�u2Vo���2
��
�1��������|�I��uT5T�����_muE-��>����4��ϰ�蹝NvUg��ŭ�?���qss���뵿���)�ЌC�/7���!���߿���o��W~>�Y�߿��x� �@O[W[�����tH#!+�rH�aee��b#r	�ur�2��O_�����'�*)I1 ��+ ��򈄘0�ܼ����	��?���ˌ������Y�er*:႓�J�dnU7\dnͥkw�،Ӡ?���~�XO#�`��߿�h���v���������~;p�<�����o!���Ɏ�f��#ĦlFFFAA I|1Z�`�`f�t�*Έ���t�7�����׀I��{��<baf����?s(HN�����
{����ϟ��7������X��z�p�Bl		�D`�Q� b"��2�"���(0o��Z��:\IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/editor_zone_delete.png000060400000002177152455705240023136 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:2DB953D5B06C11E49B42CCAB3AC66869" xmpMM:DocumentID="xmp.did:2DB953D6B06C11E49B42CCAB3AC66869"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:2DB953D3B06C11E49B42CCAB3AC66869" stRef:documentID="xmp.did:2DB953D4B06C11E49B42CCAB3AC66869"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��r�IDATx�ܔ�
�0��S�?u��:D��9z��=F=G�^�keɦ�����}�6�����	ў!�1�}�ޜ���n:�-��yktX�5T*%Ճ	
�gY��)M��wm'3P��QZi��B�*�E���3MoRb�����)���FI�Ek��}��ď�(V�(�c3�(1J��(mlR5ؚ�QM��|��a�j\C���{���l�d
�=����b�8�e�k��A����L/�E��U��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/duplicate_after.png000060400000010653152455705240022424 0ustar00�PNG


IHDRY<
2FsRGB���gAMA���a	pHYs���+tEXtSoftwareAdobe ImageReadyq�e<IDATx^�\{p��u��ݕ,ɲ$K�H�����8�i�4P�J���i����NgB��C��0�2M&Ʉ�8�t��35���G�47`lb���¶���+�V����߹�����bY�h�����=����{�V6I�DcccH��0�LX��G�N�]]]p��0E"���~�z8%�B�DQ3�N�:�-[��t���boo/Z[[�"+t�(
axx������	������Bא�+ݵ%�wE����|h��@+ _Z�:�i�޽�m۶��S�X���#812
��¸��
�Hd�/p�M����RN���o߾�9�Lb��玜<n �+�4(����T�h������W�.��l;����,�](��(��
��f���B�R�*<��C圫O�
r,��Gx9���j6�܀�ILf+�\�c�9��`��˙W����N���P�k�ϢH��p�i�\i��\Z�wa��� ̍���Y��Jc��tE.�n���@���F�t�N�|�i�%���W��h�%Q����}��|y���d2C����"�����ũ��j�.5rH-/)ԋ�� L慃���b�o�I�b�_���8#`%_��N�Ž���<�S�_�g��^��3#�G6�Q��f����z��@p��#�۫�
JŚ2"�S��X�U��i��ՐO&�c$�K�հ�զצ�ϋ�]*�R�����q����,�(��l|v�ZW�$ب��[hB���z.-�y�jq��&ѯ&V������M��1�"a���ȴ��L�p�ҳ�*mz^N��L�t�\z��&�T��:
�i�z�˲���zy)��� �Arz�p��&&Ƒ��ʾ�,H4�p	B�|�f@	#�M��7����\��Ȫpybԅ��<�6�vv!h���dg�����6�٬�}3z$-����Y>�r�����=pq�zY���ۛW���O�Wdv�݀5��b_ܔ���Ύ5�aRVo���	�=}h�Գj�����e�v���[�'�E{ ��|�Fyw��)|�=�$.LL�RV�*l�
�\v5�J33R����l����$�gf��[�l"���y�)4�JSc��q�}09]H'3bD`w9�t�9�FV�؎�BP�~���T"��`�sb�n5�3��l�ž��b���)>;K[�U��9l�и��c�j��s)�����[4�4�ľ;89Nr��L����O@s�����eV+��'X0�2��G*���B�|h۝�
R����"��"7~S瀵_��
4��ǿ:�V�S��H�,-�&�H�t�M"�!�tk��Ǔi�ff0�LA�P�iY����D�I9"���D15�����(����BRl>�D6�����f�JY �a���vTg��0��z��R���p�2�&@1/:��'8�q�=�|�n~�x�<�2��/���"C���Q��{s�2!U��Pd�P-�|�=OҠ��s;G&p�a��D�j����iY�z�r"[%G�<e%�(+i��l��i�|�l����z	d��B�؇R��t
�tF�f5��؊����;�9�,R�(Ɔi�#�/�*���ŭd��&�@��dTw��";g�Y��\&t{T��R���(�&Ε(���ˇ�3�q��ذA�J����F�a���O0��G��.�ɣ)�`uz`kg���Z�"���~�Г�g!徘�dh���dsj�3����
������d�ͪ��C������0�ۋ<�[������0Z9ئ�0��‚;���~r+�<�
���
h�K�RU�k]�B���|��f��۪��D��+41�M����S�@��e�ʶJ_���6��8R�m�x���,6�J
��;�h���^�,�I��9�����1��2X&K�N����](���l3�T2v'
MA�-j�ʳ�E�ju��.�s�T���"�Wd�'�\2�m���n���H����(1O������V�P)�����e?�R>�<z�dڳgO��{�Un���F7�f5�/��{,�6k��;���y'��ƹ��[4���r'QK�w�mX�A@x~���Q�㑇Tx��h�xa�x
��?S�+Y/Ǎ�y�uߊ$�1"B%够N��.�<ȩT�dj@���<�g�	���w����a9Im "P2�h<�5�M16>��شQy!:��RG�"?$�V�
�#:"�O�Mcvn��$����+�
d����GR0M@�����f�&DY.�K�Py#i"
h�����:�/s�S���d��cI ����ξH�L�o�Kx~��xN#@�H����Q Wm|"�ks-K���'�q�ٟ��w��!���5R�_�sc�>6�3���x�����(���t��֏!� �_���G�
�DRU�Fu��,�A�^�ȕt��3cc��U�X�C����F"��1<6�<���K�C3聥��-_E��A.����ɨ�U��4�P�=�r�8+#�/�e^�AX�C��+\��e�,�BG�]�����k�1���N��	ײNi:��ִs�kV/B�M)�j�;-����zw�nG79��j�d�/7�VoA:ō�^�Q��Te.�.��z��ާ~�zչ�����5[B��<
�F�*���\t�>�����[�}��cu�d�H�F�C��͘����U�B2���ڊkY_r�=4:�x"�J&C�.���,w�3��6z����|tm7n�ʴ0]~Rk��F힓7*⻑����c��-��'I��e�O�����^�k��'��	ʲ��#��re~���&��Wa��OP�<0��b�#_�F%��؍�b��H��l���3$�৛cgh*=����	�G�aM����<B�L�!!tW�*����A�u�.�Ȋ�\�iI +�l.�W���ў��V唁^��]��A����s��,����ɠA�!A��.ow�v�|����:U@�'h�F�q�'o���ԫt18����6���5�"`�

�Z�ȓB�gZ�3:�熹�̱T},c#U@��ɥ�d̋�=��3���;()�Y}�����eŖզ��k�Jr�2�i��ư����gO<�/|�Q���Cpu�p�/u�x�
|��—��<�ő��ag�U��X��i���b,��\j�����.�5D��S�u:�v��z���fn�n;�~.�ҳO�9�E&e��f�ٹ��N��Bnr�h����\�R_SYNXꓲ�m��aIҼN'l�TñY=qGN��O�2N�=�,�a"�!�:~g����؜:�X
>F��Y��G+Dz�{���~����݅}��##�������j3t~X=�]�@��
-����C3OϠ�ُH$�3��c*���nX݆q���8q�|�p��Ȁgd�"������bhr9195�a�99��au+N�>��]d��־u�4&Y����9�Z�������94y�hk	���d|K�͉�`�ޓs���qz�����R� D'O���)ϡ���#Yz�X_�~��c�����ac�~{�&���v�:��S��m�
s��/��
gv�@��&q��C�C^������G�TЯ
�o��ш*�!�k�ڰ��G8�G9i����.l��&�y��	��f��n݌
���~����#w�v+�9
��G���Â��������`�������{`e��Lk�[�қZ#����56�޽��c�\�xQ���*�5�U�_^���L^��g�8���Jv�@=�@se
ʙsR��I��Е*p ��^Y�41J����F�2�	vٌ��x\����Zy=!�e����Z�G��q�qevpRļI?"4i�~6Y�)����_�<���r�x�V���?�.1�f��	���X�R��'�%����s�A^
�ڕ�i09��I��Y�8�[Rr,'~�)Y��T�K��@E��G�>c?�6�r���i>���.<���m	���o|���Q��y�$mA&&%_P'�_
��u@tP���rҰ<�f���IY�N�U���[f��~���ir5����K�-V3�4ENVv#�+�W�:ɽjK4y���M~?3�H$x�)�Ec8;2
MMk�	�4&�ոT-�5yϞ=%M2������:q�m��g6߂�z{�r@�~H�Qǖ��d��
��PX�ȑ$��W��47G1c�W��RX�R@���+�,[�M`Nܮ����$��e 4M��ܹs0�):t����хZ���B�$Z,��9�g����2��C�FP��n�W��IlrKK����v��ŀ
�w�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/popup_cancel_hover.png000060400000001762152455705240023145 0ustar00�PNG


IHDR��w&tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:090B06934AFB11E5A67AED1359B9D3AA" xmpMM:DocumentID="xmp.did:090B06944AFB11E5A67AED1359B9D3AA"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:090B06914AFB11E5A67AED1359B9D3AA" stRef:documentID="xmp.did:090B06924AFB11E5A67AED1359B9D3AA"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>n���fIDATx�b����6��Y@̀ς�k�8�#�4��䞃��G-@�	���4�	�hg� yd+;����Pqt� |M�Edy�L&��$�I�Lt�
��ˇ�}IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/select.png000060400000001006152455705240020540 0ustar00�PNG


IHDR$$���	pHYs�� cHRMz-�����RqE�f9!�'�V�IDATx��J�@E�K�*Ԥ-���q�_�•��ʅ_Խ+���A	�ibAM���`[�iZȅ�<�̙��Kr����-�h���;�@ "�q��Q�"`$"�c
E�`��(sM�p	��2�'0.�7��Z�Dk}�ͤ�(����$I��T������ֆ��)��1p��x[�H���$���
TsI��Vϭ�qp<�B�Z�?�_}b`��X�Q�
S	T�@%P	Tm;���\���c�@<<>��n�~��9@�*PκOf��
4��C�W迌E}f�Ƙ�ʹRI�~��ݮ�*?�h�H$�]��f��4�.�(Wń
'���
8ZS�p����6ˇN�c"��Na�<4*&�:���ֺ
�Dd�2ć����<�/y�ķPdIEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/popup_delete.png000060400000002231152455705240021747 0ustar00�PNG


IHDR2=50tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:1B686E6A4AFB11E5A199A66C9913D4EE" xmpMM:DocumentID="xmp.did:1B686E6B4AFB11E5A199A66C9913D4EE"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:1B686E684AFB11E5A199A66C9913D4EE" stRef:documentID="xmp.did:1B686E694AFB11E5A199A66C9913D4EE"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��Ol
IDATxڄ�?NBA�q�A""J�J"�;`��W �
��P�yc#�X���ĂF-5�W,��w�݄�I>쾙a��8�}l���K
����~��`Zw��i\�U�`|YC�Z�	�q���mj5{�B���p���zm�Oh��#|c�H��؎��@=5���UM�^��g��+��W9U�G����H�e������9�g���3�s#lv�a�@Wg?�S�5V~�y�)^�r��u�c	Mݿ��pro(b�glii��?�?rF0��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/close_icon.png000060400000001114152455705240021376 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATxڤ��JQƿ���Ԍ���M�6J�M@T����m}���t�BD�E�E(
B]u�`���teCI&��d�������=��3gn�$I�?�82�8i��m���N�Le?�\�Z�̭�|\.�2��O��m�y�S��~8�vE���^��Ⱥ�/����VW�7����l@��MS��Vvz�X��$�f͐n,�*7�M,�˪?9~,�&�a�/���j�p�����2�;8P�Ŧi���R�2�470�ab¶�7=���	,�R��g��v�h7�0P{^�;����oO&�3�lJ����a,��?=�!P��D�~ǒTLs�!d���f�������2`m^])�ԡ�H�oޖJ
� x�bV5�W��r�.���D�<#����S��w�u�`�k�q��iX�t{�nGQ~F�6���t���E��@�བྷ���~
(R�j�Q��s���ـ:�D��s.�a�������IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/arrow1.png000060400000002741152455705240020503 0ustar00�PNG


IHDRL�n�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:16FEF96EED7B11E4A268DD41B63C8E86" xmpMM:DocumentID="xmp.did:16FEF96FED7B11E4A268DD41B63C8E86"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:16FEF96CED7B11E4A268DD41B63C8E86" stRef:documentID="xmp.did:16FEF96DED7B11E4A268DD41B63C8E86"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>O��UIDATx�b���?�@*���@��*@��
@�
]#�>��B ƣ�-��jY��ĂYPL���/_�d�;g�ȯ_��8ԋ�AqZ�Kd[__�\Yi���'OXѤ����\�}�X�$?�_^^�ǎ..)R9y��4?{��S��Y��ߌgϞ�:u�$Ͻ{�8O�>%����������'))�IhX�[��@�M��ہXƹq�G_o�Թsg��F1-Z����������_��?2899�:���sP!'�W�\�,*�Wz�-'�w@�2���-ea`bb�ЌL��������������#��{�����Ad)7''+ؗ A����YXY�]�_yyy���'�� �����f^q	�?��z_455��������%Kd�����cNNο1�я}|}aq|�\����ݻ---?�<����Z�8o�\�?��URR������������Z��S,,,EBB�����E�|��
�۷o�]\\�e��>�����M�))2=���A�^�~Ųu��Ȩ�7�Ćnxoв���	T
Q;M���Z�].ֲw�rIEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/editor_zone_text.png000060400000002435152455705240022655 0ustar00�PNG


IHDRo��tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)" xmpMM:InstanceID="xmp.iid:E13D5E7BB06B11E49E70FD20254DEB2A" xmpMM:DocumentID="xmp.did:E13D5E7CB06B11E49E70FD20254DEB2A"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:E13D5E79B06B11E49E70FD20254DEB2A" stRef:documentID="xmp.did:E13D5E7AB06B11E49E70FD20254DEB2A"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�o��IDATx�b�:Ê����J`� (�74��*�B�A����ظ����9.�����z}#���橫B��89|���+_��v����>��ŋw��%� nn���|��@��k˫W7&L�z��o?�<y�����#n1?��r�ӧ��]���whР/_���3��S��w2?��{��ޅ�3������?@o�4����#�)gή^���߿��c7"ޞ=�T���;a��I�� � w�VAA �߿��ה�>�����Ī o}���?>���m��8bL��"QU/�������v�کׯ���t�������[�7����U��l9pp�߿Iʆ�͙���G*#��L@D���9edĀ$
6������$�1���9
 �0v�Z���IEND�B`�extensions/plg_editors_acyeditor/acyeditor/images/index.html000060400000000054152455705240020552 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/index.html000060400000000037152455705240017306 0ustar00<!DOCTYPE html><title></title>
extensions/plg_editors_acyeditor/acyeditor/css/acyeditor_template.css000060400000001172152455705240022472 0ustar00.acyeditor_delete {
	outline: 1px dashed #ab2e39;
}

.acyeditor_text{
	background:url(../images/edit_text.png) no-repeat top right;
	outline: 2px dotted #cbcf46;
}

.acyeditor_picture{
	background:url(../images/edit_picture.png) no-repeat top right;
	outline: 2px dotted #cbcf46;
}

.acyeditor_delete.acyeditor_text, .acyeditor_delete.acyeditor_picture {
	border: 1px dashed #ab2e39;
}

.acyeditor_picture img{
	opacity:0.5;
	-moz-opacity: 0.5;
	-khtml-opacity: 0.5;
	opacity: 0.5;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
	filter: alpha(opacity=50);
}

.acyeditor_sortable{
	outline: 3px double #5290db;
}
extensions/plg_editors_acyeditor/acyeditor/css/index.html000060400000000054152455705240020075 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/css/acyeditor.css000060400000013144152455705240020601 0ustar00.acyeditor_text, .acyeditor_picture{
	cursor: pointer;
}

tr.acyeditor_delete td.acyeditor_text:hover, tr.acyeditor_delete td.acyeditor_picture:hover{
	outline: 2px dotted #cbcf46;
}

.acyeditor_zoneeditionsuppression:hover{
	outline: 3px double #5290db;
}

.acyeditor_zoneeditionsuppression{
	display: none;
	top: 0px;
	left: 0px;
}

.acyeditor_zoneeditdelete{
	cursor: pointer;
	width: 100px;
	height: 26px;
	right: 0px;
}

.acyeditor_editdelete{
	cursor: pointer;
	background-image: url(../images/editor_zone_delete.png);
	width: 24px;
	height: 24px;
	float: right;
}

.acyeditor_edittext{
	cursor: pointer;
	background-image: url(../images/editor_zone_text.png);
	width: 24px;
	height: 24px;
}

.acyeditor_editpicture{
	cursor: pointer;
	background-image: url(../images/editor_zone_picture.png);
	width: 24px;
	height: 24px;
}

.acyeditor_btnplus{
	cursor: pointer;
	background-image: url(../images/editor_zone_plus.png);
	width: 24px;
	height: 24px;
	right: 24px;
	float: right;
}

.acyeditor_btnmore{
	cursor: pointer;
	background-image: url(../images/param.png);
	width: 24px;
	height: 24px;
	right: 24px;
	float: right;
}

.acyeditor_btnmove{
	cursor: move;
	background-image: url(../images/editor_zone_drag.png);
	width: 24px;
	height: 24px;
	right: 48px;
	float: right;
}

#legendBground{
	width: 70px;
	margin: 5px;
	float: left;
	font-size: 11px;
	color: black;
	line-height: normal;
	font-family: Verdana, Arial, Helvetica, sans-serif;
}

#colorSelector{
	cursor: pointer;
	width: 15px;
	height: 15px;
	float: right;
	margin: 5px;
}

#colorSelectorInput{
	width: 70px;
	height: 100%;
	border: none;
	padding: 5px;
}

#colorSelectorContainer{
	margin: 4px;
	display: inline-block;
	background-color: #cacaca;
	height: 25px;
	border: solid 1px #B0B0B0;
	border-radius: 2px;
}

tr.acyeditor_delete:hover td.acyeditor_enedition .acyeditor_zoneeditionsuppression{
	display: none;
}

.acyeditor_delete:not(.acyeditor_enedition):hover .acyeditor_zoneeditionsuppression, .acyeditor_text:not(.acyeditor_enedition):hover .acyeditor_zoneeditionsuppression, .acyeditor_picture:not(.acyeditor_enedition):hover .acyeditor_zoneeditionsuppression{
	display: block;
}

.acyeditor_zoneeditionsuppressionhover{
	display: block;
}

.acyeditor_copyButton{
	cursor: pointer;
	width: 100px;
	height: 60px;
	z-index: 998;
}

.acyeditor_copyButtonAfter{
	background-image: url(../images/duplicate_after.png);
	background-size: 100px 60px;
	background-repeat: no-repeat;
	float: right;
	z-index: 999;
}

.acyeditor_action{
	z-index: 998;
	cursor: pointer;
	height: 35px;
	display: inline-block;
	background-color: white;
	border: 1px solid #CCCCCC;
	width: auto;
}

.acyeditor_closebutton{
	cursor: pointer;
	width: 16px;
	height: 16px;
	background-image: url(../images/close_icon.png);
	background-size: 16px 16px;
	position: relative;
	float: right;
	z-index: 999;
}

.acyeditor_mask{
	z-index: 997;
	top: 0px;
	left: 0px;
}

.placeholder{
	outline: 2px dashed #444;
	height: 60px;
	width: auto;
	-moz-box-shadow: 0px 0px 4px 2px #ffffff;
	-webkit-box-shadow: 0px 0px 4px 2px #ffffff;
	-o-box-shadow: 0px 0px 4px 2px #ffffff;
	box-shadow: 0px 0px 4px 2px #ffffff;
	filter: progid:DXImageTransform.Microsoft.Shadow(color=#ffffff, Direction=NaN, Strength=4);
}

tr.ui-sortable-helper .acyeditor_zoneeditionsuppression{
	display: none !important;
}

tr.ui-sortable-helper{
	opacity: 0.8;
	outline: 1px solid #5290db;
	box-shadow: 1px 1px 6px #999;
}

.placeholder:after{
	content: url(../images/arrow2.png);
	position: relative;
	left: 10px;
	top: 20px;
	display: block;
	width: 0px;
}

.placeholder:before{
	content: url(../images/arrow1.png);
	position: relative;
	right: 40px;
	top: 20px;
	display: block;
	width: 0px;
}

.cke_source{
	white-space: pre-wrap !important;
}

.confirmCancel{
	color: #6190b9;
	padding: 10px 15px 10px 25px;
	font-weight: bold;
	font-size: 13px;
	text-transform: uppercase;
	border: 1px solid #93b7d6;
	border-bottom: 2px solid #93b7d6;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 15px 5px 0px 50px;
	cursor: pointer;
	background: #fff url(../images/popup_cancel.png) no-repeat 10% 50%;
	width: 100px;
	float: left;
}

.confirmCancel:hover{
	border: 1px solid #8baac7;
	border-bottom: 2px solid #678fb6;
	background: #adc7e0 url(../images/popup_cancel_hover.png) no-repeat 10% 50%;
	color: #fff;
	text-shadow: 1px 1px 2px #5a89b7;
	-moz-text-shadow: 1px 1px 2px #5a89b7;
	-webkit-text-shadow: 1px 1px 2px #5a89b7;
}

.confirmOk{
	color: #dc5d55;
	padding: 10px 25px 10px 15px;
	font-weight: bold;
	font-size: 13px;
	text-transform: uppercase;
	border: 1px solid #eeb6b3;
	border-bottom: 2px solid #eeb6b3;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 15px 50px 0px 5px;
	cursor: pointer;
	background: #fff url(../images/popup_delete.png) no-repeat 90% 45%;
	width: 100px;
	float: right;
}

.confirmOk:hover{
	border: 1px solid #d4615b;
	border-bottom: 2px solid #b13e38;
	background: #eb837d url(../images/popup_delete_hover.png) no-repeat 90% 45%;
	color: #fff;
	text-shadow: 1px 1px 2px #c54e48;
	-moz-text-shadow: 1px 1px 2px #c54e48;
	-webkit-text-shadow: 1px 1px 2px #c54e48;
}

#confirmBox{
	width: 370px;
	height: 100px;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #d6d6d6;
	padding: 5px;
	border-radius: 5px;
	box-shadow: 1px 1px 5px #dddddd;
	-moz-box-shadow: 1px 1px 5px #dddddd;
	-webkit-box-shadow: 1px 1px 5px #dddddd;
	position: absolute;
	z-index: 999;
}

#acy_popup_content{
	background-color: #fff;
	padding: 20px;
	text-align: center;
	color: #706f6f;
	height: 60px;
}

div[name="emojipopup"] .cke_dialog_ui_vbox_child div.cke_dialog_ui_html{
	height: 250px;
	overflow-y: auto;
	overflow-x: hidden;
}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/acymediabrowser/icon-16-mediabr000060400000000753152455705240026463 0ustar00�PNG


IHDR�abKGD�������	pHYs��tIME�8���MxIDAT8�œ?�a�����O��u7���B@ld����~�+r�"�'H�"�s� b%�D�.(
ﻓf�́Db����w�g�y�wH����$IPU�/�1�v��E�ND~���-�,;��z�������A`�f���b��9�N�50���@UoU�IUoOԼ>���n�h4Ω���<��}��sl�����]�W��}M��z0��g ���G<�+��0�G��M�Z��T*�Oi���ֲ����Z��MD�F��ȮV���f�x<�]���|>��j��v1Ơ�8��f�a�^�\.��by�I�Ļݎ<��( �2�<�@᝗V�km��d�*�
#=30�ni�K��7�`��)��8IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/acymediabrowser/plugin.js000060400000002323152455705240025612 0ustar00(function() {
	var a= {
		exec:function(editor){
			if (parent.IeCursorFix)
			{
				parent.IeCursorFix();
			}
			if (parent.SetIgnoreDeselection)
			{
				parent.SetIgnoreDeselection();
			}
			var itemElement = document.getElementById('AcyLienMediaBrowser');
			if (itemElement)
			{
				if (FireClick)
					FireClick(itemElement);
			}else if(parent.FireClick)
			{
				var itemElement = parent.document.getElementById('AcyLienMediaBrowser');
				parent.FireClick(itemElement);
			}

		}
	},
	b='acymediabrowser';
	CKEDITOR.plugins.add(b,{
		init:function(editor){
			editor.addCommand(b,a);
			editor.ui.addButton("acymediabrowser",{
				label:editor.lang.acymediabrowser.toolbar,
				icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-mediabrowser.png",
				command:b,
				toolbar: "insert"
			});

			editor.on('doubleclick', function( evt ){
				var element = evt.data.element;

				if ( element.is( 'img' ) ){
					var itemElement = document.getElementById('AcyLienMediaBrowser');
					if(itemElement){
						FireClick(itemElement);
					}else{
						itemElement = parent.document.getElementById('AcyLienMediaBrowser');
						parent.FireClick(itemElement);
					}
				}
			});
		}
	});
})();
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/acymediabrowser/index.html000060400000000054152455705240025752 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/icons2.png000060400000024063152455705240022506 0ustar00�PNG


IHDRP��� IDATx��}{p���k�<43�G3�Go!$Y�Coa$�Q�#�pH�ݥ�.�w	���u��/Ky�r�8K�˽�f�����x��
666�lc[�,[�y��̹Lw���{fd1�U]�|������q�s����`?�gԩ3u�����}I,���$�� ��$�v��a�cR�5��|w]]�u�ϟ������+V��v�޳g�Vϛ7���o�l��sj� @$�I(P�lٲ�~2d�7����	�Xclcl1�q���H���Ye9^]1�LB�<ov�\;�v;f͚"�SO=�Ƕ��MY	b�"�H����������ᰭ���7�
8��9�V��A����F"�FDc]]]oRYYY�S��&$�I0ƾ��@Yww�vA����h��"���7�c����x���
CCC1"
0ƴ	��q�B!�L&��d��q�V+jjjp��Y�x��C]����0�Lp��H&��d29:11qz�ڵ�…w0�"ٚ��)��lB~����|Ʒ@D����n|>q���u�����(▯��f��A066��g�
[�n��==HDC˗/�E������D%�fe9]�`-c�	Ap�…����'3Ǝ�E�1&��1����w����q�����h3g�|�16�U&��z����M7��v���[o������D4�W(7
��D"q��i�|� ��k�=��T�Y�:��9s����G�A��j�l06c�sAA��$��(��?B��R-i�2%h��s�*���ȪQ.�KjR0`��2��X��*��������������8$	D�Q��q������ܾgϞ��}>�؝w�I˖-�w�y'�L&�������w�ŋӏ�c����kooo����M�я~�H
��Z|���1y��"œ9s@Dؼy3��c��16�{�1֣���۷o?�f͚F�Á��a

ahh(9::�GO;��A��;�>[K��f3�<�L�(D�(�2(ONNb�ڵܞ={���Bp��^�d�i>�z�D�����˗��3g�`Ϟ=r=-��>���g�u3�b��K�p�`�f�J��̞=�x����("���$JKKQ]]���<��3�p�
��ؿ|ӦM�����1LLL����G}49k֬����48O����)"�KD����'����_��Ҡ%����x)
ԭH�p�or�v8'��r���w����A�Z�Gs��s��?

��t�M�Ϸ���~���s�΍:th�Y"Q'=u��77��n\�t�Җ-[>�c쭬0�<��#?�D"�P(��W�\��^�4�����8��8�n��v��=	�����p����|>��h4�;�,--kii!�D=lŔf:�V�l6��q��.�&��D�y�ԩ�>��l��~��~Q������H�$��D�ĥ���s5I$q@D�xME�a����4�}�u{S�T1�I�W?2�>&"�I�u�]W�E �ba�5H_c(:�.�S����g�����8
.��cL���4��)�����1A��4�j�Z`�	�R,�1�1/!�|F�E���l^��@��ŀ�/*26mX��Ik
�L�YW7%���*�}1����1�d�<��((HgnΜ9x衇PRR���A ��#�H���B!��~�bi�8�b�XF! ��� ��,�{�⦵f:Q�Ww�[
���5b����f3�H$�L&Өhu�yAPTT�Q�+---���Z��Y	�B�c�`��Ճ����u8���1444�R�IæM������������%��F�\s
uww���=ND+�����ϻ���X���8G2�ikk}饗�z$��Q����N�E"z[\rf���1P�k�TA�AC�������/,�v;�vmY��X�9�|g���:�1c!�0��V/��f���k	�����)���;�β��b0�p��Ilذa)���{{{{w̛7��㗿��v7pPZZ�,���111��
7*��^YY���1���!�L����������5gϞťK�011oK����3g�Ν;���I��~���#Dd�o�w��U�=��pp�n��F�����@�D�Ў;..\���W�����H����w߂����}"�S�OD�����ӣ�>�V���lllL<��S�'�/i�466Rss�"Tg���׾��WtF��jkk/��ՙ���?}��^M�8��|���+Z���x|��V��m޼�i"�_'߀��z#�Uyծ��#-�\�����\.R�Q-��X,����J"P�!�a�Xt�D�7c���\�Ma����l����nhq�Ք��i�I@ID��K��DD���ĩ����mZ��aֱn�Ǧȟ��~��@��\��'���c�`@�^0�B^�D4o��t	HD���^0�/4�@\`�A/��ٻ�����EEEcH�)�Qm�ن+**���������K���V�P��`+((ذ|��R�ϷG���w�����,Y�`�Z#��Z�/,[����c``�=��������'[[[b��m��d29���w��:s�ȑ�c��G�,�o�͛�����B<Gmm-N�8x���,//��16���X���aÆã��1�χ�����&�|��=���+�ʚD"'=�/��褴���"^�w=c�@ZY-H�5m����F�� 8��ʝ;w~���l�`Cgg�|�Ͷ�����,**z�������;�ڸ��v�}h```g{{{x˖-OQ)���믿>��ӳ����R��l�� ��C�>���[�:m)�񎎎�D�.��|	�L�S "���<��s���>��R~ww�w�v��~��hII�D4m�۷o�5�����կ�*�
����ۈԙ�Ck׮�=9�Q/�NNыDT����i"�q�V'0���^�`�C/�B��n'q��^!�y�7x���o��9s&���o���H}��خ&p��ѣ|cc�쾾� D�&�m��c��{�nSS��)���ND�(e��q1o��j͜\Ϝ93��:���%�4�S6��������F�,H�S��i����Қ����|�&(�kq!��+�&��a�_M�!�+ƥPp��&��.�(�49�8�����i��샌��w�y�(���PPP��jD��D�[ZW���S�&g\�f��~�����\���s984`������^��|1!(�=���vp��	EDH&��x���?��*��#�<BV�5�!�`͚5�0��w�l6C�FzH&���b���ǫd�Nb#o������lFII	L&S�
R��ŋ��b�q�nϘE�y���!"��L�1>�쳟«l�X�� �~
���s6`���4Z[[��2�s57���q��K��c�c�!%�t��I�ɬ��j�	g��/Rg�����lj���d�޻��?�b�
]�Ҏ�K����"��F��������Lu����j�^�XCC!�Jn����3�ҹ6��bY?00�7o|>���v;d�E����~���sGaa�Qw���
�'	D"tvv:l6�I�1����S�NٝN��4�<Ap��Q���`�̙D��011���a?~<�������͡PH�抚�)7O��� H�N��\VV�D"���� �I� ��h`�ን���zE��f�D�|I�i������~�*�_�
i�.�1���D�`���@D<�NI�Ts��xr7A�.ADR��P�2�����8xE<����I}�u�3�����v���|�kd�b7���Yŋħ ?�(�?��K�O�$p����%���-��>�*@D�&���B�u�.�N����ۑn�������~`�Z���2)�Edʋ��j�cL��J�I"*G��8�ӑ��ٳ�Uq�Ѻu�
y��_(�����j�hMyfڢ�����s���!9a��SxjP�������x<o�a)��k荓���J&��ģڕ����2�����	�{PXX�˳�,}��=����X,�W��鍬�D��T��|~�g?_p��W6_��Լ!͸Q��v����8oxE� �|A�V��IDS��/h������o�;Ř/0p�c��j����q�V�_�N�@���� @D��:�-
���Z��햚�W�ٯ��N�	H:���)�O��T°���>�ar%�}@D�GGGGw9
��}Y������W�Ü}��ދ�|A��������)�ſ�T�}�K^_PB�l"Ƙ��#��-�XV�a���U
����.**��~L��2�)[U u���V�5���D���#���X�ŷ���N~�!&''/1�����hii���^�9+b�֭[���	���LG�a�PRR�9s�����D�D"�p8,����q����?��?e�-�F��ðX,P,��[�D�x<.W�n��f,�j"�l)��	��J5}�J��,h3l4c���l�B�͉�*q�ۄ��I$	0���!�	�'-�h<���$ cݺu��^�ź�:���
���o[�j�J�=E��Vg+++�@aaa���=Dt!���T��D�]"jT�qѯS\q��Hyx-��=���;ҸlҬ΀@_/T���}���pF(A����z��pD�͛GMMMd�Z�H�X�"�/����(�$狋�鮻��lc�dǏ��Çq��9�%��鮫�ÁX�LR��`P��qjjjPWW���N�>
@!%'	W`�q�8В��Fe��x<A2*)��I�^��&	��Ľn��0���EAAA��P��ccc��&��h4���v����0�L "��a��dSr���r+���)"��jժ-����jkk�uuu�z/�[�nI�+׈�ߍ�~�LD~Qo\ �{�}�S΋��Qo�qY��*���7`���i�^���BʰS��W,�&T�9HD)V*�555TUUE�4"�����HD��P(��պ[y���n���N[��Z��C��oDNRp��DD�����D���(_�Hduu5Q��H���f;�KVVV�Z�s��i��j�[YY��1���lS�����o��6JɊQ���


������uR ��X�z�V��(��]�b��+V��z
W�^����BI�'��(�@y���L{[,�Z�W����Ĩ�Zi���s�,��`0x�z����������0��c,YQQ��<c�/gϞ=�1v��jmX�h���ӂ ����իWo޲eˣ�˖-[#�)��Tl�t���g��#��]]];�c�����j��������Dd&��-Z������Ν;AD;�(�3�����+��L�檪�ᎎ�D{{;���Ӭ��:gg̘1LD���ڤM�姐
k׮u8���|����n����AO��R�f���b��'�(|��j��L?R��vcj'$R�U]�+��^�t)-]��D"���4׌1٭[YYo2�`2�PVV��������UUU������k/�	h��m���������g�������+�1J�<fh{��x�����>�wH>lܸ���t�d2ܸq��10p�@O`�#l��\��<�ӓ����r?Oq�/0�6W��1j�\�(wDAA�,�y��=�|t}��g�
�:����
@��Y�w)kQ����Z��&����n%"y����U��'=���i
������#}Z��<F���}pZ�Q�]TT�Ҧ�c
�Jg��}��b�d�gԏQ�'�˴#	"�F|g_t��|�!d�f籊��j��\BF-qo ;�kaB��JJJ�8B�B
Y��#d2��R���2�y�Z2Z�QK�O�1f��>��?�Ǩ%�s>[TWW�ܹs����L&xB��&��:::h�ܹ$9\������18���x㍌A%o���לN� �1�ӧO���l�ɓ'a6�!� c�oԷg��� �ʲ�L�kt�-�Pkkk��bkk+�r�-�D�5SF�,))�L)��+P?��


���O���
":^RR�Yپ��o�WD�(�d�\D���X�'�����B��=�P��!�=ADWl�4��UPb�Ie���~*<S}}=,X BF��F�@.���f"ž2�477�…%N�����(
����ΝÛo��la���H�7-X����r;v6�
;v�Hyp�è��@(��8$U�C<Ͽ
�PQQ��k�ܹs���y�d�Vwcl����V� ;m�`hhH�}2�u�~\"������_�Z�Dy�_Ќ�eZ�X
��U�T��f�D`��ij��	�X�� A���s가ƥ��h��P�V�����SP*PWP�k5Y�������(�Eb���w��'�P[[�5ւ��+���2�ލX>5|����S��3]]�!맫+2X����js^��˓�qy4�Fz>M3.��K��7t��O�].��OW/(Y���񮮮���~����^$b���DS/455�� ϋ>*A��n�=���C�����kHʕ�|���Z����h��f�#D��p��7o���~��	H��2HwV�N�r�#���*���鱮A�F@\�с�IK=�P;�����)f��PA�B{���ԔU477�:��酴��ܸ��4�����M�KW�r����%����	�-s��2�ps�t�L@���|A�z�"�B��GZ>����.���.ч�+|~�]dy��+c�U�����a֬Yoz<��?��L����QRR������t���#��,���@#���gM]]�kxx8��?��cJ7�b����cl�]�/^�F��x��kX*�&���6�
�hEEE�U�$�t:
��ߏ%K��ժ�
������ŋ���eL여Ps������D"�y�{�K�+�`��㨯��1&�4V!�Hu�H����555��x�w�Y!�9�n��ǝ����,))Y�Q[XHG���4'mmoo?�p8�g�^�ti�4bOb��ϨXc�l
���q�x[[�q\`hh�Y��v�u9������~��-^��R�w�J��K���������F�s�;KKK�]�d��/�00�Bv�������477g%����x�R^�j�
�W��*e�>�O��^�W{�!n��1�N�I��M���n�����*��q())!�lu8�5k�vD[,+�q��SQQ�=�r����!�ټ�Yi��Ƌ�MrOgg�m6����7�����cs��]`��vJ
���$���ϟ��{1kCggg����NL�ʿ�N�3
��;t�MAc�%Mq�(�##K9�Di:�W�̍i���-��O
�t��,�RM
5�r�&rѓ�DTKDg�����!�k��lQQ�>]1�"�'/U
Y/�'@�}҆~��� ��E]!����l6������z�������'��^`U��Η̝;wYqq������o6��@gg�m���	R'rw_ggg�1����Op�W������$]П�\��唲y�:H?��mC'���0�W8����{���1�H� L�T�bdK�y���8���
�@D�Z��X,�F��DR.3�i�1�l6̘1���$"J(�����:;;��`��y=�X,�O��ٳ��"h}�z2��Z�ϰ5�I3�L��X�s�X,y�q>���v��|�9>dt"R+:9�***��@'<U��3�j�ȶV�uY�V�R�`b��N"��.0`�s'R�/�>RMӃ�#�������_�2�Fq�ر�	�2�^����={6��3�Ej��0�Mj��_�ٯ~��N�ǃx<�d2	����"����ĉ�<�e�@,�F%o�IDAT\�pEaaa���0� G	���p8p�ݨ��DMMM����]�`���2�ry�pUUU�����y��a����N�%%%���b�ڵ+���� "�'��w�}������jll$q�]�������i�8kɜ��k쫏?��f�},�]��Dt�����d�&$�����w�f�fM"�o�ʕ�u	���D�R����0`��'����Q7|����@΁fKK��Z�dz
)��iu�#-��������f�����d2�t�ܹ/x�8��0����\sMKQQ�V+���da2�0::�W_}u���R3�^ZZ�����p8�X8�'\�`� ����+//oݴi������~u���ctt��8�s3gΜ�y����� `bbCCC�|�����1��7kkkgΜ���sϡ���@@���	EEEKvtt��g��o1�>P�}�O~�-�����C�6��l6��Ǐ�K�3ߙ��+W�'�����l�FD�R6��d<�DDn����`�C/z����r��燗���������j�#�H|�Q
�y�9�	��%+�)�������F��>���-��1�#G���7�%����������z$	��h4���1���}���~sxx8 �O'	444����@�WWW��� "���(�~?���,]���E�=����P(���J�L@��,b����}��f����������b1y�]>,,I�X,�����w�}��H��;;::֏����br9�k@n�t����}��MH逿a��[�x�@  s*�����x�.]�<��3[8
�3�����?�r�…�X,�aZ���PXX��:���ʿϜ9�`�K�%��d2	A�D�z��=��Q��=^�w���t�1v'c,���O���lF�S���ın�a=syy�j���b������mhhX��2AZҢl���X"�0����g�U,nkksI��^��rll�oc�~��####�B�Unll�f2��c�����t:QUU%wTAAN�:�@ ���͆d2�ƻ�{�ӧO�l``�}ttt��b1K�"�,�1�n-��<Ϟ;v��|����~C���1�W�R�k3?j�VH�3��恖[o��z�!�;w�Mgٖ����B4Ekk��f�C=����{B�����	����t�hiiq
�p��'���h4����	�-/������8���}�����bg***��C�����=��ҥK���B�Pu<��ٳ3�<�t:q���Ѫ��c7�p�1��ޥK�b�\s��]���I����/b���~�a�`���~����Ej	�ZM�����'��=y��e����VWWG���k������8����<"�^8�d2I/��R����+W��f�ڸIm�'���y<�:�]TT������+.��[�+K�9s����y��� FGG��o�s@D�iݞ1K\ijkk�z�j…p���)*b柸	3f�@ii��;	�x###�«�	PTT��S�r�:�O��o��x:�����X5�$$�v�*P�q�GZ�-q�"�����|��׾&WRB�9so��VZ���i�*�9k�����9�?>x���k�A�H$����;wn���dF�,H�	�"?�z{{[�c-��\D�-M�w1����dVV"B<���c�JN���H�3��H�ꑚ��M
�SeJx��U*���H	A099��ʧp&ǝ� ��	�Wi�A��t�0p�#�a��:�|A\k���sS�6R�F��X��s����D�H.\�uB����MR��
"*T��5_���p�c�n�s6A�i|��@G/�|���+E�Ԝ�"k��y���v�R*�:�������_���rx�^X�֌Ej�#�u�\,g�^�	Dd3u<�f6A��n7y�^]!�#�����d�����<׬��XG2p���F\��zIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/clipboard/dialogs/paste.js000060400000006430152455705240025634 0ustar00CKEDITOR.dialog.add("paste",function(c){function h(a){var b=new CKEDITOR.dom.document(a.document),f=b.getBody(),d=b.getById("cke_actscrpt");d&&d.remove();f.setAttribute("contenteditable",!0);if(CKEDITOR.env.ie&&8>CKEDITOR.env.version)b.getWindow().on("blur",function(){b.$.selection.empty()});b.on("keydown",function(a){var a=a.data,b;switch(a.getKeystroke()){case 27:this.hide();b=1;break;case 9:case CKEDITOR.SHIFT+9:this.changeFocus(1),b=1}b&&a.preventDefault()},this);c.fire("ariaWidget",new CKEDITOR.dom.element(a.frameElement));
b.getWindow().getFrame().removeCustomData("pendingFocus")&&f.focus()}var e=c.lang.clipboard;c.on("pasteDialogCommit",function(a){a.data&&c.fire("paste",{type:"auto",dataValue:a.data})},null,null,1E3);return{title:e.title,minWidth:CKEDITOR.env.ie&&CKEDITOR.env.quirks?370:350,minHeight:CKEDITOR.env.quirks?250:245,onShow:function(){this.parts.dialog.$.offsetHeight;this.setupContent();this.parts.title.setHtml(this.customTitle||e.title);this.customTitle=null},onLoad:function(){(CKEDITOR.env.ie7Compat||
CKEDITOR.env.ie6Compat)&&"rtl"==c.lang.dir&&this.parts.contents.setStyle("overflow","hidden")},onOk:function(){this.commitContent()},contents:[{id:"general",label:c.lang.common.generalTab,elements:[{type:"html",id:"securityMsg",html:'<div style="white-space:normal;width:340px">'+e.securityMsg+"</div>"},{type:"html",id:"pasteMsg",html:'<div style="white-space:normal;width:340px">'+e.pasteMsg+"</div>"},{type:"html",id:"editing_area",style:"width:100%;height:100%",html:"",focus:function(){var a=this.getInputElement(),
b=a.getFrameDocument().getBody();!b||b.isReadOnly()?a.setCustomData("pendingFocus",1):b.focus()},setup:function(){var a=this.getDialog(),b='<html dir="'+c.config.contentsLangDirection+'" lang="'+(c.config.contentsLanguage||c.langCode)+'"><head><style>body{margin:3px;height:95%}</style></head><body><script id="cke_actscrpt" type="text/javascript">window.parent.CKEDITOR.tools.callFunction('+CKEDITOR.tools.addFunction(h,a)+",this);<\/script></body></html>",f=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?
"javascript:void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+'})())"':"",d=CKEDITOR.dom.element.createFromHtml('<iframe class="cke_pasteframe" frameborder="0"  allowTransparency="true" src="'+f+'" role="region" aria-label="'+e.pasteArea+'" aria-describedby="'+a.getContentElement("general","pasteMsg").domId+'" aria-multiple="true"></iframe>');d.on("load",function(a){a.removeListener();a=d.getFrameDocument();a.write(b);c.focusManager.add(a.getBody());
CKEDITOR.env.air&&h.call(this,a.getWindow().$)},a);d.setCustomData("dialog",a);a=this.getElement();a.setHtml("");a.append(d);if(CKEDITOR.env.ie){var g=CKEDITOR.dom.element.createFromHtml('<span tabindex="-1" style="position:absolute" role="presentation"></span>');g.on("focus",function(){setTimeout(function(){d.$.contentWindow.focus()})});a.append(g);this.focus=function(){g.focus();this.fire("focus")}}this.getInputElement=function(){return d};CKEDITOR.env.ie&&(a.setStyle("display","block"),a.setStyle("height",
d.$.offsetHeight+2+"px"))},commit:function(){var a=this.getDialog().getParentEditor(),b=this.getInputElement().getFrameDocument().getBody(),c=b.getBogus(),d;c&&c.remove();d=b.getHtml();setTimeout(function(){a.fire("pasteDialogCommit",d)},0)}}]}]}});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/clipboard/dialogs/index.html000060400000000054152455705240026153 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/clipboard/index.html000060400000000054152455705240024531 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/sourcedialog/dialogs/index.html000060400000000054152455705240026674 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/sourcedialog/dialogs/sourcedial000060400000001411152455705240026752 0ustar00CKEDITOR.dialog.add("sourcedialog",function(a){var b=CKEDITOR.document.getWindow().getViewPaneSize(),e=Math.min(b.width-70,800),b=b.height/1.5,d;return{title:a.lang.sourcedialog.title,minWidth:100,minHeight:100,onShow:function(){this.setValueOf("main","data",d=a.getData())},onOk:function(){function b(f,c){a.focus();a.setData(c,function(){f.hide();var b=a.createRange();b.moveToElementEditStart(a.editable());b.select()})}return function(){var a=this.getValueOf("main","data").replace(/\r/g,""),c=this;
if(a===d)return!0;setTimeout(function(){b(c,a)});return!1}}(),contents:[{id:"main",label:a.lang.sourcedialog.title,elements:[{type:"textarea",id:"data",dir:"ltr",inputStyle:"cursor:auto;width:"+e+"px;height:"+b+"px;tab-size:4;text-align:left;","class":"cke_source"}]}]}});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/sourcedialog/index.html000060400000000054152455705240025252 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/sourcedialog/plugin.js000060400000001226152455705240025113 0ustar00
CKEDITOR.plugins.add( 'sourcedialog', {
	lang: 'en', // %REMOVE_LINE_CORE%
	icons: 'sourcedialog,sourcedialog-rtl', // %REMOVE_LINE_CORE%
	hidpi: true, // %REMOVE_LINE_CORE%

	init: function( editor ) {
		editor.addCommand( 'sourcedialog', new CKEDITOR.dialogCommand( 'sourcedialog' ) );

		CKEDITOR.dialog.add( 'sourcedialog', this.path + 'dialogs/sourcedialog.js' );

		if ( editor.ui.addButton ) {
			editor.ui.addButton( 'Sourcedialog', {
				label: editor.lang.sourcedialog.toolbar,
				command: 'sourcedialog',
				icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/sourcedialog.png",
				toolbar: 'mode,10'
			} );
		}
	}
} );

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/table/dialogs/table.js000060400000020701152455705240024734 0ustar00(function(){function r(a){for(var e=0,l=0,k=0,m,g=a.$.rows.length;k<g;k++){m=a.$.rows[k];for(var d=e=0,c,b=m.cells.length;d<b;d++)c=m.cells[d],e+=c.colSpan;e>l&&(l=e)}return l}function o(a){return function(){var e=this.getValue(),e=!!(CKEDITOR.dialog.validate.integer()(e)&&0<e);e||(alert(a),this.select());return e}}function n(a,e){var l=function(g){return new CKEDITOR.dom.element(g,a.document)},n=a.editable(),m=a.plugins.dialogadvtab;return{title:a.lang.table.title,minWidth:310,minHeight:CKEDITOR.env.ie?
310:280,onLoad:function(){var g=this,a=g.getContentElement("advanced","advStyles");if(a)a.on("change",function(){var a=this.getStyle("width",""),b=g.getContentElement("info","txtWidth");b&&b.setValue(a,!0);a=this.getStyle("height","");(b=g.getContentElement("info","txtHeight"))&&b.setValue(a,!0)})},onShow:function(){var g=a.getSelection(),d=g.getRanges(),c,b=this.getContentElement("info","txtRows"),h=this.getContentElement("info","txtCols"),p=this.getContentElement("info","txtWidth"),f=this.getContentElement("info",
"txtHeight");"tableProperties"==e&&((g=g.getSelectedElement())&&g.is("table")?c=g:0<d.length&&(CKEDITOR.env.webkit&&d[0].shrink(CKEDITOR.NODE_ELEMENT),c=a.elementPath(d[0].getCommonAncestor(!0)).contains("table",1)),this._.selectedElement=c);c?(this.setupContent(c),b&&b.disable(),h&&h.disable()):(b&&b.enable(),h&&h.enable());p&&p.onChange();f&&f.onChange()},onOk:function(){var g=a.getSelection(),d=this._.selectedElement&&g.createBookmarks(),c=this._.selectedElement||l("table"),b={};this.commitContent(b,
c);if(b.info){b=b.info;if(!this._.selectedElement)for(var h=c.append(l("tbody")),e=parseInt(b.txtRows,10)||0,f=parseInt(b.txtCols,10)||0,i=0;i<e;i++)for(var j=h.append(l("tr")),k=0;k<f;k++)j.append(l("td")).appendBogus();e=b.selHeaders;if(!c.$.tHead&&("row"==e||"both"==e)){j=new CKEDITOR.dom.element(c.$.createTHead());h=c.getElementsByTag("tbody").getItem(0);h=h.getElementsByTag("tr").getItem(0);for(i=0;i<h.getChildCount();i++)f=h.getChild(i),f.type==CKEDITOR.NODE_ELEMENT&&!f.data("cke-bookmark")&&
(f.renameNode("th"),f.setAttribute("scope","col"));j.append(h.remove())}if(null!==c.$.tHead&&!("row"==e||"both"==e)){j=new CKEDITOR.dom.element(c.$.tHead);h=c.getElementsByTag("tbody").getItem(0);for(k=h.getFirst();0<j.getChildCount();){h=j.getFirst();for(i=0;i<h.getChildCount();i++)f=h.getChild(i),f.type==CKEDITOR.NODE_ELEMENT&&(f.renameNode("td"),f.removeAttribute("scope"));h.insertBefore(k)}j.remove()}if(!this.hasColumnHeaders&&("col"==e||"both"==e))for(j=0;j<c.$.rows.length;j++)f=new CKEDITOR.dom.element(c.$.rows[j].cells[0]),
f.renameNode("th"),f.setAttribute("scope","row");if(this.hasColumnHeaders&&!("col"==e||"both"==e))for(i=0;i<c.$.rows.length;i++)j=new CKEDITOR.dom.element(c.$.rows[i]),"tbody"==j.getParent().getName()&&(f=new CKEDITOR.dom.element(j.$.cells[0]),f.renameNode("td"),f.removeAttribute("scope"));b.txtHeight?c.setStyle("height",b.txtHeight):c.removeStyle("height");b.txtWidth?c.setStyle("width",b.txtWidth):c.removeStyle("width");c.getAttribute("style")||c.removeAttribute("style")}if(this._.selectedElement)try{g.selectBookmarks(d)}catch(m){}else a.insertElement(c),
setTimeout(function(){var g=new CKEDITOR.dom.element(c.$.rows[0].cells[0]),b=a.createRange();b.moveToPosition(g,CKEDITOR.POSITION_AFTER_START);b.select()},0)},contents:[{id:"info",label:a.lang.table.title,elements:[{type:"hbox",widths:[null,null],styles:["vertical-align:top"],children:[{type:"vbox",padding:0,children:[{type:"text",id:"txtRows","default":3,label:a.lang.table.rows,required:!0,controlStyle:"width:5em",validate:o(a.lang.table.invalidRows),setup:function(a){this.setValue(a.$.rows.length)},
commit:k},{type:"text",id:"txtCols","default":2,label:a.lang.table.columns,required:!0,controlStyle:"width:5em",validate:o(a.lang.table.invalidCols),setup:function(a){this.setValue(r(a))},commit:k},{type:"html",html:"&nbsp;"},{type:"select",id:"selHeaders",requiredContent:"th","default":"",label:a.lang.table.headers,items:[[a.lang.table.headersNone,""],[a.lang.table.headersRow,"row"],[a.lang.table.headersColumn,"col"],[a.lang.table.headersBoth,"both"]],setup:function(a){var d=this.getDialog();d.hasColumnHeaders=
!0;for(var c=0;c<a.$.rows.length;c++){var b=a.$.rows[c].cells[0];if(b&&"th"!=b.nodeName.toLowerCase()){d.hasColumnHeaders=!1;break}}null!==a.$.tHead?this.setValue(d.hasColumnHeaders?"both":"row"):this.setValue(d.hasColumnHeaders?"col":"")},commit:k},{type:"text",id:"txtBorder",requiredContent:"table[border]","default":a.filter.check("table[border]")?1:0,label:a.lang.table.border,controlStyle:"width:3em",validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidBorder),setup:function(a){this.setValue(a.getAttribute("border")||
"")},commit:function(a,d){this.getValue()?d.setAttribute("border",this.getValue()):d.removeAttribute("border")}},{id:"cmbAlign",type:"select",requiredContent:"table[align]","default":"",label:a.lang.common.align,items:[[a.lang.common.notSet,""],[a.lang.common.alignLeft,"left"],[a.lang.common.alignCenter,"center"],[a.lang.common.alignRight,"right"]],setup:function(a){this.setValue(a.getAttribute("align")||"")},commit:function(a,d){this.getValue()?d.setAttribute("align",this.getValue()):d.removeAttribute("align")}}]},
{type:"vbox",padding:0,children:[{type:"hbox",widths:["5em"],children:[{type:"text",id:"txtWidth",requiredContent:"table{width}",controlStyle:"width:5em",label:a.lang.common.width,title:a.lang.common.cssLengthTooltip,"default":a.filter.check("table{width}")?500>n.getSize("width")?"100%":500:0,getValue:q,validate:CKEDITOR.dialog.validate.cssLength(a.lang.common.invalidCssLength.replace("%1",a.lang.common.width)),onChange:function(){var a=this.getDialog().getContentElement("advanced","advStyles");a&&
a.updateStyle("width",this.getValue())},setup:function(a){this.setValue(a.getStyle("width"))},commit:k}]},{type:"hbox",widths:["5em"],children:[{type:"text",id:"txtHeight",requiredContent:"table{height}",controlStyle:"width:5em",label:a.lang.common.height,title:a.lang.common.cssLengthTooltip,"default":"",getValue:q,validate:CKEDITOR.dialog.validate.cssLength(a.lang.common.invalidCssLength.replace("%1",a.lang.common.height)),onChange:function(){var a=this.getDialog().getContentElement("advanced","advStyles");
a&&a.updateStyle("height",this.getValue())},setup:function(a){(a=a.getStyle("height"))&&this.setValue(a)},commit:k}]},{type:"html",html:"&nbsp;"},{type:"text",id:"txtCellSpace",requiredContent:"table[cellspacing]",controlStyle:"width:3em",label:a.lang.table.cellSpace,"default":a.filter.check("table[cellspacing]")?1:0,validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidCellSpacing),setup:function(a){this.setValue(a.getAttribute("cellSpacing")||"")},commit:function(a,d){this.getValue()?d.setAttribute("cellSpacing",
this.getValue()):d.removeAttribute("cellSpacing")}},{type:"text",id:"txtCellPad",requiredContent:"table[cellpadding]",controlStyle:"width:3em",label:a.lang.table.cellPad,"default":a.filter.check("table[cellpadding]")?1:0,validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidCellPadding),setup:function(a){this.setValue(a.getAttribute("cellPadding")||"")},commit:function(a,d){this.getValue()?d.setAttribute("cellPadding",this.getValue()):d.removeAttribute("cellPadding")}}]}]},{type:"html",align:"right",
html:""},{type:"vbox",padding:0,children:[{type:"text",id:"txtCaption",requiredContent:"caption",label:a.lang.table.caption,setup:function(a){this.enable();a=a.getElementsByTag("caption");if(0<a.count()){var a=a.getItem(0),d=a.getFirst(CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT));d&&!d.equals(a.getBogus())?(this.disable(),this.setValue(a.getText())):(a=CKEDITOR.tools.trim(a.getText()),this.setValue(a))}},commit:function(e,d){if(this.isEnabled()){var c=this.getValue(),b=d.getElementsByTag("caption");
if(c)0<b.count()?(b=b.getItem(0),b.setHtml("")):(b=new CKEDITOR.dom.element("caption",a.document),d.getChildCount()?b.insertBefore(d.getFirst()):b.appendTo(d)),b.append(new CKEDITOR.dom.text(c,a.document));else if(0<b.count())for(c=b.count()-1;0<=c;c--)b.getItem(c).remove()}}},{type:"text",id:"txtSummary",requiredContent:"table[summary]",label:a.lang.table.summary,setup:function(a){this.setValue(a.getAttribute("summary")||"")},commit:function(a,d){this.getValue()?d.setAttribute("summary",this.getValue()):
d.removeAttribute("summary")}}]}]},m&&m.createAdvancedTab(a,null,"table")]}}var q=CKEDITOR.tools.cssLength,k=function(a){var e=this.id;a.info||(a.info={});a.info[e]=this.getValue()};CKEDITOR.dialog.add("table",function(a){return n(a,"table")});CKEDITOR.dialog.add("tableProperties",function(a){return n(a,"tableProperties")})})();
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/table/dialogs/index.html000060400000000054152455705240025303 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/table/index.html000060400000000054152455705240023661 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/index.html000060400000000054152455705240022572 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/css/codemirror.min.c000060400000023114152455705240026627 0ustar00.CodeMirror{font-family:monospace;height:300px;color:#000}.CodeMirror-lines{padding:4px 0}.CodeMirror pre{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror div.CodeMirror-cursor{border-left:1px solid #000}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid #c0c0c0}.CodeMirror.cm-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7}.CodeMirror.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}@-moz-keyframes blink{0%{background:#7e7}50%{background:none}100%{background:#7e7}}@-webkit-keyframes blink{0%{background:#7e7}50%{background:none}100%{background:#7e7}}@keyframes blink{0%{background:#7e7}50%{background:none}100%{background:#7e7}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error{color:#f00}.cm-invalidchar{color:#f00}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll !important;margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:30px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;margin-bottom:-30px;*zoom:1;*display:inline}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;height:100%}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper{-webkit-user-select:none;-moz-user-select:none;user-select:none}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto}.CodeMirror-code{outline:none}.CodeMirror-scroll,.CodeMirror-sizer,.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-measure pre{position:static}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror ::selection{background:#d7d4f0}.CodeMirror ::-moz-selection{background:#d7d4f0}.cm-searching{background:#ffa;background:rgba(255,255,0,.4)}.CodeMirror span{*vertical-align:text-bottom}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:''}span.CodeMirror-selectedtext{background:none}.CodeMirror{font:13px/1.4em monospace;text-align:left}.CodeMirror .activeline{background:#e8f2ff}.CodeMirror .CodeMirror-foldmarker{color:#00f;-ms-text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;-webkit-text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;font-family:arial;line-height:.3;cursor:pointer}.CodeMirror-matchingtag{background:#ff9600;background:rgba(255,150,0,.3)}.searchCodeButton span,.autoFormat span,.CommentSelectedRange span,.UncommentSelectedRange span{width:16px;height:16px;margin-left:6px}.searchCodeButton span{background:url("../icons/searchcode.png") no-repeat}.autoFormat span{background:url("../icons/autoformat.png") no-repeat}.CommentSelectedRange span{background:url("../icons/commentselectedrange.png") no-repeat}.UncommentSelectedRange span{background:url("../icons/uncommentselectedrange.png") no-repeat}.cke_reset_all .CodeMirror-scroll *{white-space:normal}.cke_reset_all .cm-s-cobalt *,.cke_reset_all .cm-s-erlang-dark *,.cke_reset_all .cm-s-lesser-dark *,.cke_reset_all .cm-s-monokai *,.cke_reset_all .cm-s-night *,.cke_reset_all .cm-s-rubyblue *,.cke_reset_all .cm-s-twilight *,.cke_reset_all .cm-s-xq-dark *,.cke_reset_all .cm-s-base16-dark *,.cke_reset_all .cm-s-3024-night *,.cke_reset_all .cm-s-the-matrix *,.cke_reset_all .cm-s-paraiso-dark *,.cke_reset_all .cm-s-paraiso-light *{color:inherit;font:inherit}.cm-s-cobalt .CodeMirror-selected{background:#b36539 !important}.cm-s-erlang-dark .CodeMirror-selected{background:#b36539 !important}.cm-s-lesser-dark .CodeMirror-selected{background:#45443b !important}.cm-s-monokai .CodeMirror-selected{background:#49483e !important}.cm-s-night .CodeMirror-selected{background:#447 !important}.cm-s-rubyblue .CodeMirror-selected{background:#38566f !important}.cm-s-twilight .CodeMirror-selected{background:#323232 !important}.cm-s-xq-dark .CodeMirror-selected{background:#a8f !important}.cm-s-the-matrix .CodeMirror-selected{background:#494949 !important}.cm-s-mbo .CodeMirror-selected{background:#716c62 !important}.cm-s-blackboard .activeline,.cm-s-cobalt .activeline,.cm-s-erlang-dark .activeline,.cm-s-lesser-dark .activeline,.cm-s-monokai .activeline,.cm-s-night .activeline,.cm-s-rubyblue .activeline,.cm-s-vibrant-ink .activeline,.cm-s-xq-dark .activeline,.cm-s-base16-dark .activeline,.cm-s-3024-night .activeline,.cm-s-paraiso-light .activeline,.cm-s-paraiso-dark .activeline,.cm-s-pastel-on-dark .activeline{background:#757575}.cm-s-pastel-on-dark .activeline{background:#404040}.cm-s-mbo .activeline{background:#716c62}.cm-s-twilight .activeline{background:#494949}.cm-s-the-matrix .activeline{background:#060}.CodeMirror-focused .cm-matchhighlight{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAFklEQVQI12NgYGBgkKzc8x9CMDAwAAAmhwSbidEoSQAAAABJRU5ErkJggg==);background-position:bottom;background-repeat:repeat-x}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;-webkit-box-shadow:2px 3px 5px #000;-ms-box-shadow:2px 3px 5px #000;box-shadow:2px 3px 5px #000;border-radius:3px;border:1px solid #c0c0c0;background:#fff;font-size:90%;font-family:monospace;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin:0;padding:0 4px;border-radius:2px;max-width:19em;overflow:hidden;white-space:pre;color:#000;cursor:pointer}.CodeMirror-hint-active{background:#08f;color:#fff}.cm-trailingspace{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAACCAYAAAB/qH1jAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QUXCToH00Y1UgAAACFJREFUCNdjPMDBUc/AwNDAAAFMTAwMDA0OP34wQgX/AQBYgwYEx4f9lQAAAABJRU5ErkJggg==);background-position:bottom left;background-repeat:repeat-x}.CodeMirror-dialog{position:absolute;left:0;right:0;background:inherit;z-index:15;padding:.1em .8em;overflow:hidden;color:inherit}.CodeMirror-dialog-top{border-bottom:1px solid #eee;top:0}.CodeMirror-dialog-bottom{border-top:1px solid #eee;bottom:0}.CodeMirror-dialog input{border:none;outline:none;background:transparent;width:20em;color:inherit;font-family:monospace}.CodeMirror-dialog button{font-size:70%}.CodeMirror-foldmarker{color:#00f;text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;font-family:arial;line-height:.3;cursor:pointer}.CodeMirror-foldgutter{width:.7em}.CodeMirror-foldgutter-open,.CodeMirror-foldgutter-folded{cursor:pointer}.CodeMirror-foldgutter-open:after{content:"▾"}.CodeMirror-foldgutter-folded:after{content:"▸"}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/css/index.html000060400000000054152455705240025527 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/uk.js000060400000000450152455705240024640 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'uk', {
	toolbar: 'Джерело',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/bs.js000060400000000443152455705240024627 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'bs', {
	toolbar: 'HTML kôd',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/sl.js000060400000000446152455705240024644 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'sl', {
	toolbar: 'Izvorna koda',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/es.js000060400000000445152455705240024634 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'es', {
	toolbar: 'Fuente HTML',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/bg.js000060400000000452152455705240024613 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'bg', {
	toolbar: 'Източник',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/fo.js000060400000000437152455705240024632 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'fo', {
	toolbar: 'Kelda',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/en-au.js000060400000000443152455705240025230 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'en-au', {
	toolbar: 'Source',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ca.js000060400000000443152455705240024606 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ca', {
	toolbar: 'Codi font',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/da.js000060400000000437152455705240024612 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'da', {
	toolbar: 'Kilde',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ja.js000060400000000443152455705240024615 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ja', {
	toolbar: 'ソース',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/de.js000060400000000512152455705240024610 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'de', {
    toolbar: 'Quellcode',
    searchCode: 'Quellcode durchsuchen',
	autoFormat: 'Auswahl formatieren',
	commentSelectedRange: 'Auswahl auskommentieren',
	uncommentSelectedRange: 'Auskommentierung entfernen',
	autoCompleteToggle: 'HTML Tag Autovervollständigen de-/aktivieren'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/cs.js000060400000000437152455705240024633 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'cs', {
	toolbar: 'Zdroj',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/lt.js000060400000000443152455705240024642 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'lt', {
	toolbar: 'Šaltinis',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ms.js000060400000000440152455705240024637 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ms', {
	toolbar: 'Sumber',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/index.html000060400000000054152455705240025660 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/sk.js000060400000000437152455705240024643 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'sk', {
	toolbar: 'Zdroj',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/et.js000060400000000444152455705240024634 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'et', {
	toolbar: 'Lähtekood',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/eu.js000060400000000450152455705240024632 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'eu', {
	toolbar: 'HTML Iturburua',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/gl.js000060400000000447152455705240024631 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'gl', {
	toolbar: 'Código Fonte',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/pt.js000060400000000437152455705240024651 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'pt', {
	toolbar: 'Fonte',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/sr-latn.js000060400000000443152455705240025603 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'sr-latn', {
	toolbar: 'Kôd',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/nl.js000060400000000505152455705240024633 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'nl', {
	toolbar: 'Broncode',
	searchCode: 'Zoek in broncode',
	autoFormat: 'Formatteer selectie',
	commentSelectedRange: 'Zet selectie in commentaar',
	uncommentSelectedRange: 'Haal selectie uit commentaar',
	autoCompleteToggle: 'Zet automatisch aanvullen van HTML tags aan/uit'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ku.js000060400000000450152455705240024640 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ku', {
	toolbar: 'سەرچاوە',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/zh-cn.js000060400000000443152455705240025242 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'zh-cn', {
	toolbar: '源码',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ro.js000060400000000437152455705240024646 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ro', {
	toolbar: 'Sursa',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/fi.js000060400000000437152455705240024624 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'fi', {
	toolbar: 'Koodi',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ka.js000060400000000454152455705240024620 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ka', {
	toolbar: 'კოდები',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/zh.js000060400000000443152455705240024644 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'zh', {
	toolbar: '原始碼',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/en-gb.js000060400000000443152455705240025213 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'en-gb', {
	toolbar: 'Source',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/th.js000060400000000461152455705240024636 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'th', {
	toolbar: 'ดูรหัส HTML',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/hi.js000060400000000451152455705240024622 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'hi', {
	toolbar: 'सोर्स',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/no.js000060400000000437152455705240024642 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'no', {
	toolbar: 'Kilde',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/lv.js000060400000000443152455705240024644 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'lv', {
	toolbar: 'HTML kods',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/mn.js000060400000000440152455705240024632 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'mn', {
	toolbar: 'Код',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/sv.js000060400000000440152455705240024650 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'sv', {
	toolbar: 'Källa',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ug.js000060400000000444152455705240024637 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ug', {
	toolbar: 'مەنبە',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/fa.js000060400000000442152455705240024610 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'fa', {
	toolbar: 'منبع',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/cy.js000060400000000436152455705240024640 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'cy', {
	toolbar: 'HTML',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/is.js000060400000000440152455705240024633 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'is', {
	toolbar: 'Kóði',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/en-ca.js000060400000000443152455705240025206 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'en-ca', {
	toolbar: 'Source',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/hu.js000060400000000445152455705240024641 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'hu', {
	toolbar: 'Forráskód',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ko.js000060400000000440152455705240024631 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ko', {
	toolbar: '소스',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/fr-ca.js000060400000000443152455705240025213 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'fr-ca', {
	toolbar: 'Source',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/eo.js000060400000000437152455705240024631 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'eo', {
	toolbar: 'Fonto',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/vi.js000060400000000442152455705240024640 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'vi', {
	toolbar: 'Mã HTML',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/bn.js000060400000000451152455705240024621 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'bn', {
	toolbar: 'সোর্স',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/en.js000060400000000446152455705240024630 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'en', {
    toolbar: 'Source',
    searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/af.js000060400000000436152455705240024613 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'af', {
	toolbar: 'Bron',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ar.js000060400000000446152455705240024630 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ar', {
	toolbar: 'المصدر',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/fr.js000060400000000440152455705240024627 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'fr', {
	toolbar: 'Source',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/gu.js000060400000000534152455705240024637 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'gu', {
	toolbar: 'મૂળ કે પ્રાથમિક દસ્તાવેજ',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/hr.js000060400000000436152455705240024636 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'hr', {
	toolbar: 'Kôd',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/mk.js000060400000000440152455705240024627 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'mk', {
	toolbar: 'Source',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/el.js000060400000000455152455705240024626 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'el', {
	toolbar: 'HTML κώδικας',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/tr.js000060400000000440152455705240024645 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'tr', {
	toolbar: 'Kaynak',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/sr.js000060400000000437152455705240024652 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'sr', {
	toolbar: 'Kôд',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/he.js000060400000000442152455705240024616 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'he', {
	toolbar: 'מקור',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/ru.js000060400000000452152455705240024651 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'ru', {
	toolbar: 'Источник',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/pt-br.js000060400000000452152455705240025247 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'pt-br', {
	toolbar: 'Código-Fonte',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/it.js000060400000000451152455705240024636 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'it', {
	toolbar: 'Codice Sorgente',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/nb.js000060400000000437152455705240024625 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'nb', {
	toolbar: 'Kilde',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/km.js000060400000000443152455705240024632 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'km', {
	toolbar: 'កូត',
	searchCode: 'Search Source',
	autoFormat: 'Format Selection',
	commentSelectedRange: 'Comment Selection',
	uncommentSelectedRange: 'Uncomment Selection',
	autoCompleteToggle: 'Enable/Disable HTML Tag Autocomplete'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/lang/pl.js000060400000000525152455705240024637 0ustar00CKEDITOR.plugins.setLang( 'codemirror', 'pl', {
	toolbar: 'Źródło dokumentu',
	autoFormat: 'Sformatuj zaznaczenie',
	commentSelectedRange: 'Zakomentuj zaznaczenie',
	uncommentSelectedRange: 'Odkomentuj zaznaczenie',
	searchCode: 'Wyszukaj w źródle',
	autoCompleteToggle: 'Włącza/Wyłącza automatyczne uzupełniania tagów HTML'
});

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/index.html000060400000000054152455705240024737 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/icons/autoformat.png000060400000000322152455705240026742 0ustar00�PNG


IHDR:����IDATWc�_��g����m��ӧ��ӧ1��[�\*p�+�+Td����f|���c�a����NfXŖ�I�͆�t5r���34�?(?���.��w:��r�.�PC'�)���"vbƯ�?�F���R` �[L���G-cIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/icons/uncommentselec000060400000000435152455705240027024 0ustar00�PNG


IHDR(-SfPLTE@@@KKKWWWuuv��������|�)����P8����I0�X>�/�R:�Z@�[G�rV�fJ������������մ��qYډt���kD��c��h�������Ø�������rIDAT�	�P��-Q�k���%� �wC�1.��뾌�8>ֶ]G@�O�ߩO�BW�u��·�|݃���|�?1�*�n��P(�mR@l@R�d �|��@�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/icons/index.html000060400000000054152455705240026052 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/icons/commentselecte000060400000000240152455705240027004 0ustar00�PNG


IHDR���RPLTE���@@@@�7KKKWWWuuv����S��tRNS@��f9IDAT[c`�&4����!((�2�1`zAF�����P P���R�E�<Id��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/icons/searchcode.png000060400000000630152455705240026663 0ustar00�PNG


IHDR(-S�PLTE���}}}ssssss===XXXzzz}}}sss===AAAFFFLLLRRRXXX___eeekkkqqqvvv}}}yyy|||}}}vvvzzz}}}������zzz}}}���zzz���������������������������������������������������
�[i tRNS���������������������������~�IDATW��1�0C_~�AK(��o�ʊ���ghUĆ�z�mlP]�at���5Ost{W*9E3���׼�Ѕ��RrEC�����P�hZs��+�^�#�%�9�R�>�kz��^3du��e���q�g��_}+�FEľu=IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/icons/autocomplete.p000060400000000377152455705240026747 0ustar00�PNG


IHDR_*?�EPLTE���CBBCBBCBBCBBCBBCBBCBBCBBCBBCBBCBB��ZtRNS  @@P``pp���������1�2TIDAT��K@0@�[Z�~�����jD�@���ϼQ�.��G�㛤 �ځT�gS���U�@cB����>a�2q�@�7j���V&HIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/plugin.js000060400000137312152455705240024606 0ustar00
(function() {
    CKEDITOR.plugins.add('codemirror', {
        icons: 'searchcode,autoformat,commentselectedrange,uncommentselectedrange,autocomplete', // %REMOVE_LINE_CORE%
        lang: 'af,ar,bg,bn,bs,ca,cs,cy,da,de,el,en-au,en-ca,en-gb,en,eo,es,et,eu,fa,fi,fo,fr-ca,fr,gl,gu,he,hi,hr,hu,is,it,ja,ka,km,ko,ku,lt,lv,mk,mn,ms,nb,nl,no,pl,pt-br,pt,ro,ru,sk,sl,sr-latn,sr,sv,th,tr,ug,uk,vi,zh-cn,zh', // %REMOVE_LINE_CORE%
        version: 1.13,
        init: function (editor) {
            var rootPath = this.path,
                defaultConfig = {
                    autoCloseBrackets: true,
                    autoCloseTags: true,
                    autoFormatOnStart: false,
                    autoFormatOnUncomment: true,
                    continueComments: true,
                    enableCodeFolding: true,
                    enableCodeFormatting: true,
                    enableSearchTools: true,
                    highlightMatches: true,
                    indentWithTabs: false,
                    lineNumbers: true,
                    lineWrapping: true,
                    mode: 'htmlmixed',
                    matchBrackets: true,
                    matchTags: true,
                    showAutoCompleteButton: true,
                    showCommentButton: true,
                    showFormatButton: true,
                    showSearchButton: true,
                    showTrailingSpace: true,
                    showUncommentButton: true,
                    styleActiveLine: true,
                    theme: 'default',
                    useBeautify: false
                };
            
            var config = CKEDITOR.tools.extend(defaultConfig, editor.config.codemirror || {}, true),
                lang = editor.lang.codemirror;
            
            if (editor.config.codemirror_theme) {
                config.theme = editor.config.codemirror_theme;
            }
            if (editor.config.codemirror_autoFormatOnStart) {
                config.autoFormatOnStart = editor.config.codemirror_autoFormatOnStart;
            }

            if (editor.plugins.bbcode && config.mode.indexOf("bbcode") <= 0) {
                config.mode = "bbcode";
            }

            if (editor.elementMode === CKEDITOR.ELEMENT_MODE_INLINE || editor.plugins.sourcedialog) {
                
                CKEDITOR.dialog.add('sourcedialog', function (editor) {
                    var size = CKEDITOR.document.getWindow().getViewPaneSize(),
                        width = Math.min(size.width - 70, 800),
                        height = size.height / 1.5,
                        oldData;

                    function loadCodeMirrorInline(editor, textarea) {
                        window["codemirror_" + editor.id] = CodeMirror.fromTextArea(textarea, {
                            mode: config.mode,
                            matchBrackets: config.matchBrackets,
                            matchTags: config.matchTags,
                            workDelay: 300,
                            workTime: 35,
                            readOnly: editor.readOnly,
                            lineNumbers: config.lineNumbers,
                            lineWrapping: config.lineWrapping,
                            autoCloseTags: config.autoCloseTags,
                            autoCloseBrackets: config.autoCloseBrackets,
                            highlightSelectionMatches: config.highlightMatches,
                            continueComments: config.continueComments,
                            indentWithTabs: config.indentWithTabs,
                            theme: config.theme,
                            showTrailingSpace: config.showTrailingSpace,
                            showCursorWhenSelecting: true,
                            styleActiveLine: config.styleActiveLine,
                            viewportMargin: Infinity,
                            extraKeys: {
                                "Ctrl-Q": function (codeMirror_Editor) {
                                    if (config.enableCodeFolding) {
                                        window["foldFunc_" + editor.id](codeMirror_Editor, codeMirror_Editor.getCursor().line);
                                    }
                                },
                                "'>'": function (codeMirror_Editor) {
                                    codeMirror_Editor.closeTag(codeMirror_Editor, '>');
                                },
                                "'/'": function (codeMirror_Editor) {
                                    codeMirror_Editor.closeTag(codeMirror_Editor, '/');
                                }
                            },
                            foldGutter: true,
                            gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"],
                            onKeyEvent: function (codeMirror_Editor, evt) {
                                if (config.enableCodeFormatting) {
                                    var range = getSelectedRange();
                                    if (evt.type === "keydown" && evt.ctrlKey && evt.keyCode === 75 && !evt.shiftKey && !evt.altKey) {
                                        window["codemirror_" + editor.id].commentRange(true, range.from, range.to);
                                    } else if (evt.type === "keydown" && evt.ctrlKey && evt.keyCode === 75 && evt.shiftKey && !evt.altKey) {
                                        window["codemirror_" + editor.id].commentRange(false, range.from, range.to);
                                        if (config.autoFormatOnUncomment) {
                                            window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
                                        }
                                    } else if (evt.type === "keydown" && evt.ctrlKey && evt.keyCode === 75 && !evt.shiftKey && evt.altKey) {
                                        window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
                                    }
                                }
                            }
                        });

                        var holderHeight = height + 'px';
                        var holderWidth = width + 'px';

                        window["codemirror_" + editor.id].config = config;
                        
                        if (config.autoFormatOnStart) {
                            if (config.useBeautify) {
                                var indent_size = 4,
                                    indent_char = ' ',
                                    brace_style = 'collapse'; //collapse, expand, end-expand 

                                var source = window["codemirror_" + editor.id].getValue();

                                window["codemirror_" + editor.id].setValue(html_beautify(source, indent_size, indent_char, 120, brace_style));
                            } else {
                                window["codemirror_" + editor.id].autoFormatAll({
                                    line: 0,
                                    ch: 0
                                }, {
                                    line: window["codemirror_" + editor.id].lineCount(),
                                    ch: 0
                                });
                            }
                        }

                        function getSelectedRange() {
                            return {
                                from: window["codemirror_" + editor.id].getCursor(true),
                                to: window["codemirror_" + editor.id].getCursor(false)
                            };
                        }

                        window["codemirror_" + editor.id].on("change", function () {
                            window["codemirror_" + editor.id].save();
                            editor.fire('change', this);
                        });

                        window["codemirror_" + editor.id].setSize(holderWidth, holderHeight);

                        if (config.lineNumbers && config.enableCodeFolding) {
                            window["codemirror_" + editor.id].on("gutterClick", window["foldFunc_" + editor.id]);
                        }
                        if (typeof config.onLoad === 'function') {
                            config.onLoad(window["codemirror_" + editor.id], editor);
                        }

                        window["codemirror_" + editor.id].on("blur", function () {
                            editor.fire('blur', this);
                        });
                    }

                    return {
                        title: editor.lang.sourcedialog.title,
                        minWidth: width,
                        minHeight: height,
                        resizable : CKEDITOR.DIALOG_RESIZE_NONE,
                        onShow: function () {
                            this.getContentElement('main', 'data').focus();
                            this.getContentElement('main', 'AutoComplete').setValue(config.autoCloseTags, true);
                            
                            var textArea = this.getContentElement('main', 'data').getInputElement().$;
                            
                            this.setValueOf('main', 'data', oldData = editor.getData());

                            if (!IsStyleSheetAlreadyLoaded(rootPath + 'css/codemirror.min.css')) {
                                CKEDITOR.document.appendStyleSheet(rootPath + 'css/codemirror.min.css');
                            }

                            if (config.theme.length && config.theme != 'default' && !IsStyleSheetAlreadyLoaded(rootPath + 'theme/' + config.theme + '.css')) {
                                CKEDITOR.document.appendStyleSheet(rootPath + 'theme/' + config.theme + '.css');
                            }

                            if (typeof (CodeMirror) == 'undefined') {

                                CKEDITOR.scriptLoader.load(rootPath + 'js/codemirror.min.js', function() {

                                    CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
                                        loadCodeMirrorInline(editor, textArea);
                                    });
                                });


                            } else {
                                if (CodeMirror.prototype['autoFormatAll']) {
                                    loadCodeMirrorInline(editor, textArea);
                                } else {
                                    CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
                                        loadCodeMirrorInline(editor, textArea);
                                    });
                                }
                            }
                        },
                        onCancel: function (event) {
                            if (event.data.hide) {
                                window["codemirror_" + editor.id].toTextArea();

                                window["codemirror_" + editor.id] = null;
                            }
                        },
                        onOk: (function () {

                            function setData(newData) {
                                var that = this;

                                editor.setData(newData, function () {
                                    that.hide();

                                    var range = editor.createRange();
                                    range.moveToElementEditStart(editor.editable());
                                    range.select();
                                });
                            }

                            return function () {
                                window["codemirror_" + editor.id].toTextArea();

                                window["codemirror_" + editor.id] = null;

                                var newData = this.getValueOf('main', 'data').replace(/\r/g, '');

                                if (newData === oldData)
                                    return true;

                                CKEDITOR.env.ie ? CKEDITOR.tools.setTimeout(setData, 0, this, newData) : setData.call(this, newData);

                                return false;
                            };
                        })(),

                        contents: [{
                            id: 'main',
                            label: editor.lang.sourcedialog.title,
                            elements: [
                                {
                                    type: 'hbox',
                                    style: 'width: 80px;margin:0;',
                                    widths: ['20px', '20px', '20px', '20px'],
                                    children: [
                                        {
                                            type: 'button',
                                            id: 'searchCode',
                                            label: '',
                                            title: lang.searchCode,
                                            'class': 'searchCodeButton',
                                            onClick: function() {
                                                CodeMirror.commands.find(window["codemirror_" + editor.id]);
                                            }
                                        }, {
                                            type: 'button',
                                            id: 'autoFormat',
                                            label: '',
                                            title: lang.autoFormat,
                                            'class': 'autoFormat',
                                            onClick: function() {
                                                var range = {
                                                    from: window["codemirror_" + editor.id].getCursor(true),
                                                    to: window["codemirror_" + editor.id].getCursor(false)
                                                };
                                                window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
                                            }
                                        }, {
                                            type: 'button',
                                            id: 'CommentSelectedRange',
                                            label: '',
                                            title: lang.commentSelectedRange,
                                            'class': 'CommentSelectedRange',
                                            onClick: function () {
                                                var range = {
                                                    from: window["codemirror_" + editor.id].getCursor(true),
                                                    to: window["codemirror_" + editor.id].getCursor(false)
                                                };
                                                window["codemirror_" + editor.id].commentRange(true, range.from, range.to);
                                            }
                                        }, {
                                            type: 'button',
                                            id: 'UncommentSelectedRange',
                                            label: '',
                                            title: lang.uncommentSelectedRange,
                                            'class': 'UncommentSelectedRange',
                                            onClick: function () {
                                                var range = {
                                                    from: window["codemirror_" + editor.id].getCursor(true),
                                                    to: window["codemirror_" + editor.id].getCursor(false)
                                                };
                                                window["codemirror_" + editor.id].commentRange(false, range.from, range.to);
                                                if (window["codemirror_" + editor.id].config.autoFormatOnUncomment) {
                                                    window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
                                                }
                                            }
                                        }]
                                }, {
                                    type: 'checkbox',
                                    id: 'AutoComplete',
                                    label: lang.autoCompleteToggle,
                                    title: lang.autoCompleteToggle,
                                    onChange: function () {
                                        window["codemirror_" + editor.id].setOption("autoCloseTags", this.getValue());
                                    }
                                }, {
                                    type: 'textarea',
                                    id: 'data',
                                    dir: 'ltr',
                                    inputStyle: 'cursor:auto;' +
                                        'width:' + width + 'px;' +
                                        'height:' + height + 'px;' +
                                        'tab-size:4;' +
                                        'text-align:left;',
                                    'class': 'cke_source cke_enable_context_menu'
                                }
                            ]
                        }]
                    };
                });

            }
            

            if (editor.commands.find) {
                editor.commands.find.modes = {
                    wysiwyg: 1,
                    source: 1
                };

                editor.commands.find.exec = function() {
                    if (editor.mode === 'wysiwyg') {
                        editor.openDialog('find');
                    } else {
                        CodeMirror.commands.find(window["codemirror_" + editor.id]);
                    }
                };
            }
            
            if (editor.commands.replace) {
                editor.commands.replace.modes = {
                    wysiwyg: 1,
                    source: 1
                };

                editor.commands.replace.exec = function () {
                    if (editor.mode === 'wysiwyg') {
                        editor.openDialog('replace');
                    } else {
                        CodeMirror.commands.replace(window["codemirror_" + editor.id]);
                    }
                };
            }
            
            var sourcearea = CKEDITOR.plugins.sourcearea;
            
            if (!sourcearea.commands.searchCode) {

                CKEDITOR.plugins.sourcearea.commands = {
                    source: {
                        modes: {
                            wysiwyg: 1,
                            source: 1
                        },
                        editorFocus: false,
                        readOnly: 1,
                        exec: function(editorInstance) {
                            if (editorInstance.mode === 'wysiwyg') {
                                editorInstance.fire('saveSnapshot');
                            }
                            editorInstance.getCommand('source').setState(CKEDITOR.TRISTATE_DISABLED);
                            editorInstance.setMode(editorInstance.mode === 'source' ? 'wysiwyg' : 'source');
                        },
                        canUndo: false
                    },
                    searchCode: {
                        modes: {
                            wysiwyg: 0,
                            source: 1
                        },
                        editorFocus: false,
                        readOnly: 1,
                        exec: function (editorInstance) {
                            CodeMirror.commands.find(window["codemirror_" + editorInstance.id]);
                        },
                        canUndo: true
                    },
                    autoFormat: {
                        modes: {
                            wysiwyg: 0,
                            source: 1
                        },
                        editorFocus: false,
                        readOnly: 1,
                        exec: function (editorInstance) {
                            var range = {
                                from: window["codemirror_" + editorInstance.id].getCursor(true),
                                to: window["codemirror_" + editorInstance.id].getCursor(false)
                            };
                            window["codemirror_" + editorInstance.id].autoFormatRange(range.from, range.to);
                        },
                        canUndo: true
                    },
                    commentSelectedRange: {
                        modes: {
                            wysiwyg: 0,
                            source: 1
                        },
                        editorFocus: false,
                        readOnly: 1,
                        exec: function (editorInstance) {
                            var range = {
                                from: window["codemirror_" + editorInstance.id].getCursor(true),
                                to: window["codemirror_" + editorInstance.id].getCursor(false)
                            };
                            window["codemirror_" + editorInstance.id].commentRange(true, range.from, range.to);
                        },
                        canUndo: true
                    },
                    uncommentSelectedRange: {
                        modes: {
                            wysiwyg: 0,
                            source: 1
                        },
                        editorFocus: false,
                        readOnly: 1,
                        exec: function (editorInstance) {
                            var range = {
                                from: window["codemirror_" + editorInstance.id].getCursor(true),
                                to: window["codemirror_" + editorInstance.id].getCursor(false)
                            };
                            window["codemirror_" + editorInstance.id].commentRange(false, range.from, range.to);
                            if (window["codemirror_" + editorInstance.id].config.autoFormatOnUncomment) {
                                window["codemirror_" + editorInstance.id].autoFormatRange(
                                    range.from,
                                    range.to);
                            }
                        },
                        canUndo: true
                    },
                    autoCompleteToggle: {
                        modes: {
                            wysiwyg: 0,
                            source: 1
                        },
                        editorFocus: false,
                        readOnly: 1,
                        exec: function (editorInstance) {
                            if (this.state == CKEDITOR.TRISTATE_ON) {
                                window["codemirror_" + editorInstance.id].setOption("autoCloseTags", false);
                            } else if (this.state == CKEDITOR.TRISTATE_OFF) {
                                window["codemirror_" + editorInstance.id].setOption("autoCloseTags", true);
                            }

                            this.toggleState();
                        },
                        canUndo: true
                    }
                };
            }

            editor.addMode('source', function (callback) {
                if (!IsStyleSheetAlreadyLoaded(rootPath + 'css/codemirror.min.css')) {
                    CKEDITOR.document.appendStyleSheet(rootPath + 'css/codemirror.min.css');
                }

                if (config.theme.length && config.theme != 'default' && !IsStyleSheetAlreadyLoaded(rootPath + 'theme/' + config.theme + '.css')) {
                    CKEDITOR.document.appendStyleSheet(rootPath + 'theme/' + config.theme + '.css');
                }

                if (typeof (CodeMirror) == 'undefined') {

                    CKEDITOR.scriptLoader.load(rootPath + 'js/codemirror.min.js', function() {

                        CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
                            loadCodeMirror(editor);
                            callback();
                        });
                    });
                } else {
                    if (CodeMirror.prototype['autoFormatAll']) {
                        loadCodeMirror(editor);
                        callback();
                    } else {
                        CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
                            loadCodeMirror(editor);
                            callback();
                        });
                    }
                }
            });

            function getCodeMirrorScripts() {
                var scriptFiles = [rootPath + 'js/codemirror.addons.min.js'];

                switch (config.mode) {
                case "bbcode":
                    {
                        scriptFiles.push(rootPath + 'js/codemirror.mode.bbcode.min.js');
                    }

                    break;
                case "bbcodemixed":
                        {
                            scriptFiles.push(rootPath + 'js/codemirror.mode.bbcodemixed.min.js');
                        }

                        break;
                case "htmlmixed":
                    {
                        scriptFiles.push(rootPath + 'js/codemirror.mode.htmlmixed.min.js');
                    }

                    break;
                case "text/html":
                    {
                        scriptFiles.push(rootPath + 'js/codemirror.mode.htmlmixed.min.js');
                    }

                    break;
                case "application/x-httpd-php":
                    {
                        scriptFiles.push(rootPath + 'js/codemirror.mode.php.min.js');
                    }

                    break;
                case "text/javascript":
                    {
                        scriptFiles.push(rootPath + 'js/codemirror.mode.javascript.min.js');
                    }

                    break;
                default:
                    scriptFiles.push(rootPath + 'js/codemirror.mode.htmlmixed.min.js');
                }

                if (config.useBeautify) {
                    scriptFiles.push(rootPath + 'js/beautify.min.js');
                }

                if (config.enableSearchTools) {
                    scriptFiles.push(rootPath + 'js/codemirror.addons.search.min.js');
                }
                return scriptFiles;
            }

            function loadCodeMirror(editor) {
                var contentsSpace = editor.ui.space('contents'),
                    textarea = contentsSpace.getDocument().createElement('textarea');

                textarea.setStyles(
                    CKEDITOR.tools.extend({
                            width: CKEDITOR.env.ie7Compat ? '99%' : '100%',
                            height: '100%',
                            resize: 'none',
                            outline: 'none',
                            'text-align': 'left'
                        },
                        CKEDITOR.tools.cssVendorPrefix('tab-size', editor.config.sourceAreaTabSize || 4)));
                var ariaLabel = [editor.lang.editor, editor.name].join(',');
                textarea.setAttributes({
                    dir: 'ltr',
                    tabIndex: CKEDITOR.env.webkit ? -1 : editor.tabIndex,
                    'role': 'textbox',
                    'aria-label': ariaLabel
                });
                textarea.addClass('cke_source');
                textarea.addClass('cke_reset');
                textarea.addClass('cke_enable_context_menu');
                editor.ui.space('contents').append(textarea);
                window["editable_" + editor.id] = editor.editable(new sourceEditable(editor, textarea));
                window["editable_" + editor.id].setData(editor.getData(1));
                window["editable_" + editor.id].editorID = editor.id;
                editor.fire('ariaWidget', this);

                var sourceAreaElement = window["editable_" + editor.id],
                    holderElement = sourceAreaElement.getParent();


                if (config.lineNumbers && config.enableCodeFolding) {
                    window["foldFunc_" + editor.id] = CodeMirror.newFoldFunction(CodeMirror.tagRangeFinder);
                }

                function getCodeMirrorKey(ckeditorKeystroke) {
                    var MODIFIERS = [
                        [CKEDITOR.SHIFT, "Shift-"],
                        [CKEDITOR.CTRL, "Ctrl-"],
                        [CKEDITOR.ALT, "Alt-"]
                    ];
                    var keyModifiers = "";
                    for (var i = 0; i < MODIFIERS.length; i++) {
                        if (ckeditorKeystroke & MODIFIERS[i][0]) {
                            ckeditorKeystroke -= MODIFIERS[i][0];
                            keyModifiers += MODIFIERS[i][1];
                        }
                    }
                    if (CodeMirror.keyNames[ckeditorKeystroke]) {
                        return keyModifiers + CodeMirror.keyNames[ckeditorKeystroke];
                    }
                    return null;
                }

                function addCKEditorKeystrokes(editorExtraKeys) {
                    var ckeditorKeystrokes = editor.config.keystrokes;
                    if (CKEDITOR.tools.isArray(ckeditorKeystrokes)) {
                        for (var i = 0; i < ckeditorKeystrokes.length; i++) {
                            var key = getCodeMirrorKey(ckeditorKeystrokes[i][0]);
                            if (key !== null) {
                                (function (command) {
                                    editorExtraKeys[key] = function () {
                                        editor.execCommand(command);
                                    }
                                })(ckeditorKeystrokes[i][1]);
                            }
                        }
                    }
                }

                var extraKeys = {
                    "Ctrl-Q": function(codeMirror_Editor) {
                        if (config.enableCodeFolding) {
                            window["foldFunc_" + editor.id](codeMirror_Editor, codeMirror_Editor.getCursor().line);
                        }
                    },
                    "'>'": function (codeMirror_Editor) {
                        codeMirror_Editor.closeTag(codeMirror_Editor, '>');
                    },
                    "'/'": function (codeMirror_Editor) {
                        codeMirror_Editor.closeTag(codeMirror_Editor, '/');
                    }
                };

                addCKEditorKeystrokes(extraKeys);

                window["codemirror_" + editor.id] = CodeMirror.fromTextArea(sourceAreaElement.$, {
                    mode: config.mode,
                    matchBrackets: config.matchBrackets,
                    matchTags: config.matchTags,
                    workDelay: 300,
                    workTime: 35,
                    readOnly: editor.readOnly,
                    lineNumbers: config.lineNumbers,
                    lineWrapping: true,
                    autoCloseTags: config.autoCloseTags,
                    autoCloseBrackets: config.autoCloseBrackets,
                    highlightSelectionMatches: config.highlightMatches,
                    continueComments: config.continueComments,
                    indentWithTabs: config.indentWithTabs,
                    theme: config.theme,
                    showTrailingSpace: config.showTrailingSpace,
                    showCursorWhenSelecting: true,
                    styleActiveLine: config.styleActiveLine,
                    extraKeys: extraKeys,
                    foldGutter: true,
                    gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"],
                    onKeyEvent: function (codeMirror_Editor, evt) {
                        
                        if (config.enableCodeFormatting) {
                            var range = getSelectedRange();
                            if (evt.type === "keydown" && evt.ctrlKey && evt.keyCode === 75 && !evt.shiftKey && !evt.altKey) {
                                window["codemirror_" + editor.id].commentRange(true, range.from, range.to);
                            } else if (evt.type === "keydown" && evt.ctrlKey && evt.keyCode === 75 && evt.shiftKey && !evt.altKey) {
                                window["codemirror_" + editor.id].commentRange(false, range.from, range.to);
                                if (config.autoFormatOnUncomment) {
                                    window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
                                }
                            } else if (evt.type === "keydown" && evt.ctrlKey && evt.keyCode === 75 && !evt.shiftKey && evt.altKey) {
                                window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
                            }                        }
                    }
                });

                var holderHeight = holderElement.$.clientHeight == 0 ? editor.ui.space('contents').getStyle('height') : holderElement.$.clientHeight + 'px';
                var holderWidth = holderElement.$.clientWidth + 'px';

                window["codemirror_" + editor.id].config = config;
                if (config.autoFormatOnStart) {
                    if (config.useBeautify) {
                        var indent_size = 4;
                        var indent_char = ' ';
                        var brace_style = 'collapse'; //collapse, expand, end-expand 

                        var source = window["codemirror_" + editor.id].getValue();

                        window["codemirror_" + editor.id].setValue(html_beautify(source, indent_size, indent_char, 120, brace_style));
                    } else {
                        window["codemirror_" + editor.id].autoFormatAll({
                            line: 0,
                            ch: 0
                        }, {
                            line: window["codemirror_" + editor.id].lineCount(),
                            ch: 0
                        });
                    }
                }

                function getSelectedRange() {
                    return {
                        from: window["codemirror_" + editor.id].getCursor(true),
                        to: window["codemirror_" + editor.id].getCursor(false)
                    };
                }

                window["codemirror_" + editor.id].on("change", function () {
                    window["codemirror_" + editor.id].save();
                    editor.fire('change', this);
                });

                window["codemirror_" + editor.id].setSize(null, holderHeight);
                
                if (config.lineNumbers && config.enableCodeFolding) {
                    window["codemirror_" + editor.id].on("gutterClick", window["foldFunc_" + editor.id]);
                }

                if (typeof config.onLoad === 'function') {
                    config.onLoad(window["codemirror_" + editor.id], editor);
                }

                window["codemirror_" + editor.id].on("blur", function () {
                    editor.fire('blur', this);
                });
            }

            editor.addCommand('source', sourcearea.commands.source);
            if (editor.ui.addButton) {
                editor.ui.addButton('Source', {
                    label: editor.lang.codemirror.toolbar,
                    command: 'source',
                    toolbar: 'mode,10'
                });
            }
            if (config.enableCodeFormatting) {
                editor.addCommand('searchCode', sourcearea.commands.searchCode);
                editor.addCommand('autoFormat', sourcearea.commands.autoFormat);
                editor.addCommand('commentSelectedRange', sourcearea.commands.commentSelectedRange);
                editor.addCommand('uncommentSelectedRange', sourcearea.commands.uncommentSelectedRange);
                editor.addCommand('autoCompleteToggle', sourcearea.commands.autoCompleteToggle);

                if (editor.ui.addButton) {
                    if (config.showFormatButton || config.showCommentButton || config.showUncommentButton || config.showSearchButton) {
                        editor.ui.add('-', CKEDITOR.UI_SEPARATOR, { toolbar: 'mode,30' });
                    }
                    if (config.showFormatButton) {
                        editor.ui.addButton('autoFormat', {
                            label: lang.autoFormat,
                            command: 'autoFormat',
                            toolbar: 'mode,50'
                        });
                    }
                    if (config.showCommentButton) {
                        editor.ui.addButton('CommentSelectedRange', {
                            label: lang.commentSelectedRange,
                            command: 'commentSelectedRange',
                            toolbar: 'mode,60'
                        });
                    }
                    if (config.showUncommentButton) {
                        editor.ui.addButton('UncommentSelectedRange', {
                            label: lang.uncommentSelectedRange,
                            command: 'uncommentSelectedRange',
                            toolbar: 'mode,70'
                        });
                    }
                    if (config.showAutoCompleteButton) {
                        editor.ui.addButton('AutoComplete', {
                            label: lang.autoCompleteToggle,
                            command: 'autoCompleteToggle',
                            toolbar: 'mode,80'
                        });
                    }
                }
            }
            
            editor.on('beforeModeUnload', function (evt) {
                if (editor.mode === 'source' && editor.plugins.textselection) {

                    var range = editor.getTextSelection();

                    range.startOffset = LineChannelToOffSet(window["codemirror_" + editor.id], window["codemirror_" + editor.id].getCursor(true));
                    range.endOffset = LineChannelToOffSet(window["codemirror_" + editor.id], window["codemirror_" + editor.id].getCursor(false));

                    delete range.element;
                    range.createBookmark(editor);
                    sourceBookmark = true;

                    evt.data = range.content;
                }
            });
            editor.on('mode', function () {
                editor.getCommand('source').setState(editor.mode === 'source' ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF);

                if (editor.mode === 'source') {
                    editor.getCommand('autoCompleteToggle').setState(window["codemirror_" + editor.id].config.autoCloseTags ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF);

                    if (editor.plugins.textselection && textRange) {


                        var start, end;

                        start = OffSetToLineChannel(window["codemirror_" + editor.id], textRange.startOffset);

                        if (typeof (textRange.endOffset) == 'undefined') {
                            window["codemirror_" + editor.id].focus();
                            window["codemirror_" + editor.id].setCursor(start);
                        } else {
                            window["codemirror_" + editor.id].focus();
                            end = OffSetToLineChannel(window["codemirror_" + editor.id], textRange.endOffset);
                            window["codemirror_" + editor.id].setSelection(start, end);
                        }
                    }
                }

            });
            editor.on('resize', function() {
                if (window["editable_" + editor.id] && editor.mode === 'source') {
                    var holderElement = window["editable_" + editor.id].getParent();
                    var holderHeight = holderElement.$.clientHeight + 'px';
                    var holderWidth = holderElement.$.clientWidth + 'px';
                    window["codemirror_" + editor.id].setSize(holderWidth, holderHeight);
                }
            });
            
            editor.on('readOnly', function () {
                if (window["editable_" + editor.id] && editor.mode === 'source') {
                    window["codemirror_" + editor.id].setOption("readOnly", this.readOnly);
                }
            });
            
            editor.on('instanceReady', function (evt) {

                editor.container.getPrivate().events.contextmenu.listeners.splice(0, 1);

                var selectAllCommand = editor.commands.selectAll;

                if (selectAllCommand != null) {
                    selectAllCommand.exec = function () {
                        if (editor.mode === 'source') {
                            window["codemirror_" + editor.id].setSelection({
                                line: 0,
                                ch: 0
                            }, {
                                line: window["codemirror_" + editor.id].lineCount(),
                                ch: 0
                            });
                        } else {
                            var editable = editor.editable();
                            if (editable.is('body'))
                                editor.document.$.execCommand('SelectAll', false, null);
                            else {
                                var range = editor.createRange();
                                range.selectNodeContents(editable);
                                range.select();
                            }

                            editor.forceNextSelectionCheck();
                            editor.selectionChange();
                        }
                    };
                }
            });

            if (typeof (jQuery) != 'undefined' && jQuery('a[data-toggle="tab"]') && window["codemirror_" + editor.id]) {
                jQuery('a[data-toggle="tab"]').on('shown.bs.tab', function() {
                    window["codemirror_" + editor.id].refresh();
                });
            }

            editor.on('setData', function (data) {
 
                if (window["editable_" + editor.id] && editor.mode === 'source') {
                    window["codemirror_" + editor.id].setValue(data.data.dataValue);
                }
            });
        }
    });
    var sourceEditable = CKEDITOR.tools.createClass({
        base: CKEDITOR.editable,
        proto: {
            setData: function(data) {

                this.setValue(data);

                if (this.codeMirror != null) {
                    this.codeMirror.setValue(data);
                }

                this.editor.fire('dataReady');
            },
            getData: function() {
                return this.getValue();
            },
            insertHtml: function() {
            },
            insertElement: function() {
            },
            insertText: function() {
            },
            setReadOnly: function(isReadOnly) {
                this[(isReadOnly ? 'set' : 'remove') + 'Attribute']('readOnly', 'readonly');
            },
            editorID: null,
            detach: function() {
                window["codemirror_" + this.editorID].toTextArea();
                
                window["editable_" + this.editorID] = null;
                window["codemirror_" + this.editorID] = null;

                sourceEditable.baseProto.detach.call(this);
                
                this.clearCustomData();
                this.remove();
            }
        }
    });
})();
CKEDITOR.plugins.sourcearea = {
    commands: {
        source: {
            modes: {
                wysiwyg: 1,
                source: 1
            },
            editorFocus: false,
            readOnly: 1,
            exec: function(editor) {
                if (editor.mode === 'wysiwyg') {
                    editor.fire('saveSnapshot');
                }

                editor.getCommand('source').setState(CKEDITOR.TRISTATE_DISABLED);
                editor.setMode(editor.mode === 'source' ? 'wysiwyg' : 'source');
            },
            canUndo: false
        },
        searchCode: {
            modes: {
                wysiwyg: 0,
                source: 1
            },
            editorFocus: false,
            readOnly: 1,
            exec: function(editor) {
                CodeMirror.commands.find(window["codemirror_" + editor.id]);
            },
            canUndo: true
        },
        autoFormat: {
            modes: {
                wysiwyg: 0,
                source: 1
            },
            editorFocus: false,
            readOnly: 0,
            exec: function (editor) {
                var range = {
                    from: window["codemirror_" + editor.id].getCursor(true),
                    to: window["codemirror_" + editor.id].getCursor(false)
                };
                window["codemirror_" + editor.id].autoFormatRange(range.from, range.to);
            },
            canUndo: true
        },
        commentSelectedRange: {
            modes: {
                wysiwyg: 0,
                source: 1
            },
            editorFocus: false,
            readOnly: 0,
            exec: function (editor) {
                var range = {
                    from: window["codemirror_" + editor.id].getCursor(true),
                    to: window["codemirror_" + editor.id].getCursor(false)
                };
                window["codemirror_" + editor.id].commentRange(true, range.from, range.to);
            },
            canUndo: true
        },
        uncommentSelectedRange: {
            modes: {
                wysiwyg: 0,
                source: 1
            },
            editorFocus: false,
            readOnly: 0,
            exec: function(editor) {
                var range = {
                    from: window["codemirror_" + editor.id].getCursor(true),
                    to: window["codemirror_" + editor.id].getCursor(false)
                };
                window["codemirror_" + editor.id].commentRange(false, range.from, range.to);
                if (window["codemirror_" + editor.id].config.autoFormatOnUncomment) {
                    window["codemirror_" + editor.id].autoFormatRange(
                        range.from,
                        range.to);
                }
            },
            canUndo: true
        },
        autoCompleteToggle: {
            modes: {
                wysiwyg: 0,
                source: 1
            },
            editorFocus: false,
            readOnly: 1,
            exec: function (editor) {
                if (this.state == CKEDITOR.TRISTATE_ON) {
                    window["codemirror_" + editor.id].setOption("autoCloseTags", false);
                } else if (this.state == CKEDITOR.TRISTATE_OFF) {
                    window["codemirror_" + editor.id].setOption("autoCloseTags", true);
                }

                this.toggleState();
            },
            canUndo: true
        }
    }
};

function LineChannelToOffSet(ed, linech) {
    var line = linech.line;
    var ch = linech.ch;
    var n = (line + ch); //for the \n s & chars in the line
    for (i = 0; i < line; i++) {
        n += (ed.getLine(i)).length;//for the chars in all preceeding lines
    }
    return n;
}

function OffSetToLineChannel(ed, n) {
    var line = 0, ch = 0, index = 0;
    for (i = 0; i < ed.lineCount() ; i++) {
        len = (ed.getLine(i)).length;
        if (n < index + len) {
            
            line = i;
            ch = n - index;
            return { line: line, ch: ch };
        }
        len++;//for \n char
        index += len;
    }
    return { line: line, ch: ch };
}

function IsStyleSheetAlreadyLoaded(href) {
    var links = CKEDITOR.document.getHead().find('link');

    for (var i = 0; i < links.count() ; i++) {
        if (links.getItem(i).$.href === href) {
            return true;
        }
    }

    return false;
}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/codemirror.mode.p000060400000222265152455705240026641 0ustar00(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlmixed",function(c,d){var b=a.getMode(c,{name:"xml",htmlMode:true,multilineTagIndentFactor:d.multilineTagIndentFactor,multilineTagIndentPastTag:d.multilineTagIndentPastTag});var n=a.getMode(c,"css");var l=[],k=d&&d.scriptTypes;l.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:a.getMode(c,"javascript")});if(k){for(var e=0;e<k.length;++e){var j=k[e];l.push({matches:j.matches,mode:j.mode&&a.getMode(c,j.mode)})}}l.push({matches:/./,mode:a.getMode(c,"text/plain")});function f(t,r){var p=r.htmlState.tagName;if(p){p=p.toLowerCase()}var q=b.token(t,r.htmlState);if(p=="script"&&/\btag\b/.test(q)&&t.current()==">"){var u=t.string.slice(Math.max(0,t.pos-100),t.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i);u=u?u[1]:"";if(u&&/[\"\']/.test(u.charAt(0))){u=u.slice(1,u.length-1)}for(var o=0;o<l.length;++o){var s=l[o];if(typeof s.matches=="string"?u==s.matches:s.matches.test(u)){if(s.mode){r.token=m;r.localMode=s.mode;r.localState=s.mode.startState&&s.mode.startState(b.indent(r.htmlState,""))}break}}}else{if(p=="style"&&/\btag\b/.test(q)&&t.current()==">"){r.token=g;r.localMode=n;r.localState=n.startState(b.indent(r.htmlState,""))}}return q}function h(r,i,o){var q=r.current();var p=q.search(i);if(p>-1){r.backUp(q.length-p)}else{if(q.match(/<\/?$/)){r.backUp(q.length);if(!r.match(i,false)){r.match(q)}}}return o}function m(o,i){if(o.match(/^<\/\s*script\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*script\s*>/,i.localMode.token(o,i.localState))}function g(o,i){if(o.match(/^<\/\s*style\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*style\s*>/,n.token(o,i.localState))}return{startState:function(){var i=b.startState();return{token:f,localMode:null,localState:null,htmlState:i}},copyState:function(o){if(o.localState){var i=a.copyState(o.localMode,o.localState)}return{token:o.token,localMode:o.localMode,localState:i,htmlState:a.copyState(b,o.htmlState)}},token:function(o,i){return i.token(o,i)},indent:function(o,i){if(!o.localMode||/^\s*<\//.test(i)){return b.indent(o.htmlState,i)}else{if(o.localMode.indent){return o.localMode.indent(o.localState,i)}else{return a.Pass}}},innerMode:function(i){return{state:i.localState||i.htmlState,mode:i.localMode||b}}}},"xml","javascript","css");a.defineMIME("text/html","htmlmixed")});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("xml",function(y,k){var p=y.indentUnit;var x=k.multilineTagIndentFactor||1;var d=k.multilineTagIndentPastTag;if(d==null){d=true}var w=k.htmlMode?{autoSelfClosers:{area:true,base:true,br:true,col:true,command:true,embed:true,frame:true,hr:true,img:true,input:true,keygen:true,link:true,meta:true,param:true,source:true,track:true,wbr:true,menuitem:true},implicitlyClosed:{dd:true,li:true,optgroup:true,option:true,p:true,rp:true,rt:true,tbody:true,td:true,tfoot:true,th:true,tr:true},contextGrabbers:{dd:{dd:true,dt:true},dt:{dd:true,dt:true},li:{li:true},option:{option:true,optgroup:true},optgroup:{optgroup:true},p:{address:true,article:true,aside:true,blockquote:true,dir:true,div:true,dl:true,fieldset:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,menu:true,nav:true,ol:true,p:true,pre:true,section:true,table:true,ul:true},rp:{rp:true,rt:true},rt:{rp:true,rt:true},tbody:{tbody:true,tfoot:true},td:{td:true,th:true},tfoot:{tbody:true},th:{td:true,th:true},thead:{tbody:true,tfoot:true},tr:{tr:true}},doNotIndent:{pre:true},allowUnquoted:true,allowMissing:true,caseFold:true}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:false,allowMissing:false,caseFold:false};var c=k.alignCDATA;var f,g;function n(F,E){function C(G){E.tokenize=G;return G(F,E)}var D=F.next();if(D=="<"){if(F.eat("!")){if(F.eat("[")){if(F.match("CDATA[")){return C(v("atom","]]>"))}else{return null}}else{if(F.match("--")){return C(v("comment","-->"))}else{if(F.match("DOCTYPE",true,true)){F.eatWhile(/[\w\._\-]/);return C(z(1))}else{return null}}}}else{if(F.eat("?")){F.eatWhile(/[\w\._\-]/);E.tokenize=v("meta","?>");return"meta"}else{f=F.eat("/")?"closeTag":"openTag";E.tokenize=m;return"tag bracket"}}}else{if(D=="&"){var B;if(F.eat("#")){if(F.eat("x")){B=F.eatWhile(/[a-fA-F\d]/)&&F.eat(";")}else{B=F.eatWhile(/[\d]/)&&F.eat(";")}}else{B=F.eatWhile(/[\w\.\-:]/)&&F.eat(";")}return B?"atom":"error"}else{F.eatWhile(/[^&<]/);return null}}}function m(E,D){var C=E.next();if(C==">"||(C=="/"&&E.eat(">"))){D.tokenize=n;f=C==">"?"endTag":"selfcloseTag";return"tag bracket"}else{if(C=="="){f="equals";return null}else{if(C=="<"){D.tokenize=n;D.state=l;D.tagName=D.tagStart=null;var B=D.tokenize(E,D);return B?B+" tag error":"tag error"}else{if(/[\'\"]/.test(C)){D.tokenize=j(C);D.stringStartCol=E.column();return D.tokenize(E,D)}else{E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}}}}}function j(B){var C=function(E,D){while(!E.eol()){if(E.next()==B){D.tokenize=m;break}}return"string"};C.isInAttribute=true;return C}function v(C,B){return function(E,D){while(!E.eol()){if(E.match(B)){D.tokenize=n;break}E.next()}return C}}function z(B){return function(E,D){var C;while((C=E.next())!=null){if(C=="<"){D.tokenize=z(B+1);return D.tokenize(E,D)}else{if(C==">"){if(B==1){D.tokenize=n;break}else{D.tokenize=z(B-1);return D.tokenize(E,D)}}}}return"meta"}}function r(C,B,D){this.prev=C.context;this.tagName=B;this.indent=C.indented;this.startOfLine=D;if(w.doNotIndent.hasOwnProperty(B)||(C.context&&C.context.noIndent)){this.noIndent=true}}function u(B){if(B.context){B.context=B.context.prev}}function q(D,C){var B;while(true){if(!D.context){return}B=D.context.tagName;if(!w.contextGrabbers.hasOwnProperty(B)||!w.contextGrabbers[B].hasOwnProperty(C)){return}u(D)}}function l(B,D,C){if(B=="openTag"){C.tagStart=D.column();return b}else{if(B=="closeTag"){return t}else{return l}}}function b(B,D,C){if(B=="word"){C.tagName=D.current();g="tag";return e}else{g="error";return b}}function t(C,E,D){if(C=="word"){var B=E.current();if(D.context&&D.context.tagName!=B&&w.implicitlyClosed.hasOwnProperty(D.context.tagName)){u(D)}if(D.context&&D.context.tagName==B){g="tag";return s}else{g="tag error";return A}}else{g="error";return A}}function s(C,B,D){if(C!="endTag"){g="error";return s}u(D);return l}function A(B,D,C){g="error";return s(B,D,C)}function e(E,C,F){if(E=="word"){g="attribute";return i}else{if(E=="endTag"||E=="selfcloseTag"){var D=F.tagName,B=F.tagStart;F.tagName=F.tagStart=null;if(E=="selfcloseTag"||w.autoSelfClosers.hasOwnProperty(D)){q(F,D)}else{q(F,D);F.context=new r(F,D,B==F.indented)}return l}}g="error";return e}function i(B,D,C){if(B=="equals"){return o}if(!w.allowMissing){g="error"}return e(B,D,C)}function o(B,D,C){if(B=="string"){return h}if(B=="word"&&w.allowUnquoted){g="string";return e}g="error";return e(B,D,C)}function h(B,D,C){if(B=="string"){return h}return e(B,D,C)}return{startState:function(){return{tokenize:n,state:l,indented:0,tagName:null,tagStart:null,context:null}},token:function(D,C){if(!C.tagName&&D.sol()){C.indented=D.indentation()}if(D.eatSpace()){return null}f=null;var B=C.tokenize(D,C);if((B||f)&&B!="comment"){g=null;C.state=C.state(f||B,D,C);if(g){B=g=="error"?B+" error":g}}return B},indent:function(G,C,F){var E=G.context;if(G.tokenize.isInAttribute){if(G.tagStart==G.indented){return G.stringStartCol+1}else{return G.indented+p}}if(E&&E.noIndent){return a.Pass}if(G.tokenize!=m&&G.tokenize!=n){return F?F.match(/^(\s*)/)[0].length:0}if(G.tagName){if(d){return G.tagStart+G.tagName.length+2}else{return G.tagStart+p*x}}if(c&&/<!\[CDATA\[/.test(C)){return 0}var B=C&&/^<(\/)?([\w_:\.-]*)/.exec(C);if(B&&B[1]){while(E){if(E.tagName==B[2]){E=E.prev;break}else{if(w.implicitlyClosed.hasOwnProperty(E.tagName)){E=E.prev}else{break}}}}else{if(B){while(E){var D=w.contextGrabbers[E.tagName];if(D&&D.hasOwnProperty(B[2])){E=E.prev}else{break}}}}while(E&&!E.startOfLine){E=E.prev}if(E){return E.indent+p}else{return 0}},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml"}});a.defineMIME("text/xml","xml");a.defineMIME("application/xml","xml");if(!a.mimeModes.hasOwnProperty("text/html")){a.defineMIME("text/html",{name:"xml",htmlMode:true})}});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(Z,aj){var l=Z.indentUnit;var A=aj.statementIndent;var aB=aj.jsonld;var z=aj.json||aB;var g=aj.typescript;var au=aj.wordCharacters||/[\w$\xa1-\uffff]/;var ar=function(){function aR(aT){return{type:aT,style:"keyword"}}var aM=aR("keyword a"),aK=aR("keyword b"),aJ=aR("keyword c");var aL=aR("operator"),aP={type:"atom",style:"atom"};var aN={"if":aR("if"),"while":aM,"with":aM,"else":aK,"do":aK,"try":aK,"finally":aK,"return":aJ,"break":aJ,"continue":aJ,"new":aJ,"delete":aJ,"throw":aJ,"debugger":aJ,"var":aR("var"),"const":aR("var"),let:aR("var"),"function":aR("function"),"catch":aR("catch"),"for":aR("for"),"switch":aR("switch"),"case":aR("case"),"default":aR("default"),"in":aL,"typeof":aL,"instanceof":aL,"true":aP,"false":aP,"null":aP,"undefined":aP,"NaN":aP,"Infinity":aP,"this":aR("this"),module:aR("module"),"class":aR("class"),"super":aR("atom"),yield:aJ,"export":aR("export"),"import":aR("import"),"extends":aJ};if(g){var aS={type:"variable",style:"variable-3"};var aO={"interface":aR("interface"),"extends":aR("extends"),constructor:aR("constructor"),"public":aR("public"),"private":aR("private"),"protected":aR("protected"),"static":aR("static"),string:aS,number:aS,bool:aS,any:aS};for(var aQ in aO){aN[aQ]=aO[aQ]}}return aN}();var P=/[+\-*&%=<>!?|~^]/;var aq=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function F(aM){var aK=false,aJ,aL=false;while((aJ=aM.next())!=null){if(!aK){if(aJ=="/"&&!aL){return}if(aJ=="["){aL=true}else{if(aL&&aJ=="]"){aL=false}}}aK=!aK&&aJ=="\\"}}var S,G;function L(aL,aK,aJ){S=aL;G=aJ;return aK}function U(aN,aL){var aJ=aN.next();if(aJ=='"'||aJ=="'"){aL.tokenize=R(aJ);return aL.tokenize(aN,aL)}else{if(aJ=="."&&aN.match(/^\d+(?:[eE][+\-]?\d+)?/)){return L("number","number")}else{if(aJ=="."&&aN.match("..")){return L("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aJ)){return L(aJ)}else{if(aJ=="="&&aN.eat(">")){return L("=>","operator")}else{if(aJ=="0"&&aN.eat(/x/i)){aN.eatWhile(/[\da-f]/i);return L("number","number")}else{if(/\d/.test(aJ)){aN.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return L("number","number")}else{if(aJ=="/"){if(aN.eat("*")){aL.tokenize=aA;return aA(aN,aL)}else{if(aN.eat("/")){aN.skipToEnd();return L("comment","comment")}else{if(aL.lastType=="operator"||aL.lastType=="keyword c"||aL.lastType=="sof"||/^[\[{}\(,;:]$/.test(aL.lastType)){F(aN);aN.match(/^\b(([gimyu])(?![gimyu]*\2))+\b/);return L("regexp","string-2")}else{aN.eatWhile(P);return L("operator","operator",aN.current())}}}}else{if(aJ=="`"){aL.tokenize=aC;return aC(aN,aL)}else{if(aJ=="#"){aN.skipToEnd();return L("error","error")}else{if(P.test(aJ)){aN.eatWhile(P);return L("operator","operator",aN.current())}else{if(au.test(aJ)){aN.eatWhile(au);var aM=aN.current(),aK=ar.propertyIsEnumerable(aM)&&ar[aM];return(aK&&aL.lastType!=".")?L(aK.type,aK.style,aM):L("variable","variable",aM)}}}}}}}}}}}}}function R(aJ){return function(aN,aL){var aM=false,aK;if(aB&&aN.peek()=="@"&&aN.match(aq)){aL.tokenize=U;return L("jsonld-keyword","meta")}while((aK=aN.next())!=null){if(aK==aJ&&!aM){break}aM=!aM&&aK=="\\"}if(!aM){aL.tokenize=U}return L("string","string")}}function aA(aM,aL){var aJ=false,aK;while(aK=aM.next()){if(aK=="/"&&aJ){aL.tokenize=U;break}aJ=(aK=="*")}return L("comment","comment")}function aC(aM,aK){var aL=false,aJ;while((aJ=aM.next())!=null){if(!aL&&(aJ=="`"||aJ=="$"&&aM.eat("{"))){aK.tokenize=U;break}aL=!aL&&aJ=="\\"}return L("quasi","string-2",aM.current())}var m="([{}])";function ax(aP,aM){if(aM.fatArrowAt){aM.fatArrowAt=null}var aL=aP.string.indexOf("=>",aP.start);if(aL<0){return}var aO=0,aK=false;for(var aQ=aL-1;aQ>=0;--aQ){var aJ=aP.string.charAt(aQ);var aN=m.indexOf(aJ);if(aN>=0&&aN<3){if(!aO){++aQ;break}if(--aO==0){break}}else{if(aN>=3&&aN<6){++aO}else{if(au.test(aJ)){aK=true}else{if(/["'\/]/.test(aJ)){return}else{if(aK&&!aO){++aQ;break}}}}}}if(aK&&!aO){aM.fatArrowAt=aQ}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function J(aO,aK,aJ,aN,aL,aM){this.indented=aO;this.column=aK;this.type=aJ;this.prev=aL;this.info=aM;if(aN!=null){this.align=aN}}function s(aM,aL){for(var aK=aM.localVars;aK;aK=aK.next){if(aK.name==aL){return true}}for(var aJ=aM.context;aJ;aJ=aJ.prev){for(var aK=aJ.vars;aK;aK=aK.next){if(aK.name==aL){return true}}}}function f(aN,aK,aJ,aM,aO){var aP=aN.cc;D.state=aN;D.stream=aO;D.marked=null,D.cc=aP;D.style=aK;if(!aN.lexical.hasOwnProperty("align")){aN.lexical.align=true}while(true){var aL=aP.length?aP.pop():z?an:aH;if(aL(aJ,aM)){while(aP.length&&aP[aP.length-1].lex){aP.pop()()}if(D.marked){return D.marked}if(aJ=="variable"&&s(aN,aM)){return"variable-2"}return aK}}}var D={state:null,column:null,marked:null,cc:null};function aa(){for(var aJ=arguments.length-1;aJ>=0;aJ--){D.cc.push(arguments[aJ])}}function ae(){aa.apply(null,arguments);return true}function aw(aK){function aJ(aN){for(var aM=aN;aM;aM=aM.next){if(aM.name==aK){return true}}return false}var aL=D.state;if(aL.context){D.marked="def";if(aJ(aL.localVars)){return}aL.localVars={name:aK,next:aL.localVars}}else{if(aJ(aL.globalVars)){return}if(aj.globalVars){aL.globalVars={name:aK,next:aL.globalVars}}}}var q={name:"this",next:{name:"arguments"}};function w(){D.state.context={prev:D.state.context,vars:D.state.localVars};D.state.localVars=q}function x(){D.state.localVars=D.state.context.vars;D.state.context=D.state.context.prev}function aF(aK,aL){var aJ=function(){var aO=D.state,aM=aO.indented;if(aO.lexical.type=="stat"){aM=aO.lexical.indented}else{for(var aN=aO.lexical;aN&&aN.type==")"&&aN.align;aN=aN.prev){aM=aN.indented}}aO.lexical=new J(aM,D.stream.column(),aK,null,aO.lexical,aL)};aJ.lex=true;return aJ}function h(){var aJ=D.state;if(aJ.lexical.prev){if(aJ.lexical.type==")"){aJ.indented=aJ.lexical.indented}aJ.lexical=aJ.lexical.prev}}h.lex=true;function r(aJ){function aK(aL){if(aL==aJ){return ae()}else{if(aJ==";"){return aa()}else{return ae(aK)}}}return aK}function aH(aJ,aK){if(aJ=="var"){return ae(aF("vardef",aK.length),d,r(";"),h)}if(aJ=="keyword a"){return ae(aF("form"),an,aH,h)}if(aJ=="keyword b"){return ae(aF("form"),aH,h)}if(aJ=="{"){return ae(aF("}"),y,h)}if(aJ==";"){return ae()}if(aJ=="if"){if(D.state.lexical.info=="else"&&D.state.cc[D.state.cc.length-1]==h){D.state.cc.pop()()}return ae(aF("form"),an,aH,h,e)}if(aJ=="function"){return ae(M)}if(aJ=="for"){return ae(aF("form"),u,aH,h)}if(aJ=="variable"){return ae(aF("stat"),aI)}if(aJ=="switch"){return ae(aF("form"),an,aF("}","switch"),r("{"),y,h,h)}if(aJ=="case"){return ae(an,r(":"))}if(aJ=="default"){return ae(r(":"))}if(aJ=="catch"){return ae(aF("form"),w,r("("),af,r(")"),aH,h,x)}if(aJ=="module"){return ae(aF("form"),w,H,x,h)}if(aJ=="class"){return ae(aF("form"),V,h)}if(aJ=="export"){return ae(aF("form"),aG,h)}if(aJ=="import"){return ae(aF("form"),ag,h)}return aa(aF("stat"),an,r(";"),h)}function an(aJ){return Y(aJ,false)}function aE(aJ){return Y(aJ,true)}function Y(aK,aM){if(D.state.fatArrowAt==D.stream.start){var aJ=aM?N:W;if(aK=="("){return ae(w,aF(")"),at(i,")"),h,r("=>"),aJ,x)}else{if(aK=="variable"){return aa(w,i,r("=>"),aJ,x)}}}var aL=aM?j:ab;if(b.hasOwnProperty(aK)){return ae(aL)}if(aK=="function"){return ae(M,aL)}if(aK=="keyword c"){return ae(aM?ak:ai)}if(aK=="("){return ae(aF(")"),ai,az,r(")"),h,aL)}if(aK=="operator"||aK=="spread"){return ae(aM?aE:an)}if(aK=="["){return ae(aF("]"),n,h,aL)}if(aK=="{"){return ay(t,"}",null,aL)}if(aK=="quasi"){return aa(Q,aL)}return ae()}function ai(aJ){if(aJ.match(/[;\}\)\],]/)){return aa()}return aa(an)}function ak(aJ){if(aJ.match(/[;\}\)\],]/)){return aa()}return aa(aE)}function ab(aJ,aK){if(aJ==","){return ae(an)}return j(aJ,aK,false)}function j(aJ,aL,aN){var aK=aN==false?ab:j;var aM=aN==false?an:aE;if(aJ=="=>"){return ae(w,aN?N:W,x)}if(aJ=="operator"){if(/\+\+|--/.test(aL)){return ae(aK)}if(aL=="?"){return ae(an,r(":"),aM)}return ae(aM)}if(aJ=="quasi"){return aa(Q,aK)}if(aJ==";"){return}if(aJ=="("){return ay(aE,")","call",aK)}if(aJ=="."){return ae(al,aK)}if(aJ=="["){return ae(aF("]"),ai,r("]"),h,aK)}}function Q(aJ,aK){if(aJ!="quasi"){return aa()}if(aK.slice(aK.length-2)!="${"){return ae(Q)}return ae(an,p)}function p(aJ){if(aJ=="}"){D.marked="string-2";D.state.tokenize=aC;return ae(Q)}}function W(aJ){ax(D.stream,D.state);return aa(aJ=="{"?aH:an)}function N(aJ){ax(D.stream,D.state);return aa(aJ=="{"?aH:aE)}function aI(aJ){if(aJ==":"){return ae(h,aH)}return aa(ab,r(";"),h)}function al(aJ){if(aJ=="variable"){D.marked="property";return ae()}}function t(aJ,aK){if(aJ=="variable"||D.style=="keyword"){D.marked="property";if(aK=="get"||aK=="set"){return ae(I)}return ae(K)}else{if(aJ=="number"||aJ=="string"){D.marked=aB?"property":(D.style+" property");return ae(K)}else{if(aJ=="jsonld-keyword"){return ae(K)}else{if(aJ=="["){return ae(an,r("]"),K)}}}}}function I(aJ){if(aJ!="variable"){return aa(K)}D.marked="property";return ae(M)}function K(aJ){if(aJ==":"){return ae(aE)}if(aJ=="("){return aa(M)}}function at(aL,aJ){function aK(aN){if(aN==","){var aM=D.state.lexical;if(aM.info=="call"){aM.pos=(aM.pos||0)+1}return ae(aL,aK)}if(aN==aJ){return ae()}return ae(r(aJ))}return function(aM){if(aM==aJ){return ae()}return aa(aL,aK)}}function ay(aM,aJ,aL){for(var aK=3;aK<arguments.length;aK++){D.cc.push(arguments[aK])}return ae(aF(aJ,aL),at(aM,aJ),h)}function y(aJ){if(aJ=="}"){return ae()}return aa(aH,y)}function T(aJ){if(g&&aJ==":"){return ae(ad)}}function av(aJ,aK){if(aK=="="){return ae(aE)}}function ad(aJ){if(aJ=="variable"){D.marked="variable-3";return ae()}}function d(){return aa(i,T,ac,X)}function i(aJ,aK){if(aJ=="variable"){aw(aK);return ae()}if(aJ=="["){return ay(i,"]")}if(aJ=="{"){return ay(aD,"}")}}function aD(aJ,aK){if(aJ=="variable"&&!D.stream.match(/^\s*:/,false)){aw(aK);return ae(ac)}if(aJ=="variable"){D.marked="property"}return ae(r(":"),i,ac)}function ac(aJ,aK){if(aK=="="){return ae(aE)}}function X(aJ){if(aJ==","){return ae(d)}}function e(aJ,aK){if(aJ=="keyword b"&&aK=="else"){return ae(aF("form","else"),aH,h)}}function u(aJ){if(aJ=="("){return ae(aF(")"),E,r(")"),h)}}function E(aJ){if(aJ=="var"){return ae(d,r(";"),C)}if(aJ==";"){return ae(C)}if(aJ=="variable"){return ae(v)}return aa(an,r(";"),C)}function v(aJ,aK){if(aK=="in"||aK=="of"){D.marked="keyword";return ae(an)}return ae(ab,C)}function C(aJ,aK){if(aJ==";"){return ae(B)}if(aK=="in"||aK=="of"){D.marked="keyword";return ae(an)}return aa(an,r(";"),B)}function B(aJ){if(aJ!=")"){ae(an)}}function M(aJ,aK){if(aK=="*"){D.marked="keyword";return ae(M)}if(aJ=="variable"){aw(aK);return ae(M)}if(aJ=="("){return ae(w,aF(")"),at(af,")"),h,aH,x)}}function af(aJ){if(aJ=="spread"){return ae(af)}return aa(i,T,av)}function V(aJ,aK){if(aJ=="variable"){aw(aK);return ae(O)}}function O(aJ,aK){if(aK=="extends"){return ae(an,O)}if(aJ=="{"){return ae(aF("}"),o,h)}}function o(aJ,aK){if(aJ=="variable"||D.style=="keyword"){if(aK=="static"){D.marked="keyword";return ae(o)}D.marked="property";if(aK=="get"||aK=="set"){return ae(c,M,o)}return ae(M,o)}if(aK=="*"){D.marked="keyword";return ae(o)}if(aJ==";"){return ae(o)}if(aJ=="}"){return ae()}}function c(aJ){if(aJ!="variable"){return aa()}D.marked="property";return ae()}function H(aJ,aK){if(aJ=="string"){return ae(aH)}if(aJ=="variable"){aw(aK);return ae(ah)}}function aG(aJ,aK){if(aK=="*"){D.marked="keyword";return ae(ah,r(";"))}if(aK=="default"){D.marked="keyword";return ae(an,r(";"))}return aa(aH)}function ag(aJ){if(aJ=="string"){return ae()}return aa(ap,ah)}function ap(aJ,aK){if(aJ=="{"){return ay(ap,"}")}if(aJ=="variable"){aw(aK)}if(aK=="*"){D.marked="keyword"}return ae(k)}function k(aJ,aK){if(aK=="as"){D.marked="keyword";return ae(ap)}}function ah(aJ,aK){if(aK=="from"){D.marked="keyword";return ae(an)}}function n(aJ){if(aJ=="]"){return ae()}return aa(aE,am)}function am(aJ){if(aJ=="for"){return aa(az,r("]"))}if(aJ==","){return ae(at(ak,"]"))}return aa(at(aE,"]"))}function az(aJ){if(aJ=="for"){return ae(u,az)}if(aJ=="if"){return ae(an,az)}}function ao(aK,aJ){return aK.lastType=="operator"||aK.lastType==","||P.test(aJ.charAt(0))||/[,.]/.test(aJ.charAt(0))}return{startState:function(aK){var aJ={tokenize:U,lastType:"sof",cc:[],lexical:new J((aK||0)-l,0,"block",false),localVars:aj.localVars,context:aj.localVars&&{vars:aj.localVars},indented:0};if(aj.globalVars&&typeof aj.globalVars=="object"){aJ.globalVars=aj.globalVars}return aJ},token:function(aL,aK){if(aL.sol()){if(!aK.lexical.hasOwnProperty("align")){aK.lexical.align=false}aK.indented=aL.indentation();ax(aL,aK)}if(aK.tokenize!=aA&&aL.eatSpace()){return null}var aJ=aK.tokenize(aL,aK);if(S=="comment"){return aJ}aK.lastType=S=="operator"&&(G=="++"||G=="--")?"incdec":S;return f(aK,aJ,S,G,aL)},indent:function(aP,aJ){if(aP.tokenize==aA){return a.Pass}if(aP.tokenize!=U){return 0}var aO=aJ&&aJ.charAt(0),aM=aP.lexical;if(!/^\s*else\b/.test(aJ)){for(var aL=aP.cc.length-1;aL>=0;--aL){var aQ=aP.cc[aL];if(aQ==h){aM=aM.prev}else{if(aQ!=e){break}}}}if(aM.type=="stat"&&aO=="}"){aM=aM.prev}if(A&&aM.type==")"&&aM.prev.type=="stat"){aM=aM.prev}var aN=aM.type,aK=aO==aN;if(aN=="vardef"){return aM.indented+(aP.lastType=="operator"||aP.lastType==","?aM.info+1:0)}else{if(aN=="form"&&aO=="{"){return aM.indented}else{if(aN=="form"){return aM.indented+l}else{if(aN=="stat"){return aM.indented+(ao(aP,aJ)?A||l:0)}else{if(aM.info=="switch"&&!aK&&aj.doubleIndentSwitch!=false){return aM.indented+(/^(?:case|default)\b/.test(aJ)?l:2*l)}else{if(aM.align){return aM.column+(aK?0:1)}else{return aM.indented+(aK?0:l)}}}}}}},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:z?null:"/*",blockCommentEnd:z?null:"*/",lineComment:z?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:z?"json":"javascript",jsonldMode:aB,jsonMode:z}});a.registerHelper("wordChars","javascript",/[\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/x-javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(p){p.defineMode("css",function(T,G){if(!G.propertyKeywords){G=p.resolveMode("text/css")}var M=T.indentUnit,y=G.tokenHooks,w=G.documentTypes||{},S=G.mediaTypes||{},I=G.mediaFeatures||{},F=G.propertyKeywords||{},z=G.nonStandardPropertyKeywords||{},B=G.fontProperties||{},R=G.counterDescriptors||{},L=G.colorKeywords||{},O=G.valueKeywords||{},J=G.allowNested;var A,K;function U(X,Y){A=Y;return X}function W(aa,Z){var Y=aa.next();if(y[Y]){var X=y[Y](aa,Z);if(X!==false){return X}}if(Y=="@"){aa.eatWhile(/[\w\\\-]/);return U("def",aa.current())}else{if(Y=="="||(Y=="~"||Y=="|")&&aa.eat("=")){return U(null,"compare")}else{if(Y=='"'||Y=="'"){Z.tokenize=H(Y);return Z.tokenize(aa,Z)}else{if(Y=="#"){aa.eatWhile(/[\w\\\-]/);return U("atom","hash")}else{if(Y=="!"){aa.match(/^\s*\w*/);return U("keyword","important")}else{if(/\d/.test(Y)||Y=="."&&aa.eat(/\d/)){aa.eatWhile(/[\w.%]/);return U("number","unit")}else{if(Y==="-"){if(/[\d.]/.test(aa.peek())){aa.eatWhile(/[\w.%]/);return U("number","unit")}else{if(aa.match(/^-[\w\\\-]+/)){aa.eatWhile(/[\w\\\-]/);if(aa.match(/^\s*:/,false)){return U("variable-2","variable-definition")}return U("variable-2","variable")}else{if(aa.match(/^\w+-/)){return U("meta","meta")}}}}else{if(/[,+>*\/]/.test(Y)){return U(null,"select-op")}else{if(Y=="."&&aa.match(/^-?[_a-z][_a-z0-9-]*/i)){return U("qualifier","qualifier")}else{if(/[:;{}\[\]\(\)]/.test(Y)){return U(null,Y)}else{if((Y=="u"&&aa.match(/rl(-prefix)?\(/))||(Y=="d"&&aa.match("omain("))||(Y=="r"&&aa.match("egexp("))){aa.backUp(1);Z.tokenize=V;return U("property","word")}else{if(/[\w\\\-]/.test(Y)){aa.eatWhile(/[\w\\\-]/);return U("property","word")}else{return U(null,null)}}}}}}}}}}}}}function H(X){return function(ab,Z){var aa=false,Y;while((Y=ab.next())!=null){if(Y==X&&!aa){if(X==")"){ab.backUp(1)}break}aa=!aa&&Y=="\\"}if(Y==X||!aa&&X!=")"){Z.tokenize=null}return U("string","string")}}function V(Y,X){Y.next();if(!Y.match(/\s*[\"\')]/,false)){X.tokenize=H(")")}else{X.tokenize=null}return U(null,"(")}function N(Y,X,Z){this.type=Y;this.indent=X;this.prev=Z}function D(Y,Z,X){Y.context=new N(X,Z.indentation()+M,Y.context);return X}function P(X){X.context=X.context.prev;return X.context.type}function x(X,Z,Y){return C[Y.context.type](X,Z,Y)}function Q(Y,aa,Z,ab){for(var X=ab||1;X>0;X--){Z.context=Z.context.prev}return x(Y,aa,Z)}function E(Y){var X=Y.current().toLowerCase();if(O.hasOwnProperty(X)){K="atom"}else{if(L.hasOwnProperty(X)){K="keyword"}else{K="variable"}}}var C={};C.top=function(X,Z,Y){if(X=="{"){return D(Y,Z,"block")}else{if(X=="}"&&Y.context.prev){return P(Y)}else{if(/@(media|supports|(-moz-)?document)/.test(X)){return D(Y,Z,"atBlock")}else{if(/@(font-face|counter-style)/.test(X)){Y.stateArg=X;return"restricted_atBlock_before"}else{if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(X)){return"keyframes"}else{if(X&&X.charAt(0)=="@"){return D(Y,Z,"at")}else{if(X=="hash"){K="builtin"}else{if(X=="word"){K="tag"}else{if(X=="variable-definition"){return"maybeprop"}else{if(X=="interpolation"){return D(Y,Z,"interpolation")}else{if(X==":"){return"pseudo"}else{if(J&&X=="("){return D(Y,Z,"parens")}}}}}}}}}}}}return Y.context.type};C.block=function(X,aa,Y){if(X=="word"){var Z=aa.current().toLowerCase();if(F.hasOwnProperty(Z)){K="property";return"maybeprop"}else{if(z.hasOwnProperty(Z)){K="string-2";return"maybeprop"}else{if(J){K=aa.match(/^\s*:(?:\s|$)/,false)?"property":"tag";return"block"}else{K+=" error";return"maybeprop"}}}}else{if(X=="meta"){return"block"}else{if(!J&&(X=="hash"||X=="qualifier")){K="error";return"block"}else{return C.top(X,aa,Y)}}}};C.maybeprop=function(X,Z,Y){if(X==":"){return D(Y,Z,"prop")}return x(X,Z,Y)};C.prop=function(X,Z,Y){if(X==";"){return P(Y)}if(X=="{"&&J){return D(Y,Z,"propBlock")}if(X=="}"||X=="{"){return Q(X,Z,Y)}if(X=="("){return D(Y,Z,"parens")}if(X=="hash"&&!/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(Z.current())){K+=" error"}else{if(X=="word"){E(Z)}else{if(X=="interpolation"){return D(Y,Z,"interpolation")}}}return"prop"};C.propBlock=function(Y,X,Z){if(Y=="}"){return P(Z)}if(Y=="word"){K="property";return"maybeprop"}return Z.context.type};C.parens=function(X,Z,Y){if(X=="{"||X=="}"){return Q(X,Z,Y)}if(X==")"){return P(Y)}if(X=="("){return D(Y,Z,"parens")}if(X=="interpolation"){return D(Y,Z,"interpolation")}if(X=="word"){E(Z)}return"parens"};C.pseudo=function(X,Z,Y){if(X=="word"){K="variable-3";return Y.context.type}return x(X,Z,Y)};C.atBlock=function(X,aa,Y){if(X=="("){return D(Y,aa,"atBlock_parens")}if(X=="}"){return Q(X,aa,Y)}if(X=="{"){return P(Y)&&D(Y,aa,J?"block":"top")}if(X=="word"){var Z=aa.current().toLowerCase();if(Z=="only"||Z=="not"||Z=="and"||Z=="or"){K="keyword"}else{if(w.hasOwnProperty(Z)){K="tag"}else{if(S.hasOwnProperty(Z)){K="attribute"}else{if(I.hasOwnProperty(Z)){K="property"}else{if(F.hasOwnProperty(Z)){K="property"}else{if(z.hasOwnProperty(Z)){K="string-2"}else{if(O.hasOwnProperty(Z)){K="atom"}else{K="error"}}}}}}}}return Y.context.type};C.atBlock_parens=function(X,Z,Y){if(X==")"){return P(Y)}if(X=="{"||X=="}"){return Q(X,Z,Y,2)}return C.atBlock(X,Z,Y)};C.restricted_atBlock_before=function(X,Z,Y){if(X=="{"){return D(Y,Z,"restricted_atBlock")}if(X=="word"&&Y.stateArg=="@counter-style"){K="variable";return"restricted_atBlock_before"}return x(X,Z,Y)};C.restricted_atBlock=function(X,Z,Y){if(X=="}"){Y.stateArg=null;return P(Y)}if(X=="word"){if((Y.stateArg=="@font-face"&&!B.hasOwnProperty(Z.current().toLowerCase()))||(Y.stateArg=="@counter-style"&&!R.hasOwnProperty(Z.current().toLowerCase()))){K="error"}else{K="property"}return"maybeprop"}return"restricted_atBlock"};C.keyframes=function(X,Z,Y){if(X=="word"){K="variable";return"keyframes"}if(X=="{"){return D(Y,Z,"top")}return x(X,Z,Y)};C.at=function(X,Z,Y){if(X==";"){return P(Y)}if(X=="{"||X=="}"){return Q(X,Z,Y)}if(X=="word"){K="tag"}else{if(X=="hash"){K="builtin"}}return"at"};C.interpolation=function(X,Z,Y){if(X=="}"){return P(Y)}if(X=="{"||X==";"){return Q(X,Z,Y)}if(X=="word"){K="variable"}else{if(X!="variable"&&X!="("&&X!=")"){K="error"}}return"interpolation"};return{startState:function(X){return{tokenize:null,state:"top",stateArg:null,context:new N("top",X||0,null)}},token:function(Z,Y){if(!Y.tokenize&&Z.eatSpace()){return null}var X=(Y.tokenize||W)(Z,Y);if(X&&typeof X=="object"){A=X[1];X=X[0]}K=X;Y.state=C[Y.state](A,Z,Y);return K},indent:function(ab,Z){var Y=ab.context,aa=Z&&Z.charAt(0);var X=Y.indent;if(Y.type=="prop"&&(aa=="}"||aa==")")){Y=Y.prev}if(Y.prev&&(aa=="}"&&(Y.type=="block"||Y.type=="top"||Y.type=="interpolation"||Y.type=="restricted_atBlock")||aa==")"&&(Y.type=="parens"||Y.type=="atBlock_parens")||aa=="{"&&(Y.type=="at"||Y.type=="atBlock"))){X=Y.indent-M;Y=Y.prev}return X},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});function g(y){var x={};for(var w=0;w<y.length;++w){x[y[w]]=true}return x}var k=["domain","regexp","url","url-prefix"],a=g(k);var b=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],t=g(b);var v=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],i=g(v);var d=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],h=g(d);var m=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],e=g(m);var r=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],f=g(r);var o=["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"],s=g(o);var c=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],l=g(c);var j=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","spell-out","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","x-large","x-small","xor","xx-large","xx-small"],q=g(j);var n=k.concat(b).concat(v).concat(d).concat(m).concat(c).concat(j);p.registerHelper("hintWords","css",n);function u(z,y){var w=false,x;while((x=z.next())!=null){if(w&&x=="/"){y.tokenize=null;break}w=(x=="*")}return["comment","comment"]}p.defineMIME("text/css",{documentTypes:a,mediaTypes:t,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:e,fontProperties:f,counterDescriptors:s,colorKeywords:l,valueKeywords:q,tokenHooks:{"/":function(x,w){if(!x.eat("*")){return false}w.tokenize=u;return u(x,w)}},name:"css"});p.defineMIME("text/x-scss",{mediaTypes:t,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:e,colorKeywords:l,valueKeywords:q,fontProperties:f,allowNested:true,tokenHooks:{"/":function(x,w){if(x.eat("/")){x.skipToEnd();return["comment","comment"]}else{if(x.eat("*")){w.tokenize=u;return u(x,w)}else{return["operator","operator"]}}},":":function(w){if(w.match(/\s*\{/)){return[null,"{"]}return false},"$":function(w){w.match(/^[\w-]+/);if(w.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"#":function(w){if(!w.eat("{")){return false}return[null,"interpolation"]}},name:"css",helperType:"scss"});p.defineMIME("text/x-less",{mediaTypes:t,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:e,colorKeywords:l,valueKeywords:q,fontProperties:f,allowNested:true,tokenHooks:{"/":function(x,w){if(x.eat("/")){x.skipToEnd();return["comment","comment"]}else{if(x.eat("*")){w.tokenize=u;return u(x,w)}else{return["operator","operator"]}}},"@":function(w){if(w.eat("{")){return[null,"interpolation"]}if(w.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,false)){return false}w.eatWhile(/[\w\\\-]/);if(w.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(c){c.defineMode("clike",function(L,s){var F=L.indentUnit,B=s.statementIndentUnit||F,G=s.dontAlignCalls,v=s.keywords||{},z=s.types||{},M=s.builtin||{},H=s.blockKeywords||{},D=s.defKeywords||{},o=s.atoms||{},n=s.hooks||{},A=s.multiLineStrings,w=s.indentStatements!==false,u=s.indentSwitch!==false,q=s.namespaceSeparator;var x=/[+\-*&%=<>!?|\/]/;var J,r;function N(S,Q){var P=S.next();if(n[P]){var O=n[P](S,Q);if(O!==false){return O}}if(P=='"'||P=="'"){Q.tokenize=t(P);return Q.tokenize(S,Q)}if(/[\[\]{}\(\),;\:\.]/.test(P)){J=P;return null}if(/\d/.test(P)){S.eatWhile(/[\w\.]/);return"number"}if(P=="/"){if(S.eat("*")){Q.tokenize=C;return C(S,Q)}if(S.eat("/")){S.skipToEnd();return"comment"}}if(x.test(P)){S.eatWhile(x);return"operator"}S.eatWhile(/[\w\$_\xa1-\uffff]/);if(q){while(S.match(q)){S.eatWhile(/[\w\$_\xa1-\uffff]/)}}var R=S.current();if(v.propertyIsEnumerable(R)){if(H.propertyIsEnumerable(R)){J="newstatement"}if(D.propertyIsEnumerable(R)){r=true}return"keyword"}if(z.propertyIsEnumerable(R)){return"variable-3"}if(M.propertyIsEnumerable(R)){if(H.propertyIsEnumerable(R)){J="newstatement"}return"builtin"}if(o.propertyIsEnumerable(R)){return"atom"}return"variable"}function t(O){return function(T,R){var S=false,Q,P=false;while((Q=T.next())!=null){if(Q==O&&!S){P=true;break}S=!S&&Q=="\\"}if(P||!(S||A)){R.tokenize=null}return"string"}}function C(R,Q){var O=false,P;while(P=R.next()){if(P=="/"&&O){Q.tokenize=null;break}O=(P=="*")}return"comment"}function I(S,P,O,R,Q){this.indented=S;this.column=P;this.type=O;this.align=R;this.prev=Q}function y(O){return O=="statement"||O=="switchstatement"||O=="namespace"}function p(R,P,Q){var O=R.indented;if(R.context&&y(R.context.type)&&!y(Q)){O=R.context.indented}return R.context=new I(O,P,Q,null,R.context)}function K(P){var O=P.context.type;if(O==")"||O=="]"||O=="}"){P.indented=P.context.indented}return P.context=P.context.prev}function m(P,O){if(O.prevToken=="variable"||O.prevToken=="variable-3"){return true}if(/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(P.string.slice(0,P.start))){return true}}function E(O){for(;;){if(!O||O.type=="top"){return true}if(O.type=="}"&&O.prev.type!="namespace"){return false}O=O.prev}}return{startState:function(O){return{tokenize:null,context:new I((O||0)-F,0,"top",false),indented:0,startOfLine:true,prevToken:null}},token:function(T,S){var P=S.context;if(T.sol()){if(P.align==null){P.align=false}S.indented=T.indentation();S.startOfLine=true}if(T.eatSpace()){return null}J=r=null;var R=(S.tokenize||N)(T,S);if(R=="comment"||R=="meta"){return R}if(P.align==null){P.align=true}if((J==";"||J==":"||J==",")){while(y(S.context.type)){K(S)}}else{if(J=="{"){p(S,T.column(),"}")}else{if(J=="["){p(S,T.column(),"]")}else{if(J=="("){p(S,T.column(),")")}else{if(J=="}"){while(y(P.type)){P=K(S)}if(P.type=="}"){P=K(S)}while(y(P.type)){P=K(S)}}else{if(J==P.type){K(S)}else{if(w&&(((P.type=="}"||P.type=="top")&&J!=";")||(y(P.type)&&J=="newstatement"))){var Q="statement";if(J=="newstatement"&&u&&T.current()=="switch"){Q="switchstatement"}else{if(R=="keyword"&&T.current()=="namespace"){Q="namespace"}}p(S,T.column(),Q)}}}}}}}if(R=="variable"&&((S.prevToken=="def"||(s.typeFirstDefinitions&&m(T,S)&&E(S.context)&&T.match(/^\s*\(/,false))))){R="def"}if(n.token){var O=n.token(T,S,R);if(O!==undefined){R=O}}if(R=="def"&&s.styleDefs===false){R="variable"}S.startOfLine=false;S.prevToken=r?"def":R||J;return R},indent:function(T,P){if(T.tokenize!=N&&T.tokenize!=null){return c.Pass}var O=T.context,S=P&&P.charAt(0);if(y(O.type)&&S=="}"){O=O.prev}var Q=S==O.type;var R=O.prev&&O.prev.type=="switchstatement";if(y(O.type)){return O.indented+(S=="{"?0:B)}if(O.align&&(!G||O.type!=")")){return O.column+(Q?0:1)}if(O.type==")"&&!Q){return O.indented+B}return O.indented+(Q?0:F)+(!Q&&R&&!/^(?:case|default)\b/.test(P)?F:0)},electricInput:u?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",fold:"brace"}});function i(p){var n={},o=p.split(" ");for(var m=0;m<o.length;++m){n[o[m]]=true}return n}var l="auto if break case register continue return default do sizeof static else struct switch extern typedef float union for goto while enum const volatile";var j="int long char short double float unsigned signed void size_t ptrdiff_t";function d(n,m){if(!m.startOfLine){return false}for(;;){if(n.skipTo("\\")){n.next();if(n.eol()){m.tokenize=d;break}}else{n.skipToEnd();m.tokenize=null;break}}return"meta"}function a(m,n){if(n.prevToken=="variable-3"){return"variable-3"}return false}function k(o,n){o.backUp(1);if(o.match(/(R|u8R|uR|UR|LR)/)){var m=o.match(/"([^\s\\()]{0,16})\(/);if(!m){return false}n.cpp11RawStringDelim=m[1];n.tokenize=g;return g(o,n)}if(o.match(/(u8|u|U|L)/)){if(o.match(/["']/,false)){return"string"}return false}o.next();return false}function e(n){var m=/(\w+)::(\w+)$/.exec(n);return m&&m[1]==m[2]}function h(o,n){var m;while((m=o.next())!=null){if(m=='"'&&!o.eat('"')){n.tokenize=null;break}}return"string"}function g(p,n){var o=n.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&");var m=p.match(new RegExp(".*?\\)"+o+'"'));if(m){n.tokenize=null}else{p.skipToEnd()}return"string"}function b(m,q){if(typeof m=="string"){m=[m]}var p=[];function o(r){if(r){for(var s in r){if(r.hasOwnProperty(s)){p.push(s)}}}}o(q.keywords);o(q.types);o(q.builtin);o(q.atoms);if(p.length){q.helperType=m[0];c.registerHelper("hintWords",m[0],p)}for(var n=0;n<m.length;++n){c.defineMIME(m[n],q)}}b(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:i(l),types:i(j+" bool _Complex _Bool float_t double_t intptr_t intmax_t int8_t int16_t int32_t int64_t uintptr_t uintmax_t uint8_t uint16_t uint32_t uint64_t"),blockKeywords:i("case do else for if switch while struct"),defKeywords:i("struct"),typeFirstDefinitions:true,atoms:i("null true false"),hooks:{"#":d,"*":a},modeProps:{fold:["brace","include"]}});b(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:i(l+" asm dynamic_cast namespace reinterpret_cast try explicit new static_cast typeid catch operator template typename class friend private this using const_cast inline public throw virtual delete mutable protected alignas alignof constexpr decltype nullptr noexcept thread_local final static_assert override"),types:i(j+" bool wchar_t"),blockKeywords:i("catch class do else finally for if struct switch try while"),defKeywords:i("class namespace struct enum union"),typeFirstDefinitions:true,atoms:i("true false null"),hooks:{"#":d,"*":a,u:k,U:k,L:k,R:k,token:function(o,n,m){if(m=="variable"&&o.peek()=="("&&(n.prevToken==";"||n.prevToken==null||n.prevToken=="}")&&e(o.current())){return"def"}}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}});b("text/x-java",{name:"clike",keywords:i("abstract assert break case catch class const continue default do else enum extends final finally float for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while"),types:i("byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:i("catch class do else finally for if switch try while"),defKeywords:i("class interface package enum"),typeFirstDefinitions:true,atoms:i("true false null"),hooks:{"@":function(m){m.eatWhile(/[\w\$_]/);return"meta"}},modeProps:{fold:["brace","import"]}});b("text/x-csharp",{name:"clike",keywords:i("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:i("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:i("catch class do else finally for foreach if struct switch try while"),defKeywords:i("class interface namespace struct var"),typeFirstDefinitions:true,atoms:i("true false null"),hooks:{"@":function(n,m){if(n.eat('"')){m.tokenize=h;return h(n,m)}n.eatWhile(/[\w\$_]/);return"meta"}}});function f(o,m){var n=false;while(!o.eol()){if(!n&&o.match('"""')){m.tokenize=null;break}n=o.next()=="\\"&&!n}return"string"}b("text/x-scala",{name:"clike",keywords:i("abstract case catch class def do else extends false final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ : = => <- <: <% >: # @ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble :: #:: "),types:i("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:true,blockKeywords:i("catch class do else finally for forSome if match switch try while"),defKeywords:i("class def object package trait type val var"),atoms:i("true false null"),indentStatements:false,indentSwitch:false,hooks:{"@":function(m){m.eatWhile(/[\w\$_]/);return"meta"},'"':function(n,m){if(!n.match('""')){return false}m.tokenize=f;return m.tokenize(n,m)},"'":function(m){m.eatWhile(/[\w\$_\xa1-\uffff]/);return"atom"}},modeProps:{closeBrackets:{triples:'"'}}});b(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:i("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:i("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:i("for while do if else struct"),builtin:i("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:i("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TexureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:false,hooks:{"#":d},modeProps:{fold:["brace","include"]}});b("text/x-nesc",{name:"clike",keywords:i(l+"as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:i(j),blockKeywords:i("case do else for if switch while struct"),atoms:i("null true false"),hooks:{"#":d},modeProps:{fold:["brace","include"]}});b("text/x-objectivec",{name:"clike",keywords:i(l+"inline restrict _Bool _Complex _Imaginery BOOL Class bycopy byref id IMP in inout nil oneway out Protocol SEL self super atomic nonatomic retain copy readwrite readonly"),types:i(j),atoms:i("YES NO NULL NILL ON OFF true false"),hooks:{"@":function(m){m.eatWhile(/[\w\$]/);return"keyword"},"#":d},modeProps:{fold:"brace"}})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"),require("../clike/clike"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../htmlmixed/htmlmixed","../clike/clike"],a)}else{a(CodeMirror)}}})(function(d){function f(m){var k={},l=m.split(" ");for(var j=0;j<l.length;++j){k[l[j]]=true}return k}function e(l,j,k){if(l.length==0){return b(j)}return function(p,o){var n=l[0];for(var m=0;m<n.length;m++){if(p.match(n[m][0])){o.tokenize=e(l.slice(1),j);return n[m][1]}}o.tokenize=b(j,k);return"string"}}function b(k,j){return function(m,l){return c(m,l,k,j)}}function c(n,l,k,j){if(j!==false&&n.match("${",false)||n.match("{$",false)){l.tokenize=null;return"string"}if(j!==false&&n.match(/^\$[a-zA-Z_][a-zA-Z0-9_]*/)){if(n.match("[",false)){l.tokenize=e([[["[",null]],[[/\d[\w\.]*/,"number"],[/\$[a-zA-Z_][a-zA-Z0-9_]*/,"variable-2"],[/[\w\$]+/,"variable"]],[["]",null]]],k,j)}if(n.match(/\-\>\w/,false)){l.tokenize=e([[["->",null]],[[/[\w]+/,"variable"]]],k,j)}return"variable-2"}var m=false;while(!n.eol()&&(m||j===false||(!n.match("{$",false)&&!n.match(/^(\$[a-zA-Z_][a-zA-Z0-9_]*|\$\{)/,false)))){if(!m&&n.match(k)){l.tokenize=null;l.tokStack.pop();l.tokStack.pop();break}m=n.next()=="\\"&&!m}return"string"}var h="abstract and array as break case catch class clone const continue declare default do else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach function global goto if implements interface instanceof namespace new or private protected public static switch throw trait try use var while xor die echo empty exit eval include include_once isset list require require_once return print unset __halt_compiler self static parent yield insteadof finally";var i="true false null TRUE FALSE NULL __CLASS__ __DIR__ __FILE__ __LINE__ __METHOD__ __FUNCTION__ __NAMESPACE__ __TRAIT__";var a="func_num_args func_get_arg func_get_args strlen strcmp strncmp strcasecmp strncasecmp each error_reporting define defined trigger_error user_error set_error_handler restore_error_handler get_declared_classes get_loaded_extensions extension_loaded get_extension_funcs debug_backtrace constant bin2hex hex2bin sleep usleep time mktime gmmktime strftime gmstrftime strtotime date gmdate getdate localtime checkdate flush wordwrap htmlspecialchars htmlentities html_entity_decode md5 md5_file crc32 getimagesize image_type_to_mime_type phpinfo phpversion phpcredits strnatcmp strnatcasecmp substr_count strspn strcspn strtok strtoupper strtolower strpos strrpos strrev hebrev hebrevc nl2br basename dirname pathinfo stripslashes stripcslashes strstr stristr strrchr str_shuffle str_word_count strcoll substr substr_replace quotemeta ucfirst ucwords strtr addslashes addcslashes rtrim str_replace str_repeat count_chars chunk_split trim ltrim strip_tags similar_text explode implode setlocale localeconv parse_str str_pad chop strchr sprintf printf vprintf vsprintf sscanf fscanf parse_url urlencode urldecode rawurlencode rawurldecode readlink linkinfo link unlink exec system escapeshellcmd escapeshellarg passthru shell_exec proc_open proc_close rand srand getrandmax mt_rand mt_srand mt_getrandmax base64_decode base64_encode abs ceil floor round is_finite is_nan is_infinite bindec hexdec octdec decbin decoct dechex base_convert number_format fmod ip2long long2ip getenv putenv getopt microtime gettimeofday getrusage uniqid quoted_printable_decode set_time_limit get_cfg_var magic_quotes_runtime set_magic_quotes_runtime get_magic_quotes_gpc get_magic_quotes_runtime import_request_variables error_log serialize unserialize memory_get_usage var_dump var_export debug_zval_dump print_r highlight_file show_source highlight_string ini_get ini_get_all ini_set ini_alter ini_restore get_include_path set_include_path restore_include_path setcookie header headers_sent connection_aborted connection_status ignore_user_abort parse_ini_file is_uploaded_file move_uploaded_file intval floatval doubleval strval gettype settype is_null is_resource is_bool is_long is_float is_int is_integer is_double is_real is_numeric is_string is_array is_object is_scalar ereg ereg_replace eregi eregi_replace split spliti join sql_regcase dl pclose popen readfile rewind rmdir umask fclose feof fgetc fgets fgetss fread fopen fpassthru ftruncate fstat fseek ftell fflush fwrite fputs mkdir rename copy tempnam tmpfile file file_get_contents stream_select stream_context_create stream_context_set_params stream_context_set_option stream_context_get_options stream_filter_prepend stream_filter_append fgetcsv flock get_meta_tags stream_set_write_buffer set_file_buffer set_socket_blocking stream_set_blocking socket_set_blocking stream_get_meta_data stream_register_wrapper stream_wrapper_register stream_set_timeout socket_set_timeout socket_get_status realpath fnmatch fsockopen pfsockopen pack unpack get_browser crypt opendir closedir chdir getcwd rewinddir readdir dir glob fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype file_exists is_writable is_writeable is_readable is_executable is_file is_dir is_link stat lstat chown touch clearstatcache mail ob_start ob_flush ob_clean ob_end_flush ob_end_clean ob_get_flush ob_get_clean ob_get_length ob_get_level ob_get_status ob_get_contents ob_implicit_flush ob_list_handlers ksort krsort natsort natcasesort asort arsort sort rsort usort uasort uksort shuffle array_walk count end prev next reset current key min max in_array array_search extract compact array_fill range array_multisort array_push array_pop array_shift array_unshift array_splice array_slice array_merge array_merge_recursive array_keys array_values array_count_values array_reverse array_reduce array_pad array_flip array_change_key_case array_rand array_unique array_intersect array_intersect_assoc array_diff array_diff_assoc array_sum array_filter array_map array_chunk array_key_exists pos sizeof key_exists assert assert_options version_compare ftok str_rot13 aggregate session_name session_module_name session_save_path session_id session_regenerate_id session_decode session_register session_unregister session_is_registered session_encode session_start session_destroy session_unset session_set_save_handler session_cache_limiter session_cache_expire session_set_cookie_params session_get_cookie_params session_write_close preg_match preg_match_all preg_replace preg_replace_callback preg_split preg_quote preg_grep overload ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_lower ctype_graph ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit virtual apache_request_headers apache_note apache_lookup_uri apache_child_terminate apache_setenv apache_response_headers apache_get_version getallheaders mysql_connect mysql_pconnect mysql_close mysql_select_db mysql_create_db mysql_drop_db mysql_query mysql_unbuffered_query mysql_db_query mysql_list_dbs mysql_list_tables mysql_list_fields mysql_list_processes mysql_error mysql_errno mysql_affected_rows mysql_insert_id mysql_result mysql_num_rows mysql_num_fields mysql_fetch_row mysql_fetch_array mysql_fetch_assoc mysql_fetch_object mysql_data_seek mysql_fetch_lengths mysql_fetch_field mysql_field_seek mysql_free_result mysql_field_name mysql_field_table mysql_field_len mysql_field_type mysql_field_flags mysql_escape_string mysql_real_escape_string mysql_stat mysql_thread_id mysql_client_encoding mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql mysql_fieldname mysql_fieldtable mysql_fieldlen mysql_fieldtype mysql_fieldflags mysql_selectdb mysql_createdb mysql_dropdb mysql_freeresult mysql_numfields mysql_numrows mysql_listdbs mysql_listtables mysql_listfields mysql_db_name mysql_dbname mysql_tablename mysql_table_name pg_connect pg_pconnect pg_close pg_connection_status pg_connection_busy pg_connection_reset pg_host pg_dbname pg_port pg_tty pg_options pg_ping pg_query pg_send_query pg_cancel_query pg_fetch_result pg_fetch_row pg_fetch_assoc pg_fetch_array pg_fetch_object pg_fetch_all pg_affected_rows pg_get_result pg_result_seek pg_result_status pg_free_result pg_last_oid pg_num_rows pg_num_fields pg_field_name pg_field_num pg_field_size pg_field_type pg_field_prtlen pg_field_is_null pg_get_notify pg_get_pid pg_result_error pg_last_error pg_last_notice pg_put_line pg_end_copy pg_copy_to pg_copy_from pg_trace pg_untrace pg_lo_create pg_lo_unlink pg_lo_open pg_lo_close pg_lo_read pg_lo_write pg_lo_read_all pg_lo_import pg_lo_export pg_lo_seek pg_lo_tell pg_escape_string pg_escape_bytea pg_unescape_bytea pg_client_encoding pg_set_client_encoding pg_meta_data pg_convert pg_insert pg_update pg_delete pg_select pg_exec pg_getlastoid pg_cmdtuples pg_errormessage pg_numrows pg_numfields pg_fieldname pg_fieldsize pg_fieldtype pg_fieldnum pg_fieldprtlen pg_fieldisnull pg_freeresult pg_result pg_loreadall pg_locreate pg_lounlink pg_loopen pg_loclose pg_loread pg_lowrite pg_loimport pg_loexport http_response_code get_declared_traits getimagesizefromstring socket_import_stream stream_set_chunk_size trait_exists header_register_callback class_uses session_status session_register_shutdown echo print global static exit array empty eval isset unset die include require include_once require_once json_decode json_encode json_last_error json_last_error_msg curl_close curl_copy_handle curl_errno curl_error curl_escape curl_exec curl_file_create curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_multi_setopt curl_multi_strerror curl_pause curl_reset curl_setopt_array curl_setopt curl_share_close curl_share_init curl_share_setopt curl_strerror curl_unescape curl_version mysqli_affected_rows mysqli_autocommit mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect_errno mysqli_connect_error mysqli_connect mysqli_data_seek mysqli_debug mysqli_dump_debug_info mysqli_errno mysqli_error_list mysqli_error mysqli_fetch_all mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_charset mysqli_get_client_info mysqli_get_client_stats mysqli_get_client_version mysqli_get_connection_stats mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_more_results mysqli_multi_query mysqli_next_result mysqli_num_fields mysqli_num_rows mysqli_options mysqli_ping mysqli_prepare mysqli_query mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reap_async_query mysqli_refresh mysqli_rollback mysqli_select_db mysqli_set_charset mysqli_set_local_infile_default mysqli_set_local_infile_handler mysqli_sqlstate mysqli_ssl_set mysqli_stat mysqli_stmt_init mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count";d.registerHelper("hintWords","php",[h,i,a].join(" ").split(" "));d.registerHelper("wordChars","php",/[\w$]/);var g={name:"clike",helperType:"php",keywords:f(h),blockKeywords:f("catch do else elseif for foreach if switch try while finally"),defKeywords:f("class function interface namespace trait"),atoms:f(i),builtin:f(a),multiLineStrings:true,hooks:{"$":function(j){j.eatWhile(/[\w\$_]/);return"variable-2"},"<":function(m,k){if(m.match(/<</)){var j=m.eat("'");m.eatWhile(/[\w\.]/);var l=m.current().slice(3+(j?1:0));if(j){m.eat("'")}if(l){(k.tokStack||(k.tokStack=[])).push(l,0);k.tokenize=b(l,j?false:true);return"string"}}return false},"#":function(j){while(!j.eol()&&!j.match("?>",false)){j.next()}return"comment"},"/":function(j){if(j.eat("/")){while(!j.eol()&&!j.match("?>",false)){j.next()}return"comment"}return false},'"':function(j,k){(k.tokStack||(k.tokStack=[])).push('"',0);k.tokenize=b('"');return"string"},"{":function(j,k){if(k.tokStack&&k.tokStack.length){k.tokStack[k.tokStack.length-1]++}return false},"}":function(j,k){if(k.tokStack&&k.tokStack.length>0&&!--k.tokStack[k.tokStack.length-1]){k.tokenize=b(k.tokStack[k.tokStack.length-2])}return false}}};d.defineMode("php",function(l,m){var n=d.getMode(l,"text/html");var j=d.getMode(l,g);function k(u,s){var r=s.curMode==j;if(u.sol()&&s.pending&&s.pending!='"'&&s.pending!="'"){s.pending=null}if(!r){if(u.match(/^<\?\w*/)){s.curMode=j;s.curState=s.php;return"meta"}if(s.pending=='"'||s.pending=="'"){while(!u.eol()&&u.next()!=s.pending){}var q="string"}else{if(s.pending&&u.pos<s.pending.end){u.pos=s.pending.end;var q=s.pending.style}else{var q=n.token(u,s.curState)}}if(s.pending){s.pending=null}var t=u.current(),p=t.search(/<\?/),o;if(p!=-1){if(q=="string"&&(o=t.match(/[\'\"]$/))&&!/\?>/.test(t)){s.pending=o[0]}else{s.pending={end:u.pos,style:q}}u.backUp(t.length-p)}return q}else{if(r&&s.php.tokenize==null&&u.match("?>")){s.curMode=n;s.curState=s.html;return"meta"}else{return j.token(u,s.curState)}}}return{startState:function(){var o=d.startState(n),p=d.startState(j);return{html:o,php:p,curMode:m.startOpen?j:n,curState:m.startOpen?p:o,pending:null}},copyState:function(r){var p=r.html,q=d.copyState(n,p),t=r.php,o=d.copyState(j,t),s;if(r.curMode==n){s=q}else{s=o}return{html:q,php:o,curMode:r.curMode,curState:s,pending:r.pending}},token:k,indent:function(p,o){if((p.curMode!=j&&/^\s*<\//.test(o))||(p.curMode==j&&/^\?>/.test(o))){return n.indent(p.html,o)}return p.curMode.indent(p.curState,o)},blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",innerMode:function(o){return{state:o.curState,mode:o.curMode}}}},"htmlmixed","clike");d.defineMIME("application/x-httpd-php","php");d.defineMIME("application/x-httpd-php-open",{name:"php",startOpen:true});d.defineMIME("text/x-php",g)});extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/codemirror.mode.j000060400000034312152455705240026625 0ustar00(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(Z,aj){var l=Z.indentUnit;var A=aj.statementIndent;var aB=aj.jsonld;var z=aj.json||aB;var g=aj.typescript;var au=aj.wordCharacters||/[\w$\xa1-\uffff]/;var ar=function(){function aR(aT){return{type:aT,style:"keyword"}}var aM=aR("keyword a"),aK=aR("keyword b"),aJ=aR("keyword c");var aL=aR("operator"),aP={type:"atom",style:"atom"};var aN={"if":aR("if"),"while":aM,"with":aM,"else":aK,"do":aK,"try":aK,"finally":aK,"return":aJ,"break":aJ,"continue":aJ,"new":aJ,"delete":aJ,"throw":aJ,"debugger":aJ,"var":aR("var"),"const":aR("var"),let:aR("var"),"function":aR("function"),"catch":aR("catch"),"for":aR("for"),"switch":aR("switch"),"case":aR("case"),"default":aR("default"),"in":aL,"typeof":aL,"instanceof":aL,"true":aP,"false":aP,"null":aP,"undefined":aP,"NaN":aP,"Infinity":aP,"this":aR("this"),module:aR("module"),"class":aR("class"),"super":aR("atom"),yield:aJ,"export":aR("export"),"import":aR("import"),"extends":aJ};if(g){var aS={type:"variable",style:"variable-3"};var aO={"interface":aR("interface"),"extends":aR("extends"),constructor:aR("constructor"),"public":aR("public"),"private":aR("private"),"protected":aR("protected"),"static":aR("static"),string:aS,number:aS,bool:aS,any:aS};for(var aQ in aO){aN[aQ]=aO[aQ]}}return aN}();var P=/[+\-*&%=<>!?|~^]/;var aq=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function F(aM){var aK=false,aJ,aL=false;while((aJ=aM.next())!=null){if(!aK){if(aJ=="/"&&!aL){return}if(aJ=="["){aL=true}else{if(aL&&aJ=="]"){aL=false}}}aK=!aK&&aJ=="\\"}}var S,G;function L(aL,aK,aJ){S=aL;G=aJ;return aK}function U(aN,aL){var aJ=aN.next();if(aJ=='"'||aJ=="'"){aL.tokenize=R(aJ);return aL.tokenize(aN,aL)}else{if(aJ=="."&&aN.match(/^\d+(?:[eE][+\-]?\d+)?/)){return L("number","number")}else{if(aJ=="."&&aN.match("..")){return L("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aJ)){return L(aJ)}else{if(aJ=="="&&aN.eat(">")){return L("=>","operator")}else{if(aJ=="0"&&aN.eat(/x/i)){aN.eatWhile(/[\da-f]/i);return L("number","number")}else{if(/\d/.test(aJ)){aN.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return L("number","number")}else{if(aJ=="/"){if(aN.eat("*")){aL.tokenize=aA;return aA(aN,aL)}else{if(aN.eat("/")){aN.skipToEnd();return L("comment","comment")}else{if(aL.lastType=="operator"||aL.lastType=="keyword c"||aL.lastType=="sof"||/^[\[{}\(,;:]$/.test(aL.lastType)){F(aN);aN.match(/^\b(([gimyu])(?![gimyu]*\2))+\b/);return L("regexp","string-2")}else{aN.eatWhile(P);return L("operator","operator",aN.current())}}}}else{if(aJ=="`"){aL.tokenize=aC;return aC(aN,aL)}else{if(aJ=="#"){aN.skipToEnd();return L("error","error")}else{if(P.test(aJ)){aN.eatWhile(P);return L("operator","operator",aN.current())}else{if(au.test(aJ)){aN.eatWhile(au);var aM=aN.current(),aK=ar.propertyIsEnumerable(aM)&&ar[aM];return(aK&&aL.lastType!=".")?L(aK.type,aK.style,aM):L("variable","variable",aM)}}}}}}}}}}}}}function R(aJ){return function(aN,aL){var aM=false,aK;if(aB&&aN.peek()=="@"&&aN.match(aq)){aL.tokenize=U;return L("jsonld-keyword","meta")}while((aK=aN.next())!=null){if(aK==aJ&&!aM){break}aM=!aM&&aK=="\\"}if(!aM){aL.tokenize=U}return L("string","string")}}function aA(aM,aL){var aJ=false,aK;while(aK=aM.next()){if(aK=="/"&&aJ){aL.tokenize=U;break}aJ=(aK=="*")}return L("comment","comment")}function aC(aM,aK){var aL=false,aJ;while((aJ=aM.next())!=null){if(!aL&&(aJ=="`"||aJ=="$"&&aM.eat("{"))){aK.tokenize=U;break}aL=!aL&&aJ=="\\"}return L("quasi","string-2",aM.current())}var m="([{}])";function ax(aP,aM){if(aM.fatArrowAt){aM.fatArrowAt=null}var aL=aP.string.indexOf("=>",aP.start);if(aL<0){return}var aO=0,aK=false;for(var aQ=aL-1;aQ>=0;--aQ){var aJ=aP.string.charAt(aQ);var aN=m.indexOf(aJ);if(aN>=0&&aN<3){if(!aO){++aQ;break}if(--aO==0){break}}else{if(aN>=3&&aN<6){++aO}else{if(au.test(aJ)){aK=true}else{if(/["'\/]/.test(aJ)){return}else{if(aK&&!aO){++aQ;break}}}}}}if(aK&&!aO){aM.fatArrowAt=aQ}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function J(aO,aK,aJ,aN,aL,aM){this.indented=aO;this.column=aK;this.type=aJ;this.prev=aL;this.info=aM;if(aN!=null){this.align=aN}}function s(aM,aL){for(var aK=aM.localVars;aK;aK=aK.next){if(aK.name==aL){return true}}for(var aJ=aM.context;aJ;aJ=aJ.prev){for(var aK=aJ.vars;aK;aK=aK.next){if(aK.name==aL){return true}}}}function f(aN,aK,aJ,aM,aO){var aP=aN.cc;D.state=aN;D.stream=aO;D.marked=null,D.cc=aP;D.style=aK;if(!aN.lexical.hasOwnProperty("align")){aN.lexical.align=true}while(true){var aL=aP.length?aP.pop():z?an:aH;if(aL(aJ,aM)){while(aP.length&&aP[aP.length-1].lex){aP.pop()()}if(D.marked){return D.marked}if(aJ=="variable"&&s(aN,aM)){return"variable-2"}return aK}}}var D={state:null,column:null,marked:null,cc:null};function aa(){for(var aJ=arguments.length-1;aJ>=0;aJ--){D.cc.push(arguments[aJ])}}function ae(){aa.apply(null,arguments);return true}function aw(aK){function aJ(aN){for(var aM=aN;aM;aM=aM.next){if(aM.name==aK){return true}}return false}var aL=D.state;if(aL.context){D.marked="def";if(aJ(aL.localVars)){return}aL.localVars={name:aK,next:aL.localVars}}else{if(aJ(aL.globalVars)){return}if(aj.globalVars){aL.globalVars={name:aK,next:aL.globalVars}}}}var q={name:"this",next:{name:"arguments"}};function w(){D.state.context={prev:D.state.context,vars:D.state.localVars};D.state.localVars=q}function x(){D.state.localVars=D.state.context.vars;D.state.context=D.state.context.prev}function aF(aK,aL){var aJ=function(){var aO=D.state,aM=aO.indented;if(aO.lexical.type=="stat"){aM=aO.lexical.indented}else{for(var aN=aO.lexical;aN&&aN.type==")"&&aN.align;aN=aN.prev){aM=aN.indented}}aO.lexical=new J(aM,D.stream.column(),aK,null,aO.lexical,aL)};aJ.lex=true;return aJ}function h(){var aJ=D.state;if(aJ.lexical.prev){if(aJ.lexical.type==")"){aJ.indented=aJ.lexical.indented}aJ.lexical=aJ.lexical.prev}}h.lex=true;function r(aJ){function aK(aL){if(aL==aJ){return ae()}else{if(aJ==";"){return aa()}else{return ae(aK)}}}return aK}function aH(aJ,aK){if(aJ=="var"){return ae(aF("vardef",aK.length),d,r(";"),h)}if(aJ=="keyword a"){return ae(aF("form"),an,aH,h)}if(aJ=="keyword b"){return ae(aF("form"),aH,h)}if(aJ=="{"){return ae(aF("}"),y,h)}if(aJ==";"){return ae()}if(aJ=="if"){if(D.state.lexical.info=="else"&&D.state.cc[D.state.cc.length-1]==h){D.state.cc.pop()()}return ae(aF("form"),an,aH,h,e)}if(aJ=="function"){return ae(M)}if(aJ=="for"){return ae(aF("form"),u,aH,h)}if(aJ=="variable"){return ae(aF("stat"),aI)}if(aJ=="switch"){return ae(aF("form"),an,aF("}","switch"),r("{"),y,h,h)}if(aJ=="case"){return ae(an,r(":"))}if(aJ=="default"){return ae(r(":"))}if(aJ=="catch"){return ae(aF("form"),w,r("("),af,r(")"),aH,h,x)}if(aJ=="module"){return ae(aF("form"),w,H,x,h)}if(aJ=="class"){return ae(aF("form"),V,h)}if(aJ=="export"){return ae(aF("form"),aG,h)}if(aJ=="import"){return ae(aF("form"),ag,h)}return aa(aF("stat"),an,r(";"),h)}function an(aJ){return Y(aJ,false)}function aE(aJ){return Y(aJ,true)}function Y(aK,aM){if(D.state.fatArrowAt==D.stream.start){var aJ=aM?N:W;if(aK=="("){return ae(w,aF(")"),at(i,")"),h,r("=>"),aJ,x)}else{if(aK=="variable"){return aa(w,i,r("=>"),aJ,x)}}}var aL=aM?j:ab;if(b.hasOwnProperty(aK)){return ae(aL)}if(aK=="function"){return ae(M,aL)}if(aK=="keyword c"){return ae(aM?ak:ai)}if(aK=="("){return ae(aF(")"),ai,az,r(")"),h,aL)}if(aK=="operator"||aK=="spread"){return ae(aM?aE:an)}if(aK=="["){return ae(aF("]"),n,h,aL)}if(aK=="{"){return ay(t,"}",null,aL)}if(aK=="quasi"){return aa(Q,aL)}return ae()}function ai(aJ){if(aJ.match(/[;\}\)\],]/)){return aa()}return aa(an)}function ak(aJ){if(aJ.match(/[;\}\)\],]/)){return aa()}return aa(aE)}function ab(aJ,aK){if(aJ==","){return ae(an)}return j(aJ,aK,false)}function j(aJ,aL,aN){var aK=aN==false?ab:j;var aM=aN==false?an:aE;if(aJ=="=>"){return ae(w,aN?N:W,x)}if(aJ=="operator"){if(/\+\+|--/.test(aL)){return ae(aK)}if(aL=="?"){return ae(an,r(":"),aM)}return ae(aM)}if(aJ=="quasi"){return aa(Q,aK)}if(aJ==";"){return}if(aJ=="("){return ay(aE,")","call",aK)}if(aJ=="."){return ae(al,aK)}if(aJ=="["){return ae(aF("]"),ai,r("]"),h,aK)}}function Q(aJ,aK){if(aJ!="quasi"){return aa()}if(aK.slice(aK.length-2)!="${"){return ae(Q)}return ae(an,p)}function p(aJ){if(aJ=="}"){D.marked="string-2";D.state.tokenize=aC;return ae(Q)}}function W(aJ){ax(D.stream,D.state);return aa(aJ=="{"?aH:an)}function N(aJ){ax(D.stream,D.state);return aa(aJ=="{"?aH:aE)}function aI(aJ){if(aJ==":"){return ae(h,aH)}return aa(ab,r(";"),h)}function al(aJ){if(aJ=="variable"){D.marked="property";return ae()}}function t(aJ,aK){if(aJ=="variable"||D.style=="keyword"){D.marked="property";if(aK=="get"||aK=="set"){return ae(I)}return ae(K)}else{if(aJ=="number"||aJ=="string"){D.marked=aB?"property":(D.style+" property");return ae(K)}else{if(aJ=="jsonld-keyword"){return ae(K)}else{if(aJ=="["){return ae(an,r("]"),K)}}}}}function I(aJ){if(aJ!="variable"){return aa(K)}D.marked="property";return ae(M)}function K(aJ){if(aJ==":"){return ae(aE)}if(aJ=="("){return aa(M)}}function at(aL,aJ){function aK(aN){if(aN==","){var aM=D.state.lexical;if(aM.info=="call"){aM.pos=(aM.pos||0)+1}return ae(aL,aK)}if(aN==aJ){return ae()}return ae(r(aJ))}return function(aM){if(aM==aJ){return ae()}return aa(aL,aK)}}function ay(aM,aJ,aL){for(var aK=3;aK<arguments.length;aK++){D.cc.push(arguments[aK])}return ae(aF(aJ,aL),at(aM,aJ),h)}function y(aJ){if(aJ=="}"){return ae()}return aa(aH,y)}function T(aJ){if(g&&aJ==":"){return ae(ad)}}function av(aJ,aK){if(aK=="="){return ae(aE)}}function ad(aJ){if(aJ=="variable"){D.marked="variable-3";return ae()}}function d(){return aa(i,T,ac,X)}function i(aJ,aK){if(aJ=="variable"){aw(aK);return ae()}if(aJ=="["){return ay(i,"]")}if(aJ=="{"){return ay(aD,"}")}}function aD(aJ,aK){if(aJ=="variable"&&!D.stream.match(/^\s*:/,false)){aw(aK);return ae(ac)}if(aJ=="variable"){D.marked="property"}return ae(r(":"),i,ac)}function ac(aJ,aK){if(aK=="="){return ae(aE)}}function X(aJ){if(aJ==","){return ae(d)}}function e(aJ,aK){if(aJ=="keyword b"&&aK=="else"){return ae(aF("form","else"),aH,h)}}function u(aJ){if(aJ=="("){return ae(aF(")"),E,r(")"),h)}}function E(aJ){if(aJ=="var"){return ae(d,r(";"),C)}if(aJ==";"){return ae(C)}if(aJ=="variable"){return ae(v)}return aa(an,r(";"),C)}function v(aJ,aK){if(aK=="in"||aK=="of"){D.marked="keyword";return ae(an)}return ae(ab,C)}function C(aJ,aK){if(aJ==";"){return ae(B)}if(aK=="in"||aK=="of"){D.marked="keyword";return ae(an)}return aa(an,r(";"),B)}function B(aJ){if(aJ!=")"){ae(an)}}function M(aJ,aK){if(aK=="*"){D.marked="keyword";return ae(M)}if(aJ=="variable"){aw(aK);return ae(M)}if(aJ=="("){return ae(w,aF(")"),at(af,")"),h,aH,x)}}function af(aJ){if(aJ=="spread"){return ae(af)}return aa(i,T,av)}function V(aJ,aK){if(aJ=="variable"){aw(aK);return ae(O)}}function O(aJ,aK){if(aK=="extends"){return ae(an,O)}if(aJ=="{"){return ae(aF("}"),o,h)}}function o(aJ,aK){if(aJ=="variable"||D.style=="keyword"){if(aK=="static"){D.marked="keyword";return ae(o)}D.marked="property";if(aK=="get"||aK=="set"){return ae(c,M,o)}return ae(M,o)}if(aK=="*"){D.marked="keyword";return ae(o)}if(aJ==";"){return ae(o)}if(aJ=="}"){return ae()}}function c(aJ){if(aJ!="variable"){return aa()}D.marked="property";return ae()}function H(aJ,aK){if(aJ=="string"){return ae(aH)}if(aJ=="variable"){aw(aK);return ae(ah)}}function aG(aJ,aK){if(aK=="*"){D.marked="keyword";return ae(ah,r(";"))}if(aK=="default"){D.marked="keyword";return ae(an,r(";"))}return aa(aH)}function ag(aJ){if(aJ=="string"){return ae()}return aa(ap,ah)}function ap(aJ,aK){if(aJ=="{"){return ay(ap,"}")}if(aJ=="variable"){aw(aK)}if(aK=="*"){D.marked="keyword"}return ae(k)}function k(aJ,aK){if(aK=="as"){D.marked="keyword";return ae(ap)}}function ah(aJ,aK){if(aK=="from"){D.marked="keyword";return ae(an)}}function n(aJ){if(aJ=="]"){return ae()}return aa(aE,am)}function am(aJ){if(aJ=="for"){return aa(az,r("]"))}if(aJ==","){return ae(at(ak,"]"))}return aa(at(aE,"]"))}function az(aJ){if(aJ=="for"){return ae(u,az)}if(aJ=="if"){return ae(an,az)}}function ao(aK,aJ){return aK.lastType=="operator"||aK.lastType==","||P.test(aJ.charAt(0))||/[,.]/.test(aJ.charAt(0))}return{startState:function(aK){var aJ={tokenize:U,lastType:"sof",cc:[],lexical:new J((aK||0)-l,0,"block",false),localVars:aj.localVars,context:aj.localVars&&{vars:aj.localVars},indented:0};if(aj.globalVars&&typeof aj.globalVars=="object"){aJ.globalVars=aj.globalVars}return aJ},token:function(aL,aK){if(aL.sol()){if(!aK.lexical.hasOwnProperty("align")){aK.lexical.align=false}aK.indented=aL.indentation();ax(aL,aK)}if(aK.tokenize!=aA&&aL.eatSpace()){return null}var aJ=aK.tokenize(aL,aK);if(S=="comment"){return aJ}aK.lastType=S=="operator"&&(G=="++"||G=="--")?"incdec":S;return f(aK,aJ,S,G,aL)},indent:function(aP,aJ){if(aP.tokenize==aA){return a.Pass}if(aP.tokenize!=U){return 0}var aO=aJ&&aJ.charAt(0),aM=aP.lexical;if(!/^\s*else\b/.test(aJ)){for(var aL=aP.cc.length-1;aL>=0;--aL){var aQ=aP.cc[aL];if(aQ==h){aM=aM.prev}else{if(aQ!=e){break}}}}if(aM.type=="stat"&&aO=="}"){aM=aM.prev}if(A&&aM.type==")"&&aM.prev.type=="stat"){aM=aM.prev}var aN=aM.type,aK=aO==aN;if(aN=="vardef"){return aM.indented+(aP.lastType=="operator"||aP.lastType==","?aM.info+1:0)}else{if(aN=="form"&&aO=="{"){return aM.indented}else{if(aN=="form"){return aM.indented+l}else{if(aN=="stat"){return aM.indented+(ao(aP,aJ)?A||l:0)}else{if(aM.info=="switch"&&!aK&&aj.doubleIndentSwitch!=false){return aM.indented+(/^(?:case|default)\b/.test(aJ)?l:2*l)}else{if(aM.align){return aM.column+(aK?0:1)}else{return aM.indented+(aK?0:l)}}}}}}},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:z?null:"/*",blockCommentEnd:z?null:"*/",lineComment:z?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:z?"json":"javascript",jsonldMode:aB,jsonMode:z}});a.registerHelper("wordChars","javascript",/[\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/x-javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/index.html000060400000000054152455705240025353 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/codemirror.addons000060400000021764152455705240026730 0ustar00(function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)})(function(n){function t(n,t,i){var u=n.getWrapperElement(),r;return r=u.appendChild(document.createElement("div")),r.className=i?"CodeMirror-dialog CodeMirror-dialog-bottom":"CodeMirror-dialog CodeMirror-dialog-top",typeof t=="string"?r.innerHTML=t:r.appendChild(t),r}function i(n,t){n.state.currentNotificationClose&&n.state.currentNotificationClose();n.state.currentNotificationClose=t}n.defineExtension("openDialog",function(r,u,f){function o(n){if(typeof n=="string")e.value=n;else{if(c)return;if(c=!0,s.parentNode.removeChild(s),l.focus(),f.onClose)f.onClose(s)}}var e,h;f||(f={});i(this,null);var s=t(this,r,f.bottom),c=!1,l=this;if(e=s.getElementsByTagName("input")[0],e){if(f.value&&(e.value=f.value,f.selectValueOnOpen!==!1&&e.select()),f.onInput)n.on(e,"input",function(n){f.onInput(n,e.value,o)});if(f.onKeyUp)n.on(e,"keyup",function(n){f.onKeyUp(n,e.value,o)});n.on(e,"keydown",function(t){f&&f.onKeyDown&&f.onKeyDown(t,e.value,o)||((t.keyCode==27||f.closeOnEnter!==!1&&t.keyCode==13)&&(e.blur(),n.e_stop(t),o()),t.keyCode==13&&u(e.value,t))});if(f.closeOnBlur!==!1)n.on(e,"blur",o);e.focus()}else if(h=s.getElementsByTagName("button")[0]){n.on(h,"click",function(){o();l.focus()});if(f.closeOnBlur!==!1)n.on(h,"blur",o);h.focus()}return o});n.defineExtension("openConfirm",function(r,u,f){function v(){l||(l=!0,s.parentNode.removeChild(s),a.focus())}var e,o;i(this,null);var s=t(this,r,f&&f.bottom),h=s.getElementsByTagName("button"),l=!1,a=this,c=1;for(h[0].focus(),e=0;e<h.length;++e){o=h[e],function(t){n.on(o,"click",function(i){n.e_preventDefault(i);v();t&&t(a)})}(u[e]);n.on(o,"blur",function(){--c;setTimeout(function(){c<=0&&v()},200)});n.on(o,"focus",function(){++c})}});n.defineExtension("openNotification",function(r,u){function f(){o||(o=!0,clearTimeout(s),e.parentNode.removeChild(e))}i(this,f);var e=t(this,r,u&&u.bottom),o=!1,s,h=u&&typeof u.duration!="undefined"?u.duration:5e3;n.on(e,"click",function(t){n.e_preventDefault(t);f()});return h&&(s=setTimeout(f,h)),f})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("./searchcursor"),require("../dialog/dialog")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","./searchcursor","../dialog/dialog"],n):n(CodeMirror)}(function(n){"use strict";function c(n,t){return typeof n=="string"?n=new RegExp(n.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),t?"gi":"g"):n.global||(n=new RegExp(n.source,n.ignoreCase?"gi":"g")),{token:function(t){n.lastIndex=t.pos;var i=n.exec(t.string);if(i&&i.index==t.pos)return t.pos+=i[0].length,"searching";i?t.pos=i.index:t.skipToEnd()}}}function l(){this.posFrom=this.posTo=this.lastQuery=this.query=null;this.overlay=null}function i(n){return n.state.search||(n.state.search=new l)}function r(n){return typeof n=="string"&&n==n.toLowerCase()}function t(n,t,i){return n.getSearchCursor(t,i,r(t))}function u(n,t,i,r,u){n.openDialog?n.openDialog(t,u,{value:r,selectValueOnOpen:!0}):u(prompt(i,r))}function a(n,t,i,r){n.openConfirm?n.openConfirm(t,r):confirm(i)&&r[0]()}function o(n){var t=n.match(/^\/(.*)\/([a-z]*)$/);if(t)try{n=new RegExp(t[1],t[2].indexOf("i")==-1?"":"i")}catch(i){}return(typeof n=="string"?n=="":n.test(""))&&(n=/x^/),n}function f(n,t){var f=i(n),e;if(f.query)return s(n,t);e=n.getSelection()||f.lastQuery;u(n,v,"Search for:",e,function(i){n.operation(function(){i&&!f.query&&(f.query=o(i),n.removeOverlay(f.overlay,r(f.query)),f.overlay=c(f.query,r(f.query)),n.addOverlay(f.overlay),n.showMatchesOnScrollbar&&(f.annotate&&(f.annotate.clear(),f.annotate=null),f.annotate=n.showMatchesOnScrollbar(f.query,r(f.query))),f.posFrom=f.posTo=n.getCursor(),s(n,t))})})}function s(r,u){r.operation(function(){var e=i(r),f=t(r,e.query,u?e.posFrom:e.posTo);(f.find(u)||(f=t(r,e.query,u?n.Pos(r.lastLine()):n.Pos(r.firstLine(),0)),f.find(u)))&&(r.setSelection(f.from(),f.to()),r.scrollIntoView({from:f.from(),to:f.to()}),e.posFrom=f.from(),e.posTo=f.to())})}function e(n){n.operation(function(){var t=i(n);(t.lastQuery=t.query,t.query)&&(t.query=null,n.removeOverlay(t.overlay),t.annotate&&(t.annotate.clear(),t.annotate=null))})}function h(n,r){if(!n.getOption("readOnly")){var f=n.getSelection()||i(n).lastQuery;u(n,y,"Replace:",f,function(i){i&&(i=o(i),u(n,p,"Replace with:","",function(u){if(r)n.operation(function(){for(var f,r=t(n,i);r.findNext();)typeof i!="string"?(f=n.getRange(r.from(),r.to()).match(i),r.replace(u.replace(/\$(\d)/g,function(n,t){return f[t]}))):r.replace(u)});else{e(n);var f=t(n,i,n.getCursor()),o=function(){var r=f.from(),u;((u=f.findNext())||(f=t(n,i),(u=f.findNext())&&(!r||f.from().line!=r.line||f.from().ch!=r.ch)))&&(n.setSelection(f.from(),f.to()),n.scrollIntoView({from:f.from(),to:f.to()}),a(n,w,"Replace?",[function(){s(u)},o]))},s=function(n){f.replace(typeof i=="string"?u:u.replace(/\$(\d)/g,function(t,i){return n[i]}));o()};o()}}))})}}var v='Search: <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">(Use /re/ syntax for regexp search)<\/span>',y='Replace: <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">(Use /re/ syntax for regexp search)<\/span>',p='With: <input type="text" style="width: 10em" class="CodeMirror-search-field"/>',w="Replace? <button>Yes<\/button> <button>No<\/button> <button>Stop<\/button>";n.commands.find=function(n){e(n);f(n)};n.commands.findNext=f;n.commands.findPrev=function(n){f(n,!0)};n.commands.clearSearch=e;n.commands.replace=h;n.commands.replaceAll=function(n){h(n,!0)}}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function i(n,i,u,f){var h,o,e,s;this.atOccurrence=!1;this.doc=n;f==null&&typeof i=="string"&&(f=!1);u=u?n.clipPos(u):t(0,0);this.pos={from:u,to:u};typeof i!="string"?(i.global||(i=new RegExp(i.source,i.ignoreCase?"ig":"g")),this.matches=function(r,u){var o,h,f,s,c,e;if(r){for(i.lastIndex=0,o=n.getLine(u.line).slice(0,u.ch),h=0;;){if(i.lastIndex=h,c=i.exec(o),!c)break;if(f=c,s=f.index,h=f.index+(f[0].length||1),h==o.length)break}e=f&&f[0].length||0;e||(s==0&&o.length==0?f=undefined:s!=n.getLine(u.line).length&&e++)}else{i.lastIndex=u.ch;var o=n.getLine(u.line),f=i.exec(o),e=f&&f[0].length||0,s=f&&f.index;s+e==o.length||e||(e=1)}if(f&&e)return{from:t(u.line,s),to:t(u.line,s+e),match:f}}):(h=i,f&&(i=i.toLowerCase()),o=f?function(n){return n.toLowerCase()}:function(n){return n},e=i.split("\n"),e.length==1?this.matches=i.length?function(u,f){if(u){var s=n.getLine(f.line).slice(0,f.ch),c=o(s),e=c.lastIndexOf(i);if(e>-1)return e=r(s,c,e),{from:t(f.line,e),to:t(f.line,e+h.length)}}else{var s=n.getLine(f.line).slice(f.ch),c=o(s),e=c.indexOf(i);if(e>-1)return e=r(s,c,e)+f.ch,{from:t(f.line,e),to:t(f.line,e+h.length)}}}:function(){}:(s=h.split("\n"),this.matches=function(i,r){var h=e.length-1,a,c,l,v,u,f;if(i){if(r.line-(e.length-1)<n.firstLine())return;if(o(n.getLine(r.line).slice(0,s[h].length))!=e[e.length-1])return;for(a=t(r.line,s[h].length),u=r.line-1,f=h-1;f>=1;--f,--u)if(e[f]!=o(n.getLine(u)))return;return(c=n.getLine(u),l=c.length-s[0].length,o(c.slice(l))!=e[0])?void 0:{from:t(u,l),to:a}}if(!(r.line+(e.length-1)>n.lastLine())&&(c=n.getLine(r.line),l=c.length-s[0].length,o(c.slice(l))==e[0])){for(v=t(r.line,l),u=r.line+1,f=1;f<h;++f,++u)if(e[f]!=o(n.getLine(u)))return;if(o(n.getLine(u).slice(0,s[h].length))==e[h])return{from:v,to:t(u,s[h].length)}}}))}function r(n,t,i){var r,u;if(n.length==t.length)return i;for(r=Math.min(i,n.length);;)if(u=n.slice(0,r).toLowerCase().length,u<i)++r;else if(u>i)--r;else return r}var t=n.Pos;i.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(n){function f(n){var i=t(n,0);return u.pos={from:i,to:i},u.atOccurrence=!1,!1}for(var u=this,i=this.doc.clipPos(n?this.pos.from:this.pos.to),r;;){if(this.pos=this.matches(n,i))return this.atOccurrence=!0,this.pos.match||!0;if(n){if(!i.line)return f(0);i=t(i.line-1,this.doc.getLine(i.line-1).length)}else{if(r=this.doc.lineCount(),i.line==r-1)return f(r);i=t(i.line+1,0)}}},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(i,r){if(this.atOccurrence){var u=n.splitLines(i);this.doc.replaceRange(u,this.pos.from,this.pos.to,r);this.pos.to=t(this.pos.from.line+u.length-1,u[u.length-1].length+(u.length==1?this.pos.from.ch:0))}}};n.defineExtension("getSearchCursor",function(n,t,r){return new i(this.doc,n,t,r)});n.defineDocExtension("getSearchCursor",function(n,t,r){return new i(this,n,t,r)});n.defineExtension("selectMatches",function(t,i){for(var u=[],r=this.getSearchCursor(t,this.getCursor("from"),i);r.findNext();){if(n.cmpPos(r.to(),this.getCursor("to"))>0)break;u.push({anchor:r.from(),head:r.to()})}u.length&&this.setSelections(u,0)})})
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/codemirror.mode.h000060400000136024152455705240026626 0ustar00(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("xml",function(y,k){var p=y.indentUnit;var x=k.multilineTagIndentFactor||1;var d=k.multilineTagIndentPastTag;if(d==null){d=true}var w=k.htmlMode?{autoSelfClosers:{area:true,base:true,br:true,col:true,command:true,embed:true,frame:true,hr:true,img:true,input:true,keygen:true,link:true,meta:true,param:true,source:true,track:true,wbr:true,menuitem:true},implicitlyClosed:{dd:true,li:true,optgroup:true,option:true,p:true,rp:true,rt:true,tbody:true,td:true,tfoot:true,th:true,tr:true},contextGrabbers:{dd:{dd:true,dt:true},dt:{dd:true,dt:true},li:{li:true},option:{option:true,optgroup:true},optgroup:{optgroup:true},p:{address:true,article:true,aside:true,blockquote:true,dir:true,div:true,dl:true,fieldset:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,menu:true,nav:true,ol:true,p:true,pre:true,section:true,table:true,ul:true},rp:{rp:true,rt:true},rt:{rp:true,rt:true},tbody:{tbody:true,tfoot:true},td:{td:true,th:true},tfoot:{tbody:true},th:{td:true,th:true},thead:{tbody:true,tfoot:true},tr:{tr:true}},doNotIndent:{pre:true},allowUnquoted:true,allowMissing:true,caseFold:true}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:false,allowMissing:false,caseFold:false};var c=k.alignCDATA;var f,g;function n(F,E){function C(G){E.tokenize=G;return G(F,E)}var D=F.next();if(D=="<"){if(F.eat("!")){if(F.eat("[")){if(F.match("CDATA[")){return C(v("atom","]]>"))}else{return null}}else{if(F.match("--")){return C(v("comment","-->"))}else{if(F.match("DOCTYPE",true,true)){F.eatWhile(/[\w\._\-]/);return C(z(1))}else{return null}}}}else{if(F.eat("?")){F.eatWhile(/[\w\._\-]/);E.tokenize=v("meta","?>");return"meta"}else{f=F.eat("/")?"closeTag":"openTag";E.tokenize=m;return"tag bracket"}}}else{if(D=="&"){var B;if(F.eat("#")){if(F.eat("x")){B=F.eatWhile(/[a-fA-F\d]/)&&F.eat(";")}else{B=F.eatWhile(/[\d]/)&&F.eat(";")}}else{B=F.eatWhile(/[\w\.\-:]/)&&F.eat(";")}return B?"atom":"error"}else{F.eatWhile(/[^&<]/);return null}}}function m(E,D){var C=E.next();if(C==">"||(C=="/"&&E.eat(">"))){D.tokenize=n;f=C==">"?"endTag":"selfcloseTag";return"tag bracket"}else{if(C=="="){f="equals";return null}else{if(C=="<"){D.tokenize=n;D.state=l;D.tagName=D.tagStart=null;var B=D.tokenize(E,D);return B?B+" tag error":"tag error"}else{if(/[\'\"]/.test(C)){D.tokenize=j(C);D.stringStartCol=E.column();return D.tokenize(E,D)}else{E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}}}}}function j(B){var C=function(E,D){while(!E.eol()){if(E.next()==B){D.tokenize=m;break}}return"string"};C.isInAttribute=true;return C}function v(C,B){return function(E,D){while(!E.eol()){if(E.match(B)){D.tokenize=n;break}E.next()}return C}}function z(B){return function(E,D){var C;while((C=E.next())!=null){if(C=="<"){D.tokenize=z(B+1);return D.tokenize(E,D)}else{if(C==">"){if(B==1){D.tokenize=n;break}else{D.tokenize=z(B-1);return D.tokenize(E,D)}}}}return"meta"}}function r(C,B,D){this.prev=C.context;this.tagName=B;this.indent=C.indented;this.startOfLine=D;if(w.doNotIndent.hasOwnProperty(B)||(C.context&&C.context.noIndent)){this.noIndent=true}}function u(B){if(B.context){B.context=B.context.prev}}function q(D,C){var B;while(true){if(!D.context){return}B=D.context.tagName;if(!w.contextGrabbers.hasOwnProperty(B)||!w.contextGrabbers[B].hasOwnProperty(C)){return}u(D)}}function l(B,D,C){if(B=="openTag"){C.tagStart=D.column();return b}else{if(B=="closeTag"){return t}else{return l}}}function b(B,D,C){if(B=="word"){C.tagName=D.current();g="tag";return e}else{g="error";return b}}function t(C,E,D){if(C=="word"){var B=E.current();if(D.context&&D.context.tagName!=B&&w.implicitlyClosed.hasOwnProperty(D.context.tagName)){u(D)}if(D.context&&D.context.tagName==B){g="tag";return s}else{g="tag error";return A}}else{g="error";return A}}function s(C,B,D){if(C!="endTag"){g="error";return s}u(D);return l}function A(B,D,C){g="error";return s(B,D,C)}function e(E,C,F){if(E=="word"){g="attribute";return i}else{if(E=="endTag"||E=="selfcloseTag"){var D=F.tagName,B=F.tagStart;F.tagName=F.tagStart=null;if(E=="selfcloseTag"||w.autoSelfClosers.hasOwnProperty(D)){q(F,D)}else{q(F,D);F.context=new r(F,D,B==F.indented)}return l}}g="error";return e}function i(B,D,C){if(B=="equals"){return o}if(!w.allowMissing){g="error"}return e(B,D,C)}function o(B,D,C){if(B=="string"){return h}if(B=="word"&&w.allowUnquoted){g="string";return e}g="error";return e(B,D,C)}function h(B,D,C){if(B=="string"){return h}return e(B,D,C)}return{startState:function(){return{tokenize:n,state:l,indented:0,tagName:null,tagStart:null,context:null}},token:function(D,C){if(!C.tagName&&D.sol()){C.indented=D.indentation()}if(D.eatSpace()){return null}f=null;var B=C.tokenize(D,C);if((B||f)&&B!="comment"){g=null;C.state=C.state(f||B,D,C);if(g){B=g=="error"?B+" error":g}}return B},indent:function(G,C,F){var E=G.context;if(G.tokenize.isInAttribute){if(G.tagStart==G.indented){return G.stringStartCol+1}else{return G.indented+p}}if(E&&E.noIndent){return a.Pass}if(G.tokenize!=m&&G.tokenize!=n){return F?F.match(/^(\s*)/)[0].length:0}if(G.tagName){if(d){return G.tagStart+G.tagName.length+2}else{return G.tagStart+p*x}}if(c&&/<!\[CDATA\[/.test(C)){return 0}var B=C&&/^<(\/)?([\w_:\.-]*)/.exec(C);if(B&&B[1]){while(E){if(E.tagName==B[2]){E=E.prev;break}else{if(w.implicitlyClosed.hasOwnProperty(E.tagName)){E=E.prev}else{break}}}}else{if(B){while(E){var D=w.contextGrabbers[E.tagName];if(D&&D.hasOwnProperty(B[2])){E=E.prev}else{break}}}}while(E&&!E.startOfLine){E=E.prev}if(E){return E.indent+p}else{return 0}},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml"}});a.defineMIME("text/xml","xml");a.defineMIME("application/xml","xml");if(!a.mimeModes.hasOwnProperty("text/html")){a.defineMIME("text/html",{name:"xml",htmlMode:true})}});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(Z,aj){var l=Z.indentUnit;var A=aj.statementIndent;var aB=aj.jsonld;var z=aj.json||aB;var g=aj.typescript;var au=aj.wordCharacters||/[\w$\xa1-\uffff]/;var ar=function(){function aR(aT){return{type:aT,style:"keyword"}}var aM=aR("keyword a"),aK=aR("keyword b"),aJ=aR("keyword c");var aL=aR("operator"),aP={type:"atom",style:"atom"};var aN={"if":aR("if"),"while":aM,"with":aM,"else":aK,"do":aK,"try":aK,"finally":aK,"return":aJ,"break":aJ,"continue":aJ,"new":aJ,"delete":aJ,"throw":aJ,"debugger":aJ,"var":aR("var"),"const":aR("var"),let:aR("var"),"function":aR("function"),"catch":aR("catch"),"for":aR("for"),"switch":aR("switch"),"case":aR("case"),"default":aR("default"),"in":aL,"typeof":aL,"instanceof":aL,"true":aP,"false":aP,"null":aP,"undefined":aP,"NaN":aP,"Infinity":aP,"this":aR("this"),module:aR("module"),"class":aR("class"),"super":aR("atom"),yield:aJ,"export":aR("export"),"import":aR("import"),"extends":aJ};if(g){var aS={type:"variable",style:"variable-3"};var aO={"interface":aR("interface"),"extends":aR("extends"),constructor:aR("constructor"),"public":aR("public"),"private":aR("private"),"protected":aR("protected"),"static":aR("static"),string:aS,number:aS,bool:aS,any:aS};for(var aQ in aO){aN[aQ]=aO[aQ]}}return aN}();var P=/[+\-*&%=<>!?|~^]/;var aq=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function F(aM){var aK=false,aJ,aL=false;while((aJ=aM.next())!=null){if(!aK){if(aJ=="/"&&!aL){return}if(aJ=="["){aL=true}else{if(aL&&aJ=="]"){aL=false}}}aK=!aK&&aJ=="\\"}}var S,G;function L(aL,aK,aJ){S=aL;G=aJ;return aK}function U(aN,aL){var aJ=aN.next();if(aJ=='"'||aJ=="'"){aL.tokenize=R(aJ);return aL.tokenize(aN,aL)}else{if(aJ=="."&&aN.match(/^\d+(?:[eE][+\-]?\d+)?/)){return L("number","number")}else{if(aJ=="."&&aN.match("..")){return L("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aJ)){return L(aJ)}else{if(aJ=="="&&aN.eat(">")){return L("=>","operator")}else{if(aJ=="0"&&aN.eat(/x/i)){aN.eatWhile(/[\da-f]/i);return L("number","number")}else{if(/\d/.test(aJ)){aN.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return L("number","number")}else{if(aJ=="/"){if(aN.eat("*")){aL.tokenize=aA;return aA(aN,aL)}else{if(aN.eat("/")){aN.skipToEnd();return L("comment","comment")}else{if(aL.lastType=="operator"||aL.lastType=="keyword c"||aL.lastType=="sof"||/^[\[{}\(,;:]$/.test(aL.lastType)){F(aN);aN.match(/^\b(([gimyu])(?![gimyu]*\2))+\b/);return L("regexp","string-2")}else{aN.eatWhile(P);return L("operator","operator",aN.current())}}}}else{if(aJ=="`"){aL.tokenize=aC;return aC(aN,aL)}else{if(aJ=="#"){aN.skipToEnd();return L("error","error")}else{if(P.test(aJ)){aN.eatWhile(P);return L("operator","operator",aN.current())}else{if(au.test(aJ)){aN.eatWhile(au);var aM=aN.current(),aK=ar.propertyIsEnumerable(aM)&&ar[aM];return(aK&&aL.lastType!=".")?L(aK.type,aK.style,aM):L("variable","variable",aM)}}}}}}}}}}}}}function R(aJ){return function(aN,aL){var aM=false,aK;if(aB&&aN.peek()=="@"&&aN.match(aq)){aL.tokenize=U;return L("jsonld-keyword","meta")}while((aK=aN.next())!=null){if(aK==aJ&&!aM){break}aM=!aM&&aK=="\\"}if(!aM){aL.tokenize=U}return L("string","string")}}function aA(aM,aL){var aJ=false,aK;while(aK=aM.next()){if(aK=="/"&&aJ){aL.tokenize=U;break}aJ=(aK=="*")}return L("comment","comment")}function aC(aM,aK){var aL=false,aJ;while((aJ=aM.next())!=null){if(!aL&&(aJ=="`"||aJ=="$"&&aM.eat("{"))){aK.tokenize=U;break}aL=!aL&&aJ=="\\"}return L("quasi","string-2",aM.current())}var m="([{}])";function ax(aP,aM){if(aM.fatArrowAt){aM.fatArrowAt=null}var aL=aP.string.indexOf("=>",aP.start);if(aL<0){return}var aO=0,aK=false;for(var aQ=aL-1;aQ>=0;--aQ){var aJ=aP.string.charAt(aQ);var aN=m.indexOf(aJ);if(aN>=0&&aN<3){if(!aO){++aQ;break}if(--aO==0){break}}else{if(aN>=3&&aN<6){++aO}else{if(au.test(aJ)){aK=true}else{if(/["'\/]/.test(aJ)){return}else{if(aK&&!aO){++aQ;break}}}}}}if(aK&&!aO){aM.fatArrowAt=aQ}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function J(aO,aK,aJ,aN,aL,aM){this.indented=aO;this.column=aK;this.type=aJ;this.prev=aL;this.info=aM;if(aN!=null){this.align=aN}}function s(aM,aL){for(var aK=aM.localVars;aK;aK=aK.next){if(aK.name==aL){return true}}for(var aJ=aM.context;aJ;aJ=aJ.prev){for(var aK=aJ.vars;aK;aK=aK.next){if(aK.name==aL){return true}}}}function f(aN,aK,aJ,aM,aO){var aP=aN.cc;D.state=aN;D.stream=aO;D.marked=null,D.cc=aP;D.style=aK;if(!aN.lexical.hasOwnProperty("align")){aN.lexical.align=true}while(true){var aL=aP.length?aP.pop():z?an:aH;if(aL(aJ,aM)){while(aP.length&&aP[aP.length-1].lex){aP.pop()()}if(D.marked){return D.marked}if(aJ=="variable"&&s(aN,aM)){return"variable-2"}return aK}}}var D={state:null,column:null,marked:null,cc:null};function aa(){for(var aJ=arguments.length-1;aJ>=0;aJ--){D.cc.push(arguments[aJ])}}function ae(){aa.apply(null,arguments);return true}function aw(aK){function aJ(aN){for(var aM=aN;aM;aM=aM.next){if(aM.name==aK){return true}}return false}var aL=D.state;if(aL.context){D.marked="def";if(aJ(aL.localVars)){return}aL.localVars={name:aK,next:aL.localVars}}else{if(aJ(aL.globalVars)){return}if(aj.globalVars){aL.globalVars={name:aK,next:aL.globalVars}}}}var q={name:"this",next:{name:"arguments"}};function w(){D.state.context={prev:D.state.context,vars:D.state.localVars};D.state.localVars=q}function x(){D.state.localVars=D.state.context.vars;D.state.context=D.state.context.prev}function aF(aK,aL){var aJ=function(){var aO=D.state,aM=aO.indented;if(aO.lexical.type=="stat"){aM=aO.lexical.indented}else{for(var aN=aO.lexical;aN&&aN.type==")"&&aN.align;aN=aN.prev){aM=aN.indented}}aO.lexical=new J(aM,D.stream.column(),aK,null,aO.lexical,aL)};aJ.lex=true;return aJ}function h(){var aJ=D.state;if(aJ.lexical.prev){if(aJ.lexical.type==")"){aJ.indented=aJ.lexical.indented}aJ.lexical=aJ.lexical.prev}}h.lex=true;function r(aJ){function aK(aL){if(aL==aJ){return ae()}else{if(aJ==";"){return aa()}else{return ae(aK)}}}return aK}function aH(aJ,aK){if(aJ=="var"){return ae(aF("vardef",aK.length),d,r(";"),h)}if(aJ=="keyword a"){return ae(aF("form"),an,aH,h)}if(aJ=="keyword b"){return ae(aF("form"),aH,h)}if(aJ=="{"){return ae(aF("}"),y,h)}if(aJ==";"){return ae()}if(aJ=="if"){if(D.state.lexical.info=="else"&&D.state.cc[D.state.cc.length-1]==h){D.state.cc.pop()()}return ae(aF("form"),an,aH,h,e)}if(aJ=="function"){return ae(M)}if(aJ=="for"){return ae(aF("form"),u,aH,h)}if(aJ=="variable"){return ae(aF("stat"),aI)}if(aJ=="switch"){return ae(aF("form"),an,aF("}","switch"),r("{"),y,h,h)}if(aJ=="case"){return ae(an,r(":"))}if(aJ=="default"){return ae(r(":"))}if(aJ=="catch"){return ae(aF("form"),w,r("("),af,r(")"),aH,h,x)}if(aJ=="module"){return ae(aF("form"),w,H,x,h)}if(aJ=="class"){return ae(aF("form"),V,h)}if(aJ=="export"){return ae(aF("form"),aG,h)}if(aJ=="import"){return ae(aF("form"),ag,h)}return aa(aF("stat"),an,r(";"),h)}function an(aJ){return Y(aJ,false)}function aE(aJ){return Y(aJ,true)}function Y(aK,aM){if(D.state.fatArrowAt==D.stream.start){var aJ=aM?N:W;if(aK=="("){return ae(w,aF(")"),at(i,")"),h,r("=>"),aJ,x)}else{if(aK=="variable"){return aa(w,i,r("=>"),aJ,x)}}}var aL=aM?j:ab;if(b.hasOwnProperty(aK)){return ae(aL)}if(aK=="function"){return ae(M,aL)}if(aK=="keyword c"){return ae(aM?ak:ai)}if(aK=="("){return ae(aF(")"),ai,az,r(")"),h,aL)}if(aK=="operator"||aK=="spread"){return ae(aM?aE:an)}if(aK=="["){return ae(aF("]"),n,h,aL)}if(aK=="{"){return ay(t,"}",null,aL)}if(aK=="quasi"){return aa(Q,aL)}return ae()}function ai(aJ){if(aJ.match(/[;\}\)\],]/)){return aa()}return aa(an)}function ak(aJ){if(aJ.match(/[;\}\)\],]/)){return aa()}return aa(aE)}function ab(aJ,aK){if(aJ==","){return ae(an)}return j(aJ,aK,false)}function j(aJ,aL,aN){var aK=aN==false?ab:j;var aM=aN==false?an:aE;if(aJ=="=>"){return ae(w,aN?N:W,x)}if(aJ=="operator"){if(/\+\+|--/.test(aL)){return ae(aK)}if(aL=="?"){return ae(an,r(":"),aM)}return ae(aM)}if(aJ=="quasi"){return aa(Q,aK)}if(aJ==";"){return}if(aJ=="("){return ay(aE,")","call",aK)}if(aJ=="."){return ae(al,aK)}if(aJ=="["){return ae(aF("]"),ai,r("]"),h,aK)}}function Q(aJ,aK){if(aJ!="quasi"){return aa()}if(aK.slice(aK.length-2)!="${"){return ae(Q)}return ae(an,p)}function p(aJ){if(aJ=="}"){D.marked="string-2";D.state.tokenize=aC;return ae(Q)}}function W(aJ){ax(D.stream,D.state);return aa(aJ=="{"?aH:an)}function N(aJ){ax(D.stream,D.state);return aa(aJ=="{"?aH:aE)}function aI(aJ){if(aJ==":"){return ae(h,aH)}return aa(ab,r(";"),h)}function al(aJ){if(aJ=="variable"){D.marked="property";return ae()}}function t(aJ,aK){if(aJ=="variable"||D.style=="keyword"){D.marked="property";if(aK=="get"||aK=="set"){return ae(I)}return ae(K)}else{if(aJ=="number"||aJ=="string"){D.marked=aB?"property":(D.style+" property");return ae(K)}else{if(aJ=="jsonld-keyword"){return ae(K)}else{if(aJ=="["){return ae(an,r("]"),K)}}}}}function I(aJ){if(aJ!="variable"){return aa(K)}D.marked="property";return ae(M)}function K(aJ){if(aJ==":"){return ae(aE)}if(aJ=="("){return aa(M)}}function at(aL,aJ){function aK(aN){if(aN==","){var aM=D.state.lexical;if(aM.info=="call"){aM.pos=(aM.pos||0)+1}return ae(aL,aK)}if(aN==aJ){return ae()}return ae(r(aJ))}return function(aM){if(aM==aJ){return ae()}return aa(aL,aK)}}function ay(aM,aJ,aL){for(var aK=3;aK<arguments.length;aK++){D.cc.push(arguments[aK])}return ae(aF(aJ,aL),at(aM,aJ),h)}function y(aJ){if(aJ=="}"){return ae()}return aa(aH,y)}function T(aJ){if(g&&aJ==":"){return ae(ad)}}function av(aJ,aK){if(aK=="="){return ae(aE)}}function ad(aJ){if(aJ=="variable"){D.marked="variable-3";return ae()}}function d(){return aa(i,T,ac,X)}function i(aJ,aK){if(aJ=="variable"){aw(aK);return ae()}if(aJ=="["){return ay(i,"]")}if(aJ=="{"){return ay(aD,"}")}}function aD(aJ,aK){if(aJ=="variable"&&!D.stream.match(/^\s*:/,false)){aw(aK);return ae(ac)}if(aJ=="variable"){D.marked="property"}return ae(r(":"),i,ac)}function ac(aJ,aK){if(aK=="="){return ae(aE)}}function X(aJ){if(aJ==","){return ae(d)}}function e(aJ,aK){if(aJ=="keyword b"&&aK=="else"){return ae(aF("form","else"),aH,h)}}function u(aJ){if(aJ=="("){return ae(aF(")"),E,r(")"),h)}}function E(aJ){if(aJ=="var"){return ae(d,r(";"),C)}if(aJ==";"){return ae(C)}if(aJ=="variable"){return ae(v)}return aa(an,r(";"),C)}function v(aJ,aK){if(aK=="in"||aK=="of"){D.marked="keyword";return ae(an)}return ae(ab,C)}function C(aJ,aK){if(aJ==";"){return ae(B)}if(aK=="in"||aK=="of"){D.marked="keyword";return ae(an)}return aa(an,r(";"),B)}function B(aJ){if(aJ!=")"){ae(an)}}function M(aJ,aK){if(aK=="*"){D.marked="keyword";return ae(M)}if(aJ=="variable"){aw(aK);return ae(M)}if(aJ=="("){return ae(w,aF(")"),at(af,")"),h,aH,x)}}function af(aJ){if(aJ=="spread"){return ae(af)}return aa(i,T,av)}function V(aJ,aK){if(aJ=="variable"){aw(aK);return ae(O)}}function O(aJ,aK){if(aK=="extends"){return ae(an,O)}if(aJ=="{"){return ae(aF("}"),o,h)}}function o(aJ,aK){if(aJ=="variable"||D.style=="keyword"){if(aK=="static"){D.marked="keyword";return ae(o)}D.marked="property";if(aK=="get"||aK=="set"){return ae(c,M,o)}return ae(M,o)}if(aK=="*"){D.marked="keyword";return ae(o)}if(aJ==";"){return ae(o)}if(aJ=="}"){return ae()}}function c(aJ){if(aJ!="variable"){return aa()}D.marked="property";return ae()}function H(aJ,aK){if(aJ=="string"){return ae(aH)}if(aJ=="variable"){aw(aK);return ae(ah)}}function aG(aJ,aK){if(aK=="*"){D.marked="keyword";return ae(ah,r(";"))}if(aK=="default"){D.marked="keyword";return ae(an,r(";"))}return aa(aH)}function ag(aJ){if(aJ=="string"){return ae()}return aa(ap,ah)}function ap(aJ,aK){if(aJ=="{"){return ay(ap,"}")}if(aJ=="variable"){aw(aK)}if(aK=="*"){D.marked="keyword"}return ae(k)}function k(aJ,aK){if(aK=="as"){D.marked="keyword";return ae(ap)}}function ah(aJ,aK){if(aK=="from"){D.marked="keyword";return ae(an)}}function n(aJ){if(aJ=="]"){return ae()}return aa(aE,am)}function am(aJ){if(aJ=="for"){return aa(az,r("]"))}if(aJ==","){return ae(at(ak,"]"))}return aa(at(aE,"]"))}function az(aJ){if(aJ=="for"){return ae(u,az)}if(aJ=="if"){return ae(an,az)}}function ao(aK,aJ){return aK.lastType=="operator"||aK.lastType==","||P.test(aJ.charAt(0))||/[,.]/.test(aJ.charAt(0))}return{startState:function(aK){var aJ={tokenize:U,lastType:"sof",cc:[],lexical:new J((aK||0)-l,0,"block",false),localVars:aj.localVars,context:aj.localVars&&{vars:aj.localVars},indented:0};if(aj.globalVars&&typeof aj.globalVars=="object"){aJ.globalVars=aj.globalVars}return aJ},token:function(aL,aK){if(aL.sol()){if(!aK.lexical.hasOwnProperty("align")){aK.lexical.align=false}aK.indented=aL.indentation();ax(aL,aK)}if(aK.tokenize!=aA&&aL.eatSpace()){return null}var aJ=aK.tokenize(aL,aK);if(S=="comment"){return aJ}aK.lastType=S=="operator"&&(G=="++"||G=="--")?"incdec":S;return f(aK,aJ,S,G,aL)},indent:function(aP,aJ){if(aP.tokenize==aA){return a.Pass}if(aP.tokenize!=U){return 0}var aO=aJ&&aJ.charAt(0),aM=aP.lexical;if(!/^\s*else\b/.test(aJ)){for(var aL=aP.cc.length-1;aL>=0;--aL){var aQ=aP.cc[aL];if(aQ==h){aM=aM.prev}else{if(aQ!=e){break}}}}if(aM.type=="stat"&&aO=="}"){aM=aM.prev}if(A&&aM.type==")"&&aM.prev.type=="stat"){aM=aM.prev}var aN=aM.type,aK=aO==aN;if(aN=="vardef"){return aM.indented+(aP.lastType=="operator"||aP.lastType==","?aM.info+1:0)}else{if(aN=="form"&&aO=="{"){return aM.indented}else{if(aN=="form"){return aM.indented+l}else{if(aN=="stat"){return aM.indented+(ao(aP,aJ)?A||l:0)}else{if(aM.info=="switch"&&!aK&&aj.doubleIndentSwitch!=false){return aM.indented+(/^(?:case|default)\b/.test(aJ)?l:2*l)}else{if(aM.align){return aM.column+(aK?0:1)}else{return aM.indented+(aK?0:l)}}}}}}},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:z?null:"/*",blockCommentEnd:z?null:"*/",lineComment:z?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:z?"json":"javascript",jsonldMode:aB,jsonMode:z}});a.registerHelper("wordChars","javascript",/[\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/x-javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(p){p.defineMode("css",function(T,G){if(!G.propertyKeywords){G=p.resolveMode("text/css")}var M=T.indentUnit,y=G.tokenHooks,w=G.documentTypes||{},S=G.mediaTypes||{},I=G.mediaFeatures||{},F=G.propertyKeywords||{},z=G.nonStandardPropertyKeywords||{},B=G.fontProperties||{},R=G.counterDescriptors||{},L=G.colorKeywords||{},O=G.valueKeywords||{},J=G.allowNested;var A,K;function U(X,Y){A=Y;return X}function W(aa,Z){var Y=aa.next();if(y[Y]){var X=y[Y](aa,Z);if(X!==false){return X}}if(Y=="@"){aa.eatWhile(/[\w\\\-]/);return U("def",aa.current())}else{if(Y=="="||(Y=="~"||Y=="|")&&aa.eat("=")){return U(null,"compare")}else{if(Y=='"'||Y=="'"){Z.tokenize=H(Y);return Z.tokenize(aa,Z)}else{if(Y=="#"){aa.eatWhile(/[\w\\\-]/);return U("atom","hash")}else{if(Y=="!"){aa.match(/^\s*\w*/);return U("keyword","important")}else{if(/\d/.test(Y)||Y=="."&&aa.eat(/\d/)){aa.eatWhile(/[\w.%]/);return U("number","unit")}else{if(Y==="-"){if(/[\d.]/.test(aa.peek())){aa.eatWhile(/[\w.%]/);return U("number","unit")}else{if(aa.match(/^-[\w\\\-]+/)){aa.eatWhile(/[\w\\\-]/);if(aa.match(/^\s*:/,false)){return U("variable-2","variable-definition")}return U("variable-2","variable")}else{if(aa.match(/^\w+-/)){return U("meta","meta")}}}}else{if(/[,+>*\/]/.test(Y)){return U(null,"select-op")}else{if(Y=="."&&aa.match(/^-?[_a-z][_a-z0-9-]*/i)){return U("qualifier","qualifier")}else{if(/[:;{}\[\]\(\)]/.test(Y)){return U(null,Y)}else{if((Y=="u"&&aa.match(/rl(-prefix)?\(/))||(Y=="d"&&aa.match("omain("))||(Y=="r"&&aa.match("egexp("))){aa.backUp(1);Z.tokenize=V;return U("property","word")}else{if(/[\w\\\-]/.test(Y)){aa.eatWhile(/[\w\\\-]/);return U("property","word")}else{return U(null,null)}}}}}}}}}}}}}function H(X){return function(ab,Z){var aa=false,Y;while((Y=ab.next())!=null){if(Y==X&&!aa){if(X==")"){ab.backUp(1)}break}aa=!aa&&Y=="\\"}if(Y==X||!aa&&X!=")"){Z.tokenize=null}return U("string","string")}}function V(Y,X){Y.next();if(!Y.match(/\s*[\"\')]/,false)){X.tokenize=H(")")}else{X.tokenize=null}return U(null,"(")}function N(Y,X,Z){this.type=Y;this.indent=X;this.prev=Z}function D(Y,Z,X){Y.context=new N(X,Z.indentation()+M,Y.context);return X}function P(X){X.context=X.context.prev;return X.context.type}function x(X,Z,Y){return C[Y.context.type](X,Z,Y)}function Q(Y,aa,Z,ab){for(var X=ab||1;X>0;X--){Z.context=Z.context.prev}return x(Y,aa,Z)}function E(Y){var X=Y.current().toLowerCase();if(O.hasOwnProperty(X)){K="atom"}else{if(L.hasOwnProperty(X)){K="keyword"}else{K="variable"}}}var C={};C.top=function(X,Z,Y){if(X=="{"){return D(Y,Z,"block")}else{if(X=="}"&&Y.context.prev){return P(Y)}else{if(/@(media|supports|(-moz-)?document)/.test(X)){return D(Y,Z,"atBlock")}else{if(/@(font-face|counter-style)/.test(X)){Y.stateArg=X;return"restricted_atBlock_before"}else{if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(X)){return"keyframes"}else{if(X&&X.charAt(0)=="@"){return D(Y,Z,"at")}else{if(X=="hash"){K="builtin"}else{if(X=="word"){K="tag"}else{if(X=="variable-definition"){return"maybeprop"}else{if(X=="interpolation"){return D(Y,Z,"interpolation")}else{if(X==":"){return"pseudo"}else{if(J&&X=="("){return D(Y,Z,"parens")}}}}}}}}}}}}return Y.context.type};C.block=function(X,aa,Y){if(X=="word"){var Z=aa.current().toLowerCase();if(F.hasOwnProperty(Z)){K="property";return"maybeprop"}else{if(z.hasOwnProperty(Z)){K="string-2";return"maybeprop"}else{if(J){K=aa.match(/^\s*:(?:\s|$)/,false)?"property":"tag";return"block"}else{K+=" error";return"maybeprop"}}}}else{if(X=="meta"){return"block"}else{if(!J&&(X=="hash"||X=="qualifier")){K="error";return"block"}else{return C.top(X,aa,Y)}}}};C.maybeprop=function(X,Z,Y){if(X==":"){return D(Y,Z,"prop")}return x(X,Z,Y)};C.prop=function(X,Z,Y){if(X==";"){return P(Y)}if(X=="{"&&J){return D(Y,Z,"propBlock")}if(X=="}"||X=="{"){return Q(X,Z,Y)}if(X=="("){return D(Y,Z,"parens")}if(X=="hash"&&!/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(Z.current())){K+=" error"}else{if(X=="word"){E(Z)}else{if(X=="interpolation"){return D(Y,Z,"interpolation")}}}return"prop"};C.propBlock=function(Y,X,Z){if(Y=="}"){return P(Z)}if(Y=="word"){K="property";return"maybeprop"}return Z.context.type};C.parens=function(X,Z,Y){if(X=="{"||X=="}"){return Q(X,Z,Y)}if(X==")"){return P(Y)}if(X=="("){return D(Y,Z,"parens")}if(X=="interpolation"){return D(Y,Z,"interpolation")}if(X=="word"){E(Z)}return"parens"};C.pseudo=function(X,Z,Y){if(X=="word"){K="variable-3";return Y.context.type}return x(X,Z,Y)};C.atBlock=function(X,aa,Y){if(X=="("){return D(Y,aa,"atBlock_parens")}if(X=="}"){return Q(X,aa,Y)}if(X=="{"){return P(Y)&&D(Y,aa,J?"block":"top")}if(X=="word"){var Z=aa.current().toLowerCase();if(Z=="only"||Z=="not"||Z=="and"||Z=="or"){K="keyword"}else{if(w.hasOwnProperty(Z)){K="tag"}else{if(S.hasOwnProperty(Z)){K="attribute"}else{if(I.hasOwnProperty(Z)){K="property"}else{if(F.hasOwnProperty(Z)){K="property"}else{if(z.hasOwnProperty(Z)){K="string-2"}else{if(O.hasOwnProperty(Z)){K="atom"}else{K="error"}}}}}}}}return Y.context.type};C.atBlock_parens=function(X,Z,Y){if(X==")"){return P(Y)}if(X=="{"||X=="}"){return Q(X,Z,Y,2)}return C.atBlock(X,Z,Y)};C.restricted_atBlock_before=function(X,Z,Y){if(X=="{"){return D(Y,Z,"restricted_atBlock")}if(X=="word"&&Y.stateArg=="@counter-style"){K="variable";return"restricted_atBlock_before"}return x(X,Z,Y)};C.restricted_atBlock=function(X,Z,Y){if(X=="}"){Y.stateArg=null;return P(Y)}if(X=="word"){if((Y.stateArg=="@font-face"&&!B.hasOwnProperty(Z.current().toLowerCase()))||(Y.stateArg=="@counter-style"&&!R.hasOwnProperty(Z.current().toLowerCase()))){K="error"}else{K="property"}return"maybeprop"}return"restricted_atBlock"};C.keyframes=function(X,Z,Y){if(X=="word"){K="variable";return"keyframes"}if(X=="{"){return D(Y,Z,"top")}return x(X,Z,Y)};C.at=function(X,Z,Y){if(X==";"){return P(Y)}if(X=="{"||X=="}"){return Q(X,Z,Y)}if(X=="word"){K="tag"}else{if(X=="hash"){K="builtin"}}return"at"};C.interpolation=function(X,Z,Y){if(X=="}"){return P(Y)}if(X=="{"||X==";"){return Q(X,Z,Y)}if(X=="word"){K="variable"}else{if(X!="variable"&&X!="("&&X!=")"){K="error"}}return"interpolation"};return{startState:function(X){return{tokenize:null,state:"top",stateArg:null,context:new N("top",X||0,null)}},token:function(Z,Y){if(!Y.tokenize&&Z.eatSpace()){return null}var X=(Y.tokenize||W)(Z,Y);if(X&&typeof X=="object"){A=X[1];X=X[0]}K=X;Y.state=C[Y.state](A,Z,Y);return K},indent:function(ab,Z){var Y=ab.context,aa=Z&&Z.charAt(0);var X=Y.indent;if(Y.type=="prop"&&(aa=="}"||aa==")")){Y=Y.prev}if(Y.prev&&(aa=="}"&&(Y.type=="block"||Y.type=="top"||Y.type=="interpolation"||Y.type=="restricted_atBlock")||aa==")"&&(Y.type=="parens"||Y.type=="atBlock_parens")||aa=="{"&&(Y.type=="at"||Y.type=="atBlock"))){X=Y.indent-M;Y=Y.prev}return X},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});function g(y){var x={};for(var w=0;w<y.length;++w){x[y[w]]=true}return x}var k=["domain","regexp","url","url-prefix"],a=g(k);var b=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],t=g(b);var v=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],i=g(v);var d=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],h=g(d);var m=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],e=g(m);var r=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],f=g(r);var o=["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"],s=g(o);var c=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],l=g(c);var j=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","spell-out","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","x-large","x-small","xor","xx-large","xx-small"],q=g(j);var n=k.concat(b).concat(v).concat(d).concat(m).concat(c).concat(j);p.registerHelper("hintWords","css",n);function u(z,y){var w=false,x;while((x=z.next())!=null){if(w&&x=="/"){y.tokenize=null;break}w=(x=="*")}return["comment","comment"]}p.defineMIME("text/css",{documentTypes:a,mediaTypes:t,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:e,fontProperties:f,counterDescriptors:s,colorKeywords:l,valueKeywords:q,tokenHooks:{"/":function(x,w){if(!x.eat("*")){return false}w.tokenize=u;return u(x,w)}},name:"css"});p.defineMIME("text/x-scss",{mediaTypes:t,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:e,colorKeywords:l,valueKeywords:q,fontProperties:f,allowNested:true,tokenHooks:{"/":function(x,w){if(x.eat("/")){x.skipToEnd();return["comment","comment"]}else{if(x.eat("*")){w.tokenize=u;return u(x,w)}else{return["operator","operator"]}}},":":function(w){if(w.match(/\s*\{/)){return[null,"{"]}return false},"$":function(w){w.match(/^[\w-]+/);if(w.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"#":function(w){if(!w.eat("{")){return false}return[null,"interpolation"]}},name:"css",helperType:"scss"});p.defineMIME("text/x-less",{mediaTypes:t,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:e,colorKeywords:l,valueKeywords:q,fontProperties:f,allowNested:true,tokenHooks:{"/":function(x,w){if(x.eat("/")){x.skipToEnd();return["comment","comment"]}else{if(x.eat("*")){w.tokenize=u;return u(x,w)}else{return["operator","operator"]}}},"@":function(w){if(w.eat("{")){return[null,"interpolation"]}if(w.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,false)){return false}w.eatWhile(/[\w\\\-]/);if(w.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlmixed",function(c,d){var b=a.getMode(c,{name:"xml",htmlMode:true,multilineTagIndentFactor:d.multilineTagIndentFactor,multilineTagIndentPastTag:d.multilineTagIndentPastTag});var n=a.getMode(c,"css");var l=[],k=d&&d.scriptTypes;l.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:a.getMode(c,"javascript")});if(k){for(var e=0;e<k.length;++e){var j=k[e];l.push({matches:j.matches,mode:j.mode&&a.getMode(c,j.mode)})}}l.push({matches:/./,mode:a.getMode(c,"text/plain")});function f(t,r){var p=r.htmlState.tagName;if(p){p=p.toLowerCase()}var q=b.token(t,r.htmlState);if(p=="script"&&/\btag\b/.test(q)&&t.current()==">"){var u=t.string.slice(Math.max(0,t.pos-100),t.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i);u=u?u[1]:"";if(u&&/[\"\']/.test(u.charAt(0))){u=u.slice(1,u.length-1)}for(var o=0;o<l.length;++o){var s=l[o];if(typeof s.matches=="string"?u==s.matches:s.matches.test(u)){if(s.mode){r.token=m;r.localMode=s.mode;r.localState=s.mode.startState&&s.mode.startState(b.indent(r.htmlState,""))}break}}}else{if(p=="style"&&/\btag\b/.test(q)&&t.current()==">"){r.token=g;r.localMode=n;r.localState=n.startState(b.indent(r.htmlState,""))}}return q}function h(r,i,o){var q=r.current();var p=q.search(i);if(p>-1){r.backUp(q.length-p)}else{if(q.match(/<\/?$/)){r.backUp(q.length);if(!r.match(i,false)){r.match(q)}}}return o}function m(o,i){if(o.match(/^<\/\s*script\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*script\s*>/,i.localMode.token(o,i.localState))}function g(o,i){if(o.match(/^<\/\s*style\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*style\s*>/,n.token(o,i.localState))}return{startState:function(){var i=b.startState();return{token:f,localMode:null,localState:null,htmlState:i}},copyState:function(o){if(o.localState){var i=a.copyState(o.localMode,o.localState)}return{token:o.token,localMode:o.localMode,localState:i,htmlState:a.copyState(b,o.htmlState)}},token:function(o,i){return i.token(o,i)},indent:function(o,i){if(!o.localMode||/^\s*<\//.test(i)){return b.indent(o.htmlState,i)}else{if(o.localMode.indent){return o.localMode.indent(o.localState,i)}else{return a.Pass}}},innerMode:function(i){return{state:i.localState||i.htmlState,mode:i.localMode||b}}}},"xml","javascript","css");a.defineMIME("text/html","htmlmixed")});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"),require("../../addon/mode/multiplex"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../htmlmixed/htmlmixed","../../addon/mode/multiplex"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlembedded",function(b,c){return a.multiplexingMode(a.getMode(b,"htmlmixed"),{open:c.open||c.scriptStartRegex||"<%",close:c.close||c.scriptEndRegex||"%>",mode:a.getMode(b,c.scriptingModeSpec)})},"htmlmixed");a.defineMIME("application/x-ejs",{name:"htmlembedded",scriptingModeSpec:"javascript"});a.defineMIME("application/x-aspx",{name:"htmlembedded",scriptingModeSpec:"text/x-csharp"});a.defineMIME("application/x-jsp",{name:"htmlembedded",scriptingModeSpec:"text/x-java"});a.defineMIME("application/x-erb",{name:"htmlembedded",scriptingModeSpec:"ruby"})});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/codemirror.mode.b000060400000003652152455705240026620 0ustar00CodeMirror.defineMode("bbcode",function(b){var e,a,g;e={bbCodeTags:"b i u s img quote code list table  tr td size color url",bbCodeUnaryTags:"* :-) hr cut"};if(b.hasOwnProperty("bbCodeTags")){e.bbCodeTags=b.bbCodeTags}if(b.hasOwnProperty("bbCodeUnaryTags")){e.bbCodeUnaryTags=b.bbCodeUnaryTags}var f={cont:function(i,h){g=h;return i},escapeRegEx:function(h){return h.replace(/([\:\-\)\(\*\+\?\[\]])/g,"\\$1")}};var d={validIdentifier:/[a-zA-Z0-9_]/,stringChar:/['"]/,tags:new RegExp("(?:"+f.escapeRegEx(e.bbCodeTags).split(" ").join("|")+")"),unaryTags:new RegExp("(?:"+f.escapeRegEx(e.bbCodeUnaryTags).split(" ").join("|")+")")};var c={tokenizer:function(i,h){if(i.eatSpace()){return null}if(i.match("[",true)){h.tokenize=c.bbcode;return f.cont("tag","startTag")}i.next();return null},inAttribute:function(h){return function(k,i){var l=null;var j=null;while(!k.eol()){j=k.peek();if(k.next()==h&&l!=="\\"){i.tokenize=c.bbcode;break}l=j}return"string"}},bbcode:function(k,i){if(a=k.match("]",true)){i.tokenize=c.tokenizer;return f.cont("tag",null)}if(k.match("[",true)){return f.cont("tag","startTag")}var h=k.next();if(d.stringChar.test(h)){i.tokenize=c.inAttribute(h);return f.cont("string","string")}else{if(/\d/.test(h)){k.eatWhile(/\d/);return f.cont("number","number")}else{if(i.last=="whitespace"){k.eatWhile(d.validIdentifier);return f.cont("attribute","modifier")}if(i.last=="property"){k.eatWhile(d.validIdentifier);return f.cont("property",null)}else{if(/\s/.test(h)){g="whitespace";return null}}var j="";if(h!="/"){j+=h}var l=null;while(l=k.eat(d.validIdentifier)){j+=l}if(d.unaryTags.test(j)){return f.cont("atom","atom")}if(d.tags.test(j)){return f.cont("keyword","keyword")}if(/\s/.test(h)){return null}return f.cont("tag","tag")}}}};return{startState:function(){return{tokenize:c.tokenizer,mode:"bbcode",last:null}},token:function(j,i){var h=i.tokenize(j,i);i.last=g;return h},electricChars:""}});CodeMirror.defineMIME("text/x-bbcode","bbcode");
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/beautify.min.js000060400000111114152455705240026306 0ustar00(function(){function n(n,t){for(var i=0;i<t.length;i+=1)if(t[i]===n)return!0;return!1}function f(n){return n.replace(/^\s+|\s+$/g,"")}function r(n,t){"use strict";var i=new e(n,t);return i.beautify()}function e(i,r){"use strict";function yt(n,t){var i=0;return n&&(i=n.indentation_level,!l.just_added_newline()&&n.line_indent_level>i&&(i=n.line_indent_level)),{mode:t,parent:n,last_text:n?n.last_text:"",last_word:n?n.last_word:"",declaration_statement:!1,declaration_assignment:!1,multiline_frame:!1,if_block:!1,else_block:!1,do_block:!1,do_while:!1,in_case_statement:!1,in_case:!1,case_body:!1,indentation_level:i,line_indent_level:n?n.line_indent_level:i,start_line_index:l.get_line_number(),ternary_depth:0}}function pt(n){var i=n.newlines,r=c.keep_array_indentation&&d(u.mode),t;if(r)for(t=0;t<i;t+=1)a(t>0);else if(c.max_preserve_newlines&&i>c.max_preserve_newlines&&(i=c.max_preserve_newlines),c.preserve_newlines&&n.newlines>1)for(a(),t=1;t<i;t+=1)a(!0);e=n;at[e.type]()}function bt(n){n=n.replace(/\x0d/g,"");for(var i=[],t=n.indexOf("\n");t!==-1;)i.push(n.substring(0,t)),n=n.substring(t+1),t=n.indexOf("\n");return n.length&&i.push(n),i}function k(n){if(n=n===undefined?!1:n,!l.just_added_newline())if(c.preserve_newlines&&e.wanted_newline||n)a(!1,!0);else if(c.wrap_line_length){var t=l.current_line.get_character_count()+e.text.length+(l.space_before_token?1:0);t>=c.wrap_line_length&&a(!1,!0)}}function a(n,i){if(!i&&u.last_text!==";"&&u.last_text!==","&&u.last_text!=="="&&o!=="TK_OPERATOR")while(u.mode===t.Statement&&!u.if_block&&!u.do_block)b();l.add_new_line(n)&&(u.multiline_frame=!0)}function kt(){if(l.just_added_newline())if(c.keep_array_indentation&&d(u.mode)&&e.wanted_newline){l.current_line.push("");for(var n=0;n<e.whitespace_before.length;n+=1)l.current_line.push(e.whitespace_before[n]);l.space_before_token=!1}else l.add_indent_string(u.indentation_level)&&(u.line_indent_level=u.indentation_level)}function v(n){n=n||e.text;kt();l.add_token(n)}function rt(){u.indentation_level+=1}function dt(){u.indentation_level>0&&(!u.parent||u.indentation_level>u.parent.indentation_level)&&(u.indentation_level-=1)}function nt(n){u?(et.push(u),p=u):p=yt(null,n);u=yt(p,n)}function d(n){return n===t.ArrayLiteral}function ut(i){return n(i,[t.Expression,t.ForInitializer,t.Conditional])}function b(){et.length>0&&(p=u,u=et.pop(),p.mode===t.Statement&&l.remove_redundant_indentation(p))}function ot(){return u.parent.mode===t.ObjectLiteral&&u.mode===t.Statement&&(u.last_text===":"&&u.ternary_depth===0||o==="TK_RESERVED"&&n(u.last_text,["get","set"]))}function tt(){return o==="TK_RESERVED"&&n(u.last_text,["var","let","const"])&&e.type==="TK_WORD"||o==="TK_RESERVED"&&u.last_text==="do"||o==="TK_RESERVED"&&u.last_text==="return"&&!e.wanted_newline||o==="TK_RESERVED"&&u.last_text==="else"&&!(e.type==="TK_RESERVED"&&e.text==="if")||o==="TK_END_EXPR"&&(p.mode===t.ForInitializer||p.mode===t.Conditional)||o==="TK_WORD"&&u.mode===t.BlockStatement&&!u.in_case&&!(e.text==="--"||e.text==="++")&&e.type!=="TK_WORD"&&e.type!=="TK_RESERVED"||u.mode===t.ObjectLiteral&&(u.last_text===":"&&u.ternary_depth===0||o==="TK_RESERVED"&&n(u.last_text,["get","set"]))?(nt(t.Statement),rt(),o==="TK_RESERVED"&&n(u.last_text,["var","let","const"])&&e.type==="TK_WORD"&&(u.declaration_statement=!0),ot()||k(e.type==="TK_RESERVED"&&n(e.text,["do","for","if","while"])),!0):!1}function gt(n,t){for(var r,i=0;i<n.length;i++)if(r=f(n[i]),r.charAt(0)!==t)return!1;return!0}function ni(n,t){for(var i=0,u=n.length,r;i<u;i++)if(r=n[i],r&&r.indexOf(t)!==0)return!1;return!0}function st(t){return n(t,["case","return","do","if","throw","else"])}function ht(n){var t=lt+(n||0);return t<0||t>=ct.length?null:ct[t]}function ti(){tt();var i=t.Expression;if(e.text==="["){if(o==="TK_WORD"||u.last_text===")"){o==="TK_RESERVED"&&n(u.last_text,g.line_starters)&&(l.space_before_token=!0);nt(i);v();rt();c.space_in_paren&&(l.space_before_token=!0);return}i=t.ArrayLiteral;d(u.mode)&&(u.last_text==="["||u.last_text===","&&(w==="]"||w==="}"))&&(c.keep_array_indentation||a())}else o==="TK_RESERVED"&&u.last_text==="for"?i=t.ForInitializer:o==="TK_RESERVED"&&n(u.last_text,["if","while"])&&(i=t.Conditional);u.last_text===";"||o==="TK_START_BLOCK"?a():o==="TK_END_EXPR"||o==="TK_START_EXPR"||o==="TK_END_BLOCK"||u.last_text==="."?k(e.wanted_newline):o==="TK_RESERVED"&&e.text==="("||o==="TK_WORD"||o==="TK_OPERATOR"?o==="TK_RESERVED"&&(u.last_word==="function"||u.last_word==="typeof")||u.last_text==="*"&&w==="function"?c.space_after_anon_function&&(l.space_before_token=!0):o==="TK_RESERVED"&&(n(u.last_text,g.line_starters)||u.last_text==="catch")&&c.space_before_conditional&&(l.space_before_token=!0):l.space_before_token=!0;e.text==="("&&(o==="TK_EQUALS"||o==="TK_OPERATOR")&&(ot()||k());nt(i);v();c.space_in_paren&&(l.space_before_token=!0);rt()}function ii(){while(u.mode===t.Statement)b();u.multiline_frame&&k(e.text==="]"&&d(u.mode)&&!c.keep_array_indentation);c.space_in_paren&&(o!=="TK_START_EXPR"||c.space_in_empty_paren?l.space_before_token=!0:(l.trim(),l.space_before_token=!1));e.text==="]"&&c.keep_array_indentation?(v(),b()):(b(),v());l.remove_redundant_indentation(p);u.do_while&&p.mode===t.Conditional&&(p.mode=t.Expression,u.do_block=!1,u.do_while=!1)}function ri(){var i=ht(1),r=ht(2),f,e;r&&(r.text===":"&&n(i.type,["TK_STRING","TK_WORD","TK_RESERVED"])||n(i.text,["get","set"])&&n(r.type,["TK_WORD","TK_RESERVED"]))?n(w,["class","interface"])?nt(t.BlockStatement):nt(t.ObjectLiteral):nt(t.BlockStatement);f=!i.comments_before.length&&i.text==="}";e=f&&u.last_word==="function"&&o==="TK_END_EXPR";c.brace_style==="expand"?o!=="TK_OPERATOR"&&(e||o==="TK_EQUALS"||o==="TK_RESERVED"&&st(u.last_text)&&u.last_text!=="else")?l.space_before_token=!0:a(!1,!0):o!=="TK_OPERATOR"&&o!=="TK_START_EXPR"?o==="TK_START_BLOCK"?a():l.space_before_token=!0:d(p.mode)&&u.last_text===","&&(w==="}"?l.space_before_token=!0:a());v();rt()}function ui(){while(u.mode===t.Statement)b();var n=o==="TK_START_BLOCK";c.brace_style==="expand"?n||a():n||(d(u.mode)&&c.keep_array_indentation?(c.keep_array_indentation=!1,a(),c.keep_array_indentation=!0):a());b();v()}function wt(){var i,r;if(e.type==="TK_RESERVED"&&u.mode!==t.ObjectLiteral&&n(e.text,["set","get"])&&(e.type="TK_WORD"),e.type==="TK_RESERVED"&&u.mode===t.ObjectLiteral&&(i=ht(1),i.text==":"&&(e.type="TK_WORD")),tt()||!e.wanted_newline||ut(u.mode)||o==="TK_OPERATOR"&&u.last_text!=="--"&&u.last_text!=="++"||o==="TK_EQUALS"||!c.preserve_newlines&&o==="TK_RESERVED"&&n(u.last_text,["var","let","const","set","get"])||a(),u.do_block&&!u.do_while){if(e.type==="TK_RESERVED"&&e.text==="while"){l.space_before_token=!0;v();l.space_before_token=!0;u.do_while=!0;return}a();u.do_block=!1}if(u.if_block)if(u.else_block||e.type!=="TK_RESERVED"||e.text!=="else"){while(u.mode===t.Statement)b();u.if_block=!1;u.else_block=!1}else u.else_block=!0;if(e.type==="TK_RESERVED"&&(e.text==="case"||e.text==="default"&&u.in_case_statement)){a();(u.case_body||c.jslint_happy)&&(dt(),u.case_body=!1);v();u.in_case=!0;u.in_case_statement=!0;return}if(e.type==="TK_RESERVED"&&e.text==="function"&&((n(u.last_text,["}",";"])||l.just_added_newline()&&!n(u.last_text,["[","{",":","=",","]))&&(l.just_added_blankline()||e.comments_before.length||(a(),a(!0))),o==="TK_RESERVED"||o==="TK_WORD"?o==="TK_RESERVED"&&n(u.last_text,["get","set","new","return","export"])?l.space_before_token=!0:o==="TK_RESERVED"&&u.last_text==="default"&&w==="export"?l.space_before_token=!0:a():o==="TK_OPERATOR"||u.last_text==="="?l.space_before_token=!0:!u.multiline_frame&&(ut(u.mode)||d(u.mode))||a()),(o==="TK_COMMA"||o==="TK_START_EXPR"||o==="TK_EQUALS"||o==="TK_OPERATOR")&&(ot()||k()),e.type==="TK_RESERVED"&&n(e.text,["function","get","set"])){v();u.last_word=e.text;return}y="NONE";o==="TK_END_BLOCK"?e.type==="TK_RESERVED"&&n(e.text,["else","catch","finally"])?c.brace_style==="expand"||c.brace_style==="end-expand"?y="NEWLINE":(y="SPACE",l.space_before_token=!0):y="NEWLINE":o==="TK_SEMICOLON"&&u.mode===t.BlockStatement?y="NEWLINE":o==="TK_SEMICOLON"&&ut(u.mode)?y="SPACE":o==="TK_STRING"?y="NEWLINE":o==="TK_RESERVED"||o==="TK_WORD"||u.last_text==="*"&&w==="function"?y="SPACE":o==="TK_START_BLOCK"?y="NEWLINE":o==="TK_END_EXPR"&&(l.space_before_token=!0,y="NEWLINE");e.type==="TK_RESERVED"&&n(e.text,g.line_starters)&&u.last_text!==")"&&(y=u.last_text==="else"||u.last_text==="export"?"SPACE":"NEWLINE");e.type==="TK_RESERVED"&&n(e.text,["else","catch","finally"])?o!=="TK_END_BLOCK"||c.brace_style==="expand"||c.brace_style==="end-expand"?a():(l.trim(!0),r=l.current_line,r.last()!=="}"&&a(),l.space_before_token=!0):y==="NEWLINE"?o==="TK_RESERVED"&&st(u.last_text)?l.space_before_token=!0:o!=="TK_END_EXPR"?o==="TK_START_EXPR"&&e.type==="TK_RESERVED"&&n(e.text,["var","let","const"])||u.last_text===":"||(e.type==="TK_RESERVED"&&e.text==="if"&&u.last_text==="else"?l.space_before_token=!0:a()):e.type==="TK_RESERVED"&&n(e.text,g.line_starters)&&u.last_text!==")"&&a():u.multiline_frame&&d(u.mode)&&u.last_text===","&&w==="}"?a():y==="SPACE"&&(l.space_before_token=!0);v();u.last_word=e.text;e.type==="TK_RESERVED"&&e.text==="do"&&(u.do_block=!0);e.type==="TK_RESERVED"&&e.text==="if"&&(u.if_block=!0)}function fi(){for(tt()&&(l.space_before_token=!1);u.mode===t.Statement&&!u.if_block&&!u.do_block;)b();v()}function ei(){tt()?l.space_before_token=!0:o==="TK_RESERVED"||o==="TK_WORD"?l.space_before_token=!0:o==="TK_COMMA"||o==="TK_START_EXPR"||o==="TK_EQUALS"||o==="TK_OPERATOR"?ot()||k():a();v()}function oi(){tt();u.declaration_statement&&(u.declaration_assignment=!0);l.space_before_token=!0;v();l.space_before_token=!0}function si(){if(u.declaration_statement){ut(u.parent.mode)&&(u.declaration_assignment=!1);v();u.declaration_assignment?(u.declaration_assignment=!1,a(!1,!0)):l.space_before_token=!0;return}v();u.mode===t.ObjectLiteral||u.mode===t.Statement&&u.parent.mode===t.ObjectLiteral?(u.mode===t.Statement&&b(),a()):l.space_before_token=!0}function hi(){if(tt(),o==="TK_RESERVED"&&st(u.last_text)){l.space_before_token=!0;v();return}if(e.text==="*"&&o==="TK_DOT"){v();return}if(e.text===":"&&u.in_case){u.case_body=!0;rt();v();a();u.in_case=!1;return}if(e.text==="::"){v();return}e.wanted_newline&&(e.text==="--"||e.text==="++")&&a(!1,!0);o==="TK_OPERATOR"&&k();var i=!0,r=!0;n(e.text,["--","++","!","~"])||n(e.text,["-","+"])&&(n(o,["TK_START_BLOCK","TK_START_EXPR","TK_EQUALS","TK_OPERATOR"])||n(u.last_text,g.line_starters)||u.last_text===",")?(i=!1,r=!1,u.last_text===";"&&ut(u.mode)&&(i=!0),o==="TK_RESERVED"||o==="TK_END_EXPR"?i=!0:o==="TK_OPERATOR"&&(i=n(e.text,["--","-"])&&n(u.last_text,["--","-"])||n(e.text,["++","+"])&&n(u.last_text,["++","+"])),(u.mode===t.BlockStatement||u.mode===t.Statement)&&(u.last_text==="{"||u.last_text===";")&&a()):e.text===":"?u.ternary_depth===0?i=!1:u.ternary_depth-=1:e.text==="?"?u.ternary_depth+=1:e.text==="*"&&o==="TK_RESERVED"&&u.last_text==="function"&&(i=!1,r=!1);l.space_before_token=l.space_before_token||i;v();l.space_before_token=r}function ci(){var n=bt(e.text),t,i=!1,r=!1,u=e.whitespace_before.join(""),o=u.length;for(a(!1,!0),n.length>1&&(gt(n.slice(1),"*")?i=!0:ni(n.slice(1),u)&&(r=!0)),v(n[0]),t=1;t<n.length;t++)a(!1,!0),i?v(" "+f(n[t])):r&&n[t].length>o?v(n[t].substring(o)):l.add_token(n[t]);a(!1,!0)}function li(){l.space_before_token=!0;v();l.space_before_token=!0}function ai(){e.wanted_newline?a(!1,!0):l.trim(!0);l.space_before_token=!0;v();a(!1,!0)}function vi(){tt();o==="TK_RESERVED"&&st(u.last_text)?l.space_before_token=!0:k(u.last_text===")"&&c.break_chained_methods);v()}function yi(){v();e.text[e.text.length-1]==="\n"&&a()}function pi(){while(u.mode===t.Statement)b()}var l,ct=[],lt,g,e,o,w,ft,u,p,et,y,at,c,vt="",it;for(at={TK_START_EXPR:ti,TK_END_EXPR:ii,TK_START_BLOCK:ri,TK_END_BLOCK:ui,TK_WORD:wt,TK_RESERVED:wt,TK_SEMICOLON:fi,TK_STRING:ei,TK_EQUALS:oi,TK_OPERATOR:hi,TK_COMMA:si,TK_BLOCK_COMMENT:ci,TK_INLINE_COMMENT:li,TK_COMMENT:ai,TK_DOT:vi,TK_UNKNOWN:yi,TK_EOF:pi},r=r?r:{},c={},r.braces_on_own_line!==undefined&&(c.brace_style=r.braces_on_own_line?"expand":"collapse"),c.brace_style=r.brace_style?r.brace_style:c.brace_style?c.brace_style:"collapse",c.brace_style==="expand-strict"&&(c.brace_style="expand"),c.indent_size=r.indent_size?parseInt(r.indent_size,10):4,c.indent_char=r.indent_char?r.indent_char:" ",c.preserve_newlines=r.preserve_newlines===undefined?!0:r.preserve_newlines,c.break_chained_methods=r.break_chained_methods===undefined?!1:r.break_chained_methods,c.max_preserve_newlines=r.max_preserve_newlines===undefined?0:parseInt(r.max_preserve_newlines,10),c.space_in_paren=r.space_in_paren===undefined?!1:r.space_in_paren,c.space_in_empty_paren=r.space_in_empty_paren===undefined?!1:r.space_in_empty_paren,c.jslint_happy=r.jslint_happy===undefined?!1:r.jslint_happy,c.space_after_anon_function=r.space_after_anon_function===undefined?!1:r.space_after_anon_function,c.keep_array_indentation=r.keep_array_indentation===undefined?!1:r.keep_array_indentation,c.space_before_conditional=r.space_before_conditional===undefined?!0:r.space_before_conditional,c.unescape_strings=r.unescape_strings===undefined?!1:r.unescape_strings,c.wrap_line_length=r.wrap_line_length===undefined?0:parseInt(r.wrap_line_length,10),c.e4x=r.e4x===undefined?!1:r.e4x,c.end_with_newline=r.end_with_newline===undefined?!1:r.end_with_newline,c.jslint_happy&&(c.space_after_anon_function=!0),r.indent_with_tabs&&(c.indent_char="\t",c.indent_size=1),ft="";c.indent_size>0;)ft+=c.indent_char,c.indent_size-=1;if(it=0,i&&i.length){while(i.charAt(it)===" "||i.charAt(it)==="\t")vt+=i.charAt(it),it+=1;i=i.substring(it)}o="TK_START_BLOCK";w="";l=new s(ft,vt);et=[];nt(t.BlockStatement);this.beautify=function(){var n,r,t;for(g=new h(i,c,ft),ct=g.tokenize(),lt=0;n=ht();){for(t=0;t<n.comments_before.length;t++)pt(n.comments_before[t]);pt(n);w=u.last_text;o=n.type;u.last_text=n.text;lt+=1}return r=l.get_code(),c.end_with_newline&&(r+="\n"),r}}function o(){var t=0,n=[];this.get_character_count=function(){return t};this.get_item_count=function(){return n.length};this.get_output=function(){return n.join("")};this.last=function(){return n.length?n[n.length-1]:null};this.push=function(i){n.push(i);t+=i.length};this.remove_indent=function(i,r){var u=0;n.length!==0&&(r&&n[0]===r&&(u=1),n[u]===i&&(t-=n[u].length,n.splice(u,1)))};this.trim=function(i,r){while(this.get_item_count()&&(this.last()===" "||this.last()===i||this.last()===r)){var u=n.pop();t-=u.length}}}function s(n,i){var r=[];this.baseIndentString=i;this.current_line=null;this.space_before_token=!1;this.get_line_number=function(){return r.length};this.add_new_line=function(n){return this.get_line_number()===1&&this.just_added_newline()?!1:n||!this.just_added_newline()?(this.current_line=new o,r.push(this.current_line),!0):!1};this.add_new_line(!0);this.get_code=function(){for(var t=r[0].get_output(),n=1;n<r.length;n++)t+="\n"+r[n].get_output();return t.replace(/[\r\n\t ]+$/,"")};this.add_indent_string=function(t){if(i&&this.current_line.push(i),r.length>1){for(var u=0;u<t;u+=1)this.current_line.push(n);return!0}return!1};this.add_token=function(n){this.add_space_before_token();this.current_line.push(n)};this.add_space_before_token=function(){if(this.space_before_token&&this.current_line.get_item_count()){var t=this.current_line.last();t!==" "&&t!==n&&t!==i&&this.current_line.push(" ")}this.space_before_token=!1};this.remove_redundant_indentation=function(u){if(!u.multiline_frame&&u.mode!==t.ForInitializer&&u.mode!==t.Conditional)for(var f=u.start_line_index,e=r.length;f<e;)r[f].remove_indent(n,i),f++};this.trim=function(t){for(t=t===undefined?!1:t,this.current_line.trim(n,i);t&&r.length>1&&this.current_line.get_item_count()===0;)r.pop(),this.current_line=r[r.length-1],this.current_line.trim(n,i)};this.just_added_newline=function(){return this.current_line.get_item_count()===0};this.just_added_blankline=function(){if(this.just_added_newline()){if(r.length===1)return!0;var n=r[r.length-2];return n.get_item_count()===0}return!1}}function h(t,r,e){function w(){var nt,d,w,rt,ct,et,pt,st,lt,ut;if(c=0,l=[],o>=s)return["","TK_EOF"];for(d=h.length?h[h.length-1]:new u("TK_START_BLOCK","{"),w=t.charAt(o),o+=1;n(w,b);){if(w==="\n"?(c+=1,l=[]):c&&(w===e?l.push(e):w!=="\r"&&l.push(" ")),o>=s)return["","TK_EOF"];w=t.charAt(o);o+=1}if(v.test(w)){var ft=!0,ht=!0,at=v;for(w==="0"&&o<s&&/[Xx]/.test(t.charAt(o))?(ft=!1,ht=!1,w+=t.charAt(o),o+=1,at=/[0123456789abcdefABCDEF]/):(w="",o-=1);o<s&&at.test(t.charAt(o));)w+=t.charAt(o),o+=1,ft&&o<s&&t.charAt(o)==="."&&(w+=t.charAt(o),o+=1,ft=!1),ht&&o<s&&/[Ee]/.test(t.charAt(o))&&(w+=t.charAt(o),o+=1,o<s&&/[+-]/.test(t.charAt(o))&&(w+=t.charAt(o),o+=1),ht=!1,ft=!1);return[w,"TK_WORD"]}if(i.isIdentifierStart(t.charCodeAt(o-1))){if(o<s)while(i.isIdentifierChar(t.charCodeAt(o)))if(w+=t.charAt(o),o+=1,o===s)break;return!(d.type==="TK_DOT"||d.type==="TK_RESERVED"&&n(d.text,["set","get"]))&&n(w,p)?w==="in"?[w,"TK_OPERATOR"]:[w,"TK_RESERVED"]:[w,"TK_WORD"]}if(w==="("||w==="[")return[w,"TK_START_EXPR"];if(w===")"||w==="]")return[w,"TK_END_EXPR"];if(w==="{")return[w,"TK_START_BLOCK"];if(w==="}")return[w,"TK_END_BLOCK"];if(w===";")return[w,"TK_SEMICOLON"];if(w==="/"){if(rt="",ct=!0,t.charAt(o)==="*"){if(o+=1,o<s)while(o<s&&!(t.charAt(o)==="*"&&t.charAt(o+1)&&t.charAt(o+1)==="/"))if(w=t.charAt(o),rt+=w,(w==="\n"||w==="\r")&&(ct=!1),o+=1,o>=s)break;return o+=2,ct&&c===0?["/*"+rt+"*/","TK_INLINE_COMMENT"]:["/*"+rt+"*/","TK_BLOCK_COMMENT"]}if(t.charAt(o)==="/"){for(rt=w;t.charAt(o)!=="\r"&&t.charAt(o)!=="\n";)if(rt+=t.charAt(o),o+=1,o>=s)break;return[rt,"TK_COMMENT"]}}if(w==="`"||w==="'"||w==='"'||(w==="/"||r.e4x&&w==="<"&&t.slice(o-1).match(/^<([-a-zA-Z:0-9_.]+|{[^{}]*}|!\[CDATA\[[\s\S]*?\]\])\s*([-a-zA-Z:0-9_.]+=('[^']*'|"[^"]*"|{[^{}]*})\s*)*\/?\s*>/))&&(d.type==="TK_RESERVED"&&n(d.text,["return","case","throw","else","do","typeof","yield"])||d.type==="TK_END_EXPR"&&d.text===")"&&d.parent&&d.parent.type==="TK_RESERVED"&&n(d.parent.text,["if","while","for"])||n(d.type,["TK_COMMENT","TK_START_EXPR","TK_START_BLOCK","TK_END_BLOCK","TK_OPERATOR","TK_EQUALS","TK_EOF","TK_SEMICOLON","TK_COMMA"]))){var tt=w,it=!1,vt=!1;if(nt=w,tt==="/")for(et=!1;o<s&&(it||et||t.charAt(o)!==tt)&&!i.newline.test(t.charAt(o));)nt+=t.charAt(o),it?it=!1:(it=t.charAt(o)==="\\",t.charAt(o)==="["?et=!0:t.charAt(o)==="]"&&(et=!1)),o+=1;else if(r.e4x&&tt==="<"){var yt=/<(\/?)([-a-zA-Z:0-9_.]+|{[^{}]*}|!\[CDATA\[[\s\S]*?\]\])\s*([-a-zA-Z:0-9_.]+=('[^']*'|"[^"]*"|{[^{}]*})\s*)*(\/?)\s*>/g,ot=t.slice(o-1),g=yt.exec(ot);if(g&&g.index===0){for(pt=g[2],st=0;g;){var bt=!!g[1],wt=g[2],kt=!!g[g.length-1]||wt.slice(0,8)==="![CDATA[";if(wt!==pt||kt||(bt?--st:++st),st<=0)break;g=yt.exec(ot)}return lt=g?g.index+g[0].length:ot.length,o+=lt-1,[ot.slice(0,lt),"TK_STRING"]}}else while(o<s&&(it||t.charAt(o)!==tt&&(tt==="`"||!i.newline.test(t.charAt(o)))))nt+=t.charAt(o),it?((t.charAt(o)==="x"||t.charAt(o)==="u")&&(vt=!0),it=!1):it=t.charAt(o)==="\\",o+=1;if(vt&&r.unescape_strings&&(nt=k(nt)),o<s&&t.charAt(o)===tt&&(nt+=tt,o+=1,tt==="/"))while(o<s&&i.isIdentifierStart(t.charCodeAt(o)))nt+=t.charAt(o),o+=1;return[nt,"TK_STRING"]}if(w==="#"){if(h.length===0&&t.charAt(o)==="!"){for(nt=w;o<s&&w!=="\n";)w=t.charAt(o),nt+=w,o+=1;return[f(nt)+"\n","TK_UNKNOWN"]}if(ut="#",o<s&&v.test(t.charAt(o))){do w=t.charAt(o),ut+=w,o+=1;while(o<s&&w!=="#"&&w!=="=");return w==="#"||(t.charAt(o)==="["&&t.charAt(o+1)==="]"?(ut+="[]",o+=2):t.charAt(o)==="{"&&t.charAt(o+1)==="}"&&(ut+="{}",o+=2)),[ut,"TK_WORD"]}}if(w==="<"&&t.substring(o-1,o+3)==="<!--"){for(o+=3,w="<!--";t.charAt(o)!=="\n"&&o<s;)w+=t.charAt(o),o++;return a=!0,[w,"TK_COMMENT"]}if(w==="-"&&a&&t.substring(o-1,o+2)==="-->")return a=!1,o+=2,["-->","TK_COMMENT"];if(w===".")return[w,"TK_DOT"];if(n(w,y)){while(o<s&&n(w+t.charAt(o),y))if(w+=t.charAt(o),o+=1,o>=s)break;return w===","?[w,"TK_COMMA"]:w==="="?[w,"TK_EQUALS"]:[w,"TK_OPERATOR"]}return[w,"TK_UNKNOWN"]}function k(n){for(var e=!1,u="",r=0,f="",t=0,i;e||r<n.length;)if(i=n.charAt(r),r++,e){if(e=!1,i==="x")f=n.substr(r,2),r+=2;else if(i==="u")f=n.substr(r,4),r+=4;else{u+="\\"+i;continue}if(!f.match(/^[0123456789abcdefABCDEF]+$/))return n;if(t=parseInt(f,16),t>=0&&t<32){u+=i==="x"?"\\x"+f:"\\u"+f;continue}else if(t===34||t===39||t===92)u+="\\"+String.fromCharCode(t);else{if(i==="x"&&t>126&&t<=255)return n;u+=String.fromCharCode(t)}}else i==="\\"?e=!0:u+=i;return u}var b="\n\r\t ".split(""),v=/[0-9]/,y=("+ - * / % & ++ -- = += -= *= /= %= == === != !== > < >= <= >> << >>> >>>= >>= <<= && &= | || ! ~ , : ? ^ ^= |= :: =>"+" <%= <% %> <?= <? ?>").split(" "),p,c,l,a,h,o,s;this.line_starters="continue,try,throw,return,var,let,const,if,switch,case,default,for,while,break,function,yield,import,export".split(",");p=this.line_starters.concat(["do","in","else","get","set","new","catch","finally","typeof"]);this.tokenize=function(){s=t.length;o=0;a=!1;h=[];for(var n,f,r,i=null,v=[],e=[];!(f&&f.type==="TK_EOF");){for(r=w(),n=new u(r[1],r[0],c,l);n.type==="TK_INLINE_COMMENT"||n.type==="TK_COMMENT"||n.type==="TK_BLOCK_COMMENT"||n.type==="TK_UNKNOWN";)e.push(n),r=w(),n=new u(r[1],r[0],c,l);e.length&&(n.comments_before=e,e=[]);n.type==="TK_START_BLOCK"||n.type==="TK_START_EXPR"?(n.parent=f,i=n,v.push(n)):(n.type==="TK_END_BLOCK"||n.type==="TK_END_EXPR")&&i&&(n.text==="]"&&i.text==="["||n.text===")"&&i.text==="("||n.text==="}"&&i.text==="}")&&(n.parent=i.parent,i=v.pop());h.push(n);f=n}return h}}var i={},t,u;(function(n){var t="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԧԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॱ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚗꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",i=new RegExp("["+t+"]"),r=new RegExp("["+t+"̀-ͯ҃-֑҇-ׇֽֿׁׂׅׄؐ-ؚؠ-ىٲ-ۓۧ-ۨۻ-ۼܰ-݊ࠀ-ࠔࠛ-ࠣࠥ-ࠧࠩ-࠭ࡀ-ࡗࣤ-ࣾऀ-ःऺ-़ा-ॏ॑-ॗॢ-ॣ०-९ঁ-ঃ়া-ৄেৈৗয়-ৠਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢ-ૣ૦-૯ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୟ-ୠ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఁ-ఃె-ైొ-్ౕౖౢ-ౣ౦-౯ಂಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢ-ೣ೦-೯ംഃെ-ൈൗൢ-ൣ൦-൯ංඃ්ා-ුූෘ-ෟෲෳิ-ฺเ-ๅ๐-๙ິ-ູ່-ໍ໐-໙༘༙༠-༩༹༵༷ཁ-ཇཱ-྄྆-྇ྍ-ྗྙ-ྼ࿆က-ဩ၀-၉ၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟ᜎ-ᜐᜠ-ᜰᝀ-ᝐᝲᝳក-ឲ៝០-៩᠋-᠍᠐-᠙ᤠ-ᤫᤰ-᤻ᥑ-ᥭᦰ-ᧀᧈ-ᧉ᧐-᧙ᨀ-ᨕᨠ-ᩓ᩠-᩿᩼-᪉᪐-᪙ᭆ-ᭋ᭐-᭙᭫-᭳᮰-᮹᯦-᯳ᰀ-ᰢ᱀-᱉ᱛ-ᱽ᳐-᳒ᴀ-ᶾḁ-ἕ‌‍‿⁀⁔⃐-⃥⃜⃡-⃰ⶁ-ⶖⷠ-ⷿ〡-〨゙゚Ꙁ-ꙭꙴ-꙽ꚟ꛰-꛱ꟸ-ꠀ꠆ꠋꠣ-ꠧꢀ-ꢁꢴ-꣄꣐-꣙ꣳ-ꣷ꤀-꤉ꤦ-꤭ꤰ-ꥅꦀ-ꦃ꦳-꧀ꨀ-ꨧꩀ-ꩁꩌ-ꩍ꩐-꩙ꩻꫠ-ꫩꫲ-ꫳꯀ-ꯡ꯬꯭꯰-꯹ﬠ-ﬨ︀-️︠-︦︳︴﹍-﹏0-9_]"),u=n.newline=/[\n\r\u2028\u2029]/,f=n.isIdentifierStart=function(n){return n<65?n===36:n<91?!0:n<97?n===95:n<123?!0:n>=170&&i.test(String.fromCharCode(n))},e=n.isIdentifierChar=function(n){return n<48?n===36:n<58?!0:n<65?!1:n<91?!0:n<97?n===95:n<123?!0:n>=170&&r.test(String.fromCharCode(n))}})(i);t={BlockStatement:"BlockStatement",Statement:"Statement",ObjectLiteral:"ObjectLiteral",ArrayLiteral:"ArrayLiteral",ForInitializer:"ForInitializer",Conditional:"Conditional",Expression:"Expression"};u=function(n,t,i,r){this.type=n;this.text=t;this.comments_before=[];this.newlines=i||0;this.wanted_newline=i>0;this.whitespace_before=r||[];this.parent=null};typeof define=="function"&&define.amd?define([],function(){return{js_beautify:r}}):typeof exports!="undefined"?exports.js_beautify=r:typeof window!="undefined"?window.js_beautify=r:typeof global!="undefined"&&(global.js_beautify=r)})(),function(){function i(n){return n.replace(/^\s+/g,"")}function t(n){return n.replace(/\s+$/g,"")}function n(n,r,u,f){function ft(){return this.pos=0,this.token="",this.current_mode="CONTENT",this.tags={parent:"parent1",parentcount:1,parent1:""},this.tag_type="",this.token_text=this.last_token=this.last_text=this.token_type="",this.newlines=0,this.indent_content=k,this.Utils={whitespace:"\n\r\t ".split(""),single_token:"br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed,?php,?,?=".split(","),extra_liners:"head,body,/html".split(","),in_array:function(n,t){for(var i=0;i<t.length;i++)if(n===t[i])return!0;return!1}},this.is_whitespace=function(n){for(var t=0;t<n.length;n++)if(!this.Utils.in_array(n.charAt(t),this.Utils.whitespace))return!1;return!0},this.traverse_whitespace=function(){var n="";if(n=this.input.charAt(this.pos),this.Utils.in_array(n,this.Utils.whitespace)){for(this.newlines=0;this.Utils.in_array(n,this.Utils.whitespace);)v&&n==="\n"&&this.newlines<=it&&(this.newlines+=1),this.pos++,n=this.input.charAt(this.pos);return!0}return!1},this.space_or_wrap=function(n){this.line_char_count>=this.wrap_line_length?(this.print_newline(!1,n),this.print_indentation(n)):(this.line_char_count++,n.push(" "))},this.get_content=function(){for(var i="",n=[],t;this.input.charAt(this.pos)!=="<";){if(this.pos>=this.input.length)return n.length?n.join(""):["","TK_EOF"];if(this.traverse_whitespace()){this.space_or_wrap(n);continue}if(o)if(t=this.input.substr(this.pos,3),t==="{{#"||t==="{{/")break;else if(this.input.substr(this.pos,2)==="{{"&&this.get_tag(!0)==="{{else}}")break;i=this.input.charAt(this.pos);this.pos++;this.line_char_count++;n.push(i)}return n.length?n.join(""):""},this.get_contents_to=function(n){var i,t;if(this.pos===this.input.length)return["","TK_EOF"];var r="",u=new RegExp("<\/"+n+"\\s*>","igm");return u.lastIndex=this.pos,i=u.exec(this.input),t=i?i.index:this.input.length,this.pos<t&&(r=this.input.substring(this.pos,t),this.pos=t),r},this.record_tag=function(n){this.tags[n+"count"]?(this.tags[n+"count"]++,this.tags[n+this.tags[n+"count"]]=this.indent_level):(this.tags[n+"count"]=1,this.tags[n+this.tags[n+"count"]]=this.indent_level);this.tags[n+this.tags[n+"count"]+"parent"]=this.tags.parent;this.tags.parent=n+this.tags[n+"count"]},this.retrieve_tag=function(n){if(this.tags[n+"count"]){for(var t=this.tags.parent;t;){if(n+this.tags[n+"count"]===t)break;t=this.tags[t+"parent"]}t&&(this.indent_level=this.tags[n+this.tags[n+"count"]],this.tags.parent=this.tags[t+"parent"]);delete this.tags[n+this.tags[n+"count"]+"parent"];delete this.tags[n+this.tags[n+"count"]];this.tags[n+"count"]===1?delete this.tags[n+"count"]:this.tags[n+"count"]--}},this.indent_to_tag=function(n){if(this.tags[n+"count"]){for(var t=this.tags.parent;t;){if(n+this.tags[n+"count"]===t)break;t=this.tags[t+"parent"]}t&&(this.indent_level=this.tags[n+this.tags[n+"count"]])}},this.get_tag=function(n){var r="",t=[],h="",f=!1,s,p,e,c=this.pos,l=this.line_char_count,i,v,y,u;n=n!==undefined?n:!1;do{if(this.pos>=this.input.length)return n&&(this.pos=c,this.line_char_count=l),t.length?t.join(""):["","TK_EOF"];if(r=this.input.charAt(this.pos),this.pos++,this.Utils.in_array(r,this.Utils.whitespace)){f=!0;continue}if((r==="'"||r==='"')&&(r+=this.get_unformatted(r),f=!0),r==="="&&(f=!1),t.length&&t[t.length-1]!=="="&&r!==">"&&f&&(this.space_or_wrap(t),f=!1),o&&e==="<"&&r+this.input.charAt(this.pos)==="{{"&&(r+=this.get_unformatted("}}"),t.length&&t[t.length-1]!==" "&&t[t.length-1]!=="<"&&(r=" "+r),f=!0),r!=="<"||e||(s=this.pos-1,e="<"),o&&!e&&t.length>=2&&t[t.length-1]==="{"&&t[t.length-2]=="{"&&(s=r==="#"||r==="/"?this.pos-3:this.pos-2,e="{"),this.line_char_count++,t.push(r),t[1]&&t[1]==="!"){t=[this.get_comment(s)];break}if(o&&e==="{"&&t.length>2&&t[t.length-2]==="}"&&t[t.length-1]==="}")break}while(r!==">");return i=t.join(""),v=i.indexOf(" ")!==-1?i.indexOf(" "):i[0]==="{"?i.indexOf("}"):i.indexOf(">"),y=i[0]!=="<"&&o?i[2]==="#"?3:2:1,u=i.substring(y,v).toLowerCase(),i.charAt(i.length-2)==="/"||this.Utils.in_array(u,this.Utils.single_token)?n||(this.tag_type="SINGLE"):o&&i[0]==="{"&&u==="else"?n||(this.indent_to_tag("if"),this.tag_type="HANDLEBARS_ELSE",this.indent_content=!0,this.traverse_whitespace()):this.is_unformatted(u,a)?(h=this.get_unformatted("<\/"+u+">",i),t.push(h),p=this.pos-1,this.tag_type="SINGLE"):u==="script"&&(i.search("type")===-1||i.search("type")>-1&&i.search(/\b(text|application)\/(x-)?(javascript|ecmascript|jscript|livescript)/)>-1)?n||(this.record_tag(u),this.tag_type="SCRIPT"):u==="style"&&(i.search("type")===-1||i.search("type")>-1&&i.search("text/css")>-1)?n||(this.record_tag(u),this.tag_type="STYLE"):u.charAt(0)==="!"?n||(this.tag_type="SINGLE",this.traverse_whitespace()):n||(u.charAt(0)==="/"?(this.retrieve_tag(u.substring(1)),this.tag_type="END"):(this.record_tag(u),u.toLowerCase()!=="html"&&(this.indent_content=!0),this.tag_type="START"),this.traverse_whitespace()&&this.space_or_wrap(t),this.Utils.in_array(u,this.Utils.extra_liners)&&(this.print_newline(!1,this.output),this.output.length&&this.output[this.output.length-2]!=="\n"&&this.print_newline(!0,this.output))),n&&(this.pos=c,this.line_char_count=l),t.join("")},this.get_comment=function(n){var t="",i=">",r=!1;for(this.pos=n,input_char=this.input.charAt(this.pos),this.pos++;this.pos<=this.input.length;){if(t+=input_char,t[t.length-1]===i[i.length-1]&&t.indexOf(i)!==-1)break;!r&&t.length<10&&(t.indexOf("<![if")===0?(i="<![endif]>",r=!0):t.indexOf("<![cdata[")===0?(i="]\]>",r=!0):t.indexOf("<![")===0?(i="]>",r=!0):t.indexOf("<!--")===0&&(i="-->",r=!0));input_char=this.input.charAt(this.pos);this.pos++}return t},this.get_unformatted=function(n,t){if(t&&t.toLowerCase().indexOf(n)!==-1)return"";var r="",i="",u=0,f=!0;do{if(this.pos>=this.input.length)return i;if(r=this.input.charAt(this.pos),this.pos++,this.Utils.in_array(r,this.Utils.whitespace)){if(!f){this.line_char_count--;continue}if(r==="\n"||r==="\r"){i+="\n";this.line_char_count=0;continue}}i+=r;this.line_char_count++;f=!0;o&&r==="{"&&i.length&&i[i.length-2]==="{"&&(i+=this.get_unformatted("}}"),u=i.length)}while(i.toLowerCase().indexOf(n,u)===-1);return i},this.get_token=function(){var n,t,i;return this.last_token==="TK_TAG_SCRIPT"||this.last_token==="TK_TAG_STYLE"?(t=this.last_token.substr(7),n=this.get_contents_to(t),typeof n!="string")?n:[n,"TK_"+t]:this.current_mode==="CONTENT"?(n=this.get_content(),typeof n!="string"?n:[n,"TK_CONTENT"]):this.current_mode==="TAG"?(n=this.get_tag(),typeof n!="string"?n:(i="TK_TAG_"+this.tag_type,[n,i])):void 0},this.get_full_indent=function(n){return(n=this.indent_level+n||0,n<1)?"":Array(n+1).join(this.indent_string)},this.is_unformatted=function(n,t){if(!this.Utils.in_array(n,t))return!1;if(n.toLowerCase()!=="a"||!this.Utils.in_array("a",t))return!0;var r=this.get_tag(!0),i=(r||"").match(/^\s*<\s*\/?([a-z]*)\s*[^>]*>\s*$/);return!i||this.Utils.in_array(i,t)?!0:!1},this.printer=function(n,r,u,f,e){this.input=n||"";this.output=[];this.indent_character=r;this.indent_string="";this.indent_size=u;this.brace_style=e;this.indent_level=0;this.wrap_line_length=f;this.line_char_count=0;for(var o=0;o<this.indent_size;o++)this.indent_string+=this.indent_character;this.print_newline=function(n,i){(this.line_char_count=0,i&&i.length)&&(n||i[i.length-1]!=="\n")&&(i[i.length-1]!=="\n"&&(i[i.length-1]=t(i[i.length-1])),i.push("\n"))};this.print_indentation=function(n){for(var t=0;t<this.indent_level;t++)n.push(this.indent_string),this.line_char_count+=this.indent_string.length};this.print_token=function(n){(!this.is_whitespace(n)||this.output.length)&&((n||n!=="")&&this.output.length&&this.output[this.output.length-1]==="\n"&&(this.print_indentation(this.output),n=i(n)),this.print_token_raw(n))};this.print_token_raw=function(n){this.newlines>0&&(n=t(n));n&&n!==""&&(n.length>1&&n[n.length-1]==="\n"?(this.output.push(n.slice(0,-1)),this.print_newline(!1,this.output)):this.output.push(n));for(var i=0;i<this.newlines;i++)this.print_newline(i>0,this.output);this.newlines=0};this.indent=function(){this.indent_level++};this.unindent=function(){this.indent_level>0&&this.indent_level--}},this}var e,k,d,g,nt,tt,a,v,it,o,rt,y,ut,c,p,s,l,h,w,b;for(r=r||{},(r.wrap_line_length===undefined||parseInt(r.wrap_line_length,10)===0)&&r.max_char!==undefined&&parseInt(r.max_char,10)!==0&&(r.wrap_line_length=r.max_char),k=r.indent_inner_html===undefined?!1:r.indent_inner_html,d=r.indent_size===undefined?4:parseInt(r.indent_size,10),g=r.indent_char===undefined?" ":r.indent_char,tt=r.brace_style===undefined?"collapse":r.brace_style,nt=parseInt(r.wrap_line_length,10)===0?32786:parseInt(r.wrap_line_length||250,10),a=r.unformatted||["a","span","img","bdo","em","strong","dfn","code","samp","kbd","var","cite","abbr","acronym","q","sub","sup","tt","i","b","big","small","u","s","strike","font","ins","del","pre","address","dt","h1","h2","h3","h4","h5","h6"],v=r.preserve_newlines===undefined?!0:r.preserve_newlines,it=v?isNaN(parseInt(r.max_preserve_newlines,10))?32786:parseInt(r.max_preserve_newlines,10):0,o=r.indent_handlebars===undefined?!1:r.indent_handlebars,rt=r.end_with_newline===undefined?!1:r.end_with_newline,e=new ft,e.printer(n,g,d,nt,tt);;){if(y=e.get_token(),e.token_text=y[0],e.token_type=y[1],e.token_type==="TK_EOF")break;switch(e.token_type){case"TK_TAG_START":e.print_newline(!1,e.output);e.print_token(e.token_text);e.indent_content&&(e.indent(),e.indent_content=!1);e.current_mode="CONTENT";break;case"TK_TAG_STYLE":case"TK_TAG_SCRIPT":e.print_newline(!1,e.output);e.print_token(e.token_text);e.current_mode="CONTENT";break;case"TK_TAG_END":e.last_token==="TK_CONTENT"&&e.last_text===""&&(ut=e.token_text.match(/\w+/)[0],c=null,e.output.length&&(c=e.output[e.output.length-1].match(/(?:<|{{#)\s*(\w+)/)),(c===null||c[1]!==ut)&&e.print_newline(!1,e.output));e.print_token(e.token_text);e.current_mode="CONTENT";break;case"TK_TAG_SINGLE":p=e.token_text.match(/^\s*<([a-z-]+)/i);p&&e.Utils.in_array(p[1],a)||e.print_newline(!1,e.output);e.print_token(e.token_text);e.current_mode="CONTENT";break;case"TK_TAG_HANDLEBARS_ELSE":e.print_token(e.token_text);e.indent_content&&(e.indent(),e.indent_content=!1);e.current_mode="CONTENT";break;case"TK_CONTENT":e.print_token(e.token_text);e.current_mode="TAG";break;case"TK_STYLE":case"TK_SCRIPT":if(e.token_text!==""){if(e.print_newline(!1,e.output),s=e.token_text,h=1,e.token_type==="TK_SCRIPT"?l=typeof u=="function"&&u:e.token_type==="TK_STYLE"&&(l=typeof f=="function"&&f),r.indent_scripts==="keep"?h=0:r.indent_scripts==="separate"&&(h=-e.indent_level),w=e.get_full_indent(h),l)s=l(s.replace(/^\s*/,w),r);else{var et=s.match(/^\s*/)[0],ot=et.match(/[^\n\r]*$/)[0].split(e.indent_string).length-1,st=e.get_full_indent(h-ot);s=s.replace(/^\s*/,w).replace(/\r\n|\r|\n/g,"\n"+st).replace(/\s+$/,"")}s&&(e.print_token_raw(s),e.print_newline(!0,e.output))}e.current_mode="TAG";break;default:e.token_text!==""&&e.print_token(e.token_text)}e.last_token=e.token_type;e.last_text=e.token_text}return b=e.output.join("").replace(/[\r\n\t ]+$/,""),rt&&(b+="\n"),b}if(typeof define=="function"&&define.amd)define(["require","./beautify","./beautify-css"],function(t){var i=t("./beautify"),r=t("./beautify-css");return{html_beautify:function(t,u){return n(t,u,i.js_beautify,r.css_beautify)}}});else if(typeof exports!="undefined"){var r=require("./beautify.js"),u=require("./beautify-css.js");exports.html_beautify=function(t,i){return n(t,i,r.js_beautify,u.css_beautify)}}else typeof window!="undefined"?window.html_beautify=function(t,i){return n(t,i,window.js_beautify,window.css_beautify)}:typeof global!="undefined"&&(global.html_beautify=function(t,i){return n(t,i,global.js_beautify,global.css_beautify)})}()
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/codemirror/js/codemirror.min.js000060400000517123152455705240026655 0ustar00(function(a){if(typeof exports=="object"&&typeof module=="object"){module.exports=a()}else{if(typeof define=="function"&&define.amd){return define([],a)}else{this.CodeMirror=a()}}})(function(){var cp=/gecko\/\d/i.test(navigator.userAgent);var eL=/MSIE \d/.test(navigator.userAgent);var bK=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);var dL=eL||bK;var k=dL&&(eL?document.documentMode||6:bK[1]);var c1=/WebKit\//.test(navigator.userAgent);var dO=c1&&/Qt\/\d+\.\d+/.test(navigator.userAgent);var dd=/Chrome\//.test(navigator.userAgent);var d4=/Opera\//.test(navigator.userAgent);var aC=/Apple Computer/.test(navigator.vendor);var c8=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent);var fv=/PhantomJS/.test(navigator.userAgent);var e2=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent);var eh=e2||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent);var b8=e2||/Mac/.test(navigator.platform);var aP=/win/i.test(navigator.platform);var aZ=d4&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);if(aZ){aZ=Number(aZ[1])}if(aZ&&aZ>=15){d4=false;c1=true}var bR=b8&&(dO||d4&&(aZ==null||aZ<12.11));var ga=cp||(dL&&k>=9);var gd=false,a8=false;function H(gj,gl){if(!(this instanceof H)){return new H(gj,gl)}this.options=gl=gl?aN(gl):{};aN(e4,gl,false);cf(gl);var gp=gl.value;if(typeof gp=="string"){gp=new at(gp,gl.mode)}this.doc=gp;var gk=new H.inputStyles[gl.inputStyle](this);var go=this.display=new eJ(gj,gp,gk);go.wrapper.CodeMirror=this;ed(this);cP(this);if(gl.lineWrapping){this.display.wrapper.className+=" CodeMirror-wrap"}if(gl.autofocus&&!eh){go.input.focus()}aD(this);this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:false,delayingBlurEvent:false,focused:false,suppressEdits:false,pasteIncoming:false,cutIncoming:false,draggingText:false,highlight:new gh(),keySeq:null,specialChars:null};var gi=this;if(dL&&k<11){setTimeout(function(){gi.display.input.reset(true)},20)}fR(this);bk();cJ(this);this.curOp.forceUpdate=true;ec(this,gp);if((gl.autofocus&&!eh)||gi.hasFocus()){setTimeout(cw(cC,this),20)}else{aV(this)}for(var gn in bg){if(bg.hasOwnProperty(gn)){bg[gn](this,gl[gn],cd)}}d6(this);if(gl.finishInit){gl.finishInit(this)}for(var gm=0;gm<a9.length;++gm){a9[gm](this)}am(this);if(c1&&gl.lineWrapping&&getComputedStyle(go.lineDiv).textRendering=="optimizelegibility"){go.lineDiv.style.textRendering="auto"}}function eJ(gi,gk,gj){var gl=this;this.input=gj;gl.scrollbarFiller=f3("div",null,"CodeMirror-scrollbar-filler");gl.scrollbarFiller.setAttribute("cm-not-content","true");gl.gutterFiller=f3("div",null,"CodeMirror-gutter-filler");gl.gutterFiller.setAttribute("cm-not-content","true");gl.lineDiv=f3("div",null,"CodeMirror-code");gl.selectionDiv=f3("div",null,null,"position: relative; z-index: 1");gl.cursorDiv=f3("div",null,"CodeMirror-cursors");gl.measure=f3("div",null,"CodeMirror-measure");gl.lineMeasure=f3("div",null,"CodeMirror-measure");gl.lineSpace=f3("div",[gl.measure,gl.lineMeasure,gl.selectionDiv,gl.cursorDiv,gl.lineDiv],null,"position: relative; outline: none");gl.mover=f3("div",[f3("div",[gl.lineSpace],"CodeMirror-lines")],null,"position: relative");gl.sizer=f3("div",[gl.mover],"CodeMirror-sizer");gl.sizerWidth=null;gl.heightForcer=f3("div",null,null,"position: absolute; height: "+dK+"px; width: 1px;");gl.gutters=f3("div",null,"CodeMirror-gutters");gl.lineGutter=null;gl.scroller=f3("div",[gl.sizer,gl.heightForcer,gl.gutters],"CodeMirror-scroll");gl.scroller.setAttribute("tabIndex","-1");gl.wrapper=f3("div",[gl.scrollbarFiller,gl.gutterFiller,gl.scroller],"CodeMirror");if(dL&&k<8){gl.gutters.style.zIndex=-1;gl.scroller.style.paddingRight=0}if(!c1&&!(cp&&eh)){gl.scroller.draggable=true}if(gi){if(gi.appendChild){gi.appendChild(gl.wrapper)}else{gi(gl.wrapper)}}gl.viewFrom=gl.viewTo=gk.first;gl.reportedViewFrom=gl.reportedViewTo=gk.first;gl.view=[];gl.renderedView=null;gl.externalMeasured=null;gl.viewOffset=0;gl.lastWrapHeight=gl.lastWrapWidth=0;gl.updateLineNumbers=null;gl.nativeBarWidth=gl.barHeight=gl.barWidth=0;gl.scrollbarsClipped=false;gl.lineNumWidth=gl.lineNumInnerWidth=gl.lineNumChars=null;gl.alignWidgets=false;gl.cachedCharWidth=gl.cachedTextHeight=gl.cachedPaddingH=null;gl.maxLine=null;gl.maxLineLength=0;gl.maxLineChanged=false;gl.wheelDX=gl.wheelDY=gl.wheelStartX=gl.wheelStartY=null;gl.shift=false;gl.selForContextMenu=null;gl.activeTouch=null;gj.init(gl)}function bs(gi){gi.doc.mode=H.getMode(gi.options,gi.doc.modeOption);em(gi)}function em(gi){gi.doc.iter(function(gj){if(gj.stateAfter){gj.stateAfter=null}if(gj.styles){gj.styles=null}});gi.doc.frontier=gi.doc.first;eg(gi,100);gi.state.modeGen++;if(gi.curOp){ah(gi)}}function eH(gi){if(gi.options.lineWrapping){fB(gi.display.wrapper,"CodeMirror-wrap");gi.display.sizer.style.minWidth="";gi.display.sizerWidth=null}else{f(gi.display.wrapper,"CodeMirror-wrap");h(gi)}X(gi);ah(gi);ak(gi);setTimeout(function(){eZ(gi)},100)}function bf(gi){var gk=aY(gi.display),gj=gi.options.lineWrapping;var gl=gj&&Math.max(5,gi.display.scroller.clientWidth/dE(gi.display)-3);return function(gn){if(fx(gi.doc,gn)){return 0}var gm=0;if(gn.widgets){for(var go=0;go<gn.widgets.length;go++){if(gn.widgets[go].height){gm+=gn.widgets[go].height}}}if(gj){return gm+(Math.ceil(gn.text.length/gl)||1)*gk}else{return gm+gk}}}function X(gi){var gk=gi.doc,gj=bf(gi);gk.iter(function(gl){var gm=gj(gl);if(gm!=gl.height){f6(gl,gm)}})}function cP(gi){gi.display.wrapper.className=gi.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+gi.options.theme.replace(/(^|\s)\s*/g," cm-s-");ak(gi)}function dx(gi){ed(gi);ah(gi);setTimeout(function(){eF(gi)},20)}function ed(gi){var gj=gi.display.gutters,gn=gi.options.gutters;d2(gj);for(var gk=0;gk<gn.length;++gk){var gl=gn[gk];var gm=gj.appendChild(f3("div",null,"CodeMirror-gutter "+gl));if(gl=="CodeMirror-linenumbers"){gi.display.lineGutter=gm;gm.style.width=(gi.display.lineNumWidth||1)+"px"}}gj.style.display=gk?"":"none";c5(gi)}function c5(gi){var gj=gi.display.gutters.offsetWidth;gi.display.sizer.style.marginLeft=gj+"px"}function eo(gk){if(gk.height==0){return 0}var gj=gk.text.length,gi,gm=gk;while(gi=eP(gm)){var gl=gi.find(0,true);gm=gl.from.line;gj+=gl.from.ch-gl.to.ch}gm=gk;while(gi=ex(gm)){var gl=gi.find(0,true);gj-=gm.text.length-gl.from.ch;gm=gl.to.line;gj+=gm.text.length-gl.to.ch}return gj}function h(gi){var gk=gi.display,gj=gi.doc;gk.maxLine=fg(gj,gj.first);gk.maxLineLength=eo(gk.maxLine);gk.maxLineChanged=true;gj.iter(function(gm){var gl=eo(gm);if(gl>gk.maxLineLength){gk.maxLineLength=gl;gk.maxLine=gm}})}function cf(gi){var gj=di(gi.gutters,"CodeMirror-linenumbers");if(gj==-1&&gi.lineNumbers){gi.gutters=gi.gutters.concat(["CodeMirror-linenumbers"])}else{if(gj>-1&&!gi.lineNumbers){gi.gutters=gi.gutters.slice(0);gi.gutters.splice(gj,1)}}}function dB(gi){var gl=gi.display,gk=gl.gutters.offsetWidth;var gj=Math.round(gi.doc.height+bJ(gi.display));return{clientHeight:gl.scroller.clientHeight,viewHeight:gl.wrapper.clientHeight,scrollWidth:gl.scroller.scrollWidth,clientWidth:gl.scroller.clientWidth,viewWidth:gl.wrapper.clientWidth,barLeft:gi.options.fixedGutter?gk:0,docHeight:gj,scrollHeight:gj+cU(gi)+gl.barHeight,nativeBarWidth:gl.nativeBarWidth,gutterWidth:gk}}function dl(gk,gj,gi){this.cm=gi;var gl=this.vert=f3("div",[f3("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar");var gm=this.horiz=f3("div",[f3("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");gk(gl);gk(gm);bY(gl,"scroll",function(){if(gl.clientHeight){gj(gl.scrollTop,"vertical")}});bY(gm,"scroll",function(){if(gm.clientWidth){gj(gm.scrollLeft,"horizontal")}});this.checkedOverlay=false;if(dL&&k<8){this.horiz.style.minHeight=this.vert.style.minWidth="18px"}}dl.prototype=aN({update:function(gl){var gm=gl.scrollWidth>gl.clientWidth+1;var gk=gl.scrollHeight>gl.clientHeight+1;var gn=gl.nativeBarWidth;if(gk){this.vert.style.display="block";this.vert.style.bottom=gm?gn+"px":"0";var gj=gl.viewHeight-(gm?gn:0);this.vert.firstChild.style.height=Math.max(0,gl.scrollHeight-gl.clientHeight+gj)+"px"}else{this.vert.style.display="";this.vert.firstChild.style.height="0"}if(gm){this.horiz.style.display="block";this.horiz.style.right=gk?gn+"px":"0";this.horiz.style.left=gl.barLeft+"px";var gi=gl.viewWidth-gl.barLeft-(gk?gn:0);this.horiz.firstChild.style.width=(gl.scrollWidth-gl.clientWidth+gi)+"px"}else{this.horiz.style.display="";this.horiz.firstChild.style.width="0"}if(!this.checkedOverlay&&gl.clientHeight>0){if(gn==0){this.overlayHack()}this.checkedOverlay=true}return{right:gk?gn:0,bottom:gm?gn:0}},setScrollLeft:function(gi){if(this.horiz.scrollLeft!=gi){this.horiz.scrollLeft=gi}},setScrollTop:function(gi){if(this.vert.scrollTop!=gi){this.vert.scrollTop=gi}},overlayHack:function(){var gi=b8&&!c8?"12px":"18px";this.horiz.style.minHeight=this.vert.style.minWidth=gi;var gj=this;var gk=function(gl){if(L(gl)!=gj.vert&&L(gl)!=gj.horiz){c3(gj.cm,ev)(gl)}};bY(this.vert,"mousedown",gk);bY(this.horiz,"mousedown",gk)},clear:function(){var gi=this.horiz.parentNode;gi.removeChild(this.horiz);gi.removeChild(this.vert)}},dl.prototype);function e5(){}e5.prototype=aN({update:function(){return{bottom:0,right:0}},setScrollLeft:function(){},setScrollTop:function(){},clear:function(){}},e5.prototype);H.scrollbarModel={"native":dl,"null":e5};function aD(gi){if(gi.display.scrollbars){gi.display.scrollbars.clear();if(gi.display.scrollbars.addClass){f(gi.display.wrapper,gi.display.scrollbars.addClass)}}gi.display.scrollbars=new H.scrollbarModel[gi.options.scrollbarStyle](function(gj){gi.display.wrapper.insertBefore(gj,gi.display.scrollbarFiller);bY(gj,"mousedown",function(){if(gi.state.focused){setTimeout(function(){gi.display.input.focus()},0)}});gj.setAttribute("cm-not-content","true")},function(gk,gj){if(gj=="horizontal"){bF(gi,gk)}else{N(gi,gk)}},gi);if(gi.display.scrollbars.addClass){fB(gi.display.wrapper,gi.display.scrollbars.addClass)}}function eZ(gk,gm){if(!gm){gm=dB(gk)}var gj=gk.display.barWidth,gi=gk.display.barHeight;aU(gk,gm);for(var gl=0;gl<4&&gj!=gk.display.barWidth||gi!=gk.display.barHeight;gl++){if(gj!=gk.display.barWidth&&gk.options.lineWrapping){ba(gk)}aU(gk,dB(gk));gj=gk.display.barWidth;gi=gk.display.barHeight}}function aU(gi,gj){var gl=gi.display;var gk=gl.scrollbars.update(gj);gl.sizer.style.paddingRight=(gl.barWidth=gk.right)+"px";gl.sizer.style.paddingBottom=(gl.barHeight=gk.bottom)+"px";if(gk.right&&gk.bottom){gl.scrollbarFiller.style.display="block";gl.scrollbarFiller.style.height=gk.bottom+"px";gl.scrollbarFiller.style.width=gk.right+"px"}else{gl.scrollbarFiller.style.display=""}if(gk.bottom&&gi.options.coverGutterNextToScrollbar&&gi.options.fixedGutter){gl.gutterFiller.style.display="block";gl.gutterFiller.style.height=gk.bottom+"px";gl.gutterFiller.style.width=gj.gutterWidth+"px"}else{gl.gutterFiller.style.display=""}}function b7(gl,gp,gk){var gm=gk&&gk.top!=null?Math.max(0,gk.top):gl.scroller.scrollTop;gm=Math.floor(gm-e9(gl));var gi=gk&&gk.bottom!=null?gk.bottom:gm+gl.wrapper.clientHeight;var gn=bH(gp,gm),go=bH(gp,gi);if(gk&&gk.ensure){var gj=gk.ensure.from.line,gq=gk.ensure.to.line;if(gj<gn){gn=gj;go=bH(gp,bN(fg(gp,gj))+gl.wrapper.clientHeight)}else{if(Math.min(gq,gp.lastLine())>=go){gn=bH(gp,bN(fg(gp,gq))-gl.wrapper.clientHeight);go=gq}}}return{from:gn,to:Math.max(go,gn+1)}}function eF(gq){var go=gq.display,gp=go.view;if(!go.alignWidgets&&(!go.gutters.firstChild||!gq.options.fixedGutter)){return}var gm=dY(go)-go.scroller.scrollLeft+gq.doc.scrollLeft;var gi=go.gutters.offsetWidth,gj=gm+"px";for(var gl=0;gl<gp.length;gl++){if(!gp[gl].hidden){if(gq.options.fixedGutter&&gp[gl].gutter){gp[gl].gutter.style.left=gj}var gn=gp[gl].alignable;if(gn){for(var gk=0;gk<gn.length;gk++){gn[gk].style.left=gj}}}}if(gq.options.fixedGutter){go.gutters.style.left=(gm+gi)+"px"}}function d6(gi){if(!gi.options.lineNumbers){return false}var gn=gi.doc,gj=et(gi.options,gn.first+gn.size-1),gm=gi.display;if(gj.length!=gm.lineNumChars){var go=gm.measure.appendChild(f3("div",[f3("div",gj)],"CodeMirror-linenumber CodeMirror-gutter-elt"));var gk=go.firstChild.offsetWidth,gl=go.offsetWidth-gk;gm.lineGutter.style.width="";gm.lineNumInnerWidth=Math.max(gk,gm.lineGutter.offsetWidth-gl)+1;gm.lineNumWidth=gm.lineNumInnerWidth+gl;gm.lineNumChars=gm.lineNumInnerWidth?gj.length:-1;gm.lineGutter.style.width=gm.lineNumWidth+"px";c5(gi);return true}return false}function et(gi,gj){return String(gi.lineNumberFormatter(gj+gi.firstLineNumber))}function dY(gi){return gi.scroller.getBoundingClientRect().left-gi.sizer.getBoundingClientRect().left}function aI(gj,gi,gk){var gl=gj.display;this.viewport=gi;this.visible=b7(gl,gj.doc,gi);this.editorIsHidden=!gl.wrapper.offsetWidth;this.wrapperHeight=gl.wrapper.clientHeight;this.wrapperWidth=gl.wrapper.clientWidth;this.oldDisplayWidth=dm(gj);this.force=gk;this.dims=fe(gj);this.events=[]}aI.prototype.signal=function(gj,gi){if(fj(gj,gi)){this.events.push(arguments)}};aI.prototype.finish=function(){for(var gi=0;gi<this.events.length;gi++){aE.apply(null,this.events[gi])}};function J(gi){var gj=gi.display;if(!gj.scrollbarsClipped&&gj.scroller.offsetWidth){gj.nativeBarWidth=gj.scroller.offsetWidth-gj.scroller.clientWidth;gj.heightForcer.style.height=cU(gi)+"px";gj.sizer.style.marginBottom=-gj.nativeBarWidth+"px";gj.sizer.style.borderRightWidth=cU(gi)+"px";gj.scrollbarsClipped=true}}function B(gr,gl){var gm=gr.display,gq=gr.doc;if(gl.editorIsHidden){ey(gr);return false}if(!gl.force&&gl.visible.from>=gm.viewFrom&&gl.visible.to<=gm.viewTo&&(gm.updateLineNumbers==null||gm.updateLineNumbers>=gm.viewTo)&&gm.renderedView==gm.view&&dc(gr)==0){return false}if(d6(gr)){ey(gr);gl.dims=fe(gr)}var gk=gq.first+gq.size;var go=Math.max(gl.visible.from-gr.options.viewportMargin,gq.first);var gp=Math.min(gk,gl.visible.to+gr.options.viewportMargin);if(gm.viewFrom<go&&go-gm.viewFrom<20){go=Math.max(gq.first,gm.viewFrom)}if(gm.viewTo>gp&&gm.viewTo-gp<20){gp=Math.min(gk,gm.viewTo)}if(a8){go=aW(gr.doc,go);gp=d3(gr.doc,gp)}var gj=go!=gm.viewFrom||gp!=gm.viewTo||gm.lastWrapHeight!=gl.wrapperHeight||gm.lastWrapWidth!=gl.wrapperWidth;cS(gr,go,gp);gm.viewOffset=bN(fg(gr.doc,gm.viewFrom));gr.display.mover.style.top=gm.viewOffset+"px";var gi=dc(gr);if(!gj&&gi==0&&!gl.force&&gm.renderedView==gm.view&&(gm.updateLineNumbers==null||gm.updateLineNumbers>=gm.viewTo)){return false}var gn=dP();if(gi>4){gm.lineDiv.style.display="none"}cn(gr,gm.updateLineNumbers,gl.dims);if(gi>4){gm.lineDiv.style.display=""}gm.renderedView=gm.view;if(gn&&dP()!=gn&&gn.offsetHeight){gn.focus()}d2(gm.cursorDiv);d2(gm.selectionDiv);gm.gutters.style.height=0;if(gj){gm.lastWrapHeight=gl.wrapperHeight;gm.lastWrapWidth=gl.wrapperWidth;eg(gr,400)}gm.updateLineNumbers=null;return true}function ck(gj,gm){var gi=gm.viewport;for(var gl=true;;gl=false){if(!gl||!gj.options.lineWrapping||gm.oldDisplayWidth==dm(gj)){if(gi&&gi.top!=null){gi={top:Math.min(gj.doc.height+bJ(gj.display)-cW(gj),gi.top)}}gm.visible=b7(gj.display,gj.doc,gi);if(gm.visible.from>=gj.display.viewFrom&&gm.visible.to<=gj.display.viewTo){break}}if(!B(gj,gm)){break}ba(gj);var gk=dB(gj);bD(gj);dA(gj,gk);eZ(gj,gk)}gm.signal(gj,"update",gj);if(gj.display.viewFrom!=gj.display.reportedViewFrom||gj.display.viewTo!=gj.display.reportedViewTo){gm.signal(gj,"viewportChange",gj,gj.display.viewFrom,gj.display.viewTo);gj.display.reportedViewFrom=gj.display.viewFrom;gj.display.reportedViewTo=gj.display.viewTo}}function dU(gj,gi){var gl=new aI(gj,gi);if(B(gj,gl)){ba(gj);ck(gj,gl);var gk=dB(gj);bD(gj);dA(gj,gk);eZ(gj,gk);gl.finish()}}function dA(gi,gj){gi.display.sizer.style.minHeight=gj.docHeight+"px";var gk=gj.docHeight+gi.display.barHeight;gi.display.heightForcer.style.top=gk+"px";gi.display.gutters.style.height=Math.max(gk+cU(gi),gj.clientHeight)+"px"}function ba(gp){var gn=gp.display;var gj=gn.lineDiv.offsetTop;for(var gk=0;gk<gn.view.length;gk++){var gq=gn.view[gk],gr;if(gq.hidden){continue}if(dL&&k<8){var gm=gq.node.offsetTop+gq.node.offsetHeight;gr=gm-gj;gj=gm}else{var gl=gq.node.getBoundingClientRect();gr=gl.bottom-gl.top}var go=gq.line.height-gr;if(gr<2){gr=aY(gn)}if(go>0.001||go<-0.001){f6(gq.line,gr);cc(gq.line);if(gq.rest){for(var gi=0;gi<gq.rest.length;gi++){cc(gq.rest[gi])}}}}}function cc(gi){if(gi.widgets){for(var gj=0;gj<gi.widgets.length;++gj){gi.widgets[gj].height=gi.widgets[gj].node.offsetHeight}}}function fe(gi){var gn=gi.display,gl={},gk={};var gm=gn.gutters.clientLeft;for(var go=gn.gutters.firstChild,gj=0;go;go=go.nextSibling,++gj){gl[gi.options.gutters[gj]]=go.offsetLeft+go.clientLeft+gm;gk[gi.options.gutters[gj]]=go.clientWidth}return{fixedPos:dY(gn),gutterTotalWidth:gn.gutters.offsetWidth,gutterLeft:gl,gutterWidth:gk,wrapperWidth:gn.wrapper.clientWidth}}function cn(gt,gk,gs){var gp=gt.display,gv=gt.options.lineNumbers;var gi=gp.lineDiv,gu=gi.firstChild;function go(gx){var gw=gx.nextSibling;if(c1&&b8&&gt.display.currentWheelTarget==gx){gx.style.display="none"}else{gx.parentNode.removeChild(gx)}return gw}var gq=gp.view,gn=gp.viewFrom;for(var gl=0;gl<gq.length;gl++){var gm=gq[gl];if(gm.hidden){}else{if(!gm.node||gm.node.parentNode!=gi){var gj=aF(gt,gm,gn,gs);gi.insertBefore(gj,gu)}else{while(gu!=gm.node){gu=go(gu)}var gr=gv&&gk!=null&&gk<=gn&&gm.lineNumber;if(gm.changes){if(di(gm.changes,"gutter")>-1){gr=false}ab(gt,gm,gn,gs)}if(gr){d2(gm.lineNumber);gm.lineNumber.appendChild(document.createTextNode(et(gt.options,gn)))}gu=gm.node.nextSibling}}gn+=gm.size}while(gu){gu=go(gu)}}function ab(gi,gk,gm,gn){for(var gj=0;gj<gk.changes.length;gj++){var gl=gk.changes[gj];if(gl=="text"){fm(gi,gk)}else{if(gl=="gutter"){dg(gi,gk,gm,gn)}else{if(gl=="class"){dH(gk)}else{if(gl=="widget"){ao(gi,gk,gn)}}}}}gk.changes=null}function fI(gi){if(gi.node==gi.text){gi.node=f3("div",null,null,"position: relative");if(gi.text.parentNode){gi.text.parentNode.replaceChild(gi.node,gi.text)}gi.node.appendChild(gi.text);if(dL&&k<8){gi.node.style.zIndex=2}}return gi.node}function ew(gj){var gi=gj.bgClass?gj.bgClass+" "+(gj.line.bgClass||""):gj.line.bgClass;if(gi){gi+=" CodeMirror-linebackground"}if(gj.background){if(gi){gj.background.className=gi}else{gj.background.parentNode.removeChild(gj.background);gj.background=null}}else{if(gi){var gk=fI(gj);gj.background=gk.insertBefore(f3("div",null,gi),gk.firstChild)}}}function dW(gi,gj){var gk=gi.display.externalMeasured;if(gk&&gk.line==gj.line){gi.display.externalMeasured=null;gj.measure=gk.measure;return gk.built}return eS(gi,gj)}function fm(gi,gl){var gj=gl.text.className;var gk=dW(gi,gl);if(gl.text==gl.node){gl.node=gk.pre}gl.text.parentNode.replaceChild(gk.pre,gl.text);gl.text=gk.pre;if(gk.bgClass!=gl.bgClass||gk.textClass!=gl.textClass){gl.bgClass=gk.bgClass;gl.textClass=gk.textClass;dH(gl)}else{if(gj){gl.text.className=gj}}}function dH(gj){ew(gj);if(gj.line.wrapClass){fI(gj).className=gj.line.wrapClass}else{if(gj.node!=gj.text){gj.node.className=""}}var gi=gj.textClass?gj.textClass+" "+(gj.line.textClass||""):gj.line.textClass;gj.text.className=gi||""}function dg(gq,go,gn,gp){if(go.gutter){go.node.removeChild(go.gutter);go.gutter=null}var gl=go.line.gutterMarkers;if(gq.options.lineNumbers||gl){var gj=fI(go);var gm=go.gutter=f3("div",null,"CodeMirror-gutter-wrapper","left: "+(gq.options.fixedGutter?gp.fixedPos:-gp.gutterTotalWidth)+"px; width: "+gp.gutterTotalWidth+"px");gq.display.input.setUneditable(gm);gj.insertBefore(gm,go.text);if(go.line.gutterClass){gm.className+=" "+go.line.gutterClass}if(gq.options.lineNumbers&&(!gl||!gl["CodeMirror-linenumbers"])){go.lineNumber=gm.appendChild(f3("div",et(gq.options,gn),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+gp.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+gq.display.lineNumInnerWidth+"px"))}if(gl){for(var gk=0;gk<gq.options.gutters.length;++gk){var gi=gq.options.gutters[gk],gr=gl.hasOwnProperty(gi)&&gl[gi];if(gr){gm.appendChild(f3("div",[gr],"CodeMirror-gutter-elt","left: "+gp.gutterLeft[gi]+"px; width: "+gp.gutterWidth[gi]+"px"))}}}}}function ao(gi,gj,gm){if(gj.alignable){gj.alignable=null}for(var gl=gj.node.firstChild,gk;gl;gl=gk){var gk=gl.nextSibling;if(gl.className=="CodeMirror-linewidget"){gj.node.removeChild(gl)}}fu(gi,gj,gm)}function aF(gi,gk,gl,gm){var gj=dW(gi,gk);gk.text=gk.node=gj.pre;if(gj.bgClass){gk.bgClass=gj.bgClass}if(gj.textClass){gk.textClass=gj.textClass}dH(gk);dg(gi,gk,gl,gm);fu(gi,gk,gm);return gk.node}function fu(gi,gk,gl){f8(gi,gk.line,gk,gl,true);if(gk.rest){for(var gj=0;gj<gk.rest.length;gj++){f8(gi,gk.rest[gj],gk,gl,false)}}}function f8(gq,gr,gn,gp,gl){if(!gr.widgets){return}var gi=fI(gn);for(var gk=0,go=gr.widgets;gk<go.length;++gk){var gm=go[gk],gj=f3("div",[gm.node],"CodeMirror-linewidget");if(!gm.handleMouseEvents){gj.setAttribute("cm-ignore-events","true")}bG(gm,gj,gn,gp);gq.display.input.setUneditable(gj);if(gl&&gm.above){gi.insertBefore(gj,gn.gutter||gn.text)}else{gi.appendChild(gj)}ae(gm,"redraw")}}function bG(gl,gk,gi,gm){if(gl.noHScroll){(gi.alignable||(gi.alignable=[])).push(gk);var gj=gm.wrapperWidth;gk.style.left=gm.fixedPos+"px";if(!gl.coverGutter){gj-=gm.gutterTotalWidth;gk.style.paddingLeft=gm.gutterTotalWidth+"px"}gk.style.width=gj+"px"}if(gl.coverGutter){gk.style.zIndex=5;gk.style.position="relative";if(!gl.noHScroll){gk.style.marginLeft=-gm.gutterTotalWidth+"px"}}}var W=H.Pos=function(gi,gj){if(!(this instanceof W)){return new W(gi,gj)}this.line=gi;this.ch=gj};var cg=H.cmpPos=function(gj,gi){return gj.line-gi.line||gj.ch-gi.ch};function cj(gi){return W(gi.line,gi.ch)}function by(gj,gi){return cg(gj,gi)<0?gi:gj}function ar(gj,gi){return cg(gj,gi)<0?gj:gi}function r(gi){if(!gi.state.focused){gi.display.input.focus();cC(gi)}}function aj(gi){return gi.options.readOnly||gi.doc.cantEdit}var bn=null;function fZ(gw,gm,gk,gj,gv){var gu=gw.doc;gw.display.shift=false;if(!gj){gj=gu.sel}var gl=gw.state.pasteIncoming||gv=="paste";var gp=a1(gm),gi=null;if(gl&&gj.ranges.length>1){if(bn&&bn.join("\n")==gm){gi=gj.ranges.length%bn.length==0&&bT(bn,a1)}else{if(gp.length==gj.ranges.length){gi=bT(gp,function(gx){return[gx]})}}}for(var gn=gj.ranges.length-1;gn>=0;gn--){var go=gj.ranges[gn];var gt=go.from(),gs=go.to();if(go.empty()){if(gk&&gk>0){gt=W(gt.line,gt.ch-gk)}else{if(gw.state.overwrite&&!gl){gs=W(gs.line,Math.min(fg(gu,gs.line).text.length,gs.ch+fH(gp).length))}}}var gq=gw.curOp.updateInput;var gr={from:gt,to:gs,text:gi?gi[gn%gi.length]:gp,origin:gv||(gl?"paste":gw.state.cutIncoming?"cut":"+input")};bh(gw.doc,gr);ae(gw,"inputRead",gw,gr)}if(gm&&!gl){fW(gw,gm)}fG(gw);gw.curOp.updateInput=gq;gw.curOp.typing=true;gw.state.pasteIncoming=gw.state.cutIncoming=false}function bb(gk,gi){var gj=gk.clipboardData&&gk.clipboardData.getData("text/plain");if(gj){gk.preventDefault();cN(gi,function(){fZ(gi,gj,0,null,"paste")});return true}}function fW(gi,gm){if(!gi.options.electricChars||!gi.options.smartIndent){return}var gn=gi.doc.sel;for(var gl=gn.ranges.length-1;gl>=0;gl--){var gj=gn.ranges[gl];if(gj.head.ch>100||(gl&&gn.ranges[gl-1].head.line==gj.head.line)){continue}var go=gi.getModeAt(gj.head);var gp=false;if(go.electricChars){for(var gk=0;gk<go.electricChars.length;gk++){if(gm.indexOf(go.electricChars.charAt(gk))>-1){gp=ad(gi,gj.head.line,"smart");break}}}else{if(go.electricInput){if(go.electricInput.test(fg(gi.doc,gj.head.line).text.slice(0,gj.head.ch))){gp=ad(gi,gj.head.line,"smart")}}}if(gp){ae(gi,"electricInput",gi,gj.head.line)}}}function dk(gi){var gn=[],gk=[];for(var gl=0;gl<gi.doc.sel.ranges.length;gl++){var gj=gi.doc.sel.ranges[gl].head.line;var gm={anchor:W(gj,0),head:W(gj+1,0)};gk.push(gm);gn.push(gi.getRange(gm.anchor,gm.head))}return{text:gn,ranges:gk}}function fQ(gi){gi.setAttribute("autocorrect","off");gi.setAttribute("autocapitalize","off");gi.setAttribute("spellcheck","false")}function Y(gi){this.cm=gi;this.prevInput="";this.pollingFast=false;this.polling=new gh();this.inaccurateSelection=false;this.hasSelection=false;this.composing=null}function aX(){var gi=f3("textarea",null,null,"position: absolute; padding: 0; width: 1px; height: 1em; outline: none");var gj=f3("div",[gi],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");if(c1){gi.style.width="1000px"}else{gi.setAttribute("wrap","off")}if(e2){gi.style.border="1px solid black"}fQ(gi);return gj}Y.prototype=aN({init:function(gk){var gj=this,gi=this.cm;var gn=this.wrapper=aX();var gl=this.textarea=gn.firstChild;gk.wrapper.insertBefore(gn,gk.wrapper.firstChild);if(e2){gl.style.width="0px"}bY(gl,"input",function(){if(dL&&k>=9&&gj.hasSelection){gj.hasSelection=null}gj.poll()});bY(gl,"paste",function(go){if(bb(go,gi)){return true}gi.state.pasteIncoming=true;gj.fastPoll()});function gm(gp){if(gi.somethingSelected()){bn=gi.getSelections();if(gj.inaccurateSelection){gj.prevInput="";gj.inaccurateSelection=false;gl.value=bn.join("\n");dM(gl)}}else{if(!gi.options.lineWiseCopyCut){return}else{var go=dk(gi);bn=go.text;if(gp.type=="cut"){gi.setSelections(go.ranges,null,Z)}else{gj.prevInput="";gl.value=go.text.join("\n");dM(gl)}}}if(gp.type=="cut"){gi.state.cutIncoming=true}}bY(gl,"cut",gm);bY(gl,"copy",gm);bY(gk.scroller,"paste",function(go){if(bc(gk,go)){return}gi.state.pasteIncoming=true;gj.focus()});bY(gk.lineSpace,"selectstart",function(go){if(!bc(gk,go)){cH(go)}});bY(gl,"compositionstart",function(){var go=gi.getCursor("from");gj.composing={start:go,range:gi.markText(go,gi.getCursor("to"),{className:"CodeMirror-composing"})}});bY(gl,"compositionend",function(){if(gj.composing){gj.poll();gj.composing.range.clear();gj.composing=null}})},prepareSelection:function(){var gj=this.cm,gn=gj.display,gm=gj.doc;var gi=fJ(gj);if(gj.options.moveInputWithCursor){var go=dV(gj,gm.sel.primary().head,"div");var gk=gn.wrapper.getBoundingClientRect(),gl=gn.lineDiv.getBoundingClientRect();gi.teTop=Math.max(0,Math.min(gn.wrapper.clientHeight-10,go.top+gl.top-gk.top));gi.teLeft=Math.max(0,Math.min(gn.wrapper.clientWidth-10,go.left+gl.left-gk.left))}return gi},showSelection:function(gk){var gi=this.cm,gj=gi.display;bS(gj.cursorDiv,gk.cursors);bS(gj.selectionDiv,gk.selection);if(gk.teTop!=null){this.wrapper.style.top=gk.teTop+"px";this.wrapper.style.left=gk.teLeft+"px"}},reset:function(gm){if(this.contextMenuPending){return}var gj,gl,gi=this.cm,go=gi.doc;if(gi.somethingSelected()){this.prevInput="";var gk=go.sel.primary();gj=db&&(gk.to().line-gk.from().line>100||(gl=gi.getSelection()).length>1000);var gn=gj?"-":gl||gi.getSelection();this.textarea.value=gn;if(gi.state.focused){dM(this.textarea)}if(dL&&k>=9){this.hasSelection=gn}}else{if(!gm){this.prevInput=this.textarea.value="";if(dL&&k>=9){this.hasSelection=null}}}this.inaccurateSelection=gj},getField:function(){return this.textarea},supportsTouch:function(){return false},focus:function(){if(this.cm.options.readOnly!="nocursor"&&(!eh||dP()!=this.textarea)){try{this.textarea.focus()}catch(gi){}}},blur:function(){this.textarea.blur()},resetPosition:function(){this.wrapper.style.top=this.wrapper.style.left=0},receivedFocus:function(){this.slowPoll()},slowPoll:function(){var gi=this;if(gi.pollingFast){return}gi.polling.set(this.cm.options.pollInterval,function(){gi.poll();if(gi.cm.state.focused){gi.slowPoll()}})},fastPoll:function(){var gj=false,gi=this;gi.pollingFast=true;function gk(){var gl=gi.poll();if(!gl&&!gj){gj=true;gi.polling.set(60,gk)}else{gi.pollingFast=false;gi.slowPoll()}}gi.polling.set(20,gk)},poll:function(){var gi=this.cm,gl=this.textarea,gm=this.prevInput;if(this.contextMenuPending||!gi.state.focused||(bt(gl)&&!gm)||aj(gi)||gi.options.disableInput||gi.state.keySeq){return false}var go=gl.value;if(go==gm&&!gi.somethingSelected()){return false}if(dL&&k>=9&&this.hasSelection===go||b8&&/[\uf700-\uf7ff]/.test(go)){gi.display.input.reset();return false}if(gi.doc.sel==gi.display.selForContextMenu){var gn=go.charCodeAt(0);if(gn==8203&&!gm){gm="\u200b"}if(gn==8666){this.reset();return this.cm.execCommand("undo")}}var gp=0,gj=Math.min(gm.length,go.length);while(gp<gj&&gm.charCodeAt(gp)==go.charCodeAt(gp)){++gp}var gk=this;cN(gi,function(){fZ(gi,go.slice(gp),gm.length-gp,null,gk.composing?"*compose":null);if(go.length>1000||go.indexOf("\n")>-1){gl.value=gk.prevInput=""}else{gk.prevInput=go}if(gk.composing){gk.composing.range.clear();gk.composing.range=gi.markText(gk.composing.start,gi.getCursor("to"),{className:"CodeMirror-composing"})}});return true},ensurePolled:function(){if(this.pollingFast&&this.poll()){this.pollingFast=false}},onKeyPress:function(){if(dL&&k>=9){this.hasSelection=null}this.fastPoll()},onContextMenu:function(gn){var gs=this,gt=gs.cm,gp=gt.display,gj=gs.textarea;var gr=co(gt,gn),gi=gp.scroller.scrollTop;if(!gr||d4){return}var gm=gt.options.resetSelectionOnContextMenu;if(gm&&gt.doc.sel.contains(gr)==-1){c3(gt,bV)(gt.doc,eT(gr),Z)}var go=gj.style.cssText;gs.wrapper.style.position="absolute";gj.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(gn.clientY-5)+"px; left: "+(gn.clientX-5)+"px; z-index: 1000; background: "+(dL?"rgba(255, 255, 255, .05)":"transparent")+"; outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);";if(c1){var gu=window.scrollY}gp.input.focus();if(c1){window.scrollTo(null,gu)}gp.input.reset();if(!gt.somethingSelected()){gj.value=gs.prevInput=" "}gs.contextMenuPending=true;gp.selForContextMenu=gt.doc.sel;clearTimeout(gp.detectingSelectAll);function gl(){if(gj.selectionStart!=null){var gv=gt.somethingSelected();var gw="\u200b"+(gv?gj.value:"");gj.value="\u21da";gj.value=gw;gs.prevInput=gv?"":"\u200b";gj.selectionStart=1;gj.selectionEnd=gw.length;gp.selForContextMenu=gt.doc.sel}}function gq(){gs.contextMenuPending=false;gs.wrapper.style.position="relative";gj.style.cssText=go;if(dL&&k<9){gp.scrollbars.setScrollTop(gp.scroller.scrollTop=gi)}if(gj.selectionStart!=null){if(!dL||(dL&&k<9)){gl()}var gv=0,gw=function(){if(gp.selForContextMenu==gt.doc.sel&&gj.selectionStart==0&&gj.selectionEnd>0&&gs.prevInput=="\u200b"){c3(gt,eE.selectAll)(gt)}else{if(gv++<10){gp.detectingSelectAll=setTimeout(gw,500)}else{gp.input.reset()}}};gp.detectingSelectAll=setTimeout(gw,200)}}if(dL&&k>=9){gl()}if(ga){es(gn);var gk=function(){ee(window,"mouseup",gk);setTimeout(gq,20)};bY(window,"mouseup",gk)}else{setTimeout(gq,50)}},setUneditable:fV,needsContentAttribute:false},Y.prototype);function dw(gi){this.cm=gi;this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null;this.polling=new gh();this.gracePeriod=false}dw.prototype=aN({init:function(gl){var gk=this,gi=gk.cm;var gm=gk.div=gl.lineDiv;gm.contentEditable="true";fQ(gm);bY(gm,"paste",function(gn){bb(gn,gi)});bY(gm,"compositionstart",function(gr){var gq=gr.data;gk.composing={sel:gi.doc.sel,data:gq,startData:gq};if(!gq){return}var go=gi.doc.sel.primary();var gn=gi.getLine(go.head.line);var gp=gn.indexOf(gq,Math.max(0,go.head.ch-gq.length));if(gp>-1&&gp<=go.head.ch){gk.composing.sel=eT(W(go.head.line,gp),W(go.head.line,gp+gq.length))}});bY(gm,"compositionupdate",function(gn){gk.composing.data=gn.data});bY(gm,"compositionend",function(go){var gn=gk.composing;if(!gn){return}if(go.data!=gn.startData&&!/\u200b/.test(go.data)){gn.data=go.data}setTimeout(function(){if(!gn.handled){gk.applyComposition(gn)}if(gk.composing==gn){gk.composing=null}},50)});bY(gm,"touchstart",function(){gk.forceCompositionEnd()});bY(gm,"input",function(){if(gk.composing){return}if(!gk.pollContent()){cN(gk.cm,function(){ah(gi)})}});function gj(gq){if(gi.somethingSelected()){bn=gi.getSelections();if(gq.type=="cut"){gi.replaceSelection("",null,"cut")}}else{if(!gi.options.lineWiseCopyCut){return}else{var go=dk(gi);bn=go.text;if(gq.type=="cut"){gi.operation(function(){gi.setSelections(go.ranges,0,Z);gi.replaceSelection("",null,"cut")})}}}if(gq.clipboardData&&!e2){gq.preventDefault();gq.clipboardData.clearData();gq.clipboardData.setData("text/plain",bn.join("\n"))}else{var gp=aX(),gr=gp.firstChild;gi.display.lineSpace.insertBefore(gp,gi.display.lineSpace.firstChild);gr.value=bn.join("\n");var gn=document.activeElement;dM(gr);setTimeout(function(){gi.display.lineSpace.removeChild(gp);gn.focus()},50)}}bY(gm,"copy",gj);bY(gm,"cut",gj)},prepareSelection:function(){var gi=fJ(this.cm,false);gi.focus=this.cm.state.focused;return gi},showSelection:function(gi){if(!gi||!this.cm.display.view.length){return}if(gi.focus){this.showPrimarySelection()}this.showMultipleSelections(gi)},showPrimarySelection:function(){var gm=window.getSelection(),gp=this.cm.doc.sel.primary();var gn=az(this.cm,gm.anchorNode,gm.anchorOffset);var gr=az(this.cm,gm.focusNode,gm.focusOffset);if(gn&&!gn.bad&&gr&&!gr.bad&&cg(ar(gn,gr),gp.from())==0&&cg(by(gn,gr),gp.to())==0){return}var gl=cA(this.cm,gp.from());var gq=cA(this.cm,gp.to());if(!gl&&!gq){return}var gt=this.cm.display.view;var go=gm.rangeCount&&gm.getRangeAt(0);if(!gl){gl={node:gt[0].measure.map[2],offset:0}}else{if(!gq){var gk=gt[gt.length-1].measure;var gj=gk.maps?gk.maps[gk.maps.length-1]:gk.map;gq={node:gj[gj.length-1],offset:gj[gj.length-2]-gj[gj.length-3]}}}try{var gi=cm(gl.node,gl.offset,gq.offset,gq.node)}catch(gs){}if(gi){gm.removeAllRanges();gm.addRange(gi);if(go&&gm.anchorNode==null){gm.addRange(go)}else{if(cp){this.startGracePeriod()}}}this.rememberSelection()},startGracePeriod:function(){var gi=this;clearTimeout(this.gracePeriod);this.gracePeriod=setTimeout(function(){gi.gracePeriod=false;if(gi.selectionChanged()){gi.cm.operation(function(){gi.cm.curOp.selectionChanged=true})}},20)},showMultipleSelections:function(gi){bS(this.cm.display.cursorDiv,gi.cursors);bS(this.cm.display.selectionDiv,gi.selection)},rememberSelection:function(){var gi=window.getSelection();this.lastAnchorNode=gi.anchorNode;this.lastAnchorOffset=gi.anchorOffset;this.lastFocusNode=gi.focusNode;this.lastFocusOffset=gi.focusOffset},selectionInEditor:function(){var gj=window.getSelection();if(!gj.rangeCount){return false}var gi=gj.getRangeAt(0).commonAncestorContainer;return gb(this.div,gi)},focus:function(){if(this.cm.options.readOnly!="nocursor"){this.div.focus()}},blur:function(){this.div.blur()},getField:function(){return this.div},supportsTouch:function(){return true},receivedFocus:function(){var gi=this;if(this.selectionInEditor()){this.pollSelection()}else{cN(this.cm,function(){gi.cm.curOp.selectionChanged=true})}function gj(){if(gi.cm.state.focused){gi.pollSelection();gi.polling.set(gi.cm.options.pollInterval,gj)}}this.polling.set(this.cm.options.pollInterval,gj)},selectionChanged:function(){var gi=window.getSelection();return gi.anchorNode!=this.lastAnchorNode||gi.anchorOffset!=this.lastAnchorOffset||gi.focusNode!=this.lastFocusNode||gi.focusOffset!=this.lastFocusOffset},pollSelection:function(){if(!this.composing&&!this.gracePeriod&&this.selectionChanged()){var gl=window.getSelection(),gi=this.cm;this.rememberSelection();var gj=az(gi,gl.anchorNode,gl.anchorOffset);var gk=az(gi,gl.focusNode,gl.focusOffset);if(gj&&gk){cN(gi,function(){bV(gi.doc,eT(gj,gk),Z);if(gj.bad||gk.bad){gi.curOp.selectionChanged=true}})}}},pollContent:function(){var gs=this.cm,gC=gs.display,gA=gs.doc.sel.primary();var gB=gA.from(),gm=gA.to();if(gB.line<gC.viewFrom||gm.line>gC.viewTo-1){return false}var gp;if(gB.line==gC.viewFrom||(gp=ds(gs,gB.line))==0){var gn=bO(gC.view[0].line);var gr=gC.view[0].node}else{var gn=bO(gC.view[gp].line);var gr=gC.view[gp-1].node.nextSibling}var gz=ds(gs,gm.line);if(gz==gC.view.length-1){var gu=gC.viewTo-1;var gx=gC.lineDiv.lastChild}else{var gu=bO(gC.view[gz+1].line)-1;var gx=gC.view[gz+1].node.previousSibling}var gD=a1(f0(gs,gr,gx,gn,gu));var gw=f5(gs.doc,W(gn,0),W(gu,fg(gs.doc,gu).text.length));while(gD.length>1&&gw.length>1){if(fH(gD)==fH(gw)){gD.pop();gw.pop();gu--}else{if(gD[0]==gw[0]){gD.shift();gw.shift();gn++}else{break}}}var gy=0,gk=0;var gt=gD[0],gj=gw[0],gi=Math.min(gt.length,gj.length);while(gy<gi&&gt.charCodeAt(gy)==gj.charCodeAt(gy)){++gy}var gq=fH(gD),gE=fH(gw);var gl=Math.min(gq.length-(gD.length==1?gy:0),gE.length-(gw.length==1?gy:0));while(gk<gl&&gq.charCodeAt(gq.length-gk-1)==gE.charCodeAt(gE.length-gk-1)){++gk}gD[gD.length-1]=gq.slice(0,gq.length-gk);gD[0]=gD[0].slice(gy);var go=W(gn,gy);var gv=W(gu,gw.length?fH(gw).length-gk:0);if(gD.length>1||gD[0]||cg(go,gv)){a2(gs.doc,gD,go,gv,"+input");return true}},ensurePolled:function(){this.forceCompositionEnd()},reset:function(){this.forceCompositionEnd()},forceCompositionEnd:function(){if(!this.composing||this.composing.handled){return}this.applyComposition(this.composing);this.composing.handled=true;this.div.blur();this.div.focus()},applyComposition:function(gi){if(gi.data&&gi.data!=gi.startData){c3(this.cm,fZ)(this.cm,gi.data,0,gi.sel)}},setUneditable:function(gi){gi.setAttribute("contenteditable","false")},onKeyPress:function(gi){gi.preventDefault();c3(this.cm,fZ)(this.cm,String.fromCharCode(gi.charCode==null?gi.keyCode:gi.charCode),0)},onContextMenu:fV,resetPosition:fV,needsContentAttribute:true},dw.prototype);function cA(go,gm){var gn=fc(go,gm.line);if(!gn||gn.hidden){return null}var gq=fg(go.doc,gm.line);var gj=cu(gn,gq,gm.line);var gk=a(gq),gl="left";if(gk){var gi=aG(gk,gm.ch);gl=gi%2?"right":"left"}var gp=aL(gj.map,gm.ch,gl);gp.offset=gp.collapse=="right"?gp.end:gp.start;return gp}function eu(gj,gi){if(gi){gj.bad=true}return gj}function az(gi,gl,gn){var gm;if(gl==gi.display.lineDiv){gm=gi.display.lineDiv.childNodes[gn];if(!gm){return eu(gi.clipPos(W(gi.display.viewTo-1)),true)}gl=null;gn=0}else{for(gm=gl;;gm=gm.parentNode){if(!gm||gm==gi.display.lineDiv){return null}if(gm.parentNode&&gm.parentNode==gi.display.lineDiv){break}}}for(var gk=0;gk<gi.display.view.length;gk++){var gj=gi.display.view[gk];if(gj.node==gm){return aa(gj,gl,gn)}}}function aa(gq,gm,go){var gk=gq.text.firstChild,gl=false;if(!gm||!gb(gk,gm)){return eu(W(bO(gq.line),0),true)}if(gm==gk){gl=true;gm=gk.childNodes[go];go=0;if(!gm){var gw=gq.rest?fH(gq.rest):gq.line;return eu(W(bO(gw),gw.text.length),gl)}}var gn=gm.nodeType==3?gm:null,gu=gm;if(!gn&&gm.childNodes.length==1&&gm.firstChild.nodeType==3){gn=gm.firstChild;if(go){go=gn.nodeValue.length}}while(gu.parentNode!=gk){gu=gu.parentNode}var gj=gq.measure,gs=gj.maps;function gp(gz,gE,gB){for(var gD=-1;gD<(gs?gs.length:0);gD++){var gy=gD<0?gj.map:gs[gD];for(var gC=0;gC<gy.length;gC+=3){var gA=gy[gC+2];if(gA==gz||gA==gE){var gF=bO(gD<0?gq.line:gq.rest[gD]);var gx=gy[gC]+gB;if(gB<0||gA!=gz){gx=gy[gC+(gB?1:0)]}return W(gF,gx)}}}}var gv=gp(gn,gu,go);if(gv){return eu(gv,gl)}for(var gi=gu.nextSibling,gr=gn?gn.nodeValue.length-go:0;gi;gi=gi.nextSibling){gv=gp(gi,gi.firstChild,0);if(gv){return eu(W(gv.line,gv.ch-gr),gl)}else{gr+=gi.textContent.length}}for(var gt=gu.previousSibling,gr=go;gt;gt=gt.previousSibling){gv=gp(gt,gt.firstChild,-1);if(gv){return eu(W(gv.line,gv.ch+gr),gl)}else{gr+=gi.textContent.length}}}function f0(gp,gn,go,gk,gi){var gq="",gj=false;function gl(gr){return function(gs){return gs.id==gr}}function gm(gv){if(gv.nodeType==1){var gs=gv.getAttribute("cm-text");if(gs!=null){if(gs==""){gs=gv.textContent.replace(/\u200b/g,"")}gq+=gs;return}var gu=gv.getAttribute("cm-marker"),gr;if(gu){var gw=gp.findMarks(W(gk,0),W(gi+1,0),gl(+gu));if(gw.length&&(gr=gw[0].find())){gq+=f5(gp.doc,gr.from,gr.to).join("\n")}return}if(gv.getAttribute("contenteditable")=="false"){return}for(var gt=0;gt<gv.childNodes.length;gt++){gm(gv.childNodes[gt])}if(/^(pre|div|p)$/i.test(gv.nodeName)){gj=true}}else{if(gv.nodeType==3){var gx=gv.nodeValue;if(!gx){return}if(gj){gq+="\n";gj=false}gq+=gx}}}for(;;){gm(gn);if(gn==go){break}gn=gn.nextSibling}return gq}H.inputStyles={textarea:Y,contenteditable:dw};function f4(gi,gj){this.ranges=gi;this.primIndex=gj}f4.prototype={primary:function(){return this.ranges[this.primIndex]},equals:function(gi){if(gi==this){return true}if(gi.primIndex!=this.primIndex||gi.ranges.length!=this.ranges.length){return false}for(var gk=0;gk<this.ranges.length;gk++){var gj=this.ranges[gk],gl=gi.ranges[gk];if(cg(gj.anchor,gl.anchor)!=0||cg(gj.head,gl.head)!=0){return false}}return true},deepCopy:function(){for(var gi=[],gj=0;gj<this.ranges.length;gj++){gi[gj]=new dZ(cj(this.ranges[gj].anchor),cj(this.ranges[gj].head))}return new f4(gi,this.primIndex)},somethingSelected:function(){for(var gi=0;gi<this.ranges.length;gi++){if(!this.ranges[gi].empty()){return true}}return false},contains:function(gl,gi){if(!gi){gi=gl}for(var gk=0;gk<this.ranges.length;gk++){var gj=this.ranges[gk];if(cg(gi,gj.from())>=0&&cg(gl,gj.to())<=0){return gk}}return -1}};function dZ(gi,gj){this.anchor=gi;this.head=gj}dZ.prototype={from:function(){return ar(this.anchor,this.head)},to:function(){return by(this.anchor,this.head)},empty:function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch}};function cx(gi,gp){var gk=gi[gp];gi.sort(function(gs,gr){return cg(gs.from(),gr.from())});gp=di(gi,gk);for(var gm=1;gm<gi.length;gm++){var gq=gi[gm],gj=gi[gm-1];if(cg(gj.to(),gq.from())>=0){var gn=ar(gj.from(),gq.from()),go=by(gj.to(),gq.to());var gl=gj.empty()?gq.from()==gq.head:gj.from()==gj.head;if(gm<=gp){--gp}gi.splice(--gm,2,new dZ(gl?go:gn,gl?gn:go))}}return new f4(gi,gp)}function eT(gi,gj){return new f4([new dZ(gi,gj||gi)],0)}function c6(gi,gj){return Math.max(gi.first,Math.min(gj,gi.first+gi.size-1))}function fK(gj,gk){if(gk.line<gj.first){return W(gj.first,0)}var gi=gj.first+gj.size-1;if(gk.line>gi){return W(gi,fg(gj,gi).text.length)}return ft(gk,fg(gj,gk.line).text.length)}function ft(gk,gj){var gi=gk.ch;if(gi==null||gi>gj){return W(gk.line,gj)}else{if(gi<0){return W(gk.line,0)}else{return gk}}}function ca(gj,gi){return gi>=gj.first&&gi<gj.first+gj.size}function d1(gk,gl){for(var gi=[],gj=0;gj<gl.length;gj++){gi[gj]=fK(gk,gl[gj])}return gi}function fw(gn,gj,gm,gi){if(gn.cm&&gn.cm.display.shift||gn.extend){var gl=gj.anchor;if(gi){var gk=cg(gm,gl)<0;if(gk!=(cg(gi,gl)<0)){gl=gm;gm=gi}else{if(gk!=(cg(gm,gi)<0)){gm=gi}}}return new dZ(gl,gm)}else{return new dZ(gi||gm,gm)}}function fX(gl,gk,gi,gj){bV(gl,new f4([fw(gl,gl.sel.primary(),gk,gi)],0),gj)}function aw(gn,gm,gk){for(var gj=[],gl=0;gl<gn.sel.ranges.length;gl++){gj[gl]=fw(gn,gn.sel.ranges[gl],gm[gl],null)}var gi=cx(gj,gn.sel.primIndex);bV(gn,gi,gk)}function e(gm,gl,gj,gk){var gi=gm.sel.ranges.slice(0);gi[gl]=gj;bV(gm,cx(gi,gm.sel.primIndex),gk)}function F(gl,gj,gk,gi){bV(gl,eT(gj,gk),gi)}function c(gk,gi){var gj={ranges:gi.ranges,update:function(gl){this.ranges=[];for(var gm=0;gm<gl.length;gm++){this.ranges[gm]=new dZ(fK(gk,gl[gm].anchor),fK(gk,gl[gm].head))}}};aE(gk,"beforeSelectionChange",gk,gj);if(gk.cm){aE(gk.cm,"beforeSelectionChange",gk.cm,gj)}if(gj.ranges!=gi.ranges){return cx(gj.ranges,gj.ranges.length-1)}else{return gi}}function e8(gm,gl,gj){var gi=gm.history.done,gk=fH(gi);if(gk&&gk.ranges){gi[gi.length-1]=gl;eq(gm,gl,gj)}else{bV(gm,gl,gj)}}function bV(gk,gj,gi){eq(gk,gj,gi);gc(gk,gk.sel,gk.cm?gk.cm.curOp.id:NaN,gi)}function eq(gl,gk,gj){if(fj(gl,"beforeSelectionChange")||gl.cm&&fj(gl.cm,"beforeSelectionChange")){gk=c(gl,gk)}var gi=gj&&gj.bias||(cg(gk.primary().head,gl.sel.primary().head)<0?-1:1);da(gl,n(gl,gk,gi,true));if(!(gj&&gj.scroll===false)&&gl.cm){fG(gl.cm)}}function da(gj,gi){if(gi.equals(gj.sel)){return}gj.sel=gi;if(gj.cm){gj.cm.curOp.updateInput=gj.cm.curOp.selectionChanged=true;V(gj.cm)}ae(gj,"cursorActivity",gj)}function ez(gi){da(gi,n(gi,gi.sel,null,false),Z)}function n(gq,gi,gn,go){var gk;for(var gl=0;gl<gi.ranges.length;gl++){var gm=gi.ranges[gl];var gp=bW(gq,gm.anchor,gn,go);var gj=bW(gq,gm.head,gn,go);if(gk||gp!=gm.anchor||gj!=gm.head){if(!gk){gk=gi.ranges.slice(0,gl)}gk[gl]=new dZ(gp,gj)}}return gk?cx(gk,gi.primIndex):gi}function bW(gr,gq,gn,go){var gs=false,gk=gq;var gl=gn||1;gr.cantEdit=false;search:for(;;){var gt=fg(gr,gk.line);if(gt.markedSpans){for(var gm=0;gm<gt.markedSpans.length;++gm){var gi=gt.markedSpans[gm],gj=gi.marker;if((gi.from==null||(gj.inclusiveLeft?gi.from<=gk.ch:gi.from<gk.ch))&&(gi.to==null||(gj.inclusiveRight?gi.to>=gk.ch:gi.to>gk.ch))){if(go){aE(gj,"beforeCursorEnter");if(gj.explicitlyCleared){if(!gt.markedSpans){break}else{--gm;continue}}}if(!gj.atomic){continue}var gp=gj.find(gl<0?-1:1);if(cg(gp,gk)==0){gp.ch+=gl;if(gp.ch<0){if(gp.line>gr.first){gp=fK(gr,W(gp.line-1))}else{gp=null}}else{if(gp.ch>gt.text.length){if(gp.line<gr.first+gr.size-1){gp=W(gp.line+1,0)}else{gp=null}}}if(!gp){if(gs){if(!go){return bW(gr,gq,gn,true)}gr.cantEdit=true;return W(gr.first,0)}gs=true;gp=gq;gl=-gl}}gk=gp;continue search}}}return gk}}function bD(gi){gi.display.input.showSelection(gi.display.input.prepareSelection())}function fJ(gp,gi){var go=gp.doc,gq={};var gn=gq.cursors=document.createDocumentFragment();var gj=gq.selection=document.createDocumentFragment();for(var gl=0;gl<go.sel.ranges.length;gl++){if(gi===false&&gl==go.sel.primIndex){continue}var gm=go.sel.ranges[gl];var gk=gm.empty();if(gk||gp.options.showCursorWhenSelecting){A(gp,gm,gn)}if(!gk){bE(gp,gm,gj)}}return gq}function A(gi,gl,gk){var gn=dV(gi,gl.head,"div",null,null,!gi.options.singleCursorHeightPerLine);var gm=gk.appendChild(f3("div","\u00a0","CodeMirror-cursor"));gm.style.left=gn.left+"px";gm.style.top=gn.top+"px";gm.style.height=Math.max(0,gn.bottom-gn.top)*gi.options.cursorHeight+"px";if(gn.other){var gj=gk.appendChild(f3("div","\u00a0","CodeMirror-cursor CodeMirror-secondarycursor"));gj.style.display="";gj.style.left=gn.other.left+"px";gj.style.top=gn.other.top+"px";gj.style.height=(gn.other.bottom-gn.other.top)*0.85+"px"}}function bE(gm,gs,gn){var gv=gm.display,gz=gm.doc;var gi=document.createDocumentFragment();var gr=e6(gm.display),gl=gr.left;var gw=Math.max(gv.sizerWidth,dm(gm)-gv.sizer.offsetLeft)-gr.right;function gt(gD,gC,gB,gA){if(gC<0){gC=0}gC=Math.round(gC);gA=Math.round(gA);gi.appendChild(f3("div",null,"CodeMirror-selected","position: absolute; left: "+gD+"px; top: "+gC+"px; width: "+(gB==null?gw-gD:gB)+"px; height: "+(gA-gC)+"px"))}function gj(gB,gD,gG){var gC=fg(gz,gB);var gE=gC.text.length;var gH,gA;function gF(gJ,gI){return cK(gm,W(gB,gJ),"div",gC,gI)}d5(a(gC),gD||0,gG==null?gE:gG,function(gP,gO,gI){var gL=gF(gP,"left"),gM,gN,gK;if(gP==gO){gM=gL;gN=gK=gL.left}else{gM=gF(gO-1,"right");if(gI=="rtl"){var gJ=gL;gL=gM;gM=gJ}gN=gL.left;gK=gM.right}if(gD==null&&gP==0){gN=gl}if(gM.top-gL.top>3){gt(gN,gL.top,null,gL.bottom);gN=gl;if(gL.bottom<gM.top){gt(gN,gL.bottom,null,gM.top)}}if(gG==null&&gO==gE){gK=gw}if(!gH||gL.top<gH.top||gL.top==gH.top&&gL.left<gH.left){gH=gL}if(!gA||gM.bottom>gA.bottom||gM.bottom==gA.bottom&&gM.right>gA.right){gA=gM}if(gN<gl+1){gN=gl}gt(gN,gM.top,gK-gN,gM.bottom)});return{start:gH,end:gA}}var gy=gs.from(),gx=gs.to();if(gy.line==gx.line){gj(gy.line,gy.ch,gx.ch)}else{var gk=fg(gz,gy.line),gp=fg(gz,gx.line);var go=y(gk)==y(gp);var gq=gj(gy.line,gy.ch,go?gk.text.length+1:null).end;var gu=gj(gx.line,go?0:null,gx.ch).start;if(go){if(gq.top<gu.top-2){gt(gq.right,gq.top,null,gq.bottom);gt(gl,gu.top,gu.left,gu.bottom)}else{gt(gq.right,gq.top,gu.left-gq.right,gq.bottom)}}if(gq.bottom<gu.top){gt(gl,gq.bottom,null,gu.top)}}gn.appendChild(gi)}function o(gi){if(!gi.state.focused){return}var gk=gi.display;clearInterval(gk.blinker);var gj=true;gk.cursorDiv.style.visibility="";if(gi.options.cursorBlinkRate>0){gk.blinker=setInterval(function(){gk.cursorDiv.style.visibility=(gj=!gj)?"":"hidden"},gi.options.cursorBlinkRate)}else{if(gi.options.cursorBlinkRate<0){gk.cursorDiv.style.visibility="hidden"}}}function eg(gi,gj){if(gi.doc.mode.startState&&gi.doc.frontier<gi.display.viewTo){gi.state.highlight.set(gj,cw(cQ,gi))}}function cQ(gi){var gm=gi.doc;if(gm.frontier<gm.first){gm.frontier=gm.first}if(gm.frontier>=gi.display.viewTo){return}var gk=+new Date+gi.options.workTime;var gl=b4(gm.mode,dD(gi,gm.frontier));var gj=[];gm.iter(gm.frontier,Math.min(gm.first+gm.size,gi.display.viewTo+500),function(gn){if(gm.frontier>=gi.display.viewFrom){var gq=gn.styles;var gs=fA(gi,gn,gl,true);gn.styles=gs.styles;var gp=gn.styleClasses,gr=gs.classes;if(gr){gn.styleClasses=gr}else{if(gp){gn.styleClasses=null}}var gt=!gq||gq.length!=gn.styles.length||gp!=gr&&(!gp||!gr||gp.bgClass!=gr.bgClass||gp.textClass!=gr.textClass);for(var go=0;!gt&&go<gq.length;++go){gt=gq[go]!=gn.styles[go]}if(gt){gj.push(gm.frontier)}gn.stateAfter=b4(gm.mode,gl)}else{dy(gi,gn.text,gl);gn.stateAfter=gm.frontier%5==0?b4(gm.mode,gl):null}++gm.frontier;if(+new Date>gk){eg(gi,gi.options.workDelay);return true}});if(gj.length){cN(gi,function(){for(var gn=0;gn<gj.length;gn++){R(gi,gj[gn],"text")}})}}function cz(go,gi,gl){var gj,gm,gn=go.doc;var gk=gl?-1:gi-(go.doc.mode.innerMode?1000:100);for(var gr=gi;gr>gk;--gr){if(gr<=gn.first){return gn.first}var gq=fg(gn,gr-1);if(gq.stateAfter&&(!gl||gr<=gn.frontier)){return gr}var gp=bU(gq.text,null,go.options.tabSize);if(gm==null||gj>gp){gm=gr-1;gj=gp}}return gm}function dD(gi,go,gj){var gm=gi.doc,gl=gi.display;if(!gm.mode.startState){return true}var gn=cz(gi,go,gj),gk=gn>gm.first&&fg(gm,gn-1).stateAfter;if(!gk){gk=b1(gm.mode)}else{gk=b4(gm.mode,gk)}gm.iter(gn,go,function(gp){dy(gi,gp.text,gk);var gq=gn==go-1||gn%5==0||gn>=gl.viewFrom&&gn<gl.viewTo;gp.stateAfter=gq?b4(gm.mode,gk):null;++gn});if(gj){gm.frontier=gn}return gk}function e9(gi){return gi.lineSpace.offsetTop}function bJ(gi){return gi.mover.offsetHeight-gi.lineSpace.offsetHeight}function e6(gl){if(gl.cachedPaddingH){return gl.cachedPaddingH}var gk=bS(gl.measure,f3("pre","x"));var gi=window.getComputedStyle?window.getComputedStyle(gk):gk.currentStyle;var gj={left:parseInt(gi.paddingLeft),right:parseInt(gi.paddingRight)};if(!isNaN(gj.left)&&!isNaN(gj.right)){gl.cachedPaddingH=gj}return gj}function cU(gi){return dK-gi.display.nativeBarWidth}function dm(gi){return gi.display.scroller.clientWidth-cU(gi)-gi.display.barWidth}function cW(gi){return gi.display.scroller.clientHeight-cU(gi)-gi.display.barHeight}function ci(gp,gl,go){var gk=gp.options.lineWrapping;var gm=gk&&dm(gp);if(!gl.measure.heights||gk&&gl.measure.width!=gm){var gn=gl.measure.heights=[];if(gk){gl.measure.width=gm;var gr=gl.text.firstChild.getClientRects();for(var gi=0;gi<gr.length-1;gi++){var gq=gr[gi],gj=gr[gi+1];if(Math.abs(gq.bottom-gj.bottom)>2){gn.push((gq.bottom+gj.top)/2-go.top)}}}gn.push(go.bottom-go.top)}}function cu(gk,gi,gl){if(gk.line==gi){return{map:gk.measure.map,cache:gk.measure.cache}}for(var gj=0;gj<gk.rest.length;gj++){if(gk.rest[gj]==gi){return{map:gk.measure.maps[gj],cache:gk.measure.caches[gj]}}}for(var gj=0;gj<gk.rest.length;gj++){if(bO(gk.rest[gj])>gl){return{map:gk.measure.maps[gj],cache:gk.measure.caches[gj],before:true}}}}function c2(gi,gk){gk=y(gk);var gm=bO(gk);var gj=gi.display.externalMeasured=new bw(gi.doc,gk,gm);gj.lineN=gm;var gl=gj.built=eS(gi,gj);gj.text=gl.pre;bS(gi.display.lineMeasure,gl.pre);return gj}function ei(gi,gj,gl,gk){return C(gi,a5(gi,gj),gl,gk)}function fc(gi,gk){if(gk>=gi.display.viewFrom&&gk<gi.display.viewTo){return gi.display.view[ds(gi,gk)]}var gj=gi.display.externalMeasured;if(gj&&gk>=gj.lineN&&gk<gj.lineN+gj.size){return gj}}function a5(gi,gk){var gl=bO(gk);var gj=fc(gi,gl);if(gj&&!gj.text){gj=null}else{if(gj&&gj.changes){ab(gi,gj,gl,fe(gi))}}if(!gj){gj=c2(gi,gk)}var gm=cu(gj,gk,gl);return{line:gk,view:gj,rect:null,map:gm.map,cache:gm.cache,before:gm.before,hasHeights:false}}function C(gi,go,gm,gj,gl){if(go.before){gm=-1}var gk=gm+(gj||""),gn;if(go.cache.hasOwnProperty(gk)){gn=go.cache[gk]}else{if(!go.rect){go.rect=go.view.text.getBoundingClientRect()}if(!go.hasHeights){ci(gi,go.view,go.rect);go.hasHeights=true}gn=j(gi,go,gm,gj);if(!gn.bogus){go.cache[gk]=gn}}return{left:gn.left,right:gn.right,top:gl?gn.rtop:gn.top,bottom:gl?gn.rbottom:gn.bottom}}var eC={left:0,right:0,top:0,bottom:0};function aL(gj,gi,gp){var gl,gk,gn,gq;for(var go=0;go<gj.length;go+=3){var gm=gj[go],gr=gj[go+1];if(gi<gm){gk=0;gn=1;gq="left"}else{if(gi<gr){gk=gi-gm;gn=gk+1}else{if(go==gj.length-3||gi==gr&&gj[go+3]>gi){gn=gr-gm;gk=gn-1;if(gi>=gr){gq="right"}}}}if(gk!=null){gl=gj[go+2];if(gm==gr&&gp==(gl.insertLeft?"left":"right")){gq=gp}if(gp=="left"&&gk==0){while(go&&gj[go-2]==gj[go-3]&&gj[go-1].insertLeft){gl=gj[(go-=3)+2];gq="left"}}if(gp=="right"&&gk==gr-gm){while(go<gj.length-3&&gj[go+3]==gj[go+4]&&!gj[go+5].insertLeft){gl=gj[(go+=3)+2];gq="right"}}break}}return{node:gl,start:gk,end:gn,collapse:gq,coverStart:gm,coverEnd:gr}}function j(gp,gz,gs,gn){var gq=aL(gz.map,gs,gn);var gx=gq.node,gm=gq.start,gl=gq.end,gi=gq.collapse;var gj;if(gx.nodeType==3){for(var gy=0;gy<4;gy++){while(gm&&fq(gz.line.text.charAt(gq.coverStart+gm))){--gm}while(gq.coverStart+gl<gq.coverEnd&&fq(gz.line.text.charAt(gq.coverStart+gl))){++gl}if(dL&&k<9&&gm==0&&gl==gq.coverEnd-gq.coverStart){gj=gx.parentNode.getBoundingClientRect()}else{if(dL&&gp.options.lineWrapping){var gk=cm(gx,gm,gl).getClientRects();if(gk.length){gj=gk[gn=="right"?gk.length-1:0]}else{gj=eC}}else{gj=cm(gx,gm,gl).getBoundingClientRect()||eC}}if(gj.left||gj.right||gm==0){break}gl=gm;gm=gm-1;gi="right"}if(dL&&k<11){gj=eO(gp.display.measure,gj)}}else{if(gm>0){gi=gn="right"}var gk;if(gp.options.lineWrapping&&(gk=gx.getClientRects()).length>1){gj=gk[gn=="right"?gk.length-1:0]}else{gj=gx.getBoundingClientRect()}}if(dL&&k<9&&!gm&&(!gj||!gj.left&&!gj.right)){var go=gx.parentNode.getClientRects()[0];if(go){gj={left:go.left,right:go.left+dE(gp.display),top:go.top,bottom:go.bottom}}else{gj=eC}}var gv=gj.top-gz.rect.top,gt=gj.bottom-gz.rect.top;var gB=(gv+gt)/2;var gA=gz.view.measure.heights;for(var gy=0;gy<gA.length-1;gy++){if(gB<gA[gy]){break}}var gw=gy?gA[gy-1]:0,gu=gA[gy];var gr={left:(gi=="right"?gj.right:gj.left)-gz.rect.left,right:(gi=="left"?gj.left:gj.right)-gz.rect.left,top:gw,bottom:gu};if(!gj.left&&!gj.right){gr.bogus=true}if(!gp.options.singleCursorHeightPerLine){gr.rtop=gv;gr.rbottom=gt}return gr}function eO(gk,gl){if(!window.screen||screen.logicalXDPI==null||screen.logicalXDPI==screen.deviceXDPI||!aK(gk)){return gl}var gj=screen.logicalXDPI/screen.deviceXDPI;var gi=screen.logicalYDPI/screen.deviceYDPI;return{left:gl.left*gj,right:gl.right*gj,top:gl.top*gi,bottom:gl.bottom*gi}}function au(gj){if(gj.measure){gj.measure.cache={};gj.measure.heights=null;if(gj.rest){for(var gi=0;gi<gj.rest.length;gi++){gj.measure.caches[gi]={}}}}}function aO(gi){gi.display.externalMeasure=null;d2(gi.display.lineMeasure);for(var gj=0;gj<gi.display.view.length;gj++){au(gi.display.view[gj])}}function ak(gi){aO(gi);gi.display.cachedCharWidth=gi.display.cachedTextHeight=gi.display.cachedPaddingH=null;if(!gi.options.lineWrapping){gi.display.maxLineChanged=true}gi.display.lineNumChars=null}function cv(){return window.pageXOffset||(document.documentElement||document.body).scrollLeft}function ct(){return window.pageYOffset||(document.documentElement||document.body).scrollTop}function eR(go,gl,gn,gj){if(gl.widgets){for(var gk=0;gk<gl.widgets.length;++gk){if(gl.widgets[gk].above){var gq=cZ(gl.widgets[gk]);gn.top+=gq;gn.bottom+=gq}}}if(gj=="line"){return gn}if(!gj){gj="local"}var gm=bN(gl);if(gj=="local"){gm+=e9(go.display)}else{gm-=go.display.viewOffset}if(gj=="page"||gj=="window"){var gi=go.display.lineSpace.getBoundingClientRect();gm+=gi.top+(gj=="window"?0:ct());var gp=gi.left+(gj=="window"?0:cv());gn.left+=gp;gn.right+=gp}gn.top+=gm;gn.bottom+=gm;return gn}function gf(gj,gm,gk){if(gk=="div"){return gm}var go=gm.left,gn=gm.top;if(gk=="page"){go-=cv();gn-=ct()}else{if(gk=="local"||!gk){var gl=gj.display.sizer.getBoundingClientRect();go+=gl.left;gn+=gl.top}}var gi=gj.display.lineSpace.getBoundingClientRect();return{left:go-gi.left,top:gn-gi.top}}function cK(gi,gm,gl,gk,gj){if(!gk){gk=fg(gi.doc,gm.line)}return eR(gi,gk,ei(gi,gk,gm.ch,gj),gl)}function dV(gr,gq,gk,go,gt,gp){go=go||fg(gr.doc,gq.line);if(!gt){gt=a5(gr,go)}function gm(gw,gv){var gu=C(gr,gt,gw,gv?"right":"left",gp);if(gv){gu.left=gu.right}else{gu.right=gu.left}return eR(gr,go,gu,gk)}function gs(gx,gu){var gv=gn[gu],gw=gv.level%2;if(gx==dz(gv)&&gu&&gv.level<gn[gu-1].level){gv=gn[--gu];gx=ge(gv)-(gv.level%2?0:1);gw=true}else{if(gx==ge(gv)&&gu<gn.length-1&&gv.level<gn[gu+1].level){gv=gn[++gu];gx=dz(gv)-gv.level%2;gw=false}}if(gw&&gx==gv.to&&gx>gv.from){return gm(gx-1)}return gm(gx,gw)}var gn=a(go),gi=gq.ch;if(!gn){return gm(gi)}var gj=aG(gn,gi);var gl=gs(gi,gj);if(e3!=null){gl.other=gs(gi,e3)}return gl}function dI(gi,gm){var gl=0,gm=fK(gi.doc,gm);if(!gi.options.lineWrapping){gl=dE(gi.display)*gm.ch}var gj=fg(gi.doc,gm.line);var gk=bN(gj)+e9(gi.display);return{left:gl,right:gl,top:gk,bottom:gk+gj.height}}function f2(gi,gj,gk,gm){var gl=W(gi,gj);gl.xRel=gm;if(gk){gl.outside=true}return gl}function fP(gp,gm,gl){var go=gp.doc;gl+=gp.display.viewOffset;if(gl<0){return f2(go.first,0,true,-1)}var gk=bH(go,gl),gq=go.first+go.size-1;if(gk>gq){return f2(go.first+go.size-1,fg(go,gq).text.length,true,1)}if(gm<0){gm=0}var gj=fg(go,gk);for(;;){var gr=c0(gp,gj,gk,gm,gl);var gn=ex(gj);var gi=gn&&gn.find(0,true);if(gn&&(gr.ch>gi.from.ch||gr.ch==gi.from.ch&&gr.xRel>0)){gk=bO(gj=gi.to.line)}else{return gr}}}function c0(gs,gk,gv,gu,gt){var gr=gt-bN(gk);var go=false,gB=2*gs.display.wrapper.clientWidth;var gy=a5(gs,gk);function gF(gH){var gI=dV(gs,W(gv,gH),"line",gk,gy);go=true;if(gr>gI.bottom){return gI.left-gB}else{if(gr<gI.top){return gI.left+gB}else{go=false}}return gI.left}var gx=a(gk),gA=gk.text.length;var gC=cF(gk),gl=cT(gk);var gz=gF(gC),gi=go,gj=gF(gl),gn=go;if(gu>gj){return f2(gv,gl,gn,1)}for(;;){if(gx?gl==gC||gl==u(gk,gC,1):gl-gC<=1){var gw=gu<gz||gu-gz<=gj-gu?gC:gl;var gE=gu-(gw==gC?gz:gj);while(fq(gk.text.charAt(gw))){++gw}var gq=f2(gv,gw,gw==gC?gi:gn,gE<-1?-1:gE>1?1:0);return gq}var gp=Math.ceil(gA/2),gG=gC+gp;if(gx){gG=gC;for(var gD=0;gD<gp;++gD){gG=u(gk,gG,1)}}var gm=gF(gG);if(gm>gu){gl=gG;gj=gm;if(gn=go){gj+=1000}gA=gp}else{gC=gG;gz=gm;gi=go;gA-=gp}}}var aH;function aY(gk){if(gk.cachedTextHeight!=null){return gk.cachedTextHeight}if(aH==null){aH=f3("pre");for(var gj=0;gj<49;++gj){aH.appendChild(document.createTextNode("x"));aH.appendChild(f3("br"))}aH.appendChild(document.createTextNode("x"))}bS(gk.measure,aH);var gi=aH.offsetHeight/50;if(gi>3){gk.cachedTextHeight=gi}d2(gk.measure);return gi||1}function dE(gm){if(gm.cachedCharWidth!=null){return gm.cachedCharWidth}var gi=f3("span","xxxxxxxxxx");var gl=f3("pre",[gi]);bS(gm.measure,gl);var gk=gi.getBoundingClientRect(),gj=(gk.right-gk.left)/10;if(gj>2){gm.cachedCharWidth=gj}return gj||10}var bq=null;var d9=0;function cJ(gi){gi.curOp={cm:gi,viewChanged:false,startHeight:gi.doc.height,forceUpdate:false,updateInput:null,typing:false,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:false,updateMaxLine:false,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:false,id:++d9};if(bq){bq.ops.push(gi.curOp)}else{gi.curOp.ownsGroup=bq={ops:[gi.curOp],delayedCallbacks:[]}}}function cV(gl){var gk=gl.delayedCallbacks,gj=0;do{for(;gj<gk.length;gj++){gk[gj]()}for(var gi=0;gi<gl.ops.length;gi++){var gm=gl.ops[gi];if(gm.cursorActivityHandlers){while(gm.cursorActivityCalled<gm.cursorActivityHandlers.length){gm.cursorActivityHandlers[gm.cursorActivityCalled++](gm.cm)}}}}while(gj<gk.length)}function am(gi){var gl=gi.curOp,gk=gl.ownsGroup;if(!gk){return}try{cV(gk)}finally{bq=null;for(var gj=0;gj<gk.ops.length;gj++){gk.ops[gj].cm.curOp=null}cL(gk)}}function cL(gk){var gj=gk.ops;for(var gi=0;gi<gj.length;gi++){b6(gj[gi])}for(var gi=0;gi<gj.length;gi++){aq(gj[gi])}for(var gi=0;gi<gj.length;gi++){b3(gj[gi])}for(var gi=0;gi<gj.length;gi++){ap(gj[gi])}for(var gi=0;gi<gj.length;gi++){e1(gj[gi])}}function b6(gk){var gi=gk.cm,gj=gi.display;J(gi);if(gk.updateMaxLine){h(gi)}gk.mustUpdate=gk.viewChanged||gk.forceUpdate||gk.scrollTop!=null||gk.scrollToPos&&(gk.scrollToPos.from.line<gj.viewFrom||gk.scrollToPos.to.line>=gj.viewTo)||gj.maxLineChanged&&gi.options.lineWrapping;gk.update=gk.mustUpdate&&new aI(gi,gk.mustUpdate&&{top:gk.scrollTop,ensure:gk.scrollToPos},gk.forceUpdate)}function aq(gi){gi.updatedDisplay=gi.mustUpdate&&B(gi.cm,gi.update)}function b3(gk){var gi=gk.cm,gj=gi.display;if(gk.updatedDisplay){ba(gi)}gk.barMeasure=dB(gi);if(gj.maxLineChanged&&!gi.options.lineWrapping){gk.adjustWidthTo=ei(gi,gj.maxLine,gj.maxLine.text.length).left+3;gi.display.sizerWidth=gk.adjustWidthTo;gk.barMeasure.scrollWidth=Math.max(gj.scroller.clientWidth,gj.sizer.offsetLeft+gk.adjustWidthTo+cU(gi)+gi.display.barWidth);gk.maxScrollLeft=Math.max(0,gj.sizer.offsetLeft+gk.adjustWidthTo-dm(gi))}if(gk.updatedDisplay||gk.selectionChanged){gk.preparedSelection=gj.input.prepareSelection()}}function ap(gj){var gi=gj.cm;if(gj.adjustWidthTo!=null){gi.display.sizer.style.minWidth=gj.adjustWidthTo+"px";if(gj.maxScrollLeft<gi.doc.scrollLeft){bF(gi,Math.min(gi.display.scroller.scrollLeft,gj.maxScrollLeft),true)}gi.display.maxLineChanged=false}if(gj.preparedSelection){gi.display.input.showSelection(gj.preparedSelection)}if(gj.updatedDisplay){dA(gi,gj.barMeasure)}if(gj.updatedDisplay||gj.startHeight!=gi.doc.height){eZ(gi,gj.barMeasure)}if(gj.selectionChanged){o(gi)}if(gi.state.focused&&gj.updateInput){gi.display.input.reset(gj.typing)}if(gj.focus&&gj.focus==dP()){r(gj.cm)}}function e1(gp){var gi=gp.cm,gn=gi.display,gm=gi.doc;if(gp.updatedDisplay){ck(gi,gp.update)}if(gn.wheelStartX!=null&&(gp.scrollTop!=null||gp.scrollLeft!=null||gp.scrollToPos)){gn.wheelStartX=gn.wheelStartY=null}if(gp.scrollTop!=null&&(gn.scroller.scrollTop!=gp.scrollTop||gp.forceScroll)){gm.scrollTop=Math.max(0,Math.min(gn.scroller.scrollHeight-gn.scroller.clientHeight,gp.scrollTop));gn.scrollbars.setScrollTop(gm.scrollTop);gn.scroller.scrollTop=gm.scrollTop}if(gp.scrollLeft!=null&&(gn.scroller.scrollLeft!=gp.scrollLeft||gp.forceScroll)){gm.scrollLeft=Math.max(0,Math.min(gn.scroller.scrollWidth-dm(gi),gp.scrollLeft));gn.scrollbars.setScrollLeft(gm.scrollLeft);gn.scroller.scrollLeft=gm.scrollLeft;eF(gi)}if(gp.scrollToPos){var gl=D(gi,fK(gm,gp.scrollToPos.from),fK(gm,gp.scrollToPos.to),gp.scrollToPos.margin);if(gp.scrollToPos.isCursor&&gi.state.focused){d7(gi,gl)}}var gk=gp.maybeHiddenMarkers,go=gp.maybeUnhiddenMarkers;if(gk){for(var gj=0;gj<gk.length;++gj){if(!gk[gj].lines.length){aE(gk[gj],"hide")}}}if(go){for(var gj=0;gj<go.length;++gj){if(go[gj].lines.length){aE(go[gj],"unhide")}}}if(gn.wrapper.offsetHeight){gm.scrollTop=gi.display.scroller.scrollTop}if(gp.changeObjs){aE(gi,"changes",gi,gp.changeObjs)}if(gp.update){gp.update.finish()}}function cN(gi,gj){if(gi.curOp){return gj()}cJ(gi);try{return gj()}finally{am(gi)}}function c3(gi,gj){return function(){if(gi.curOp){return gj.apply(gi,arguments)}cJ(gi);try{return gj.apply(gi,arguments)}finally{am(gi)}}}function c9(gi){return function(){if(this.curOp){return gi.apply(this,arguments)}cJ(this);try{return gi.apply(this,arguments)}finally{am(this)}}}function cE(gi){return function(){var gj=this.cm;if(!gj||gj.curOp){return gi.apply(this,arguments)}cJ(gj);try{return gi.apply(this,arguments)}finally{am(gj)}}}function bw(gk,gi,gj){this.line=gi;this.rest=g(gi);this.size=this.rest?bO(fH(this.rest))-gj+1:1;this.node=this.text=null;this.hidden=fx(gk,gi)}function eW(gi,go,gn){var gm=[],gk;for(var gl=go;gl<gn;gl=gk){var gj=new bw(gi.doc,fg(gi.doc,gl),gl);gk=gl+gj.size;gm.push(gj)}return gm}function ah(gp,gn,go,gq){if(gn==null){gn=gp.doc.first}if(go==null){go=gp.doc.first+gp.doc.size}if(!gq){gq=0}var gk=gp.display;if(gq&&go<gk.viewTo&&(gk.updateLineNumbers==null||gk.updateLineNumbers>gn)){gk.updateLineNumbers=gn}gp.curOp.viewChanged=true;if(gn>=gk.viewTo){if(a8&&aW(gp.doc,gn)<gk.viewTo){ey(gp)}}else{if(go<=gk.viewFrom){if(a8&&d3(gp.doc,go+gq)>gk.viewFrom){ey(gp)}else{gk.viewFrom+=gq;gk.viewTo+=gq}}else{if(gn<=gk.viewFrom&&go>=gk.viewTo){ey(gp)}else{if(gn<=gk.viewFrom){var gm=df(gp,go,go+gq,1);if(gm){gk.view=gk.view.slice(gm.index);gk.viewFrom=gm.lineN;gk.viewTo+=gq}else{ey(gp)}}else{if(go>=gk.viewTo){var gm=df(gp,gn,gn,-1);if(gm){gk.view=gk.view.slice(0,gm.index);gk.viewTo=gm.lineN}else{ey(gp)}}else{var gl=df(gp,gn,gn,-1);var gj=df(gp,go,go+gq,1);if(gl&&gj){gk.view=gk.view.slice(0,gl.index).concat(eW(gp,gl.lineN,gj.lineN)).concat(gk.view.slice(gj.index));gk.viewTo+=gq}else{ey(gp)}}}}}}var gi=gk.externalMeasured;if(gi){if(go<gi.lineN){gi.lineN+=gq}else{if(gn<gi.lineN+gi.size){gk.externalMeasured=null}}}}function R(gj,gk,gn){gj.curOp.viewChanged=true;var go=gj.display,gm=gj.display.externalMeasured;if(gm&&gk>=gm.lineN&&gk<gm.lineN+gm.size){go.externalMeasured=null}if(gk<go.viewFrom||gk>=go.viewTo){return}var gl=go.view[ds(gj,gk)];if(gl.node==null){return}var gi=gl.changes||(gl.changes=[]);if(di(gi,gn)==-1){gi.push(gn)}}function ey(gi){gi.display.viewFrom=gi.display.viewTo=gi.doc.first;gi.display.view=[];gi.display.viewOffset=0}function ds(gi,gl){if(gl>=gi.display.viewTo){return null}gl-=gi.display.viewFrom;if(gl<0){return null}var gj=gi.display.view;for(var gk=0;gk<gj.length;gk++){gl-=gj[gk].size;if(gl<0){return gk}}}function df(gq,gk,gm,gj){var gn=ds(gq,gk),gp,go=gq.display.view;if(!a8||gm==gq.doc.first+gq.doc.size){return{index:gn,lineN:gm}}for(var gl=0,gi=gq.display.viewFrom;gl<gn;gl++){gi+=go[gl].size}if(gi!=gk){if(gj>0){if(gn==go.length-1){return null}gp=(gi+go[gn].size)-gk;gn++}else{gp=gi-gk}gk+=gp;gm+=gp}while(aW(gq.doc,gm)!=gm){if(gn==(gj<0?0:go.length-1)){return null}gm+=gj*go[gn-(gj<0?1:0)].size;gn+=gj}return{index:gn,lineN:gm}}function cS(gi,gm,gl){var gk=gi.display,gj=gk.view;if(gj.length==0||gm>=gk.viewTo||gl<=gk.viewFrom){gk.view=eW(gi,gm,gl);gk.viewFrom=gm}else{if(gk.viewFrom>gm){gk.view=eW(gi,gm,gk.viewFrom).concat(gk.view)}else{if(gk.viewFrom<gm){gk.view=gk.view.slice(ds(gi,gm))}}gk.viewFrom=gm;if(gk.viewTo<gl){gk.view=gk.view.concat(eW(gi,gk.viewTo,gl))}else{if(gk.viewTo>gl){gk.view=gk.view.slice(0,ds(gi,gl))}}}gk.viewTo=gl}function dc(gi){var gj=gi.display.view,gm=0;for(var gl=0;gl<gj.length;gl++){var gk=gj[gl];if(!gk.hidden&&(!gk.node||gk.changes)){++gm}}return gm}function fR(gj){var gn=gj.display;bY(gn.scroller,"mousedown",c3(gj,ev));if(dL&&k<11){bY(gn.scroller,"dblclick",c3(gj,function(gr){if(aR(gj,gr)){return}var gs=co(gj,gr);if(!gs||l(gj,gr)||bc(gj.display,gr)){return}cH(gr);var gq=gj.findWordAt(gs);fX(gj.doc,gq.anchor,gq.head)}))}else{bY(gn.scroller,"dblclick",function(gq){aR(gj,gq)||cH(gq)})}if(!ga){bY(gn.scroller,"contextmenu",function(gq){ay(gj,gq)})}var gp,gi={end:0};function go(){if(gn.activeTouch){gp=setTimeout(function(){gn.activeTouch=null},1000);gi=gn.activeTouch;gi.end=+new Date}}function gl(gq){if(gq.touches.length!=1){return false}var gr=gq.touches[0];return gr.radiusX<=1&&gr.radiusY<=1}function gk(gt,gq){if(gq.left==null){return true}var gs=gq.left-gt.left,gr=gq.top-gt.top;return gs*gs+gr*gr>20*20}bY(gn.scroller,"touchstart",function(gr){if(!gl(gr)){clearTimeout(gp);var gq=+new Date;gn.activeTouch={start:gq,moved:false,prev:gq-gi.end<=300?gi:null};if(gr.touches.length==1){gn.activeTouch.left=gr.touches[0].pageX;gn.activeTouch.top=gr.touches[0].pageY}}});bY(gn.scroller,"touchmove",function(){if(gn.activeTouch){gn.activeTouch.moved=true}});bY(gn.scroller,"touchend",function(gr){var gt=gn.activeTouch;if(gt&&!bc(gn,gr)&&gt.left!=null&&!gt.moved&&new Date-gt.start<300){var gs=gj.coordsChar(gn.activeTouch,"page"),gq;if(!gt.prev||gk(gt,gt.prev)){gq=new dZ(gs,gs)}else{if(!gt.prev.prev||gk(gt,gt.prev.prev)){gq=gj.findWordAt(gs)}else{gq=new dZ(W(gs.line,0),fK(gj.doc,W(gs.line+1,0)))}}gj.setSelection(gq.anchor,gq.head);gj.focus();cH(gr)}go()});bY(gn.scroller,"touchcancel",go);bY(gn.scroller,"scroll",function(){if(gn.scroller.clientHeight){N(gj,gn.scroller.scrollTop);bF(gj,gn.scroller.scrollLeft,true);aE(gj,"scroll",gj)}});bY(gn.scroller,"mousewheel",function(gq){b(gj,gq)});bY(gn.scroller,"DOMMouseScroll",function(gq){b(gj,gq)});bY(gn.wrapper,"scroll",function(){gn.wrapper.scrollTop=gn.wrapper.scrollLeft=0});gn.dragFunctions={simple:function(gq){if(!aR(gj,gq)){es(gq)}},start:function(gq){Q(gj,gq)},drop:c3(gj,bl)};var gm=gn.input.getField();bY(gm,"keyup",function(gq){bj.call(gj,gq)});bY(gm,"keydown",c3(gj,p));bY(gm,"keypress",c3(gj,cy));bY(gm,"focus",cw(cC,gj));bY(gm,"blur",cw(aV,gj))}function f1(gj,gm,gk){var gn=gk&&gk!=H.Init;if(!gm!=!gn){var gl=gj.display.dragFunctions;var gi=gm?bY:ee;gi(gj.display.scroller,"dragstart",gl.start);gi(gj.display.scroller,"dragenter",gl.simple);gi(gj.display.scroller,"dragover",gl.simple);gi(gj.display.scroller,"drop",gl.drop)}}function aT(gi){var gj=gi.display;if(gj.lastWrapHeight==gj.wrapper.clientHeight&&gj.lastWrapWidth==gj.wrapper.clientWidth){return}gj.cachedCharWidth=gj.cachedTextHeight=gj.cachedPaddingH=null;gj.scrollbarsClipped=false;gi.setSize()}function bc(gj,gi){for(var gk=L(gi);gk!=gj.wrapper;gk=gk.parentNode){if(!gk||(gk.nodeType==1&&gk.getAttribute("cm-ignore-events")=="true")||(gk.parentNode==gj.sizer&&gk!=gj.mover)){return true}}}function co(gr,gm,gj,gk){var gn=gr.display;if(!gj&&L(gm).getAttribute("cm-not-content")=="true"){return null}var gq,go,gi=gn.lineSpace.getBoundingClientRect();try{gq=gm.clientX-gi.left;go=gm.clientY-gi.top}catch(gm){return null}var gp=fP(gr,gq,go),gs;if(gk&&gp.xRel==1&&(gs=fg(gr.doc,gp.line).text).length==gp.ch){var gl=bU(gs,gs.length,gr.options.tabSize)-gs.length;gp=W(gp.line,Math.max(0,Math.round((gq-e6(gr.display).left)/dE(gr.display))-gl))}return gp}function ev(gk){var gi=this,gj=gi.display;if(gj.activeTouch&&gj.input.supportsTouch()||aR(gi,gk)){return}gj.shift=gk.shiftKey;if(bc(gj,gk)){if(!c1){gj.scroller.draggable=false;setTimeout(function(){gj.scroller.draggable=true},100)}return}if(l(gi,gk)){return}var gl=co(gi,gk);window.focus();switch(fO(gk)){case 1:if(gl){ax(gi,gk,gl)}else{if(L(gk)==gj.scroller){cH(gk)}}break;case 2:if(c1){gi.state.lastMiddleDown=+new Date}if(gl){fX(gi.doc,gl)}setTimeout(function(){gj.input.focus()},20);cH(gk);break;case 3:if(ga){ay(gi,gk)}else{al(gi)}break}}var dp,de;function ax(gj,go,gp){if(dL){setTimeout(cw(r,gj),0)}else{gj.curOp.focus=dP()}var gk=+new Date,gm;if(de&&de.time>gk-400&&cg(de.pos,gp)==0){gm="triple"}else{if(dp&&dp.time>gk-400&&cg(dp.pos,gp)==0){gm="double";de={time:gk,pos:gp}}else{gm="single";dp={time:gk,pos:gp}}}var gn=gj.doc.sel,gi=b8?go.metaKey:go.ctrlKey,gl;if(gj.options.dragDrop&&eM&&!aj(gj)&&gm=="single"&&(gl=gn.contains(gp))>-1&&(cg((gl=gn.ranges[gl]).from(),gp)<0||gp.xRel>0)&&(cg(gl.to(),gp)>0||gp.xRel<0)){a4(gj,go,gp,gi)}else{m(gj,go,gp,gm,gi)}}function a4(gk,gn,go,gj){var gm=gk.display,gl=+new Date;var gi=c3(gk,function(gp){if(c1){gm.scroller.draggable=false}gk.state.draggingText=false;ee(document,"mouseup",gi);ee(gm.scroller,"drop",gi);if(Math.abs(gn.clientX-gp.clientX)+Math.abs(gn.clientY-gp.clientY)<10){cH(gp);if(!gj&&+new Date-200<gl){fX(gk.doc,go)}if(c1||dL&&k==9){setTimeout(function(){document.body.focus();gm.input.focus()},20)}else{gm.input.focus()}}});if(c1){gm.scroller.draggable=true}gk.state.draggingText=gi;if(gm.scroller.dragDrop){gm.scroller.dragDrop()}bY(document,"mouseup",gi);bY(gm.scroller,"drop",gi)}function m(gm,gA,gl,gj,go){var gx=gm.display,gC=gm.doc;cH(gA);var gk,gB,gn=gC.sel,gi=gn.ranges;if(go&&!gA.shiftKey){gB=gC.sel.contains(gl);if(gB>-1){gk=gi[gB]}else{gk=new dZ(gl,gl)}}else{gk=gC.sel.primary();gB=gC.sel.primIndex}if(gA.altKey){gj="rect";if(!go){gk=new dZ(gl,gl)}gl=co(gm,gA,true,true);gB=-1}else{if(gj=="double"){var gy=gm.findWordAt(gl);if(gm.display.shift||gC.extend){gk=fw(gC,gk,gy.anchor,gy.head)}else{gk=gy}}else{if(gj=="triple"){var gr=new dZ(W(gl.line,0),fK(gC,W(gl.line+1,0)));if(gm.display.shift||gC.extend){gk=fw(gC,gk,gr.anchor,gr.head)}else{gk=gr}}else{gk=fw(gC,gk,gl)}}}if(!go){gB=0;bV(gC,new f4([gk],0),M);gn=gC.sel}else{if(gB==-1){gB=gi.length;bV(gC,cx(gi.concat([gk]),gB),{scroll:false,origin:"*mouse"})}else{if(gi.length>1&&gi[gB].empty()&&gj=="single"&&!gA.shiftKey){bV(gC,cx(gi.slice(0,gB).concat(gi.slice(gB+1)),0));gn=gC.sel}else{e(gC,gB,gk,M)}}}var gw=gl;function gv(gN){if(cg(gw,gN)==0){return}gw=gN;if(gj=="rect"){var gE=[],gK=gm.options.tabSize;var gD=bU(fg(gC,gl.line).text,gl.ch,gK);var gQ=bU(fg(gC,gN.line).text,gN.ch,gK);var gF=Math.min(gD,gQ),gO=Math.max(gD,gQ);for(var gR=Math.min(gl.line,gN.line),gH=Math.min(gm.lastLine(),Math.max(gl.line,gN.line));gR<=gH;gR++){var gP=fg(gC,gR).text,gG=er(gP,gF,gK);if(gF==gO){gE.push(new dZ(W(gR,gG),W(gR,gG)))}else{if(gP.length>gG){gE.push(new dZ(W(gR,gG),W(gR,er(gP,gO,gK))))}}}if(!gE.length){gE.push(new dZ(gl,gl))}bV(gC,cx(gn.ranges.slice(0,gB).concat(gE),gB),{origin:"*mouse",scroll:false});gm.scrollIntoView(gN)}else{var gL=gk;var gI=gL.anchor,gM=gN;if(gj!="single"){if(gj=="double"){var gJ=gm.findWordAt(gN)}else{var gJ=new dZ(W(gN.line,0),fK(gC,W(gN.line+1,0)))}if(cg(gJ.anchor,gI)>0){gM=gJ.head;gI=ar(gL.from(),gJ.anchor)}else{gM=gJ.anchor;gI=by(gL.to(),gJ.head)}}var gE=gn.ranges.slice(0);gE[gB]=new dZ(fK(gC,gI),gM);bV(gC,cx(gE,gB),M)}}var gt=gx.wrapper.getBoundingClientRect();var gp=0;function gz(gF){var gD=++gp;var gH=co(gm,gF,true,gj=="rect");if(!gH){return}if(cg(gH,gw)!=0){gm.curOp.focus=dP();gv(gH);var gG=b7(gx,gC);if(gH.line>=gG.to||gH.line<gG.from){setTimeout(c3(gm,function(){if(gp==gD){gz(gF)}}),150)}}else{var gE=gF.clientY<gt.top?-20:gF.clientY>gt.bottom?20:0;if(gE){setTimeout(c3(gm,function(){if(gp!=gD){return}gx.scroller.scrollTop+=gE;gz(gF)}),50)}}}function gs(gD){gp=Infinity;cH(gD);gx.input.focus();ee(document,"mousemove",gu);ee(document,"mouseup",gq);gC.history.lastSelOrigin=null}var gu=c3(gm,function(gD){if(!fO(gD)){gs(gD)}else{gz(gD)}});var gq=c3(gm,gs);bY(document,"mousemove",gu);bY(document,"mouseup",gq)}function gg(gt,gp,gr,gs,gl){try{var gj=gp.clientX,gi=gp.clientY}catch(gp){return false}if(gj>=Math.floor(gt.display.gutters.getBoundingClientRect().right)){return false}if(gs){cH(gp)}var gq=gt.display;var go=gq.lineDiv.getBoundingClientRect();if(gi>go.bottom||!fj(gt,gr)){return bM(gp)}gi-=go.top-gq.viewOffset;for(var gm=0;gm<gt.options.gutters.length;++gm){var gn=gq.gutters.childNodes[gm];if(gn&&gn.getBoundingClientRect().right>=gj){var gu=bH(gt.doc,gi);var gk=gt.options.gutters[gm];gl(gt,gr,gt,gu,gk,gp);return bM(gp)}}}function l(gi,gj){return gg(gi,gj,"gutterClick",true,ae)}var ag=0;function bl(go){var gq=this;if(aR(gq,go)||bc(gq.display,go)){return}cH(go);if(dL){ag=+new Date}var gp=co(gq,go,true),gi=go.dataTransfer.files;if(!gp||aj(gq)){return}if(gi&&gi.length&&window.FileReader&&window.File){var gk=gi.length,gr=Array(gk),gj=0;var gm=function(gu,gt){var gs=new FileReader;gs.onload=c3(gq,function(){gr[gt]=gs.result;if(++gj==gk){gp=fK(gq.doc,gp);var gv={from:gp,to:gp,text:a1(gr.join("\n")),origin:"paste"};bh(gq.doc,gv);e8(gq.doc,eT(gp,cY(gv)))}});gs.readAsText(gu)};for(var gn=0;gn<gk;++gn){gm(gi[gn],gn)}}else{if(gq.state.draggingText&&gq.doc.sel.contains(gp)>-1){gq.state.draggingText(go);setTimeout(function(){gq.display.input.focus()},20);return}try{var gr=go.dataTransfer.getData("Text");if(gr){if(gq.state.draggingText&&!(b8?go.altKey:go.ctrlKey)){var gl=gq.listSelections()}eq(gq.doc,eT(gp,gp));if(gl){for(var gn=0;gn<gl.length;++gn){a2(gq.doc,"",gl[gn].anchor,gl[gn].head,"drag")}}gq.replaceSelection(gr,"around","paste");gq.display.input.focus()}}catch(go){}}}function Q(gi,gk){if(dL&&(!gi.state.draggingText||+new Date-ag<100)){es(gk);return}if(aR(gi,gk)||bc(gi.display,gk)){return}gk.dataTransfer.setData("Text",gi.getSelection());if(gk.dataTransfer.setDragImage&&!aC){var gj=f3("img",null,null,"position: fixed; left: 0; top: 0;");gj.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";if(d4){gj.width=gj.height=1;gi.display.wrapper.appendChild(gj);gj._top=gj.offsetTop}gk.dataTransfer.setDragImage(gj,0,0);if(d4){gj.parentNode.removeChild(gj)}}}function N(gi,gj){if(Math.abs(gi.doc.scrollTop-gj)<2){return}gi.doc.scrollTop=gj;if(!cp){dU(gi,{top:gj})}if(gi.display.scroller.scrollTop!=gj){gi.display.scroller.scrollTop=gj}gi.display.scrollbars.setScrollTop(gj);if(cp){dU(gi)}eg(gi,100)}function bF(gi,gk,gj){if(gj?gk==gi.doc.scrollLeft:Math.abs(gi.doc.scrollLeft-gk)<2){return}gk=Math.min(gk,gi.display.scroller.scrollWidth-gi.display.scroller.clientWidth);gi.doc.scrollLeft=gk;eF(gi);if(gi.display.scroller.scrollLeft!=gk){gi.display.scroller.scrollLeft=gk}gi.display.scrollbars.setScrollLeft(gk)}var fn=0,ch=null;if(dL){ch=-0.53}else{if(cp){ch=15}else{if(dd){ch=-0.7}else{if(aC){ch=-1/3}}}}var cR=function(gk){var gj=gk.wheelDeltaX,gi=gk.wheelDeltaY;if(gj==null&&gk.detail&&gk.axis==gk.HORIZONTAL_AXIS){gj=gk.detail}if(gi==null&&gk.detail&&gk.axis==gk.VERTICAL_AXIS){gi=gk.detail}else{if(gi==null){gi=gk.wheelDelta}}return{x:gj,y:gi}};H.wheelEventPixels=function(gi){var gj=cR(gi);gj.x*=ch;gj.y*=ch;return gj};function b(gq,gk){var gr=cR(gk),gu=gr.x,gt=gr.y;var gm=gq.display,gp=gm.scroller;if(!(gu&&gp.scrollWidth>gp.clientWidth||gt&&gp.scrollHeight>gp.clientHeight)){return}if(gt&&b8&&c1){outer:for(var gs=gk.target,go=gm.view;gs!=gp;gs=gs.parentNode){for(var gj=0;gj<go.length;gj++){if(go[gj].node==gs){gq.display.currentWheelTarget=gs;break outer}}}}if(gu&&!cp&&!d4&&ch!=null){if(gt){N(gq,Math.max(0,Math.min(gp.scrollTop+gt*ch,gp.scrollHeight-gp.clientHeight)))}bF(gq,Math.max(0,Math.min(gp.scrollLeft+gu*ch,gp.scrollWidth-gp.clientWidth)));cH(gk);gm.wheelStartX=null;return}if(gt&&ch!=null){var gi=gt*ch;var gn=gq.doc.scrollTop,gl=gn+gm.wrapper.clientHeight;if(gi<0){gn=Math.max(0,gn+gi-50)}else{gl=Math.min(gq.doc.height,gl+gi+50)}dU(gq,{top:gn,bottom:gl})}if(fn<20){if(gm.wheelStartX==null){gm.wheelStartX=gp.scrollLeft;gm.wheelStartY=gp.scrollTop;gm.wheelDX=gu;gm.wheelDY=gt;setTimeout(function(){if(gm.wheelStartX==null){return}var gv=gp.scrollLeft-gm.wheelStartX;var gx=gp.scrollTop-gm.wheelStartY;var gw=(gx&&gm.wheelDY&&gx/gm.wheelDY)||(gv&&gm.wheelDX&&gv/gm.wheelDX);gm.wheelStartX=gm.wheelStartY=null;if(!gw){return}ch=(ch*fn+gw)/(fn+1);++fn},200)}else{gm.wheelDX+=gu;gm.wheelDY+=gt}}}function fS(gj,gm,gi){if(typeof gm=="string"){gm=eE[gm];if(!gm){return false}}gj.display.input.ensurePolled();var gl=gj.display.shift,gk=false;try{if(aj(gj)){gj.state.suppressEdits=true}if(gi){gj.display.shift=false}gk=gm(gj)!=cb}finally{gj.display.shift=gl;gj.state.suppressEdits=false}return gk}function eb(gj,gk,gm){for(var gl=0;gl<gj.state.keyMaps.length;gl++){var gi=i(gk,gj.state.keyMaps[gl],gm,gj);if(gi){return gi}}return(gj.options.extraKeys&&i(gk,gj.options.extraKeys,gm,gj))||i(gk,gj.options.keyMap,gm,gj)}var dN=new gh;function be(gj,gl,gn,gm){var gk=gj.state.keySeq;if(gk){if(eD(gl)){return"handled"}dN.set(50,function(){if(gj.state.keySeq==gk){gj.state.keySeq=null;gj.display.input.reset()}});gl=gk+" "+gl}var gi=eb(gj,gl,gm);if(gi=="multi"){gj.state.keySeq=gl}if(gi=="handled"){ae(gj,"keyHandled",gj,gl,gn)}if(gi=="handled"||gi=="multi"){cH(gn);o(gj)}if(gk&&!gi&&/\'$/.test(gl)){cH(gn);return true}return !!gi}function fk(gi,gk){var gj=fs(gk,true);if(!gj){return false}if(gk.shiftKey&&!gi.state.keySeq){return be(gi,"Shift-"+gj,gk,function(gl){return fS(gi,gl,true)})||be(gi,gj,gk,function(gl){if(typeof gl=="string"?/^go[A-Z]/.test(gl):gl.motion){return fS(gi,gl)}})}else{return be(gi,gj,gk,function(gl){return fS(gi,gl)})}}function ek(gi,gk,gj){return be(gi,"'"+gj+"'",gk,function(gl){return fS(gi,gl,true)})}var dn=null;function p(gl){var gi=this;gi.curOp.focus=dP();if(aR(gi,gl)){return}if(dL&&k<11&&gl.keyCode==27){gl.returnValue=false}var gj=gl.keyCode;gi.display.shift=gj==16||gl.shiftKey;var gk=fk(gi,gl);if(d4){dn=gk?gj:null;if(!gk&&gj==88&&!db&&(b8?gl.metaKey:gl.ctrlKey)){gi.replaceSelection("",null,"cut")}}if(gj==18&&!/\bCodeMirror-crosshair\b/.test(gi.display.lineDiv.className)){av(gi)}}function av(gj){var gk=gj.display.lineDiv;fB(gk,"CodeMirror-crosshair");function gi(gl){if(gl.keyCode==18||!gl.altKey){f(gk,"CodeMirror-crosshair");ee(document,"keyup",gi);ee(document,"mouseover",gi)}}bY(document,"keyup",gi);bY(document,"mouseover",gi)}function bj(gi){if(gi.keyCode==16){this.doc.sel.shift=false}aR(this,gi)}function cy(gm){var gi=this;if(bc(gi.display,gm)||aR(gi,gm)||gm.ctrlKey&&!gm.altKey||b8&&gm.metaKey){return}var gl=gm.keyCode,gj=gm.charCode;if(d4&&gl==dn){dn=null;cH(gm);return}if((d4&&(!gm.which||gm.which<10))&&fk(gi,gm)){return}var gk=String.fromCharCode(gj==null?gl:gj);if(ek(gi,gm,gk)){return}gi.display.input.onKeyPress(gm)}function al(gi){gi.state.delayingBlurEvent=true;setTimeout(function(){if(gi.state.delayingBlurEvent){gi.state.delayingBlurEvent=false;aV(gi)}},100)}function cC(gi){if(gi.state.delayingBlurEvent){gi.state.delayingBlurEvent=false}if(gi.options.readOnly=="nocursor"){return}if(!gi.state.focused){aE(gi,"focus",gi);gi.state.focused=true;fB(gi.display.wrapper,"CodeMirror-focused");if(!gi.curOp&&gi.display.selForContextMenu!=gi.doc.sel){gi.display.input.reset();if(c1){setTimeout(function(){gi.display.input.reset(true)},20)}}gi.display.input.receivedFocus()}o(gi)}function aV(gi){if(gi.state.delayingBlurEvent){return}if(gi.state.focused){aE(gi,"blur",gi);gi.state.focused=false;f(gi.display.wrapper,"CodeMirror-focused")}clearInterval(gi.display.blinker);setTimeout(function(){if(!gi.state.focused){gi.display.shift=false}},150)}function ay(gi,gj){if(bc(gi.display,gj)||dh(gi,gj)){return}gi.display.input.onContextMenu(gj)}function dh(gi,gj){if(!fj(gi,"gutterContextMenu")){return false}return gg(gi,gj,"gutterContextMenu",false,aE)}var cY=H.changeEnd=function(gi){if(!gi.text){return gi.to}return W(gi.from.line+gi.text.length-1,fH(gi.text).length+(gi.text.length==1?gi.from.ch:0))};function b0(gl,gk){if(cg(gl,gk.from)<0){return gl}if(cg(gl,gk.to)<=0){return cY(gk)}var gi=gl.line+gk.text.length-(gk.to.line-gk.from.line)-1,gj=gl.ch;if(gl.line==gk.to.line){gj+=cY(gk).ch-gk.to.ch}return W(gi,gj)}function fl(gl,gm){var gj=[];for(var gk=0;gk<gl.sel.ranges.length;gk++){var gi=gl.sel.ranges[gk];gj.push(new dZ(b0(gi.anchor,gm),b0(gi.head,gm)))}return cx(gj,gl.sel.primIndex)}function bv(gk,gj,gi){if(gk.line==gj.line){return W(gi.line,gk.ch-gj.ch+gi.ch)}else{return W(gi.line+(gk.line-gj.line),gk.ch)}}function af(gs,gp,gj){var gk=[];var gi=W(gs.first,0),gt=gi;for(var gm=0;gm<gp.length;gm++){var go=gp[gm];var gr=bv(go.from,gi,gt);var gq=bv(cY(go),gi,gt);gi=go.to;gt=gq;if(gj=="around"){var gn=gs.sel.ranges[gm],gl=cg(gn.head,gn.anchor)<0;gk[gm]=new dZ(gl?gq:gr,gl?gr:gq)}else{gk[gm]=new dZ(gr,gr)}}return new f4(gk,gs.sel.primIndex)}function dS(gj,gl,gk){var gi={canceled:false,from:gl.from,to:gl.to,text:gl.text,origin:gl.origin,cancel:function(){this.canceled=true}};if(gk){gi.update=function(gp,go,gn,gm){if(gp){this.from=fK(gj,gp)}if(go){this.to=fK(gj,go)}if(gn){this.text=gn}if(gm!==undefined){this.origin=gm}}}aE(gj,"beforeChange",gj,gi);if(gj.cm){aE(gj.cm,"beforeChange",gj.cm,gi)}if(gi.canceled){return null}return{from:gi.from,to:gi.to,text:gi.text,origin:gi.origin}}function bh(gl,gm,gk){if(gl.cm){if(!gl.cm.curOp){return c3(gl.cm,bh)(gl,gm,gk)}if(gl.cm.state.suppressEdits){return}}if(fj(gl,"beforeChange")||gl.cm&&fj(gl.cm,"beforeChange")){gm=dS(gl,gm,true);if(!gm){return}}var gj=gd&&!gk&&cI(gl,gm.from,gm.to);if(gj){for(var gi=gj.length-1;gi>=0;--gi){K(gl,{from:gj[gi].from,to:gj[gi].to,text:gi?[""]:gm.text})}}else{K(gl,gm)}}function K(gk,gl){if(gl.text.length==1&&gl.text[0]==""&&cg(gl.from,gl.to)==0){return}var gj=fl(gk,gl);fN(gk,gl,gj,gk.cm?gk.cm.curOp.id:NaN);ef(gk,gl,gj,el(gk,gl));var gi=[];d8(gk,function(gn,gm){if(!gm&&di(gi,gn.history)==-1){dF(gn.history,gl);gi.push(gn.history)}ef(gn,gl,null,el(gn,gl))})}function b9(gt,gr,gv){if(gt.cm&&gt.cm.state.suppressEdits){return}var gq=gt.history,gk,gm=gt.sel;var gi=gr=="undo"?gq.done:gq.undone,gu=gr=="undo"?gq.undone:gq.done;for(var gn=0;gn<gi.length;gn++){gk=gi[gn];if(gv?gk.ranges&&!gk.equals(gt.sel):!gk.ranges){break}}if(gn==gi.length){return}gq.lastOrigin=gq.lastSelOrigin=null;for(;;){gk=gi.pop();if(gk.ranges){cO(gk,gu);if(gv&&!gk.equals(gt.sel)){bV(gt,gk,{clearRedo:false});return}gm=gk}else{break}}var gp=[];cO(gm,gu);gu.push({changes:gp,generation:gq.generation});gq.generation=gk.generation||++gq.maxGeneration;var gl=fj(gt,"beforeChange")||gt.cm&&fj(gt.cm,"beforeChange");for(var gn=gk.changes.length-1;gn>=0;--gn){var gs=gk.changes[gn];gs.origin=gr;if(gl&&!dS(gt,gs,false)){gi.length=0;return}gp.push(dv(gt,gs));var gj=gn?fl(gt,gs):fH(gi);ef(gt,gs,gj,ea(gt,gs));if(!gn&&gt.cm){gt.cm.scrollIntoView({from:gs.from,to:cY(gs)})}var go=[];d8(gt,function(gx,gw){if(!gw&&di(go,gx.history)==-1){dF(gx.history,gs);go.push(gx.history)}ef(gx,gs,null,ea(gx,gs))})}}function fo(gj,gl){if(gl==0){return}gj.first+=gl;gj.sel=new f4(bT(gj.sel.ranges,function(gm){return new dZ(W(gm.anchor.line+gl,gm.anchor.ch),W(gm.head.line+gl,gm.head.ch))}),gj.sel.primIndex);if(gj.cm){ah(gj.cm,gj.first,gj.first-gl,gl);for(var gk=gj.cm.display,gi=gk.viewFrom;gi<gk.viewTo;gi++){R(gj.cm,gi,"gutter")}}}function ef(gm,gn,gl,gj){if(gm.cm&&!gm.cm.curOp){return c3(gm.cm,ef)(gm,gn,gl,gj)}if(gn.to.line<gm.first){fo(gm,gn.text.length-1-(gn.to.line-gn.from.line));return}if(gn.from.line>gm.lastLine()){return}if(gn.from.line<gm.first){var gi=gn.text.length-1-(gm.first-gn.from.line);fo(gm,gi);gn={from:W(gm.first,0),to:W(gn.to.line+gi,gn.to.ch),text:[fH(gn.text)],origin:gn.origin}}var gk=gm.lastLine();if(gn.to.line>gk){gn={from:gn.from,to:W(gk,fg(gm,gk).text.length),text:[gn.text[0]],origin:gn.origin}}gn.removed=f5(gm,gn.from,gn.to);if(!gl){gl=fl(gm,gn)}if(gm.cm){aJ(gm.cm,gn,gj)}else{fz(gm,gn,gj)}eq(gm,gl,Z)}function aJ(gt,gp,gn){var gs=gt.doc,go=gt.display,gq=gp.from,gr=gp.to;var gi=false,gm=gq.line;if(!gt.options.lineWrapping){gm=bO(y(fg(gs,gq.line)));gs.iter(gm,gr.line+1,function(gv){if(gv==go.maxLine){gi=true;return true}})}if(gs.sel.contains(gp.from,gp.to)>-1){V(gt)}fz(gs,gp,gn,bf(gt));if(!gt.options.lineWrapping){gs.iter(gm,gq.line+gp.text.length,function(gw){var gv=eo(gw);if(gv>go.maxLineLength){go.maxLine=gw;go.maxLineLength=gv;go.maxLineChanged=true;gi=false}});if(gi){gt.curOp.updateMaxLine=true}}gs.frontier=Math.min(gs.frontier,gq.line);eg(gt,400);var gu=gp.text.length-(gr.line-gq.line)-1;if(gp.full){ah(gt)}else{if(gq.line==gr.line&&gp.text.length==1&&!dT(gt.doc,gp)){R(gt,gq.line,"text")}else{ah(gt,gq.line,gr.line+1,gu)}}var gk=fj(gt,"changes"),gl=fj(gt,"change");if(gl||gk){var gj={from:gq,to:gr,text:gp.text,removed:gp.removed,origin:gp.origin};if(gl){ae(gt,"change",gt,gj)}if(gk){(gt.curOp.changeObjs||(gt.curOp.changeObjs=[])).push(gj)}}gt.display.selForContextMenu=null}function a2(gl,gk,gn,gm,gi){if(!gm){gm=gn}if(cg(gm,gn)<0){var gj=gm;gm=gn;gn=gj}if(typeof gk=="string"){gk=a1(gk)}bh(gl,{from:gn,to:gm,text:gk,origin:gi})}function d7(gj,gm){if(aR(gj,"scrollCursorIntoView")){return}var gn=gj.display,gk=gn.sizer.getBoundingClientRect(),gi=null;if(gm.top+gk.top<0){gi=true}else{if(gm.bottom+gk.top>(window.innerHeight||document.documentElement.clientHeight)){gi=false}}if(gi!=null&&!fv){var gl=f3("div","\u200b",null,"position: absolute; top: "+(gm.top-gn.viewOffset-e9(gj.display))+"px; height: "+(gm.bottom-gm.top+cU(gj)+gn.barHeight)+"px; left: "+gm.left+"px; width: 2px;");gj.display.lineSpace.appendChild(gl);gl.scrollIntoView(gi);gj.display.lineSpace.removeChild(gl)}}function D(gs,gq,gm,gl){if(gl==null){gl=0}for(var gn=0;gn<5;gn++){var go=false,gr=dV(gs,gq);var gi=!gm||gm==gq?gr:dV(gs,gm);var gk=G(gs,Math.min(gr.left,gi.left),Math.min(gr.top,gi.top)-gl,Math.max(gr.left,gi.left),Math.max(gr.bottom,gi.bottom)+gl);var gp=gs.doc.scrollTop,gj=gs.doc.scrollLeft;if(gk.scrollTop!=null){N(gs,gk.scrollTop);if(Math.abs(gs.doc.scrollTop-gp)>1){go=true}}if(gk.scrollLeft!=null){bF(gs,gk.scrollLeft);if(Math.abs(gs.doc.scrollLeft-gj)>1){go=true}}if(!go){break}}return gr}function E(gi,gk,gm,gj,gl){var gn=G(gi,gk,gm,gj,gl);if(gn.scrollTop!=null){N(gi,gn.scrollTop)}if(gn.scrollLeft!=null){bF(gi,gn.scrollLeft)}}function G(gu,gl,gt,gj,gs){var gq=gu.display,go=aY(gu.display);if(gt<0){gt=0}var gm=gu.curOp&&gu.curOp.scrollTop!=null?gu.curOp.scrollTop:gq.scroller.scrollTop;var gw=cW(gu),gy={};if(gs-gt>gw){gs=gt+gw}var gk=gu.doc.height+bJ(gq);var gi=gt<go,gp=gs>gk-go;if(gt<gm){gy.scrollTop=gi?0:gt}else{if(gs>gm+gw){var gr=Math.min(gt,(gp?gk:gs)-gw);if(gr!=gm){gy.scrollTop=gr}}}var gx=gu.curOp&&gu.curOp.scrollLeft!=null?gu.curOp.scrollLeft:gq.scroller.scrollLeft;var gv=dm(gu)-(gu.options.fixedGutter?gq.gutters.offsetWidth:0);var gn=gj-gl>gv;if(gn){gj=gl+gv}if(gl<10){gy.scrollLeft=0}else{if(gl<gx){gy.scrollLeft=Math.max(0,gl-(gn?0:10))}else{if(gj>gv+gx-3){gy.scrollLeft=gj+(gn?0:10)-gv}}}return gy}function cM(gi,gk,gj){if(gk!=null||gj!=null){fD(gi)}if(gk!=null){gi.curOp.scrollLeft=(gi.curOp.scrollLeft==null?gi.doc.scrollLeft:gi.curOp.scrollLeft)+gk}if(gj!=null){gi.curOp.scrollTop=(gi.curOp.scrollTop==null?gi.doc.scrollTop:gi.curOp.scrollTop)+gj}}function fG(gi){fD(gi);var gj=gi.getCursor(),gl=gj,gk=gj;if(!gi.options.lineWrapping){gl=gj.ch?W(gj.line,gj.ch-1):gj;gk=W(gj.line,gj.ch+1)}gi.curOp.scrollToPos={from:gl,to:gk,margin:gi.options.cursorScrollMargin,isCursor:true}}function fD(gi){var gk=gi.curOp.scrollToPos;if(gk){gi.curOp.scrollToPos=null;var gm=dI(gi,gk.from),gl=dI(gi,gk.to);var gj=G(gi,Math.min(gm.left,gl.left),Math.min(gm.top,gl.top)-gk.margin,Math.max(gm.right,gl.right),Math.max(gm.bottom,gl.bottom)+gk.margin);gi.scrollTo(gj.scrollLeft,gj.scrollTop)}}function ad(gv,gl,gu,gk){var gt=gv.doc,gj;if(gu==null){gu="add"}if(gu=="smart"){if(!gt.mode.indent){gu="prev"}else{gj=dD(gv,gl)}}var gp=gv.options.tabSize;var gw=fg(gt,gl),go=bU(gw.text,null,gp);if(gw.stateAfter){gw.stateAfter=null}var gi=gw.text.match(/^\s*/)[0],gr;if(!gk&&!/\S/.test(gw.text)){gr=0;gu="not"}else{if(gu=="smart"){gr=gt.mode.indent(gj,gw.text.slice(gi.length),gw.text);if(gr==cb||gr>150){if(!gk){return}gu="prev"}}}if(gu=="prev"){if(gl>gt.first){gr=bU(fg(gt,gl-1).text,null,gp)}else{gr=0}}else{if(gu=="add"){gr=go+gv.options.indentUnit}else{if(gu=="subtract"){gr=go-gv.options.indentUnit}else{if(typeof gu=="number"){gr=go+gu}}}}gr=Math.max(0,gr);var gs="",gq=0;if(gv.options.indentWithTabs){for(var gm=Math.floor(gr/gp);gm;--gm){gq+=gp;gs+="\t"}}if(gq<gr){gs+=cq(gr-gq)}if(gs!=gi){a2(gt,gs,W(gl,0),W(gl,gi.length),"+input");gw.stateAfter=null;return true}else{for(var gm=0;gm<gt.sel.ranges.length;gm++){var gn=gt.sel.ranges[gm];if(gn.head.line==gl&&gn.head.ch<gi.length){var gq=W(gl,gi.length);e(gt,gm,new dZ(gq,gq));break}}}}function eA(gl,gk,gi,gn){var gm=gk,gj=gk;if(typeof gk=="number"){gj=fg(gl,c6(gl,gk))}else{gm=bO(gk)}if(gm==null){return null}if(gn(gj,gm)&&gl.cm){R(gl.cm,gm,gi)}return gj}function eY(gi,go){var gj=gi.doc.sel.ranges,gm=[];for(var gl=0;gl<gj.length;gl++){var gk=go(gj[gl]);while(gm.length&&cg(gk.from,fH(gm).to)<=0){var gn=gm.pop();if(cg(gn.from,gk.from)<0){gk.from=gn.from;break}}gm.push(gk)}cN(gi,function(){for(var gp=gm.length-1;gp>=0;gp--){a2(gi.doc,"",gm[gp].from,gm[gp].to,"+delete")}fG(gi)})}function bx(gA,gm,gu,gt,go){var gr=gm.line,gs=gm.ch,gz=gu;var gj=fg(gA,gr);var gx=true;function gy(){var gB=gr+gu;if(gB<gA.first||gB>=gA.first+gA.size){return(gx=false)}gr=gB;return gj=fg(gA,gB)}function gw(gC){var gB=(go?u:ai)(gj,gs,gu,true);if(gB==null){if(!gC&&gy()){if(go){gs=(gu<0?cT:cF)(gj)}else{gs=gu<0?gj.text.length:0}}else{return(gx=false)}}else{gs=gB}return true}if(gt=="char"){gw()}else{if(gt=="column"){gw(true)}else{if(gt=="word"||gt=="group"){var gv=null,gp=gt=="group";var gi=gA.cm&&gA.cm.getHelper(gm,"wordChars");for(var gn=true;;gn=false){if(gu<0&&!gw(!gn)){break}var gk=gj.text.charAt(gs)||"\n";var gl=cB(gk,gi)?"w":gp&&gk=="\n"?"n":!gp||/\s/.test(gk)?null:"p";if(gp&&!gn&&!gl){gl="s"}if(gv&&gv!=gl){if(gu<0){gu=1;gw()}break}if(gl){gv=gl}if(gu>0&&!gw(!gn)){break}}}}}var gq=bW(gA,W(gr,gs),gz,true);if(!gx){gq.hitSide=true}return gq}function br(gq,gl,gi,gp){var go=gq.doc,gn=gl.left,gm;if(gp=="page"){var gk=Math.min(gq.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight);gm=gl.top+gi*(gk-(gi<0?1.5:0.5)*aY(gq.display))}else{if(gp=="line"){gm=gi>0?gl.bottom+3:gl.top-3}}for(;;){var gj=fP(gq,gn,gm);if(!gj.outside){break}if(gi<0?gm<=0:gm>=go.height){gj.hitSide=true;break}gm+=gi*5}return gj}H.prototype={constructor:H,focus:function(){window.focus();this.display.input.focus()},setOption:function(gk,gl){var gj=this.options,gi=gj[gk];if(gj[gk]==gl&&gk!="mode"){return}gj[gk]=gl;if(bg.hasOwnProperty(gk)){c3(this,bg[gk])(this,gl,gi)}},getOption:function(gi){return this.options[gi]},getDoc:function(){return this.doc},addKeyMap:function(gj,gi){this.state.keyMaps[gi?"push":"unshift"](fY(gj))},removeKeyMap:function(gj){var gk=this.state.keyMaps;for(var gi=0;gi<gk.length;++gi){if(gk[gi]==gj||gk[gi].name==gj){gk.splice(gi,1);return true}}},addOverlay:c9(function(gi,gj){var gk=gi.token?gi:H.getMode(this.options,gi);if(gk.startState){throw new Error("Overlays may not be stateful.")}this.state.overlays.push({mode:gk,modeSpec:gi,opaque:gj&&gj.opaque});this.state.modeGen++;ah(this)}),removeOverlay:c9(function(gi){var gk=this.state.overlays;for(var gj=0;gj<gk.length;++gj){var gl=gk[gj].modeSpec;if(gl==gi||typeof gi=="string"&&gl.name==gi){gk.splice(gj,1);this.state.modeGen++;ah(this);return}}}),indentLine:c9(function(gk,gi,gj){if(typeof gi!="string"&&typeof gi!="number"){if(gi==null){gi=this.options.smartIndent?"smart":"prev"}else{gi=gi?"add":"subtract"}}if(ca(this.doc,gk)){ad(this,gk,gi,gj)}}),indentSelection:c9(function(gr){var gi=this.doc.sel.ranges,gl=-1;for(var gn=0;gn<gi.length;gn++){var go=gi[gn];if(!go.empty()){var gp=go.from(),gq=go.to();var gj=Math.max(gl,gp.line);gl=Math.min(this.lastLine(),gq.line-(gq.ch?0:1))+1;for(var gm=gj;gm<gl;++gm){ad(this,gm,gr)}var gk=this.doc.sel.ranges;if(gp.ch==0&&gi.length==gk.length&&gk[gn].from().ch>0){e(this.doc,gn,new dZ(gp,gk[gn].to()),Z)}}else{if(go.head.line>gl){ad(this,go.head.line,gr,true);gl=go.head.line;if(gn==this.doc.sel.primIndex){fG(this)}}}}}),getTokenAt:function(gj,gi){return cr(this,gj,gi)},getLineTokens:function(gj,gi){return cr(this,W(gj),gi,true)},getTokenTypeAt:function(gp){gp=fK(this.doc,gp);var gl=c7(this,fg(this.doc,gp.line));var gn=0,go=(gl.length-1)/2,gk=gp.ch;var gj;if(gk==0){gj=gl[2]}else{for(;;){var gi=(gn+go)>>1;if((gi?gl[gi*2-1]:0)>=gk){go=gi}else{if(gl[gi*2+1]<gk){gn=gi+1}else{gj=gl[gi*2+2];break}}}}var gm=gj?gj.indexOf("cm-overlay "):-1;return gm<0?gj:gm==0?null:gj.slice(0,gm-1)},getModeAt:function(gj){var gi=this.doc.mode;if(!gi.innerMode){return gi}return H.innerMode(gi,this.getTokenAt(gj).state).mode},getHelper:function(gj,gi){return this.getHelpers(gj,gi)[0]},getHelpers:function(gp,gk){var gl=[];if(!fp.hasOwnProperty(gk)){return gl}var gi=fp[gk],go=this.getModeAt(gp);if(typeof go[gk]=="string"){if(gi[go[gk]]){gl.push(gi[go[gk]])}}else{if(go[gk]){for(var gj=0;gj<go[gk].length;gj++){var gn=gi[go[gk][gj]];if(gn){gl.push(gn)}}}else{if(go.helperType&&gi[go.helperType]){gl.push(gi[go.helperType])}else{if(gi[go.name]){gl.push(gi[go.name])}}}}for(var gj=0;gj<gi._global.length;gj++){var gm=gi._global[gj];if(gm.pred(go,this)&&di(gl,gm.val)==-1){gl.push(gm.val)}}return gl},getStateAfter:function(gj,gi){var gk=this.doc;gj=c6(gk,gj==null?gk.first+gk.size-1:gj);return dD(this,gj+1,gi)},cursorCoords:function(gl,gj){var gk,gi=this.doc.sel.primary();if(gl==null){gk=gi.head}else{if(typeof gl=="object"){gk=fK(this.doc,gl)}else{gk=gl?gi.from():gi.to()}}return dV(this,gk,gj||"page")},charCoords:function(gj,gi){return cK(this,fK(this.doc,gj),gi||"page")},coordsChar:function(gi,gj){gi=gf(this,gi,gj||"page");return fP(this,gi.left,gi.top)},lineAtHeight:function(gi,gj){gi=gf(this,{top:gi,left:0},gj||"page").top;return bH(this.doc,gi+this.display.viewOffset)},heightAtLine:function(gj,gm){var gi=false,gk;if(typeof gj=="number"){var gl=this.doc.first+this.doc.size-1;if(gj<this.doc.first){gj=this.doc.first}else{if(gj>gl){gj=gl;gi=true}}gk=fg(this.doc,gj)}else{gk=gj}return eR(this,gk,{top:0,left:0},gm||"page").top+(gi?this.doc.height-bN(gk):0)},defaultTextHeight:function(){return aY(this.display)},defaultCharWidth:function(){return dE(this.display)},setGutterMarker:c9(function(gi,gj,gk){return eA(this.doc,gi,"gutter",function(gl){var gm=gl.gutterMarkers||(gl.gutterMarkers={});gm[gj]=gk;if(!gk&&eV(gm)){gl.gutterMarkers=null}return true})}),clearGutter:c9(function(gk){var gi=this,gl=gi.doc,gj=gl.first;gl.iter(function(gm){if(gm.gutterMarkers&&gm.gutterMarkers[gk]){gm.gutterMarkers[gk]=null;R(gi,gj,"gutter");if(eV(gm.gutterMarkers)){gm.gutterMarkers=null}}++gj})}),lineInfo:function(gi){if(typeof gi=="number"){if(!ca(this.doc,gi)){return null}var gj=gi;gi=fg(this.doc,gi);if(!gi){return null}}else{var gj=bO(gi);if(gj==null){return null}}return{line:gj,handle:gi,text:gi.text,gutterMarkers:gi.gutterMarkers,textClass:gi.textClass,bgClass:gi.bgClass,wrapClass:gi.wrapClass,widgets:gi.widgets}},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(gn,gk,gp,gl,gr){var gm=this.display;gn=dV(this,fK(this.doc,gn));var go=gn.bottom,gj=gn.left;gk.style.position="absolute";gk.setAttribute("cm-ignore-events","true");this.display.input.setUneditable(gk);gm.sizer.appendChild(gk);if(gl=="over"){go=gn.top}else{if(gl=="above"||gl=="near"){var gi=Math.max(gm.wrapper.clientHeight,this.doc.height),gq=Math.max(gm.sizer.clientWidth,gm.lineSpace.clientWidth);if((gl=="above"||gn.bottom+gk.offsetHeight>gi)&&gn.top>gk.offsetHeight){go=gn.top-gk.offsetHeight}else{if(gn.bottom+gk.offsetHeight<=gi){go=gn.bottom}}if(gj+gk.offsetWidth>gq){gj=gq-gk.offsetWidth}}}gk.style.top=go+"px";gk.style.left=gk.style.right="";if(gr=="right"){gj=gm.sizer.clientWidth-gk.offsetWidth;gk.style.right="0px"}else{if(gr=="left"){gj=0}else{if(gr=="middle"){gj=(gm.sizer.clientWidth-gk.offsetWidth)/2}}gk.style.left=gj+"px"}if(gp){E(this,gj,go,gj+gk.offsetWidth,go+gk.offsetHeight)}},triggerOnKeyDown:c9(p),triggerOnKeyPress:c9(cy),triggerOnKeyUp:bj,execCommand:function(gi){if(eE.hasOwnProperty(gi)){return eE[gi](this)}},triggerElectric:c9(function(gi){fW(this,gi)}),findPosH:function(go,gl,gm,gj){var gi=1;if(gl<0){gi=-1;gl=-gl}for(var gk=0,gn=fK(this.doc,go);gk<gl;++gk){gn=bx(this.doc,gn,gi,gm,gj);if(gn.hitSide){break}}return gn},moveH:c9(function(gj,gk){var gi=this;gi.extendSelectionsBy(function(gl){if(gi.display.shift||gi.doc.extend||gl.empty()){return bx(gi.doc,gl.head,gj,gk,gi.options.rtlMoveVisually)}else{return gj<0?gl.from():gl.to()}},cX)}),deleteH:c9(function(gi,gj){var gk=this.doc.sel,gl=this.doc;if(gk.somethingSelected()){gl.replaceSelection("",null,"+delete")}else{eY(this,function(gn){var gm=bx(gl,gn.head,gi,gj,false);return gi<0?{from:gm,to:gn.head}:{from:gn.head,to:gm}})}}),findPosV:function(gn,gk,go,gq){var gi=1,gm=gq;if(gk<0){gi=-1;gk=-gk}for(var gj=0,gp=fK(this.doc,gn);gj<gk;++gj){var gl=dV(this,gp,"div");if(gm==null){gm=gl.left}else{gl.left=gm}gp=br(this,gl,gi,go);if(gp.hitSide){break}}return gp},moveV:c9(function(gj,gl){var gi=this,gn=this.doc,gm=[];var go=!gi.display.shift&&!gn.extend&&gn.sel.somethingSelected();gn.extendSelectionsBy(function(gp){if(go){return gj<0?gp.from():gp.to()}var gr=dV(gi,gp.head,"div");if(gp.goalColumn!=null){gr.left=gp.goalColumn}gm.push(gr.left);var gq=br(gi,gr,gj,gl);if(gl=="page"&&gp==gn.sel.primary()){cM(gi,null,cK(gi,gq,"div").top-gr.top)}return gq},cX);if(gm.length){for(var gk=0;gk<gn.sel.ranges.length;gk++){gn.sel.ranges[gk].goalColumn=gm[gk]}}}),findWordAt:function(gp){var gn=this.doc,gl=fg(gn,gp.line).text;var go=gp.ch,gk=gp.ch;if(gl){var gm=this.getHelper(gp,"wordChars");if((gp.xRel<0||gk==gl.length)&&go){--go}else{++gk}var gj=gl.charAt(go);var gi=cB(gj,gm)?function(gq){return cB(gq,gm)}:/\s/.test(gj)?function(gq){return/\s/.test(gq)}:function(gq){return !/\s/.test(gq)&&!cB(gq)};while(go>0&&gi(gl.charAt(go-1))){--go}while(gk<gl.length&&gi(gl.charAt(gk))){++gk}}return new dZ(W(gp.line,go),W(gp.line,gk))},toggleOverwrite:function(gi){if(gi!=null&&gi==this.state.overwrite){return}if(this.state.overwrite=!this.state.overwrite){fB(this.display.cursorDiv,"CodeMirror-overwrite")}else{f(this.display.cursorDiv,"CodeMirror-overwrite")}aE(this,"overwriteToggle",this,this.state.overwrite)},hasFocus:function(){return this.display.input.getField()==dP()},scrollTo:c9(function(gi,gj){if(gi!=null||gj!=null){fD(this)}if(gi!=null){this.curOp.scrollLeft=gi}if(gj!=null){this.curOp.scrollTop=gj}}),getScrollInfo:function(){var gi=this.display.scroller;return{left:gi.scrollLeft,top:gi.scrollTop,height:gi.scrollHeight-cU(this)-this.display.barHeight,width:gi.scrollWidth-cU(this)-this.display.barWidth,clientHeight:cW(this),clientWidth:dm(this)}},scrollIntoView:c9(function(gj,gk){if(gj==null){gj={from:this.doc.sel.primary().head,to:null};if(gk==null){gk=this.options.cursorScrollMargin}}else{if(typeof gj=="number"){gj={from:W(gj,0),to:null}}else{if(gj.from==null){gj={from:gj,to:null}}}}if(!gj.to){gj.to=gj.from}gj.margin=gk||0;if(gj.from.line!=null){fD(this);this.curOp.scrollToPos=gj}else{var gi=G(this,Math.min(gj.from.left,gj.to.left),Math.min(gj.from.top,gj.to.top)-gj.margin,Math.max(gj.from.right,gj.to.right),Math.max(gj.from.bottom,gj.to.bottom)+gj.margin);this.scrollTo(gi.scrollLeft,gi.scrollTop)}}),setSize:c9(function(gl,gj){var gi=this;function gk(gn){return typeof gn=="number"||/^\d+$/.test(String(gn))?gn+"px":gn}if(gl!=null){gi.display.wrapper.style.width=gk(gl)}if(gj!=null){gi.display.wrapper.style.height=gk(gj)}if(gi.options.lineWrapping){aO(this)}var gm=gi.display.viewFrom;gi.doc.iter(gm,gi.display.viewTo,function(gn){if(gn.widgets){for(var go=0;go<gn.widgets.length;go++){if(gn.widgets[go].noHScroll){R(gi,gm,"widget");break}}}++gm});gi.curOp.forceUpdate=true;aE(gi,"refresh",this)}),operation:function(gi){return cN(this,gi)},refresh:c9(function(){var gi=this.display.cachedTextHeight;ah(this);this.curOp.forceUpdate=true;ak(this);this.scrollTo(this.doc.scrollLeft,this.doc.scrollTop);c5(this);if(gi==null||Math.abs(gi-aY(this.display))>0.5){X(this)}aE(this,"refresh",this)}),swapDoc:c9(function(gj){var gi=this.doc;gi.cm=null;ec(this,gj);ak(this);this.display.input.reset();this.scrollTo(gj.scrollLeft,gj.scrollTop);this.curOp.forceScroll=true;ae(this,"swapDoc",this,gi);return gi}),getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}};bz(H);var e4=H.defaults={};var bg=H.optionHandlers={};function s(gi,gl,gk,gj){H.defaults[gi]=gl;if(gk){bg[gi]=gj?function(gm,go,gn){if(gn!=cd){gk(gm,go,gn)}}:gk}}var cd=H.Init={toString:function(){return"CodeMirror.Init"}};s("value","",function(gi,gj){gi.setValue(gj)},true);s("mode",null,function(gi,gj){gi.doc.modeOption=gj;bs(gi)},true);s("indentUnit",2,bs,true);s("indentWithTabs",false);s("smartIndent",true);s("tabSize",4,function(gi){em(gi);ak(gi);ah(gi)},true);s("specialChars",/[\t\u0000-\u0019\u00ad\u200b-\u200f\u2028\u2029\ufeff]/g,function(gi,gk,gj){gi.state.specialChars=new RegExp(gk.source+(gk.test("\t")?"":"|\t"),"g");if(gj!=H.Init){gi.refresh()}});s("specialCharPlaceholder",fd,function(gi){gi.refresh()},true);s("electricChars",true);s("inputStyle",eh?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},true);s("rtlMoveVisually",!aP);s("wholeLineUpdateBefore",true);s("theme","default",function(gi){cP(gi);dx(gi)},true);s("keyMap","default",function(gi,gm,gj){var gk=fY(gm);var gl=gj!=H.Init&&fY(gj);if(gl&&gl.detach){gl.detach(gi,gk)}if(gk.attach){gk.attach(gi,gl||null)}});s("extraKeys",null);s("lineWrapping",false,eH,true);s("gutters",[],function(gi){cf(gi.options);dx(gi)},true);s("fixedGutter",true,function(gi,gj){gi.display.gutters.style.left=gj?dY(gi.display)+"px":"0";gi.refresh()},true);s("coverGutterNextToScrollbar",false,function(gi){eZ(gi)},true);s("scrollbarStyle","native",function(gi){aD(gi);eZ(gi);gi.display.scrollbars.setScrollTop(gi.doc.scrollTop);gi.display.scrollbars.setScrollLeft(gi.doc.scrollLeft)},true);s("lineNumbers",false,function(gi){cf(gi.options);dx(gi)},true);s("firstLineNumber",1,dx,true);s("lineNumberFormatter",function(gi){return gi},dx,true);s("showCursorWhenSelecting",false,bD,true);s("resetSelectionOnContextMenu",true);s("lineWiseCopyCut",true);s("readOnly",false,function(gi,gj){if(gj=="nocursor"){aV(gi);gi.display.input.blur();gi.display.disabled=true}else{gi.display.disabled=false;if(!gj){gi.display.input.reset()}}});s("disableInput",false,function(gi,gj){if(!gj){gi.display.input.reset()}},true);s("dragDrop",true,f1);s("cursorBlinkRate",530);s("cursorScrollMargin",0);s("cursorHeight",1,bD,true);s("singleCursorHeightPerLine",true,bD,true);s("workTime",100);s("workDelay",100);s("flattenSpans",true,em,true);s("addModeClass",false,em,true);s("pollInterval",100);s("undoDepth",200,function(gi,gj){gi.doc.history.undoDepth=gj});s("historyEventDelay",1250);s("viewportMargin",10,function(gi){gi.refresh()},true);s("maxHighlightLength",10000,em,true);s("moveInputWithCursor",true,function(gi,gj){if(!gj){gi.display.input.resetPosition()}});s("tabindex",null,function(gi,gj){gi.display.input.getField().tabIndex=gj||""});s("autofocus",null);var dt=H.modes={},aS=H.mimeModes={};H.defineMode=function(gi,gj){if(!H.defaults.mode&&gi!="null"){H.defaults.mode=gi}if(arguments.length>2){gj.dependencies=Array.prototype.slice.call(arguments,2)}dt[gi]=gj};H.defineMIME=function(gj,gi){aS[gj]=gi};H.resolveMode=function(gi){if(typeof gi=="string"&&aS.hasOwnProperty(gi)){gi=aS[gi]}else{if(gi&&typeof gi.name=="string"&&aS.hasOwnProperty(gi.name)){var gj=aS[gi.name];if(typeof gj=="string"){gj={name:gj}}gi=cl(gj,gi);gi.name=gj.name}else{if(typeof gi=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(gi)){return H.resolveMode("application/xml")}}}if(typeof gi=="string"){return{name:gi}}else{return gi||{name:"null"}}};H.getMode=function(gj,gi){var gi=H.resolveMode(gi);var gl=dt[gi.name];if(!gl){return H.getMode(gj,"text/plain")}var gm=gl(gj,gi);if(dq.hasOwnProperty(gi.name)){var gk=dq[gi.name];for(var gn in gk){if(!gk.hasOwnProperty(gn)){continue}if(gm.hasOwnProperty(gn)){gm["_"+gn]=gm[gn]}gm[gn]=gk[gn]}}gm.name=gi.name;if(gi.helperType){gm.helperType=gi.helperType}if(gi.modeProps){for(var gn in gi.modeProps){gm[gn]=gi.modeProps[gn]}}return gm};H.defineMode("null",function(){return{token:function(gi){gi.skipToEnd()}}});H.defineMIME("text/plain","null");var dq=H.modeExtensions={};H.extendMode=function(gk,gj){var gi=dq.hasOwnProperty(gk)?dq[gk]:(dq[gk]={});aN(gj,gi)};H.defineExtension=function(gi,gj){H.prototype[gi]=gj};H.defineDocExtension=function(gi,gj){at.prototype[gi]=gj};H.defineOption=s;var a9=[];H.defineInitHook=function(gi){a9.push(gi)};var fp=H.helpers={};H.registerHelper=function(gj,gi,gk){if(!fp.hasOwnProperty(gj)){fp[gj]=H[gj]={_global:[]}}fp[gj][gi]=gk};H.registerGlobalHelper=function(gk,gj,gi,gl){H.registerHelper(gk,gj,gl);fp[gk]._global.push({pred:gi,val:gl})};var b4=H.copyState=function(gl,gi){if(gi===true){return gi}if(gl.copyState){return gl.copyState(gi)}var gk={};for(var gm in gi){var gj=gi[gm];if(gj instanceof Array){gj=gj.concat([])}gk[gm]=gj}return gk};var b1=H.startState=function(gk,gj,gi){return gk.startState?gk.startState(gj,gi):true};H.innerMode=function(gk,gi){while(gk.innerMode){var gj=gk.innerMode(gi);if(!gj||gj.mode==gk){break}gi=gj.state;gk=gj.mode}return gj||{mode:gk,state:gi}};var eE=H.commands={selectAll:function(gi){gi.setSelection(W(gi.firstLine(),0),W(gi.lastLine()),Z)},singleSelection:function(gi){gi.setSelection(gi.getCursor("anchor"),gi.getCursor("head"),Z)},killLine:function(gi){eY(gi,function(gk){if(gk.empty()){var gj=fg(gi.doc,gk.head.line).text.length;if(gk.head.ch==gj&&gk.head.line<gi.lastLine()){return{from:gk.head,to:W(gk.head.line+1,0)}}else{return{from:gk.head,to:W(gk.head.line,gj)}}}else{return{from:gk.from(),to:gk.to()}}})},deleteLine:function(gi){eY(gi,function(gj){return{from:W(gj.from().line,0),to:fK(gi.doc,W(gj.to().line+1,0))}})},delLineLeft:function(gi){eY(gi,function(gj){return{from:W(gj.from().line,0),to:gj.from()}})},delWrappedLineLeft:function(gi){eY(gi,function(gj){var gl=gi.charCoords(gj.head,"div").top+5;var gk=gi.coordsChar({left:0,top:gl},"div");return{from:gk,to:gj.from()}})},delWrappedLineRight:function(gi){eY(gi,function(gj){var gl=gi.charCoords(gj.head,"div").top+5;var gk=gi.coordsChar({left:gi.display.lineDiv.offsetWidth+100,top:gl},"div");return{from:gj.from(),to:gk}})},undo:function(gi){gi.undo()},redo:function(gi){gi.redo()},undoSelection:function(gi){gi.undoSelection()},redoSelection:function(gi){gi.redoSelection()},goDocStart:function(gi){gi.extendSelection(W(gi.firstLine(),0))},goDocEnd:function(gi){gi.extendSelection(W(gi.lastLine()))},goLineStart:function(gi){gi.extendSelectionsBy(function(gj){return bu(gi,gj.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(gi){gi.extendSelectionsBy(function(gj){return dJ(gi,gj.head)},{origin:"+move",bias:1})},goLineEnd:function(gi){gi.extendSelectionsBy(function(gj){return dQ(gi,gj.head.line)},{origin:"+move",bias:-1})},goLineRight:function(gi){gi.extendSelectionsBy(function(gj){var gk=gi.charCoords(gj.head,"div").top+5;return gi.coordsChar({left:gi.display.lineDiv.offsetWidth+100,top:gk},"div")},cX)},goLineLeft:function(gi){gi.extendSelectionsBy(function(gj){var gk=gi.charCoords(gj.head,"div").top+5;return gi.coordsChar({left:0,top:gk},"div")},cX)},goLineLeftSmart:function(gi){gi.extendSelectionsBy(function(gj){var gk=gi.charCoords(gj.head,"div").top+5;var gl=gi.coordsChar({left:0,top:gk},"div");if(gl.ch<gi.getLine(gl.line).search(/\S/)){return dJ(gi,gj.head)}return gl},cX)},goLineUp:function(gi){gi.moveV(-1,"line")},goLineDown:function(gi){gi.moveV(1,"line")},goPageUp:function(gi){gi.moveV(-1,"page")},goPageDown:function(gi){gi.moveV(1,"page")},goCharLeft:function(gi){gi.moveH(-1,"char")},goCharRight:function(gi){gi.moveH(1,"char")},goColumnLeft:function(gi){gi.moveH(-1,"column")},goColumnRight:function(gi){gi.moveH(1,"column")},goWordLeft:function(gi){gi.moveH(-1,"word")},goGroupRight:function(gi){gi.moveH(1,"group")},goGroupLeft:function(gi){gi.moveH(-1,"group")},goWordRight:function(gi){gi.moveH(1,"word")},delCharBefore:function(gi){gi.deleteH(-1,"char")},delCharAfter:function(gi){gi.deleteH(1,"char")},delWordBefore:function(gi){gi.deleteH(-1,"word")},delWordAfter:function(gi){gi.deleteH(1,"word")},delGroupBefore:function(gi){gi.deleteH(-1,"group")},delGroupAfter:function(gi){gi.deleteH(1,"group")},indentAuto:function(gi){gi.indentSelection("smart")},indentMore:function(gi){gi.indentSelection("add")},indentLess:function(gi){gi.indentSelection("subtract")},insertTab:function(gi){gi.replaceSelection("\t")},insertSoftTab:function(gi){var gk=[],gj=gi.listSelections(),gn=gi.options.tabSize;for(var gm=0;gm<gj.length;gm++){var go=gj[gm].from();var gl=bU(gi.getLine(go.line),go.ch,gn);gk.push(new Array(gn-gl%gn+1).join(" "))}gi.replaceSelections(gk)},defaultTab:function(gi){if(gi.somethingSelected()){gi.indentSelection("add")}else{gi.execCommand("insertTab")}},transposeChars:function(gi){cN(gi,function(){var gl=gi.listSelections(),gk=[];for(var gm=0;gm<gl.length;gm++){var go=gl[gm].head,gj=fg(gi.doc,go.line).text;if(gj){if(go.ch==gj.length){go=new W(go.line,go.ch-1)}if(go.ch>0){go=new W(go.line,go.ch+1);gi.replaceRange(gj.charAt(go.ch-1)+gj.charAt(go.ch-2),W(go.line,go.ch-2),go,"+transpose")}else{if(go.line>gi.doc.first){var gn=fg(gi.doc,go.line-1).text;if(gn){gi.replaceRange(gj.charAt(0)+"\n"+gn.charAt(gn.length-1),W(go.line-1,gn.length-1),W(go.line,1),"+transpose")}}}}gk.push(new dZ(go,go))}gi.setSelections(gk)})},newlineAndIndent:function(gi){cN(gi,function(){var gj=gi.listSelections().length;for(var gl=0;gl<gj;gl++){var gk=gi.listSelections()[gl];gi.replaceRange("\n",gk.anchor,gk.head,"+input");gi.indentLine(gk.from().line+1,null,true);fG(gi)}})},toggleOverwrite:function(gi){gi.toggleOverwrite()}};var fb=H.keyMap={};fb.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"};fb.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"};fb.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars"};fb.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]};fb["default"]=b8?fb.macDefault:fb.pcDefault;function du(gj){var gp=gj.split(/-(?!$)/),gj=gp[gp.length-1];var go,gn,gi,gm;for(var gl=0;gl<gp.length-1;gl++){var gk=gp[gl];if(/^(cmd|meta|m)$/i.test(gk)){gm=true}else{if(/^a(lt)?$/i.test(gk)){go=true}else{if(/^(c|ctrl|control)$/i.test(gk)){gn=true}else{if(/^s(hift)$/i.test(gk)){gi=true}else{throw new Error("Unrecognized modifier name: "+gk)}}}}}if(go){gj="Alt-"+gj}if(gn){gj="Ctrl-"+gj}if(gm){gj="Cmd-"+gj}if(gi){gj="Shift-"+gj}return gj}H.normalizeKeyMap=function(gp){var gj={};for(var go in gp){if(gp.hasOwnProperty(go)){var gq=gp[go];if(/^(name|fallthrough|(de|at)tach)$/.test(go)){continue}if(gq=="..."){delete gp[go];continue}var gr=bT(go.split(" "),du);for(var gn=0;gn<gr.length;gn++){var gl,gk;if(gn==gr.length-1){gk=gr.join(" ");gl=gq}else{gk=gr.slice(0,gn+1).join(" ");gl="..."}var gm=gj[gk];if(!gm){gj[gk]=gl}else{if(gm!=gl){throw new Error("Inconsistent bindings for "+gk)}}}delete gp[go]}}for(var gi in gj){gp[gi]=gj[gi]}return gp};var i=H.lookupKey=function(gl,go,gn,gk){go=fY(go);var gm=go.call?go.call(gl,gk):go[gl];if(gm===false){return"nothing"}if(gm==="..."){return"multi"}if(gm!=null&&gn(gm)){return"handled"}if(go.fallthrough){if(Object.prototype.toString.call(go.fallthrough)!="[object Array]"){return i(gl,go.fallthrough,gn,gk)}for(var gj=0;gj<go.fallthrough.length;gj++){var gi=i(gl,go.fallthrough[gj],gn,gk);if(gi){return gi}}}};var eD=H.isModifierKey=function(gj){var gi=typeof gj=="string"?gj:fh[gj.keyCode];return gi=="Ctrl"||gi=="Alt"||gi=="Shift"||gi=="Mod"};var fs=H.keyName=function(gj,gl){if(d4&&gj.keyCode==34&&gj["char"]){return false}var gk=fh[gj.keyCode],gi=gk;if(gi==null||gj.altGraphKey){return false}if(gj.altKey&&gk!="Alt"){gi="Alt-"+gi}if((bR?gj.metaKey:gj.ctrlKey)&&gk!="Ctrl"){gi="Ctrl-"+gi}if((bR?gj.ctrlKey:gj.metaKey)&&gk!="Cmd"){gi="Cmd-"+gi}if(!gl&&gj.shiftKey&&gk!="Shift"){gi="Shift-"+gi}return gi};function fY(gi){return typeof gi=="string"?fb[gi]:gi}H.fromTextArea=function(gp,gq){gq=gq?aN(gq):{};gq.value=gp.value;if(!gq.tabindex&&gp.tabIndex){gq.tabindex=gp.tabIndex}if(!gq.placeholder&&gp.placeholder){gq.placeholder=gp.placeholder}if(gq.autofocus==null){var gi=dP();gq.autofocus=gi==gp||gp.getAttribute("autofocus")!=null&&gi==document.body}function gm(){gp.value=go.getValue()}if(gp.form){bY(gp.form,"submit",gm);if(!gq.leaveSubmitMethodAlone){var gj=gp.form,gn=gj.submit;try{var gl=gj.submit=function(){gm();gj.submit=gn;gj.submit();gj.submit=gl}}catch(gk){}}}gq.finishInit=function(gr){gr.save=gm;gr.getTextArea=function(){return gp};gr.toTextArea=function(){gr.toTextArea=isNaN;gm();gp.parentNode.removeChild(gr.getWrapperElement());gp.style.display="";if(gp.form){ee(gp.form,"submit",gm);if(typeof gp.form.submit=="function"){gp.form.submit=gn}}}};gp.style.display="none";var go=H(function(gr){gp.parentNode.insertBefore(gr,gp.nextSibling)},gq);return go};var eU=H.StringStream=function(gi,gj){this.pos=this.start=0;this.string=gi;this.tabSize=gj||8;this.lastColumnPos=this.lastColumnValue=0;this.lineStart=0};eU.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||undefined},next:function(){if(this.pos<this.string.length){return this.string.charAt(this.pos++)}},eat:function(gi){var gk=this.string.charAt(this.pos);if(typeof gi=="string"){var gj=gk==gi}else{var gj=gk&&(gi.test?gi.test(gk):gi(gk))}if(gj){++this.pos;return gk}},eatWhile:function(gi){var gj=this.pos;while(this.eat(gi)){}return this.pos>gj},eatSpace:function(){var gi=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos))){++this.pos}return this.pos>gi},skipToEnd:function(){this.pos=this.string.length},skipTo:function(gi){var gj=this.string.indexOf(gi,this.pos);if(gj>-1){this.pos=gj;return true}},backUp:function(gi){this.pos-=gi},column:function(){if(this.lastColumnPos<this.start){this.lastColumnValue=bU(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue);this.lastColumnPos=this.start}return this.lastColumnValue-(this.lineStart?bU(this.string,this.lineStart,this.tabSize):0)},indentation:function(){return bU(this.string,null,this.tabSize)-(this.lineStart?bU(this.string,this.lineStart,this.tabSize):0)},match:function(gm,gj,gi){if(typeof gm=="string"){var gn=function(go){return gi?go.toLowerCase():go};var gl=this.string.substr(this.pos,gm.length);if(gn(gl)==gn(gm)){if(gj!==false){this.pos+=gm.length}return true}}else{var gk=this.string.slice(this.pos).match(gm);if(gk&&gk.index>0){return null}if(gk&&gj!==false){this.pos+=gk[0].length}return gk}},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(gj,gi){this.lineStart+=gj;try{return gi()}finally{this.lineStart-=gj}}};var a6=0;var P=H.TextMarker=function(gj,gi){this.lines=[];this.type=gi;this.doc=gj;this.id=++a6};bz(P);P.prototype.clear=function(){if(this.explicitlyCleared){return}var gp=this.doc.cm,gj=gp&&!gp.curOp;if(gj){cJ(gp)}if(fj(this,"clear")){var gq=this.find();if(gq){ae(this,"clear",gq.from,gq.to)}}var gk=null,gn=null;for(var gl=0;gl<this.lines.length;++gl){var gr=this.lines[gl];var go=fa(gr.markedSpans,this);if(gp&&!this.collapsed){R(gp,bO(gr),"text")}else{if(gp){if(go.to!=null){gn=bO(gr)}if(go.from!=null){gk=bO(gr)}}}gr.markedSpans=eI(gr.markedSpans,go);if(go.from==null&&this.collapsed&&!fx(this.doc,gr)&&gp){f6(gr,aY(gp.display))}}if(gp&&this.collapsed&&!gp.options.lineWrapping){for(var gl=0;gl<this.lines.length;++gl){var gi=y(this.lines[gl]),gm=eo(gi);if(gm>gp.display.maxLineLength){gp.display.maxLine=gi;gp.display.maxLineLength=gm;gp.display.maxLineChanged=true}}}if(gk!=null&&gp&&this.collapsed){ah(gp,gk,gn+1)}this.lines.length=0;this.explicitlyCleared=true;if(this.atomic&&this.doc.cantEdit){this.doc.cantEdit=false;if(gp){ez(gp.doc)}}if(gp){ae(gp,"markerCleared",gp,this)}if(gj){am(gp)}if(this.parent){this.parent.clear()}};P.prototype.find=function(gl,gj){if(gl==null&&this.type=="bookmark"){gl=1}var go,gn;for(var gk=0;gk<this.lines.length;++gk){var gi=this.lines[gk];var gm=fa(gi.markedSpans,this);if(gm.from!=null){go=W(gj?gi:bO(gi),gm.from);if(gl==-1){return go}}if(gm.to!=null){gn=W(gj?gi:bO(gi),gm.to);if(gl==1){return gn}}}return go&&{from:go,to:gn}};P.prototype.changed=function(){var gk=this.find(-1,true),gj=this,gi=this.doc.cm;if(!gk||!gi){return}cN(gi,function(){var gm=gk.line,gn=bO(gk.line);var gl=fc(gi,gn);if(gl){au(gl);gi.curOp.selectionChanged=gi.curOp.forceUpdate=true}gi.curOp.updateMaxLine=true;if(!fx(gj.doc,gm)&&gj.height!=null){var gp=gj.height;gj.height=null;var go=cZ(gj)-gp;if(go){f6(gm,gm.height+go)}}})};P.prototype.attachLine=function(gi){if(!this.lines.length&&this.doc.cm){var gj=this.doc.cm.curOp;if(!gj.maybeHiddenMarkers||di(gj.maybeHiddenMarkers,this)==-1){(gj.maybeUnhiddenMarkers||(gj.maybeUnhiddenMarkers=[])).push(this)}}this.lines.push(gi)};P.prototype.detachLine=function(gi){this.lines.splice(di(this.lines,gi),1);if(!this.lines.length&&this.doc.cm){var gj=this.doc.cm.curOp;(gj.maybeHiddenMarkers||(gj.maybeHiddenMarkers=[])).push(this)}};var a6=0;function eG(gq,go,gp,gs,gm){if(gs&&gs.shared){return O(gq,go,gp,gs,gm)}if(gq.cm&&!gq.cm.curOp){return c3(gq.cm,eG)(gq,go,gp,gs,gm)}var gl=new P(gq,gm),gr=cg(go,gp);if(gs){aN(gs,gl,false)}if(gr>0||gr==0&&gl.clearWhenEmpty!==false){return gl}if(gl.replacedWith){gl.collapsed=true;gl.widgetNode=f3("span",[gl.replacedWith],"CodeMirror-widget");if(!gs.handleMouseEvents){gl.widgetNode.setAttribute("cm-ignore-events","true")}if(gs.insertLeft){gl.widgetNode.insertLeft=true}}if(gl.collapsed){if(z(gq,go.line,go,gp,gl)||go.line!=gp.line&&z(gq,gp.line,go,gp,gl)){throw new Error("Inserting collapsed marker partially overlapping an existing one")}a8=true}if(gl.addToHistory){fN(gq,{from:go,to:gp,origin:"markText"},gq.sel,NaN)}var gj=go.line,gn=gq.cm,gi;gq.iter(gj,gp.line+1,function(gt){if(gn&&gl.collapsed&&!gn.options.lineWrapping&&y(gt)==gn.display.maxLine){gi=true}if(gl.collapsed&&gj!=go.line){f6(gt,0)}ce(gt,new ej(gl,gj==go.line?go.ch:null,gj==gp.line?gp.ch:null));++gj});if(gl.collapsed){gq.iter(go.line,gp.line+1,function(gt){if(fx(gq,gt)){f6(gt,0)}})}if(gl.clearOnEnter){bY(gl,"beforeCursorEnter",function(){gl.clear()})}if(gl.readOnly){gd=true;if(gq.history.done.length||gq.history.undone.length){gq.clearHistory()}}if(gl.collapsed){gl.id=++a6;gl.atomic=true}if(gn){if(gi){gn.curOp.updateMaxLine=true}if(gl.collapsed){ah(gn,go.line,gp.line+1)}else{if(gl.className||gl.title||gl.startStyle||gl.endStyle||gl.css){for(var gk=go.line;gk<=gp.line;gk++){R(gn,gk,"text")}}}if(gl.atomic){ez(gn.doc)}ae(gn,"markerAdded",gn,gl)}return gl}var x=H.SharedTextMarker=function(gk,gj){this.markers=gk;this.primary=gj;for(var gi=0;gi<gk.length;++gi){gk[gi].parent=this}};bz(x);x.prototype.clear=function(){if(this.explicitlyCleared){return}this.explicitlyCleared=true;for(var gi=0;gi<this.markers.length;++gi){this.markers[gi].clear()}ae(this,"clear")};x.prototype.find=function(gj,gi){return this.primary.find(gj,gi)};function O(gm,gp,go,gi,gk){gi=aN(gi);gi.shared=false;var gn=[eG(gm,gp,go,gi,gk)],gj=gn[0];var gl=gi.widgetNode;d8(gm,function(gr){if(gl){gi.widgetNode=gl.cloneNode(true)}gn.push(eG(gr,fK(gr,gp),fK(gr,go),gi,gk));for(var gq=0;gq<gr.linked.length;++gq){if(gr.linked[gq].isParent){return}}gj=fH(gn)});return new x(gn,gj)}function eQ(gi){return gi.findMarks(W(gi.first,0),gi.clipPos(W(gi.lastLine())),function(gj){return gj.parent})}function dG(gn,go){for(var gl=0;gl<go.length;gl++){var gj=go[gl],gp=gj.find();var gi=gn.clipPos(gp.from),gm=gn.clipPos(gp.to);if(cg(gi,gm)){var gk=eG(gn,gi,gm,gj.primary,gj.primary.type);gj.markers.push(gk);gk.parent=gj}}}function ep(gl){for(var gk=0;gk<gl.length;gk++){var gi=gl[gk],gn=[gi.primary.doc];d8(gi.primary.doc,function(go){gn.push(go)});for(var gj=0;gj<gi.markers.length;gj++){var gm=gi.markers[gj];if(di(gn,gm.doc)==-1){gm.parent=null;gi.markers.splice(gj--,1)}}}}function ej(gi,gk,gj){this.marker=gi;this.from=gk;this.to=gj}function fa(gk,gi){if(gk){for(var gj=0;gj<gk.length;++gj){var gl=gk[gj];if(gl.marker==gi){return gl}}}}function eI(gj,gk){for(var gl,gi=0;gi<gj.length;++gi){if(gj[gi]!=gk){(gl||(gl=[])).push(gj[gi])}}return gl}function ce(gi,gj){gi.markedSpans=gi.markedSpans?gi.markedSpans.concat([gj]):[gj];gj.marker.attachLine(gi)}function aQ(gj,gk,go){if(gj){for(var gm=0,gp;gm<gj.length;++gm){var gq=gj[gm],gn=gq.marker;var gi=gq.from==null||(gn.inclusiveLeft?gq.from<=gk:gq.from<gk);if(gi||gq.from==gk&&gn.type=="bookmark"&&(!go||!gq.marker.insertLeft)){var gl=gq.to==null||(gn.inclusiveRight?gq.to>=gk:gq.to>gk);(gp||(gp=[])).push(new ej(gn,gq.from,gl?null:gq.to))}}}return gp}function aB(gj,gl,go){if(gj){for(var gm=0,gp;gm<gj.length;++gm){var gq=gj[gm],gn=gq.marker;var gk=gq.to==null||(gn.inclusiveRight?gq.to>=gl:gq.to>gl);if(gk||gq.from==gl&&gn.type=="bookmark"&&(!go||gq.marker.insertLeft)){var gi=gq.from==null||(gn.inclusiveLeft?gq.from<=gl:gq.from<gl);(gp||(gp=[])).push(new ej(gn,gi?null:gq.from-gl,gq.to==null?null:gq.to-gl))}}}return gp}function el(gu,gr){if(gr.full){return null}var gq=ca(gu,gr.from.line)&&fg(gu,gr.from.line).markedSpans;var gx=ca(gu,gr.to.line)&&fg(gu,gr.to.line).markedSpans;if(!gq&&!gx){return null}var gj=gr.from.ch,gm=gr.to.ch,gp=cg(gr.from,gr.to)==0;var go=aQ(gq,gj,gp);var gw=aB(gx,gm,gp);var gv=gr.text.length==1,gk=fH(gr.text).length+(gv?gj:0);if(go){for(var gl=0;gl<go.length;++gl){var gt=go[gl];if(gt.to==null){var gy=fa(gw,gt.marker);if(!gy){gt.to=gj}else{if(gv){gt.to=gy.to==null?null:gy.to+gk}}}}}if(gw){for(var gl=0;gl<gw.length;++gl){var gt=gw[gl];if(gt.to!=null){gt.to+=gk}if(gt.from==null){var gy=fa(go,gt.marker);if(!gy){gt.from=gk;if(gv){(go||(go=[])).push(gt)}}}else{gt.from+=gk;if(gv){(go||(go=[])).push(gt)}}}}if(go){go=q(go)}if(gw&&gw!=go){gw=q(gw)}var gn=[go];if(!gv){var gs=gr.text.length-2,gi;if(gs>0&&go){for(var gl=0;gl<go.length;++gl){if(go[gl].to==null){(gi||(gi=[])).push(new ej(go[gl].marker,null,null))}}}for(var gl=0;gl<gs;++gl){gn.push(gi)}gn.push(gw)}return gn}function q(gj){for(var gi=0;gi<gj.length;++gi){var gk=gj[gi];if(gk.from!=null&&gk.from==gk.to&&gk.marker.clearWhenEmpty!==false){gj.splice(gi--,1)}}if(!gj.length){return null}return gj}function ea(gq,go){var gi=b5(gq,go);var gr=el(gq,go);if(!gi){return gr}if(!gr){return gi}for(var gl=0;gl<gi.length;++gl){var gm=gi[gl],gn=gr[gl];if(gm&&gn){spans:for(var gk=0;gk<gn.length;++gk){var gp=gn[gk];for(var gj=0;gj<gm.length;++gj){if(gm[gj].marker==gp.marker){continue spans}}gm.push(gp)}}else{if(gn){gi[gl]=gn}}}return gi}function cI(gu,gs,gt){var gm=null;gu.iter(gs.line,gt.line+1,function(gv){if(gv.markedSpans){for(var gw=0;gw<gv.markedSpans.length;++gw){var gx=gv.markedSpans[gw].marker;if(gx.readOnly&&(!gm||di(gm,gx)==-1)){(gm||(gm=[])).push(gx)}}}});if(!gm){return null}var gn=[{from:gs,to:gt}];for(var go=0;go<gm.length;++go){var gp=gm[go],gk=gp.find(0);for(var gl=0;gl<gn.length;++gl){var gj=gn[gl];if(cg(gj.to,gk.from)<0||cg(gj.from,gk.to)>0){continue}var gr=[gl,1],gi=cg(gj.from,gk.from),gq=cg(gj.to,gk.to);if(gi<0||!gp.inclusiveLeft&&!gi){gr.push({from:gj.from,to:gk.from})}if(gq>0||!gp.inclusiveRight&&!gq){gr.push({from:gk.to,to:gj.to})}gn.splice.apply(gn,gr);gl+=gr.length-1}}return gn}function f9(gi){var gk=gi.markedSpans;if(!gk){return}for(var gj=0;gj<gk.length;++gj){gk[gj].marker.detachLine(gi)}gi.markedSpans=null}function c4(gi,gk){if(!gk){return}for(var gj=0;gj<gk.length;++gj){gk[gj].marker.attachLine(gi)}gi.markedSpans=gk}function v(gi){return gi.inclusiveLeft?-1:0}function bX(gi){return gi.inclusiveRight?1:0}function dR(gl,gj){var gn=gl.lines.length-gj.lines.length;if(gn!=0){return gn}var gk=gl.find(),go=gj.find();var gi=cg(gk.from,go.from)||v(gl)-v(gj);if(gi){return -gi}var gm=cg(gk.to,go.to)||bX(gl)-bX(gj);if(gm){return gm}return gj.id-gl.id}function a7(gj,gn){var gi=a8&&gj.markedSpans,gm;if(gi){for(var gl,gk=0;gk<gi.length;++gk){gl=gi[gk];if(gl.marker.collapsed&&(gn?gl.from:gl.to)==null&&(!gm||dR(gm,gl.marker)<0)){gm=gl.marker}}}return gm}function eP(gi){return a7(gi,true)}function ex(gi){return a7(gi,false)}function z(gq,gk,go,gp,gm){var gt=fg(gq,gk);var gi=a8&&gt.markedSpans;if(gi){for(var gl=0;gl<gi.length;++gl){var gj=gi[gl];if(!gj.marker.collapsed){continue}var gs=gj.marker.find(0);var gr=cg(gs.from,go)||v(gj.marker)-v(gm);var gn=cg(gs.to,gp)||bX(gj.marker)-bX(gm);if(gr>=0&&gn<=0||gr<=0&&gn>=0){continue}if(gr<=0&&(cg(gs.to,go)>0||(gj.marker.inclusiveRight&&gm.inclusiveLeft))||gr>=0&&(cg(gs.from,gp)<0||(gj.marker.inclusiveLeft&&gm.inclusiveRight))){return true}}}}function y(gj){var gi;while(gi=eP(gj)){gj=gi.find(-1,true).line}return gj}function g(gk){var gi,gj;while(gi=ex(gk)){gk=gi.find(1,true).line;(gj||(gj=[])).push(gk)}return gj}function aW(gl,gj){var gi=fg(gl,gj),gk=y(gi);if(gi==gk){return gj}return bO(gk)}function d3(gl,gk){if(gk>gl.lastLine()){return gk}var gj=fg(gl,gk),gi;if(!fx(gl,gj)){return gk}while(gi=ex(gj)){gj=gi.find(1,true).line}return bO(gj)+1}function fx(gm,gj){var gi=a8&&gj.markedSpans;if(gi){for(var gl,gk=0;gk<gi.length;++gk){gl=gi[gk];if(!gl.marker.collapsed){continue}if(gl.from==null){return true}if(gl.marker.widgetNode){continue}if(gl.from==0&&gl.marker.inclusiveLeft&&T(gm,gj,gl)){return true}}}}function T(gn,gj,gl){if(gl.to==null){var gi=gl.marker.find(1,true);return T(gn,gi.line,fa(gi.line.markedSpans,gl.marker))}if(gl.marker.inclusiveRight&&gl.to==gj.text.length){return true}for(var gm,gk=0;gk<gj.markedSpans.length;++gk){gm=gj.markedSpans[gk];if(gm.marker.collapsed&&!gm.marker.widgetNode&&gm.from==gl.to&&(gm.to==null||gm.to!=gl.from)&&(gm.marker.inclusiveLeft||gl.marker.inclusiveRight)&&T(gn,gj,gm)){return true}}}var dC=H.LineWidget=function(gl,gk,gi){if(gi){for(var gj in gi){if(gi.hasOwnProperty(gj)){this[gj]=gi[gj]}}}this.doc=gl;this.node=gk};bz(dC);function d0(gi,gj,gk){if(bN(gj)<((gi.curOp&&gi.curOp.scrollTop)||gi.doc.scrollTop)){cM(gi,null,gk)}}dC.prototype.clear=function(){var gj=this.doc.cm,gl=this.line.widgets,gk=this.line,gn=bO(gk);if(gn==null||!gl){return}for(var gm=0;gm<gl.length;++gm){if(gl[gm]==this){gl.splice(gm--,1)}}if(!gl.length){gk.widgets=null}var gi=cZ(this);f6(gk,Math.max(0,gk.height-gi));if(gj){cN(gj,function(){d0(gj,gk,-gi);R(gj,gn,"widget")})}};dC.prototype.changed=function(){var gj=this.height,gi=this.doc.cm,gk=this.line;this.height=null;var gl=cZ(this)-gj;if(!gl){return}f6(gk,gk.height+gl);if(gi){cN(gi,function(){gi.curOp.forceUpdate=true;d0(gi,gk,gl)})}};function cZ(gk){if(gk.height!=null){return gk.height}var gi=gk.doc.cm;if(!gi){return 0}if(!gb(document.body,gk.node)){var gj="position: relative;";if(gk.coverGutter){gj+="margin-left: -"+gi.display.gutters.offsetWidth+"px;"}if(gk.noHScroll){gj+="width: "+gi.display.wrapper.clientWidth+"px;"}bS(gi.display.measure,f3("div",[gk.node],null,gj))}return gk.height=gk.node.offsetHeight}function bI(gn,gm,gk,gj){var gl=new dC(gn,gk,gj);var gi=gn.cm;if(gi&&gl.noHScroll){gi.display.alignWidgets=true}eA(gn,gm,"widget",function(gp){var gq=gp.widgets||(gp.widgets=[]);if(gl.insertAt==null){gq.push(gl)}else{gq.splice(Math.min(gq.length-1,Math.max(0,gl.insertAt)),0,gl)}gl.line=gp;if(gi&&!fx(gn,gp)){var go=bN(gp)<gn.scrollTop;f6(gp,gp.height+cZ(gl));if(go){cM(gi,null,gl.height)}gi.curOp.forceUpdate=true}return true});return gl}var f7=H.Line=function(gk,gj,gi){this.text=gk;c4(this,gj);this.height=gi?gi(this):1};bz(f7);f7.prototype.lineNo=function(){return bO(this)};function en(gj,gm,gk,gi){gj.text=gm;if(gj.stateAfter){gj.stateAfter=null}if(gj.styles){gj.styles=null}if(gj.order!=null){gj.order=null}f9(gj);c4(gj,gk);var gl=gi?gi(gj):1;if(gl!=gj.height){f6(gj,gl)}}function bC(gi){gi.parent=null;f9(gi)}function dj(gk,gj){if(gk){for(;;){var gi=gk.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!gi){break}gk=gk.slice(0,gi.index)+gk.slice(gi.index+gi[0].length);var gl=gi[1]?"bgClass":"textClass";if(gj[gl]==null){gj[gl]=gi[2]}else{if(!(new RegExp("(?:^|s)"+gi[2]+"(?:$|s)")).test(gj[gl])){gj[gl]+=" "+gi[2]}}}}return gk}function fr(gk,gj){if(gk.blankLine){return gk.blankLine(gj)}if(!gk.innerMode){return}var gi=H.innerMode(gk,gj);if(gi.mode.blankLine){return gi.mode.blankLine(gi.state)}}function eB(gn,gm,gl,gi){for(var gj=0;gj<10;gj++){if(gi){gi[0]=H.innerMode(gn,gl).mode}var gk=gn.token(gm,gl);if(gm.pos>gm.start){return gk}}throw new Error("Mode "+gn.name+" failed to advance stream.")}function cr(gr,gp,gm,gl){function gi(gu){return{start:gs.start,end:gs.pos,string:gs.current(),type:gk||null,state:gu?b4(gq.mode,gj):gj}}var gq=gr.doc,gn=gq.mode,gk;gp=fK(gq,gp);var gt=fg(gq,gp.line),gj=dD(gr,gp.line,gm);var gs=new eU(gt.text,gr.options.tabSize),go;if(gl){go=[]}while((gl||gs.pos<gp.ch)&&!gs.eol()){gs.start=gs.pos;gk=eB(gn,gs,gj);if(gl){go.push(gi(true))}}return gl?go:gi()}function w(gs,gu,gn,gj,go,gl,gm){var gk=gn.flattenSpans;if(gk==null){gk=gs.options.flattenSpans}var gq=0,gp=null;var gt=new eU(gu,gs.options.tabSize),gi;var gw=gs.options.addModeClass&&[null];if(gu==""){dj(fr(gn,gj),gl)}while(!gt.eol()){if(gt.pos>gs.options.maxHighlightLength){gk=false;if(gm){dy(gs,gu,gj,gt.pos)}gt.pos=gu.length;gi=null}else{gi=dj(eB(gn,gt,gj,gw),gl)}if(gw){var gv=gw[0].name;if(gv){gi="m-"+(gi?gv+" "+gi:gv)}}if(!gk||gp!=gi){while(gq<gt.start){gq=Math.min(gt.start,gq+50000);go(gq,gp)}gp=gi}gt.start=gt.pos}while(gq<gt.pos){var gr=Math.min(gt.pos,gq+50000);go(gr,gp);gq=gr}}function fA(gp,gr,gi,gm){var gq=[gp.state.modeGen],gl={};w(gp,gr.text,gp.doc.mode,gi,function(gs,gt){gq.push(gs,gt)},gl,gm);for(var gj=0;gj<gp.state.overlays.length;++gj){var gn=gp.state.overlays[gj],go=1,gk=0;w(gp,gr.text,gn.mode,true,function(gs,gu){var gw=go;while(gk<gs){var gt=gq[go];if(gt>gs){gq.splice(go,1,gs,gq[go+1],gt)}go+=2;gk=Math.min(gs,gt)}if(!gu){return}if(gn.opaque){gq.splice(gw,go-gw,gs,"cm-overlay "+gu);go=gw+2}else{for(;gw<go;gw+=2){var gv=gq[gw+1];gq[gw+1]=(gv?gv+" ":"")+"cm-overlay "+gu}}},gl)}return{styles:gq,classes:gl.bgClass||gl.textClass?gl:null}}function c7(gj,gk,gl){if(!gk.styles||gk.styles[0]!=gj.state.modeGen){var gi=fA(gj,gk,gk.stateAfter=dD(gj,bO(gk)));gk.styles=gi.styles;if(gi.classes){gk.styleClasses=gi.classes}else{if(gk.styleClasses){gk.styleClasses=null}}if(gl===gj.doc.frontier){gj.doc.frontier++}}return gk.styles}function dy(gi,gn,gk,gj){var gm=gi.doc.mode;var gl=new eU(gn,gi.options.tabSize);gl.start=gl.pos=gj||0;if(gn==""){fr(gm,gk)}while(!gl.eol()&&gl.pos<=gi.options.maxHighlightLength){eB(gm,gl,gk);gl.start=gl.pos}}var dX={},b2={};function eX(gk,gj){if(!gk||/^\s*$/.test(gk)){return null}var gi=gj.addModeClass?b2:dX;return gi[gk]||(gi[gk]=gk.replace(/\S+/g,"cm-$&"))}function eS(gj,gn){var go=f3("span",null,null,c1?"padding-right: .1px":null);var gl={pre:f3("pre",[go]),content:go,col:0,pos:0,cm:gj,splitSpaces:(dL||c1)&&gj.getOption("lineWrapping")};gn.measure={};for(var gm=0;gm<=(gn.rest?gn.rest.length:0);gm++){var gk=gm?gn.rest[gm-1]:gn.line,gi;gl.pos=0;gl.addToken=t;if(bP(gj.display.measure)&&(gi=a(gk))){gl.addToken=U(gl.addToken,gi)}gl.map=[];var gp=gn!=gj.display.externalMeasured&&bO(gk);bp(gk,gl,c7(gj,gk,gp));if(gk.styleClasses){if(gk.styleClasses.bgClass){gl.bgClass=fT(gk.styleClasses.bgClass,gl.bgClass||"")}if(gk.styleClasses.textClass){gl.textClass=fT(gk.styleClasses.textClass,gl.textClass||"")}}if(gl.map.length==0){gl.map.push(0,0,gl.content.appendChild(bo(gj.display.measure)))}if(gm==0){gn.measure.map=gl.map;gn.measure.cache={}}else{(gn.measure.maps||(gn.measure.maps=[])).push(gl.map);(gn.measure.caches||(gn.measure.caches=[])).push({})}}if(c1&&/\bcm-tab\b/.test(gl.content.lastChild.className)){gl.content.className="cm-tab-wrap-hack"}aE(gj,"renderLine",gj,gn.line,gl.pre);if(gl.pre.className){gl.textClass=fT(gl.pre.className,gl.textClass||"")}return gl}function fd(gj){var gi=f3("span","\u2022","cm-invalidchar");gi.title="\\u"+gj.charCodeAt(0).toString(16);gi.setAttribute("aria-label",gi.title);return gi}function t(gt,go,gy,gv,gr,gA,gn){if(!go){return}var gx=gt.splitSpaces?go.replace(/ {3,}/g,cG):go;var gi=gt.cm.state.specialChars,gj=false;if(!gi.test(go)){gt.col+=go.length;var gw=document.createTextNode(gx);gt.map.push(gt.pos,gt.pos+go.length,gw);if(dL&&k<9){gj=true}gt.pos+=go.length}else{var gw=document.createDocumentFragment(),gl=0;while(true){gi.lastIndex=gl;var gu=gi.exec(go);var gz=gu?gu.index-gl:go.length-gl;if(gz){var gq=document.createTextNode(gx.slice(gl,gl+gz));if(dL&&k<9){gw.appendChild(f3("span",[gq]))}else{gw.appendChild(gq)}gt.map.push(gt.pos,gt.pos+gz,gq);gt.col+=gz;gt.pos+=gz}if(!gu){break}gl+=gz+1;if(gu[0]=="\t"){var gs=gt.cm.options.tabSize,gp=gs-gt.col%gs;var gq=gw.appendChild(f3("span",cq(gp),"cm-tab"));gq.setAttribute("role","presentation");gq.setAttribute("cm-text","\t");gt.col+=gp}else{var gq=gt.cm.options.specialCharPlaceholder(gu[0]);gq.setAttribute("cm-text",gu[0]);if(dL&&k<9){gw.appendChild(f3("span",[gq]))}else{gw.appendChild(gq)}gt.col+=1}gt.map.push(gt.pos,gt.pos+1,gq);gt.pos++}}if(gy||gv||gr||gj||gn){var gk=gy||"";if(gv){gk+=gv}if(gr){gk+=gr}var gm=f3("span",[gw],gk,gn);if(gA){gm.title=gA}return gt.content.appendChild(gm)}gt.content.appendChild(gw)}function cG(gi){var gj=" ";for(var gk=0;gk<gi.length-2;++gk){gj+=gk%2?" ":"\u00a0"}gj+=" ";return gj}function U(gj,gi){return function(gr,gt,gk,go,gu,gs,gq){gk=gk?gk+" cm-force-border":"cm-force-border";var gl=gr.pos,gn=gl+gt.length;for(;;){for(var gp=0;gp<gi.length;gp++){var gm=gi[gp];if(gm.to>gl&&gm.from<=gl){break}}if(gm.to>=gn){return gj(gr,gt,gk,go,gu,gs,gq)}gj(gr,gt.slice(0,gm.to-gl),gk,go,null,gs,gq);go=null;gt=gt.slice(gm.to-gl);gl=gm.to}}}function ac(gj,gl,gi,gk){var gm=!gk&&gi.widgetNode;if(gm){gj.map.push(gj.pos,gj.pos+gl,gm)}if(!gk&&gj.cm.display.input.needsContentAttribute){if(!gm){gm=gj.content.appendChild(document.createElement("span"))}gm.setAttribute("cm-marker",gi.id)}if(gm){gj.cm.display.input.setUneditable(gm);gj.content.appendChild(gm)}gj.pos+=gl}function bp(gr,gy,gq){var gn=gr.markedSpans,gp=gr.text,gw=0;if(!gn){for(var gB=1;gB<gq.length;gB+=2){gy.addToken(gy,gp.slice(gw,gw=gq[gB]),eX(gq[gB+1],gy.cm.options))}return}var gC=gp.length,gm=0,gB=1,gu="",gD,gs;var gF=0,gi,gE,gv,gG,gk;for(;;){if(gF==gm){gi=gE=gv=gG=gs="";gk=null;gF=Infinity;var go=[];for(var gz=0;gz<gn.length;++gz){var gA=gn[gz],gx=gA.marker;if(gx.type=="bookmark"&&gA.from==gm&&gx.widgetNode){go.push(gx)}else{if(gA.from<=gm&&(gA.to==null||gA.to>gm||gx.collapsed&&gA.to==gm&&gA.from==gm)){if(gA.to!=null&&gA.to!=gm&&gF>gA.to){gF=gA.to;gE=""}if(gx.className){gi+=" "+gx.className}if(gx.css){gs=gx.css}if(gx.startStyle&&gA.from==gm){gv+=" "+gx.startStyle}if(gx.endStyle&&gA.to==gF){gE+=" "+gx.endStyle}if(gx.title&&!gG){gG=gx.title}if(gx.collapsed&&(!gk||dR(gk.marker,gx)<0)){gk=gA}}else{if(gA.from>gm&&gF>gA.from){gF=gA.from}}}}if(gk&&(gk.from||0)==gm){ac(gy,(gk.to==null?gC+1:gk.to)-gm,gk.marker,gk.from==null);if(gk.to==null){return}if(gk.to==gm){gk=false}}if(!gk&&go.length){for(var gz=0;gz<go.length;++gz){ac(gy,0,go[gz])}}}if(gm>=gC){break}var gt=Math.min(gC,gF);while(true){if(gu){var gj=gm+gu.length;if(!gk){var gl=gj>gt?gu.slice(0,gt-gm):gu;gy.addToken(gy,gl,gD?gD+gi:gi,gv,gm+gl.length==gF?gE:"",gG,gs)}if(gj>=gt){gu=gu.slice(gt-gm);gm=gt;break}gm=gj;gv=""}gu=gp.slice(gw,gw=gq[gB++]);gD=eX(gq[gB++],gy.cm.options)}}}function dT(gi,gj){return gj.from.ch==0&&gj.to.ch==0&&fH(gj.text)==""&&(!gi.cm||gi.cm.options.wholeLineUpdateBefore)}function fz(gv,gq,gj,gm){function gw(gy){return gj?gj[gy]:null}function gk(gy,gA,gz){en(gy,gA,gz,gm);ae(gy,"change",gy,gq)}function gi(gB,gz){for(var gA=gB,gy=[];gA<gz;++gA){gy.push(new f7(gx[gA],gw(gA),gm))}return gy}var gu=gq.from,gt=gq.to,gx=gq.text;var gr=fg(gv,gu.line),gs=fg(gv,gt.line);var gp=fH(gx),gl=gw(gx.length-1),go=gt.line-gu.line;if(gq.full){gv.insert(0,gi(0,gx.length));gv.remove(gx.length,gv.size-gx.length)}else{if(dT(gv,gq)){var gn=gi(0,gx.length-1);gk(gs,gs.text,gl);if(go){gv.remove(gu.line,go)}if(gn.length){gv.insert(gu.line,gn)}}else{if(gr==gs){if(gx.length==1){gk(gr,gr.text.slice(0,gu.ch)+gp+gr.text.slice(gt.ch),gl)}else{var gn=gi(1,gx.length-1);gn.push(new f7(gp+gr.text.slice(gt.ch),gl,gm));gk(gr,gr.text.slice(0,gu.ch)+gx[0],gw(0));gv.insert(gu.line+1,gn)}}else{if(gx.length==1){gk(gr,gr.text.slice(0,gu.ch)+gx[0]+gs.text.slice(gt.ch),gw(0));gv.remove(gu.line+1,go)}else{gk(gr,gr.text.slice(0,gu.ch)+gx[0],gw(0));gk(gs,gp+gs.text.slice(gt.ch),gl);var gn=gi(1,gx.length-1);if(go>1){gv.remove(gu.line+1,go-1)}gv.insert(gu.line+1,gn)}}}}ae(gv,"change",gv,gq)}function e0(gj){this.lines=gj;this.parent=null;for(var gk=0,gi=0;gk<gj.length;++gk){gj[gk].parent=this;gi+=gj[gk].height}this.height=gi}e0.prototype={chunkSize:function(){return this.lines.length},removeInner:function(gi,gm){for(var gk=gi,gl=gi+gm;gk<gl;++gk){var gj=this.lines[gk];this.height-=gj.height;bC(gj);ae(gj,"delete")}this.lines.splice(gi,gm)},collapse:function(gi){gi.push.apply(gi,this.lines)},insertInner:function(gj,gk,gi){this.height+=gi;this.lines=this.lines.slice(0,gj).concat(gk).concat(this.lines.slice(gj));for(var gl=0;gl<gk.length;++gl){gk[gl].parent=this}},iterN:function(gi,gl,gk){for(var gj=gi+gl;gi<gj;++gi){if(gk(this.lines[gi])){return true}}}};function fy(gl){this.children=gl;var gk=0,gi=0;for(var gj=0;gj<gl.length;++gj){var gm=gl[gj];gk+=gm.chunkSize();gi+=gm.height;gm.parent=this}this.size=gk;this.height=gi;this.parent=null}fy.prototype={chunkSize:function(){return this.size},removeInner:function(gi,gp){this.size-=gp;for(var gk=0;gk<this.children.length;++gk){var go=this.children[gk],gm=go.chunkSize();if(gi<gm){var gl=Math.min(gp,gm-gi),gn=go.height;go.removeInner(gi,gl);this.height-=gn-go.height;if(gm==gl){this.children.splice(gk--,1);go.parent=null}if((gp-=gl)==0){break}gi=0}else{gi-=gm}}if(this.size-gp<25&&(this.children.length>1||!(this.children[0] instanceof e0))){var gj=[];this.collapse(gj);this.children=[new e0(gj)];this.children[0].parent=this}},collapse:function(gi){for(var gj=0;gj<this.children.length;++gj){this.children[gj].collapse(gi)}},insertInner:function(gj,gk,gi){this.size+=gk.length;this.height+=gi;for(var gn=0;gn<this.children.length;++gn){var gp=this.children[gn],go=gp.chunkSize();if(gj<=go){gp.insertInner(gj,gk,gi);if(gp.lines&&gp.lines.length>50){while(gp.lines.length>50){var gm=gp.lines.splice(gp.lines.length-25,25);var gl=new e0(gm);gp.height-=gl.height;this.children.splice(gn+1,0,gl);gl.parent=this}this.maybeSpill()}break}gj-=go}},maybeSpill:function(){if(this.children.length<=10){return}var gl=this;do{var gj=gl.children.splice(gl.children.length-5,5);var gk=new fy(gj);if(!gl.parent){var gm=new fy(gl.children);gm.parent=gl;gl.children=[gm,gk];gl=gm}else{gl.size-=gk.size;gl.height-=gk.height;var gi=di(gl.parent.children,gl);gl.parent.children.splice(gi+1,0,gk)}gk.parent=gl.parent}while(gl.children.length>10);gl.parent.maybeSpill()},iterN:function(gi,go,gn){for(var gj=0;gj<this.children.length;++gj){var gm=this.children[gj],gl=gm.chunkSize();if(gi<gl){var gk=Math.min(go,gl-gi);if(gm.iterN(gi,gk,gn)){return true}if((go-=gk)==0){break}gi=0}else{gi-=gl}}}};var cs=0;var at=H.Doc=function(gk,gj,gi){if(!(this instanceof at)){return new at(gk,gj,gi)}if(gi==null){gi=0}fy.call(this,[new e0([new f7("",null)])]);this.first=gi;this.scrollTop=this.scrollLeft=0;this.cantEdit=false;this.cleanGeneration=1;this.frontier=gi;var gl=W(gi,0);this.sel=eT(gl);this.history=new fU(null);this.id=++cs;this.modeOption=gj;if(typeof gk=="string"){gk=a1(gk)}fz(this,{from:gl,to:gl,text:gk});bV(this,eT(gl),Z)};at.prototype=cl(fy.prototype,{constructor:at,iter:function(gk,gj,gi){if(gi){this.iterN(gk-this.first,gj-gk,gi)}else{this.iterN(this.first,this.first+this.size,gk)}},insert:function(gj,gk){var gi=0;for(var gl=0;gl<gk.length;++gl){gi+=gk[gl].height}this.insertInner(gj-this.first,gk,gi)},remove:function(gi,gj){this.removeInner(gi-this.first,gj)},getValue:function(gj){var gi=a3(this,this.first,this.first+this.size);if(gj===false){return gi}return gi.join(gj||"\n")},setValue:cE(function(gj){var gk=W(this.first,0),gi=this.first+this.size-1;bh(this,{from:gk,to:W(gi,fg(this,gi).text.length),text:a1(gj),origin:"setValue",full:true},true);bV(this,eT(gk))}),replaceRange:function(gj,gl,gk,gi){gl=fK(this,gl);gk=gk?fK(this,gk):gl;a2(this,gj,gl,gk,gi)},getRange:function(gl,gk,gj){var gi=f5(this,fK(this,gl),fK(this,gk));if(gj===false){return gi}return gi.join(gj||"\n")},getLine:function(gj){var gi=this.getLineHandle(gj);return gi&&gi.text},getLineHandle:function(gi){if(ca(this,gi)){return fg(this,gi)}},getLineNumber:function(gi){return bO(gi)},getLineHandleVisualStart:function(gi){if(typeof gi=="number"){gi=fg(this,gi)}return y(gi)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(gi){return fK(this,gi)},getCursor:function(gk){var gi=this.sel.primary(),gj;if(gk==null||gk=="head"){gj=gi.head}else{if(gk=="anchor"){gj=gi.anchor}else{if(gk=="end"||gk=="to"||gk===false){gj=gi.to()}else{gj=gi.from()}}}return gj},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:cE(function(gi,gk,gj){F(this,fK(this,typeof gi=="number"?W(gi,gk||0):gi),null,gj)}),setSelection:cE(function(gj,gk,gi){F(this,fK(this,gj),fK(this,gk||gj),gi)}),extendSelection:cE(function(gk,gi,gj){fX(this,fK(this,gk),gi&&fK(this,gi),gj)}),extendSelections:cE(function(gj,gi){aw(this,d1(this,gj,gi))}),extendSelectionsBy:cE(function(gj,gi){aw(this,bT(this.sel.ranges,gj),gi)}),setSelections:cE(function(gi,gm,gk){if(!gi.length){return}for(var gl=0,gj=[];gl<gi.length;gl++){gj[gl]=new dZ(fK(this,gi[gl].anchor),fK(this,gi[gl].head))}if(gm==null){gm=Math.min(gi.length-1,this.sel.primIndex)}bV(this,cx(gj,gm),gk)}),addSelection:cE(function(gk,gl,gj){var gi=this.sel.ranges.slice(0);gi.push(new dZ(fK(this,gk),fK(this,gl||gk)));bV(this,cx(gi,gi.length-1),gj)}),getSelection:function(gm){var gj=this.sel.ranges,gi;for(var gk=0;gk<gj.length;gk++){var gl=f5(this,gj[gk].from(),gj[gk].to());gi=gi?gi.concat(gl):gl}if(gm===false){return gi}else{return gi.join(gm||"\n")}},getSelections:function(gm){var gl=[],gi=this.sel.ranges;for(var gj=0;gj<gi.length;gj++){var gk=f5(this,gi[gj].from(),gi[gj].to());if(gm!==false){gk=gk.join(gm||"\n")}gl[gj]=gk}return gl},replaceSelection:function(gk,gm,gi){var gl=[];for(var gj=0;gj<this.sel.ranges.length;gj++){gl[gj]=gk}this.replaceSelections(gl,gm,gi||"+input")},replaceSelections:cE(function(gn,gp,gk){var gm=[],go=this.sel;for(var gl=0;gl<go.ranges.length;gl++){var gj=go.ranges[gl];gm[gl]={from:gj.from(),to:gj.to(),text:a1(gn[gl]),origin:gk}}var gi=gp&&gp!="end"&&af(this,gm,gp);for(var gl=gm.length-1;gl>=0;gl--){bh(this,gm[gl])}if(gi){e8(this,gi)}else{if(this.cm){fG(this.cm)}}}),undo:cE(function(){b9(this,"undo")}),redo:cE(function(){b9(this,"redo")}),undoSelection:cE(function(){b9(this,"undo",true)}),redoSelection:cE(function(){b9(this,"redo",true)}),setExtending:function(gi){this.extend=gi},getExtending:function(){return this.extend},historySize:function(){var gl=this.history,gi=0,gk=0;for(var gj=0;gj<gl.done.length;gj++){if(!gl.done[gj].ranges){++gi}}for(var gj=0;gj<gl.undone.length;gj++){if(!gl.undone[gj].ranges){++gk}}return{undo:gi,redo:gk}},clearHistory:function(){this.history=new fU(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration(true)},changeGeneration:function(gi){if(gi){this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null}return this.history.generation},isClean:function(gi){return this.history.generation==(gi||this.cleanGeneration)},getHistory:function(){return{done:bQ(this.history.done),undone:bQ(this.history.undone)}},setHistory:function(gj){var gi=this.history=new fU(this.history.maxGeneration);gi.done=bQ(gj.done.slice(0),null,true);gi.undone=bQ(gj.undone.slice(0),null,true)},addLineClass:cE(function(gk,gj,gi){return eA(this,gk,gj=="gutter"?"gutter":"class",function(gl){var gm=gj=="text"?"textClass":gj=="background"?"bgClass":gj=="gutter"?"gutterClass":"wrapClass";if(!gl[gm]){gl[gm]=gi}else{if(S(gi).test(gl[gm])){return false}else{gl[gm]+=" "+gi}}return true})}),removeLineClass:cE(function(gk,gj,gi){return eA(this,gk,gj=="gutter"?"gutter":"class",function(gm){var gp=gj=="text"?"textClass":gj=="background"?"bgClass":gj=="gutter"?"gutterClass":"wrapClass";var go=gm[gp];if(!go){return false}else{if(gi==null){gm[gp]=null}else{var gn=go.match(S(gi));if(!gn){return false}var gl=gn.index+gn[0].length;gm[gp]=go.slice(0,gn.index)+(!gn.index||gl==go.length?"":" ")+go.slice(gl)||null}}return true})}),addLineWidget:cE(function(gk,gj,gi){return bI(this,gk,gj,gi)}),removeLineWidget:function(gi){gi.clear()},markText:function(gk,gj,gi){return eG(this,fK(this,gk),fK(this,gj),gi,"range")},setBookmark:function(gk,gi){var gj={replacedWith:gi&&(gi.nodeType==null?gi.widget:gi),insertLeft:gi&&gi.insertLeft,clearWhenEmpty:false,shared:gi&&gi.shared,handleMouseEvents:gi&&gi.handleMouseEvents};gk=fK(this,gk);return eG(this,gk,gk,gj,"bookmark")},findMarksAt:function(gm){gm=fK(this,gm);var gl=[],gj=fg(this,gm.line).markedSpans;if(gj){for(var gi=0;gi<gj.length;++gi){var gk=gj[gi];if((gk.from==null||gk.from<=gm.ch)&&(gk.to==null||gk.to>=gm.ch)){gl.push(gk.marker.parent||gk.marker)}}}return gl},findMarks:function(gm,gl,gi){gm=fK(this,gm);gl=fK(this,gl);var gj=[],gk=gm.line;this.iter(gm.line,gl.line+1,function(gn){var gp=gn.markedSpans;if(gp){for(var go=0;go<gp.length;go++){var gq=gp[go];if(!(gk==gm.line&&gm.ch>gq.to||gq.from==null&&gk!=gm.line||gk==gl.line&&gq.from>gl.ch)&&(!gi||gi(gq.marker))){gj.push(gq.marker.parent||gq.marker)}}}++gk});return gj},getAllMarks:function(){var gi=[];this.iter(function(gk){var gj=gk.markedSpans;if(gj){for(var gl=0;gl<gj.length;++gl){if(gj[gl].from!=null){gi.push(gj[gl].marker)}}}});return gi},posFromIndex:function(gj){var gi,gk=this.first;this.iter(function(gl){var gm=gl.text.length+1;if(gm>gj){gi=gj;return true}gj-=gm;++gk});return fK(this,W(gk,gi))},indexFromPos:function(gj){gj=fK(this,gj);var gi=gj.ch;if(gj.line<this.first||gj.ch<0){return 0}this.iter(this.first,gj.line,function(gk){gi+=gk.text.length+1});return gi},copy:function(gi){var gj=new at(a3(this,this.first,this.first+this.size),this.modeOption,this.first);gj.scrollTop=this.scrollTop;gj.scrollLeft=this.scrollLeft;gj.sel=this.sel;gj.extend=false;if(gi){gj.history.undoDepth=this.history.undoDepth;gj.setHistory(this.getHistory())}return gj},linkedDoc:function(gi){if(!gi){gi={}}var gl=this.first,gk=this.first+this.size;if(gi.from!=null&&gi.from>gl){gl=gi.from}if(gi.to!=null&&gi.to<gk){gk=gi.to}var gj=new at(a3(this,gl,gk),gi.mode||this.modeOption,gl);if(gi.sharedHist){gj.history=this.history}(this.linked||(this.linked=[])).push({doc:gj,sharedHist:gi.sharedHist});gj.linked=[{doc:this,isParent:true,sharedHist:gi.sharedHist}];dG(gj,eQ(this));return gj},unlinkDoc:function(gj){if(gj instanceof H){gj=gj.doc}if(this.linked){for(var gk=0;gk<this.linked.length;++gk){var gl=this.linked[gk];if(gl.doc!=gj){continue}this.linked.splice(gk,1);gj.unlinkDoc(this);ep(eQ(this));break}}if(gj.history==this.history){var gi=[gj.id];d8(gj,function(gm){gi.push(gm.id)},true);gj.history=new fU(null);gj.history.done=bQ(this.history.done,gi);gj.history.undone=bQ(this.history.undone,gi)}},iterLinkedDocs:function(gi){d8(this,gi)},getMode:function(){return this.mode},getEditor:function(){return this.cm}});at.prototype.eachLine=at.prototype.iter;var d="iter insert remove copy getEditor constructor".split(" ");for(var bL in at.prototype){if(at.prototype.hasOwnProperty(bL)&&di(d,bL)<0){H.prototype[bL]=(function(gi){return function(){return gi.apply(this.doc,arguments)}})(at.prototype[bL])}}bz(at);function d8(gl,gk,gj){function gi(gr,gp,gn){if(gr.linked){for(var go=0;go<gr.linked.length;++go){var gm=gr.linked[go];if(gm.doc==gp){continue}var gq=gn&&gm.sharedHist;if(gj&&!gq){continue}gk(gm.doc,gq);gi(gm.doc,gr,gq)}}}gi(gl,null,true)}function ec(gi,gj){if(gj.cm){throw new Error("This document is already in use.")}gi.doc=gj;gj.cm=gi;X(gi);bs(gi);if(!gi.options.lineWrapping){h(gi)}gi.options.mode=gj.modeOption;ah(gi)}function fg(gl,gn){gn-=gl.first;if(gn<0||gn>=gl.size){throw new Error("There is no line "+(gn+gl.first)+" in the document.")}for(var gi=gl;!gi.lines;){for(var gj=0;;++gj){var gm=gi.children[gj],gk=gm.chunkSize();if(gn<gk){gi=gm;break}gn-=gk}}return gi.lines[gn]}function f5(gk,gm,gi){var gj=[],gl=gm.line;gk.iter(gm.line,gi.line+1,function(gn){var go=gn.text;if(gl==gi.line){go=go.slice(0,gi.ch)}if(gl==gm.line){go=go.slice(gm.ch)}gj.push(go);++gl});return gj}function a3(gj,gl,gk){var gi=[];gj.iter(gl,gk,function(gm){gi.push(gm.text)});return gi}function f6(gj,gi){var gk=gi-gj.height;if(gk){for(var gl=gj;gl;gl=gl.parent){gl.height+=gk}}}function bO(gi){if(gi.parent==null){return null}var gm=gi.parent,gl=di(gm.lines,gi);for(var gj=gm.parent;gj;gm=gj,gj=gj.parent){for(var gk=0;;++gk){if(gj.children[gk]==gm){break}gl+=gj.children[gk].chunkSize()}}return gl+gm.first}function bH(gk,gn){var gp=gk.first;outer:do{for(var gl=0;gl<gk.children.length;++gl){var go=gk.children[gl],gm=go.height;if(gn<gm){gk=go;continue outer}gn-=gm;gp+=go.chunkSize()}return gp}while(!gk.lines);for(var gl=0;gl<gk.lines.length;++gl){var gj=gk.lines[gl],gi=gj.height;if(gn<gi){break}gn-=gi}return gp+gl}function bN(gk){gk=y(gk);var gm=0,gj=gk.parent;for(var gl=0;gl<gj.lines.length;++gl){var gi=gj.lines[gl];if(gi==gk){break}else{gm+=gi.height}}for(var gn=gj.parent;gn;gj=gn,gn=gj.parent){for(var gl=0;gl<gn.children.length;++gl){var go=gn.children[gl];if(go==gj){break}else{gm+=go.height}}}return gm}function a(gj){var gi=gj.order;if(gi==null){gi=gj.order=bi(gj.text)}return gi}function fU(gi){this.done=[];this.undone=[];this.undoDepth=Infinity;this.lastModTime=this.lastSelTime=0;this.lastOp=this.lastSelOp=null;this.lastOrigin=this.lastSelOrigin=null;this.generation=this.maxGeneration=gi||1}function dv(gi,gk){var gj={from:cj(gk.from),to:cY(gk),text:f5(gi,gk.from,gk.to)};bZ(gi,gj,gk.from.line,gk.to.line+1);d8(gi,function(gl){bZ(gl,gj,gk.from.line,gk.to.line+1)},true);return gj}function fC(gj){while(gj.length){var gi=fH(gj);if(gi.ranges){gj.pop()}else{break}}}function eN(gj,gi){if(gi){fC(gj.done);return fH(gj.done)}else{if(gj.done.length&&!fH(gj.done).ranges){return fH(gj.done)}else{if(gj.done.length>1&&!gj.done[gj.done.length-2].ranges){gj.done.pop();return fH(gj.done)}}}}function fN(go,gm,gi,gl){var gk=go.history;gk.undone.length=0;var gj=+new Date,gp;if((gk.lastOp==gl||gk.lastOrigin==gm.origin&&gm.origin&&((gm.origin.charAt(0)=="+"&&go.cm&&gk.lastModTime>gj-go.cm.options.historyEventDelay)||gm.origin.charAt(0)=="*"))&&(gp=eN(gk,gk.lastOp==gl))){var gq=fH(gp.changes);if(cg(gm.from,gm.to)==0&&cg(gm.from,gq.to)==0){gq.to=cY(gm)}else{gp.changes.push(dv(go,gm))}}else{var gn=fH(gk.done);if(!gn||!gn.ranges){cO(go.sel,gk.done)}gp={changes:[dv(go,gm)],generation:gk.generation};gk.done.push(gp);while(gk.done.length>gk.undoDepth){gk.done.shift();if(!gk.done[0].ranges){gk.done.shift()}}}gk.done.push(gi);gk.generation=++gk.maxGeneration;gk.lastModTime=gk.lastSelTime=gj;gk.lastOp=gk.lastSelOp=gl;gk.lastOrigin=gk.lastSelOrigin=gm.origin;if(!gq){aE(go,"historyAdded")}}function bB(gm,gi,gk,gl){var gj=gi.charAt(0);return gj=="*"||gj=="+"&&gk.ranges.length==gl.ranges.length&&gk.somethingSelected()==gl.somethingSelected()&&new Date-gm.history.lastSelTime<=(gm.cm?gm.cm.options.historyEventDelay:500)}function gc(gn,gl,gi,gk){var gm=gn.history,gj=gk&&gk.origin;if(gi==gm.lastSelOp||(gj&&gm.lastSelOrigin==gj&&(gm.lastModTime==gm.lastSelTime&&gm.lastOrigin==gj||bB(gn,gj,fH(gm.done),gl)))){gm.done[gm.done.length-1]=gl}else{cO(gl,gm.done)}gm.lastSelTime=+new Date;gm.lastSelOrigin=gj;gm.lastSelOp=gi;if(gk&&gk.clearRedo!==false){fC(gm.undone)}}function cO(gj,gi){var gk=fH(gi);if(!(gk&&gk.ranges&&gk.equals(gj))){gi.push(gj)}}function bZ(gj,gn,gm,gl){var gi=gn["spans_"+gj.id],gk=0;gj.iter(Math.max(gj.first,gm),Math.min(gj.first+gj.size,gl),function(go){if(go.markedSpans){(gi||(gi=gn["spans_"+gj.id]={}))[gk]=go.markedSpans}++gk})}function bm(gk){if(!gk){return null}for(var gj=0,gi;gj<gk.length;++gj){if(gk[gj].marker.explicitlyCleared){if(!gi){gi=gk.slice(0,gj)}}else{if(gi){gi.push(gk[gj])}}}return !gi?gk:gi.length?gi:null}function b5(gl,gm){var gk=gm["spans_"+gl.id];if(!gk){return null}for(var gj=0,gi=[];gj<gm.text.length;++gj){gi.push(bm(gk[gj]))}return gi}function bQ(gt,gl,gs){for(var go=0,gj=[];go<gt.length;++go){var gk=gt[go];if(gk.ranges){gj.push(gs?f4.prototype.deepCopy.call(gk):gk);continue}var gq=gk.changes,gr=[];gj.push({changes:gr});for(var gn=0;gn<gq.length;++gn){var gp=gq[gn],gm;gr.push({from:gp.from,to:gp.to,text:gp.text});if(gl){for(var gi in gp){if(gm=gi.match(/^spans_(\d+)$/)){if(di(gl,Number(gm[1]))>-1){fH(gr)[gi]=gp[gi];delete gp[gi]}}}}}}return gj}function I(gl,gk,gj,gi){if(gj<gl.line){gl.line+=gi}else{if(gk<gl.line){gl.line=gk;gl.ch=0}}}function fi(gl,gn,go,gp){for(var gk=0;gk<gl.length;++gk){var gi=gl[gk],gm=true;if(gi.ranges){if(!gi.copied){gi=gl[gk]=gi.deepCopy();gi.copied=true}for(var gj=0;gj<gi.ranges.length;gj++){I(gi.ranges[gj].anchor,gn,go,gp);I(gi.ranges[gj].head,gn,go,gp)}continue}for(var gj=0;gj<gi.changes.length;++gj){var gq=gi.changes[gj];if(go<gq.from.line){gq.from=W(gq.from.line+gp,gq.from.ch);gq.to=W(gq.to.line+gp,gq.to.ch)}else{if(gn<=gq.to.line){gm=false;break}}}if(!gm){gl.splice(0,gk+1);gk=0}}}function dF(gj,gm){var gl=gm.from.line,gk=gm.to.line,gi=gm.text.length-(gk-gl)-1;fi(gj.done,gl,gk,gi);fi(gj.undone,gl,gk,gi)}var cH=H.e_preventDefault=function(gi){if(gi.preventDefault){gi.preventDefault()}else{gi.returnValue=false}};var dr=H.e_stopPropagation=function(gi){if(gi.stopPropagation){gi.stopPropagation()}else{gi.cancelBubble=true}};function bM(gi){return gi.defaultPrevented!=null?gi.defaultPrevented:gi.returnValue==false}var es=H.e_stop=function(gi){cH(gi);dr(gi)};function L(gi){return gi.target||gi.srcElement}function fO(gj){var gi=gj.which;if(gi==null){if(gj.button&1){gi=1}else{if(gj.button&2){gi=3}else{if(gj.button&4){gi=2}}}}if(b8&&gj.ctrlKey&&gi==1){gi=3}return gi}var bY=H.on=function(gl,gj,gk){if(gl.addEventListener){gl.addEventListener(gj,gk,false)}else{if(gl.attachEvent){gl.attachEvent("on"+gj,gk)}else{var gm=gl._handlers||(gl._handlers={});var gi=gm[gj]||(gm[gj]=[]);gi.push(gk)}}};var ee=H.off=function(gm,gk,gl){if(gm.removeEventListener){gm.removeEventListener(gk,gl,false)}else{if(gm.detachEvent){gm.detachEvent("on"+gk,gl)}else{var gi=gm._handlers&&gm._handlers[gk];if(!gi){return}for(var gj=0;gj<gi.length;++gj){if(gi[gj]==gl){gi.splice(gj,1);break}}}}};var aE=H.signal=function(gm,gl){var gi=gm._handlers&&gm._handlers[gl];if(!gi){return}var gj=Array.prototype.slice.call(arguments,2);for(var gk=0;gk<gi.length;++gk){gi[gk].apply(null,gj)}};var bA=null;function ae(go,gm){var gi=go._handlers&&go._handlers[gm];if(!gi){return}var gk=Array.prototype.slice.call(arguments,2),gn;if(bq){gn=bq.delayedCallbacks}else{if(bA){gn=bA}else{gn=bA=[];setTimeout(aM,0)}}function gj(gp){return function(){gp.apply(null,gk)}}for(var gl=0;gl<gi.length;++gl){gn.push(gj(gi[gl]))}}function aM(){var gi=bA;bA=null;for(var gj=0;gj<gi.length;++gj){gi[gj]()}}function aR(gi,gk,gj){if(typeof gk=="string"){gk={type:gk,preventDefault:function(){this.defaultPrevented=true}}}aE(gi,gj||gk.type,gi,gk);return bM(gk)||gk.codemirrorIgnore}function V(gj){var gi=gj._handlers&&gj._handlers.cursorActivity;if(!gi){return}var gl=gj.curOp.cursorActivityHandlers||(gj.curOp.cursorActivityHandlers=[]);for(var gk=0;gk<gi.length;++gk){if(di(gl,gi[gk])==-1){gl.push(gi[gk])}}}function fj(gk,gj){var gi=gk._handlers&&gk._handlers[gj];return gi&&gi.length>0}function bz(gi){gi.prototype.on=function(gj,gk){bY(this,gj,gk)};gi.prototype.off=function(gj,gk){ee(this,gj,gk)}}var dK=30;var cb=H.Pass={toString:function(){return"CodeMirror.Pass"}};var Z={scroll:false},M={origin:"*mouse"},cX={origin:"+move"};function gh(){this.id=null}gh.prototype.set=function(gi,gj){clearTimeout(this.id);this.id=setTimeout(gj,gi)};var bU=H.countColumn=function(gl,gj,gn,go,gk){if(gj==null){gj=gl.search(/[^\s\u00a0]/);if(gj==-1){gj=gl.length}}for(var gm=go||0,gp=gk||0;;){var gi=gl.indexOf("\t",gm);if(gi<0||gi>=gj){return gp+(gj-gm)}gp+=gi-gm;gp+=gn-(gp%gn);gm=gi+1}};function er(gm,gl,gn){for(var go=0,gk=0;;){var gj=gm.indexOf("\t",go);if(gj==-1){gj=gm.length}var gi=gj-go;if(gj==gm.length||gk+gi>=gl){return go+Math.min(gi,gl-gk)}gk+=gj-go;gk+=gn-(gk%gn);go=gj+1;if(gk>=gl){return go}}}var a0=[""];function cq(gi){while(a0.length<=gi){a0.push(fH(a0)+" ")}return a0[gi]}function fH(gi){return gi[gi.length-1]}var dM=function(gi){gi.select()};if(e2){dM=function(gi){gi.selectionStart=0;gi.selectionEnd=gi.value.length}}else{if(dL){dM=function(gj){try{gj.select()}catch(gi){}}}}function di(gk,gi){for(var gj=0;gj<gk.length;++gj){if(gk[gj]==gi){return gj}}return -1}function bT(gl,gk){var gi=[];for(var gj=0;gj<gl.length;gj++){gi[gj]=gk(gl[gj],gj)}return gi}function fV(){}function cl(gk,gi){var gj;if(Object.create){gj=Object.create(gk)}else{fV.prototype=gk;gj=new fV()}if(gi){aN(gi,gj)}return gj}function aN(gk,gj,gi){if(!gj){gj={}}for(var gl in gk){if(gk.hasOwnProperty(gl)&&(gi!==false||!gj.hasOwnProperty(gl))){gj[gl]=gk[gl]}}return gj}function cw(gj){var gi=Array.prototype.slice.call(arguments,1);return function(){return gj.apply(null,gi)}}var bd=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;var fE=H.isWordChar=function(gi){return/\w/.test(gi)||gi>"\x80"&&(gi.toUpperCase()!=gi.toLowerCase()||bd.test(gi))};function cB(gi,gj){if(!gj){return fE(gi)}if(gj.source.indexOf("\\w")>-1&&fE(gi)){return true}return gj.test(gi)}function eV(gi){for(var gj in gi){if(gi.hasOwnProperty(gj)&&gi[gj]){return false}}return true}var eK=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function fq(gi){return gi.charCodeAt(0)>=768&&eK.test(gi)}function f3(gi,gm,gl,gk){var gn=document.createElement(gi);if(gl){gn.className=gl}if(gk){gn.style.cssText=gk}if(typeof gm=="string"){gn.appendChild(document.createTextNode(gm))}else{if(gm){for(var gj=0;gj<gm.length;++gj){gn.appendChild(gm[gj])}}}return gn}var cm;if(document.createRange){cm=function(gl,gm,gj,gi){var gk=document.createRange();gk.setEnd(gi||gl,gj);gk.setStart(gl,gm);return gk}}else{cm=function(gk,gm,gi){var gj=document.body.createTextRange();try{gj.moveToElementText(gk.parentNode)}catch(gl){return gj}gj.collapse(true);gj.moveEnd("character",gi);gj.moveStart("character",gm);return gj}}function d2(gj){for(var gi=gj.childNodes.length;gi>0;--gi){gj.removeChild(gj.firstChild)}return gj}function bS(gi,gj){return d2(gi).appendChild(gj)}var gb=H.contains=function(gi,gj){if(gj.nodeType==3){gj=gj.parentNode}if(gi.contains){return gi.contains(gj)}do{if(gj.nodeType==11){gj=gj.host}if(gj==gi){return true}}while(gj=gj.parentNode)};function dP(){return document.activeElement}if(dL&&k<11){dP=function(){try{return document.activeElement}catch(gi){return document.body}}}function S(gi){return new RegExp("(^|\\s)"+gi+"(?:$|\\s)\\s*")}var f=H.rmClass=function(gk,gi){var gl=gk.className;var gj=S(gi).exec(gl);if(gj){var gm=gl.slice(gj.index+gj[0].length);gk.className=gl.slice(0,gj.index)+(gm?gj[1]+gm:"")}};var fB=H.addClass=function(gj,gi){var gk=gj.className;if(!S(gi).test(gk)){gj.className+=(gk?" ":"")+gi}};function fT(gk,gi){var gj=gk.split(" ");for(var gl=0;gl<gj.length;gl++){if(gj[gl]&&!S(gj[gl]).test(gi)){gi+=" "+gj[gl]}}return gi}function aA(gl){if(!document.body.getElementsByClassName){return}var gk=document.body.getElementsByClassName("CodeMirror");for(var gj=0;gj<gk.length;gj++){var gi=gk[gj].CodeMirror;if(gi){gl(gi)}}}var cD=false;function bk(){if(cD){return}fF();cD=true}function fF(){var gi;bY(window,"resize",function(){if(gi==null){gi=setTimeout(function(){gi=null;aA(aT)},100)}});bY(window,"blur",function(){aA(aV)})}var eM=function(){if(dL&&k<9){return false}var gi=f3("div");return"draggable" in gi||"dragDrop" in gi}();var fM;function bo(gi){if(fM==null){var gk=f3("span","\u200b");bS(gi,f3("span",[gk,document.createTextNode("x")]));if(gi.firstChild.offsetHeight!=0){fM=gk.offsetWidth<=1&&gk.offsetHeight>2&&!(dL&&k<8)}}var gj=fM?f3("span","\u200b"):f3("span","\u00a0",null,"display: inline-block; width: 1px; margin-right: -1px");gj.setAttribute("cm-text","");return gj}var fL;function bP(gl){if(fL!=null){return fL}var gi=bS(gl,document.createTextNode("A\u062eA"));var gk=cm(gi,0,1).getBoundingClientRect();if(!gk||gk.left==gk.right){return false}var gj=cm(gi,1,2).getBoundingClientRect();return fL=(gj.right-gk.right<3)}var a1=H.splitLines="\n\nb".split(/\n/).length!=3?function(gn){var go=0,gi=[],gm=gn.length;while(go<=gm){var gl=gn.indexOf("\n",go);if(gl==-1){gl=gn.length}var gk=gn.slice(go,gn.charAt(gl-1)=="\r"?gl-1:gl);var gj=gk.indexOf("\r");if(gj!=-1){gi.push(gk.slice(0,gj));go+=gj+1}else{gi.push(gk);go=gl+1}}return gi}:function(gi){return gi.split(/\r\n?|\n/)};var bt=window.getSelection?function(gj){try{return gj.selectionStart!=gj.selectionEnd}catch(gi){return false}}:function(gk){try{var gi=gk.ownerDocument.selection.createRange()}catch(gj){}if(!gi||gi.parentElement()!=gk){return false}return gi.compareEndPoints("StartToEnd",gi)!=0};var db=(function(){var gi=f3("div");if("oncopy" in gi){return true}gi.setAttribute("oncopy","return;");return typeof gi.oncopy=="function"})();var e7=null;function aK(gj){if(e7!=null){return e7}var gk=bS(gj,f3("span","x"));var gl=gk.getBoundingClientRect();var gi=cm(gk,0,1).getBoundingClientRect();return e7=Math.abs(gl.left-gi.left)>1}var fh={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",107:"=",109:"-",127:"Delete",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"};H.keyNames=fh;(function(){for(var gi=0;gi<10;gi++){fh[gi+48]=fh[gi+96]=String(gi)}for(var gi=65;gi<=90;gi++){fh[gi]=String.fromCharCode(gi)}for(var gi=1;gi<=12;gi++){fh[gi+111]=fh[gi+63235]="F"+gi}})();function d5(gi,go,gn,gm){if(!gi){return gm(go,gn,"ltr")}var gl=false;for(var gk=0;gk<gi.length;++gk){var gj=gi[gk];if(gj.from<gn&&gj.to>go||go==gn&&gj.to==go){gm(Math.max(gj.from,go),Math.min(gj.to,gn),gj.level==1?"rtl":"ltr");gl=true}}if(!gl){gm(go,gn,"ltr")}}function dz(gi){return gi.level%2?gi.to:gi.from}function ge(gi){return gi.level%2?gi.from:gi.to}function cF(gj){var gi=a(gj);return gi?dz(gi[0]):0}function cT(gj){var gi=a(gj);if(!gi){return gj.text.length}return ge(fH(gi))}function bu(gj,gm){var gk=fg(gj.doc,gm);var gn=y(gk);if(gn!=gk){gm=bO(gn)}var gi=a(gn);var gl=!gi?0:gi[0].level%2?cT(gn):cF(gn);return W(gm,gl)}function dQ(gk,gn){var gj,gl=fg(gk.doc,gn);while(gj=ex(gl)){gl=gj.find(1,true).line;gn=null}var gi=a(gl);var gm=!gi?gl.text.length:gi[0].level%2?cF(gl):cT(gl);return W(gn==null?bO(gl):gn,gm)}function dJ(gj,go){var gn=bu(gj,go.line);var gk=fg(gj.doc,gn.line);var gi=a(gk);if(!gi||gi[0].level==0){var gm=Math.max(0,gk.text.search(/\S/));var gl=go.line==gn.line&&go.ch<=gm&&go.ch;return W(gn.line,gl?0:gm)}return gn}function an(gj,gk,gi){var gl=gj[0].level;if(gk==gl){return true}if(gi==gl){return false}return gk<gi}var e3;function aG(gi,gm){e3=null;for(var gj=0,gk;gj<gi.length;++gj){var gl=gi[gj];if(gl.from<gm&&gl.to>gm){return gj}if((gl.from==gm||gl.to==gm)){if(gk==null){gk=gj}else{if(an(gi,gl.level,gi[gk].level)){if(gl.from!=gl.to){e3=gk}return gj}else{if(gl.from!=gl.to){e3=gj}return gk}}}}return gk}function ff(gi,gl,gj,gk){if(!gk){return gl+gj}do{gl+=gj}while(gl>0&&fq(gi.text.charAt(gl)));return gl}function u(gi,gp,gk,gl){var gm=a(gi);if(!gm){return ai(gi,gp,gk,gl)}var go=aG(gm,gp),gj=gm[go];var gn=ff(gi,gp,gj.level%2?-gk:gk,gl);for(;;){if(gn>gj.from&&gn<gj.to){return gn}if(gn==gj.from||gn==gj.to){if(aG(gm,gn)==go){return gn}gj=gm[go+=gk];return(gk>0)==gj.level%2?gj.to:gj.from}else{gj=gm[go+=gk];if(!gj){return null}if((gk>0)==gj.level%2){gn=ff(gi,gj.to,-1,gl)}else{gn=ff(gi,gj.from,1,gl)}}}}function ai(gi,gm,gj,gk){var gl=gm+gj;if(gk){while(gl>0&&fq(gi.text.charAt(gl))){gl+=gj}}return gl<0||gl>gi.text.length?null:gl}var bi=(function(){var go="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN";var gm="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmm";function gl(gs){if(gs<=247){return go.charAt(gs)}else{if(1424<=gs&&gs<=1524){return"R"}else{if(1536<=gs&&gs<=1773){return gm.charAt(gs-1536)}else{if(1774<=gs&&gs<=2220){return"r"}else{if(8192<=gs&&gs<=8203){return"w"}else{if(gs==8204){return"b"}else{return"L"}}}}}}}var gi=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;var gr=/[stwN]/,gk=/[LRr]/,gj=/[Lb1n]/,gn=/[1n]/;var gq="L";function gp(gu,gt,gs){this.level=gu;this.from=gt;this.to=gs}return function(gC){if(!gi.test(gC)){return false}var gI=gC.length,gy=[];for(var gH=0,gu;gH<gI;++gH){gy.push(gu=gl(gC.charCodeAt(gH)))}for(var gH=0,gB=gq;gH<gI;++gH){var gu=gy[gH];if(gu=="m"){gy[gH]=gB}else{gB=gu}}for(var gH=0,gs=gq;gH<gI;++gH){var gu=gy[gH];if(gu=="1"&&gs=="r"){gy[gH]="n"}else{if(gk.test(gu)){gs=gu;if(gu=="r"){gy[gH]="R"}}}}for(var gH=1,gB=gy[0];gH<gI-1;++gH){var gu=gy[gH];if(gu=="+"&&gB=="1"&&gy[gH+1]=="1"){gy[gH]="1"}else{if(gu==","&&gB==gy[gH+1]&&(gB=="1"||gB=="n")){gy[gH]=gB}}gB=gu}for(var gH=0;gH<gI;++gH){var gu=gy[gH];if(gu==","){gy[gH]="N"}else{if(gu=="%"){for(var gv=gH+1;gv<gI&&gy[gv]=="%";++gv){}var gJ=(gH&&gy[gH-1]=="!")||(gv<gI&&gy[gv]=="1")?"1":"N";for(var gF=gH;gF<gv;++gF){gy[gF]=gJ}gH=gv-1}}}for(var gH=0,gs=gq;gH<gI;++gH){var gu=gy[gH];if(gs=="L"&&gu=="1"){gy[gH]="L"}else{if(gk.test(gu)){gs=gu}}}for(var gH=0;gH<gI;++gH){if(gr.test(gy[gH])){for(var gv=gH+1;gv<gI&&gr.test(gy[gv]);++gv){}var gz=(gH?gy[gH-1]:gq)=="L";var gt=(gv<gI?gy[gv]:gq)=="L";var gJ=gz||gt?"L":"R";for(var gF=gH;gF<gv;++gF){gy[gF]=gJ}gH=gv-1}}var gG=[],gD;for(var gH=0;gH<gI;){if(gj.test(gy[gH])){var gw=gH;for(++gH;gH<gI&&gj.test(gy[gH]);++gH){}gG.push(new gp(0,gw,gH))}else{var gx=gH,gA=gG.length;for(++gH;gH<gI&&gy[gH]!="L";++gH){}for(var gF=gx;gF<gH;){if(gn.test(gy[gF])){if(gx<gF){gG.splice(gA,0,new gp(1,gx,gF))}var gE=gF;for(++gF;gF<gH&&gn.test(gy[gF]);++gF){}gG.splice(gA,0,new gp(2,gE,gF));gx=gF}else{++gF}}if(gx<gH){gG.splice(gA,0,new gp(1,gx,gH))}}}if(gG[0].level==1&&(gD=gC.match(/^\s+/))){gG[0].from=gD[0].length;gG.unshift(new gp(0,0,gD[0].length))}if(fH(gG).level==1&&(gD=gC.match(/\s+$/))){fH(gG).to-=gD[0].length;gG.push(new gp(0,gI-gD[0].length,gI))}if(gG[0].level==2){gG.unshift(new gp(1,gG[0].to,gG[0].to))}if(gG[0].level!=fH(gG).level){gG.push(new gp(gG[0].level,gI,gI))}return gG}})();H.version="5.4.0";return H});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/templatemode/index.html000060400000000054152455705240025252 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/templatemode/plugin.js000060400000014275152455705240025123 0ustar00(function() {
	var a= {
		exec:function(editor){
			SetClass("acyeditor_text", editor);
		}
	};
	var b= {
		exec:function(editor){
			SetClass("acyeditor_picture", editor);
		}
	};
	var c= {
		exec:function(editor){
			SetClass("acyeditor_delete", editor);
		}
	};
	var g= {
		canUndo: false,
		exec:function(editor){
			if (parent.AddRemoveTemplateCss)
			{
				AddRemoveTemplateCss();
			}
		}
	};
	var i={
		exec:function(editor){
			initAreas();
		}
	};
	var k={
		exec:function(editor){
			SetSortable(editor);
		}
	};
	var d='setText';
	var e='setPicture';
	var f='setDelete';
	var h='showAreas';
	var j='initAreas';
	var l='setSortable';

	CKEDITOR.plugins.add("templatemode",{
		init:function(editor){
			editor.addCommand(d,a);
			editor.addCommand(e,b);
			editor.addCommand(f,c);
			editor.addCommand(h,g);
			editor.addCommand(j,i);
			editor.addCommand(l,k);
			editor.ui.addButton("textarea",{label: parent.tooltipTemplateText,
											icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-edittext.png",
											command:d,
											className: "boutontemplate_text",
											toolbar: "templatemode"});
			editor.ui.addButton("picturearea",{label: parent.tooltipTemplatePicture,
											 icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-editpicture.png",
											 command:e,
											 className: "boutontemplate_picture",
											toolbar: "templatemode"});
			editor.ui.addButton("deletearea",{label: parent.tooltipTemplateDelete,
											icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-delete.png",
											command:f,
											className: "boutontemplate_delete",
											toolbar: "templatemode"});
			editor.ui.addButton("sortablearea",{label: parent.tooltipTemplateSortable,
												icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-sortable.png",
												command: l,
												className: "boutontemplate_sortable",
												toolbar: "templatemode"});
			editor.ui.addButton("showarea",{label: parent.tooltipShowAreas,
											icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-show.png",
											command:h,
											className: "boutontemplate_show",
											toolbar: "templatemode"});
			editor.ui.addButton("initareas",{label:parent.tooltipInitAreas,
												icon: this.path.split("/plugins/")[0] + "/media/com_acymailing/images/editor/icon-16-initareas.png",
												command: j,
												className:"boutontemplate_initareas",
												toolbar: "templatemode"});

			editor.on( 'selectionChange', function() {
				SetAnchorNodeIE()
				if (parent.SetStateForSelection)
				{
					parent.SetStateForSelection();
				}
			});
		}
	});

	function initAreas(){
		var removeConfirm = confirm(parent.confirmInitAreas);
		if(removeConfirm){
			var acyframe =  jQuery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];
			var zoneGlob = acyframe.contentWindow.document.body.getElementsByTagName('*');
			jQuery(zoneGlob).find('.acyeditor_text').removeClass('acyeditor_text');
			jQuery(zoneGlob).find('.acyeditor_picture').removeClass('acyeditor_picture');
			jQuery(zoneGlob).find('.acyeditor_delete').removeClass('acyeditor_delete');
			jQuery(zoneGlob).find('.acyeditor_sortable').removeClass('acyeditor_sortable');
		}
		parent.SetTitleTemplate();
	}

	function SetClass(classe, editor){

		var acyframe =  jQuery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];

		var node = null;
		if (parent.isBrowserIE())
		{
			if (parent.anchorNodeIE == undefined)
			{
				SetAnchorNodeIE();
			}
			node = parent.GetParentForClass(parent.anchorNodeIE, classe);
		}
		else if (acyframe != null
				&& acyframe != undefined
				&& acyframe.contentWindow != null
				&& acyframe.contentWindow != undefined
				&& acyframe.contentWindow.getSelection)
		{
			var sel = acyframe.contentWindow.getSelection();
			if (sel.anchorNode) {
				node = parent.GetParentForClass(sel.anchorNode, classe);
			}
		}
		SetClassNode(classe, editor, node);

		parent.SetStateForSelection();
	}

	function SetClassNode(classe, editor, node){
		if (node != null && node != undefined)
		{
			if (node.className != null && node.className != undefined && node.className.indexOf(classe) < 0)
			{
				if (classe == "acyeditor_text")
				{
					jQuery(node).removeClass("acyeditor_picture");
				}
				else if (classe == "acyeditor_picture")
				{
					jQuery(node).removeClass("acyeditor_text");
				}
				jQuery(node).addClass(classe);
			}
			else
			{
				jQuery(node).removeClass(classe);
			}
			parent.SetTitleTemplate();
		}
	}

	function SetAnchorNodeIE()
	{
		if (parent.isBrowserIE())
		{
			var acyframe =  jQuery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];
			parent.anchorNodeIE = undefined;
			if (acyframe != null
			 && acyframe != undefined
			 && acyframe.contentWindow.document != null
			 && acyframe.contentWindow.document != undefined
			 && acyframe.contentWindow.document.selection)
			{
				if (acyframe.contentWindow.document.selection.createRange().parentElement)
				{
					parent.anchorNodeIE = acyframe.contentWindow.document.selection.createRange().parentElement();
				}
				else if (acyframe.contentWindow.document.selection.createRange().item)
				{
					parent.anchorNodeIE = acyframe.contentWindow.document.selection.createRange().item(0);
				}
			}
		}
	}

	function SetSortable(editor){
		var acyframe =  jQuery('#edition_en_cours')[0].parentElement.getElementsByTagName("iframe")[0];
		var node = null;
		if (parent.isBrowserIE()){
			if (parent.anchorNodeIE == undefined){
				SetAnchorNodeIE();
			}
			node = parent.anchorNodeIE;
		}
		else if (acyframe != null
				&& acyframe != undefined
				&& acyframe.contentWindow != null
				&& acyframe.contentWindow != undefined
				&& acyframe.contentWindow.getSelection){
			var sel = acyframe.contentWindow.getSelection();
			if (sel.anchorNode){
				node = sel.anchorNode;
			}
		}
		var tableSortable = jQuery(node).closest('tbody');
		if(tableSortable.hasClass('acyeditor_sortable')){
			tableSortable.removeClass('acyeditor_sortable');
		} else{
			tableSortable.addClass('acyeditor_sortable');
		}
		parent.SetStateForSelection();
	}
})();

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/index.html000060400000000054152455705240023527 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/dialogs/index.html000060400000000054152455705240025151 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/dialogs/link.js000060400000025300152455705240024450 0ustar00(function(){CKEDITOR.dialog.add("link",function(g){var l=CKEDITOR.plugins.link,m=function(){var a=this.getDialog(),b=a.getContentElement("target","popupFeatures"),a=a.getContentElement("target","linkTargetName"),k=this.getValue();if(b&&a)switch(b=b.getElement(),b.hide(),a.setValue(""),k){case "frame":a.setLabel(g.lang.link.targetFrameName);a.getElement().show();break;case "popup":b.show();a.setLabel(g.lang.link.targetPopupName);a.getElement().show();break;default:a.setValue(k),a.getElement().hide()}},
f=function(a){a.target&&this.setValue(a.target[this.id]||"")},h=function(a){a.advanced&&this.setValue(a.advanced[this.id]||"")},i=function(a){a.target||(a.target={});a.target[this.id]=this.getValue()||""},j=function(a){a.advanced||(a.advanced={});a.advanced[this.id]=this.getValue()||""},c=g.lang.common,b=g.lang.link,d;return{title:b.title,minWidth:350,minHeight:230,contents:[{id:"info",label:b.info,title:b.info,elements:[{id:"linkType",type:"select",label:b.type,"default":"url",items:[[b.toUrl,"url"],
[b.toAnchor,"anchor"],[b.toEmail,"email"]],onChange:function(){var a=this.getDialog(),b=["urlOptions","anchorOptions","emailOptions"],k=this.getValue(),e=a.definition.getContents("upload"),e=e&&e.hidden;"url"==k?(g.config.linkShowTargetTab&&a.showPage("target"),e||a.showPage("upload")):(a.hidePage("target"),e||a.hidePage("upload"));for(e=0;e<b.length;e++){var c=a.getContentElement("info",b[e]);c&&(c=c.getElement().getParent().getParent(),b[e]==k+"Options"?c.show():c.hide())}a.layout()},setup:function(a){this.setValue(a.type||
"url")},commit:function(a){a.type=this.getValue()}},{type:"vbox",id:"urlOptions",children:[{type:"hbox",widths:["25%","75%"],children:[{id:"protocol",type:"select",label:c.protocol,"default":"http://",items:[["http://‎","http://"],["https://‎","https://"],["ftp://‎","ftp://"],["news://‎","news://"],[b.other,""]],setup:function(a){a.url&&this.setValue(a.url.protocol||"")},commit:function(a){a.url||(a.url={});a.url.protocol=this.getValue()}},{type:"text",id:"url",label:c.url,required:!0,onLoad:function(){this.allowOnChange=
!0},onKeyUp:function(){this.allowOnChange=!1;var a=this.getDialog().getContentElement("info","protocol"),b=this.getValue(),k=/^((javascript:)|[#\/\.\?])/i,c=/^(http|https|ftp|news):\/\/(?=.)/i.exec(b);c?(this.setValue(b.substr(c[0].length)),a.setValue(c[0].toLowerCase())):k.test(b)&&a.setValue("");this.allowOnChange=!0},onChange:function(){if(this.allowOnChange)this.onKeyUp()},validate:function(){var a=this.getDialog();return a.getContentElement("info","linkType")&&"url"!=a.getValueOf("info","linkType")?
!0:!g.config.linkJavaScriptLinksAllowed&&/javascript\:/.test(this.getValue())?(alert(c.invalidValue),!1):this.getDialog().fakeObj?!0:CKEDITOR.dialog.validate.notEmpty(b.noUrl).apply(this)},setup:function(a){this.allowOnChange=!1;a.url&&this.setValue(a.url.url);this.allowOnChange=!0},commit:function(a){this.onChange();a.url||(a.url={});a.url.url=this.getValue();this.allowOnChange=!1}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().show()}},{type:"button",
id:"browse",hidden:"true",filebrowser:"info:url",label:c.browseServer}]},{type:"vbox",id:"anchorOptions",width:260,align:"center",padding:0,children:[{type:"fieldset",id:"selectAnchorText",label:b.selectAnchor,setup:function(){d=l.getEditorAnchors(g);this.getElement()[d&&d.length?"show":"hide"]()},children:[{type:"hbox",id:"selectAnchor",children:[{type:"select",id:"anchorName","default":"",label:b.anchorName,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=
0;b<d.length;b++)d[b].name&&this.add(d[b].name);a.anchor&&this.setValue(a.anchor.name);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.focus()},commit:function(a){a.anchor||(a.anchor={});a.anchor.name=this.getValue()}},{type:"select",id:"anchorId","default":"",label:b.anchorId,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=0;b<d.length;b++)d[b].id&&this.add(d[b].id);a.anchor&&this.setValue(a.anchor.id)},commit:function(a){a.anchor||
(a.anchor={});a.anchor.id=this.getValue()}}],setup:function(){this.getElement()[d&&d.length?"show":"hide"]()}}]},{type:"html",id:"noAnchors",style:"text-align: center;",html:'<div role="note" tabIndex="-1">'+CKEDITOR.tools.htmlEncode(b.noAnchors)+"</div>",focus:!0,setup:function(){this.getElement()[d&&d.length?"hide":"show"]()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}},{type:"vbox",id:"emailOptions",padding:1,children:[{type:"text",id:"emailAddress",
label:b.emailAddress,required:!0,validate:function(){var a=this.getDialog();return!a.getContentElement("info","linkType")||"email"!=a.getValueOf("info","linkType")?!0:CKEDITOR.dialog.validate.notEmpty(b.noEmail).apply(this)},setup:function(a){a.email&&this.setValue(a.email.address);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.select()},commit:function(a){a.email||(a.email={});a.email.address=this.getValue()}},{type:"text",id:"emailSubject",label:b.emailSubject,
setup:function(a){a.email&&this.setValue(a.email.subject)},commit:function(a){a.email||(a.email={});a.email.subject=this.getValue()}},{type:"textarea",id:"emailBody",label:b.emailBody,rows:3,"default":"",setup:function(a){a.email&&this.setValue(a.email.body)},commit:function(a){a.email||(a.email={});a.email.body=this.getValue()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}}]},{id:"target",requiredContent:"a[target]",label:b.target,title:b.target,
elements:[{type:"hbox",widths:["50%","50%"],children:[{type:"select",id:"linkTargetType",label:c.target,"default":"notSet",style:"width : 100%;",items:[[c.notSet,"notSet"],[b.targetFrame,"frame"],[b.targetPopup,"popup"],[c.targetNew,"_blank"],[c.targetTop,"_top"],[c.targetSelf,"_self"],[c.targetParent,"_parent"]],onChange:m,setup:function(a){a.target&&this.setValue(a.target.type||"notSet");m.call(this)},commit:function(a){a.target||(a.target={});a.target.type=this.getValue()}},{type:"text",id:"linkTargetName",
label:b.targetFrameName,"default":"",setup:function(a){a.target&&this.setValue(a.target.name)},commit:function(a){a.target||(a.target={});a.target.name=this.getValue().replace(/\W/gi,"")}}]},{type:"vbox",width:"100%",align:"center",padding:2,id:"popupFeatures",children:[{type:"fieldset",label:b.popupFeatures,children:[{type:"hbox",children:[{type:"checkbox",id:"resizable",label:b.popupResizable,setup:f,commit:i},{type:"checkbox",id:"status",label:b.popupStatusBar,setup:f,commit:i}]},{type:"hbox",
children:[{type:"checkbox",id:"location",label:b.popupLocationBar,setup:f,commit:i},{type:"checkbox",id:"toolbar",label:b.popupToolbar,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"menubar",label:b.popupMenuBar,setup:f,commit:i},{type:"checkbox",id:"fullscreen",label:b.popupFullScreen,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"scrollbars",label:b.popupScrollBars,setup:f,commit:i},{type:"checkbox",id:"dependent",label:b.popupDependent,setup:f,commit:i}]},{type:"hbox",
children:[{type:"text",widths:["50%","50%"],labelLayout:"horizontal",label:c.width,id:"width",setup:f,commit:i},{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:b.popupLeft,id:"left",setup:f,commit:i}]},{type:"hbox",children:[{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:c.height,id:"height",setup:f,commit:i},{type:"text",labelLayout:"horizontal",label:b.popupTop,widths:["50%","50%"],id:"top",setup:f,commit:i}]}]}]}]},{id:"upload",label:b.upload,title:b.upload,hidden:!0,
filebrowser:"uploadButton",elements:[{type:"file",id:"upload",label:c.upload,style:"height:40px",size:29},{type:"fileButton",id:"uploadButton",label:c.uploadSubmit,filebrowser:"info:url","for":["upload","upload"]}]},{id:"advanced",label:b.advanced,title:b.advanced,elements:[{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",id:"advId",requiredContent:"a[id]",label:b.id,setup:h,commit:j},{type:"select",id:"advLangDir",requiredContent:"a[dir]",label:b.langDir,
"default":"",style:"width:110px",items:[[c.notSet,""],[b.langDirLTR,"ltr"],[b.langDirRTL,"rtl"]],setup:h,commit:j},{type:"text",id:"advAccessKey",requiredContent:"a[accesskey]",width:"80px",label:b.acccessKey,maxLength:1,setup:h,commit:j}]},{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",label:b.name,id:"advName",requiredContent:"a[name]",setup:h,commit:j},{type:"text",label:b.langCode,id:"advLangCode",requiredContent:"a[lang]",width:"110px","default":"",setup:h,commit:j},{type:"text",
label:b.tabIndex,id:"advTabIndex",requiredContent:"a[tabindex]",width:"80px",maxLength:5,setup:h,commit:j}]}]},{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.advisoryTitle,requiredContent:"a[title]","default":"",id:"advTitle",setup:h,commit:j},{type:"text",label:b.advisoryContentType,requiredContent:"a[type]","default":"",id:"advContentType",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.cssClasses,requiredContent:"a(cke-xyz)",
"default":"",id:"advCSSClasses",setup:h,commit:j},{type:"text",label:b.charset,requiredContent:"a[charset]","default":"",id:"advCharset",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.rel,requiredContent:"a[rel]","default":"",id:"advRel",setup:h,commit:j},{type:"text",label:b.styles,requiredContent:"a{cke-xyz}","default":"",id:"advStyles",validate:CKEDITOR.dialog.validate.inlineStyle(g.lang.common.invalidInlineStyle),setup:h,commit:j}]}]}]}],onShow:function(){var a=
this.getParentEditor(),b=a.getSelection(),c=null;(c=l.getSelectedLink(a))&&c.hasAttribute("href")?b.getSelectedElement()||b.selectElement(c):c=null;a=l.parseLinkAttributes(a,c);this._.selectedElement=c;this.setupContent(a)},onOk:function(){var a={};this.commitContent(a);var b=g.getSelection(),c=l.getLinkAttributes(g,a);if(this._.selectedElement){var e=this._.selectedElement,d=e.data("cke-saved-href"),f=e.getHtml();e.setAttributes(c.set);e.removeAttributes(c.removed);if(d==f||"email"==a.type&&-1!=
f.indexOf("@"))e.setHtml("email"==a.type?a.email.address:c.set["data-cke-saved-href"]),b.selectElement(e);delete this._.selectedElement}else b=b.getRanges()[0],b.collapsed&&(a=new CKEDITOR.dom.text("email"==a.type?a.email.address:c.set["data-cke-saved-href"],g.document),b.insertNode(a),b.selectNodeContents(a)),c=new CKEDITOR.style({element:"a",attributes:c.set}),c.type=CKEDITOR.STYLE_INLINE,c.applyToRange(b,g),b.select()},onLoad:function(){g.config.linkShowAdvancedTab||this.hidePage("advanced");g.config.linkShowTargetTab||
this.hidePage("target")},onFocus:function(){var a=this.getContentElement("info","linkType");a&&"url"==a.getValue()&&(a=this.getContentElement("info","url"),a.select())}}})})();
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/dialogs/anchor.js000060400000002701152455705240024765 0ustar00CKEDITOR.dialog.add("anchor",function(c){function d(a,b){return a.createFakeElement(a.document.createElement("a",{attributes:b}),"cke_anchor","anchor")}return{title:c.lang.link.anchor.title,minWidth:300,minHeight:60,onOk:function(){var a=CKEDITOR.tools.trim(this.getValueOf("info","txtName")),a={id:a,name:a,"data-cke-saved-name":a};if(this._.selectedElement)this._.selectedElement.data("cke-realelement")?(a=d(c,a),a.replace(this._.selectedElement),CKEDITOR.env.ie&&c.getSelection().selectElement(a)):
this._.selectedElement.setAttributes(a);else{var b=c.getSelection(),b=b&&b.getRanges()[0];b.collapsed?(a=d(c,a),b.insertNode(a)):(CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(a["class"]="cke_anchor"),a=new CKEDITOR.style({element:"a",attributes:a}),a.type=CKEDITOR.STYLE_INLINE,c.applyStyle(a))}},onHide:function(){delete this._.selectedElement},onShow:function(){var a=c.getSelection(),b=a.getSelectedElement(),d=b&&b.data("cke-realelement"),e=d?CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,b):CKEDITOR.plugins.link.getSelectedLink(c);
e&&(this._.selectedElement=e,this.setValueOf("info","txtName",e.data("cke-saved-name")||""),!d&&a.selectElement(e),b&&(this._.selectedElement=b));this.getContentElement("info","txtName").focus()},contents:[{id:"info",label:c.lang.link.anchor.title,accessKey:"I",elements:[{type:"text",id:"txtName",label:c.lang.link.anchor.name,required:!0,validate:function(){return!this.getValue()?(alert(c.lang.link.anchor.errorName),!1):!0}}]}]}});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/images/hidpi/anchor.png000060400000002543152455705240026061 0ustar00�PNG


IHDR  szz�*IDATXýW]lTE>�g�(�-K�(DI)j[R�	5�D!���bbĀ`)Ƈ�$F���ᥦ�!1FH�@xT�F�@7�Ҕ4%
YS�I+��b��ݿ�����ݽ{�ˮ@��۝;3��oΜ3�\ejh�L�$3�#t��x<�ɐ�J���.�'E!M�I�xHs�IQU)b�Dd�������BI:M��E�̴)�Yy�#*_^v:0��c���:�}>R]�"K䳜o�׸x-��<w���Ӷ��_�\�)�_>��V*�2r�k�a
�ܲ�$e	������O�O��ٽj��ٳ4:0�;���B!㗖c�H�r{�v�{��+}}�@�|�X7�:Y��?���|萑?�p�V����A�J���zذn�>;k�J���xx��>-傀�[�F�#��ttt�8�0e�Q����\��W����w���\�H�;w2��-�Ǐ�@w7e�O���a%����-��[X�(�eb���\�F�x����%��Ү]B�Gn�I��_%��eO�����FDI�r�V��9��k�Yx�<��.��
I�l��(�W&��@�B��,wO �x.K0�
�ד�
$a��5���.B�s g��v$�u�Th<�k�z)�y<�W�&��O&�d0n:�����ֲ�)M^K�,b���
<HF�#x��
Y��X���3
,��*.QX�{U��RcS?���=G'U��jz�(p6��t���N@��C�
�pA���~
c�|.'
�<_���0�a�A�9 ��zk~���F�@�?�˧	�:�2�(Q|�0�}�G8L�F""iR	7@����hoj"/�� �KR��⿂�j"�����`#g@a\��F@b�mjE����H�L}M��oHV)���=pxxwb�<[�.p��A���	����]��!��>��G �T���ZЪ;ʆ�i�q.�aL*�t]�i.6#�wc��P�^�@��B����sq�޽�q޺l��To�j~��
t��;�0�����f|K;�6���i�
-\�@Wv���6TR�8`������[_�i.ɒ���eI��h4j�t8z���{2���/�"وr�I�+����{���bC|�BN܋,�ū�[�	/���1[`��������L�㟂��~��(4�뫰^ֽreQ���vq���&��7�-� �����'
Xg���1�(V
/69U-�LU�Kί#����H�H�5�s�#�)R@-����R�=ɶ�,���‘,3��Q���!�Wxԡ0(>N��(��/|W�EIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/images/hidpi/index.html000060400000000054152455705240026071 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/images/anchor.png000060400000001115152455705240024756 0ustar00�PNG


IHDR�aIDAT8�u��jSA�gnڊMc)���)�(�Zԝ�>@�O�+�.]tS��X*R��k)4H����T�"1D�If>w�6���0s��7s>˲� ��s�_X��vk��Q�=`��H� MS$�V�MIoZ��������$Hz*�F�I���F=� �2$	�$����:h������jwwv“�[�sJf���,S''ܪT8�t��$��kf��u�G!KJqM�{gf��w2>�X��B����$�SS|=:b��4��Wp%�P0c`F�9lb���'r~ �X������H�H�pf8�b���9�pa�G��7�W�DŽ��cf$Α���޶Z�f�C�J�ͣv���*�@�۽�-Q�F�e�3�����*����j4�F�3�N�^�C��#A��-�f��DRI�cI/%�VW%�L�sI�4��<�Z��̐D������s�;?�_>�y'	�Č���'8�9�0�4POӟ��c��+�B(��r�Ҹ�!,�]�Ft���OWf�W
�2C@Xʿ�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/link/images/index.html000060400000000054152455705240024774 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/pastefromword/index.html000060400000000054152455705240025466 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/pastefromword/filter/default.js000060400000032761152455705240026752 0ustar00(function(){function y(a){for(var a=a.toUpperCase(),c=z.length,b=0,f=0;f<c;++f)for(var d=z[f],e=d[1].length;a.substr(0,e)==d[1];a=a.substr(e))b+=d[0];return b}function A(a){for(var a=a.toUpperCase(),c=B.length,b=1,f=1;0<a.length;f*=c)b+=B.indexOf(a.charAt(a.length-1))*f,a=a.substr(0,a.length-1);return b}var C=CKEDITOR.htmlParser.fragment.prototype,o=CKEDITOR.htmlParser.element.prototype;C.onlyChild=o.onlyChild=function(){var a=this.children;return 1==a.length&&a[0]||null};o.removeAnyChildWithName=
function(a){for(var c=this.children,b=[],f,d=0;d<c.length;d++)f=c[d],f.name&&(f.name==a&&(b.push(f),c.splice(d--,1)),b=b.concat(f.removeAnyChildWithName(a)));return b};o.getAncestor=function(a){for(var c=this.parent;c&&(!c.name||!c.name.match(a));)c=c.parent;return c};C.firstChild=o.firstChild=function(a){for(var c,b=0;b<this.children.length;b++)if(c=this.children[b],a(c)||c.name&&(c=c.firstChild(a)))return c;return null};o.addStyle=function(a,c,b){var f="";if("string"==typeof c)f+=a+":"+c+";";else{if("object"==
typeof a)for(var d in a)a.hasOwnProperty(d)&&(f+=d+":"+a[d]+";");else f+=a;b=c}this.attributes||(this.attributes={});a=this.attributes.style||"";a=(b?[f,a]:[a,f]).join(";");this.attributes.style=a.replace(/^;+|;(?=;)/g,"")};o.getStyle=function(a){var c=this.attributes.style;if(c)return c=CKEDITOR.tools.parseCssText(c,1),c[a]};CKEDITOR.dtd.parentOf=function(a){var c={},b;for(b in this)-1==b.indexOf("$")&&this[b][a]&&(c[b]=1);return c};var H=/^([.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz){1}?/i,
D=/^(?:\b0[^\s]*\s*){1,4}$/,x={ol:{decimal:/\d+/,"lower-roman":/^m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})$/,"upper-roman":/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,"lower-alpha":/^[a-z]+$/,"upper-alpha":/^[A-Z]+$/},ul:{disc:/[l\u00B7\u2002]/,circle:/[\u006F\u00D8]/,square:/[\u006E\u25C6]/}},z=[[1E3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],B="ABCDEFGHIJKLMNOPQRSTUVWXYZ",s=0,t=null,w,E=CKEDITOR.plugins.pastefromword=
{utils:{createListBulletMarker:function(a,c){var b=new CKEDITOR.htmlParser.element("cke:listbullet");b.attributes={"cke:listsymbol":a[0]};b.add(new CKEDITOR.htmlParser.text(c));return b},isListBulletIndicator:function(a){if(/mso-list\s*:\s*Ignore/i.test(a.attributes&&a.attributes.style))return!0},isContainingOnlySpaces:function(a){var c;return(c=a.onlyChild())&&/^(:?\s|&nbsp;)+$/.test(c.value)},resolveList:function(a){var c=a.attributes,b;if((b=a.removeAnyChildWithName("cke:listbullet"))&&b.length&&
(b=b[0]))return a.name="cke:li",c.style&&(c.style=E.filters.stylesFilter([["text-indent"],["line-height"],[/^margin(:?-left)?$/,null,function(a){a=a.split(" ");a=CKEDITOR.tools.convertToPx(a[3]||a[1]||a[0]);!s&&(null!==t&&a>t)&&(s=a-t);t=a;c["cke:indent"]=s&&Math.ceil(a/s)+1||1}],[/^mso-list$/,null,function(a){var a=a.split(" "),b=Number(a[0].match(/\d+/)),a=Number(a[1].match(/\d+/));1==a&&(b!==w&&(c["cke:reset"]=1),w=b);c["cke:indent"]=a}]])(c.style,a)||""),c["cke:indent"]||(t=0,c["cke:indent"]=
1),CKEDITOR.tools.extend(c,b.attributes),!0;w=t=s=null;return!1},getStyleComponents:function(){var a=CKEDITOR.dom.element.createFromHtml('<div style="position:absolute;left:-9999px;top:-9999px;"></div>',CKEDITOR.document);CKEDITOR.document.getBody().append(a);return function(c,b,f){a.setStyle(c,b);for(var c={},b=f.length,d=0;d<b;d++)c[f[d]]=a.getStyle(f[d]);return c}}(),listDtdParents:CKEDITOR.dtd.parentOf("ol")},filters:{flattenList:function(a,c){var c="number"==typeof c?c:1,b=a.attributes,f;switch(b.type){case "a":f=
"lower-alpha";break;case "1":f="decimal"}for(var d=a.children,e,h=0;h<d.length;h++)if(e=d[h],e.name in CKEDITOR.dtd.$listItem){var j=e.attributes,g=e.children,m=g[g.length-1];m.name in CKEDITOR.dtd.$list&&(a.add(m,h+1),--g.length||d.splice(h--,1));e.name="cke:li";b.start&&!h&&(j.value=b.start);E.filters.stylesFilter([["tab-stops",null,function(a){(a=a.split(" ")[1].match(H))&&(t=CKEDITOR.tools.convertToPx(a[0]))}],1==c?["mso-list",null,function(a){a=a.split(" ");a=Number(a[0].match(/\d+/));a!==w&&
(j["cke:reset"]=1);w=a}]:null])(j.style);j["cke:indent"]=c;j["cke:listtype"]=a.name;j["cke:list-style-type"]=f}else if(e.name in CKEDITOR.dtd.$list){arguments.callee.apply(this,[e,c+1]);d=d.slice(0,h).concat(e.children).concat(d.slice(h+1));a.children=[];e=0;for(g=d.length;e<g;e++)a.add(d[e]);d=a.children}delete a.name;b["cke:list"]=1},assembleList:function(a){for(var c=a.children,b,f,d,e,h,j,a=[],g,m,i,l,k,p,n=0;n<c.length;n++)if(b=c[n],"cke:li"==b.name)if(b.name="li",f=b.attributes,i=(i=f["cke:listsymbol"])&&
i.match(/^(?:[(]?)([^\s]+?)([.)]?)$/),l=k=p=null,f["cke:ignored"])c.splice(n--,1);else{f["cke:reset"]&&(j=e=h=null);d=Number(f["cke:indent"]);d!=e&&(m=g=null);if(i){if(m&&x[m][g].test(i[1]))l=m,k=g;else for(var q in x)for(var u in x[q])if(x[q][u].test(i[1]))if("ol"==q&&/alpha|roman/.test(u)){if(g=/roman/.test(u)?y(i[1]):A(i[1]),!p||g<p)p=g,l=q,k=u}else{l=q;k=u;break}!l&&(l=i[2]?"ol":"ul")}else l=f["cke:listtype"]||"ol",k=f["cke:list-style-type"];m=l;g=k||("ol"==l?"decimal":"disc");k&&k!=("ol"==l?
"decimal":"disc")&&b.addStyle("list-style-type",k);if("ol"==l&&i){switch(k){case "decimal":p=Number(i[1]);break;case "lower-roman":case "upper-roman":p=y(i[1]);break;case "lower-alpha":case "upper-alpha":p=A(i[1])}b.attributes.value=p}if(j){if(d>e)a.push(j=new CKEDITOR.htmlParser.element(l)),j.add(b),h.add(j);else{if(d<e){e-=d;for(var r;e--&&(r=j.parent);)j=r.parent}j.add(b)}c.splice(n--,1)}else a.push(j=new CKEDITOR.htmlParser.element(l)),j.add(b),c[n]=j;h=b;e=d}else j&&(j=e=h=null);for(n=0;n<a.length;n++)if(j=
a[n],q=j.children,g=g=void 0,u=j.children.length,r=g=void 0,c=/list-style-type:(.*?)(?:;|$)/,e=CKEDITOR.plugins.pastefromword.filters.stylesFilter,g=j.attributes,!c.exec(g.style)){for(h=0;h<u;h++)if(g=q[h],g.attributes.value&&Number(g.attributes.value)==h+1&&delete g.attributes.value,g=c.exec(g.attributes.style))if(g[1]==r||!r)r=g[1];else{r=null;break}if(r){for(h=0;h<u;h++)g=q[h].attributes,g.style&&(g.style=e([["list-style-type"]])(g.style)||"");j.addStyle("list-style-type",r)}}w=t=s=null},falsyFilter:function(){return!1},
stylesFilter:function(a,c){return function(b,f){var d=[];(b||"").replace(/&quot;/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(b,e,g){e=e.toLowerCase();"font-family"==e&&(g=g.replace(/["']/g,""));for(var m,i,l,k=0;k<a.length;k++)if(a[k]&&(b=a[k][0],m=a[k][1],i=a[k][2],l=a[k][3],e.match(b)&&(!m||g.match(m)))){e=l||e;c&&(i=i||g);"function"==typeof i&&(i=i(g,f,e));i&&i.push&&(e=i[0],i=i[1]);"string"==typeof i&&d.push([e,i]);return}!c&&d.push([e,g])});for(var e=0;e<d.length;e++)d[e]=
d[e].join(":");return d.length?d.join(";")+";":!1}},elementMigrateFilter:function(a,c){return a?function(b){var f=c?(new CKEDITOR.style(a,c))._.definition:a;b.name=f.element;CKEDITOR.tools.extend(b.attributes,CKEDITOR.tools.clone(f.attributes));b.addStyle(CKEDITOR.style.getStyleText(f))}:function(){}},styleMigrateFilter:function(a,c){var b=this.elementMigrateFilter;return a?function(f,d){var e=new CKEDITOR.htmlParser.element(null),h={};h[c]=f;b(a,h)(e);e.children=d.children;d.children=[e];e.filter=
function(){};e.parent=d}:function(){}},bogusAttrFilter:function(a,c){if(-1==c.name.indexOf("cke:"))return!1},applyStyleFilter:null},getRules:function(a,c){var b=CKEDITOR.dtd,f=CKEDITOR.tools.extend({},b.$block,b.$listItem,b.$tableContent),d=a.config,e=this.filters,h=e.falsyFilter,j=e.stylesFilter,g=e.elementMigrateFilter,m=CKEDITOR.tools.bind(this.filters.styleMigrateFilter,this.filters),i=this.utils.createListBulletMarker,l=e.flattenList,k=e.assembleList,p=this.utils.isListBulletIndicator,n=this.utils.isContainingOnlySpaces,
q=this.utils.resolveList,u=function(a){a=CKEDITOR.tools.convertToPx(a);return isNaN(a)?a:a+"px"},r=this.utils.getStyleComponents,t=this.utils.listDtdParents,o=!1!==d.pasteFromWordRemoveFontStyles,s=!1!==d.pasteFromWordRemoveStyles;return{elementNames:[[/meta|link|script/,""]],root:function(a){a.filterChildren(c);k(a)},elements:{"^":function(a){var c;CKEDITOR.env.gecko&&(c=e.applyStyleFilter)&&c(a)},$:function(a){var v=a.name||"",e=a.attributes;v in f&&e.style&&(e.style=j([[/^(:?width|height)$/,null,
u]])(e.style)||"");if(v.match(/h\d/)){a.filterChildren(c);if(q(a))return;g(d["format_"+v])(a)}else if(v in b.$inline)a.filterChildren(c),n(a)&&delete a.name;else if(-1!=v.indexOf(":")&&-1==v.indexOf("cke")){a.filterChildren(c);if("v:imagedata"==v){if(v=a.attributes["o:href"])a.attributes.src=v;a.name="img";return}delete a.name}v in t&&(a.filterChildren(c),k(a))},style:function(a){if(CKEDITOR.env.gecko){var a=(a=a.onlyChild().value.match(/\/\* Style Definitions \*\/([\s\S]*?)\/\*/))&&a[1],c={};a&&
(a.replace(/[\n\r]/g,"").replace(/(.+?)\{(.+?)\}/g,function(a,b,F){for(var b=b.split(","),a=b.length,d=0;d<a;d++)CKEDITOR.tools.trim(b[d]).replace(/^(\w+)(\.[\w-]+)?$/g,function(a,b,d){b=b||"*";d=d.substring(1,d.length);d.match(/MsoNormal/)||(c[b]||(c[b]={}),d?c[b][d]=F:c[b]=F)})}),e.applyStyleFilter=function(a){var b=c["*"]?"*":a.name,d=a.attributes&&a.attributes["class"];b in c&&(b=c[b],"object"==typeof b&&(b=b[d]),b&&a.addStyle(b,!0))})}return!1},p:function(a){if(/MsoListParagraph/i.exec(a.attributes["class"])||
a.getStyle("mso-list")){var b=a.firstChild(function(a){return a.type==CKEDITOR.NODE_TEXT&&!n(a.parent)});(b=b&&b.parent)&&b.addStyle("mso-list","Ignore")}a.filterChildren(c);q(a)||(d.enterMode==CKEDITOR.ENTER_BR?(delete a.name,a.add(new CKEDITOR.htmlParser.element("br"))):g(d["format_"+(d.enterMode==CKEDITOR.ENTER_P?"p":"div")])(a))},div:function(a){var c=a.onlyChild();if(c&&"table"==c.name){var b=a.attributes;c.attributes=CKEDITOR.tools.extend(c.attributes,b);b.style&&c.addStyle(b.style);c=new CKEDITOR.htmlParser.element("div");
c.addStyle("clear","both");a.add(c);delete a.name}},td:function(a){a.getAncestor("thead")&&(a.name="th")},ol:l,ul:l,dl:l,font:function(a){if(p(a.parent))delete a.name;else{a.filterChildren(c);var b=a.attributes,d=b.style,e=a.parent;"font"==e.name?(CKEDITOR.tools.extend(e.attributes,a.attributes),d&&e.addStyle(d),delete a.name):(d=(d||"").split(";"),b.color&&("#000000"!=b.color&&d.push("color:"+b.color),delete b.color),b.face&&(d.push("font-family:"+b.face),delete b.face),b.size&&(d.push("font-size:"+
(3<b.size?"large":3>b.size?"small":"medium")),delete b.size),a.name="span",a.addStyle(d.join(";")))}},span:function(a){if(p(a.parent))return!1;a.filterChildren(c);if(n(a))return delete a.name,null;if(p(a)){var b=a.firstChild(function(a){return a.value||"img"==a.name}),e=(b=b&&(b.value||"l."))&&b.match(/^(?:[(]?)([^\s]+?)([.)]?)$/);if(e)return b=i(e,b),(a=a.getAncestor("span"))&&/ mso-hide:\s*all|display:\s*none /.test(a.attributes.style)&&(b.attributes["cke:ignored"]=1),b}if(e=(b=a.attributes)&&b.style)b.style=
j([["line-height"],[/^font-family$/,null,!o?m(d.font_style,"family"):null],[/^font-size$/,null,!o?m(d.fontSize_style,"size"):null],[/^color$/,null,!o?m(d.colorButton_foreStyle,"color"):null],[/^background-color$/,null,!o?m(d.colorButton_backStyle,"color"):null]])(e,a)||"";b.style||delete b.style;CKEDITOR.tools.isEmpty(b)&&delete a.name;return null},b:g(d.coreStyles_bold),i:g(d.coreStyles_italic),u:g(d.coreStyles_underline),s:g(d.coreStyles_strike),sup:g(d.coreStyles_superscript),sub:g(d.coreStyles_subscript),
a:function(a){a=a.attributes;a.href&&a.href.match(/^file:\/\/\/[\S]+#/i)&&(a.href=a.href.replace(/^file:\/\/\/[^#]+/i,""))},"cke:listbullet":function(a){a.getAncestor(/h\d/)&&!d.pasteFromWordNumberedHeadingToList&&delete a.name}},attributeNames:[[/^onmouse(:?out|over)/,""],[/^onload$/,""],[/(?:v|o):\w+/,""],[/^lang/,""]],attributes:{style:j(s?[[/^list-style-type$/,null],[/^margin$|^margin-(?!bottom|top)/,null,function(a,b,c){if(b.name in{p:1,div:1}){b="ltr"==d.contentsLangDirection?"margin-left":
"margin-right";if("margin"==c)a=r(c,a,[b])[b];else if(c!=b)return null;if(a&&!D.test(a))return[b,a]}return null}],[/^clear$/],[/^border.*|margin.*|vertical-align|float$/,null,function(a,b){if("img"==b.name)return a}],[/^width|height$/,null,function(a,b){if(b.name in{table:1,td:1,th:1,img:1})return a}]]:[[/^mso-/],[/-color$/,null,function(a){if("transparent"==a)return!1;if(CKEDITOR.env.gecko)return a.replace(/-moz-use-text-color/g,"transparent")}],[/^margin$/,D],["text-indent","0cm"],["page-break-before"],
["tab-stops"],["display","none"],o?[/font-?/]:null],s),width:function(a,c){if(c.name in b.$tableContent)return!1},border:function(a,c){if(c.name in b.$tableContent)return!1},"class":h,bgcolor:h,valign:s?h:function(a,b){b.addStyle("vertical-align",a);return!1}},comment:!CKEDITOR.env.ie?function(a,b){var c=a.match(/<img.*?>/),d=a.match(/^\[if !supportLists\]([\s\S]*?)\[endif\]$/);return d?(d=(c=d[1]||c&&"l.")&&c.match(/>(?:[(]?)([^\s]+?)([.)]?)</),i(d,c)):CKEDITOR.env.gecko&&c?(c=CKEDITOR.htmlParser.fragment.fromHtml(c[0]).children[0],
(d=(d=(d=b.previous)&&d.value.match(/<v:imagedata[^>]*o:href=['"](.*?)['"]/))&&d[1])&&(c.attributes.src=d),c):!1}:h}}},G=function(){this.dataFilter=new CKEDITOR.htmlParser.filter};G.prototype={toHtml:function(a){var a=CKEDITOR.htmlParser.fragment.fromHtml(a),c=new CKEDITOR.htmlParser.basicWriter;a.writeHtml(c,this.dataFilter);return c.getHtml(!0)}};CKEDITOR.cleanWord=function(a,c){CKEDITOR.env.gecko&&(a=a.replace(/(<\!--\[if[^<]*?\])--\>([\S\s]*?)<\!--(\[endif\]--\>)/gi,"$1$2$3"));CKEDITOR.env.webkit&&
(a=a.replace(/(class="MsoListParagraph[^>]+><\!--\[if !supportLists\]--\>)([^<]+<span[^<]+<\/span>)(<\!--\[endif\]--\>)/gi,"$1<span>$2</span>$3"));var b=new G,f=b.dataFilter;f.addRules(CKEDITOR.plugins.pastefromword.getRules(c,f));c.fire("beforeCleanWord",{filter:f});try{a=b.toHtml(a)}catch(d){alert(c.lang.pastefromword.error)}a=a.replace(/cke:.*?".*?"/g,"");a=a.replace(/style=""/g,"");return a=a.replace(/<span>/g,"")}})();
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/pastefromword/filter/index.html000060400000000054152455705240026753 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/fakeobjects/index.html000060400000000054152455705240025052 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/fakeobjects/images/index.html000060400000000054152455705240026317 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/fakeobjects/images/spacer.gif000060400000000053152455705240026265 0ustar00GIF89a�!�,D;extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/sharedspace/plugin.js000060400000004570152455705240024722 0ustar00
( function() {

	'use strict';

	var containerTpl = CKEDITOR.addTemplate( 'sharedcontainer', '<div' +
		' id="cke_{name}"' +
		' class="cke {id} cke_reset_all cke_chrome cke_editor_{name} cke_shared cke_detached cke_{langDir} ' + CKEDITOR.env.cssClass + '"' +
		' dir="{langDir}"' +
		' title="' + ( CKEDITOR.env.gecko ? ' ' : '' ) + '"' +
		' lang="{langCode}"' +
		' role="presentation"' +
		'>' +
			'<div class="cke_inner">' +
				'<div id="{spaceId}" class="cke_{space}" role="presentation">{content}</div>' +
			'</div>' +
		'</div>' );

	CKEDITOR.plugins.add( 'sharedspace', {
		init: function( editor ) {
			editor.on( 'loaded', function() {
				var spaces = editor.config.sharedSpaces;

				if ( spaces ) {
					for ( var spaceName in spaces )
						create( editor, spaceName, spaces[ spaceName ] );
				}
			}, null, null, 9 );
		}
	} );

	function create( editor, spaceName, target ) {
		var innerHtml, space;

		if ( typeof target == 'string' ) {
			target = CKEDITOR.document.getById( target );
		} else {
			target = new CKEDITOR.dom.element( target );
		}

		if ( target ) {
			innerHtml = editor.fire( 'uiSpace', { space: spaceName, html: '' } ).html;

			if ( innerHtml ) {
				editor.on( 'uiSpace', function( ev ) {
					if ( ev.data.space == spaceName )
						ev.cancel();
				}, null, null, 1 );  // Hi-priority

				space = target.append( CKEDITOR.dom.element.createFromHtml( containerTpl.output( {
					id: editor.id,
					name: editor.name,
					langDir: editor.lang.dir,
					langCode: editor.langCode,
					space: spaceName,
					spaceId: editor.ui.spaceId( spaceName ),
					content: innerHtml
				} ) ) );

				if ( target.getCustomData( 'cke_hasshared' ) )
					space.hide();
				else
					target.setCustomData( 'cke_hasshared', 1 );

				space.unselectable();

				space.on( 'mousedown', function( evt ) {
					evt = evt.data;
					if ( !evt.getTarget().hasAscendant( 'a', 1 ) )
						evt.preventDefault();
				} );

				editor.focusManager.add( space, 1 );

				editor.on( 'focus', function() {
					for ( var i = 0, sibling, children = target.getChildren(); ( sibling = children.getItem( i ) ); i++ ) {
						if ( sibling.type == CKEDITOR.NODE_ELEMENT &&
							!sibling.equals( space ) &&
							sibling.hasClass( 'cke_shared' ) ) {
							sibling.hide();
						}
					}

					space.show();
				} );

				editor.on( 'destroy', function() {
					space.remove();
				} );
			}
		}
	}
} )();


extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/sharedspace/index.html000060400000000054152455705240025054 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/addtag/index.html000060400000000054152455705240024016 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/addtag/icon-16-tag.png000060400000001125152455705240024454 0ustar00�PNG


IHDR�agAMA���a	pHYsrr^e[�tEXtSoftwarePaint.NET v3.5.100�r��IDAT8O�SM(DQ?��@�"%��Y�XPXH^)���Sƈ$z�0��Y��XPF^XM�-F�� �))��YxEa6�lF�Ԕ8�ó�n}�wν��9�\��{�-�P��d�qæ�락ӴR�W�%s	�ن�q�KQ<���-�b����f�4��FI�nw�����
���I^�,%���t��I��=E"��w� n1B�M� �8>�"Yv��i���������м�<��pԓ���l����#��$ЊZV}>o�_��k�����HE5sͣ�}{�<@L�
մs*.�)��?W*v�t����f�C����3��D*~�S++K\�����$r�P{{��j�$g�#HR��@����o| �p�-O��*P�Lw�$'��b����е❍{<�4��։U��d�E���'�o�j� ��J�4�����7�O\P
��z`8�m�����OKR�k3��+IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/addtag/plugin.js000060400000001147152455705240023661 0ustar00(function() {
	var a= {
		exec:function(editor){
			if (parent.IeCursorFix)
			{
				parent.IeCursorFix();
			}
			if (parent.SetIgnoreDeselection)
			{
				parent.SetIgnoreDeselection();
			}
			if (parent.FireClick)
			{
				var itemElement = parent.document.getElementById('AcyLienTag');
				parent.FireClick(itemElement);
			}
		}
	},
	b='addtag';
	CKEDITOR.plugins.add(b,{
		init:function(editor){
			editor.addCommand(b,a);
			editor.ui.addButton("addtag",{label:editor.lang.addtag.toolbar,
											icon: this.path + "icon-16-tag.png",
											command:b,
											toolbar: "insert"});
		}
	});
})();

extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/image/images/noimage.png000060400000004103152455705240025250 0ustar00�PNG


IHDR((� H_PLTE�VV�\\�TT⟟�XX⠠���▖�bb��II�ff�``�CC�FF�MM�ZZ㮮㳳����SSᆆ቉⚚�ww�WW�xx�~~���⑑���ጌ���㭭㣣����DD㻻����nn⨨ᐐ�ⓓ����^^�XX���ᗗ�NN�oo�KK�AA�ll�tt�UU└����JJᎎ������㵵㱱㽽����uv�ee㲲�����⥥㼼����PP���ፍ㪪�[[㺺㶶�mm㾾�qq�}}�������yy����PP�QQ������㰰㷷�⛛☘�ss❝�rr�ss㯯✜ᄄኊ���㫫ዋ���⭭ለ�]]�||㝝�GG♙㘘�dd�ii�kk潽�pp�zz�HH➞�����������NN䟞㴴���⣣�^^�����??����������;;����aa⦦��ᕕ�SS����>>��������||������ᇇᅅ�⸸ⱱ⪪㢢⬬ႂ人�QQ㸸���䱱㿿�hh㧧�RR⎎�jj���㜜����������ab���毮���䥥������⽽⮮���⫫洴⢢㬬���汱䵵䷷⧧㦦庹����绺�����������䨨�������ᄃ���RR���ᓓ㹹䠟�UU����99�@@�JJ����77䪪�SS�PP�ff躹似���䲲᜜����Ⲳ���❞ᘘ⋋纹⍍㚚��ⷷ�rs�zzYp��IDATx^=���H���6�m۶m��o۶m۶͵����WS����[I�ʯ���PP�رc?BQQ�`4
M<b%:������m�
�V�ă�^��jWlKL�rtq9�F=��a�yyj���S��yp���FQУ�Z���y�x���Ř19���|�#���9fǎ����и�L�Bp4f��
��������JM}m݊]S7�Z�řpΙ(�;\Y��������	������Ѐ����^�	
###C�R(��V��S3��Ե%0F)�\0 ���]/��}����MR\��������x��ۧ[��?[S��~�y�p]q����zC�Ȃ*��o��j!*j�nk��A�]YW|�ecc��)###E��"�P�`k1%��j�]A�O��M��u��h:Am�Q(�F�	l���x�mr�Ɩ���W��N�P�6��>G��ˆSP��Z��;�v�v$E���k��Xಹ�ҥ�f���SY%�B9k@���-��:f����A�;�4���r�D9�)z@U^N�i�̲�����\˻�j+I��ʲ�r������$M��W��h|i�]�o��
��i^��H�I:���s��]R@���/͵k"��L���J[��"�ew3V�J뛒�0JB�1��$m�HV׵��`�>c{]�j�*i�����I筮+��|}�x���)�/��b�u���e�c���1 �Q�����e��=����޻�1U�w�]�4ƻ�x�g�pz��ݜ_��j���]��u�YJ��g��vh0�`��Z���x�'T��/�Z�;�����Jy�ׯ��������M͛/�*�1��G��*�+2ݽ^X�nv:����>��/���0*Au�����[Sq�K`C�^\�ߢ���gz�+KQ6.����\:�~�������l���;�z��Ĩ�q{Y=�̣K�|�|gg�3��C��hf
=��C�(k����AgOv|��I�&����#`��r4hӷ�E��&����X�%!!av�-}�|�ꕋ�{�qN)d2Q�;�͍g��-�@LT��m����t�6>-,�w�y��3�:;;����<���(��9,oT��Wb����ZZr8�K.w���|!"���Bt6�� ��}�r9�iX�=9���W`��Ȇ݆;&�j�,s���p� ?��騷-E�w���f�z��S�b�,Y�2=s&û��y<��{<O�����[Q�'����TF�WgZIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/image/images/index.html000060400000000054152455705240025121 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/image/index.html000060400000000054152455705240023654 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/image/dialogs/index.html000060400000000054152455705240025276 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/image/dialogs/image.js000060400000050106152455705240024724 0ustar00(function(){var r=function(c,j){function r(){var a=arguments,b=this.getContentElement("advanced","txtdlgGenStyle");b&&b.commit.apply(b,a);this.foreach(function(b){b.commit&&"txtdlgGenStyle"!=b.id&&b.commit.apply(b,a)})}function i(a){if(!s){s=1;var b=this.getDialog(),d=b.imageElement;if(d){this.commit(f,d);for(var a=[].concat(a),e=a.length,c,g=0;g<e;g++)(c=b.getContentElement.apply(b,a[g].split(":")))&&c.setup(f,d)}s=0}}var f=1,k=/^\s*(\d+)((px)|\%)?\s*$/i,v=/(^\s*(\d+)((px)|\%)?\s*$)|^$/i,o=/^\d+px$/,
w=function(){var a=this.getValue(),b=this.getDialog(),d=a.match(k);d&&("%"==d[2]&&l(b,!1),a=d[1]);b.lockRatio&&(d=b.originalElement,"true"==d.getCustomData("isReady")&&("txtHeight"==this.id?(a&&"0"!=a&&(a=Math.round(d.$.width*(a/d.$.height))),isNaN(a)||b.setValueOf("info","txtWidth",a)):(a&&"0"!=a&&(a=Math.round(d.$.height*(a/d.$.width))),isNaN(a)||b.setValueOf("info","txtHeight",a))));g(b)},g=function(a){if(!a.originalElement||!a.preview)return 1;a.commitContent(4,a.preview);return 0},s,l=function(a,
b){if(!a.getContentElement("info","ratioLock"))return null;var d=a.originalElement;if(!d)return null;if("check"==b){if(!a.userlockRatio&&"true"==d.getCustomData("isReady")){var e=a.getValueOf("info","txtWidth"),c=a.getValueOf("info","txtHeight"),d=1E3*d.$.width/d.$.height,f=1E3*e/c;a.lockRatio=!1;!e&&!c?a.lockRatio=!0:!isNaN(d)&&!isNaN(f)&&Math.round(d)==Math.round(f)&&(a.lockRatio=!0)}}else void 0!==b?a.lockRatio=b:(a.userlockRatio=1,a.lockRatio=!a.lockRatio);e=CKEDITOR.document.getById(p);a.lockRatio?
e.removeClass("cke_btn_unlocked"):e.addClass("cke_btn_unlocked");e.setAttribute("aria-checked",a.lockRatio);CKEDITOR.env.hc&&e.getChild(0).setHtml(a.lockRatio?CKEDITOR.env.ie?"■":"▣":CKEDITOR.env.ie?"□":"▢");return a.lockRatio},x=function(a){var b=a.originalElement;if("true"==b.getCustomData("isReady")){var d=a.getContentElement("info","txtWidth"),e=a.getContentElement("info","txtHeight");d&&d.setValue(b.$.width);e&&e.setValue(b.$.height)}g(a)},y=function(a,b){function d(a,b){var d=a.match(k);return d?
("%"==d[2]&&(d[1]+="%",l(e,!1)),d[1]):b}if(a==f){var e=this.getDialog(),c="",g="txtWidth"==this.id?"width":"height",h=b.getAttribute(g);h&&(c=d(h,c));c=d(b.getStyle(g),c);this.setValue(c)}},t,q=function(){var a=this.originalElement,b=CKEDITOR.document.getById(m);a.setCustomData("isReady","true");a.removeListener("load",q);a.removeListener("error",h);a.removeListener("abort",h);b&&b.setStyle("display","none");this.dontResetSize||x(this);this.firstLoad&&CKEDITOR.tools.setTimeout(function(){l(this,"check")},
0,this);this.dontResetSize=this.firstLoad=!1;g(this)},h=function(){var a=this.originalElement,b=CKEDITOR.document.getById(m);a.removeListener("load",q);a.removeListener("error",h);a.removeListener("abort",h);a=CKEDITOR.getUrl(CKEDITOR.plugins.get("image").path+"images/noimage.png");this.preview&&this.preview.setAttribute("src",a);b&&b.setStyle("display","none");l(this,!1)},n=function(a){return CKEDITOR.tools.getNextId()+"_"+a},p=n("btnLockSizes"),u=n("btnResetSize"),m=n("ImagePreviewLoader"),A=n("previewLink"),
z=n("previewImage");return{title:c.lang.image["image"==j?"title":"titleButton"],minWidth:420,minHeight:360,onShow:function(){this.linkEditMode=this.imageEditMode=this.linkElement=this.imageElement=!1;this.lockRatio=!0;this.userlockRatio=0;this.dontResetSize=!1;this.firstLoad=!0;this.addLink=!1;var a=this.getParentEditor(),b=a.getSelection(),d=(b=b&&b.getSelectedElement())&&a.elementPath(b).contains("a",1),c=CKEDITOR.document.getById(m);c&&c.setStyle("display","none");t=new CKEDITOR.dom.element("img",
a.document);this.preview=CKEDITOR.document.getById(z);this.originalElement=a.document.createElement("img");this.originalElement.setAttribute("alt","");this.originalElement.setCustomData("isReady","false");if(d){this.linkElement=d;this.linkEditMode=!0;c=d.getChildren();if(1==c.count()){var g=c.getItem(0).getName();if("img"==g||"input"==g)this.imageElement=c.getItem(0),"img"==this.imageElement.getName()?this.imageEditMode="img":"input"==this.imageElement.getName()&&(this.imageEditMode="input")}"image"==
j&&this.setupContent(2,d)}if(this.customImageElement)this.imageEditMode="img",this.imageElement=this.customImageElement,delete this.customImageElement;else if(b&&"img"==b.getName()&&!b.data("cke-realelement")||b&&"input"==b.getName()&&"image"==b.getAttribute("type"))this.imageEditMode=b.getName(),this.imageElement=b;this.imageEditMode?(this.cleanImageElement=this.imageElement,this.imageElement=this.cleanImageElement.clone(!0,!0),this.setupContent(f,this.imageElement)):this.imageElement=a.document.createElement("img");
l(this,!0);CKEDITOR.tools.trim(this.getValueOf("info","txtUrl"))||(this.preview.removeAttribute("src"),this.preview.setStyle("display","none"))},onOk:function(){if(this.imageEditMode){var a=this.imageEditMode;"image"==j&&"input"==a&&confirm(c.lang.image.button2Img)?(this.imageElement=c.document.createElement("img"),this.imageElement.setAttribute("alt",""),c.insertElement(this.imageElement)):"image"!=j&&"img"==a&&confirm(c.lang.image.img2Button)?(this.imageElement=c.document.createElement("input"),
this.imageElement.setAttributes({type:"image",alt:""}),c.insertElement(this.imageElement)):(this.imageElement=this.cleanImageElement,delete this.cleanImageElement)}else"image"==j?this.imageElement=c.document.createElement("img"):(this.imageElement=c.document.createElement("input"),this.imageElement.setAttribute("type","image")),this.imageElement.setAttribute("alt","");this.linkEditMode||(this.linkElement=c.document.createElement("a"));this.commitContent(f,this.imageElement);this.commitContent(2,this.linkElement);
this.imageElement.getAttribute("style")||this.imageElement.removeAttribute("style");this.imageEditMode?!this.linkEditMode&&this.addLink?(c.insertElement(this.linkElement),this.imageElement.appendTo(this.linkElement)):this.linkEditMode&&!this.addLink&&(c.getSelection().selectElement(this.linkElement),c.insertElement(this.imageElement)):this.addLink?this.linkEditMode?c.insertElement(this.imageElement):(c.insertElement(this.linkElement),this.linkElement.append(this.imageElement,!1)):c.insertElement(this.imageElement)},
onLoad:function(){"image"!=j&&this.hidePage("Link");var a=this._.element.getDocument();this.getContentElement("info","ratioLock")&&(this.addFocusable(a.getById(u),5),this.addFocusable(a.getById(p),5));this.commitContent=r},onHide:function(){this.preview&&this.commitContent(8,this.preview);this.originalElement&&(this.originalElement.removeListener("load",q),this.originalElement.removeListener("error",h),this.originalElement.removeListener("abort",h),this.originalElement.remove(),this.originalElement=
!1);delete this.imageElement},contents:[{id:"info",label:c.lang.image.infoTab,accessKey:"I",elements:[{type:"vbox",padding:0,children:[{type:"hbox",widths:["280px","110px"],align:"right",children:[{id:"txtUrl",type:"text",label:c.lang.common.url,required:!0,onChange:function(){var a=this.getDialog(),b=this.getValue();if(0<b.length){var a=this.getDialog(),d=a.originalElement;a.preview&&a.preview.removeStyle("display");d.setCustomData("isReady","false");var c=CKEDITOR.document.getById(m);c&&c.setStyle("display",
"");d.on("load",q,a);d.on("error",h,a);d.on("abort",h,a);d.setAttribute("src",b);a.preview&&(t.setAttribute("src",b),a.preview.setAttribute("src",t.$.src),g(a))}else a.preview&&(a.preview.removeAttribute("src"),a.preview.setStyle("display","none"))},setup:function(a,b){if(a==f){var d=b.data("cke-saved-src")||b.getAttribute("src");this.getDialog().dontResetSize=!0;this.setValue(d);this.setInitValue()}},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())?(b.data("cke-saved-src",this.getValue()),
b.setAttribute("src",this.getValue())):8==a&&(b.setAttribute("src",""),b.removeAttribute("src"))},validate:CKEDITOR.dialog.validate.notEmpty(c.lang.image.urlMissing)},{type:"button",id:"browse",style:"display:inline-block;margin-top:14px;",align:"center",label:c.lang.common.browseServer,hidden:!0,filebrowser:"info:txtUrl"}]}]},{id:"txtAlt",type:"text",label:c.lang.image.alt,accessKey:"T","default":"",onChange:function(){g(this.getDialog())},setup:function(a,b){a==f&&this.setValue(b.getAttribute("alt"))},
commit:function(a,b){a==f?(this.getValue()||this.isChanged())&&b.setAttribute("alt",this.getValue()):4==a?b.setAttribute("alt",this.getValue()):8==a&&b.removeAttribute("alt")}},{type:"hbox",children:[{id:"basic",type:"vbox",children:[{type:"hbox",requiredContent:"img{width,height}",widths:["50%","50%"],children:[{type:"vbox",padding:1,children:[{type:"text",width:"45px",id:"txtWidth",label:c.lang.common.width,onKeyUp:w,onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:function(){var a=
this.getValue().match(v);(a=!!(a&&0!==parseInt(a[1],10)))||alert(c.lang.common.invalidWidth);return a},setup:y,commit:function(a,b,d){var e=this.getValue();a==f?(e&&c.activeFilter.check("img{width,height}")?b.setStyle("width",CKEDITOR.tools.cssLength(e)):b.removeStyle("width"),!d&&b.removeAttribute("width")):4==a?e.match(k)?b.setStyle("width",CKEDITOR.tools.cssLength(e)):(a=this.getDialog().originalElement,"true"==a.getCustomData("isReady")&&b.setStyle("width",a.$.width+"px")):8==a&&(b.removeAttribute("width"),
b.removeStyle("width"))}},{type:"text",id:"txtHeight",width:"45px",label:c.lang.common.height,onKeyUp:w,onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:function(){var a=this.getValue().match(v);(a=!!(a&&0!==parseInt(a[1],10)))||alert(c.lang.common.invalidHeight);return a},setup:y,commit:function(a,b,d){var e=this.getValue();a==f?(e&&c.activeFilter.check("img{width,height}")?b.setStyle("height",CKEDITOR.tools.cssLength(e)):b.removeStyle("height"),!d&&b.removeAttribute("height")):
4==a?e.match(k)?b.setStyle("height",CKEDITOR.tools.cssLength(e)):(a=this.getDialog().originalElement,"true"==a.getCustomData("isReady")&&b.setStyle("height",a.$.height+"px")):8==a&&(b.removeAttribute("height"),b.removeStyle("height"))}}]},{id:"ratioLock",type:"html",style:"margin-top:30px;width:40px;height:40px;",onLoad:function(){var a=CKEDITOR.document.getById(u),b=CKEDITOR.document.getById(p);a&&(a.on("click",function(a){x(this);a.data&&a.data.preventDefault()},this.getDialog()),a.on("mouseover",
function(){this.addClass("cke_btn_over")},a),a.on("mouseout",function(){this.removeClass("cke_btn_over")},a));b&&(b.on("click",function(a){l(this);var b=this.originalElement,c=this.getValueOf("info","txtWidth");if(b.getCustomData("isReady")=="true"&&c){b=b.$.height/b.$.width*c;if(!isNaN(b)){this.setValueOf("info","txtHeight",Math.round(b));g(this)}}a.data&&a.data.preventDefault()},this.getDialog()),b.on("mouseover",function(){this.addClass("cke_btn_over")},b),b.on("mouseout",function(){this.removeClass("cke_btn_over")},
b))},html:'<div><a href="javascript:void(0)" tabindex="-1" title="'+c.lang.image.lockRatio+'" class="cke_btn_locked" id="'+p+'" role="checkbox"><span class="cke_icon"></span><span class="cke_label">'+c.lang.image.lockRatio+'</span></a><a href="javascript:void(0)" tabindex="-1" title="'+c.lang.image.resetSize+'" class="cke_btn_reset" id="'+u+'" role="button"><span class="cke_label">'+c.lang.image.resetSize+"</span></a></div>"}]},{type:"vbox",padding:1,children:[{type:"text",id:"txtBorder",requiredContent:"img{border-width}",
width:"60px",label:c.lang.image.border,"default":"",onKeyUp:function(){g(this.getDialog())},onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:CKEDITOR.dialog.validate.integer(c.lang.image.validateBorder),setup:function(a,b){if(a==f){var d;d=(d=(d=b.getStyle("border-width"))&&d.match(/^(\d+px)(?: \1 \1 \1)?$/))&&parseInt(d[1],10);isNaN(parseInt(d,10))&&(d=b.getAttribute("border"));this.setValue(d)}},commit:function(a,b,d){var c=parseInt(this.getValue(),10);a==f||4==a?(isNaN(c)?!c&&
this.isChanged()&&b.removeStyle("border"):(b.setStyle("border-width",CKEDITOR.tools.cssLength(c)),b.setStyle("border-style","solid")),!d&&a==f&&b.removeAttribute("border")):8==a&&(b.removeAttribute("border"),b.removeStyle("border-width"),b.removeStyle("border-style"),b.removeStyle("border-color"))}},{type:"text",id:"txtHSpace",requiredContent:"img{margin-left,margin-right}",width:"60px",label:c.lang.image.hSpace,"default":"",onKeyUp:function(){g(this.getDialog())},onChange:function(){i.call(this,
"advanced:txtdlgGenStyle")},validate:CKEDITOR.dialog.validate.integer(c.lang.image.validateHSpace),setup:function(a,b){if(a==f){var d,c;d=b.getStyle("margin-left");c=b.getStyle("margin-right");d=d&&d.match(o);c=c&&c.match(o);d=parseInt(d,10);c=parseInt(c,10);d=d==c&&d;isNaN(parseInt(d,10))&&(d=b.getAttribute("hspace"));this.setValue(d)}},commit:function(a,b,d){var c=parseInt(this.getValue(),10);a==f||4==a?(isNaN(c)?!c&&this.isChanged()&&(b.removeStyle("margin-left"),b.removeStyle("margin-right")):
(b.setStyle("margin-left",CKEDITOR.tools.cssLength(c)),b.setStyle("margin-right",CKEDITOR.tools.cssLength(c))),!d&&a==f&&b.removeAttribute("hspace")):8==a&&(b.removeAttribute("hspace"),b.removeStyle("margin-left"),b.removeStyle("margin-right"))}},{type:"text",id:"txtVSpace",requiredContent:"img{margin-top,margin-bottom}",width:"60px",label:c.lang.image.vSpace,"default":"",onKeyUp:function(){g(this.getDialog())},onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:CKEDITOR.dialog.validate.integer(c.lang.image.validateVSpace),
setup:function(a,b){if(a==f){var c,e;c=b.getStyle("margin-top");e=b.getStyle("margin-bottom");c=c&&c.match(o);e=e&&e.match(o);c=parseInt(c,10);e=parseInt(e,10);c=c==e&&c;isNaN(parseInt(c,10))&&(c=b.getAttribute("vspace"));this.setValue(c)}},commit:function(a,b,c){var e=parseInt(this.getValue(),10);a==f||4==a?(isNaN(e)?!e&&this.isChanged()&&(b.removeStyle("margin-top"),b.removeStyle("margin-bottom")):(b.setStyle("margin-top",CKEDITOR.tools.cssLength(e)),b.setStyle("margin-bottom",CKEDITOR.tools.cssLength(e))),
!c&&a==f&&b.removeAttribute("vspace")):8==a&&(b.removeAttribute("vspace"),b.removeStyle("margin-top"),b.removeStyle("margin-bottom"))}},{id:"cmbAlign",requiredContent:"img{float}",type:"select",widths:["35%","65%"],style:"width:90px",label:c.lang.common.align,"default":"",items:[[c.lang.common.notSet,""],[c.lang.common.alignLeft,"left"],[c.lang.common.alignRight,"right"]],onChange:function(){g(this.getDialog());i.call(this,"advanced:txtdlgGenStyle")},setup:function(a,b){if(a==f){var c=b.getStyle("float");
switch(c){case "inherit":case "none":c=""}!c&&(c=(b.getAttribute("align")||"").toLowerCase());this.setValue(c)}},commit:function(a,b,c){var e=this.getValue();if(a==f||4==a){if(e?b.setStyle("float",e):b.removeStyle("float"),!c&&a==f)switch(e=(b.getAttribute("align")||"").toLowerCase(),e){case "left":case "right":b.removeAttribute("align")}}else 8==a&&b.removeStyle("float")}}]}]},{type:"vbox",height:"250px",children:[{type:"html",id:"htmlPreview",style:"width:95%;",html:"<div>"+CKEDITOR.tools.htmlEncode(c.lang.common.preview)+
'<br><div id="'+m+'" class="ImagePreviewLoader" style="display:none"><div class="loading">&nbsp;</div></div><div class="ImagePreviewBox"><table><tr><td><a href="javascript:void(0)" target="_blank" onclick="return false;" id="'+A+'"><img id="'+z+'" alt="" /></a>'+(c.config.image_previewText||"Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas feugiat consequat diam. Maecenas metus. Vivamus diam purus, cursus a, commodo non, facilisis vitae, nulla. Aenean dictum lacinia tortor. Nunc iaculis, nibh non iaculis aliquam, orci felis euismod neque, sed ornare massa mauris sed velit. Nulla pretium mi et risus. Fusce mi pede, tempor id, cursus ac, ullamcorper nec, enim. Sed tortor. Curabitur molestie. Duis velit augue, condimentum at, ultrices a, luctus ut, orci. Donec pellentesque egestas eros. Integer cursus, augue in cursus faucibus, eros pede bibendum sem, in tempus tellus justo quis ligula. Etiam eget tortor. Vestibulum rutrum, est ut placerat elementum, lectus nisl aliquam velit, tempor aliquam eros nunc nonummy metus. In eros metus, gravida a, gravida sed, lobortis id, turpis. Ut ultrices, ipsum at venenatis fringilla, sem nulla lacinia tellus, eget aliquet turpis mauris non enim. Nam turpis. Suspendisse lacinia. Curabitur ac tortor ut ipsum egestas elementum. Nunc imperdiet gravida mauris.")+
"</td></tr></table></div></div>"}]}]}]},{id:"Link",requiredContent:"a[href]",label:c.lang.image.linkTab,padding:0,elements:[{id:"txtUrl",type:"text",label:c.lang.common.url,style:"width: 100%","default":"",setup:function(a,b){if(2==a){var c=b.data("cke-saved-href");c||(c=b.getAttribute("href"));this.setValue(c)}},commit:function(a,b){if(2==a&&(this.getValue()||this.isChanged())){var d=this.getValue();b.data("cke-saved-href",d);b.setAttribute("href",d);if(this.getValue()||!c.config.image_removeLinkByEmptyURL)this.getDialog().addLink=
!0}}},{type:"button",id:"browse",filebrowser:{action:"Browse",target:"Link:txtUrl",url:c.config.filebrowserImageBrowseLinkUrl},style:"float:right",hidden:!0,label:c.lang.common.browseServer},{id:"cmbTarget",type:"select",requiredContent:"a[target]",label:c.lang.common.target,"default":"",items:[[c.lang.common.notSet,""],[c.lang.common.targetNew,"_blank"],[c.lang.common.targetTop,"_top"],[c.lang.common.targetSelf,"_self"],[c.lang.common.targetParent,"_parent"]],setup:function(a,b){2==a&&this.setValue(b.getAttribute("target")||
"")},commit:function(a,b){2==a&&(this.getValue()||this.isChanged())&&b.setAttribute("target",this.getValue())}}]},{id:"Upload",hidden:!0,filebrowser:"uploadButton",label:c.lang.image.upload,elements:[{type:"file",id:"upload",label:c.lang.image.btnUpload,style:"height:40px",size:38},{type:"fileButton",id:"uploadButton",filebrowser:"info:txtUrl",label:c.lang.image.btnUpload,"for":["Upload","upload"]}]},{id:"advanced",label:c.lang.common.advancedTab,elements:[{type:"hbox",widths:["50%","25%","25%"],
children:[{type:"text",id:"linkId",requiredContent:"img[id]",label:c.lang.common.id,setup:function(a,b){a==f&&this.setValue(b.getAttribute("id"))},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("id",this.getValue())}},{id:"cmbLangDir",type:"select",requiredContent:"img[dir]",style:"width : 100px;",label:c.lang.common.langDir,"default":"",items:[[c.lang.common.notSet,""],[c.lang.common.langDirLtr,"ltr"],[c.lang.common.langDirRtl,"rtl"]],setup:function(a,b){a==f&&this.setValue(b.getAttribute("dir"))},
commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("dir",this.getValue())}},{type:"text",id:"txtLangCode",requiredContent:"img[lang]",label:c.lang.common.langCode,"default":"",setup:function(a,b){a==f&&this.setValue(b.getAttribute("lang"))},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("lang",this.getValue())}}]},{type:"text",id:"txtGenLongDescr",requiredContent:"img[longdesc]",label:c.lang.common.longDescr,setup:function(a,b){a==f&&this.setValue(b.getAttribute("longDesc"))},
commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("longDesc",this.getValue())}},{type:"hbox",widths:["50%","50%"],children:[{type:"text",id:"txtGenClass",requiredContent:"img(cke-xyz)",label:c.lang.common.cssClass,"default":"",setup:function(a,b){a==f&&this.setValue(b.getAttribute("class"))},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("class",this.getValue())}},{type:"text",id:"txtGenTitle",requiredContent:"img[title]",label:c.lang.common.advisoryTitle,
"default":"",onChange:function(){g(this.getDialog())},setup:function(a,b){a==f&&this.setValue(b.getAttribute("title"))},commit:function(a,b){a==f?(this.getValue()||this.isChanged())&&b.setAttribute("title",this.getValue()):4==a?b.setAttribute("title",this.getValue()):8==a&&b.removeAttribute("title")}}]},{type:"text",id:"txtdlgGenStyle",requiredContent:"img{cke-xyz}",label:c.lang.common.cssStyle,validate:CKEDITOR.dialog.validate.inlineStyle(c.lang.common.invalidInlineStyle),"default":"",setup:function(a,
b){if(a==f){var c=b.getAttribute("style");!c&&b.$.style.cssText&&(c=b.$.style.cssText);this.setValue(c);var e=b.$.style.height,c=b.$.style.width,e=(e?e:"").match(k),c=(c?c:"").match(k);this.attributesInStyle={height:!!e,width:!!c}}},onChange:function(){i.call(this,"info:cmbFloat info:cmbAlign info:txtVSpace info:txtHSpace info:txtBorder info:txtWidth info:txtHeight".split(" "));g(this)},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("style",this.getValue())}}]}]}};
CKEDITOR.dialog.add("image",function(c){return r(c,"image")});CKEDITOR.dialog.add("imagebutton",function(c){return r(c,"imagebutton")})})();
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/dialog/dialogDefinition.js000060400000000001152455705240025632 0ustar00
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/dialog/index.html000060400000000054152455705240024031 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/icons_hidpi.png000060400000102050152455705240023572 0ustar00�PNG


IHDR 	�N: IDATx��}wxՙ�{f�+�Z�eY�eY��e[n�60`l�Z�1֐l
�ݔ%�$aSX�	����BXZ�PӋm6�`��eK�z��N;�?f�ꖹU�K�}�y�{�)�6s��|���A2Hc`O��7\i6�]�_q�$��B�<�Х^'��{��C�a�կ|�$Ȕ�(J)B����4�|��χ��Q�ٻ�6)��]'F@�!�<dY��RH�Y�V���Rp�L&�X�̵��������ˡ�b��	x� @V+
�C �&�	�yyy�Z�0�LhinFMMM����_�„H��\��m�.(q�駟>���U����v��(�n�a�5׼��K_F����}��)��e#���Z�v�6l�����x<E�$A�y̝3������eY�L)D��BB`P	�
���J�I���<�>8'D@�"@)��f!d!"!���/���z��Z��	�B����_^y%i��u�a�t8���j����0A��� �g���b��3�TmB�N3�o�?��Z,�+W��0��ax�^���p���5>Ν!�%)���l�6����eY8L+/G^^$Q�(�yv�����/�4!�'w�ȗ%	T]	!������#�S�pX���R�QD
V+�P� (�p\��2?�R�$���$+�͠��s/��q �"���B�7o�SSS�={��n��;p��q~ll�A��8������&�eY���/���,j�����A~ӦMKu��k׮}ytt���BPJ�0g¢x����7r|�̧��W��$�uQ׿�5�֭[��AY
�kkKt���$QOB�eA��ѯx�a�RI��%m�*c��g��Ĭ�2�0Y,I������D^>����ɬ0>B`�ZS�%g��Ԕ��1###xb�V^/}f�$���|���`�Q,�$������܅��e�$����k�s�͑�Y�h��ju������eY�l6�ݘV^I� �"�� z��p���!�ws&@eY�?Z7X�p!�!$�5MP��@ ���\y��o��?�'�˙���W���P��h��"��������wߴe�J_IVvF>��cu� $���d�X,���}�w�p:
��B~�3J��g���}�$��!U���@����a(�>p?!doe0`��0` g|�H���
�hg[Q����ڥ혵��s�%	!��x`7�wT2�Ān٢E� �� 	��� I�x|0�` ��A�e۶�T�e��.�[����NX-8��f�|8`dd>�����uk�����	��5����o��n��AA �����_�n�<*�-���%-,��)�f��?�i�*��(�����K�������`����.��P��W�~Ӧ./<H���8�K�,Yj⸈4�to��2Kk��͚�.�����7?)+��A@ ���.EB>�
�M[%�bD~���՛o�!�$Վ�!��&7��v�$I�UUo_�!���[¢�i��P�>�����L��#tp&DQ�,����}���D�QTt���� ���-�tB�	�&��0{�rY���$ahx�Ρ��4O++si�p8�i��'�C��J`%C�x����F	!>���U��("
���r2��s"�0{vU.PE��k>�JWB}�3�l#��Œ��gY���r���l	dr�d�kָ��k:$B�].f�U�@8�ww�ܓ-��-�,*:K���������02<�ܝ-�t/�����fsD��!Zw �"�^�H)�)!��lI����Ov�󳨜RJ��0`��d'+v88�����@
�r(������6qݻHq�>[׃anmjn����������j/�B�������:O�!�tO�eC�,�����I�m��=B��,X��02ò�|��尓.2�.ojk�}UG#
"'�K�e0��`2�`2��e��=�����'D���.4��AF����f����Vn�7�����ى�Ǐ����9x� �E
�,<-�%�W/��̈�T,b�E�n�-F$�b�
�_�|�I�﹇��I�n�7\z�P��	���|P,.,|�(��uM���5�P��Q���!]�L,I����b����~��o�gY�L�Ve�3�)��)%$�����be#I��X,x�7��
��>�BOy����IUG�.��V_z��~����`YV9G�0�'�]]8��7(�BY|^�=�]gL�z{��۸�^^V��F��`,�ʼ ȃCC�� N����}���
tNRgM�R�ƶmۖ�{lM�-��42��eY� wuw��8y����;Ojm�G�ygE}f5X5�Xt�jkh��0Q��� I�Z���$�M�Q��R�d2��1�b*�0�ͰZ�����l0�L�8.��1�yy��aFFF�@ A��qqbJi1G��$륗^by��ܹ���χ���b��T8f�n7���
ő��!�0��$����}��̟��'��v�d2�R
������G��	!W���X���P�ҥK����H+��ށyϮ]��$����J�B�0!�iB���{��0wn�AShTVW']�0�+c��(����B��=�)CK3
�>}:�.�	H�4�5s&S]RŒ��\|��z{�R��P^�h/(*j,))�H���0���PU]=�Z_$OG����V���n�@�T�
� �"�N'�].8�2�1���1pf3v���ӄ��rj���a8a�f���8��s8����S��H�>���y�^�>��<'t����w�)��ǘݻv�eY��v��fŢ�e�ab��f_�p!���SbiQ�!w'+?�g��������g�a������������p:��>}:���䊊
l��&yzU���� ��KWO*�SJ��PJ����'��g�-E��rvd5�P6$ߘh�ϝ�U�h��0`���)$�r0��i��n���<8�'n��e��Жme�{C�嵍6t����ѣx������:�Y�m�ꎎ֙3g�to/�}����φ@���i]���j���Q;s&.^�n9g�mŸ$psv��K.�����
�`N��3f4 K$$�\�����# //�sN������ۚ��m�y�ڬV�|>`���/fK@OP�7���dYII[~~>,�f3�^/^~��=�0k�:��f�F�V###���ݵ��2k��𥆆�}eeem0��0�L�)��t:#�բf�{キ�턐L���SV766�+//o����q��&����ٵ{��E��l���-!x���͒$�!bI�c�b�L�r]q$����㤚S$���?~��r�<)���RSRRRϲl�o2@q���ϟO�"��&R�Y�e�ꎎV���sIUB�,QL���b��o�)�:P���@=n�nW*�Z��%��Q5!myyy����z��ΝoJ��:d�P�n�X���f�D��������}��w���<88�gxx�p�  ��ĒE�:|'���HI��D�Zf�̙W�8�P(2σ�໇n��lb�=�z���{$Ij+,,TtG��y
�����\qy9Xձ"�0p8��s�p���\Ow�.�����;�cx<Ȳ���ѣ��E3�x�ԩS�+**������<�*�#'J����5�f�N�#������Ϙ��e��o��U�T�Rj��n�������WL&өY�g�%R�VT���^W��He�f%W�SJߎ��*��O���ƶ�$�c���ArWW�$0�R�$��8��z�Ǒ�wJi�*���~�I���KӧO��n����/���KN�Kʛ6�-݄�f�P6k�dE�<q"�jK��Yۥ�S*������[%	�-���wSF@�=�##m���WR��{�SU�8��"ت���1��~6`��0`��BN�Ƀł��<D�0��G^�|�ѹ�~{j	�P���k��.����A;�4u-��(Ƙ[L�Ƅ"�]6�
�8.RL�V�0�H�������ٳ��z�#B���nx!���Iј,?��U��d�C-]bX,?޸aC��1����zk~����>��jLDI��Wd�8e��aV��-]�ac:��������z~�f�czee����E��ݚ��m�ڵ���P�`�##p=�u�س��l�C^���r����L�J��0���C�jL��Y�!k�Y��|𥆆�=�$�@�$�l6�:�60�L1��h�It%�MA�Z�И�ИL��$'1�ߏ���|�w<�iL^=z�h����A�B!X-��&[��1A��$gL��$gL��$g��11`��0`���7�� S��w$��a�#y,��q�1$��!�

�|�[�s�%(�V��I��%�J�����咠�&�EZi��M�P�vâ
$��O~��ϝ��/�P�v�0�ϟ�$i���|&�,�e�W�T�z�Gk2�L���&!��Lj	�&A���7]�c��rL���PD�
F�I��@$ز*�d��$	�,��- �i�L���D�MwG��g�A�̺@+0�.�ҫ�OR��4]��%�fҤ��.�W��.����@�AE0��>ڙY ��3�����:'�g�(qN��Ҏ����`(4*�] ��[�T��l�v\���&}�%@e�?��&u%K�r8�"�I�^/n��7rw�C�A�	Uc݂���_]YYGT�(���k_�rR�i	p,� ��Y�QYUu]�����@��P����V�gan^|�%��А�y�e���Ynu:�����8��9s��3�,>�g�Y�@Ұ㙸�����֥v�uiaA���l���N�:���Պ��|�̘y�|>�8y�s��s�23Y�����[;vl����YSS�r�`�$8�v�klD�3M������/n���$�w�-��£ή�3��奚kH��! ��T÷CG�e
����H�/S�^P��[o�y��G=~�!s��	���+��l���J_SS����a���?�H�z3!�2�#nJ����a7������l�f��Ⱬ�1G����s���h�:��<�r����E��8�'"Q��i�(Ř���T��s@�j*�0`��0��f��L(ҏv�@��Z�`�zG�p�BJ�h�<ԾdIcŴi(*.���(�����Ν�r(t#���T��{`�…����(r�122�޾>�ڽ�x�Z(����n�{����<�3Ò��"�y�y��ĉ�>LRyi^Q��^tQ�+/� (�5��ߏ'�yfx��߶1[��oܰ��j�""GD.�`�R���3�M����s7��,����a1�q������!B`z}����P�IjI�"'���0dQ��׷#������< ����>��Zݑ�q}]]/���=������Ѐİ�u���<�G���e2����pAl�������^Ab�ǹ%I���Яnߣ1�N�<I?ze��0�>
��Fc�ཝ;�<�,3Ze����(���;��B�v�X�������>u�.�$��}}�?B0b�� x���F�����RZ_d{�~�k���b�� ��x���ݐ&K���4��>�j�ҥ�����c<��<���,���_�� Q�*�=?�ٖ�|�����ӧ���1��H�P8�ʊ�.��P�����_}�uz���Ӎ7J�^z�t�y�I.���&�i�oS�q6}�'�y�'mܸQڰa��t�2�m۞��'�/���{��U�9������<u�C�Tb8B�O4�����:DTMZ0Do_��g�=��Oe_p��'��f9N�$	>����ӫ�~������W^{��3� FGG�e˖���TK���0�p8��'O�RJ߁�:�/��8������2�^/���{���oG�O.'$��|8���a��ۡ,��RM@��f�<�0�z���꒟}�93��$��s�k�;OZ�x�T\\�_�Q�l�/mlnV�y�T__/��QJwd���p��j�j���Y*((��Rz�*!g�3��n��h��Ҍ3���q�H6��=��I�^]=r�w<@)�SJ�2�~�����A��5k���4�4a���M΂ə���R�C�o������l�.��5����L2^	�I_��;'A]P��~�o��۷_]���.C���*�������z�(53���P<���&�0`����OD��Jf�
&�Iy�J�~��d�Z����k���fC��C0�%A��lF�˅]�w��{�a�$"�>���>�6�C���D7���GM�D�� ��B@���|��]��0!1�sb2���.����m�|�L)䧞bdJo;���9���d`uc &��3J)n���'I�n�<|8ki��&!q�u��Ų,���?�t��@V"O*����p�6m��QYY�����[ ����K��U�cM��+	(�'�JJ@�T�_�)O�B��g�w��	���`�ڵ(�Z�z k�ǣΝ5�+?:�ѬȘ���̐χo���������(��u�xJ���Q
����k�q�<���r[ױcII�/D�WdT�ȓ�Jy���%S���?Ce���'tId5
	��3mj�x�
w���~F��ӝ�	$�"�""	d�f Sh��o�7mقY55����t1+�ͬ
6B0���-���###�3gN�J�B�y�Va�s �Pi$B����%#��ӃS���5{6���QSW���� �r-M��L�]Uc�;�u�6.�}P%�P�*%%�4�[֬+rDd�LF ��Y΂L�g�0�'e���u�����Npj�?��eX�����dҝ�w�(0��@��
��1AH�>�V�Zi��Fqp�U�Ty�c� �ɜM�前B��8��)��׀0` �C_`�}��/0������C_`�}��.���	�C_`�0`��d�j�!��t��
�k���u�J�����:�>�iv:߿쪫$�$��.��E������/�O,��3��}��_>���-˗����0Y�O�~��v\�n�~�E�?�x��
��@&�)�qFZӦM��~�~L+/��e�@&a/_���i��)����i	����~?xAcak+�gͺ���ڪfμ�…��a�`0��ӧ'�-���?������ë�U���5k̮��'����Gy����kTG*�
V���{���Ϫ����x"�$Q�%�ח������L,��/Y��BR#?h�=^��}8������B�Pĵ�0�x��V�f{0*�.�`)�q_4<�cxdϽ�B1�{�&@�x��6����xy֮Ys1g����ƪ�κ�]XAK#�3/��2����?�L]FWx�U�V��1��&��q���8p����ܶ`�E^�����|��VBBMg�=?����VUV�].8������
Z�~�':;}8�!�ܣWnƫ!�E�}�����k��G*��i���� ���Cy�9��U��ďX��}~(���xDQ����n���?��#�f��ܘ��\&_�1�oZE���S��%A84o��
���x�BF�.�}�jcTt�)Ց�|B�c�x��L[��e������h~�B�4�Kà��2ô

�Hd=[5���Vwt8A���Eoo�<{�T�h IDAT��fΜٵo߾J�a�Ʉ�i��	�����3Y����*�.���Y�.IFGFp�ر���k����Ep���˖-s���T��0[,x��7������@��$�p�
�>��qj����T�`������r����m�������N�s���$X�d�����mb6{�
`e�-PA,��-�����E��u��_���n���:B�s@)m�0k{{�������
&��P��������[�jU��jB�ͯ��}��;;;{A�UW_���
.�*B�.-��^B�kttT���~��jnjzutx�w�(���@m��/hjk�V�^-u�q�4
�}}�[ZZ�3V��|C'o��y��˗Kg�Y�w�޽o/\�H:�s$(N��@Ca~>�p?��9(�����ҪP(��(!eZ�򖔔@�e��_أ󶴴T��~��hO�����}����B�n��aBȗ	!/B�jӦ[Lfsi0��2>�e�7�����a�8㌓�y׮[w��fs�b9���)��jf�����"�Ξ-@X���j=�h�b�r����_��=���⽖��f֬0�\�v��ѽh�biZU՘G��HE�I)=n��O7Λ'�ih�J�ʤ55��&���R��m��E)��N�RJ�q��1���$͞3G*.)�jjk���f���\���w�F)�RRjA�SJ��������+++��nw���`�;ᄏ�R���'�
�����������2���؟�����Ç�Qmդ#PN)��C��*
��"oU<y��(��SVUP��QD��ݥ�hy�I�gT�0`���(�C_`�}��/0�
SC_0C_`�}��/0������0`���r1�}ԑ�����E���'|nJ	,?�,iY[�8�S�R�س�_~9�w��I9���S��(i~C���s��~f~C�*�ѨrN�e�g�k�rp�{K��K)!x��7M�yvk�tF{;X��e9ђ�0	��ص���e)�̒��P��w��(.#��k�;?w�e��

�/���*�Mc|�c�@~�>����6M+���^�F?w�e��L��s朞_[[��c�!�n�����O�Dw��
�$�;��(b�g���_D��Ro ��]v><v����i��U,��KW��T	��x�,���R�m�tAGG��rBXm6��3��r(��Ÿם�k4���Lj�$P
�͖p�	�������=!�7$�YzB���X����D�z\��J����	z�H�S��:��KbL$�]O�4�Ó(�Szh���<6�P���i�B��+֬i�;��|$}�����P
�ł�����/�	`�.�4w�ږ�v�d¶���EΌ3�;O�mii?����%��߈��ĘכK��1��
:��!��O
ĸ�Y�Y�c����E.LI��	��!��j�S͛W2�!��)���lw�ԉ�/?�.H�{:���zNt��Ͼd9fMwϙ�b��$�A1��`�������� Z�@\��	�t7���xN�3S� N��Ғ��`�E���/��A�h�.X�ގW_x��z�
��]1�IRL�*+Q���eZ�BYx��T�nI����R���9s��55c�$�AŜ9RE]]��*�ꤊ9s"��F�8�e˖��]��’ j�%	&D��Y_&�R���Rڙ�-�+(�];{6���Y_��gS��`w��x��aJi�X���*{v��W��E�>
Nq��nbo�(bzU���h�5+�|z=��A��1+D�Џ�3���)Ǽ0`����A�C_`�`�}��/������C_`�}��/0��� }A����0`�ozo�W�@rq����P��<�����uu������L�0��	�����ٳ]ǎ���z�Yq��57CEȒ��'(� �����8�z�=�|��+���[��z��s� KRR9U�nh>'�a�,�a��DQ+�h�?;w��K�a���P0���������%I
��ba


�GJ�$������#�r��2�(���'x�ǩ��ѝ;v���]�x��ڙ3��6[RM��(..vQ��Bg&)�Z�$!���B�%hhn˗��|��Ga2�Rdռ1h5��j`�4Y��ѱ1l{�K!|��ꗿu���K(C% D).b"�j��Q�,����x�Z����U<PYY�7*}�S����\�$ҹDQ����wo�-�3G<���c�x<���M�{3z"��I��`��s_�Sf�](�;�GFwaa�6-�ʊ�#6济sͳ���âE�>���k��4���g��델��)K�B�ƆV�E3��BE����/��b��6W^Rr[8��[���>J�����tԕ�W�����@��e��AH��.��BO0x����څ--�\U�3kk����1yD��њ��y�����������Xv�
�����˵��=��kdt4�@+��r�[����,#��<�j��BH����������}}}�(/���6����L��<�}�p8f6@�b�nG�U�U|>֭_"��A)��~q��o2бr�x�W��߿��w��?���LQ�I)�1��H��eˤ��"hG3(�������?:p��ńY�m5}
. �썪�Yuu�u�f�l���Ë":�����v�bZ 2�eT�$�}>�\�xF�����z�G����s����6ov���ܹ7�
wh��D�zB4.^����P
Ap���<����Y��'��I7����p`�Zaw80�߿��jXC��cQkkseE�f3!�E'����{�Ķ�6�M�pC�Çf�:U9�.�ug�y&��h@y!aX���/�!zP#��@0ȄB���i��OCm��<�}����o����q���!�MP=�ͭ�� �+~�;����4)n%L���׿n%�D��T^R�J�_�0�����H�r��K/�EIM�E� ��Y��*��,f��tڴQ(�x���]�uQ�CK�ep�iӧ�z�ԩ5������F^k~�qZ�Y�x�k�X8�oR�bf������ܚ�j��V��ya�{jʒ��s�VWWVVS(k�,˰Z,����q܉�.��׾6888�@ A�q����.,��������^ߟڸD%�.(���EEE�8<���c``�ַ"z��4���6���B��n�f�9��<��
koS���pnϞaB�E�6xட�|��?��S�Z��l�-1KH�`9����M[�,p	!��		)�e(��KɖR��R���;��z�2s�10`��0��������u��[
_���kW�R0���{��/C��׬\����!
6Lyy[�-(W[j�O���EA���X�bŹP�nL){ے%�DAP*�R�Θ� ���� pe�y.)�bm�JQ?o�Ϊ��OheM�^T��eYjX������ϋ�I�h��r_WׅSE`Q�ҥ�DA@8���n��V�����@ ^`�X����l	l�(+�$�+G��|�M�>�� @E���8F~Ɇ��mɒ+i���+�%�<}��͞P(�k:�UU@��1�����%M�
��n���ۓ,��"�(2gIœ��7�lN;3&�WZ��R
QJa2�|��zB����u1�hXD���-�oHWn��e��E��U��ٹr���	���nW�9�RȒ�����"�|O�*8� dKQa!����}ii)JKJPZZ
���'�$�/\x6�xhϤ�,^�QV�\M�V��	�f3�r�����P�w&B��3Ͳz磣����P5}:ËbD�Ų,�N�[n-/+s�'˨mh�|��C8�{�8-����[�*��x��믿�lA��a Xɲ,B0oΜ�c|1�NND2�����9sjD���V�Z5���(��w�#z}��81�L`���U����LA0@ ����߲e���@�׭]{�`���
��2o�juzyRuAUIYم�{z��7FX�G56�WJ��V�����{��f�q��Ս��1�Eg�Y}���2�(2�ԫ�3'Dٞ����y硗�ne,�rv�l��n:�{8��PJ�J)���5ü���k�{B�ky�S%���6[�S4�_;�|(�$����h+��$B@E�	���ŀ0`@�@�VX_$�R	�aA�
�)����I�E�D�_9Y�+�׀ǃ7�zj�J�[����:S���.�;/Oז<Wh6��^/v=�\��_�썁�\���<e�8Y;J!�2��^�c�q�e9���,5θ�T��0�L��ƃ����xC�
���0�N6xQ���H���:R��:�2"Q�1
~?C���e��ӽOP$f@�����F�I��Zy��	1u&����
�
af�I}+�%	�GF�N�ހ0`���>;R�uW^�|���`0�f4b��3��o��(3��0��?�	1>B��xq��)ۜ�v�,�y�%	��V�R�C���dP\�j0B�#��R����&�q1�]@`b����͙s_kS`�}�9t~?�`8N�c�,I��q:o^y����G~~>V�\	�t&=��)�C�b��D��v��F�q��ۍ!�A|=��h��|��'{zz0:2�ё�����o>9�ځ�N04��oל}�9��۷�}��}�9���o�L�@|=�ttH-RT��:f��3�g)���_O�1ů0|Y��˨�R��UR��̙3��ߵ���c|=�h�䨎�~��cr8>o͚*�ٌ��>u�����r\���1��[$ܾ���,�a �<V,Ybv?�(�ׄ�$�`T�II�	�#P#�$�����.,(@Hu�#
֬\Yj��`���u �,�BcUm�/;V�����#��������54(�>jkJ��eq�ʕ��:T��NQ[ n~���\�G/X`�VZ��;����摸ְZ��_��^m���G�yN��ۯ�u�٬>�R]����X���^AA�…����l�}��З-�vՊ����%�=Bk��*xFGu! K�؇Ѧ�l�Y,�T=�KD%EEX�zu���Haa!lV+��A�e̞=�4øx�8�V�cc��鿜9}z�o1mB0��Aq�&��PLK�{�ƃ<%�����MMvQ�U��S*�����f�C��˶��F)]�h��3��,B ����r���t���\E������"���0�l���Ɇ(���@8lhN
0`��00i�
}G��-_.Ϛu<�ޘTUVbZ�n8�O��:D�[�y�­Z&*����W�d�c0.�8,[�<���9*����U�-JRl�HM�	!XV�e'����A�]�D�q-@E���q�
ʰ�xD�>��
�C��Ꜹ߶8;I�E�?	~�	Y�0�sRzhmkKh"��={"��������1�i������Lx�U�aZ�0�4����O�t ��E��]�\4!��?Z��vlذ�~~}=�f�邆�&��&��s
��GE>�:]�:>¡~?ڗ.EP�@����-��}Pg��`f���������cze�(&�N�:'��JJ��tw�=~���Y(���ڒ�z6D����]*�{SJWSJOe"{L�b�̙��@�����Bȫ��&�z�ώ@V�΃�2
�t&�Lڳqk�z�����uh��|NJe��`�Y��M�}}��I�]c��Li�B���̘���DQ����)QX]-qn���Z��\�-'g��
:s�?�}/81	�0`��0�5�%fA|\�� /o��-[j4~*�
���7��'F@;G8���0�8�3�0�bz�v(�����(��f55��D>�55�H��x���+#�d`X##�h�4����!��|�RJ��t7�#�)�1 OP6�!)�tr��'�	%��M���h��B�@kk[[�`XCcc8~(!Fs����!!b�l(���y<Ҏ���ӛ�����U�vN���Μm��=��/��oj�98�y��4nBvB�$�����:����m��n��f���0������ý��8�̝�ߤ���!��Őǃ�c�C�R�N�8����W��w��׭[�Bz51��ׁ�������}~(;l�
D�h�OH�h��z	T��!W����b��v*ׁ?��cbE�x�|�̙`������ߏ�ӧuOK�r���)[��e�xu]N�}@S˫��u ��B������n��@�zz��2p��Hω�.��Ř���RH�>�Eq�J�ɾj4��"���@�@ ����!�X�vm����~�=�?1PJ;'�*c"���"ðQ0`��L5�þ��/�T��+���"�i���/��P\�<�ʾ 
mm׀a�К�@�q�Pw=�__�
6�[��v�(?&l_�#/#�@���l6�
�eY�65����Z'�\q���W�̙3eAN�ۿ�����>SJe9�A�
����B����IY�a2ya2�ä�d��[W�09�@�ۓ�>;���}A�0��0`����`�S��x֬���'t!�ɴ�rTUVN���	���秔@�z�~�9�:��
���|g��;�����T�!F�8���
�w�2�Q���2"I���_P�$9�� �Er�Z<�j��C��D՛�D��<�q�c�R�}�Ҋ�2�a%YHBH���L��(��٩Hq��)����LeDW��:��jSU(-0犣[�q��u�g��Պ����[f#}I)�?W�jh�ʉ邅��y�@ ���L)>���HZ=�`:���]N���'�~z�W�����9|X���)�^�K6l�����92�$cD")���ĀR�J)=��iٲ��pC{{t�z$}o�����҅P�y���:��~!%��i|���p�ց�1Q=��TK���/�O`Rցl�����)��(D�h�@_ww�T:��J_E�@��Ѥ�ģ ����Skii���擎��Nc-d��pBV׀a_`��0`��gz������DXL����jL+(����#F��E�GG����}B->�cL,��<��$	>�'�]�����yq=H�bL�#�����G�E�zt?=)��ŭ�睇���)�=##x�R������N�$!�2)��S��Sg�D,'�A)�D)F��ߌY�ٛ�˗���Y	C?)�PJ��"����/ʺB�@(D �8�0��,��h�$��R��B	���7j�����b�M�I}!��qb�����0���IŇ���H�I�Er�l���q�����0`��0��s����Ǵr�\���Y�N)L��v=�~ k�:;��a�,Q
O��R�����6��t��O}w��Ӛ�\��n7L�/��C�C�3BB��"������$K �z�eY�@����rD���$�<v�\��.W�i��G�e���%qq.@�Ǥ�F��ķ���-b�PJ9(���24�
(�Eq�Řş�g_4o�BT���b2e<(�N��&T��K1/���G��xQ��������!eVd���YP��weT�>�>ҵ�@�D�K��{�lnFuI��$����bXPB�N�}1i�~�m��њEy���L��Hy.��0�D$��?V�S�tς�SI �����SWa�W60`��|&0���r�/�T/�1�l���dL [��L��0i���O�e��+}��,��}A�^ Ƈ�z�ZOO��@N��^ ��I	L�}A���R��f��)M6K��gAF�hR�"v��ط��vG IDATsgFy&ݾ�E�R��&b_���@Ô͂L�
ӳ R�&þ@�D?™�&վ@#�N����}�0`��|˜�}���r>�6Yz��	L�^!g�9�2�G�)&K���S��'�7H:4;3�%�4��ll2�G����E��D~T#�!2�G����)x���ņ�͸�hd�(*�'�7�LςxL�!㕰y�RTOL���?�d���#d3�1Uz��K�*=�gr|6�,&��j�\{!+D�@�O�Q���G��60`��|�,W�5:�0����Fb�д��ۮ?M���p��������(**���zN�Ɓ���P�*�{rm���X�z�������ψu	a��
f�����fn~c#��� K$u������O�����p���J����Xw�R�Áwv��G��(��X�N�涙3f���1k�,ȒQ���m'(��c�,�A��>�,F��XX�~�D���3,��(q8�z�J�Z����׷R�ep���RB �"��d����e$I�D)���ckWW���	$I/ ��a*AU)E8�T�IxAJ)DI�%��M�H@!�"���F [PJ!IRLT��	��n"�rݲ�>'%J1�Ԅ��qq1��oV�Z � �t�MI]P$I���p-&�7Ӷ@��'�
Z�-�vN� �j�Y��U�k���L7Q�(�)
4r�,CV�XE�Y���,L&8����`��,�n�χ������G�JH)�,��P^����=V��Ȋ+�v���?/~��Gn��^gs:�襘�rL�&���z�o~��
3����(�����~�###����}��s�s�…�P�)�`hx���&3�pT�>�@���p�w�Ǫ����ٳO����p8�� I������p�
���Z1�<��N��`�z�����=z�/Z$��w��7���^F)�
�|㷿����۷�C)��RJ����[�RV��p��qւҬRˣ)�n�p��B���#�4!�k������ϵ--RmKK�@ʥ�RjР^]���s���f	��ۧ�F
BH����]	���'N ��T�So9ݳ`���5�d��X��Ԭ�h�gCcb��0����g`\'��7��L1�|�����9s�*�M���{zp��I�GG����������������+6n�l6$Q��ʁX�ò�z����ݷO�?�d^}|�	�bX,w,Z����W_�ߜ
<ê���ǟ[�!��1�(@ߘ8��ڰd�b��ѣ�}|��e�;;y��{p�ln�[_o]�ގA�?R���2����v��a�)$��aTO���3g�Rj���_*�"�AyY�@(�9їF�� @E�~I��f�$��<!(�Ϗ��p�,�W5,)[ �$A�$0��\q��
���,�� �Y���"Qr�TVMh*E�����a2�r��b)[ ~N�� �4�j�AƳ���@Sbi��x�@.���u�QT�����Qeab��N�eY0F=�J� �"�T�L)HT��׋��'�#s��>���]�v�z�-&
չ��<X�V�L&0�Қ\����"*�4�����>���F�o�Q��߽{��/}�K�������B����d�(<���������ϻ��.R����Ϛ���#Gڠ($�U��Th�@�����}o�}��Wl�X�l6ò,DQ���9�{�����j�:ˉ��B�Ô�6�J��T�~0J�?�}��w~����>x���R��}��de%��)�RJ�I3�)Pu	��������$4C�<?W��۠t��>V�1Н�U��z�tig�T#��'N�So�xy�'N����������0`���Yl��n(Z4��ߣ�{�t�jY��*��T�e�3g�꒒X�Vp,s�eY8�N|�?��}��7ﶦy�����VM�$�B!����<<���w��E�Ų,Y[k_lK�0�&�ڼb06���6y�<2�K2<�L��@�x2�����Ab�-��m�+x�7ٲ�-�w�r�]ݮ�ޤ�3�W���r��ԭ[��:�{ιr�
�;�<�����P�~;�����+�|D)�Q�x�b~bc#?���_�xq�BJ
�+���Q{{{߂�o�U��h=�l���y]������R���ۄѣG�\��5k����ikk3�Ɯuk�>�M@�q��.�j����;60�Z�꧄���A�R��p:�p:�P�����#��]�j�O�o���Z��jE�@NII_�ر�;�o��B��M�'7e���n����E�/����j�HKK����ؽ�J�B�Omnn>u�¥˧O��O��I|�ĉ<��~�VV���ɓ'��x�1q���=�������n�D�ZT�F��ʯn��YY�,|21���烏e��T�nVi4!�3�c��^N�X���q��<������7�USS��<<n��I�X��z�{��:��ar���-[��q�[��Z�b[�R�d2!++&�	�t:������g����3��:$�dd@+�0��tg"�뗫V�k��V>=+�@�tw��[WW�wvv򝝝|]]]�y�RJw�I���k��V���V��xO?�������s�[�x�g���x<��l��l��ֿ_�k_qaa�˗�?��c�(�+(�����}EEE���UXX�?���O<�Dwaaa�EEE|~A�>��
VȊJ)�H)��j՗���_����^z����z��_�dIw��,Yҭ����t><��`�+--��V}I���F��EƊB$���+Ql���������J��X�K���X�|�+P�@�
(P�@�
D�2�������֬�L�
��|�7���ȑ����f����|�ۍ��;~|38.6_0w�|������W_��,��N�a�D�a�D~�w��^}�ՏZ���Ο�/�=o�kn���֭[������֮]�/�1c��`6��S�@�Y�V��hѢ�H�/`v�v�=����,Z�h�Z�4�H�`���W:vl�;�|����ڔ����O�S	_ =i�0�u�`p_~�e�/h�:���ŋ���=�T56���|AQy9���>b�����/,+���r���6��>�N�V�|Afv68�K	_��tڲ�����I‰���rfffN�].�a=!�555
b�t��ug)Y�4h�x�-���!(�͂Z���{�dL�:u�贴�M��/��˃�Əg�ju_`0`4�����'+�.c>�56?�K�R5�|�����i��R5�W"N�'�dff�O�>��R:��С�Nf�溭��SJ��e
�/2��yk(�E�#������=u���}w.Z�LEAܱpa7��ާX=������{�̬,wFf�T��������뮻���*���	�_�����NX�qcCeu����~�…�%=�
`�X�/J��;�1c�4eʺ�6�Qv4�_���~YZZ���d�����3�Wf&������YR�#J�@aQё�3g�w�q?f�X7���kk����O�:���ܼM�ʒ0�x@T/K��#��P���F����K֒�ʴ�4|{����b���|�iӦf���	!v��r���ap)��D���*��������^�=^�,��k<�F
JiVye��ѣFu�K�-Ϝ=+̿�7_�կ�6�r�����1kq1<<��h4Z4
�ڳGp:xOZ �G�_�VT<f-.F?�Z���Μ9s��p�������y������KJ�����	��ɓ�}�R:0:'��-��·wt���L/������/�*�p��Y���w��pe�\���ܓ'O�={K?������׿{��%%%[�;�RʈiY�8B��]�#��;S-���aS�qIz@J)�B)��V�H�x�R����Ä袔֥�q
(P�@�
�j�)�kE¯O��U`5���>��"���M�u:t���x�J6tw���E*��K�X��ž�]�q�\���+��<���0;�֯c=!dN�o���{߻W+:��Z
�����=#͜r�������r����ɲ(����?�D�E����3����xB�o~o_���0�)S� N ]B@Ė�ص+"9=#���Pn������8؝N�gd��@��L��0�׭k�掯�s���5�~u���…K��<���FX������=z��ѣG��<�
)sc@)-��\��Tv.�QB���3�ſoN�
�K�/�(./G�>�xg{d��EZ��@c}�%+3�?0p������0�3!�:��,:�:Ht��䠳�Ͳ��O^@�j�r�񖼼��0S�p�’�7�v�bH����:�>�D�
n6J����"*���l���S���W#~/,,<?88��a�����6
�_9sF^�T��=[��Z22���f���K��p�\_��68xsVC��Ò�~�СCW:tՒ�~�68����j�@�
(P�@������#Ԭ������g��OJ�?R�!��8Y}�H����T�!@��~`d<C���G�Y�+��
����ˮ�����r$���L!@����"B�d��)_
��#�"HV�CVCE߯��
(P�@�
(�K�Sl�W����{I�߇'F*(L&�O�~]���;I�0�[x�]0��a�����9�ߤ���FV�ؐ;Y鯏�b����qU��8�HHz�OT��؜Nhd#>�E:\�WT
	!�YB��Ja��T�DܩF#;��"<�t w���(�D���I	�Q��ߴ���� �h
������7����H�j(WOD��1�";X�ˡQ�`4��f��s3.�<[�T̈́�Ԍ�Y�f\/�dC�
9U�T����t:xe���v���������X��:���a���@__|j����jX,�TO�����|7l&dYL�
�9�����t��N�sĒx�z����ڵ���4G)ܒ��72�O܄�F���@�
(P�@��!�p$�IZ����`���s�����G�v���t��3f�IЮ@ ��n��_U�r1��fqcF�Ƒ�t�'%_�q+pz<P37�*j̈́�9�B���S�I���a��[�1i���W�wG���3�Q�L��NF��J���@�4)q�Ϫ�OD���#!=�|�Y
�������M���[,z��6�<6�V�A\�@���c�K�jh���,��N��ϟ�����"���148��'N���߰1�r��ps�
%�8�E��W��VC�׻�����z�TAnS��~
(P�@�7�M���s�L�*��p�B�x�>��W~���-zJ�R���\.|��g*@�+N��m6CVP�=|��'�8�h�Geݽd�
�^F�e�X��;S	�PP�?2�wϲ�=s����x�SJA)]�{��<˂H��/u��"R!8��^R�7B�O�	 �_����Ĕ��/�@Â�j4���u��-����^��h4��\a7��y<�W (� � 3=]}��QB�aٽ�����tu �`�>i�= f`Y,˂s���h��z�5ߏ���{���M�+�RY�� �|��p�ĉ��9��n˲�;��
�{x��X������o&Ѓ,��n��ȑ#_�8q�!�-$zl�hh����᯿��+))�UUU�l!�\�v�=�y�\>/#񵣔��8�l6;vl��ӧ�P�N��9�VO;��*�����_�l�ͧO��r���
����|��F�3 �|����appG�� 6����u�Z����>�M�lj�S�ZVV�YAA����4��jp��om6�ٲ%�n�9�c�@�0�9v��ϟ��ɓ'犍/�?2�k�E������=�t��ȣ��-//������z�?n\D�������q�hyy9}��G�RJ�b�XmE�D����Wo<q]g�L	)D��(y[�~�E��lP "�@�?��>�ǁw��Áˇ��9��|���3���O��Wq\E�aԨn�2��3����|��:�`���th�j����n��]���k�G���J���J*+_���}�Z

�@�RA�RA��T�4�J
�@�Vcnk�K*+_C�2,�V0����)��Qo`�X����Սuu�q�,���-��R�_x�uu�J*+W��Z���Qo�66>(U���[ssq���?��)+-�/]�A�������ݻ��Oa2��q��[�F�Z0�T*N�:�����x��K�plϞе�
x�CYI�kq���۝N'.^���y�L��O?���/��t��eY���e%%x��_�
�q�8.x���t����?���ǖ//�i����O��G�ϟ?/8�ΈzX�.X��*�s\�o���v�q��%��/�t��e�*�_T�a��˖U����_�t�s���$�I� |���^/�~睃�-�p;!�h��i/ZT��;��z���A�=� �HG�J��#�>*��W�,
��GT*Uț�["@p"r�\p:�`5������I��E��@bQUu�$�F���MQ>���庞7��FÛ���*J)J��y�GB�f��)�J���;XA���X6t6��H�D�^��w�*�+�§k�z^H��DoF�
(P�׏D����w�ټX+ќQJ��8��,��L��`�66�	��	�b�޽رq������v�8��Ί��`�jk�n�K�p8B.�˥���U�j��%���ʅ�z Z�)�ޚC	��m�t������1y24�$j�`E��Q��
�u�n�ؿ_C)e���x	��嗗����R�x��E�r����֮]�����c��Mm���t:�r�B.��	���ͦ�;6𽑽v�Zn|m���E�rD��"z�������|�ヒ4��&�{�)�Ŗ-Ш�Q��$V�̙�ݯ~E�n��t������͏R܏�3��3(���RZ�<IH�URJ��ϘAg̈؎G<���_�IB�qI��آ\��_�x��W�RD(�<^/x?Qr���0�z�A98��-1o<�/_�=�>R�:1o<g���_ Aȉ"�k!9=�-�-�����A�`!�H1"�3�;�:dA�4#H{����M�	n�� ��JCZ-\Gӎ�_0]V�x���uuMD�ƆO>Ij1	�y�l�ZW�t��ר� (@ZZ��}�Ņ��D����YAx�w>8��GB�9���HM�'�s1n�4����u���F��{@:�86����t��c
�5���;�A���$$"�4�k���f L�}�?���sӤ�QQ���!� �~�z=<WY[�luU��c�?|f�v�‘�3㾆r�iT*���>[QQ^<a_]Q�lx�v0!�%:�
P�[���\8p����~ܸg��V�,Ra<tj5�2�Ѣ��>��������Fm���f���e�O�&�y
��Z-,8��!	�|�Đ��+8}�vm�l���][�����x�J0��k\�׿�u����M@ ����++�5G^Y�WY)-�`��-�Z��q�(��/�\�<���G�p(*/�Wj
b4"�`��a��O������ *�MFƗֲ2
�DO�����j22��'�Q>K)͊�{��a�x�\��[�
�c,�Yǡ���_�ԗ��;���`x�2�2J�Ov�/�����h)��L��xr�e(P�@��c8�������P�wt�So�*��4�W��b�=رqc������p]�>~Bu5�t8�����v�n�36��q:̄�j~�%��C�|�Z�oʇ8�u IDAT��9 ;�mӈ|?s�d�ab�<��?_���2S[ZXP�]�w_�MD"|�=wߝSSU5���O}����\fhh���

1y���z��~�����j���A"|A~e��	����N	<��~�@���ƥ���y4͜������.�^|}�ĥ����d�8c���Bi����--����
���3��j^�;�R��a�t�2^]�\@��Z)�����c
p#p��a�<D�#�q�wdy��AH���$h�I�6%��	!f�l�W��X�F/N��h2������+P
B):�NgӎM�^0UV�x�������T�ӟ�5R�g��K��N��B҃М^�,��@�WtY�	I�� ռB�c ռBdDa���aw@�3'CH�M�ן�<��x����b�
+%���Dx�A��p�'�;"��R�WX�W��	z�6adx���~ܸ���
����'�|��Wx>�WX�$����Nhh�*�a�(D�VU�c���E;f�WQtax.���׎�G+Ji_Eu5-,.��N���*+����a��yee|�_`���ώ9��Ӧ
f���F��<�A�4c8�~n"VdQ�n_v���X����W(.-����=���(�SJ��@+�i��}��w��+$�W�㓮.�]��M1�0�
��@�
(H)�����kա{�i��x�`Z{;˾��M�n,_0���q:�A� p9�Nf|*���MM9��޾=��45A0� �j��۾�"�Lnnf	�������Ճ�}�Y�/���8l6��t��r��v�^"g�٘�yyA���>��VW'�TU]_Z���D�������- �WS��"��{�ߜ:u��ر�|���f:e�tJS�L�>�Nln��So0������}�
b��������'9��`�(�*���7�N)_��ښ���W��V ju����s�H�}A�7; ��1ܾ`�D���0 B��^��/�eSD�y�p�=�^Z_��h����'��Z���K��N8 /p<Lf3���
��a2����=Y-�!QMX����= B��[_�l�Z�z�6�����烏�p�f��˩ �<Y�Ƅ��P/8�� ���3g��e�7��
ę��[Xĩ�!�x�!^��� ���'�^����X�eJF�>�G0��h���h�P5#I��[
�݁/;�|�Q���b�鰄����5|{�Z��8�/z].L�e_0���[^>l`lyy8����/�Z���Jc������J{�lF���?u�Tf��۾@������b�<@iEUgdy��rl���{����~�/^q	T�

��>���}�
(P�@ABP��/P���l� ��
���)�/`)EB|�h47ľ�+	]J�pX�F�r^�R����i�F��6��n�/�?&���}A����

�>�8%�B�'�S�+˾ ��ۖ��~R�+$=i�y��-,R�+��"���ec��t�A��}�H�e{@c5.9-=�VsF���o� �[��V�X6&�^>B��MM�\P�/�	qy���}U55��j��/H5� k_p��aL�:u0�b��=���Ϗؾ VƵ/H5���}�
��U�(P�@�
��!ڞ�a�5��y��IJ�Y��ʊ���oy�a�R��b�P}/��Ũ���z�O|��+|�z�(�9�-�-/�޽�gΨ�m��h�J�2fdf��;R���իW)p��v����k�X|��I��MI��T
� �y����͇����!�G���+�����H'��T��XA��_�elggg@H�<�Á�{�i��zz�5.+!��1�ӛ��1���cY���S�B���P�DA���TM�P�>�� �5�Ɓ��e(�JC���n̙7�@�K�H��KKgsH�H;����<!$�b0��VU�R��\8?�b�=��`��l�w�xP^Y���%Y��e^ $� `Ű��=�`?!�ԍ@;���U:�X�6��{�{F�8�L�3�@�|>�X�(��7C�9F��y.��f��9ǧD��1cf����9x��.%2�&�Xc ����!�J)X����l�����;bԗ��/a:-fs0�m �m֨Q���i����� �&���3rr��71��yn�N���}�nG?�����!��r7�Z��&NDiU��0!�jM������S&MR�����x�f��gee񙙙|����]��JxFJ����^{����;k�l�����G�.0���5{6���Ɨ����.K�qPJ�E�y�L�)�R�|������3w.?�����ʺ6w�<�������?F)��R��R쁨�^J��X�0�rU&�}�ᇻ~��_N���asGoo�o�����u&!�?PN�,>E(۝Ed�o%�>
�	!p��ŋ�������yx�^�?���:��a�|�C&&��0|�j�@��3eʔ�>��H��ܹ����B �1a���:��>G��o�<iR)Dz8w�ܙ���?�Q\\�TO�;}ڃ�h�:,�����[n��y�8y��k׮�2*��wW�n.��/?�p�,`e��
���j����333�(��(��(��SJ�3�<�������8��ZmjO�PJ�{ϟ�$--�$��=�)�b��R����l���t��6�@�
(P�-�^y��B0���s嵵+��a���"|!�
��0��`��H��J��W�TT0����?��9g��~��%�s%��+��˙;.4�����c	w��+����͟O_{�W��T0���6ϛ߾@�qkE��
���뮻�b�2�����8T���
�7^T^������w�<�|���#��๢�r�s�,����ۥ���I'wv&.�1'��=o}�F�84utЦ���>��0a�?0��,]
�ۥ�v�4� d9.pF8V�/D�;4�YԨPJA�Z�5�_S�!od��>��4v�S~�N*�g��D���;q�Nmn~���"�c��h�>}��`x@��q�MHT��+����:�������t=*x�^_QAZ���dt�O�8'�E��	@)�S�ב�5��紷7���Ɛ��:�}�m�Ľ[�,�9�Bvv6:��ZUz}7$j>�$7!A[�:�y��:������Z�f!�]�"��~���N�����Ѩ1�(�<%.C,&�eem���a5�8;w�~r|���ΡÇ��eY�L&�jo��N�
�E�V�΄1�Ȉ�Z����ĵ_��<	?��"<D)���G���y6���L\��p��_m�zz~�fÆ�m.���<�Ǐ�T�[z�7���j��A���_�~	����v��*���:�����g���h4�����")������!v�kӺu��e�^�X�K�5��.�6����5���ϨT(�������թ5\���n�8�iQ!ى��h��?����r���W%�C�������{&Bߎ��E]���Y	��ߵk���(�-�20p�S�����*@6g�l��3�8u���h��^
)�1Î��nJ�6�aʓ�	�5Ѣ�'�F#K�D}�B����K:�
6ۓ�}l2�,����Q��R��\��RY,��x�DА:�X���R�
(P�@A". w�-."��s�z=\v;\�h\!:�i�8������#��2Wm6lX�.�J�~��].����ѣI	!�q`����/}�A˲�?���������	!덇���'*��˗�B��3 d��c�B�N��!�7�R�X��e*x�*+Ϝ8W��E�
��/���@��ޞ��B��OP���_&V�^��+D��A�֛o�EgϛG�99Q��#��|O'Q���,]���L�0!�B4��hz�0��	B�8l��DQ�I�^�٥�O��7�kj��U~C�ژ7$�&��@�2V���x��d��~�PUE*��ڹsg�%<!B�T1��G�����������;�

�z���N�`~~>:��0z�:!>��6%adx�l�^����֚��
��)�ݲeI ��
����٘��ެ5��!���'�*cR�(����tt4ffd��vc����jش�k͚���g�X0���Ng6�P�����1E��B�h�N�mV{{��d˲8t��?��xG��M;w�~��8��谦eemPd1�b�#�n�x4��9J�O@�� 2 a��h��KV֛z�9���p���8��_�~���	�����F���#)R�6�ԏ_��<l.��fÆ�zz~�l���A4d�e?ܴn��v��!�--����-�--��CN�����8��H�;�1l�ND2q6lݸq�5�mP��:n\] ����ʨT�f��o��J�$-�q\�N�D�	v����?4tI{�M�J������-��;�Q���|�cGKfii���ҕ+m����2������
D� �1^}�3a<����y��D�f�Dn�oO@�p7�'�*���	�i1�(P�@�
DA�v�Å�O����p�\�`b��A!P��a���{7�F�yA�@H����Q=)��(~W�:�:`�pt"�a�I�T�c�/������ \.W�6C�R�h4�b�l6[J�edd�d2A�qѽiŚ������m�R�������t~\~�`��{nw 4`J��,�㠦�X�Q�
4L�F�,��3)%�u�$��IPk�p>�M5/�P	$J�$������N,��-�o��)�	�}N@s�T>"j�Ԉ�=	���|:񸿚�n�s_�~=LJ�z0��gB��F�Ip�)����h4�+�%HU>���h������իطwo,�1n�x��o�II������������	̈́�55	�p�櫪�����_`&$j5($��xH�LhWMe���!�3!��
�z&����[�gB��|^/��O��3��@MI>-����ɡ�U�+^!��IS��a�B)���l��e��r�4�6d��[<O��Q�@�
(P�@��d`�?��_���ij1ᕴoZ�e��my�;߱�������|RY�վ=m��i�&���8�z�_���j�m�Y�23�z��|@
��xX�*����m�B��?*�'��ӠR����n-).Dz!<`�kE;��*-��?u*i�ON�����{����1�t���!ШT(,.^�p:���~'��p>���J����~Zmu581 f4-�J��Z��J�8�N8�N|{�2�?.x�?�a,A�����Ϛe���˲�����"��Y@�OD_t�JB��a�Ν��|���7!�{�Ć�ی�.pׁ�c]�����8<KZj���v�g�P���pf_(+/��=z|zz:t:��JhH<�D�D�_�J�)���J���G���?�:�3���dOOmeU����^�f�����A��z<

��������lp:�p�\���e��|�XW����!���!��
�����9��ܜa�Z,��G����<������O�s�.��#�|��vhh�H�4��j���^�F�F�R|����?Nf��G���ਫ�?J�eee�`0@%0�׋s���ȑ#r����������f|vv6c6����q��Yߡ���@<<�
�4�7������X��.??ߜ���Z
�χS��8}��R�[���_-��������u�F��F���>{���ږ
a�׽��3f́	&�---|�̙��& Z��(�k(�,����3�l+))qN�6�o,qPJ倫QJ�x������kh��++��(���.J)���dL^��-)Ċ����Rz����h<���NxCB)�>�Խfݺ��%-�X	C���yJ��<fL���|#������4~��M�~��I�C��Χ�^�bEJir��z��X
(P�@�
(P ���t�29���kE�ƈ�J�JK�w�c�����g����n�j�
�,Z�L�>}%�j���4 `}>x�^4����ŋ������yC�k���.�f���{�����m$0@�%@Vi�@)�N���@4X�e�x�s�g�D��Y�C�ڇ4Q�{aiP
�)���b�&�Z[���*���n�7o�^��3�~�p�xY��vgMe%3&'f�	f�	�a�AXE&Ek�Z��G�b����Rg�o5&Ӌ�S����q�@��^�r�7�����&x<�����,�����[o���D4�(�p���9
��c�W_���nYu�/&54�gY��P�҆�w���z144�+W�|��ӣ�$8g��y��/N��+�	�\��<�J��T�7�q\.���[aҤI[w��9���.���,���e��,<�N'G)=��������U��`�)�_|�)+++������fÙ3g�o۾}����~_5B���m���mYq�����p��ի˲�<��﹞~�Z�9�������:�.Hd��n��|~�:�j<�BB^Ci������m6\�v
{{{��.�l�����"�K�{[�n�������?��+����B�F����i�����?��6�#`E��C�R�)�Z]ͷ̜ɷ���&L�njs��C�R�kHp��0����ٯ��wQ1Vi,�WV�u

|Aa!��ҥݢ&}�ʄ%��ck֭�I)uSJ��h!}v6�3Ϟ��9 
�C$����~�SJ��RژL9�1;�r<��9*	��(�)��Q�����dҊ���On�)P�@�
(P�@���/P��/P��/��/P�(|ABP��/P�
(P�@�
(�/���H�G��#R�)��D�?"����4M�B��H�
(P�@���"<Ԯ�\!HFSl���vec}=�6���r�(���h0����A��>�`D<WZ]�����Y0>�>�`�;�́��E���ϕTV��./g�\�0и-��N�ǢQ��g��xU?o�|��o���T���y޼�甈��9kE��
���뮻�b�2�!!�7��
���3�#x���|eyI	s�%xx���58�D��7�wΚE_{��au��;;�����%0����ͣo��ֈ������!@�G0a��`�Y�f�K-�d�A�r|�P�!�����*�į�h<��F
B��.-}*�i�ا�>Z�TdY��8�}'N�ߩ��UUT�?Mӧ�P�㺒2��CT��+����:�������t��z�^_QAZ���dt�O�?�/d!b>���5��紷7���Ɛ��:�}�m�Ľ[�,�9�Bvv6:��ZUz}7��@��a��zb(י�;f���Y,8�n_ך5�����7/w��������F�Ѹ
@�)�;D�!�	�Ҳ�����p���w?`SD!��C��#˲0�L���^	�n�V���6�ג����'��:��I���,"�CT�/�(��<��zeׂ��5�����ɚ
��\��?�Rm4n�_5@��w�VW����[�~�8���햵Ɖ*��;��p:�����!�ӣ�h���R
`��Ⱥ֖�r���M�����PzCI��T�qaD(����5���ϨT(�������թ5\���n�8�iQ!ى(`�"��wtw�\���UI�$k�z�
]���=�oG��.Fq�G���5�RTT�_8s�ԩY�S�	�U�'_�����g�ԩ���&U_��0����Mi������L@�`��D��hd)����cY�F N��D�S�`cوߣ���D��F0�Ѹ�D!.�L��8�!��".��	��X��z(P�@�
d,k��IDAT����Nc{�9wߍ�.�.�4m4.��V�4�{X�s�0�tD��^�͆
��%\��������SG�&%D�ǁ�x�$v�K|�²,�?d� �<}�x�BD@����D��>�b��A>x�}��<}�XBBD��$�A�
�+�-{�
�{�=�
��3'N�"���A��+^!x��w�ҕ�==1��`G��B,_�2�z�j@\!BM��(�OPJ�o�EgϛG�99Q��#�B�r25�?��ҥ���	�+D��u�]��<A@ǁ
׶� �:M���"7�.-}
���_S1�!�!Zm��($PMi�U�oil�Se2a��J������ܹ3��!T*����1��r:]3��}���|gQA�^�/��p:�����ֶ����!�]� �1JX� [��ww���fgg��t
{�lYH<�}�mCv�ktv6洷7kM�nHN�G�	�
@��L��h�6���13#N��7o^�?$Evu�Y���v�,f����������G�O��B�W�Z��m���^i2���,>��p8ޑ�g��ݻ�8��;:�iYY�YL����xA���4��9J�O@����d���h��KV֛zís���pL���ׯ_���v�A@muu��wȑ)P�[�Ǐ��y6�KX�a��}==?�k6[r�@ih��pӺu���.�������V�����j49��{�t�k ��t�K�-mH°a�ƍ���l�j��q��	e��VF��5��sW�,P�'iA��b.p�� 
O�kGw����K��lTj5.������n���T��H~?��W;v�d��v~�t��A[o�<��DE ޺";�)���A�c��dg�x)7s��'�*���	�ܖ�$� �H�nOU��� �(<�
(P��������y��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/icons.png000060400000024322152455705240022422 0ustar00�PNG


IHDR����1 IDATx��}ytՙ���v�[�f!�v�E�l$���%���7�yx�yC��a�0�3�/��$�8q�0s�3��!������Wlc�x�%���{wujUuWu�!���9u���W߽U�}�~����Gl@��2��P�Z��&x<��_��זF"LMM��#����a׮]A�8%��K%`4ﭭ���ҥK��^{-�r�ʠ�j�w�…�y��<�Y*ϥ�  �@1���˗��z�>�/��i$80�Zc�cK8��FGG����/�����8A��F�ӹ�j�b��� "<��3hkkۜ�!� 
�;;;MNN�H�.Z:::z#���cZ��l6o����0m"��D4���uppp������} 5!��1�������;A@cc#�!c��\"���������6G���S'�F`0���
�q0�ͨ��ƅp�-��'��49�cǎ�`0��r!�������ٵk�r�-��ej "K2��c�Uy��o��x9a��t�|�Na��Ny!կQ��_��׌V�� `||.\�m�)((�~{"z���W�XA�/������(LDM�r�b�Z�؏A��˗����~��1v<'�1������د�ig�UUU��0JJJN2�&��d"�TWW�z����[f����;���)HDZ�2qp� ��b��1����Ap�7g����x@xΜ9���G6�-
�V�T�l0>k�,c^^��8��0�����25�W�����EI�e�DdV)a��U)��q]c9��F��A�P�B�{aa�/ZZZ�qb���0��(FGGQVVfݻwo@�֥����s-_���9���ё���o��ؒ%K������{{{��mmm~�@b`���na�%�����̙"–-[x���c���1��s��ye�>رclj5k�4�l6���`xx���񱱱?x�f�������r����F#�</O�	�D�(��(OMMa�ڵ�޽{���|p�^xAg��>�:�D����+V�����c�޽�zjz�}�<��f�EcW�� �~?fϞ���i477��C(B<GQQ���0::��{�ܨI��͛7s�����199���B�������ٳ�1��T�<"$�g�h�#"/�OD�Q�fE:t(�&2���x	
�-K�p�o�ֶ�l�������r�����d6�Odey׮]����[m����JKK�p�B�ŋǎ=�[�@R"Q'=s�m�5�\.'\�z��֭[?�c�݌0�>��c��B�@ ��x�g�*+8@��~���c�|D���ܳg��/ثED™��V*--����|�]EEE�---����m��Lg��F��
]�|y�'��3g����b� ��4��D�AD���\YZ'
ѳ�2�ek�H >f�8�3��Y ��Y���T�I��?��>&"�H�M7�T�F �ba��K_c 8�Z0�b���K�IdR,6��8��s��m
�2)�C�����qA��K��Z`�	3R,�1�1/A�>#Ţ�L��h4n�J GŢC�i���x��$��#��F�$�II_LY��&Ɨ.]��~yyJ��̙�Gy�����4>�^��XL��z�(�8�"�HZ! ��D J3�ꚫ�h��N��j�|���8�t��~E��h�c��񸂊Z'^v��-/WTTT�Fa6��2��~?���|	@��c��l��㨯�?�ZG�͛7?[SS���%��C��n�����&��3DD+��Ռ��>��]]]�H$R�q�-���������+=�Zӄ�X~GD�":(��+B9�tm�*�.PD�\�ւ>W���j���-C�ZK�2���M7�D�f�"$ө��%��H7�x#!��q0-P6|�;�Y^PP�N�>��7.��b~ooo��y���8x�^��׿�`EEEM� `bb���p�\p������8��8���z9]s��\�z>����pP�@�>�远?�w��ELMM����'"K����[�n�:��� �r�-�����葝;w^Y�h��|�+T^^�������.\H�����=��D�jll�?>=����?љ


�g�y�D�%�����jjj�ID����V�5�կ~�u�ѹ
�њ��+D���~����EDo(:'���v��D����`4]ED��.�[�ly����ס�:��HdUN�kkkI
N�s2'"N��Rӈ���.�L��D�Vk9�ڐSa2�4�D2c�4.��0�,�j��<��j�5��q�D��Q����$ ��31q:!1�%���o�q������gj�O�'&�iy [3�	d{s@�/�P��t��9��.My��t����5
,��6{O���`�n��#᧘�*��2R^^>,%�}�mmm�.[��i6�߀l�K^^��+V�����$p�=������ҥK��f�o�2f����˗�{�^��ʫ��644<���Z�D�}�����񉾾����l8z���Ǐ?��'-FA~3o޼ކ����0��(jjj���^{�w����e�M�6�1�y�mܸ����X�������?���{��ʞ�*���v�ݿ��S�r$	y<�
��C��j�Xk����9?_Ap8�v�@���8�
������eǡC�&�;6e������C��w7Wix�j��joonݺ�"*""'=s��7�{zz�|����m��꧄w�G}t+�-%<��ѱ���#�KKKcH� '@D��q��u���}�����򻻻�k�Z�����'��p�رc����VUU�ED�d7����o{>��]��wDdS �^J�&�$����H��ѳD4"6�j��Cǧ]/�zA��t����!��J��fH�P�{��w�]wՕ��.]��W_}��H|��ؑJ�ĉ'����澾>?D�&�o��s�N�ɓ'�kll4*X�Z�DD����������uIIIN�u@i�J��T�LO��$�FS�m��AJ��oR����&�X�������p5.��IFj��������d�5�I��F���*��>�����*eU� �Ps�ȑ�v�C^^^��,���h�dW�����&�]�g�μ���֩Z%��.�:t�BF�zA���Q��Pi$�&�PL�/
�lhhH�;�D"�������c8~�8�y�_�jjj�C,� �������緿��wFFF|�Pb���ף���n@�UUUF�ߏP(�p8�׋���˖-{i���/0�v{��d~ @EE�9I � �&�(�|><��c�b������흚�J��D"I��	�'�@$�����{�
E&&&�G"�d9I&r�m����׷�1�����1�ɒ%�}>_�SIfr@B�b1D�Q\�z5��s�m`����h4>����p��˗�"���^�@j~~�^��6ʍN�VRR�M��%�ɤ�@��
��z��b�<�XQQ�c�Ƙ��g���	H��b�,X�����luii��1��ۇ������~���Ah���`0�Ōeee�cUyyyK��ڜCb������w�u����(�@(�*744l7��Hp8���LvT^^Μ9�����łx<��{�w;��g�|``�}lll��d2J�"�,�1H�p8q��{w�ܹ����Q��o�(H�;(�� �L	/:>'���\�&і;y��;w�$��Ґɍ���J��a���:���g"`ikk�/���`� 0�L̈́�ʖ�� �~���㽽��Pٞ�J ??�r����zzzB�H�|yy9��\tvuu��B!\�zu��ɓ?U�h���!�3�<�p8p�ʕ����S,8�r�N^�z5r�
78(,ک�}gmm�7�\��+V���G�� ����6����!�Vk:�U]]����O�>�؂�bŊ���֒��&����h4J�`���<"�^0�x<N���J�3�'�x�,Kڶ��Y�4F���`�X`�ۑ�����&$ߚ'�|��V+8��|���x~�O=�ԧ��%�<��cd6����D�P(�5k�|�|���%�ј�iA��?��u��Il�lK����hDaa!��q6D�Q\�r�H$�f���3f��Bqn5�H�<��C3z��?���U6�L9q�����s֡�S�'i���*b�r55%�es��D�'cWcO"!�4��)Y$���*�	��/1�2���xں/���������+Wj�ɓ�iQPP ���GD���{*u���q̜��f�j<�x}}=!�6�l5x?1��8f�ɴa``�9o�<������j�"I�d2I��JKK���sw~~�	w�Ɵ��b1�B!tvv�,�FI�1����3g�XǾ�6�<Ap��	���� ���q&''122�����nG�Ϸ��6��TWWH���G(Azw��rqq1b�X��DA �HIr	]��>�rա��7>Qm��8�)_ij�w@QQҿoU�_��ԣ�Dc�XIDc�%�*@D<%�*�J��vgo����B�O&�l^�"��6�M��u1N�"���@� ��pD�Y��wd�NJ���H,L��\��3m/���H �4b�2ƮX1�>�8���rzR.I䧹Ԧq ��Z"
�%��3Gmi"�T�����=Y	���f��/..��_B������c�	�_i0IDeH���^knn>�&���ׯ_o�ɋ4�@���PCD[e�[� ���v? ��I�n��EYd�yHz!.�{��6�Ψ#�2�q�K��/�ک��� ���ڜ�@B�=���瓳�}��=M���=0�Lope�;"
ũ0��7t��|��r}���ZU$�
��P�}`�Z'Sˈ�דd�/H�8�t��M����|AUw�d� O=�S��;F>Qm�јu�"u��M�W�&�./&��n�_�NxWEfjt���咚���+�E��g$�@D�ew�/?�@ˆ��h�,�����> �ccc����:a�> "�(�S�a�>�i�Es���m)s�YS��w��k�A6y}@!��,B`�	;�����4��_�?��.^3@��͙3n�<�gt�ccc8x���?c̤ �Oڄ��x<���p��e�>}z����'n¬Y�PTT��+J:�U� x5�v{NO��&��{�f��,�D΁����s��F�r	q�L�S	�p����8n�0���Y_��W����ϟǻ�*G�jǵg��5g�
H�f��̟?<�k�'��
�0::��/NY�J����Pb]����ۂ,{)���T4�%����lll4�
V"B4���0crNԞ�h��΢�~�a�n�-D���_,�w:�E����!�EB���z�I�����'3$pz&�u�Α�0Os��q� �Ł�S�4R�F��X��H5Y/���y���NPP��`[�$^���N"�OM�i��Fq��e0�Bi�Ȩgm���l���^��ٌ�YuEF��y��r��R*�I��9�T3�
�&������l6�m�9Ҷ#ec9�jM����URk�j'�\.�x<�:B�#i����t�����k�[�I���Sav���v����{1퓑��H����^/���pcc#͛7�l6[��bd_c{{;}��G�����s������7�x#�â�D�~�zLNN���&:~�8K~����3g����AD��b�I��h4������GrE8I #�d2A�^�4HV�������D�ڔ��<��<�q���v�HQ���
R�%Ɏ$ٍ�V�M������C,c�h�`~�~����d�F�u� 8��X�~���s����jjj�eee�W�Z��g��D��� ??_)���>"��������w��AV�AD/�E����e�\
����s�f��t|�����������?+�"G���z�f���͛G���d6��HxD�bz��7)A%9_PP@��7�q���8���p��1\�xDt��p�jkkq��!���@"���O��8��ը��c�`�gϞ ������+ ��ʢ�	"�PN�%*EoK�$��&
� ���bCܤE�KmB0D4Mr�����r�F`||^�w�`0|��V���j�"??�D�`0�0����ۈ肨�ѕU�Vm-++�^SS���%��se���J�$��>���Q?l!"��7.�}�}�U΋��A˙��u�t9�Cǧ��
��\�]�D�y�>��B��_]]}��>�yB��������H�������"�$��ߘ��=�uwwSww�b��l6�	�9I��ruWUUQ(:@14C�Ё��*"�n�	���r�1����o6���o).��<���b?c,n�X�'9�ַ���)"Z����������>�`�X'"��իWopX�ޕ+WnY�r�[)O���ի�џ�	�D�L��j��&�S_� �����C��/,>Gz�d2��׮��ˉ�����>�ϣ;��������1����͌�;�fs��ŋ�f��a��GK/�^�z�֭[\�|�Ѧ��s���GD��SO���#��]]];�0PO8WYY9r�СUrZz�A"2�+�/�S[[Ks�Ν$�]D�<)MF,��LJ3M���#���vr�\�ZY�.̚5k������I��L>�LX�v����g�~�;���r�v��Օ�TBD;�6�}���TC���9G2�CʵMV����`z%$"zKC��%+�gٲe�l�2���m�:����������JF.���/VVV���<��o��J@m��b�
�a�Ƚ{?+|6���������Q�5B�d�d������+�2ʅ�M�6�h0�Û6m�">F:�h	�\�

���SO��~.:����Q�i�\���O���~�NLvD^^^R��<�Kk.���r���cԡ�@��c�3��b��%�MD����*�w��~v��AD�Qf��ڒaj���ۭb:���8�ք��$�+�N.�Q*�<
uF�Q�m�ە;��#c���1�\x��c���s������=��2��HD��e�?:�`P�|� dR��D��˫俳	�T�{��!�9&䩌1���P�r��H�\�L�Ґ��<�N���L��̟�cT��3}�i2��1M���1��|=.���UUU4w�\��� ��@~�R����:::h�ܹ$�����Ayy9c��lo����i�("��v�mo:�A"cgϞM��шӧO�h4B�A��_�ޞ1�ׂ ���3	����o����4_���V����%��X'����-D4DD+P?����멿��-��D4TXX�E޾g�o����qL˾d���b����7�D4�S���nY��bڏ��;E��&���yZ^x�…���K&���a�…!�ձX,����h�"jjj"��+QKSS-Z�H�d�X'����G�@����x�"�y�`+c��Dw�u�…����ԩS�X,عsgℨ`0���r�<�&��Re�?��@����x�x�"�� x��ѣGc�R;�16�`kk+AHƈ�`xx8U��M�HoV"�z:�0�t:��t�!�Br�"�����������ߏ���:��)fc��x�ĉ|CCCscc����҆QA`�Z�'NXO�<�^cc��1�"���?C��!1o14�S�~�r� ��Z_��&��T�M�e��"?�	�E���[���>���Pn&�~km�K� �&�Y�[�(SY���v -���DQ��C�1?�Dw�ќ�������@v(�fu�IDATx�ȑ#'�������tH��p�J[{_���˱.�:td�9���gG�^�	�:$�MА�LT�
�&�+49�UWh�UW$	h
[��$�@��tE��(�'3D]��+� ��%V�����_���.���.ц�+t|Z�Z�$�����o���w�]wՕ��.]��W_}��H-����z�������HQx;w���f�9g� ;R`��	%%%�zA����s�5����I��Ȑo�ەM��n����v�&�x�߲3�U�E��4���2VH�Wkr6��I�Z�➞���\gm�󅚚��:���V�/�����Vk�z!U�P�l�됤@I� �!Ii�~����r��M���H��3�i,�TW��9���>e�b\+R�*wLE��4u��K2��u���-���x���&}0���A�={�;n�?��OK<O}0Daa�����Ccc�厎y��n$NA�zzz����:GFF���7�u�n��IUc��нd�g8ƕ+W�X��ͫBm�z��bA8��n?���*�ñH�ֹt��}j�2����[�d	��������,*,,�B�x�?`�L	|��cbbuuu��2���5�<EP����jr��t�ȑ�b���r��q��^w�����Ei�Ł��e�JLsѶ���!��mnn�_�zu�4bW������cgl���q�D[[�q�oxx�y����579����6X���o�ۭ���w5r��KEEE����}�N�}Ị���[�t鵫A:f�U�,�3Wv:��Zc�����VLR"j[�Z��Q����n�XJKK5	P����x�-�$�OvT��o�p�JY�Fuu5@ee%����(�:̞=[�	�/�������n��N��ឞ2��>[
^�i�}���wZ,�C^��_`bb�W��Ν��R��QEEE$��/�ϟ�;1kcggg��e'*�r~���#�߻5�MCe�F��,�R.KF�r�n�u���㏆L:`U�z	�.��p:��Y�h�z"�!���d��5Dt�n�k�S)D���'�����t��@�X�>�@�����uD��+��#
��7��
===�t:��~_?q�:s�o�)l�ܹs������x���X,�:;;�p��N�:��:;;c6�Y��?~�㸿�uG�:A��Y�e��R��;�I�	:��`��+�����fO��P(A�=[R�Ȕ��<���	���#��`6�a2��
%Bf��1�`�X0k�,�����(&����rJ���$��1��zn2�(����f��j߻��Ԝx��4�Cr)H�M&SNiǁ������I���s��544p���K�D$,:Y����?��N�$��y�����k'�t��f�R"`l��."�]�C��/]k�^˷�i!�#����v���_�2�q�ԩ�	�0�^����mnnF4�t��H�p�9��$�Wx����n��h�x�ᣏ>B(���Ň~x��^����E�V���w�l6� �S���(l6\.***P]]]499�
����$�y�heee�������<�#B�ݗ.]r(+,,t`���>��;�tQ��{ߪ���uttPCC�v��Dt��Þ���=�%}�&��W

�X,礽kb����$��~�l��$��T��hܮ���O<�A��X�ED�d�0#:t|�x		qmu��H�4dh�����{�q��ۑڭ��u:�"�|��o�o4����í/^�2��L������Z�v;�f3jkk�:�`0`llo������_�f��������f�%'b�`09��---\YYY��͛����n����7ߌ��1����.���L�<ߝ��A099����#�Ν�1ƒ�YSSc;���u�֡���@����v����񎎎����k�-���o��O~�UT"wQrS��b!��rnhhh%�|�۟x�
D���0�ۉ�=��4��'�W�ȥYY��t���]/�С�Sڑ~�v�x�v�������Vݎ�ۑt�A�S��OU�SM-����B�S�Tu?�LY��~�:����81ە(�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/tabletools/index.html000060400000000054152455705240024742 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js000060400000014643152455705240026625 0ustar00CKEDITOR.dialog.add("cellProperties",function(g){function d(a){return function(b){for(var c=a(b[0]),d=1;d<b.length;d++)if(a(b[d])!==c){c=null;break}"undefined"!=typeof c&&(this.setValue(c),CKEDITOR.env.gecko&&("select"==this.type&&!c)&&(this.getInputElement().$.selectedIndex=-1))}}function j(a){if(a=l.exec(a.getStyle("width")||a.getAttribute("width")))return a[2]}var h=g.lang.table,c=h.cell,e=g.lang.common,i=CKEDITOR.dialog.validate,l=/^(\d+(?:\.\d+)?)(px|%)$/,f={type:"html",html:"&nbsp;"},m="rtl"==
g.lang.dir,k=g.plugins.colordialog;return{title:c.title,minWidth:CKEDITOR.env.ie&&CKEDITOR.env.quirks?450:410,minHeight:CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?230:220,contents:[{id:"info",label:c.title,accessKey:"I",elements:[{type:"hbox",widths:["40%","5%","40%"],children:[{type:"vbox",padding:0,children:[{type:"hbox",widths:["70%","30%"],children:[{type:"text",id:"width",width:"100px",label:e.width,validate:i.number(c.invalidWidth),onLoad:function(){var a=this.getDialog().getContentElement("info",
"widthType").getElement(),b=this.getInputElement(),c=b.getAttribute("aria-labelledby");b.setAttribute("aria-labelledby",[c,a.$.id].join(" "))},setup:d(function(a){var b=parseInt(a.getAttribute("width"),10),a=parseInt(a.getStyle("width"),10);return!isNaN(a)?a:!isNaN(b)?b:""}),commit:function(a){var b=parseInt(this.getValue(),10),c=this.getDialog().getValueOf("info","widthType")||j(a);isNaN(b)?a.removeStyle("width"):a.setStyle("width",b+c);a.removeAttribute("width")},"default":""},{type:"select",id:"widthType",
label:g.lang.table.widthUnit,labelStyle:"visibility:hidden","default":"px",items:[[h.widthPx,"px"],[h.widthPc,"%"]],setup:d(j)}]},{type:"hbox",widths:["70%","30%"],children:[{type:"text",id:"height",label:e.height,width:"100px","default":"",validate:i.number(c.invalidHeight),onLoad:function(){var a=this.getDialog().getContentElement("info","htmlHeightType").getElement(),b=this.getInputElement(),c=b.getAttribute("aria-labelledby");b.setAttribute("aria-labelledby",[c,a.$.id].join(" "))},setup:d(function(a){var b=
parseInt(a.getAttribute("height"),10),a=parseInt(a.getStyle("height"),10);return!isNaN(a)?a:!isNaN(b)?b:""}),commit:function(a){var b=parseInt(this.getValue(),10);isNaN(b)?a.removeStyle("height"):a.setStyle("height",CKEDITOR.tools.cssLength(b));a.removeAttribute("height")}},{id:"htmlHeightType",type:"html",html:"<br />"+h.widthPx}]},f,{type:"select",id:"wordWrap",label:c.wordWrap,"default":"yes",items:[[c.yes,"yes"],[c.no,"no"]],setup:d(function(a){var b=a.getAttribute("noWrap");if("nowrap"==a.getStyle("white-space")||
b)return"no"}),commit:function(a){"no"==this.getValue()?a.setStyle("white-space","nowrap"):a.removeStyle("white-space");a.removeAttribute("noWrap")}},f,{type:"select",id:"hAlign",label:c.hAlign,"default":"",items:[[e.notSet,""],[e.alignLeft,"left"],[e.alignCenter,"center"],[e.alignRight,"right"],[e.alignJustify,"justify"]],setup:d(function(a){var b=a.getAttribute("align");return a.getStyle("text-align")||b||""}),commit:function(a){var b=this.getValue();b?a.setStyle("text-align",b):a.removeStyle("text-align");
a.removeAttribute("align")}},{type:"select",id:"vAlign",label:c.vAlign,"default":"",items:[[e.notSet,""],[e.alignTop,"top"],[e.alignMiddle,"middle"],[e.alignBottom,"bottom"],[c.alignBaseline,"baseline"]],setup:d(function(a){var b=a.getAttribute("vAlign"),a=a.getStyle("vertical-align");switch(a){case "top":case "middle":case "bottom":case "baseline":break;default:a=""}return a||b||""}),commit:function(a){var b=this.getValue();b?a.setStyle("vertical-align",b):a.removeStyle("vertical-align");a.removeAttribute("vAlign")}}]},
f,{type:"vbox",padding:0,children:[{type:"select",id:"cellType",label:c.cellType,"default":"td",items:[[c.data,"td"],[c.header,"th"]],setup:d(function(a){return a.getName()}),commit:function(a){a.renameNode(this.getValue())}},f,{type:"text",id:"rowSpan",label:c.rowSpan,"default":"",validate:i.integer(c.invalidRowSpan),setup:d(function(a){if((a=parseInt(a.getAttribute("rowSpan"),10))&&1!=a)return a}),commit:function(a){var b=parseInt(this.getValue(),10);b&&1!=b?a.setAttribute("rowSpan",this.getValue()):
a.removeAttribute("rowSpan")}},{type:"text",id:"colSpan",label:c.colSpan,"default":"",validate:i.integer(c.invalidColSpan),setup:d(function(a){if((a=parseInt(a.getAttribute("colSpan"),10))&&1!=a)return a}),commit:function(a){var b=parseInt(this.getValue(),10);b&&1!=b?a.setAttribute("colSpan",this.getValue()):a.removeAttribute("colSpan")}},f,{type:"hbox",padding:0,widths:["60%","40%"],children:[{type:"text",id:"bgColor",label:c.bgColor,"default":"",setup:d(function(a){var b=a.getAttribute("bgColor");
return a.getStyle("background-color")||b}),commit:function(a){this.getValue()?a.setStyle("background-color",this.getValue()):a.removeStyle("background-color");a.removeAttribute("bgColor")}},k?{type:"button",id:"bgColorChoose","class":"colorChooser",label:c.chooseColor,onLoad:function(){this.getElement().getParent().setStyle("vertical-align","bottom")},onClick:function(){g.getColorFromDialog(function(a){a&&this.getDialog().getContentElement("info","bgColor").setValue(a);this.focus()},this)}}:f]},f,
{type:"hbox",padding:0,widths:["60%","40%"],children:[{type:"text",id:"borderColor",label:c.borderColor,"default":"",setup:d(function(a){var b=a.getAttribute("borderColor");return a.getStyle("border-color")||b}),commit:function(a){this.getValue()?a.setStyle("border-color",this.getValue()):a.removeStyle("border-color");a.removeAttribute("borderColor")}},k?{type:"button",id:"borderColorChoose","class":"colorChooser",label:c.chooseColor,style:(m?"margin-right":"margin-left")+": 10px",onLoad:function(){this.getElement().getParent().setStyle("vertical-align",
"bottom")},onClick:function(){g.getColorFromDialog(function(a){a&&this.getDialog().getContentElement("info","borderColor").setValue(a);this.focus()},this)}}:f]}]}]}]}],onShow:function(){this.cells=CKEDITOR.plugins.tabletools.getSelectedCells(this._.editor.getSelection());this.setupContent(this.cells)},onOk:function(){for(var a=this._.editor.getSelection(),b=a.createBookmarks(),c=this.cells,d=0;d<c.length;d++)this.commitContent(c[d]);this._.editor.forceNextSelectionCheck();a.selectBookmarks(b);this._.editor.selectionChange()},
onLoad:function(){var a={};this.foreach(function(b){b.setup&&b.commit&&(b.setup=CKEDITOR.tools.override(b.setup,function(c){return function(){c.apply(this,arguments);a[b.id]=b.getValue()}}),b.commit=CKEDITOR.tools.override(b.commit,function(c){return function(){a[b.id]!==b.getValue()&&c.apply(this,arguments)}}))})}}});
extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/tabletools/dialogs/index.html000060400000000054152455705240026364 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/colordialog/index.html000060400000000054152455705240025070 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/colordialog/dialogs/colordialog000060400000010636152455705240026745 0ustar00/*
 Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
 For licensing, see LICENSE.md or http://ckeditor.com/license
*/
CKEDITOR.dialog.add("colordialog",function(t){function n(){f.getById(o).removeStyle("background-color");p.getContentElement("picker","selectedColor").setValue("");j&&j.removeAttribute("aria-selected");j=null}function u(a){var a=a.data.getTarget(),b;if("td"==a.getName()&&(b=a.getChild(0).getHtml()))j=a,j.setAttribute("aria-selected",!0),p.getContentElement("picker","selectedColor").setValue(b)}function y(a){for(var a=a.replace(/^#/,""),b=0,c=[];2>=b;b++)c[b]=parseInt(a.substr(2*b,2),16);return"#"+
(165<=0.2126*c[0]+0.7152*c[1]+0.0722*c[2]?"000":"fff")}function v(a){!a.name&&(a=new CKEDITOR.event(a));var b=!/mouse/.test(a.name),c=a.data.getTarget(),e;if("td"==c.getName()&&(e=c.getChild(0).getHtml()))q(a),b?g=c:w=c,b&&(c.setStyle("border-color",y(e)),c.setStyle("border-style","dotted")),f.getById(k).setStyle("background-color",e),f.getById(l).setHtml(e)}function q(a){if(a=!/mouse/.test(a.name)&&g){var b=a.getChild(0).getHtml();a.setStyle("border-color",b);a.setStyle("border-style","solid")}!g&&
!w&&(f.getById(k).removeStyle("background-color"),f.getById(l).setHtml("&nbsp;"))}function z(a){var b=a.data,c=b.getTarget(),e=b.getKeystroke(),d="rtl"==t.lang.dir;switch(e){case 38:if(a=c.getParent().getPrevious())a=a.getChild([c.getIndex()]),a.focus();b.preventDefault();break;case 40:if(a=c.getParent().getNext())(a=a.getChild([c.getIndex()]))&&1==a.type&&a.focus();b.preventDefault();break;case 32:case 13:u(a);b.preventDefault();break;case d?37:39:if(a=c.getNext())1==a.type&&(a.focus(),b.preventDefault(!0));
else if(a=c.getParent().getNext())if((a=a.getChild([0]))&&1==a.type)a.focus(),b.preventDefault(!0);break;case d?39:37:if(a=c.getPrevious())a.focus(),b.preventDefault(!0);else if(a=c.getParent().getPrevious())a=a.getLast(),a.focus(),b.preventDefault(!0)}}var r=CKEDITOR.dom.element,f=CKEDITOR.document,h=t.lang.colordialog,p,x={type:"html",html:"&nbsp;"},j,g,w,m=function(a){return CKEDITOR.tools.getNextId()+"_"+a},k=m("hicolor"),l=m("hicolortext"),o=m("selhicolor"),i;(function(){function a(a,d){for(var s=
a;s<a+3;s++){var e=new r(i.$.insertRow(-1));e.setAttribute("role","row");for(var f=d;f<d+3;f++)for(var g=0;6>g;g++)b(e.$,"#"+c[f]+c[g]+c[s])}}function b(a,c){var b=new r(a.insertCell(-1));b.setAttribute("class","ColorCell");b.setAttribute("tabIndex",-1);b.setAttribute("role","gridcell");b.on("keydown",z);b.on("click",u);b.on("focus",v);b.on("blur",q);b.setStyle("background-color",c);b.setStyle("border","1px solid "+c);b.setStyle("width","14px");b.setStyle("height","14px");var d=m("color_table_cell");
b.setAttribute("aria-labelledby",d);b.append(CKEDITOR.dom.element.createFromHtml('<span id="'+d+'" class="cke_voice_label">'+c+"</span>",CKEDITOR.document))}i=CKEDITOR.dom.element.createFromHtml('<table tabIndex="-1" aria-label="'+h.options+'" role="grid" style="border-collapse:separate;" cellspacing="0"><caption class="cke_voice_label">'+h.options+'</caption><tbody role="presentation"></tbody></table>');i.on("mouseover",v);i.on("mouseout",q);var c="00 33 66 99 cc ff".split(" ");a(0,0);a(3,0);a(0,
3);a(3,3);var e=new r(i.$.insertRow(-1));e.setAttribute("role","row");for(var d=0;6>d;d++)b(e.$,"#"+c[d]+c[d]+c[d]);for(d=0;12>d;d++)b(e.$,"#000000")})();return{title:h.title,minWidth:360,minHeight:220,onLoad:function(){p=this},onHide:function(){n();var a=g.getChild(0).getHtml();g.setStyle("border-color",a);g.setStyle("border-style","solid");f.getById(k).removeStyle("background-color");f.getById(l).setHtml("&nbsp;");g=null},contents:[{id:"picker",label:h.title,accessKey:"I",elements:[{type:"hbox",
padding:0,widths:["70%","10%","30%"],children:[{type:"html",html:"<div></div>",onLoad:function(){CKEDITOR.document.getById(this.domId).append(i)},focus:function(){(g||this.getElement().getElementsByTag("td").getItem(0)).focus()}},x,{type:"vbox",padding:0,widths:["70%","5%","25%"],children:[{type:"html",html:"<span>"+h.highlight+'</span><div id="'+k+'" style="border: 1px solid; height: 74px; width: 74px;"></div><div id="'+l+'">&nbsp;</div><span>'+h.selected+'</span><div id="'+o+'" style="border: 1px solid; height: 20px; width: 74px;"></div>'},
{type:"text",label:h.selected,labelStyle:"display:none",id:"selectedColor",style:"width: 76px;margin-top:4px",onChange:function(){try{f.getById(o).setStyle("background-color",this.getValue())}catch(a){n()}}},x,{type:"button",id:"clear",label:h.clear,onClick:n}]}]}]}]}});extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/colordialog/dialogs/index.html000060400000000054152455705240026512 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/plugins/icons_hidpi2.png000060400000076154152455705240023673 0ustar00�PNG


IHDR �^% K IDATx��y|ř������ƺ/K�$˲uX��K�l��d	d�@v��w�]�ew	!�c�
$��cɆ ��`����eK�.�{���~t�x��K��f��z�˞QW�g�������)@�S�dp��9�����fp�f���Z�����"|�X(��)��K��#���}
�"cc�1�@0hu�\������`hx{���Ox����"�~?h(Q�c�R��0�@[R�N�����8�۷� s�F/
A�y�r�~�###�|`�A��b��f��h4B�ӡ��	��������
�c@E1R8�����l޼�:�k��v���˪��+�f3A��d¢��?���w��$��S�2�p�3� �"���E���(Z�n]���;�r� (��C!L�:��坑��E"c��s	!�@)�[8BD��;L)��P^��c@�0Ơ7�@B�@�&��[��Ɯp�@ ���>���]�8V�E鴼�����ǁ�y��\�|{�,Y"$�;�N�� ��a��|[�s�v��аh�Bp�P0�ۍ��>\	�����f������F���bAqQl6� @�y�B!���><�k�����{�H)�<
B0�� ����F���A�.�H�}FM�X.��y�</e�����ɳgI	�dyk2(ִ���D���K�.�㎽���]���]n����ٳ���8�V���"477Cg0��x���Q�E@nA�?0�����)�Z�r�����rss�C�ԩ
�]G�b|��/C�_�1���QǷ��kӦM�zx��FC�Gmuu��Q׀H)u'5B~� �^�4�Ji
w\�/\
`k�5@H�H(2����T��K�.��ܼ<^/�UJ�Y����јB/YVYYY��j#W���~�iSH���JAd��b���� @r@i5���%%��ͅ(�(���Egg��k��HW@,F�����p��5
L&&9�(.*�� ����w}�K�|<jL��'��̚��@�yL����󡿿������#�����+=��#" 
�ш� ~\9��G��=�,�dyg$��c �e�@���^�sό3<�?���j�����Q`�Y��j1C��� �G	!�N�&5�0|�0��!� ��� o�Q�uC/��(�7�xL�&]{�m���o��7&1��I��P��կ�@��
@����Ο=�]�y�P�d3(
���080�?n�\�*��k��yf����������^@��|>

��񠧯Ϸf��'k�{@{����ޯ|�l6�A���È��ۛ6�u���O�Y��3����G?�q�l�� �z����>�.�%U~Y7!$�:���Ϭ__H���-�u��$�x���;�e���Ν��j#ְ�==G�g��X̫��Ї�w�`9��g|x�,���y>�_���$���).^L!b?�x<����vB�zG��H�N;��z������=�+۬FW<?�������A���C�Kn��Z�� @Ex�^�r�mYۅF%�2i�RQn������$��3h�����v�(��I�R\<�N�"�Q	h*.,���7�`ť��1����E!������n&��"��aZ��8?��G%����������1�L���B~�әLC%yTv�k4�Bȣ�9�g+ �9$+�._n�k��}؇D��n�-^l���xǎ��
H[�I��	� |��<�~?<|~?����_vf+ ݃C���8j��#>�0ѾA�v��؏	!��VDJcX��0ޅ�Ȣp�˺	TTTTTTTTTTT��[,Zx���
@�JE��@���`'$s��H1�>[w�����TQRR�����ш�# ��󡯯����pA�;(Τ�F��6͜��Y�`1�9*�\�
9��N����q��i4�B�3?��
�d'E2�.hlm}hq{;'�<��"3�‡(��8Z�:�:���4��An��ֺ�1	���Y�����r�`2�P]]-6L��ښttt��ٳ����?	/]J�yZs�,��D�d����Ǭٳ��?�`�In�…���+�p��䓜 �MJ�>�\w㍗r�V0Y���~��sB^n�ǐz�'�Vה@��^	`�<9���R%�Հ]�р
�4���F|�{�;��O�O�H����4�8��2���1�V�P
0���?���O!��� ��!/B�B\��H����o����r��p@��H�H9N<w�x��{{x��cH�����@gO��36��
a0�I�98��F�C</\����A��bo�p��y�SP�I�����7o^��3�p&imI�C5
B</vvu����8��!�;O��JI���E}��Y������7�q�A�|��^�w\$�
g�'�z�D�N'j�Z.<����"�z=�F#�f3L&t:�Zm�|c.
�#.744$�|>�O�^6'&`��!�g�Hұ�y��^��;8��������`0�9�N�?�!��"5� �yHI&أ�>����o�[��tB�Ӂ1�P(�ǃ�n��"�ܪ( d�\;�!
<�y��isrr"��z��Ž�v).'��X�eJ �B^#�|�r���M��E;4J+*��i���3�Nx��d�B|���G��V+u�����rN�H{7�RU�U��sCCC7�>{��K==}N��qH�cs��L�Ԑ�����A������bP^}�(<����fVQP���11
�~��`~�� �j��a��b�p`�O��V��G۶�F�~T5088�!h�@��qZ���Y,p�l�|iB8*���e~.�=/�#GH�	E�
x��G�?���g�.h4��f�ziE�F�q��!\�f��^}U(�4��Ǔ�ɽ�����x��׹��N�q����x�"�V+���QXX(����|E,/+��х�����I%�.����~�����$]�q
D	�B�;��dH/$%��b^����UTTTTTTTTTTT��H�`l�e�=�hܐ�I#�p�4/�mZ�-,���`xúu�N�>���mێPh
�x��Sc2m^���RUU��==x��6X���x�2sf��`@(DuUnX�f��dڄ����5�7����2�~X-�M�\�,I0H������z�`��p��W����r8�6�浫V���F�|>x<����O�
P2T�Nol<_����p8`0����v���-{9��/[�b2#N���!x|�]��U@�2V������`aaakNN�z=t:<Rx'X�ֈ9F^Q�k߾}�<D���
0x������EEE��Z�6b�
!GFF�r�v�ٳg6�?�5�J���l9r�H�t/���1fØ
W'����V�$�#gϞ5��hO*@a&�T����i4���d���p� ��BF=&3R95��%��-f�9��TvBj4��cbhx�w�P�5`,�P�J�Z�Y*�hD����W����l����r��R�
��W���ϟ�b2"�ڥK�022��Ν;�v���400�wpp�`<��f�b�����_T>o�I�7�'śj�⪪�tZ-�@�:����<y����;}���������\�wd0�X��gOxf�6��9����`�Za��q���WW���������]��8�\.������ӳ��3�x�…KJJJ����V�͆� ��bd�cLT���)SD�Œpg��el_���i4��/���ɦ�W��1#clc,x�g?��N��0��v��ض�s�Q�z]QYI�LI�Rg��K�l��?/,"��Q�(����zꬨH)`c���Y�ط�
�񏌱�8]��q�$�0c-//�N��:�p8��n���������5KE�)T/8�\�іc[m�&�t������e�@)r���JJ"�M�>��54�jw8bBIQ��u�'���(���)|ބ�D�����������ʧŨ���K�����l6�b�a�ѣ�ٹsb�@���c��ի���B�g9M\
$�
B�r�	{1!��J��d.�SՀ)�f�;�����Zx�n��ވ����.�O�`\<&���^�x1M�r>/���7�[�"{L��m�fd�1���k����D�\�h\���	�����bž>/~�1�mhhy��D�?n2�Q^ZZz��k�
��l��6�Y���b6#��cph�I�^�<s�
КLknwqQQ�
Q(������;
��	�D��RBV�W�o��}���{)��999���d2a�UW��^����F{L�pM
HV��D����d|<&��1�z���������a�ɖӧO7�������C ��`���g+`\=&�򘌚�򘌚q�Z��xLTTTTTTTTTTT�א�D���\Hi�i���h4�0C
���P��ImN'�m%���v��ͥ��\j��)������o��v�:�0�	N����_��_>mn��:鵛�Ï~�ä�������h��h�n��/O�&r�"�N����1���-h����+ ��v���cj("�
Fҧ9?���f˲��K_�R
*� r
�45���~1����E���"��3k�p�4A�|��qj���	�ے���9ܛ ���x5A�SQ��u*�˻�B��S;3�D�&�0|���s=*�g4H��H���i��@`X���ʻ�BySM�F��	o;.�<|>
����	�
`���R�ړ�o�X�"�I�n7��7G�� xL��ZmC��+JKk�,@��n|�_M"0��F��� ȮQQZVvg������Շ7�
6J1G'�O��t���'�"�O���h�n!���<ZU[��|<�ǃ�˗�t��LB��[cK�<��8/7'G
���cdd.\����hD�Á�ɓ#�c�ǃs�ϻ.ttB�������}�Ѻꊊ���������͘�Ѐ�`8aG���A__�p�W�rIv�θ�Zx����S�0Q�
���"y7y�ۉS�Os9G�ɩ��e*��;�>ܶm�K/��:t�w��9����1�L���ROcc����n���>7[Nz/!�2)#N�؋��ı�e����
-�������!Ū��h�Ѥ�4��Mđ�*pL�M��P,<gpG$r|�0�1�(�L�Q�4F���&r}��������������
���RH֏svx@_��|�BuN�����R"^@8����m().Ƥ�<�����v��/x-M�m�j5{֬���"Lr:144���^�ڳ�B�/@
/� �nu:�}�*mVkdKB�Z-B����|3�}����^`�4��__`�� �dY���x�x�����fB�m�j��
��U�F��~������0���W�A�S)~�#�ٰ��d0���!F���^�o��	�?�	"���V�z�gRSJ#3��� DA��k׶!�����iH���,���%�#o�u555!����ۉ���9�H�V8���� 
E����1����!6�Gj`pdd?��1���ܔR��ɯ�����PT�?Jy��Ax=䖕
�4��;���B`�ȅ�π�y�\.@2<����g�?�����B���^�P#�>~��ї�����
�"������+�B,��;w~���B��\.�y�Pؖ�?00NS��?��֙����󡧷�s�\\(���/�"�;����W������k�ߏ��~\�x��B�P$} DiII'��P���3Ƃ[�ne�^{-۰a����U�(��cO��m�&�f����٪U��
�u�����͛_�O���_4>��[��C�z{{}�/\8���G�!�F�}��WOٓ����;x������x��W*4Z�H)���}�//+{��I�/*=!���~�V����=����>��j����J��q�����nH���N��5


9L�v������o;/:}r;!!�����y��w���L��p�n7:;;�76n��V&�k�Ms�\��Ι3����<�;�������%K�Һ�:���=w�1�QF)u���,��MM4''����L�r�(�����肅��ɓ�yd(��ߙ��H�+*�y�_1Ƽ���L��2������)SFΞ;�3�.2�FN%�b�ɡV�mc�#��9�_�A�zz���Cr�7c�$�,�W|�I�xy@�Ɯ�uO�=x�<ݟ.A���I��~i����Fৌ�9�ܐ"���&����������M�J��d���RNB$����Y��V"�n��_��d�����WA�^���nǮ={�d�>�UDD����|�.��7�H��~�)�n �੣G�$""�� 1�H���6�l���ID��9��@q�K����;�xLd⫯r"c�9vlT""�(�= ��;cw�y�c����s��;N��ZDD@��ID�u睏i4����~��ߟ��ȋ'�t�eEx�ߎ�Ǐ���4�yI���h�1�9y�1�sV�#�Ö�ъ�t�����
���NNʙr�+!���?f" �&X�r%r�Fx�n�|>���Q�Ή�����'2�*2��B�%�}�a�_�ܯ����砂�`�ٳ)E\��
�Ƞ�����C�~��́�;ϜI*��@�n�(�Iy2)���D���_��c��`׹s�"���6�0f�K��w���_��{�bGG���QxEDDy�@���/�}7�r�=�RY�&Mz0����ˤW�
6"p4�5�n��044��S�&���/�P�k �r�
���d,����n\���Z��ա����˛�����hD�Sl�H���#�Y�"�U�9�RRHs}����$2j&��fY^���8>�h���g,`�0]�O]@ƏPl��0��g�D�4XSa��/匛@�y��f jt�=�a���ϼV�F�0��I�*�I�{܈�1���pyl�0\`��l�f�ī��������	��@����_��T��/P���@����_��?u��@����L��,RG�OG%�͐B�dͦ��]G
6���tU����7�z+�^Ÿӥ�6{v}]M
>w��3���|&ib�h����7�(*(@���N��(��|^/�f3�_�f5���(�_nX�v��b���N�K��V@qq�������s��[�l#x�̶�����! 9�"7������z��<B� f���bʔg�K������sg�B(D���Q^^��n�V�c���ݽ����]���r�r�=/�H�d�)�9��^{�5F^��K����<�L�M����.�+�
֯][��X^Els=1^^�vm	�w~Gpv���������o�{����'"�}4�֮mњL�E��̺ի�i��H,�P(���!l|�<�d-�����n�}���P$�
�f�`���7h�Ƈ��|s�e�w�������f�S��yJ)A�!�KX�xq��`hp��@��B�� ��ȑ#�b�̙\X� p�ݸ��y��'��XLI�j:����l�>}����i�ۡ�j����…{�^����=r�!�I�|3�!��'��;;;��^o��pؠp� �ߏ����7ntؘ���"�U�{��!ahh�%B$�Ot
�\���/�pfJe���S�9���_�r�����T8�SB�%�?1}ڴ7ʝx�B��v��'N�h�dtt)9��B�K�D���[˒¢��jij��q���Q�8�CNND�k����
 �&��
��)(�X^� IDAT������<<n7zzz����w���:<X�q���PR\���kxx+��dfco+1��/�Z���R��!�9s�s��o�Moh�
�ϟ?2�|keeeY��	����?�pp���Z$�L�'���,���ic������agg�].�g�������ʳZ�;<n7(�c�ܹ��D�w�	`Q�5PB�=�3f8l�H�<�<����z�

�$�l�X������999��ؠ���p��q��������/.0�GȇO��g����y������y�z�m�Y�n}�p ���L�!�؇�����g�yfWSc���93g����1թ�>����.^���_u�,����=����ŋ)�o*�-�6}:]�`]�|yL����5{6]v��RƤ5P��p �_~X)����ZXPP�8iK�f����������st����
���%�IcR����_A֬];H�*!�O��'o���tz}�����8���;���qXx�U�Ӯ\��&������d�g�ͮ�2壦�fZ][�C�X����h�0{�ZZ^�?��S��+
KJ�577��)S����CF��k��9���l�%���`e��5���O�S��i~a!�\YIg46���R������B���Y������Hk�N�y������665�¢"���}��}I��������f�-,,�N�ӟ��sx���a��cuIҾ��jnn��p8�i^^���p8q��n9�Ve:E����N|I�S�R�-cR$/���1vG�£2�a�=%�+��T���$i�2*\EEEEEEEE%
�_��T��/P���@R��.��T��/P���@����_���������hҾh��6��!�^���>3�,[F緶��[w*2�����w���;ًI�����EtF}=�z9��sx�^nF}=iU�Q�\��RܜM�������V���?�B�ږzU[4'�b�JzB�q( ~�kN�߯a�qs��y�v���A�	 �`�T�~榛
���z��<().�<.�z��c�^���+).��[o���?s�MM[�S�^�Q]]��K/�f6G��~�o���x�=�Z ٺc��[�?��#�W��}>|榛p�̙���Nj���log�.dL�T/��$*]cl�������	M`4� �7��Q�9�a\��G���p"9�����dJ��	�N�Mu0�{B���N���B�,\��B�D�F\Ɇi�����m$�d�N���X$I֮'tB�>�I;�
�SFh�?�"6}$�@�҄��G._�f�Z��"�'�����`2�z۶����+
H��Q�����t�ꫣ�3�U�hussۙ�( ]��Պ�{4eF�nX��]�Y׀��LcRh@�K��U �bL{�67c��]��v<���r�K�r��L@�N��b�t8��Jzv"�g�����Yw±�����׀(ƌ�ΩS�g�C��\.?~9��2;�l�V������t��b
R�
��)�'�Ԃ�|���`�E��/�A��TM0��
[�z��Q|����(�iSi)�h5���a������[T�?Sʿ�k�ilre%���_P2u*-��u|���Z2uj$�Ro{�ؑ#�?���n�����n�R��#g}�µ������dO�ڜ�=յ�R
g}T��2mNΞH~�!���f�`	�&��ݳ_�җ�w�"�R���&��A����o���)S2J��ыپ#(~w�*Q�/�Cf����5��eZ��@T��/P�	���_����/P���@����_��T��/H���/PQQQQQQ��B�y���0H��q)�1� �C�6�ٙ+ቨ���/Ǘ���A@�˅_}u�r�KA�Lp���@���p�l��z�%��8�vc�ƍi��ş_��z5&�l�r\�l`�(�ۍ�jP�#���m���QW�U�W���^��0 ������0��=�#~^�x
E>_���5��DC��jbD[®a���\����ODW��(��D�R�w|ݭ��87z�f\��C��������㓧���������_>V�5��,|n7�R��T1��Xu�'k��`6�`��0��1|���ӦMj�Y�r�(J��b����j�7�����TijV!�NB�.��S�nL0�6f�.�H����S�mil�?x��S'N�/�R�V�<�R�4�S���EW]���ÁE��X����p@�-Fͬ�\q=��t��vGf���ӉK�����_��>@i�D�{�|ww7���0<4���n�{�	��%f>A@�†����W_���G<xd��Wo|�;ߩ���(���is{;�:��y�wdX�<���r��H���OD}��<{~�UUUev�r��d�Dиl��%��

��,��W-_^���180�Μ9`{�1nz��> �0FZ�޾L�q�C!,�;Wo��{Q�R	!1�Č�)����+����;�99�~� ���E�
tf����3$�
�h(��~�}��4&�a7)�S�_R���z<���V���E�fC�f�!fjH�8��v�l��_�3s����׭Z�WVY�B\m�6����rx�����Ç�lƬ����߬�+O�gʳ�h�?���� ���Y�PQVv�������ڕ�.l���cM�6*���~4~-JD�H)��7��g̜y��`@����  �$,_�$�رc/����d4���>�(������J@��hl(*/�����H�`�Ez1!�����i���kB���.`�$�s��^���h!���I�#�1k�A���f�?����H͒ꗅ{s6"D�b�yD��~x�n�������`�6-AA���|���
�0���wg	��oQ����A�s�����������2nl�l|�T��`͛2��hӏ�Ť���E�᦮��P(����h��y,�M�DL���)�>�p�>��b��1���Q��o�Ȇm��ذaP���Ho�I^�/�x�C�M�E�q5����q�2ʰ�x"Q�ن�m��:�o��H�nv�?T��6*���'�N*@���ք*��{y�ذ�n�$�K�'"} ���������ye�a-����ic$!�!b�#�*1.�_l��֭[W7��H3��4A}c��(l�S��"��G�F>
M�2c��|^/��̓��(��Ñr��գ䫀1�P��߿fKK��`�<{�R���!�2ę����y�]]N��a��vd�"ս!҆�mm� �v�[�����1���UU��@����)���-��F	;�f, �q@�FCpk:c��^���_���������&��T
KK���Q�@�oCoo�sgWƌy���|���<A�	�
��܊
�u:?��r�׻�n����~�$�Z>㱶�O΍C>**********Y�%�!F���l��w�sO%��OE���\8l���=6�y�)�{N�r�|�p\|�� �����p@���hJc#N�I�sMc#NE}��,X�(b_H�ѠhG��GJ����!���>���2��AQ��mH���GKR���,�O�Rxa�u�LHld& -
Z[�{�D��hpidgO���!c���#!B�m(U��y<i�����&Kn�n����k8n\�@��7�p��WW_����3�Z����		!;!B��2d0��im��l��d��� �����ׇ�i31���iӔ���!D�.�ϜA��X
Mb�X�***Z��^�ۛ6m"���G9D'PL�WT$<tH��L%�2��ϐ-�~åJ'�6�n!��/ęh'r�5�{	!1K��O���&j| rۏx��xQ1�!_P�>�U3a�@24�ɮ/i��@�-/3�@��\�����N��
#��y���c='���8@4�x<�\����=PQ�t�xA�g��?�|�|�������E+W�����C�m����]ƚ�X�o����@]_��/P�|*�.�)�/�ԧ�� ��x~)�P��s��$P��yp�n-��z}A\'TOf��aݺuu��#�ǘ�(��H>�,�&�	×.A�Ѡ��;�G�#�ϼ�8��^)���*��s�8m8���2Q̨����==-��3E�p\Ɓ�N��^���0.�2���w�q ����>�����D]_��/PQQQQQQQQ�?�a��Z�yS��/X0�MF�bR\T���ұ�?z�#
M��^�P��0����"}'��Qx��h�?��DB�]@�ł8C��g�GQ���6"J�1v�-r��$G��HnU�g8�TM?	5'�� Gs+����9v>!c1�7!-HnS����tBfVg�_�D@�mjS	�q��c����LmD��V�Q��Z��p@���W]/��Y����Uf#m���W����'���ZZ �B�|	q�D�p�СȹJ��t� �Zt>�v�^y�_��J�ɤ=u�R^�S�	�<��׭�����>uj IˆE�
¸�/��1��;��l�š�`}[[t��$}n�������Y��y�Fa�Ŀ�R�,ƒ4�Ā�N8^�@ƌ�O&�P��*}�0.�@6(������!���q���+�T>���ƶ �y q�Ѹ?ē�E�N�XP�TYy��B����X3�e8�U׀��@EEEEEEEEy��h��`1���kPX�N����
��Z�.w[rr�++*PZR�I�&�ҥK�xG���[��#.�!�n+f��%��>�A0�w���I�F�ܭ�Xnhij��hh��f�6j�����F����������?�7�H�O/��,`�-��<��w���',��0a&z}k�����:L�2���!�2Z�7�#��1���������k)����w&�X,X�h/Zd���]$�"�Z-

@�}��N}�ޒ��}�ܶ6l��|}v�J)B<�8�ä���.~�@ f��t��1i���D�*�q�}��F0Z�4ƪ�F� @�׍���hG��/&�4�pT"��qv�b�훕��H�	3�`& ��R:�i�������c����#��^��	��
Ҍn�
�������]� @h�2Q*�#��m,�A1DQ�F��N��V���XcV���	<�&4�H�N;2&����<��n7��F㩅�mmm�7�|S8z��l6ט�Vm�P��6\N���y�������O.+˳X,�h4�����z144���9��OZg͚U@�ץ��3���R�}���̡��ݻ�oDz��Lmm�yA�-��jA)�����੻�{��~��2�����i���B�55{{N��
�fϦp��5�e����g˺�?���O?�g���cC�2~��0Ɩ)f$���;��2s&�2sfj�"c�)gNY,�1��1�׌��i������Ÿ���iussD@ʡ�1fP/���/PȖ��&
gT~"����W>ƅ�#�D?�]qi��&�O��7q�����.2��B����-�Y��YEEEEEEE%+T�u��e���>�V\*	����,����N-+).�����q�yx���x�ϑ���W�Wb'�����=/�[6lКL&PA�ĝ�p8�n���������Y�V����n������>޲E���bT唕=��5k���c�$�N�Ŝ�V̝3G{��雎�8q�َ�������mZ]�qN[��H����hs��c�+��yǡ��UUU`��{���	���PTX�ļ�(�	�k��!�F٢N\�MB!B��pD\�`�("7Y��	���|{*b,l��H* >�C�)}�Z@����Ӥ��hAi�U���i���HY��D��^��?�*�b�0�*;�¶�x�@���ES��2����#"����q��F��q�8�ޑ�� �T��HT
�<��
��#�|�SӦM���k��v��m۶�5N���f��h4B�Ӂ�c��ń�\����l�M{

��{��'��&9���s���/��ڳgϑ������ݔ��k�X,��t��]�^���?z��c�]�$0^@�=�hʔ.�:�
�!�|P��<H1�������>�g0jL&��h �^���j?<y�d�j�����Q�$c�U1�t�2ټ�2�m߾}��O?����0�������`�g�=��&M+$G�%�I�k�Ƙ3:MB5���G�,�R�pL6�Ǡx��cck���^M�'�+.�S��x{��������/PQQQQQQQQQQ�����B��u�?�8�K�����M4%�h��:u��|�Fh5�������>����O�q�tx=��٫&P�@ ���~?~|(�����hL�w�[��.[��멧�z�16’�a�:����lm�6l�7HE�}ꩧ^Y�lY�uk�R���N��c����}����{��FQ�̚5k�|)�O?�x�t�.]j5���6n��/��S�~�^���u��>���Dٛ,v�V������V�E�8�{�x�`]�n��^��j���������?��g!��ۖ͝�p��v#
%�/&�$؇�z=l6�GF�k��]����8����LwwO�ٳ�1��gϦM3gR��mPYWG�-_NO�>�'E������{�-_N+��,����3i�l�L4:��ܾN'Bc�=
��y8����N]�4�B�`��n�Tc��?B)Ŵi�ZR�c��6mZ���H�iv;B�`�����p��H���[�O?RYY�m��h4�X,p:��X,�׋��Ax���0�8w��Çł�X�q�ù���Olj�3�:��.����ڷ����X���X��655�cl'�����:g��ODv��4���/��׷ryy�}�7lx���2�@.�.��@ �i�_�k������ߺ�����c�Ҳ�}i�˕������������WTT�Ҳ�}L�ܥ(�1�c���'vWWW�6�L]9994�p8�h4�[n��p��r�-��F�p8h��&�����z�O�xb7�|�(.(�Ed��#S�a���j���x�1v1U�Q�qQ�K��UTTTTTTTTTTTTTTT�p>5�V��Ժ�%��\M����CG���ѣ?��i���А�_�cph�O��AH�/X�z5]�ti��O?��_p�
7Ж�3i�̙�nH�/x��_Y�tiתիS�����g�O�֭[�V�^�/ظqcZ��E��&����7�T��t�Z-֯_��8���������֯_�E��:]�� �������hǶm��9s�rrr"����,�_=Ӟ����a�޽;�/h�?���ŋ=������tFKK�_PQSC�,[6f���Ki��)AeM
����hG�@o0@���� 7/� �����	ڲ�_����+rN�\�rss����	i�6mZ�x������8l���r��Y�����!݌�vQ��w�� �4Ο�Q�����o�o����̘�����d��lF0��߷o%�H<��BƼ�YRZ�Y�Ѵ���m߾m[�<��.Ƙ�S	�����Ϝ=��16����UN��+kjnc��;�Y���Qo0�nO�G�ث�'�i�f�wݰ~�2�����c��}�������|3�u:�9���"��pMm-���i�ԩ�_)	��_��������;-u��G�/_N���zjw8����~�z��n�:�h�"�6oަ�.�Y�7����']�� IDAT?�]]]��b�t9�N�}��R��AM�D�{�16T^Qqt���tݺu�������z�ڵt���ta{�r�|=���	(��h���N9ŤE�����马����l���AaQ��q�w�}��|wx����MY�nГB�	!��t��.�s�N�*r��A���#��J�'�Xa�9k��ϟ4i�#j�幎q��5���~��{�w������ɓ\f�ٮ����=�����E'ϩݏU���W9y2����۷O<w��	�ǃ��6�YP��
�Xf�)�����,�3i�ܹ��>��/(8:k�,�l�rj��
XN8^5�[�ш::`���ܱ#��8���[t����;:�c�85N�J0��O?�����}�����[M3)��>�����2�no7���"�G�=,�1�c
�����c��'b3c�i�WQQQQQQQQQ���Md�[o�x3I^��d)�_�t���V,]�#����ĥ��������%��Ů��7���*��58}r�1�	�5�~����_�{��z9�h�Z�(��?����}򸯼�hhX$�<|>�� �� |>�GECâ��#M [.�]��p~�Á@ 3}��}�8�����m��RG�!D.y׎	v��t����,h�R�� ��‘��~�N��o.��u�ƢMM���"��,�}>�{z<�,�?"V�o?t�Rz�رcǎ��;t��[�L��
��ka�)�%�y&�)�(�����O�n`rM
2�Dt�R�7V�����vgn.`ph���
y<	w�q	<�b�R�A��8:�
�b�R���_qw�qo/.^$��!c�/r]�s���

B� �^y�C(��`H� �r���0�eC������w���1w�a������)�>�g��"{N�����j�J��<.tuy\��W�n����c�8|����8�V���PEEEEEEEEEE%+2�p`��%�@V������ų����ϐ�v����$4A����ZVdk���gH���������_�p��Y���
���c�3(	���?֑0A@�����  [{���
���c�3$���?!wC�ޯ�
UTTTTTTTTTT>m��gy$�Y	�D��L�
�-\x������mۀ�m��p��7�j��;��<z���L�������Fif��c�h���Zaj]:�����ϨT�\^/t
Lx=�#�YI-$�� ���b
��:��_��)�)�ǵ�Q���&
���U3�?Ix�+V���I��_†���X
x�
�����*哰u�b�u����N���b��nlj��>�Z�x���L�1C�[��O�eA���m9�T�x�
��1*YS��IY��K}�؋�WԔ��=2�ǃ��.��ڃi�W���™S���j�?o�FB��%���1awC^�0�A��N�%N\
�B�/\��b��c�G�y?�(x\�<�&��Ի����������ʘ��pdj�ڒ����d�u�V�f�a��c+����w�K-���lٺ5!~QR���h�]}�P�������-:m�@Zn�^���LYI!$��}�,)ik�q\drk<���ͪ|�sg�����w�,)i3,[�IZ�İ_�ϒ�V�П���Ȥ���+NFv�$���0;?0>~����鍍��nO��_���R
>�R�!���h4F��:o����Sd;���Agg����B�r?�#��8}�dJ;���^�%��dYP�$x�%����`p����?;�x��P��TTTTTTTT�(���٫V�\��K���(Ż���c�&�G��_��z�F1*����[oi���b�ш<�����(�ॗ^�y��߽��+Λn����/
����~oU�*����m�,yC�eI�W0�a	۰8��|�|I��8�!�0$$yf2d 	H Llx�f3��x�wٖ�޻�����vuw�&������G�����u�:�=�8�v0:-+ HR��1|�P
���@iI���{T���d�SJ@)]���{� ������;�	@���N����8?'�|;�j�����8I�b�SJ#T�L�D�b��Gi'��KV�N�u�<�H��b9_����Ѱ�$A�$�,C�ePJAAޘ1�
7�,����n��ټ1c8-��V����P�A E9@�[,�M�=�	*��M�=a�X�o����r�:!��v��o߾v����� �;����o���eP����喟Zԛ�ZPx<�ڵ�}��}0�vGD�
����%N����]����-����.��vG�,���6��XC�e�I�����ÎR
Q�v��gϞ���k�0���m��F�g������Pb[�=x���ݻw�944�����g�A{�ڳ�yCCCؽ{��j�k�e��ws��P����`�
%Nu_mm�ʊ��+srr�rDY�)��[�Sf͒�].pI��xp��ѿ|��g���_%2�DŽ���>���R��RZv�����hKk+m��孭1MP��*�ttЖ�VZWWG��q�aJiH-Þ����	��c�
ѕG#������Y'm_�O[!Ɩ
&T�h�᎙3����3^/v�E--Ravvx�ؾiӿX��ऊFGA�O{�O�*e��E�$�(�s�+ǁ0����[�l��=�ω��+���V����e}}_�s,��²��X-�^��,,;�Ჾ��V74<�XeX���ɓ�<�)������޾XVm9�V�h�WPJ��H&��/�nhx������
���<�-_�4N�"U������a�����\�4˲����c��.��Q2|k�i��NجV0��,��xM�ey\e啇N�Ğ?�\�,CE�VW_YUYy��tjs���É'p��e{
*��}ٲ�'N�����+�*+/����RE��X[hQ�(��E>�G���ン_Y��Ơr�W�,�����v=zT��|1��^�b��UN��wQp��I�G�=��ŋ�,*�p��7���v�<yRu��ˎ zϦ}B��~��^sM�/BVƫ]�vյ�\���3���B��A�=����{4˲Xv�2�/B��U!�Yv�2˲#'\�N��D��� X,ᡡ��Ph*!��%@�Ʀ��6�>�/���xA@��?�6��b�����J�2�H�7�W3Kv�=�C���,���9���	�x<��W�z<YaF�RA�tmT�#���͘0a„	&����۱/d��\k�"�kyQ���y	��T��9s��'����ɔb�֭x��S=Z ���O8�~�HmMM���c<O����1mMM�3K/��9��U�@	8�i��E���q��"�O�(�tv�Y�c���a ��þm�XJ)3��[ �����(Np2Y<z�u��45
�\��Pe�����f|>~?�@�G}���LYi�Vn�ʕ+�����믻�@�z.��O��Ԕ����Q�	�q��t˚5�r��	��E�g����#��D�����]�O8ylϞR��*&uw��3gRJ�jJi��Ӄ._�t��3����^8�xŷ�݄���KO��;��^����H�K)�[����L�G�x��Jq��r;=r� �����K�����=�gxH>F�#�~
1/��E<#=�;�5���Gߡ�l&�dB���/��j�DiF4�[�љs�t:���@		{]2,P�B�Z�z;7��֣f����5��Պ7_y%��DC�e�I5��o78�Y���xFR7`��A��d�F<S�	R��`�� I[@���]�сB�V���jE�]a^�� �<^q���q�ɩ,'���'�"��o���ɬY�Ŗ�o �䕴&S�xu�5#$˟���$x���z$˟��{F�>�G0����A��8A!��nK�&�^Hl�$��jE�˅�Q"����ٳ8u�l��`T9k�?�1��3��e��RY]݈-���ꤲ�F}~	���lReU����L)�Ǣ����r�#w$T��#�o��l�9`��3f0��w���rs?����PO����\n�Zy�Ô��-����/'ND�H�ҹ�**�+�^[�]�vVG�`XNJT���
�B�
�@�#�
��[�-D�3�a^&L�0a���1L���L� �/�yv��;�_0���3�����I-�n�R��P(��3�L�935ŔR�Kz�6m�4�;15��?Zٹ@,�H��!b:!���ס
7����!"x��H�r��̹s;����|8}B^�RJ���:7��v�W0�	P����X,X����b;a�k�y��[ ӼBڣ ӼBڝ�f�WH�$��.��v'�4��~d�W0�Lgx�}DI����Hɩx�cn�h�X8�V0ԭ'[+xAH�-D�`Zg'B~?X��Q#!. ���Xcs3�����M���<�`��V�޹3f��w��Ǝts�,I�(���cQ[!Q�SE�o���4�`@a�R��a}*��/��h�y��lM^��	&L�0�Q��/��3;�Z�n;FU���}	��T��s�
���Mo�e�4.���q^�{B{K�9���	��\{K�+��u�F�|����K.)��`ˆ
6�/z�M��a8Y�&&\!`X�,���}��m�PJ��==!B)����x~
R���暒���k��&B����8���y�n�|>��������������ʴ�n�k��&���������T45k��+{��瑣8L%p�=��֭����QD�Yx��?<��|�馛�c���Gw�.��]���^:�����3{{�����|��鄠��(_ R
��s�1/&�P��)�|��ٳS��;00�T�2"!8.5�ß|�dȰ}A���; �V$ھ`!�Iq"}��0J��G���ܑ�t�'ʾ�3
Hv������p�|啴
�U�흇v��N~�:''���˓���A��l�x#+�lyT#iʾx-q]��������e幫h��|��;���˔&�OJ��KLr�:��$I	H:��A'��,��z"2�>�oFn�' �l6��p~�?��^<��p{�y@���u^�hhi�����{Ϟ���܉l�;"%��
���,�[Z��W����[�?&	�g_W�=PeU<~?���C���zeUA�(0�6��� �z�a�<_(�w�m{������^/�M�x?CH/�dv:�V�rsq��#.ĵ/8q�4?�-�ׇ+�vo��<~'N��Ob_�H��Gg"����z���v��"Jkk�҆}~���lBeU����Ji"�Y�`�}���:��<�Ӊ1,38���{��g�Xrs߯��1PU[K-���k�l��|���]˖�̩S�ԳB�6e�6KE�TW��7�`:L�&L�0a„�41"��$|���/�9w�4c���Wv@Q�I�b�b�[o]X��	MM���e�nwض��v3>����I���Ӧ�lް!l_0k�4��0���Ry����RfFO�J���wӳ/hnlz����%%���0��/fJKJ����:��ؘ�}ACÉ	��%��b��[�N��GsB)� I�5+ƾ�n����<�wob��ɽ�tFO��f���8��/��c}���W�x��$����'*��S��"e����)�l_����(�f_���@(�>���}A�GP���IX��������΃*��v'������Fd_��Ԛ,^�D\��Ft�<����N�g�WH�‚F��e�	fN�����.?�y ^A�)�
#z	x�:^aE*��a'L׾@�V�
+��
�3�,î�OI^�A�hm]�
�#@qQ$�X��^��y��x�i�
�׿�:a�D�:�``_P��q<�Z\,��ׇ;](������R��1���oj��*+
�J�����٥��R�"0�8�{w��̮�����1���$���/��XX$�/`]�+kjF�+T��Pv̘��|��G�ڗ��+��W����+�W��&�`„	&L�0a"�x{�5�
�9B,�r�'-�����VVZ5m�0`9,�D�P
I�
��S(/��PH~��
�䤶Ѷ�B
���:���N��	�e��yy-ZtG
@E�=s�%|%D���SJ�B�N�(����?���O?�(�� �2�^/
ǎ]��_��Ϡl�BHB�F-P &�����͛7O�$����6(�?Y�B��0{fw�Y�a�Q�xA�����1c#!�d�,@̩���(=*�� ��N�GZ9���!��҈x�@�.\�`�"M)�@yM�Q]i�׋��G	!��d@������޽&��s��\�TX��Ύ�wQ����ђ.���˵PI.�25��M��:H9p���66��;���p{<��u�@�G�UZ\���e<σ��޺\J�pxI��1w��A	�0��x��Z�w{�X����Le�M��@ICm�D�J)Q�������Q���!Ay�P�~)0ϕ��y�Ž�/(؋��g����q��:�"�n_�[T�
�
�	�q>|^�r:���� n��tB�E��\SUue�I�il\%D�5+kͼ����S�r ��$7Ʃ±c���|)//O�q�$�_���Rj��O<�����`�T�Ԥh�9��9f̞�H�gϖ�kkwQJ�R9(����r�l�v:�4�‹/nhni.��2iBG��������ٳgK���{(��(�RJ�-W�K)=
�K�B��������K[��?�czQQ�����>��
�,BȠ�O�,^G$۝O�
>�t�^�	!p���^[�� $IB(Bk[�qg��WD�������f�(5�0d��E�+B�N�>���yȪ��͛7wB~��@�F.Rݠ��;Q���oM�:�F9r��M7����/�VVV,{ב�����)g���XV_2eJ
��>;z��Y'�>�e�?��s����!��>,X��z�hWUu���]���;F)=B)�C)}�RJ�/_����V�4I�
Vkf�pRJ��}%''�3��=)�굻(��ZWUS���Vn„	&L�0�w���t?�����;:�q��3�a�1
��99
���G%�5MM+���+/��ݚ�9�y�^
����	�@uCÊ��:�ꫮ�*O�k�/tE�KT76J/��>��S�[�]�0c�\ڽpar��ʫ��W�WU1_���t�b�����:X65w@ѕ���[QW]��p㍸}ɒ�U���x�U.͛?�>��#jv=�͛G�͛��΢"i�…�׿��+�ιsi�ܹ1�}&L`ϝ×n�
a����~�N(���<Q�����Qb�¨���f�<UXSs��[VY�=~�L*ˆ����3v�۷�3��5�ׇlokC�̙KY��1�iO-q�%�(C.c���;{������|a�
�P�_Q������u��%��q�PJ��<J�YYk.�3�{la!�=�����.n]��F��'b���}�ݾ:5�0�BH8�:[v��s活\.x~���^`�.˟�X�v�/@^n..�;w����`<8����!pee�����
�έr8E��}�k0���g>ݹ�  ++���i�Ͷ���q�3a�G�2���_�xu�Y,wC�x�1��(��y"�2,��
љ��(�[Ym����W�|�kn�_�$	mm
�ӹ�G~��}uKSS�,���o�q#��'���@��Hk��׬^}����X,����N�eU_OOC�y<��W���%���z�IDAT
�5�,C�v�N�֮^=���=Ȱ,j;:��KU���ł�n���ޚ�M}V9݉H��x��lZ��g`p����9���>�i͚Y�	ˋ��Yvo۲e�k������s��80�!�����`sv���?K��܁=��K��jH)M�L�~S�r@u#��L�n��<C�-Cz&�#6Ű!#�6���*+~ge�|��Bӌ�ru)f�~��(,iuA�OI��$ږ__�&L�0a„	&R�Hy�ClI�'���k����X��B`�Z��ra��+�+�N��8
�P�9�v��U�R.��g�A��,�+�ޝ�1��A1~OyW|ۭ��A���K����MY�h�D9�?&U(�w-]��� /��BVܳ'%!����lB~B)��ŋLe��*�+�ۗT��y�ф�}���<���L���
��h�a!�,�1��s�1�
�xz�t���oK,\H�EEq߰c�r�ߩ@հ�K�݆�s�0a„�
������'Є�EB�����Q���J��55����ʛ���U~B�ք7d�)���:�M�<�j6+��+*��zԗ�/ڼys>�H>��	�&t'�$�H����l��uw_=���P(?���
���c���W2v�*>�e�6%ex�B�n_3o����B�}>y�u�E�7n�b���-,ĥs�t[���@�/OW�ƤP1��tn�t���y���xc��%�4lڲ��W�����‚9s�m�ٛ����D:���A)��
��m�9s��� >ݹ��z�1(����5Q�p8�`�ܪ���
ƻ���!��A�ennX,���O@�EP�(��,��5�@���5�~�2'u$	�@@���}�7޸��,�������W(�e���umm
�$��˯���׎��m8�v�7Ȫ!C���۫V}���gA_OO�ne]_OO��b���\�z���[���bm'��ң��ޚ���,T���kj;:���Y�{p����A��EQL��>�8<��Mk��>i�d9����֬遁�Y������M�z�jj�v'O�����_�(�)�7"�tTn�rq����3�	S�	��@��k<� ��'��-�H<��X�.OW���h�h1�L�0a„	&L�A�v�#���Fu^y��~@�Л��� ˲B�I��a���{D�!s�����Å=)%yч�d:N3����a��c�L�cF���ahh~�?F���,�N'\.��vg$]nn.�������sCCX��	;BwO7l�H��s�06�M����G��
�ЀI���EQG	�X��D&vuQK7m�,J	Qގ.�����$�tj��$ːRP	�J㤚NR��qH��[E�z���j��4��)h��JGT�JaK�8xsI:�zܟc�2$��q8��I�m��!D�	�@��N�_��#2�Ӊ��?S�@���8}�>ں5��hmk|�F�m�I�'���D���P�@J3aessJ3\��;:(p�+̄��@��$C�gB�^�x�1B�gB��U�2dz&���dY�-����bQ
���$����;jF�Y|(2����VUr�Xʂ�(_iF�1�B@(�%>B$z10`�}����^ېe��� !$�G�	&L�0a„	&ҁJ,�
�|���9j�+mߴ(,-]w˗�TU[S3���IU���iӺ:&L�?D@;�z�ٞ�󳫮�•���P(��pM�p�Yu}�ͳ{{A	�h�X���,��9s��++!
BD���<�kj�H��3�������1�
�!����²WY����a��!@?'k���dDk�X����]-MME1!�Ų,8�,˂�2�>�>N
`�޽r���o$D/�͌�����w����&2� �����'�/:F���1lܼ�+�|����M�O�4q�N�æݵVy��>���?J�Y����AsS��^9<8�)Z�h���k��Ǝm3fl6�I�>�)�ZB�˲,�O��e���݃�G_�~&�T|�KCc���~��v��p?���`0���abhhn�>�~�_�+<�C�yLjoGie��Y_Q��RZ�Y]������ݝ[UUU�r�`U=*iT�$IĽ����-[�ݻva``�:<<�$�4dggsYYY���X,�,Ȕ╗_��8����
��m���J�����p8��,
�ȑ#صk��z2�����?�X,m���Lvv6lv;>;|��t۶b��g��R[��'���+V����g����8�<���8�o�mj���+����4yt���g����

`����ʕ�x>^�z!\�������'L� ���H=�fIUJ��x�QJ_��
�R����7TWW��uuIꍥJ�͔�aJ�t�-��7n��>q�T�Аt?@)������ҳ����KK=`�
i	�TE)�D)�����ns:�SސPJ�J)
��j�f{�@-���;x�R��..��X��L)��yッ'O���.���O�:��rJ�Q	�䢔�י���0a„	&L�0a„	:<
E��ׁ�|E+�6FmWR[S�[�����uP<s�U��X�_s
3c���j]��	Y����B��ގ���˞����H�D��
�
������o��U]_�4R�# ���P`���
V��AH��9�fa��7�e?B�����
(^Xf�Ì���g���0����E+T՚[,B!��v�|�ĉ���p�T��-'�������YY���a%�ʤA���8;w�����ߑ���JE��c��z�{ƌ�q��f\����7��[�Zc��9��z�[�/���9�������K. �T�(��D�ڰ���׌�rmS��N�I�������:>!
axx�O��d���t�9�()��|tR{;O��s��$	,���p�U�ѕ���ߏS�N�S�N]�y��^~�:b��N�8�%�<DA� ��|�z�"�t�1c�EEE|Ss3fL��=�裝���a5��:<���v�СCG7l�8T_W7���[!��
�b�Z'N<U[Yi
��z�8s�,�'w�y���{�iA��+hnn�Ǎ��&2�B�ٱ}{;���7BH�0Է���%%V�ۍ�g��ܹs;���hA�yk�Pp'�p2(�O�c"{<;v��>��K�������⟝��%UWW���|��#T��"J��Z��$�̚%���H&L�����S%�(U���
�����svpp��y5Uc�&ByC��>q�T1n�p�m��Q5��� ,q2�yuժ͔���f�J6������oRɯ�p��N)�PJ'��/��x��O��>@u���������*w0�-�������h&L�0a„	&L�0a���L���L������L�&_�L���L���	&L�0a„	&�?����Gd�#2����LD�?"�����Gt��K���Gd„	&L�0a���F/�7X`2�Sp���6��b"�_W�hJG����0LJQ��%	�O��[����p���Μ=�7����:9��	P�,˂�8���Gز~��P[⼞�n����Y9��;G
M/�W�����'��V��ֆ-�7�!R�����@���NL�$)6�����m���J(�$I�����e���!@Iqq�(��D��Ί9zth���u8���K.�VS]�nw8�r�RH����е_��# D�
&��'I�~?���v�?��r�}�+�/��,K€��$��Sr�����e��	����5krL#������φ���\��0�U�g;�Za�{�F4
a���fc������Myy�6 �<k�2���.,��Od�E��]�"�����_|1��vCń�^}J��6�bZk��ӧ���j/!dotB��R�e��9&?/�]�Fe����$	�n|�U�� ��b�ԩ���V}���{��=:�#\�,CV����6��%��BP�b�o��f.�?�d���Ph�ܩS��V�A)���rrr��)�@"u|0�$��!D�e���&L����1�u�:~S]S�C���\�G�;E�5?���O��]��KJ��XN��1cv��h�����G׹��M��+׸��a(�2BJ0�Y]]�	!��^XPP600�S�N����.p�d���N��a�{G0�d]Z�|�H)z>�$I�z���_8��{PJ?y����|g�F�{{���Ɲ��o������a��`х1����8�p��3���X�i�R�`(�Ç�v��	��h>��
3��$B�6]Ekj����jksGx��E��O�{���>�N��$��"���+:�;!�>�����K/�>�Tcs��Ã���ART�@�%�(-`��B�8y����6��.$��Q�.����W�$�f�Ù��3s�� �RjJ��'�����^q��)~�֭�-�uBhC/����M��{u���r-�3{6���Qu��_� \(��R��0�`���8e��hj��(��|���<	�q]�VMhi�y� ��*4r����ZDږ��<�|aT��	�ND���u���QW࢒�c#�d�ʊ
'��ϗ��7}�(IC�&��#�_�e'��f�z�JK�<���on��Q�%�28�C�q�O92W�ݕ��oki��e� xc ��P(�fQW1��Z4��|A�� ꪖ;fLx�j�jʒ���������S(s�,˰�l�
��qܡ�G���3gΜ��� �8���C~n.�ƌ�}A����  ��������CAAA�e�|8}�4��Aݍ����ƖN�����j��]��!�nX�M
•����[	!WE��o~�ӟ�����-�|��juƭ-
H��g9n��?�cٲ.�B�����/$�H(-U�uT���<j��f�EM�0a„	&L��p����F��$U?$1��孹���zA)B��ԯ~u
45^��+������EH���,����e�4R�U�A}O"ϣw���_h���M[$
�R�NIQSY���-�M�.IW���J��ں4��"e���p,cY�  �������EQ�$��:iR����+/�S��O�*
B�����|���sCC�~?xAPNc;�)w�tXVV\I�yȔ�ҭ���>DA�,���ݽ)��JG��i�n�:%�u7�4D������ �q�@��15748%�Qp��N���,ǽGQtΒ�ƶ�ŰZ�vƔ�)*ZF)�(��X,^BH��!N�t1��$A���\���d�:\z�O�ڢ�tmVkvoo�
�aJ�t*�J�I6�
\v�2��})Q���!�
��=m��h�X!+++�'�$tN�2��H�
']rɵ�:�j궐JF����j�"++K�{JQQV(��ۣ`i]u�UV�|hhK�,AŸq/�a��eY�dg���7�J���	À�e�45->p���M��
P�а���ZN���_�t)��K�t:?�,˂!���Ev�Q''��Կ����JT���c�YgB�D�˷�-z��p?�Z,`���WAbX�NB~?�~?�
c�e[
xc!����K�N�v��~�A�At����3ʓ�T�-.�������
!$�CS[Z~�Ph�U���p�ر.����)��?�/e�Ξ=����Ym�U56Sp�����U��ͦ��Z���;��ܷ/IV(�_��U����>k����k�{�~[>z����_�����p$<E����Q���I,F4����IXQ!�EjY��R<&L�0a„	&L�}�h_<j?Iq�8�7ߌ������L�E��+��]��1�x�n�����(P�$��v�\���c����[�D)�!�w#/���I�>v_������_tz.�eyyd?wV�L,�?��jo`0�����Qp���(��;U틆ԓ�z����7
ڻ�P��+�e�𢈣����N��7F�` ����`J���1�Ξ��Q R�s�`�5s|�FAUk+��j�dtC���9�C�~�X�P(�@0YL��^B�T�'�7i�I��5e�@�"V9s�0a„	&L�0a�D*�*��aF�����3<'��p\ʯ���8r�0<#x[�(�ۀHK�����;���v��c�z�����l�ẅ���=���G�
b���F$����ò����3! P}��]�#��������F�1�k{DY�{���p9�X13�蛉n+.r����|BΎ�JiATyC�����"���S�`|I	lK�}�R�� ���ɘ
��t*�EQ�W�´���
<-�>�ٳʨH���i	@)����$@ҵ Yؑ��`��|�ւ�v�;V��J��%� ���iܱ#"M��>��°f~����)��R�"_���$�5G!�Z���B
���$�i��P�>΄	&L�0a„	�d��xD�r��/H�HY�t���R ]��Ty�x��i��Sr���/0%��/����j#� �#�/Py�h$�	�
�	����Rf�p�Δ�%ӣ �N�Q�����3رeKJy2n_��"�	:]RFc_�O�ႍ�T׆��Q���L�h<�~]��dԾ@@����}�	&L�0a„	&L\d�ƾ=#�ˆO�e�W���F,���
)�#J����oljZ��q��fg`� "fm�O"eD|^o�� ^�tlR�G���#���U>� eD�L�7�\��h\!噰}�tT��GH�Q<C���錂h\(!�.�����.T8�P�#}
i�#
���{�Jo��G�Q����(0a„	&L�0�~t��2�7IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/ckeditor.js000060400001601534152455705240021271 0ustar00(function(){if(window.CKEDITOR&&window.CKEDITOR.dom)return;window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,f={timestamp:"F0RD",version:"4.4.7",revision:"3a35b3d",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var e=window.CKEDITOR_BASEPATH||"";if(!e)for(var d=document.getElementsByTagName("script"),c=0;c<d.length;c++){var b=d[c].src.match(a);if(b){e=b[1];break}}-1==e.indexOf(":/")&&"//"!=e.slice(0,2)&&(e=0===e.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+
e:location.href.match(/^[^\?]*\/(?:)/)[0]+e);if(!e)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return e}(),getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(){function a(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",
a,!1),d()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",a),d())}catch(c){}}function d(){for(var a;a=c.shift();)a()}var c=[];return function(d){function b(){try{document.documentElement.doScroll("left")}catch(m){setTimeout(b,1);return}a()}c.push(d);"complete"===document.readyState&&setTimeout(a,1);if(1==c.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",
a);window.attachEvent("onload",a);d=!1;try{d=!window.frameElement}catch(f){}document.documentElement.doScroll&&d&&b()}}}()},b=window.CKEDITOR_GETURL;if(b){var c=f.getUrl;f.getUrl=function(a){return b.call(f,a)||c.call(f,a)}}return f}());
CKEDITOR.event||(CKEDITOR.event=function(){},CKEDITOR.event.implementOn=function(a){var f=CKEDITOR.event.prototype,b;for(b in f)a[b]==null&&(a[b]=f[b])},CKEDITOR.event.prototype=function(){function a(a){var e=f(this);return e[a]||(e[a]=new b(a))}var f=function(a){a=a.getPrivate&&a.getPrivate()||a._||(a._={});return a.events||(a.events={})},b=function(a){this.name=a;this.listeners=[]};b.prototype={getListenerIndex:function(a){for(var e=0,d=this.listeners;e<d.length;e++)if(d[e].fn==a)return e;return-1}};
return{define:function(b,e){var d=a.call(this,b);CKEDITOR.tools.extend(d,e,true)},on:function(b,e,d,f,k){function j(a,m,y,s){a={name:b,sender:this,editor:a,data:m,listenerData:f,stop:y,cancel:s,removeListener:g};return e.call(d,a)===false?false:a.data}function g(){y.removeListener(b,e)}var m=a.call(this,b);if(m.getListenerIndex(e)<0){m=m.listeners;d||(d=this);isNaN(k)&&(k=10);var y=this;j.fn=e;j.priority=k;for(var s=m.length-1;s>=0;s--)if(m[s].priority<=k){m.splice(s+1,0,j);return{removeListener:g}}m.unshift(j)}return{removeListener:g}},
once:function(){var a=Array.prototype.slice.call(arguments),e=a[1];a[1]=function(a){a.removeListener();return e.apply(this,arguments)};return this.on.apply(this,a)},capture:function(){CKEDITOR.event.useCapture=1;var a=this.on.apply(this,arguments);CKEDITOR.event.useCapture=0;return a},fire:function(){var a=0,e=function(){a=1},d=0,b=function(){d=1};return function(k,j,g){var m=f(this)[k],k=a,y=d;a=d=0;if(m){var s=m.listeners;if(s.length)for(var s=s.slice(0),w,q=0;q<s.length;q++){if(m.errorProof)try{w=
s[q].call(this,g,j,e,b)}catch(t){}else w=s[q].call(this,g,j,e,b);w===false?d=1:typeof w!="undefined"&&(j=w);if(a||d)break}}j=d?false:typeof j=="undefined"?true:j;a=k;d=y;return j}}(),fireOnce:function(a,e,d){e=this.fire(a,e,d);delete f(this)[a];return e},removeListener:function(a,e){var d=f(this)[a];if(d){var b=d.getListenerIndex(e);b>=0&&d.listeners.splice(b,1)}},removeAllListeners:function(){var a=f(this),e;for(e in a)delete a[e]},hasListeners:function(a){return(a=f(this)[a])&&a.listeners.length>
0}}}());CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]);CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(a,f){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fire.call(this,a,f,this)},CKEDITOR.editor.prototype.fireOnce=function(a,f){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fireOnce.call(this,a,f,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype));
CKEDITOR.env||(CKEDITOR.env=function(){var a=navigator.userAgent.toLowerCase(),f={ie:a.indexOf("trident/")>-1,webkit:a.indexOf(" applewebkit/")>-1,air:a.indexOf(" adobeair/")>-1,mac:a.indexOf("macintosh")>-1,quirks:document.compatMode=="BackCompat"&&(!document.documentMode||document.documentMode<10),mobile:a.indexOf("mobile")>-1,iOS:/(ipad|iphone|ipod)/.test(a),isCustomDomain:function(){if(!this.ie)return false;var a=document.domain,d=window.location.hostname;return a!=d&&a!="["+d+"]"},secure:location.protocol==
"https:"};f.gecko=navigator.product=="Gecko"&&!f.webkit&&!f.ie;if(f.webkit)a.indexOf("chrome")>-1?f.chrome=true:f.safari=true;var b=0;if(f.ie){b=f.quirks||!document.documentMode?parseFloat(a.match(/msie (\d+)/)[1]):document.documentMode;f.ie9Compat=b==9;f.ie8Compat=b==8;f.ie7Compat=b==7;f.ie6Compat=b<7||f.quirks}if(f.gecko){var c=a.match(/rv:([\d\.]+)/);if(c){c=c[1].split(".");b=c[0]*1E4+(c[1]||0)*100+(c[2]||0)*1}}f.air&&(b=parseFloat(a.match(/ adobeair\/(\d+)/)[1]));f.webkit&&(b=parseFloat(a.match(/ applewebkit\/(\d+)/)[1]));
f.version=b;f.isCompatible=f.iOS&&b>=534||!f.mobile&&(f.ie&&b>6||f.gecko&&b>=2E4||f.air&&b>=1||f.webkit&&b>=522||false);f.hidpi=window.devicePixelRatio>=2;f.needsBrFiller=f.gecko||f.webkit||f.ie&&b>10;f.needsNbspFiller=f.ie&&b<11;f.cssClass="cke_browser_"+(f.ie?"ie":f.gecko?"gecko":f.webkit?"webkit":"unknown");if(f.quirks)f.cssClass=f.cssClass+" cke_browser_quirks";if(f.ie)f.cssClass=f.cssClass+(" cke_browser_ie"+(f.quirks?"6 cke_browser_iequirks":f.version));if(f.air)f.cssClass=f.cssClass+" cke_browser_air";
if(f.iOS)f.cssClass=f.cssClass+" cke_browser_ios";if(f.hidpi)f.cssClass=f.cssClass+" cke_hidpi";return f}());
"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR);CKEDITOR.loadFullCore=function(){if(CKEDITOR.status!="basic_ready")CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var a=document.createElement("script");a.type="text/javascript";a.src=CKEDITOR.basePath+"ckeditor.js";document.getElementsByTagName("head")[0].appendChild(a)}};CKEDITOR.loadFullCoreTimeout=0;CKEDITOR.add=function(a){(this._.pending||(this._.pending=[])).push(a)};(function(){CKEDITOR.domReady(function(){var a=
CKEDITOR.loadFullCore,f=CKEDITOR.loadFullCoreTimeout;if(a){CKEDITOR.status="basic_ready";a&&a._load?a():f&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},f*1E3)}})})();CKEDITOR.status="basic_loaded"}();CKEDITOR.dom={};
(function(){var a=[],f=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.ie?"-ms-":"",b=/&/g,c=/>/g,e=/</g,d=/"/g,h=/&amp;/g,k=/&gt;/g,j=/&lt;/g,g=/&quot;/g;CKEDITOR.on("reset",function(){a=[]});CKEDITOR.tools={arrayCompare:function(a,e){if(!a&&!e)return true;if(!a||!e||a.length!=e.length)return false;for(var d=0;d<a.length;d++)if(a[d]!=e[d])return false;return true},clone:function(a){var e;if(a&&a instanceof Array){e=[];for(var d=0;d<a.length;d++)e[d]=CKEDITOR.tools.clone(a[d]);
return e}if(a===null||typeof a!="object"||a instanceof String||a instanceof Number||a instanceof Boolean||a instanceof Date||a instanceof RegExp||a.nodeType||a.window===a)return a;e=new a.constructor;for(d in a)e[d]=CKEDITOR.tools.clone(a[d]);return e},capitalize:function(a,e){return a.charAt(0).toUpperCase()+(e?a.slice(1):a.slice(1).toLowerCase())},extend:function(a){var e=arguments.length,d,b;if(typeof(d=arguments[e-1])=="boolean")e--;else if(typeof(d=arguments[e-2])=="boolean"){b=arguments[e-1];
e=e-2}for(var c=1;c<e;c++){var f=arguments[c],i;for(i in f)if(d===true||a[i]==null)if(!b||i in b)a[i]=f[i]}return a},prototypedCopy:function(a){var e=function(){};e.prototype=a;return new e},copy:function(a){var e={},d;for(d in a)e[d]=a[d];return e},isArray:function(a){return Object.prototype.toString.call(a)=="[object Array]"},isEmpty:function(a){for(var e in a)if(a.hasOwnProperty(e))return false;return true},cssVendorPrefix:function(a,e,d){if(d)return f+a+":"+e+";"+a+":"+e;d={};d[a]=e;d[f+a]=e;
return d},cssStyleToDomStyle:function(){var a=document.createElement("div").style,e=typeof a.cssFloat!="undefined"?"cssFloat":typeof a.styleFloat!="undefined"?"styleFloat":"float";return function(a){return a=="float"?e:a.replace(/-./g,function(a){return a.substr(1).toUpperCase()})}}(),buildStyleHtml:function(a){for(var a=[].concat(a),e,d=[],b=0;b<a.length;b++)if(e=a[b])/@import|[{}]/.test(e)?d.push("<style>"+e+"</style>"):d.push('<link type="text/css" rel=stylesheet href="'+e+'">');return d.join("")},
htmlEncode:function(a){return(""+a).replace(b,"&amp;").replace(c,"&gt;").replace(e,"&lt;")},htmlDecode:function(a){return a.replace(h,"&").replace(k,">").replace(j,"<")},htmlEncodeAttr:function(a){return a.replace(d,"&quot;").replace(e,"&lt;").replace(c,"&gt;")},htmlDecodeAttr:function(a){return a.replace(g,'"').replace(j,"<").replace(k,">")},getNextNumber:function(){var a=0;return function(){return++a}}(),getNextId:function(){return"cke_"+this.getNextNumber()},override:function(a,e){var d=e(a);d.prototype=
a.prototype;return d},setTimeout:function(a,e,d,b,c){c||(c=window);d||(d=c);return c.setTimeout(function(){b?a.apply(d,[].concat(b)):a.apply(d)},e||0)},trim:function(){var a=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(e){return e.replace(a,"")}}(),ltrim:function(){var a=/^[ \t\n\r]+/g;return function(e){return e.replace(a,"")}}(),rtrim:function(){var a=/[ \t\n\r]+$/g;return function(e){return e.replace(a,"")}}(),indexOf:function(a,e){if(typeof e=="function")for(var d=0,b=a.length;d<b;d++){if(e(a[d]))return d}else{if(a.indexOf)return a.indexOf(e);
d=0;for(b=a.length;d<b;d++)if(a[d]===e)return d}return-1},search:function(a,e){var d=CKEDITOR.tools.indexOf(a,e);return d>=0?a[d]:null},bind:function(a,e){return function(){return a.apply(e,arguments)}},createClass:function(a){var e=a.$,d=a.base,b=a.privates||a._,c=a.proto,a=a.statics;!e&&(e=function(){d&&this.base.apply(this,arguments)});if(b)var f=e,e=function(){var a=this._||(this._={}),e;for(e in b){var d=b[e];a[e]=typeof d=="function"?CKEDITOR.tools.bind(d,this):d}f.apply(this,arguments)};if(d){e.prototype=
this.prototypedCopy(d.prototype);e.prototype.constructor=e;e.base=d;e.baseProto=d.prototype;e.prototype.base=function(){this.base=d.prototype.base;d.apply(this,arguments);this.base=arguments.callee}}c&&this.extend(e.prototype,c,true);a&&this.extend(e,a,true);return e},addFunction:function(e,d){return a.push(function(){return e.apply(d||this,arguments)})-1},removeFunction:function(e){a[e]=null},callFunction:function(e){var d=a[e];return d&&d.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a=
/^-?\d+\.?\d*px$/,e;return function(d){e=CKEDITOR.tools.trim(d+"")+"px";return a.test(e)?e:d||""}}(),convertToPx:function(){var a;return function(e){if(!a){a=CKEDITOR.dom.element.createFromHtml('<div style="position:absolute;left:-9999px;top:-9999px;margin:0px;padding:0px;border:0px;"></div>',CKEDITOR.document);CKEDITOR.document.getBody().append(a)}if(!/%$/.test(e)){a.setStyle("width",e);return a.$.clientWidth}return e}}(),repeat:function(a,e){return Array(e+1).join(a)},tryThese:function(){for(var a,
e=0,d=arguments.length;e<d;e++){var b=arguments[e];try{a=b();break}catch(c){}}return a},genKey:function(){return Array.prototype.slice.call(arguments).join("-")},defer:function(a){return function(){var e=arguments,d=this;window.setTimeout(function(){a.apply(d,e)},0)}},normalizeCssText:function(a,e){var d=[],b,c=CKEDITOR.tools.parseCssText(a,true,e);for(b in c)d.push(b+":"+c[b]);d.sort();return d.length?d.join(";")+";":""},convertRgbToHex:function(a){return a.replace(/(?:rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\))/gi,
function(a,e,d,b){a=[e,d,b];for(e=0;e<3;e++)a[e]=("0"+parseInt(a[e],10).toString(16)).slice(-2);return"#"+a.join("")})},parseCssText:function(a,e,d){var b={};if(d){d=new CKEDITOR.dom.element("span");d.setAttribute("style",a);a=CKEDITOR.tools.convertRgbToHex(d.getAttribute("style")||"")}if(!a||a==";")return b;a.replace(/&quot;/g,'"').replace(/\s*([^:;\s]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,d,m){if(e){d=d.toLowerCase();d=="font-family"&&(m=m.toLowerCase().replace(/["']/g,"").replace(/\s*,\s*/g,","));
m=CKEDITOR.tools.trim(m)}b[d]=m});return b},writeCssText:function(a,e){var d,b=[];for(d in a)b.push(d+":"+a[d]);e&&b.sort();return b.join("; ")},objectCompare:function(a,e,d){var b;if(!a&&!e)return true;if(!a||!e)return false;for(b in a)if(a[b]!=e[b])return false;if(!d)for(b in e)if(a[b]!=e[b])return false;return true},objectKeys:function(a){var e=[],d;for(d in a)e.push(d);return e},convertArrayToObject:function(a,e){var d={};arguments.length==1&&(e=true);for(var b=0,c=a.length;b<c;++b)d[a[b]]=e;
return d},fixDomain:function(){for(var a;;)try{a=window.parent.document.domain;break}catch(e){a=a?a.replace(/.+?(?:\.|$)/,""):document.domain;if(!a)break;document.domain=a}return!!a},eventsBuffer:function(a,e){function d(){c=(new Date).getTime();b=false;e()}var b,c=0;return{input:function(){if(!b){var e=(new Date).getTime()-c;e<a?b=setTimeout(d,a-e):d()}},reset:function(){b&&clearTimeout(b);b=c=0}}},enableHtml5Elements:function(a,e){for(var d=["abbr","article","aside","audio","bdi","canvas","data",
"datalist","details","figcaption","figure","footer","header","hgroup","mark","meter","nav","output","progress","section","summary","time","video"],b=d.length,c;b--;){c=a.createElement(d[b]);e&&a.appendChild(c)}},checkIfAnyArrayItemMatches:function(a,e){for(var d=0,b=a.length;d<b;++d)if(a[d].match(e))return true;return false},checkIfAnyObjectPropertyMatches:function(a,e){for(var d in a)if(d.match(e))return true;return false},transparentImageData:"data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw=="}})();
CKEDITOR.dtd=function(){var a=CKEDITOR.tools.extend,f=function(a,e){for(var d=CKEDITOR.tools.clone(a),b=1;b<arguments.length;b++){var e=arguments[b],c;for(c in e)delete d[c]}return d},b={},c={},e={address:1,article:1,aside:1,blockquote:1,details:1,div:1,dl:1,fieldset:1,figure:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,hr:1,main:1,menu:1,nav:1,ol:1,p:1,pre:1,section:1,table:1,ul:1},d={command:1,link:1,meta:1,noscript:1,script:1,style:1},h={},k={"#":1},j={center:1,dir:1,noframes:1};
a(b,{a:1,abbr:1,area:1,audio:1,b:1,bdi:1,bdo:1,br:1,button:1,canvas:1,cite:1,code:1,command:1,datalist:1,del:1,dfn:1,em:1,embed:1,i:1,iframe:1,img:1,input:1,ins:1,kbd:1,keygen:1,label:1,map:1,mark:1,meter:1,noscript:1,object:1,output:1,progress:1,q:1,ruby:1,s:1,samp:1,script:1,select:1,small:1,span:1,strong:1,sub:1,sup:1,textarea:1,time:1,u:1,"var":1,video:1,wbr:1},k,{acronym:1,applet:1,basefont:1,big:1,font:1,isindex:1,strike:1,style:1,tt:1});a(c,e,b,j);f={a:f(b,{a:1,button:1}),abbr:b,address:c,
area:h,article:c,aside:c,audio:a({source:1,track:1},c),b:b,base:h,bdi:b,bdo:b,blockquote:c,body:c,br:h,button:f(b,{a:1,button:1}),canvas:b,caption:c,cite:b,code:b,col:h,colgroup:{col:1},command:h,datalist:a({option:1},b),dd:c,del:b,details:a({summary:1},c),dfn:b,div:c,dl:{dt:1,dd:1},dt:c,em:b,embed:h,fieldset:a({legend:1},c),figcaption:c,figure:a({figcaption:1},c),footer:c,form:c,h1:b,h2:b,h3:b,h4:b,h5:b,h6:b,head:a({title:1,base:1},d),header:c,hgroup:{h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},hr:h,html:a({head:1,
body:1},c,d),i:b,iframe:k,img:h,input:h,ins:b,kbd:b,keygen:h,label:b,legend:b,li:c,link:h,main:c,map:c,mark:b,menu:a({li:1},c),meta:h,meter:f(b,{meter:1}),nav:c,noscript:a({link:1,meta:1,style:1},b),object:a({param:1},b),ol:{li:1},optgroup:{option:1},option:k,output:b,p:b,param:h,pre:b,progress:f(b,{progress:1}),q:b,rp:b,rt:b,ruby:a({rp:1,rt:1},b),s:b,samp:b,script:k,section:c,select:{optgroup:1,option:1},small:b,source:h,span:b,strong:b,style:k,sub:b,summary:b,sup:b,table:{caption:1,colgroup:1,thead:1,
tfoot:1,tbody:1,tr:1},tbody:{tr:1},td:c,textarea:k,tfoot:{tr:1},th:c,thead:{tr:1},time:f(b,{time:1}),title:k,tr:{th:1,td:1},track:h,u:b,ul:{li:1},"var":b,video:a({source:1,track:1},c),wbr:h,acronym:b,applet:a({param:1},c),basefont:h,big:b,center:c,dialog:h,dir:{li:1},font:b,isindex:h,noframes:c,strike:b,tt:b};a(f,{$block:a({audio:1,dd:1,dt:1,figcaption:1,li:1,video:1},e,j),$blockLimit:{article:1,aside:1,audio:1,body:1,caption:1,details:1,dir:1,div:1,dl:1,fieldset:1,figcaption:1,figure:1,footer:1,
form:1,header:1,hgroup:1,main:1,menu:1,nav:1,ol:1,section:1,table:1,td:1,th:1,tr:1,ul:1,video:1},$cdata:{script:1,style:1},$editable:{address:1,article:1,aside:1,blockquote:1,body:1,details:1,div:1,fieldset:1,figcaption:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,main:1,nav:1,p:1,pre:1,section:1},$empty:{area:1,base:1,basefont:1,br:1,col:1,command:1,dialog:1,embed:1,hr:1,img:1,input:1,isindex:1,keygen:1,link:1,meta:1,param:1,source:1,track:1,wbr:1},$inline:b,$list:{dl:1,ol:1,
ul:1},$listItem:{dd:1,dt:1,li:1},$nonBodyContent:a({body:1,head:1,html:1},f.head),$nonEditable:{applet:1,audio:1,button:1,embed:1,iframe:1,map:1,object:1,option:1,param:1,script:1,textarea:1,video:1},$object:{applet:1,audio:1,button:1,hr:1,iframe:1,img:1,input:1,object:1,select:1,table:1,textarea:1,video:1},$removeEmpty:{abbr:1,acronym:1,b:1,bdi:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,mark:1,meter:1,output:1,q:1,ruby:1,s:1,samp:1,small:1,span:1,strike:1,strong:1,
sub:1,sup:1,time:1,tt:1,u:1,"var":1},$tabIndex:{a:1,area:1,button:1,input:1,object:1,select:1,textarea:1},$tableContent:{caption:1,col:1,colgroup:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1},$transparent:{a:1,audio:1,canvas:1,del:1,ins:1,map:1,noscript:1,object:1,video:1},$intermediate:{caption:1,colgroup:1,dd:1,dt:1,figcaption:1,legend:1,li:1,optgroup:1,option:1,rp:1,rt:1,summary:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1}});return f}();CKEDITOR.dom.event=function(a){this.$=a};
CKEDITOR.dom.event.prototype={getKey:function(){return this.$.keyCode||this.$.which},getKeystroke:function(){var a=this.getKey();if(this.$.ctrlKey||this.$.metaKey)a=a+CKEDITOR.CTRL;this.$.shiftKey&&(a=a+CKEDITOR.SHIFT);this.$.altKey&&(a=a+CKEDITOR.ALT);return a},preventDefault:function(a){var f=this.$;f.preventDefault?f.preventDefault():f.returnValue=false;a&&this.stopPropagation()},stopPropagation:function(){var a=this.$;a.stopPropagation?a.stopPropagation():a.cancelBubble=true},getTarget:function(){var a=
this.$.target||this.$.srcElement;return a?new CKEDITOR.dom.node(a):null},getPhase:function(){return this.$.eventPhase||2},getPageOffset:function(){var a=this.getTarget().getDocument().$;return{x:this.$.pageX||this.$.clientX+(a.documentElement.scrollLeft||a.body.scrollLeft),y:this.$.pageY||this.$.clientY+(a.documentElement.scrollTop||a.body.scrollTop)}}};CKEDITOR.CTRL=1114112;CKEDITOR.SHIFT=2228224;CKEDITOR.ALT=4456448;CKEDITOR.EVENT_PHASE_CAPTURING=1;CKEDITOR.EVENT_PHASE_AT_TARGET=2;
CKEDITOR.EVENT_PHASE_BUBBLING=3;CKEDITOR.dom.domObject=function(a){if(a)this.$=a};
CKEDITOR.dom.domObject.prototype=function(){var a=function(a,b){return function(c){typeof CKEDITOR!="undefined"&&a.fire(b,new CKEDITOR.dom.event(c))}};return{getPrivate:function(){var a;if(!(a=this.getCustomData("_")))this.setCustomData("_",a={});return a},on:function(f){var b=this.getCustomData("_cke_nativeListeners");if(!b){b={};this.setCustomData("_cke_nativeListeners",b)}if(!b[f]){b=b[f]=a(this,f);this.$.addEventListener?this.$.addEventListener(f,b,!!CKEDITOR.event.useCapture):this.$.attachEvent&&
this.$.attachEvent("on"+f,b)}return CKEDITOR.event.prototype.on.apply(this,arguments)},removeListener:function(a){CKEDITOR.event.prototype.removeListener.apply(this,arguments);if(!this.hasListeners(a)){var b=this.getCustomData("_cke_nativeListeners"),c=b&&b[a];if(c){this.$.removeEventListener?this.$.removeEventListener(a,c,false):this.$.detachEvent&&this.$.detachEvent("on"+a,c);delete b[a]}}},removeAllListeners:function(){var a=this.getCustomData("_cke_nativeListeners"),b;for(b in a){var c=a[b];this.$.detachEvent?
this.$.detachEvent("on"+b,c):this.$.removeEventListener&&this.$.removeEventListener(b,c,false);delete a[b]}CKEDITOR.event.prototype.removeAllListeners.call(this)}}}();
(function(a){var f={};CKEDITOR.on("reset",function(){f={}});a.equals=function(a){try{return a&&a.$===this.$}catch(c){return false}};a.setCustomData=function(a,c){var e=this.getUniqueId();(f[e]||(f[e]={}))[a]=c;return this};a.getCustomData=function(a){var c=this.$["data-cke-expando"];return(c=c&&f[c])&&a in c?c[a]:null};a.removeCustomData=function(a){var c=this.$["data-cke-expando"],c=c&&f[c],e,d;if(c){e=c[a];d=a in c;delete c[a]}return d?e:null};a.clearCustomData=function(){this.removeAllListeners();
var a=this.$["data-cke-expando"];a&&delete f[a]};a.getUniqueId=function(){return this.$["data-cke-expando"]||(this.$["data-cke-expando"]=CKEDITOR.tools.getNextNumber())};CKEDITOR.event.implementOn(a)})(CKEDITOR.dom.domObject.prototype);
CKEDITOR.dom.node=function(a){return a?new CKEDITOR.dom[a.nodeType==CKEDITOR.NODE_DOCUMENT?"document":a.nodeType==CKEDITOR.NODE_ELEMENT?"element":a.nodeType==CKEDITOR.NODE_TEXT?"text":a.nodeType==CKEDITOR.NODE_COMMENT?"comment":a.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT?"documentFragment":"domObject"](a):this};CKEDITOR.dom.node.prototype=new CKEDITOR.dom.domObject;CKEDITOR.NODE_ELEMENT=1;CKEDITOR.NODE_DOCUMENT=9;CKEDITOR.NODE_TEXT=3;CKEDITOR.NODE_COMMENT=8;CKEDITOR.NODE_DOCUMENT_FRAGMENT=11;
CKEDITOR.POSITION_IDENTICAL=0;CKEDITOR.POSITION_DISCONNECTED=1;CKEDITOR.POSITION_FOLLOWING=2;CKEDITOR.POSITION_PRECEDING=4;CKEDITOR.POSITION_IS_CONTAINED=8;CKEDITOR.POSITION_CONTAINS=16;
CKEDITOR.tools.extend(CKEDITOR.dom.node.prototype,{appendTo:function(a,f){a.append(this,f);return a},clone:function(a,f){var b=this.$.cloneNode(a),c=function(e){e["data-cke-expando"]&&(e["data-cke-expando"]=false);if(e.nodeType==CKEDITOR.NODE_ELEMENT){f||e.removeAttribute("id",false);if(a)for(var e=e.childNodes,d=0;d<e.length;d++)c(e[d])}};c(b);return new CKEDITOR.dom.node(b)},hasPrevious:function(){return!!this.$.previousSibling},hasNext:function(){return!!this.$.nextSibling},insertAfter:function(a){a.$.parentNode.insertBefore(this.$,
a.$.nextSibling);return a},insertBefore:function(a){a.$.parentNode.insertBefore(this.$,a.$);return a},insertBeforeMe:function(a){this.$.parentNode.insertBefore(a.$,this.$);return a},getAddress:function(a){for(var f=[],b=this.getDocument().$.documentElement,c=this.$;c&&c!=b;){var e=c.parentNode;e&&f.unshift(this.getIndex.call({$:c},a));c=e}return f},getDocument:function(){return new CKEDITOR.dom.document(this.$.ownerDocument||this.$.parentNode.ownerDocument)},getIndex:function(a){function f(a,e){var b=
e?a.nextSibling:a.previousSibling;return!b||b.nodeType!=CKEDITOR.NODE_TEXT?null:b.nodeValue?b:f(b,e)}var b=this.$,c=-1,e;if(!this.$.parentNode||a&&b.nodeType==CKEDITOR.NODE_TEXT&&!b.nodeValue&&!f(b)&&!f(b,true))return-1;do if(!a||!(b!=this.$&&b.nodeType==CKEDITOR.NODE_TEXT&&(e||!b.nodeValue))){c++;e=b.nodeType==CKEDITOR.NODE_TEXT}while(b=b.previousSibling);return c},getNextSourceNode:function(a,f,b){if(b&&!b.call)var c=b,b=function(a){return!a.equals(c)};var a=!a&&this.getFirst&&this.getFirst(),e;
if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&b&&b(this,true)===false)return null;a=this.getNext()}for(;!a&&(e=(e||this).getParent());){if(b&&b(e,true)===false)return null;a=e.getNext()}return!a||b&&b(a)===false?null:f&&f!=a.type?a.getNextSourceNode(false,f,b):a},getPreviousSourceNode:function(a,f,b){if(b&&!b.call)var c=b,b=function(a){return!a.equals(c)};var a=!a&&this.getLast&&this.getLast(),e;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&b&&b(this,true)===false)return null;a=this.getPrevious()}for(;!a&&
(e=(e||this).getParent());){if(b&&b(e,true)===false)return null;a=e.getPrevious()}return!a||b&&b(a)===false?null:f&&a.type!=f?a.getPreviousSourceNode(false,f,b):a},getPrevious:function(a){var f=this.$,b;do b=(f=f.previousSibling)&&f.nodeType!=10&&new CKEDITOR.dom.node(f);while(b&&a&&!a(b));return b},getNext:function(a){var f=this.$,b;do b=(f=f.nextSibling)&&new CKEDITOR.dom.node(f);while(b&&a&&!a(b));return b},getParent:function(a){var f=this.$.parentNode;return f&&(f.nodeType==CKEDITOR.NODE_ELEMENT||
a&&f.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT)?new CKEDITOR.dom.node(f):null},getParents:function(a){var f=this,b=[];do b[a?"push":"unshift"](f);while(f=f.getParent());return b},getCommonAncestor:function(a){if(a.equals(this))return this;if(a.contains&&a.contains(this))return a;var f=this.contains?this:this.getParent();do if(f.contains(a))return f;while(f=f.getParent());return null},getPosition:function(a){var f=this.$,b=a.$;if(f.compareDocumentPosition)return f.compareDocumentPosition(b);if(f==
b)return CKEDITOR.POSITION_IDENTICAL;if(this.type==CKEDITOR.NODE_ELEMENT&&a.type==CKEDITOR.NODE_ELEMENT){if(f.contains){if(f.contains(b))return CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING;if(b.contains(f))return CKEDITOR.POSITION_IS_CONTAINED+CKEDITOR.POSITION_FOLLOWING}if("sourceIndex"in f)return f.sourceIndex<0||b.sourceIndex<0?CKEDITOR.POSITION_DISCONNECTED:f.sourceIndex<b.sourceIndex?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING}for(var f=this.getAddress(),a=a.getAddress(),
b=Math.min(f.length,a.length),c=0;c<=b-1;c++)if(f[c]!=a[c]){if(c<b)return f[c]<a[c]?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING;break}return f.length<a.length?CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_IS_CONTAINED+CKEDITOR.POSITION_FOLLOWING},getAscendant:function(a,f){var b=this.$,c,e;if(!f)b=b.parentNode;if(typeof a=="function"){e=true;c=a}else{e=false;c=function(e){e=typeof e.nodeName=="string"?e.nodeName.toLowerCase():"";return typeof a=="string"?e==
a:e in a}}for(;b;){if(c(e?new CKEDITOR.dom.node(b):b))return new CKEDITOR.dom.node(b);try{b=b.parentNode}catch(d){b=null}}return null},hasAscendant:function(a,f){var b=this.$;if(!f)b=b.parentNode;for(;b;){if(b.nodeName&&b.nodeName.toLowerCase()==a)return true;b=b.parentNode}return false},move:function(a,f){a.append(this.remove(),f)},remove:function(a){var f=this.$,b=f.parentNode;if(b){if(a)for(;a=f.firstChild;)b.insertBefore(f.removeChild(a),f);b.removeChild(f)}return this},replace:function(a){this.insertBefore(a);
a.remove()},trim:function(){this.ltrim();this.rtrim()},ltrim:function(){for(var a;this.getFirst&&(a=this.getFirst());){if(a.type==CKEDITOR.NODE_TEXT){var f=CKEDITOR.tools.ltrim(a.getText()),b=a.getLength();if(f){if(f.length<b){a.split(b-f.length);this.$.removeChild(this.$.firstChild)}}else{a.remove();continue}}break}},rtrim:function(){for(var a;this.getLast&&(a=this.getLast());){if(a.type==CKEDITOR.NODE_TEXT){var f=CKEDITOR.tools.rtrim(a.getText()),b=a.getLength();if(f){if(f.length<b){a.split(f.length);
this.$.lastChild.parentNode.removeChild(this.$.lastChild)}}else{a.remove();continue}}break}if(CKEDITOR.env.needsBrFiller)(a=this.$.lastChild)&&(a.type==1&&a.nodeName.toLowerCase()=="br")&&a.parentNode.removeChild(a)},isReadOnly:function(){var a=this;this.type!=CKEDITOR.NODE_ELEMENT&&(a=this.getParent());if(a&&typeof a.$.isContentEditable!="undefined")return!(a.$.isContentEditable||a.data("cke-editable"));for(;a;){if(a.data("cke-editable"))break;if(a.getAttribute("contentEditable")=="false")return true;
if(a.getAttribute("contentEditable")=="true")break;a=a.getParent()}return!a}});CKEDITOR.dom.window=function(a){CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.window.prototype=new CKEDITOR.dom.domObject;
CKEDITOR.tools.extend(CKEDITOR.dom.window.prototype,{focus:function(){this.$.focus()},getViewPaneSize:function(){var a=this.$.document,f=a.compatMode=="CSS1Compat";return{width:(f?a.documentElement.clientWidth:a.body.clientWidth)||0,height:(f?a.documentElement.clientHeight:a.body.clientHeight)||0}},getScrollPosition:function(){var a=this.$;if("pageXOffset"in a)return{x:a.pageXOffset||0,y:a.pageYOffset||0};a=a.document;return{x:a.documentElement.scrollLeft||a.body.scrollLeft||0,y:a.documentElement.scrollTop||
a.body.scrollTop||0}},getFrame:function(){var a=this.$.frameElement;return a?new CKEDITOR.dom.element.get(a):null}});CKEDITOR.dom.document=function(a){CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.document.prototype=new CKEDITOR.dom.domObject;
CKEDITOR.tools.extend(CKEDITOR.dom.document.prototype,{type:CKEDITOR.NODE_DOCUMENT,appendStyleSheet:function(a){if(this.$.createStyleSheet)this.$.createStyleSheet(a);else{var f=new CKEDITOR.dom.element("link");f.setAttributes({rel:"stylesheet",type:"text/css",href:a});this.getHead().append(f)}},appendStyleText:function(a){if(this.$.createStyleSheet){var f=this.$.createStyleSheet("");f.cssText=a}else{var b=new CKEDITOR.dom.element("style",this);b.append(new CKEDITOR.dom.text(a,this));this.getHead().append(b)}return f||
b.$.sheet},createElement:function(a,f){var b=new CKEDITOR.dom.element(a,this);if(f){f.attributes&&b.setAttributes(f.attributes);f.styles&&b.setStyles(f.styles)}return b},createText:function(a){return new CKEDITOR.dom.text(a,this)},focus:function(){this.getWindow().focus()},getActive:function(){var a;try{a=this.$.activeElement}catch(f){return null}return new CKEDITOR.dom.element(a)},getById:function(a){return(a=this.$.getElementById(a))?new CKEDITOR.dom.element(a):null},getByAddress:function(a,f){for(var b=
this.$.documentElement,c=0;b&&c<a.length;c++){var e=a[c];if(f)for(var d=-1,h=0;h<b.childNodes.length;h++){var k=b.childNodes[h];if(!(f===true&&k.nodeType==3&&k.previousSibling&&k.previousSibling.nodeType==3)){d++;if(d==e){b=k;break}}}else b=b.childNodes[e]}return b?new CKEDITOR.dom.node(b):null},getElementsByTag:function(a,f){!(CKEDITOR.env.ie&&document.documentMode<=8)&&f&&(a=f+":"+a);return new CKEDITOR.dom.nodeList(this.$.getElementsByTagName(a))},getHead:function(){var a=this.$.getElementsByTagName("head")[0];
return a=a?new CKEDITOR.dom.element(a):this.getDocumentElement().append(new CKEDITOR.dom.element("head"),true)},getBody:function(){return new CKEDITOR.dom.element(this.$.body)},getDocumentElement:function(){return new CKEDITOR.dom.element(this.$.documentElement)},getWindow:function(){return new CKEDITOR.dom.window(this.$.parentWindow||this.$.defaultView)},write:function(a){this.$.open("text/html","replace");CKEDITOR.env.ie&&(a=a.replace(/(?:^\s*<!DOCTYPE[^>]*?>)|^/i,'$&\n<script data-cke-temp="1">('+
CKEDITOR.tools.fixDomain+")();<\/script>"));this.$.write(a);this.$.close()},find:function(a){return new CKEDITOR.dom.nodeList(this.$.querySelectorAll(a))},findOne:function(a){return(a=this.$.querySelector(a))?new CKEDITOR.dom.element(a):null},_getHtml5ShivFrag:function(){var a=this.getCustomData("html5ShivFrag");if(!a){a=this.$.createDocumentFragment();CKEDITOR.tools.enableHtml5Elements(a,true);this.setCustomData("html5ShivFrag",a)}return a}});CKEDITOR.dom.nodeList=function(a){this.$=a};
CKEDITOR.dom.nodeList.prototype={count:function(){return this.$.length},getItem:function(a){if(a<0||a>=this.$.length)return null;return(a=this.$[a])?new CKEDITOR.dom.node(a):null}};CKEDITOR.dom.element=function(a,f){typeof a=="string"&&(a=(f?f.$:document).createElement(a));CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.element.get=function(a){return(a=typeof a=="string"?document.getElementById(a)||document.getElementsByName(a)[0]:a)&&(a.$?a:new CKEDITOR.dom.element(a))};
CKEDITOR.dom.element.prototype=new CKEDITOR.dom.node;CKEDITOR.dom.element.createFromHtml=function(a,f){var b=new CKEDITOR.dom.element("div",f);b.setHtml(a);return b.getFirst().remove()};
CKEDITOR.dom.element.setMarker=function(a,f,b,c){var e=f.getCustomData("list_marker_id")||f.setCustomData("list_marker_id",CKEDITOR.tools.getNextNumber()).getCustomData("list_marker_id"),d=f.getCustomData("list_marker_names")||f.setCustomData("list_marker_names",{}).getCustomData("list_marker_names");a[e]=f;d[b]=1;return f.setCustomData(b,c)};CKEDITOR.dom.element.clearAllMarkers=function(a){for(var f in a)CKEDITOR.dom.element.clearMarkers(a,a[f],1)};
CKEDITOR.dom.element.clearMarkers=function(a,f,b){var c=f.getCustomData("list_marker_names"),e=f.getCustomData("list_marker_id"),d;for(d in c)f.removeCustomData(d);f.removeCustomData("list_marker_names");if(b){f.removeCustomData("list_marker_id");delete a[e]}};
(function(){function a(a){var d=true;if(!a.$.id){a.$.id="cke_tmp_"+CKEDITOR.tools.getNextNumber();d=false}return function(){d||a.removeAttribute("id")}}function f(a,d){return"#"+a.$.id+" "+d.split(/,\s*/).join(", #"+a.$.id+" ")}function b(a){for(var d=0,b=0,f=c[a].length;b<f;b++)d=d+(parseInt(this.getComputedStyle(c[a][b])||0,10)||0);return d}CKEDITOR.tools.extend(CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_ELEMENT,addClass:function(a){var d=this.$.className;d&&(RegExp("(?:^|\\s)"+a+"(?:\\s|$)",
"").test(d)||(d=d+(" "+a)));this.$.className=d||a;return this},removeClass:function(a){var d=this.getAttribute("class");if(d){a=RegExp("(?:^|\\s+)"+a+"(?=\\s|$)","i");if(a.test(d))(d=d.replace(a,"").replace(/^\s+/,""))?this.setAttribute("class",d):this.removeAttribute("class")}return this},hasClass:function(a){return RegExp("(?:^|\\s+)"+a+"(?=\\s|$)","").test(this.getAttribute("class"))},append:function(a,d){typeof a=="string"&&(a=this.getDocument().createElement(a));d?this.$.insertBefore(a.$,this.$.firstChild):
this.$.appendChild(a.$);return a},appendHtml:function(a){if(this.$.childNodes.length){var d=new CKEDITOR.dom.element("div",this.getDocument());d.setHtml(a);d.moveChildren(this)}else this.setHtml(a)},appendText:function(a){this.$.text!=null?this.$.text=this.$.text+a:this.append(new CKEDITOR.dom.text(a))},appendBogus:function(a){if(a||CKEDITOR.env.needsBrFiller){for(a=this.getLast();a&&a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.rtrim(a.getText());)a=a.getPrevious();if(!a||!a.is||!a.is("br")){a=this.getDocument().createElement("br");
CKEDITOR.env.gecko&&a.setAttribute("type","_moz");this.append(a)}}},breakParent:function(a){var d=new CKEDITOR.dom.range(this.getDocument());d.setStartAfter(this);d.setEndAfter(a);a=d.extractContents();d.insertNode(this.remove());a.insertAfterNode(this)},contains:CKEDITOR.env.ie||CKEDITOR.env.webkit?function(a){var d=this.$;return a.type!=CKEDITOR.NODE_ELEMENT?d.contains(a.getParent().$):d!=a.$&&d.contains(a.$)}:function(a){return!!(this.$.compareDocumentPosition(a.$)&16)},focus:function(){function a(){try{this.$.focus()}catch(e){}}
return function(d){d?CKEDITOR.tools.setTimeout(a,100,this):a.call(this)}}(),getHtml:function(){var a=this.$.innerHTML;return CKEDITOR.env.ie?a.replace(/<\?[^>]*>/g,""):a},getOuterHtml:function(){if(this.$.outerHTML)return this.$.outerHTML.replace(/<\?[^>]*>/,"");var a=this.$.ownerDocument.createElement("div");a.appendChild(this.$.cloneNode(true));return a.innerHTML},getClientRect:function(){var a=CKEDITOR.tools.extend({},this.$.getBoundingClientRect());!a.width&&(a.width=a.right-a.left);!a.height&&
(a.height=a.bottom-a.top);return a},setHtml:CKEDITOR.env.ie&&CKEDITOR.env.version<9?function(a){try{var d=this.$;if(this.getParent())return d.innerHTML=a;var b=this.getDocument()._getHtml5ShivFrag();b.appendChild(d);d.innerHTML=a;b.removeChild(d);return a}catch(c){this.$.innerHTML="";d=new CKEDITOR.dom.element("body",this.getDocument());d.$.innerHTML=a;for(d=d.getChildren();d.count();)this.append(d.getItem(0));return a}}:function(a){return this.$.innerHTML=a},setText:function(){var a=document.createElement("p");
a.innerHTML="x";a=a.textContent;return function(d){this.$[a?"textContent":"innerText"]=d}}(),getAttribute:function(){var a=function(a){return this.$.getAttribute(a,2)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){switch(a){case "class":a="className";break;case "http-equiv":a="httpEquiv";break;case "name":return this.$.name;case "tabindex":a=this.$.getAttribute(a,2);a!==0&&this.$.tabIndex===0&&(a=null);return a;case "checked":a=this.$.attributes.getNamedItem(a);
return(a.specified?a.nodeValue:this.$.checked)?"checked":null;case "hspace":case "value":return this.$[a];case "style":return this.$.style.cssText;case "contenteditable":case "contentEditable":return this.$.attributes.getNamedItem("contentEditable").specified?this.$.getAttribute("contentEditable"):null}return this.$.getAttribute(a,2)}:a}(),getChildren:function(){return new CKEDITOR.dom.nodeList(this.$.childNodes)},getComputedStyle:CKEDITOR.env.ie?function(a){return this.$.currentStyle[CKEDITOR.tools.cssStyleToDomStyle(a)]}:
function(a){var d=this.getWindow().$.getComputedStyle(this.$,null);return d?d.getPropertyValue(a):""},getDtd:function(){var a=CKEDITOR.dtd[this.getName()];this.getDtd=function(){return a};return a},getElementsByTag:CKEDITOR.dom.document.prototype.getElementsByTag,getTabIndex:CKEDITOR.env.ie?function(){var a=this.$.tabIndex;a===0&&(!CKEDITOR.dtd.$tabIndex[this.getName()]&&parseInt(this.getAttribute("tabindex"),10)!==0)&&(a=-1);return a}:CKEDITOR.env.webkit?function(){var a=this.$.tabIndex;if(a===void 0){a=
parseInt(this.getAttribute("tabindex"),10);isNaN(a)&&(a=-1)}return a}:function(){return this.$.tabIndex},getText:function(){return this.$.textContent||this.$.innerText||""},getWindow:function(){return this.getDocument().getWindow()},getId:function(){return this.$.id||null},getNameAtt:function(){return this.$.name||null},getName:function(){var a=this.$.nodeName.toLowerCase();if(CKEDITOR.env.ie&&document.documentMode<=8){var d=this.$.scopeName;d!="HTML"&&(a=d.toLowerCase()+":"+a)}this.getName=function(){return a};
return this.getName()},getValue:function(){return this.$.value},getFirst:function(a){var d=this.$.firstChild;(d=d&&new CKEDITOR.dom.node(d))&&(a&&!a(d))&&(d=d.getNext(a));return d},getLast:function(a){var d=this.$.lastChild;(d=d&&new CKEDITOR.dom.node(d))&&(a&&!a(d))&&(d=d.getPrevious(a));return d},getStyle:function(a){return this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]},is:function(){var a=this.getName();if(typeof arguments[0]=="object")return!!arguments[0][a];for(var d=0;d<arguments.length;d++)if(arguments[d]==
a)return true;return false},isEditable:function(a){var d=this.getName();if(this.isReadOnly()||this.getComputedStyle("display")=="none"||this.getComputedStyle("visibility")=="hidden"||CKEDITOR.dtd.$nonEditable[d]||CKEDITOR.dtd.$empty[d]||this.is("a")&&(this.data("cke-saved-name")||this.hasAttribute("name"))&&!this.getChildCount())return false;if(a!==false){a=CKEDITOR.dtd[d]||CKEDITOR.dtd.span;return!(!a||!a["#"])}return true},isIdentical:function(a){var d=this.clone(0,1),a=a.clone(0,1);d.removeAttributes(["_moz_dirty",
"data-cke-expando","data-cke-saved-href","data-cke-saved-name"]);a.removeAttributes(["_moz_dirty","data-cke-expando","data-cke-saved-href","data-cke-saved-name"]);if(d.$.isEqualNode){d.$.style.cssText=CKEDITOR.tools.normalizeCssText(d.$.style.cssText);a.$.style.cssText=CKEDITOR.tools.normalizeCssText(a.$.style.cssText);return d.$.isEqualNode(a.$)}d=d.getOuterHtml();a=a.getOuterHtml();if(CKEDITOR.env.ie&&CKEDITOR.env.version<9&&this.is("a")){var b=this.getParent();if(b.type==CKEDITOR.NODE_ELEMENT){b=
b.clone();b.setHtml(d);d=b.getHtml();b.setHtml(a);a=b.getHtml()}}return d==a},isVisible:function(){var a=(this.$.offsetHeight||this.$.offsetWidth)&&this.getComputedStyle("visibility")!="hidden",d,b;if(a&&CKEDITOR.env.webkit){d=this.getWindow();if(!d.equals(CKEDITOR.document.getWindow())&&(b=d.$.frameElement))a=(new CKEDITOR.dom.element(b)).isVisible()}return!!a},isEmptyInlineRemoveable:function(){if(!CKEDITOR.dtd.$removeEmpty[this.getName()])return false;for(var a=this.getChildren(),d=0,b=a.count();d<
b;d++){var c=a.getItem(d);if(!(c.type==CKEDITOR.NODE_ELEMENT&&c.data("cke-bookmark"))&&(c.type==CKEDITOR.NODE_ELEMENT&&!c.isEmptyInlineRemoveable()||c.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(c.getText())))return false}return true},hasAttributes:CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(){for(var a=this.$.attributes,d=0;d<a.length;d++){var b=a[d];switch(b.nodeName){case "class":if(this.getAttribute("class"))return true;case "data-cke-expando":continue;default:if(b.specified)return true}}return false}:
function(){var a=this.$.attributes,d=a.length,b={"data-cke-expando":1,_moz_dirty:1};return d>0&&(d>2||!b[a[0].nodeName]||d==2&&!b[a[1].nodeName])},hasAttribute:function(){function a(d){var e=this.$.attributes.getNamedItem(d);if(this.getName()=="input")switch(d){case "class":return this.$.className.length>0;case "checked":return!!this.$.checked;case "value":d=this.getAttribute("type");return d=="checkbox"||d=="radio"?this.$.value!="on":!!this.$.value}return!e?false:e.specified}return CKEDITOR.env.ie?
CKEDITOR.env.version<8?function(d){return d=="name"?!!this.$.name:a.call(this,d)}:a:function(a){return!!this.$.attributes.getNamedItem(a)}}(),hide:function(){this.setStyle("display","none")},moveChildren:function(a,d){var b=this.$,a=a.$;if(b!=a){var c;if(d)for(;c=b.lastChild;)a.insertBefore(b.removeChild(c),a.firstChild);else for(;c=b.firstChild;)a.appendChild(b.removeChild(c))}},mergeSiblings:function(){function a(d,b,e){if(b&&b.type==CKEDITOR.NODE_ELEMENT){for(var c=[];b.data("cke-bookmark")||b.isEmptyInlineRemoveable();){c.push(b);
b=e?b.getNext():b.getPrevious();if(!b||b.type!=CKEDITOR.NODE_ELEMENT)return}if(d.isIdentical(b)){for(var f=e?d.getLast():d.getFirst();c.length;)c.shift().move(d,!e);b.moveChildren(d,!e);b.remove();f&&f.type==CKEDITOR.NODE_ELEMENT&&f.mergeSiblings()}}}return function(d){if(d===false||CKEDITOR.dtd.$removeEmpty[this.getName()]||this.is("a")){a(this,this.getNext(),true);a(this,this.getPrevious())}}}(),show:function(){this.setStyles({display:"",visibility:""})},setAttribute:function(){var a=function(a,
b){this.$.setAttribute(a,b);return this};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(d,b){d=="class"?this.$.className=b:d=="style"?this.$.style.cssText=b:d=="tabindex"?this.$.tabIndex=b:d=="checked"?this.$.checked=b:d=="contenteditable"?a.call(this,"contentEditable",b):a.apply(this,arguments);return this}:CKEDITOR.env.ie8Compat&&CKEDITOR.env.secure?function(d,b){if(d=="src"&&b.match(/^http:\/\//))try{a.apply(this,arguments)}catch(c){}else a.apply(this,arguments);
return this}:a}(),setAttributes:function(a){for(var d in a)this.setAttribute(d,a[d]);return this},setValue:function(a){this.$.value=a;return this},removeAttribute:function(){var a=function(a){this.$.removeAttribute(a)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){a=="class"?a="className":a=="tabindex"?a="tabIndex":a=="contenteditable"&&(a="contentEditable");this.$.removeAttribute(a)}:a}(),removeAttributes:function(a){if(CKEDITOR.tools.isArray(a))for(var b=0;b<
a.length;b++)this.removeAttribute(a[b]);else for(b in a)a.hasOwnProperty(b)&&this.removeAttribute(b)},removeStyle:function(a){var b=this.$.style;if(!b.removeProperty&&(a=="border"||a=="margin"||a=="padding")){var c=["top","left","right","bottom"],f;a=="border"&&(f=["color","style","width"]);for(var b=[],j=0;j<c.length;j++)if(f)for(var g=0;g<f.length;g++)b.push([a,c[j],f[g]].join("-"));else b.push([a,c[j]].join("-"));for(a=0;a<b.length;a++)this.removeStyle(b[a])}else{b.removeProperty?b.removeProperty(a):
b.removeAttribute(CKEDITOR.tools.cssStyleToDomStyle(a));this.$.style.cssText||this.removeAttribute("style")}},setStyle:function(a,b){this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]=b;return this},setStyles:function(a){for(var b in a)this.setStyle(b,a[b]);return this},setOpacity:function(a){if(CKEDITOR.env.ie&&CKEDITOR.env.version<9){a=Math.round(a*100);this.setStyle("filter",a>=100?"":"progid:DXImageTransform.Microsoft.Alpha(opacity="+a+")")}else this.setStyle("opacity",a)},unselectable:function(){this.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select",
"none"));if(CKEDITOR.env.ie){this.setAttribute("unselectable","on");for(var a,b=this.getElementsByTag("*"),c=0,f=b.count();c<f;c++){a=b.getItem(c);a.setAttribute("unselectable","on")}}},getPositionedAncestor:function(){for(var a=this;a.getName()!="html";){if(a.getComputedStyle("position")!="static")return a;a=a.getParent()}return null},getDocumentPosition:function(a){var b=0,c=0,f=this.getDocument(),j=f.getBody(),g=CKEDITOR.env.quirks;if(document.documentElement.getBoundingClientRect){var m=this.$.getBoundingClientRect(),
y=f.$.documentElement,s=y.clientTop||j.$.clientTop||0,w=y.clientLeft||j.$.clientLeft||0,q=true;if(CKEDITOR.env.ie){q=f.getDocumentElement().contains(this);f=f.getBody().contains(this);q=g&&f||!g&&q}if(q){if(CKEDITOR.env.webkit){b=j.$.scrollLeft||y.scrollLeft;c=j.$.scrollTop||y.scrollTop}else{c=g?j.$:y;b=c.scrollLeft;c=c.scrollTop}b=m.left+b-w;c=m.top+c-s}}else{s=this;for(w=null;s&&!(s.getName()=="body"||s.getName()=="html");){b=b+(s.$.offsetLeft-s.$.scrollLeft);c=c+(s.$.offsetTop-s.$.scrollTop);if(!s.equals(this)){b=
b+(s.$.clientLeft||0);c=c+(s.$.clientTop||0)}for(;w&&!w.equals(s);){b=b-w.$.scrollLeft;c=c-w.$.scrollTop;w=w.getParent()}w=s;s=(m=s.$.offsetParent)?new CKEDITOR.dom.element(m):null}}if(a){m=this.getWindow();s=a.getWindow();if(!m.equals(s)&&m.$.frameElement){a=(new CKEDITOR.dom.element(m.$.frameElement)).getDocumentPosition(a);b=b+a.x;c=c+a.y}}if(!document.documentElement.getBoundingClientRect&&CKEDITOR.env.gecko&&!g){b=b+(this.$.clientLeft?1:0);c=c+(this.$.clientTop?1:0)}return{x:b,y:c}},scrollIntoView:function(a){var b=
this.getParent();if(b){do{(b.$.clientWidth&&b.$.clientWidth<b.$.scrollWidth||b.$.clientHeight&&b.$.clientHeight<b.$.scrollHeight)&&!b.is("body")&&this.scrollIntoParent(b,a,1);if(b.is("html")){var c=b.getWindow();try{var f=c.$.frameElement;f&&(b=new CKEDITOR.dom.element(f))}catch(j){}}}while(b=b.getParent())}},scrollIntoParent:function(a,b,c){var f,j,g,m;function y(b,d){if(/body|html/.test(a.getName()))a.getWindow().$.scrollBy(b,d);else{a.$.scrollLeft=a.$.scrollLeft+b;a.$.scrollTop=a.$.scrollTop+d}}
function s(a,b){var d={x:0,y:0};if(!a.is(q?"body":"html")){var c=a.$.getBoundingClientRect();d.x=c.left;d.y=c.top}c=a.getWindow();if(!c.equals(b)){c=s(CKEDITOR.dom.element.get(c.$.frameElement),b);d.x=d.x+c.x;d.y=d.y+c.y}return d}function w(a,b){return parseInt(a.getComputedStyle("margin-"+b)||0,10)||0}!a&&(a=this.getWindow());g=a.getDocument();var q=g.$.compatMode=="BackCompat";a instanceof CKEDITOR.dom.window&&(a=q?g.getBody():g.getDocumentElement());g=a.getWindow();j=s(this,g);var t=s(a,g),i=this.$.offsetHeight;
f=this.$.offsetWidth;var A=a.$.clientHeight,u=a.$.clientWidth;g=j.x-w(this,"left")-t.x||0;m=j.y-w(this,"top")-t.y||0;f=j.x+f+w(this,"right")-(t.x+u)||0;j=j.y+i+w(this,"bottom")-(t.y+A)||0;if(m<0||j>0)y(0,b===true?m:b===false?j:m<0?m:j);if(c&&(g<0||f>0))y(g<0?g:f,0)},setState:function(a,b,c){b=b||"cke";switch(a){case CKEDITOR.TRISTATE_ON:this.addClass(b+"_on");this.removeClass(b+"_off");this.removeClass(b+"_disabled");c&&this.setAttribute("aria-pressed",true);c&&this.removeAttribute("aria-disabled");
break;case CKEDITOR.TRISTATE_DISABLED:this.addClass(b+"_disabled");this.removeClass(b+"_off");this.removeClass(b+"_on");c&&this.setAttribute("aria-disabled",true);c&&this.removeAttribute("aria-pressed");break;default:this.addClass(b+"_off");this.removeClass(b+"_on");this.removeClass(b+"_disabled");c&&this.removeAttribute("aria-pressed");c&&this.removeAttribute("aria-disabled")}},getFrameDocument:function(){var a=this.$;try{a.contentWindow.document}catch(b){a.src=a.src}return a&&new CKEDITOR.dom.document(a.contentWindow.document)},
copyAttributes:function(a,b){for(var c=this.$.attributes,b=b||{},f=0;f<c.length;f++){var j=c[f],g=j.nodeName.toLowerCase(),m;if(!(g in b))if(g=="checked"&&(m=this.getAttribute(g)))a.setAttribute(g,m);else if(!CKEDITOR.env.ie||this.hasAttribute(g)){m=this.getAttribute(g);if(m===null)m=j.nodeValue;a.setAttribute(g,m)}}if(this.$.style.cssText!=="")a.$.style.cssText=this.$.style.cssText},renameNode:function(a){if(this.getName()!=a){var b=this.getDocument(),a=new CKEDITOR.dom.element(a,b);this.copyAttributes(a);
this.moveChildren(a);this.getParent()&&this.$.parentNode.replaceChild(a.$,this.$);a.$["data-cke-expando"]=this.$["data-cke-expando"];this.$=a.$;delete this.getName}},getChild:function(){function a(b,c){var e=b.childNodes;if(c>=0&&c<e.length)return e[c]}return function(b){var c=this.$;if(b.slice)for(;b.length>0&&c;)c=a(c,b.shift());else c=a(c,b);return c?new CKEDITOR.dom.node(c):null}}(),getChildCount:function(){return this.$.childNodes.length},disableContextMenu:function(){this.on("contextmenu",function(a){a.data.getTarget().hasClass("cke_enable_context_menu")||
a.data.preventDefault()})},getDirection:function(a){return a?this.getComputedStyle("direction")||this.getDirection()||this.getParent()&&this.getParent().getDirection(1)||this.getDocument().$.dir||"ltr":this.getStyle("direction")||this.getAttribute("dir")},data:function(a,b){a="data-"+a;if(b===void 0)return this.getAttribute(a);b===false?this.removeAttribute(a):this.setAttribute(a,b);return null},getEditor:function(){var a=CKEDITOR.instances,b,c;for(b in a){c=a[b];if(c.element.equals(this)&&c.elementMode!=
CKEDITOR.ELEMENT_MODE_APPENDTO)return c}return null},find:function(b){var c=a(this),b=new CKEDITOR.dom.nodeList(this.$.querySelectorAll(f(this,b)));c();return b},findOne:function(b){var c=a(this),b=this.$.querySelector(f(this,b));c();return b?new CKEDITOR.dom.element(b):null},forEach:function(a,b,c){if(!c&&(!b||this.type==b))var f=a(this);if(f!==false)for(var c=this.getChildren(),j=0;j<c.count();j++){f=c.getItem(j);f.type==CKEDITOR.NODE_ELEMENT?f.forEach(a,b):(!b||f.type==b)&&a(f)}}});var c={width:["border-left-width",
"border-right-width","padding-left","padding-right"],height:["border-top-width","border-bottom-width","padding-top","padding-bottom"]};CKEDITOR.dom.element.prototype.setSize=function(a,c,f){if(typeof c=="number"){if(f&&(!CKEDITOR.env.ie||!CKEDITOR.env.quirks))c=c-b.call(this,a);this.setStyle(a,c+"px")}};CKEDITOR.dom.element.prototype.getSize=function(a,c){var f=Math.max(this.$["offset"+CKEDITOR.tools.capitalize(a)],this.$["client"+CKEDITOR.tools.capitalize(a)])||0;c&&(f=f-b.call(this,a));return f}})();
CKEDITOR.dom.documentFragment=function(a){a=a||CKEDITOR.document;this.$=a.type==CKEDITOR.NODE_DOCUMENT?a.$.createDocumentFragment():a};
CKEDITOR.tools.extend(CKEDITOR.dom.documentFragment.prototype,CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,insertAfterNode:function(a){a=a.$;a.parentNode.insertBefore(this.$,a.nextSibling)}},!0,{append:1,appendBogus:1,getFirst:1,getLast:1,getParent:1,getNext:1,getPrevious:1,appendTo:1,moveChildren:1,insertBefore:1,insertAfterNode:1,replace:1,trim:1,type:1,ltrim:1,rtrim:1,getDocument:1,getChildCount:1,getChild:1,getChildren:1});
(function(){function a(a,b){var c=this.range;if(this._.end)return null;if(!this._.start){this._.start=1;if(c.collapsed){this.end();return null}c.optimize()}var d,e=c.startContainer;d=c.endContainer;var m=c.startOffset,f=c.endOffset,h,o=this.guard,l=this.type,p=a?"getPreviousSourceNode":"getNextSourceNode";if(!a&&!this._.guardLTR){var r=d.type==CKEDITOR.NODE_ELEMENT?d:d.getParent(),n=d.type==CKEDITOR.NODE_ELEMENT?d.getChild(f):d.getNext();this._.guardLTR=function(a,b){return(!b||!r.equals(a))&&(!n||
!a.equals(n))&&(a.type!=CKEDITOR.NODE_ELEMENT||!b||!a.equals(c.root))}}if(a&&!this._.guardRTL){var g=e.type==CKEDITOR.NODE_ELEMENT?e:e.getParent(),C=e.type==CKEDITOR.NODE_ELEMENT?m?e.getChild(m-1):null:e.getPrevious();this._.guardRTL=function(a,b){return(!b||!g.equals(a))&&(!C||!a.equals(C))&&(a.type!=CKEDITOR.NODE_ELEMENT||!b||!a.equals(c.root))}}var j=a?this._.guardRTL:this._.guardLTR;h=o?function(a,b){return j(a,b)===false?false:o(a,b)}:j;if(this.current)d=this.current[p](false,l,h);else{if(a)d.type==
CKEDITOR.NODE_ELEMENT&&(d=f>0?d.getChild(f-1):h(d,true)===false?null:d.getPreviousSourceNode(true,l,h));else{d=e;if(d.type==CKEDITOR.NODE_ELEMENT&&!(d=d.getChild(m)))d=h(e,true)===false?null:e.getNextSourceNode(true,l,h)}d&&h(d)===false&&(d=null)}for(;d&&!this._.end;){this.current=d;if(!this.evaluator||this.evaluator(d)!==false){if(!b)return d}else if(b&&this.evaluator)return false;d=d[p](false,l,h)}this.end();return this.current=null}function f(b){for(var c,d=null;c=a.call(this,b);)d=c;return d}
function b(a){if(g(a))return false;if(a.type==CKEDITOR.NODE_TEXT)return true;if(a.type==CKEDITOR.NODE_ELEMENT){if(a.is(CKEDITOR.dtd.$inline)||a.is("hr")||a.getAttribute("contenteditable")=="false")return true;var b;if(b=!CKEDITOR.env.needsBrFiller)if(b=a.is(m))a:{b=0;for(var c=a.getChildCount();b<c;++b)if(!g(a.getChild(b))){b=false;break a}b=true}if(b)return true}return false}CKEDITOR.dom.walker=CKEDITOR.tools.createClass({$:function(a){this.range=a;this._={}},proto:{end:function(){this._.end=1},
next:function(){return a.call(this)},previous:function(){return a.call(this,1)},checkForward:function(){return a.call(this,0,1)!==false},checkBackward:function(){return a.call(this,1,1)!==false},lastForward:function(){return f.call(this)},lastBackward:function(){return f.call(this,1)},reset:function(){delete this.current;this._={}}}});var c={block:1,"list-item":1,table:1,"table-row-group":1,"table-header-group":1,"table-footer-group":1,"table-row":1,"table-column-group":1,"table-column":1,"table-cell":1,
"table-caption":1},e={absolute:1,fixed:1};CKEDITOR.dom.element.prototype.isBlockBoundary=function(a){return this.getComputedStyle("float")=="none"&&!(this.getComputedStyle("position")in e)&&c[this.getComputedStyle("display")]?true:!!(this.is(CKEDITOR.dtd.$block)||a&&this.is(a))};CKEDITOR.dom.walker.blockBoundary=function(a){return function(b){return!(b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary(a))}};CKEDITOR.dom.walker.listItemBoundary=function(){return this.blockBoundary({br:1})};CKEDITOR.dom.walker.bookmark=
function(a,b){function c(a){return a&&a.getName&&a.getName()=="span"&&a.data("cke-bookmark")}return function(d){var e,m;e=d&&d.type!=CKEDITOR.NODE_ELEMENT&&(m=d.getParent())&&c(m);e=a?e:e||c(d);return!!(b^e)}};CKEDITOR.dom.walker.whitespaces=function(a){return function(b){var c;b&&b.type==CKEDITOR.NODE_TEXT&&(c=!CKEDITOR.tools.trim(b.getText())||CKEDITOR.env.webkit&&b.getText()=="​");return!!(a^c)}};CKEDITOR.dom.walker.invisible=function(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.env.webkit?
1:0;return function(d){if(b(d))d=1;else{d.type==CKEDITOR.NODE_TEXT&&(d=d.getParent());d=d.$.offsetWidth<=c}return!!(a^d)}};CKEDITOR.dom.walker.nodeType=function(a,b){return function(c){return!!(b^c.type==a)}};CKEDITOR.dom.walker.bogus=function(a){function b(a){return!h(a)&&!k(a)}return function(c){var e=CKEDITOR.env.needsBrFiller?c.is&&c.is("br"):c.getText&&d.test(c.getText());if(e){e=c.getParent();c=c.getNext(b);e=e.isBlockBoundary()&&(!c||c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary())}return!!(a^
e)}};CKEDITOR.dom.walker.temp=function(a){return function(b){b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent());b=b&&b.hasAttribute("data-cke-temp");return!!(a^b)}};var d=/^[\t\r\n ]*(?:&nbsp;|\xa0)$/,h=CKEDITOR.dom.walker.whitespaces(),k=CKEDITOR.dom.walker.bookmark(),j=CKEDITOR.dom.walker.temp();CKEDITOR.dom.walker.ignored=function(a){return function(b){b=h(b)||k(b)||j(b);return!!(a^b)}};var g=CKEDITOR.dom.walker.ignored(),m=function(a){var b={},c;for(c in a)CKEDITOR.dtd[c]["#"]&&(b[c]=1);return b}(CKEDITOR.dtd.$block);
CKEDITOR.dom.walker.editable=function(a){return function(c){return!!(a^b(c))}};CKEDITOR.dom.element.prototype.getBogus=function(){var a=this;do a=a.getPreviousSourceNode();while(k(a)||h(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.is(CKEDITOR.dtd.$inline)&&!a.is(CKEDITOR.dtd.$empty));return a&&(CKEDITOR.env.needsBrFiller?a.is&&a.is("br"):a.getText&&d.test(a.getText()))?a:false}})();
CKEDITOR.dom.range=function(a){this.endOffset=this.endContainer=this.startOffset=this.startContainer=null;this.collapsed=true;var f=a instanceof CKEDITOR.dom.document;this.document=f?a:a.getDocument();this.root=f?a.getBody():a};
(function(){function a(){var a=false,b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(true),e=CKEDITOR.dom.walker.bogus();return function(f){if(c(f)||b(f))return true;if(e(f)&&!a)return a=true;return f.type==CKEDITOR.NODE_TEXT&&(f.hasAscendant("pre")||CKEDITOR.tools.trim(f.getText()).length)||f.type==CKEDITOR.NODE_ELEMENT&&!f.is(d)?false:true}}function f(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(1);return function(d){return c(d)||b(d)?true:!a&&h(d)||
d.type==CKEDITOR.NODE_ELEMENT&&d.is(CKEDITOR.dtd.$removeEmpty)}}function b(a){return function(){var b;return this[a?"getPreviousNode":"getNextNode"](function(a){!b&&g(a)&&(b=a);return j(a)&&!(h(a)&&a.equals(b))})}}var c=function(a){a.collapsed=a.startContainer&&a.endContainer&&a.startContainer.equals(a.endContainer)&&a.startOffset==a.endOffset},e=function(a,b,c,d){a.optimizeBookmark();var e=a.startContainer,f=a.endContainer,i=a.startOffset,A=a.endOffset,h,o;if(f.type==CKEDITOR.NODE_TEXT)f=f.split(A);
else if(f.getChildCount()>0)if(A>=f.getChildCount()){f=f.append(a.document.createText(""));o=true}else f=f.getChild(A);if(e.type==CKEDITOR.NODE_TEXT){e.split(i);e.equals(f)&&(f=e.getNext())}else if(i)if(i>=e.getChildCount()){e=e.append(a.document.createText(""));h=true}else e=e.getChild(i).getPrevious();else{e=e.append(a.document.createText(""),1);h=true}var i=e.getParents(),A=f.getParents(),l,p,r;for(l=0;l<i.length;l++){p=i[l];r=A[l];if(!p.equals(r))break}for(var n=c,g,C,j,F=l;F<i.length;F++){g=
i[F];n&&!g.equals(e)&&(C=n.append(g.clone()));for(g=g.getNext();g;){if(g.equals(A[F])||g.equals(f))break;j=g.getNext();if(b==2)n.append(g.clone(true));else{g.remove();b==1&&n.append(g)}g=j}n&&(n=C)}n=c;for(c=l;c<A.length;c++){g=A[c];b>0&&!g.equals(f)&&(C=n.append(g.clone()));if(!i[c]||g.$.parentNode!=i[c].$.parentNode)for(g=g.getPrevious();g;){if(g.equals(i[c])||g.equals(e))break;j=g.getPrevious();if(b==2)n.$.insertBefore(g.$.cloneNode(true),n.$.firstChild);else{g.remove();b==1&&n.$.insertBefore(g.$,
n.$.firstChild)}g=j}n&&(n=C)}if(b==2){p=a.startContainer;if(p.type==CKEDITOR.NODE_TEXT){p.$.data=p.$.data+p.$.nextSibling.data;p.$.parentNode.removeChild(p.$.nextSibling)}a=a.endContainer;if(a.type==CKEDITOR.NODE_TEXT&&a.$.nextSibling){a.$.data=a.$.data+a.$.nextSibling.data;a.$.parentNode.removeChild(a.$.nextSibling)}}else{if(p&&r&&(e.$.parentNode!=p.$.parentNode||f.$.parentNode!=r.$.parentNode)){b=r.getIndex();h&&r.$.parentNode==e.$.parentNode&&b--;if(d&&p.type==CKEDITOR.NODE_ELEMENT){d=CKEDITOR.dom.element.createFromHtml('<span data-cke-bookmark="1" style="display:none">&nbsp;</span>',
a.document);d.insertAfter(p);p.mergeSiblings(false);a.moveToBookmark({startNode:d})}else a.setStart(r.getParent(),b)}a.collapse(true)}h&&e.remove();o&&f.$.parentNode&&f.remove()},d={abbr:1,acronym:1,b:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,q:1,samp:1,small:1,span:1,strike:1,strong:1,sub:1,sup:1,tt:1,u:1,"var":1},h=CKEDITOR.dom.walker.bogus(),k=/^[\t\r\n ]*(?:&nbsp;|\xa0)$/,j=CKEDITOR.dom.walker.editable(),g=CKEDITOR.dom.walker.ignored(true);CKEDITOR.dom.range.prototype=
{clone:function(){var a=new CKEDITOR.dom.range(this.root);a._setStartContainer(this.startContainer);a.startOffset=this.startOffset;a._setEndContainer(this.endContainer);a.endOffset=this.endOffset;a.collapsed=this.collapsed;return a},collapse:function(a){if(a){this._setEndContainer(this.startContainer);this.endOffset=this.startOffset}else{this._setStartContainer(this.endContainer);this.startOffset=this.endOffset}this.collapsed=true},cloneContents:function(){var a=new CKEDITOR.dom.documentFragment(this.document);
this.collapsed||e(this,2,a);return a},deleteContents:function(a){this.collapsed||e(this,0,null,a)},extractContents:function(a){var b=new CKEDITOR.dom.documentFragment(this.document);this.collapsed||e(this,1,b,a);return b},createBookmark:function(a){var b,c,d,e,f=this.collapsed;b=this.document.createElement("span");b.data("cke-bookmark",1);b.setStyle("display","none");b.setHtml("&nbsp;");if(a){d="cke_bm_"+CKEDITOR.tools.getNextNumber();b.setAttribute("id",d+(f?"C":"S"))}if(!f){c=b.clone();c.setHtml("&nbsp;");
a&&c.setAttribute("id",d+"E");e=this.clone();e.collapse();e.insertNode(c)}e=this.clone();e.collapse(true);e.insertNode(b);if(c){this.setStartAfter(b);this.setEndBefore(c)}else this.moveToPosition(b,CKEDITOR.POSITION_AFTER_END);return{startNode:a?d+(f?"C":"S"):b,endNode:a?d+"E":c,serializable:a,collapsed:f}},createBookmark2:function(){function a(c){var d=c.container,e=c.offset,f;f=d;var m=e;f=f.type!=CKEDITOR.NODE_ELEMENT||m===0||m==f.getChildCount()?0:f.getChild(m-1).type==CKEDITOR.NODE_TEXT&&f.getChild(m).type==
CKEDITOR.NODE_TEXT;if(f){d=d.getChild(e-1);e=d.getLength()}d.type==CKEDITOR.NODE_ELEMENT&&e>1&&(e=d.getChild(e-1).getIndex(true)+1);if(d.type==CKEDITOR.NODE_TEXT){f=d;for(m=0;(f=f.getPrevious())&&f.type==CKEDITOR.NODE_TEXT;)m=m+f.getLength();f=m;if(d.getText())e=e+f;else{m=d.getPrevious(b);if(f){e=f;d=m?m.getNext():d.getParent().getFirst()}else{d=d.getParent();e=m?m.getIndex(true)+1:0}}}c.container=d;c.offset=e}var b=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_TEXT,true);return function(b){var c=this.collapsed,
d={container:this.startContainer,offset:this.startOffset},e={container:this.endContainer,offset:this.endOffset};if(b){a(d);c||a(e)}return{start:d.container.getAddress(b),end:c?null:e.container.getAddress(b),startOffset:d.offset,endOffset:e.offset,normalized:b,collapsed:c,is2:true}}}(),moveToBookmark:function(a){if(a.is2){var b=this.document.getByAddress(a.start,a.normalized),c=a.startOffset,d=a.end&&this.document.getByAddress(a.end,a.normalized),a=a.endOffset;this.setStart(b,c);d?this.setEnd(d,a):
this.collapse(true)}else{b=(c=a.serializable)?this.document.getById(a.startNode):a.startNode;a=c?this.document.getById(a.endNode):a.endNode;this.setStartBefore(b);b.remove();if(a){this.setEndBefore(a);a.remove()}else this.collapse(true)}},getBoundaryNodes:function(){var a=this.startContainer,b=this.endContainer,c=this.startOffset,d=this.endOffset,e;if(a.type==CKEDITOR.NODE_ELEMENT){e=a.getChildCount();if(e>c)a=a.getChild(c);else if(e<1)a=a.getPreviousSourceNode();else{for(a=a.$;a.lastChild;)a=a.lastChild;
a=new CKEDITOR.dom.node(a);a=a.getNextSourceNode()||a}}if(b.type==CKEDITOR.NODE_ELEMENT){e=b.getChildCount();if(e>d)b=b.getChild(d).getPreviousSourceNode(true);else if(e<1)b=b.getPreviousSourceNode();else{for(b=b.$;b.lastChild;)b=b.lastChild;b=new CKEDITOR.dom.node(b)}}a.getPosition(b)&CKEDITOR.POSITION_FOLLOWING&&(a=b);return{startNode:a,endNode:b}},getCommonAncestor:function(a,b){var c=this.startContainer,d=this.endContainer,c=c.equals(d)?a&&c.type==CKEDITOR.NODE_ELEMENT&&this.startOffset==this.endOffset-
1?c.getChild(this.startOffset):c:c.getCommonAncestor(d);return b&&!c.is?c.getParent():c},optimize:function(){var a=this.startContainer,b=this.startOffset;a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setStartAfter(a):this.setStartBefore(a));a=this.endContainer;b=this.endOffset;a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setEndAfter(a):this.setEndBefore(a))},optimizeBookmark:function(){var a=this.startContainer,b=this.endContainer;a.is&&(a.is("span")&&a.data("cke-bookmark"))&&
this.setStartAt(a,CKEDITOR.POSITION_BEFORE_START);b&&(b.is&&b.is("span")&&b.data("cke-bookmark"))&&this.setEndAt(b,CKEDITOR.POSITION_AFTER_END)},trim:function(a,b){var c=this.startContainer,d=this.startOffset,e=this.collapsed;if((!a||e)&&c&&c.type==CKEDITOR.NODE_TEXT){if(d)if(d>=c.getLength()){d=c.getIndex()+1;c=c.getParent()}else{var f=c.split(d),d=c.getIndex()+1,c=c.getParent();if(this.startContainer.equals(this.endContainer))this.setEnd(f,this.endOffset-this.startOffset);else if(c.equals(this.endContainer))this.endOffset=
this.endOffset+1}else{d=c.getIndex();c=c.getParent()}this.setStart(c,d);if(e){this.collapse(true);return}}c=this.endContainer;d=this.endOffset;if(!b&&!e&&c&&c.type==CKEDITOR.NODE_TEXT){if(d){d>=c.getLength()||c.split(d);d=c.getIndex()+1}else d=c.getIndex();c=c.getParent();this.setEnd(c,d)}},enlarge:function(a,b){function c(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.hasAttribute("contenteditable")?null:a}var d=RegExp(/[^\s\ufeff]/);switch(a){case CKEDITOR.ENLARGE_INLINE:var e=1;case CKEDITOR.ENLARGE_ELEMENT:if(this.collapsed)break;
var f=this.getCommonAncestor(),i=this.root,h,g,o,l,p,r=false,n,j;n=this.startContainer;var C=this.startOffset;if(n.type==CKEDITOR.NODE_TEXT){if(C){n=!CKEDITOR.tools.trim(n.substring(0,C)).length&&n;r=!!n}if(n&&!(l=n.getPrevious()))o=n.getParent()}else{C&&(l=n.getChild(C-1)||n.getLast());l||(o=n)}for(o=c(o);o||l;){if(o&&!l){!p&&o.equals(f)&&(p=true);if(e?o.isBlockBoundary():!i.contains(o))break;if(!r||o.getComputedStyle("display")!="inline"){r=false;p?h=o:this.setStartBefore(o)}l=o.getPrevious()}for(;l;){n=
false;if(l.type==CKEDITOR.NODE_COMMENT)l=l.getPrevious();else{if(l.type==CKEDITOR.NODE_TEXT){j=l.getText();d.test(j)&&(l=null);n=/[\s\ufeff]$/.test(j)}else if((l.$.offsetWidth>(CKEDITOR.env.webkit?1:0)||b&&l.is("br"))&&!l.data("cke-bookmark"))if(r&&CKEDITOR.dtd.$removeEmpty[l.getName()]){j=l.getText();if(d.test(j))l=null;else for(var C=l.$.getElementsByTagName("*"),k=0,F;F=C[k++];)if(!CKEDITOR.dtd.$removeEmpty[F.nodeName.toLowerCase()]){l=null;break}l&&(n=!!j.length)}else l=null;n&&(r?p?h=o:o&&this.setStartBefore(o):
r=true);if(l){n=l.getPrevious();if(!o&&!n){o=l;l=null;break}l=n}else o=null}}o&&(o=c(o.getParent()))}n=this.endContainer;C=this.endOffset;o=l=null;p=r=false;var K=function(a,b){var c=new CKEDITOR.dom.range(i);c.setStart(a,b);c.setEndAt(i,CKEDITOR.POSITION_BEFORE_END);var c=new CKEDITOR.dom.walker(c),e;for(c.guard=function(a){return!(a.type==CKEDITOR.NODE_ELEMENT&&a.isBlockBoundary())};e=c.next();){if(e.type!=CKEDITOR.NODE_TEXT)return false;j=e!=a?e.getText():e.substring(b);if(d.test(j))return false}return true};
if(n.type==CKEDITOR.NODE_TEXT)if(CKEDITOR.tools.trim(n.substring(C)).length)r=true;else{r=!n.getLength();if(C==n.getLength()){if(!(l=n.getNext()))o=n.getParent()}else K(n,C)&&(o=n.getParent())}else(l=n.getChild(C))||(o=n);for(;o||l;){if(o&&!l){!p&&o.equals(f)&&(p=true);if(e?o.isBlockBoundary():!i.contains(o))break;if(!r||o.getComputedStyle("display")!="inline"){r=false;p?g=o:o&&this.setEndAfter(o)}l=o.getNext()}for(;l;){n=false;if(l.type==CKEDITOR.NODE_TEXT){j=l.getText();K(l,0)||(l=null);n=/^[\s\ufeff]/.test(j)}else if(l.type==
CKEDITOR.NODE_ELEMENT){if((l.$.offsetWidth>0||b&&l.is("br"))&&!l.data("cke-bookmark"))if(r&&CKEDITOR.dtd.$removeEmpty[l.getName()]){j=l.getText();if(d.test(j))l=null;else{C=l.$.getElementsByTagName("*");for(k=0;F=C[k++];)if(!CKEDITOR.dtd.$removeEmpty[F.nodeName.toLowerCase()]){l=null;break}}l&&(n=!!j.length)}else l=null}else n=1;n&&r&&(p?g=o:this.setEndAfter(o));if(l){n=l.getNext();if(!o&&!n){o=l;l=null;break}l=n}else o=null}o&&(o=c(o.getParent()))}if(h&&g){f=h.contains(g)?g:h;this.setStartBefore(f);
this.setEndAfter(f)}break;case CKEDITOR.ENLARGE_BLOCK_CONTENTS:case CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:o=new CKEDITOR.dom.range(this.root);i=this.root;o.setStartAt(i,CKEDITOR.POSITION_AFTER_START);o.setEnd(this.startContainer,this.startOffset);o=new CKEDITOR.dom.walker(o);var I,v,G=CKEDITOR.dom.walker.blockBoundary(a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?{br:1}:null),z=null,B=function(a){if(a.type==CKEDITOR.NODE_ELEMENT&&a.getAttribute("contenteditable")=="false")if(z){if(z.equals(a)){z=null;return}}else z=
a;else if(z)return;var b=G(a);b||(I=a);return b},e=function(a){var b=B(a);!b&&(a.is&&a.is("br"))&&(v=a);return b};o.guard=B;o=o.lastBackward();I=I||i;this.setStartAt(I,!I.is("br")&&(!o&&this.checkStartOfBlock()||o&&I.contains(o))?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_AFTER_END);if(a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS){o=this.clone();o=new CKEDITOR.dom.walker(o);var x=CKEDITOR.dom.walker.whitespaces(),E=CKEDITOR.dom.walker.bookmark();o.evaluator=function(a){return!x(a)&&!E(a)};if((o=o.previous())&&
o.type==CKEDITOR.NODE_ELEMENT&&o.is("br"))break}o=this.clone();o.collapse();o.setEndAt(i,CKEDITOR.POSITION_BEFORE_END);o=new CKEDITOR.dom.walker(o);o.guard=a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?e:B;I=z=v=null;o=o.lastForward();I=I||i;this.setEndAt(I,!o&&this.checkEndOfBlock()||o&&I.contains(o)?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_BEFORE_START);v&&this.setEndAfter(v)}},shrink:function(a,b,c){if(!this.collapsed){var a=a||CKEDITOR.SHRINK_TEXT,d=this.clone(),e=this.startContainer,f=this.endContainer,
i=this.startOffset,h=this.endOffset,g=1,o=1;if(e&&e.type==CKEDITOR.NODE_TEXT)if(i)if(i>=e.getLength())d.setStartAfter(e);else{d.setStartBefore(e);g=0}else d.setStartBefore(e);if(f&&f.type==CKEDITOR.NODE_TEXT)if(h)if(h>=f.getLength())d.setEndAfter(f);else{d.setEndAfter(f);o=0}else d.setEndBefore(f);var d=new CKEDITOR.dom.walker(d),l=CKEDITOR.dom.walker.bookmark();d.evaluator=function(b){return b.type==(a==CKEDITOR.SHRINK_ELEMENT?CKEDITOR.NODE_ELEMENT:CKEDITOR.NODE_TEXT)};var p;d.guard=function(b,d){if(l(b))return true;
if(a==CKEDITOR.SHRINK_ELEMENT&&b.type==CKEDITOR.NODE_TEXT||d&&b.equals(p)||c===false&&b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary()||b.type==CKEDITOR.NODE_ELEMENT&&b.hasAttribute("contenteditable"))return false;!d&&b.type==CKEDITOR.NODE_ELEMENT&&(p=b);return true};if(g)(e=d[a==CKEDITOR.SHRINK_ELEMENT?"lastForward":"next"]())&&this.setStartAt(e,b?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_START);if(o){d.reset();(d=d[a==CKEDITOR.SHRINK_ELEMENT?"lastBackward":"previous"]())&&this.setEndAt(d,
b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_END)}return!(!g&&!o)}},insertNode:function(a){this.optimizeBookmark();this.trim(false,true);var b=this.startContainer,c=b.getChild(this.startOffset);c?a.insertBefore(c):b.append(a);a.getParent()&&a.getParent().equals(this.endContainer)&&this.endOffset++;this.setStartBefore(a)},moveToPosition:function(a,b){this.setStartAt(a,b);this.collapse(true)},moveToRange:function(a){this.setStart(a.startContainer,a.startOffset);this.setEnd(a.endContainer,
a.endOffset)},selectNodeContents:function(a){this.setStart(a,0);this.setEnd(a,a.type==CKEDITOR.NODE_TEXT?a.getLength():a.getChildCount())},setStart:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[a.getName()]){b=a.getIndex();a=a.getParent()}this._setStartContainer(a);this.startOffset=b;if(!this.endContainer){this._setEndContainer(a);this.endOffset=b}c(this)},setEnd:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[a.getName()]){b=a.getIndex()+1;a=a.getParent()}this._setEndContainer(a);
this.endOffset=b;if(!this.startContainer){this._setStartContainer(a);this.startOffset=b}c(this)},setStartAfter:function(a){this.setStart(a.getParent(),a.getIndex()+1)},setStartBefore:function(a){this.setStart(a.getParent(),a.getIndex())},setEndAfter:function(a){this.setEnd(a.getParent(),a.getIndex()+1)},setEndBefore:function(a){this.setEnd(a.getParent(),a.getIndex())},setStartAt:function(a,b){switch(b){case CKEDITOR.POSITION_AFTER_START:this.setStart(a,0);break;case CKEDITOR.POSITION_BEFORE_END:a.type==
CKEDITOR.NODE_TEXT?this.setStart(a,a.getLength()):this.setStart(a,a.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setStartBefore(a);break;case CKEDITOR.POSITION_AFTER_END:this.setStartAfter(a)}c(this)},setEndAt:function(a,b){switch(b){case CKEDITOR.POSITION_AFTER_START:this.setEnd(a,0);break;case CKEDITOR.POSITION_BEFORE_END:a.type==CKEDITOR.NODE_TEXT?this.setEnd(a,a.getLength()):this.setEnd(a,a.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setEndBefore(a);break;
case CKEDITOR.POSITION_AFTER_END:this.setEndAfter(a)}c(this)},fixBlock:function(a,b){var c=this.createBookmark(),d=this.document.createElement(b);this.collapse(a);this.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS);this.extractContents().appendTo(d);d.trim();d.appendBogus();this.insertNode(d);this.moveToBookmark(c);return d},splitBlock:function(a){var b=new CKEDITOR.dom.elementPath(this.startContainer,this.root),c=new CKEDITOR.dom.elementPath(this.endContainer,this.root),d=b.block,e=c.block,f=null;if(!b.blockLimit.equals(c.blockLimit))return null;
if(a!="br"){if(!d){d=this.fixBlock(true,a);e=(new CKEDITOR.dom.elementPath(this.endContainer,this.root)).block}e||(e=this.fixBlock(false,a))}a=d&&this.checkStartOfBlock();b=e&&this.checkEndOfBlock();this.deleteContents();if(d&&d.equals(e))if(b){f=new CKEDITOR.dom.elementPath(this.startContainer,this.root);this.moveToPosition(e,CKEDITOR.POSITION_AFTER_END);e=null}else if(a){f=new CKEDITOR.dom.elementPath(this.startContainer,this.root);this.moveToPosition(d,CKEDITOR.POSITION_BEFORE_START);d=null}else{e=
this.splitElement(d);d.is("ul","ol")||d.appendBogus()}return{previousBlock:d,nextBlock:e,wasStartOfBlock:a,wasEndOfBlock:b,elementPath:f}},splitElement:function(a){if(!this.collapsed)return null;this.setEndAt(a,CKEDITOR.POSITION_BEFORE_END);var b=this.extractContents(),c=a.clone(false);b.appendTo(c);c.insertAfter(a);this.moveToPosition(a,CKEDITOR.POSITION_AFTER_END);return c},removeEmptyBlocksAtEnd:function(){function a(d){return function(a){return b(a)||(c(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.isEmptyInlineRemoveable())||
d.is("table")&&a.is("caption")?false:true}}var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(false);return function(b){for(var c=this.createBookmark(),d=this[b?"endPath":"startPath"](),e=d.block||d.blockLimit,f;e&&!e.equals(d.root)&&!e.getFirst(a(e));){f=e.getParent();this[b?"setEndAt":"setStartAt"](e,CKEDITOR.POSITION_AFTER_END);e.remove(1);e=f}this.moveToBookmark(c)}}(),startPath:function(){return new CKEDITOR.dom.elementPath(this.startContainer,this.root)},endPath:function(){return new CKEDITOR.dom.elementPath(this.endContainer,
this.root)},checkBoundaryOfElement:function(a,b){var c=b==CKEDITOR.START,d=this.clone();d.collapse(c);d[c?"setStartAt":"setEndAt"](a,c?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END);d=new CKEDITOR.dom.walker(d);d.evaluator=f(c);return d[c?"checkBackward":"checkForward"]()},checkStartOfBlock:function(){var b=this.startContainer,c=this.startOffset;if(CKEDITOR.env.ie&&c&&b.type==CKEDITOR.NODE_TEXT){b=CKEDITOR.tools.ltrim(b.substring(0,c));k.test(b)&&this.trim(0,1)}this.trim();b=new CKEDITOR.dom.elementPath(this.startContainer,
this.root);c=this.clone();c.collapse(true);c.setStartAt(b.block||b.blockLimit,CKEDITOR.POSITION_AFTER_START);b=new CKEDITOR.dom.walker(c);b.evaluator=a();return b.checkBackward()},checkEndOfBlock:function(){var b=this.endContainer,c=this.endOffset;if(CKEDITOR.env.ie&&b.type==CKEDITOR.NODE_TEXT){b=CKEDITOR.tools.rtrim(b.substring(c));k.test(b)&&this.trim(1,0)}this.trim();b=new CKEDITOR.dom.elementPath(this.endContainer,this.root);c=this.clone();c.collapse(false);c.setEndAt(b.block||b.blockLimit,CKEDITOR.POSITION_BEFORE_END);
b=new CKEDITOR.dom.walker(c);b.evaluator=a();return b.checkForward()},getPreviousNode:function(a,b,c){var d=this.clone();d.collapse(1);d.setStartAt(c||this.root,CKEDITOR.POSITION_AFTER_START);c=new CKEDITOR.dom.walker(d);c.evaluator=a;c.guard=b;return c.previous()},getNextNode:function(a,b,c){var d=this.clone();d.collapse();d.setEndAt(c||this.root,CKEDITOR.POSITION_BEFORE_END);c=new CKEDITOR.dom.walker(d);c.evaluator=a;c.guard=b;return c.next()},checkReadOnly:function(){function a(b,c){for(;b;){if(b.type==
CKEDITOR.NODE_ELEMENT){if(b.getAttribute("contentEditable")=="false"&&!b.data("cke-editable"))return 0;if(b.is("html")||b.getAttribute("contentEditable")=="true"&&(b.contains(c)||b.equals(c)))break}b=b.getParent()}return 1}return function(){var b=this.startContainer,c=this.endContainer;return!(a(b,c)&&a(c,b))}}(),moveToElementEditablePosition:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&!a.isEditable(false)){this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START);return true}for(var c=
0;a;){if(a.type==CKEDITOR.NODE_TEXT){b&&this.endContainer&&this.checkEndOfBlock()&&k.test(a.getText())?this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START):this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START);c=1;break}if(a.type==CKEDITOR.NODE_ELEMENT)if(a.isEditable()){this.moveToPosition(a,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_START);c=1}else if(b&&a.is("br")&&this.endContainer&&this.checkEndOfBlock())this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START);
else if(a.getAttribute("contenteditable")=="false"&&a.is(CKEDITOR.dtd.$block)){this.setStartBefore(a);this.setEndAfter(a);return true}var d=a,e=c,f=void 0;d.type==CKEDITOR.NODE_ELEMENT&&d.isEditable(false)&&(f=d[b?"getLast":"getFirst"](g));!e&&!f&&(f=d[b?"getPrevious":"getNext"](g));a=f}return!!c},moveToClosestEditablePosition:function(a,b){var c=new CKEDITOR.dom.range(this.root),d=0,e,f=[CKEDITOR.POSITION_AFTER_END,CKEDITOR.POSITION_BEFORE_START];c.moveToPosition(a,f[b?0:1]);if(a.is(CKEDITOR.dtd.$block)){if(e=
c[b?"getNextEditableNode":"getPreviousEditableNode"]()){d=1;if(e.type==CKEDITOR.NODE_ELEMENT&&e.is(CKEDITOR.dtd.$block)&&e.getAttribute("contenteditable")=="false"){c.setStartAt(e,CKEDITOR.POSITION_BEFORE_START);c.setEndAt(e,CKEDITOR.POSITION_AFTER_END)}else c.moveToPosition(e,f[b?1:0])}}else d=1;d&&this.moveToRange(c);return!!d},moveToElementEditStart:function(a){return this.moveToElementEditablePosition(a)},moveToElementEditEnd:function(a){return this.moveToElementEditablePosition(a,true)},getEnclosedNode:function(){var a=
this.clone();a.optimize();if(a.startContainer.type!=CKEDITOR.NODE_ELEMENT||a.endContainer.type!=CKEDITOR.NODE_ELEMENT)return null;var a=new CKEDITOR.dom.walker(a),b=CKEDITOR.dom.walker.bookmark(false,true),c=CKEDITOR.dom.walker.whitespaces(true);a.evaluator=function(a){return c(a)&&b(a)};var d=a.next();a.reset();return d&&d.equals(a.previous())?d:null},getTouchedStartNode:function(){var a=this.startContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.startOffset)||a},getTouchedEndNode:function(){var a=
this.endContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.endOffset-1)||a},getNextEditableNode:b(),getPreviousEditableNode:b(1),scrollIntoView:function(){var a=new CKEDITOR.dom.element.createFromHtml("<span>&nbsp;</span>",this.document),b,c,d,e=this.clone();e.optimize();if(d=e.startContainer.type==CKEDITOR.NODE_TEXT){c=e.startContainer.getText();b=e.startContainer.split(e.startOffset);a.insertAfter(e.startContainer)}else e.insertNode(a);a.scrollIntoView();if(d){e.startContainer.setText(c);
b.remove()}a.remove()},_setStartContainer:function(a){this.startContainer=a},_setEndContainer:function(a){this.endContainer=a}}})();CKEDITOR.POSITION_AFTER_START=1;CKEDITOR.POSITION_BEFORE_END=2;CKEDITOR.POSITION_BEFORE_START=3;CKEDITOR.POSITION_AFTER_END=4;CKEDITOR.ENLARGE_ELEMENT=1;CKEDITOR.ENLARGE_BLOCK_CONTENTS=2;CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS=3;CKEDITOR.ENLARGE_INLINE=4;CKEDITOR.START=1;CKEDITOR.END=2;CKEDITOR.SHRINK_ELEMENT=1;CKEDITOR.SHRINK_TEXT=2;"use strict";
(function(){function a(a){if(!(arguments.length<1)){this.range=a;this.forceBrBreak=0;this.enlargeBr=1;this.enforceRealBlocks=0;this._||(this._={})}}function f(a){var b=[];a.forEach(function(a){if(a.getAttribute("contenteditable")=="true"){b.push(a);return false}},CKEDITOR.NODE_ELEMENT,true);return b}function b(a,c,d,e){a:{e==null&&(e=f(d));for(var h;h=e.shift();)if(h.getDtd().p){e={element:h,remaining:e};break a}e=null}if(!e)return 0;if((h=CKEDITOR.filter.instances[e.element.data("cke-filter")])&&
!h.check(c))return b(a,c,d,e.remaining);c=new CKEDITOR.dom.range(e.element);c.selectNodeContents(e.element);c=c.createIterator();c.enlargeBr=a.enlargeBr;c.enforceRealBlocks=a.enforceRealBlocks;c.activeFilter=c.filter=h;a._.nestedEditable={element:e.element,container:d,remaining:e.remaining,iterator:c};return 1}function c(a,b,c){if(!b)return false;a=a.clone();a.collapse(!c);return a.checkBoundaryOfElement(b,c?CKEDITOR.START:CKEDITOR.END)}var e=/^[\r\n\t ]+$/,d=CKEDITOR.dom.walker.bookmark(false,true),
h=CKEDITOR.dom.walker.whitespaces(true),k=function(a){return d(a)&&h(a)},j={dd:1,dt:1,li:1};a.prototype={getNextParagraph:function(a){var f,h,s,w,q,a=a||"p";if(this._.nestedEditable){if(f=this._.nestedEditable.iterator.getNextParagraph(a)){this.activeFilter=this._.nestedEditable.iterator.activeFilter;return f}this.activeFilter=this.filter;if(b(this,a,this._.nestedEditable.container,this._.nestedEditable.remaining)){this.activeFilter=this._.nestedEditable.iterator.activeFilter;return this._.nestedEditable.iterator.getNextParagraph(a)}this._.nestedEditable=
null}if(!this.range.root.getDtd()[a])return null;if(!this._.started){var t=this.range.clone();h=t.startPath();var i=t.endPath(),A=!t.collapsed&&c(t,h.block),u=!t.collapsed&&c(t,i.block,1);t.shrink(CKEDITOR.SHRINK_ELEMENT,true);A&&t.setStartAt(h.block,CKEDITOR.POSITION_BEFORE_END);u&&t.setEndAt(i.block,CKEDITOR.POSITION_AFTER_START);h=t.endContainer.hasAscendant("pre",true)||t.startContainer.hasAscendant("pre",true);t.enlarge(this.forceBrBreak&&!h||!this.enlargeBr?CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:
CKEDITOR.ENLARGE_BLOCK_CONTENTS);if(!t.collapsed){h=new CKEDITOR.dom.walker(t.clone());i=CKEDITOR.dom.walker.bookmark(true,true);h.evaluator=i;this._.nextNode=h.next();h=new CKEDITOR.dom.walker(t.clone());h.evaluator=i;h=h.previous();this._.lastNode=h.getNextSourceNode(true,null,t.root);if(this._.lastNode&&this._.lastNode.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(this._.lastNode.getText())&&this._.lastNode.getParent().isBlockBoundary()){i=this.range.clone();i.moveToPosition(this._.lastNode,CKEDITOR.POSITION_AFTER_END);
if(i.checkEndOfBlock()){i=new CKEDITOR.dom.elementPath(i.endContainer,i.root);this._.lastNode=(i.block||i.blockLimit).getNextSourceNode(true)}}if(!this._.lastNode||!t.root.contains(this._.lastNode)){this._.lastNode=this._.docEndMarker=t.document.createText("");this._.lastNode.insertAfter(h)}t=null}this._.started=1;h=t}i=this._.nextNode;t=this._.lastNode;for(this._.nextNode=null;i;){var A=0,u=i.hasAscendant("pre"),o=i.type!=CKEDITOR.NODE_ELEMENT,l=0;if(o)i.type==CKEDITOR.NODE_TEXT&&e.test(i.getText())&&
(o=0);else{var p=i.getName();if(CKEDITOR.dtd.$block[p]&&i.getAttribute("contenteditable")=="false"){f=i;b(this,a,f);break}else if(i.isBlockBoundary(this.forceBrBreak&&!u&&{br:1})){if(p=="br")o=1;else if(!h&&!i.getChildCount()&&p!="hr"){f=i;s=i.equals(t);break}if(h){h.setEndAt(i,CKEDITOR.POSITION_BEFORE_START);if(p!="br")this._.nextNode=i}A=1}else{if(i.getFirst()){if(!h){h=this.range.clone();h.setStartAt(i,CKEDITOR.POSITION_BEFORE_START)}i=i.getFirst();continue}o=1}}if(o&&!h){h=this.range.clone();
h.setStartAt(i,CKEDITOR.POSITION_BEFORE_START)}s=(!A||o)&&i.equals(t);if(h&&!A)for(;!i.getNext(k)&&!s;){p=i.getParent();if(p.isBlockBoundary(this.forceBrBreak&&!u&&{br:1})){A=1;o=0;s||p.equals(t);h.setEndAt(p,CKEDITOR.POSITION_BEFORE_END);break}i=p;o=1;s=i.equals(t);l=1}o&&h.setEndAt(i,CKEDITOR.POSITION_AFTER_END);i=this._getNextSourceNode(i,l,t);if((s=!i)||A&&h)break}if(!f){if(!h){this._.docEndMarker&&this._.docEndMarker.remove();return this._.nextNode=null}f=new CKEDITOR.dom.elementPath(h.startContainer,
h.root);i=f.blockLimit;A={div:1,th:1,td:1};f=f.block;if(!f&&i&&!this.enforceRealBlocks&&A[i.getName()]&&h.checkStartOfBlock()&&h.checkEndOfBlock()&&!i.equals(h.root))f=i;else if(!f||this.enforceRealBlocks&&f.is(j)){f=this.range.document.createElement(a);h.extractContents().appendTo(f);f.trim();h.insertNode(f);w=q=true}else if(f.getName()!="li"){if(!h.checkStartOfBlock()||!h.checkEndOfBlock()){f=f.clone(false);h.extractContents().appendTo(f);f.trim();q=h.splitBlock();w=!q.wasStartOfBlock;q=!q.wasEndOfBlock;
h.insertNode(f)}}else if(!s)this._.nextNode=f.equals(t)?null:this._getNextSourceNode(h.getBoundaryNodes().endNode,1,t)}if(w)(w=f.getPrevious())&&w.type==CKEDITOR.NODE_ELEMENT&&(w.getName()=="br"?w.remove():w.getLast()&&w.getLast().$.nodeName.toLowerCase()=="br"&&w.getLast().remove());if(q)(w=f.getLast())&&w.type==CKEDITOR.NODE_ELEMENT&&w.getName()=="br"&&(!CKEDITOR.env.needsBrFiller||w.getPrevious(d)||w.getNext(d))&&w.remove();if(!this._.nextNode)this._.nextNode=s||f.equals(t)||!t?null:this._getNextSourceNode(f,
1,t);return f},_getNextSourceNode:function(a,b,c){function e(a){return!(a.equals(c)||a.equals(f))}for(var f=this.range.root,a=a.getNextSourceNode(b,null,e);!d(a);)a=a.getNextSourceNode(b,null,e);return a}};CKEDITOR.dom.range.prototype.createIterator=function(){return new a(this)}})();
CKEDITOR.command=function(a,f){this.uiItems=[];this.exec=function(b){if(this.state==CKEDITOR.TRISTATE_DISABLED||!this.checkAllowed())return false;this.editorFocus&&a.focus();return this.fire("exec")===false?true:f.exec.call(this,a,b)!==false};this.refresh=function(a,b){if(!this.readOnly&&a.readOnly)return true;if(this.context&&!b.isContextFor(this.context)){this.disable();return true}if(!this.checkAllowed(true)){this.disable();return true}this.startDisabled||this.enable();this.modes&&!this.modes[a.mode]&&
this.disable();return this.fire("refresh",{editor:a,path:b})===false?true:f.refresh&&f.refresh.apply(this,arguments)!==false};var b;this.checkAllowed=function(c){return!c&&typeof b=="boolean"?b:b=a.activeFilter.checkFeature(this)};CKEDITOR.tools.extend(this,f,{modes:{wysiwyg:1},editorFocus:1,contextSensitive:!!f.context,state:CKEDITOR.TRISTATE_DISABLED});CKEDITOR.event.call(this)};
CKEDITOR.command.prototype={enable:function(){this.state==CKEDITOR.TRISTATE_DISABLED&&this.checkAllowed()&&this.setState(!this.preserveState||typeof this.previousState=="undefined"?CKEDITOR.TRISTATE_OFF:this.previousState)},disable:function(){this.setState(CKEDITOR.TRISTATE_DISABLED)},setState:function(a){if(this.state==a||a!=CKEDITOR.TRISTATE_DISABLED&&!this.checkAllowed())return false;this.previousState=this.state;this.state=a;this.fire("state");return true},toggleState:function(){this.state==CKEDITOR.TRISTATE_OFF?
this.setState(CKEDITOR.TRISTATE_ON):this.state==CKEDITOR.TRISTATE_ON&&this.setState(CKEDITOR.TRISTATE_OFF)}};CKEDITOR.event.implementOn(CKEDITOR.command.prototype);CKEDITOR.ENTER_P=1;CKEDITOR.ENTER_BR=2;CKEDITOR.ENTER_DIV=3;
CKEDITOR.config={customConfig:"config.js",autoUpdateElement:!0,language:"",defaultLanguage:"en",contentsLangDirection:"",enterMode:CKEDITOR.ENTER_P,forceEnterMode:!1,shiftEnterMode:CKEDITOR.ENTER_BR,docType:"<!DOCTYPE html>",bodyId:"",bodyClass:"",fullPage:!1,height:200,extraPlugins:"",removePlugins:"",protectedSource:[],tabIndex:0,width:"",baseFloatZIndex:1E4,blockedKeystrokes:[CKEDITOR.CTRL+66,CKEDITOR.CTRL+73,CKEDITOR.CTRL+85]};
(function(){function a(a,b,c,d,e){var f,p,a=[];for(f in b){p=b[f];p=typeof p=="boolean"?{}:typeof p=="function"?{match:p}:K(p);if(f.charAt(0)!="$")p.elements=f;if(c)p.featureName=c.toLowerCase();var i=p;i.elements=h(i.elements,/\s+/)||null;i.propertiesOnly=i.propertiesOnly||i.elements===true;var l=/\s*,\s*/,r=void 0;for(r in z){i[r]=h(i[r],l)||null;var x=i,n=B[r],v=h(i[B[r]],l),q=i[r],E=[],g=true,o=void 0;v?g=false:v={};for(o in q)if(o.charAt(0)=="!"){o=o.slice(1);E.push(o);v[o]=true;g=false}for(;o=
E.pop();){q[o]=q["!"+o];delete q["!"+o]}x[n]=(g?false:v)||null}i.match=i.match||null;d.push(p);a.push(p)}for(var b=e.elements,e=e.generic,C,c=0,d=a.length;c<d;++c){f=K(a[c]);p=f.classes===true||f.styles===true||f.attributes===true;i=f;r=n=l=void 0;for(l in z)i[l]=A(i[l]);x=true;for(r in B){l=B[r];n=i[l];v=[];q=void 0;for(q in n)q.indexOf("*")>-1?v.push(RegExp("^"+q.replace(/\*/g,".*")+"$")):v.push(q);n=v;if(n.length){i[l]=n;x=false}}i.nothingRequired=x;i.noProperties=!(i.attributes||i.classes||i.styles);
if(f.elements===true||f.elements===null)e[p?"unshift":"push"](f);else{i=f.elements;delete f.elements;for(C in i)if(b[C])b[C][p?"unshift":"push"](f);else b[C]=[f]}}}function f(a,c,d,e){if(!a.match||a.match(c))if(e||k(a,c)){if(!a.propertiesOnly)d.valid=true;if(!d.allAttributes)d.allAttributes=b(a.attributes,c.attributes,d.validAttributes);if(!d.allStyles)d.allStyles=b(a.styles,c.styles,d.validStyles);if(!d.allClasses){a=a.classes;c=c.classes;e=d.validClasses;if(a)if(a===true)a=true;else{for(var f=0,
p=c.length,i;f<p;++f){i=c[f];e[i]||(e[i]=a(i))}a=false}else a=false;d.allClasses=a}}}function b(a,b,c){if(!a)return false;if(a===true)return true;for(var d in b)c[d]||(c[d]=a(d));return false}function c(a,b,c){if(!a.match||a.match(b)){if(a.noProperties)return false;c.hadInvalidAttribute=e(a.attributes,b.attributes)||c.hadInvalidAttribute;c.hadInvalidStyle=e(a.styles,b.styles)||c.hadInvalidStyle;a=a.classes;b=b.classes;if(a){for(var d=false,f=a===true,p=b.length;p--;)if(f||a(b[p])){b.splice(p,1);d=
true}a=d}else a=false;c.hadInvalidClass=a||c.hadInvalidClass}}function e(a,b){if(!a)return false;var c=false,d=a===true,e;for(e in b)if(d||a(e)){delete b[e];c=true}return c}function d(a,b,c){if(a.disabled||a.customConfig&&!c||!b)return false;a._.cachedChecks={};return true}function h(a,b){if(!a)return false;if(a===true)return a;if(typeof a=="string"){a=I(a);return a=="*"?true:CKEDITOR.tools.convertArrayToObject(a.split(b))}if(CKEDITOR.tools.isArray(a))return a.length?CKEDITOR.tools.convertArrayToObject(a):
false;var c={},d=0,e;for(e in a){c[e]=a[e];d++}return d?c:false}function k(a,b){if(a.nothingRequired)return true;var c,d,e,f;if(e=a.requiredClasses){f=b.classes;for(c=0;c<e.length;++c){d=e[c];if(typeof d=="string"){if(CKEDITOR.tools.indexOf(f,d)==-1)return false}else if(!CKEDITOR.tools.checkIfAnyArrayItemMatches(f,d))return false}}return j(b.styles,a.requiredStyles)&&j(b.attributes,a.requiredAttributes)}function j(a,b){if(!b)return true;for(var c=0,d;c<b.length;++c){d=b[c];if(typeof d=="string"){if(!(d in
a))return false}else if(!CKEDITOR.tools.checkIfAnyObjectPropertyMatches(a,d))return false}return true}function g(a){if(!a)return{};for(var a=a.split(/\s*,\s*/).sort(),b={};a.length;)b[a.shift()]=v;return b}function m(a){for(var b,c,d,e,f={},p=1,a=I(a);b=a.match(x);){if(c=b[2]){d=y(c,"styles");e=y(c,"attrs");c=y(c,"classes")}else d=e=c=null;f["$"+p++]={elements:b[1],classes:c,styles:d,attributes:e};a=a.slice(b[0].length)}return f}function y(a,b){var c=a.match(E[b]);return c?I(c[1]):null}function s(a){var b=
a.styleBackup=a.attributes.style,c=a.classBackup=a.attributes["class"];if(!a.styles)a.styles=CKEDITOR.tools.parseCssText(b||"",1);if(!a.classes)a.classes=c?c.split(/\s+/):[]}function w(a,b,d,e){var l=0,r;if(e.toHtml)b.name=b.name.replace($,"$1");if(e.doCallbacks&&a.elementCallbacks){a:for(var x=a.elementCallbacks,h=0,n=x.length,v;h<n;++h)if(v=x[h](b)){r=v;break a}if(r)return r}if(e.doTransform)if(r=a._.transformations[b.name]){s(b);for(x=0;x<r.length;++x)p(a,b,r[x]);t(b)}if(e.doFilter){a:{x=b.name;
h=a._;a=h.allowedRules.elements[x];r=h.allowedRules.generic;x=h.disallowedRules.elements[x];h=h.disallowedRules.generic;n=e.skipRequired;v={valid:false,validAttributes:{},validClasses:{},validStyles:{},allAttributes:false,allClasses:false,allStyles:false,hadInvalidAttribute:false,hadInvalidClass:false,hadInvalidStyle:false};var q,z;if(!a&&!r)a=null;else{s(b);if(x){q=0;for(z=x.length;q<z;++q)if(c(x[q],b,v)===false){a=null;break a}}if(h){q=0;for(z=h.length;q<z;++q)c(h[q],b,v)}if(a){q=0;for(z=a.length;q<
z;++q)f(a[q],b,v,n)}if(r){q=0;for(z=r.length;q<z;++q)f(r[q],b,v,n)}a=v}}if(!a){d.push(b);return F}if(!a.valid){d.push(b);return F}z=a.validAttributes;var E=a.validStyles;r=a.validClasses;var x=b.attributes,A=b.styles,h=b.classes,n=b.classBackup,o=b.styleBackup,g,B,C=[];v=[];var j=/^data-cke-/;q=false;delete x.style;delete x["class"];delete b.classBackup;delete b.styleBackup;if(!a.allAttributes)for(g in x)if(!z[g])if(j.test(g)){if(g!=(B=g.replace(/^data-cke-saved-/,""))&&!z[B]){delete x[g];q=true}}else{delete x[g];
q=true}if(!a.allStyles||a.hadInvalidStyle){for(g in A)a.allStyles||E[g]?C.push(g+":"+A[g]):q=true;if(C.length)x.style=C.sort().join("; ")}else if(o)x.style=o;if(!a.allClasses||a.hadInvalidClass){for(g=0;g<h.length;++g)(a.allClasses||r[h[g]])&&v.push(h[g]);v.length&&(x["class"]=v.sort().join(" "));n&&v.length<n.split(/\s+/).length&&(q=true)}else n&&(x["class"]=n);q&&(l=F);if(!e.skipFinalValidation&&!i(b)){d.push(b);return F}}if(e.toHtml)b.name=b.name.replace(aa,"cke:$1");return l}function q(a){var b=
[],c;for(c in a)c.indexOf("*")>-1&&b.push(c.replace(/\*/g,".*"));return b.length?RegExp("^(?:"+b.join("|")+")$"):null}function t(a){var b=a.attributes,c;delete b.style;delete b["class"];if(c=CKEDITOR.tools.writeCssText(a.styles,true))b.style=c;a.classes.length&&(b["class"]=a.classes.sort().join(" "))}function i(a){switch(a.name){case "a":if(!a.children.length&&!a.attributes.name)return false;break;case "img":if(!a.attributes.src)return false}return true}function A(a){if(!a)return false;if(a===true)return true;
var b=q(a);return function(c){return c in a||b&&c.match(b)}}function u(){return new CKEDITOR.htmlParser.element("br")}function o(a){return a.type==CKEDITOR.NODE_ELEMENT&&(a.name=="br"||L.$block[a.name])}function l(a,b,c){var d=a.name;if(L.$empty[d]||!a.children.length)if(d=="hr"&&b=="br")a.replaceWith(u());else{a.parent&&c.push({check:"it",el:a.parent});a.remove()}else if(L.$block[d]||d=="tr")if(b=="br"){if(a.previous&&!o(a.previous)){b=u();b.insertBefore(a)}if(a.next&&!o(a.next)){b=u();b.insertAfter(a)}a.replaceWithChildren()}else{var d=
a.children,e;b:{e=L[b];for(var f=0,p=d.length,i;f<p;++f){i=d[f];if(i.type==CKEDITOR.NODE_ELEMENT&&!e[i.name]){e=false;break b}}e=true}if(e){a.name=b;a.attributes={};c.push({check:"parent-down",el:a})}else{e=a.parent;for(var f=e.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||e.name=="body",l,r,p=d.length;p>0;){i=d[--p];if(f&&(i.type==CKEDITOR.NODE_TEXT||i.type==CKEDITOR.NODE_ELEMENT&&L.$inline[i.name])){if(!l){l=new CKEDITOR.htmlParser.element(b);l.insertAfter(a);c.push({check:"parent-down",el:l})}l.add(i,
0)}else{l=null;r=L[e.name]||L.span;i.insertAfter(a);e.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT&&(i.type==CKEDITOR.NODE_ELEMENT&&!r[i.name])&&c.push({check:"el-up",el:i})}}a.remove()}}else if(d=="style")a.remove();else{a.parent&&c.push({check:"it",el:a.parent});a.replaceWithChildren()}}function p(a,b,c){var d,e;for(d=0;d<c.length;++d){e=c[d];if((!e.check||a.check(e.check,false))&&(!e.left||e.left(b))){e.right(b,ba);break}}}function r(a,b){var c=b.getDefinition(),d=c.attributes,e=c.styles,f,p,i,l;if(a.name!=
c.element)return false;for(f in d)if(f=="class"){c=d[f].split(/\s+/);for(i=a.classes.join("|");l=c.pop();)if(i.indexOf(l)==-1)return false}else if(a.attributes[f]!=d[f])return false;for(p in e)if(a.styles[p]!=e[p])return false;return true}function n(a,b){var c,d;if(typeof a=="string")c=a;else if(a instanceof CKEDITOR.style)d=a;else{c=a[0];d=a[1]}return[{element:c,left:d,right:function(a,c){c.transform(a,b)}}]}function P(a){return function(b){return r(b,a)}}function C(a){return function(b,c){c[a](b)}}
var L=CKEDITOR.dtd,F=1,K=CKEDITOR.tools.copy,I=CKEDITOR.tools.trim,v="cke-test",G=["","p","br","div"];CKEDITOR.FILTER_SKIP_TREE=2;CKEDITOR.filter=function(a){this.allowedContent=[];this.disallowedContent=[];this.elementCallbacks=null;this.disabled=false;this.editor=null;this.id=CKEDITOR.tools.getNextNumber();this._={allowedRules:{elements:{},generic:[]},disallowedRules:{elements:{},generic:[]},transformations:{},cachedTests:{}};CKEDITOR.filter.instances[this.id]=this;if(a instanceof CKEDITOR.editor){a=
this.editor=a;this.customConfig=true;var b=a.config.allowedContent;if(b===true)this.disabled=true;else{if(!b)this.customConfig=false;this.allow(b,"config",1);this.allow(a.config.extraAllowedContent,"extra",1);this.allow(G[a.enterMode]+" "+G[a.shiftEnterMode],"default",1);this.disallow(a.config.disallowedContent)}}else{this.customConfig=false;this.allow(a,"default",1)}};CKEDITOR.filter.instances={};CKEDITOR.filter.prototype={allow:function(b,c,e){if(!d(this,b,e))return false;var f,p;if(typeof b=="string")b=
m(b);else if(b instanceof CKEDITOR.style){if(b.toAllowedContentRules)return this.allow(b.toAllowedContentRules(this.editor),c,e);f=b.getDefinition();b={};e=f.attributes;b[f.element]=f={styles:f.styles,requiredStyles:f.styles&&CKEDITOR.tools.objectKeys(f.styles)};if(e){e=K(e);f.classes=e["class"]?e["class"].split(/\s+/):null;f.requiredClasses=f.classes;delete e["class"];f.attributes=e;f.requiredAttributes=e&&CKEDITOR.tools.objectKeys(e)}}else if(CKEDITOR.tools.isArray(b)){for(f=0;f<b.length;++f)p=
this.allow(b[f],c,e);return p}a(this,b,c,this.allowedContent,this._.allowedRules);return true},applyTo:function(a,b,c,d){if(this.disabled)return false;var e=this,f=[],p=this.editor&&this.editor.config.protectedSource,r,x=false,h={doFilter:!c,doTransform:true,doCallbacks:true,toHtml:b};a.forEach(function(a){if(a.type==CKEDITOR.NODE_ELEMENT){if(a.attributes["data-cke-filter"]=="off")return false;if(!b||!(a.name=="span"&&~CKEDITOR.tools.objectKeys(a.attributes).join("|").indexOf("data-cke-"))){r=w(e,
a,f,h);if(r&F)x=true;else if(r&2)return false}}else if(a.type==CKEDITOR.NODE_COMMENT&&a.value.match(/^\{cke_protected\}(?!\{C\})/)){var c;a:{var d=decodeURIComponent(a.value.replace(/^\{cke_protected\}/,""));c=[];var i,l,n;if(p)for(l=0;l<p.length;++l)if((n=d.match(p[l]))&&n[0].length==d.length){c=true;break a}d=CKEDITOR.htmlParser.fragment.fromHtml(d);d.children.length==1&&(i=d.children[0]).type==CKEDITOR.NODE_ELEMENT&&w(e,i,c,h);c=!c.length}c||f.push(a)}},null,true);f.length&&(x=true);for(var n,
a=[],d=G[d||(this.editor?this.editor.enterMode:CKEDITOR.ENTER_P)],q;c=f.pop();)c.type==CKEDITOR.NODE_ELEMENT?l(c,d,a):c.remove();for(;n=a.pop();){c=n.el;if(c.parent){q=L[c.parent.name]||L.span;switch(n.check){case "it":L.$removeEmpty[c.name]&&!c.children.length?l(c,d,a):i(c)||l(c,d,a);break;case "el-up":c.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT&&!q[c.name]&&l(c,d,a);break;case "parent-down":c.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT&&!q[c.name]&&l(c.parent,d,a)}}}return x},checkFeature:function(a){if(this.disabled||
!a)return true;a.toFeature&&(a=a.toFeature(this.editor));return!a.requiredContent||this.check(a.requiredContent)},disable:function(){this.disabled=true},disallow:function(b){if(!d(this,b,true))return false;typeof b=="string"&&(b=m(b));a(this,b,null,this.disallowedContent,this._.disallowedRules);return true},addContentForms:function(a){if(!this.disabled&&a){var b,c,d=[],e;for(b=0;b<a.length&&!e;++b){c=a[b];if((typeof c=="string"||c instanceof CKEDITOR.style)&&this.check(c))e=c}if(e){for(b=0;b<a.length;++b)d.push(n(a[b],
e));this.addTransformations(d)}}},addElementCallback:function(a){if(!this.elementCallbacks)this.elementCallbacks=[];this.elementCallbacks.push(a)},addFeature:function(a){if(this.disabled||!a)return true;a.toFeature&&(a=a.toFeature(this.editor));this.allow(a.allowedContent,a.name);this.addTransformations(a.contentTransformations);this.addContentForms(a.contentForms);return a.requiredContent&&(this.customConfig||this.disallowedContent.length)?this.check(a.requiredContent):true},addTransformations:function(a){var b,
c;if(!this.disabled&&a){var d=this._.transformations,e;for(e=0;e<a.length;++e){b=a[e];var f=void 0,p=void 0,i=void 0,l=void 0,r=void 0,x=void 0;c=[];for(p=0;p<b.length;++p){i=b[p];if(typeof i=="string"){i=i.split(/\s*:\s*/);l=i[0];r=null;x=i[1]}else{l=i.check;r=i.left;x=i.right}if(!f){f=i;f=f.element?f.element:l?l.match(/^([a-z0-9]+)/i)[0]:f.left.getDefinition().element}r instanceof CKEDITOR.style&&(r=P(r));c.push({check:l==f?null:l,left:r,right:typeof x=="string"?C(x):x})}b=f;d[b]||(d[b]=[]);d[b].push(c)}}},
check:function(a,b,c){if(this.disabled)return true;if(CKEDITOR.tools.isArray(a)){for(var d=a.length;d--;)if(this.check(a[d],b,c))return true;return false}var e,f;if(typeof a=="string"){f=a+"<"+(b===false?"0":"1")+(c?"1":"0")+">";if(f in this._.cachedChecks)return this._.cachedChecks[f];d=m(a).$1;e=d.styles;var i=d.classes;d.name=d.elements;d.classes=i=i?i.split(/\s*,\s*/):[];d.styles=g(e);d.attributes=g(d.attributes);d.children=[];i.length&&(d.attributes["class"]=i.join(" "));if(e)d.attributes.style=
CKEDITOR.tools.writeCssText(d.styles);e=d}else{d=a.getDefinition();e=d.styles;i=d.attributes||{};if(e){e=K(e);i.style=CKEDITOR.tools.writeCssText(e,true)}else e={};e={name:d.element,attributes:i,classes:i["class"]?i["class"].split(/\s+/):[],styles:e,children:[]}}var i=CKEDITOR.tools.clone(e),l=[],r;if(b!==false&&(r=this._.transformations[e.name])){for(d=0;d<r.length;++d)p(this,e,r[d]);t(e)}w(this,i,l,{doFilter:true,doTransform:b!==false,skipRequired:!c,skipFinalValidation:!c});b=l.length>0?false:
CKEDITOR.tools.objectCompare(e.attributes,i.attributes,true)?true:false;typeof a=="string"&&(this._.cachedChecks[f]=b);return b},getAllowedEnterMode:function(){var a=["p","div","br"],b={p:CKEDITOR.ENTER_P,div:CKEDITOR.ENTER_DIV,br:CKEDITOR.ENTER_BR};return function(c,d){var e=a.slice(),f;if(this.check(G[c]))return c;for(d||(e=e.reverse());f=e.pop();)if(this.check(f))return b[f];return CKEDITOR.ENTER_BR}}(),destroy:function(){delete CKEDITOR.filter.instances[this.id];delete this._;delete this.allowedContent;
delete this.disallowedContent}};var z={styles:1,attributes:1,classes:1},B={styles:"requiredStyles",attributes:"requiredAttributes",classes:"requiredClasses"},x=/^([a-z0-9\-*\s]+)((?:\s*\{[!\w\-,\s\*]+\}\s*|\s*\[[!\w\-,\s\*]+\]\s*|\s*\([!\w\-,\s\*]+\)\s*){0,3})(?:;\s*|$)/i,E={styles:/{([^}]+)}/,attrs:/\[([^\]]+)\]/,classes:/\(([^\)]+)\)/},$=/^cke:(object|embed|param)$/,aa=/^(object|embed|param)$/,ba=CKEDITOR.filter.transformationsTools={sizeToStyle:function(a){this.lengthToStyle(a,"width");this.lengthToStyle(a,
"height")},sizeToAttribute:function(a){this.lengthToAttribute(a,"width");this.lengthToAttribute(a,"height")},lengthToStyle:function(a,b,c){c=c||b;if(!(c in a.styles)){var d=a.attributes[b];if(d){/^\d+$/.test(d)&&(d=d+"px");a.styles[c]=d}}delete a.attributes[b]},lengthToAttribute:function(a,b,c){c=c||b;if(!(c in a.attributes)){var d=a.styles[b],e=d&&d.match(/^(\d+)(?:\.\d*)?px$/);e?a.attributes[c]=e[1]:d==v&&(a.attributes[c]=v)}delete a.styles[b]},alignmentToStyle:function(a){if(!("float"in a.styles)){var b=
a.attributes.align;if(b=="left"||b=="right")a.styles["float"]=b}delete a.attributes.align},alignmentToAttribute:function(a){if(!("align"in a.attributes)){var b=a.styles["float"];if(b=="left"||b=="right")a.attributes.align=b}delete a.styles["float"]},matchesStyle:r,transform:function(a,b){if(typeof b=="string")a.name=b;else{var c=b.getDefinition(),d=c.styles,e=c.attributes,f,i,p,l;a.name=c.element;for(f in e)if(f=="class"){c=a.classes.join("|");for(p=e[f].split(/\s+/);l=p.pop();)c.indexOf(l)==-1&&
a.classes.push(l)}else a.attributes[f]=e[f];for(i in d)a.styles[i]=d[i]}}}})();
(function(){CKEDITOR.focusManager=function(a){if(a.focusManager)return a.focusManager;this.hasFocus=false;this.currentActive=null;this._={editor:a};return this};CKEDITOR.focusManager._={blurDelay:200};CKEDITOR.focusManager.prototype={focus:function(a){this._.timer&&clearTimeout(this._.timer);if(a)this.currentActive=a;if(!this.hasFocus&&!this._.locked){(a=CKEDITOR.currentInstance)&&a.focusManager.blur(1);this.hasFocus=true;(a=this._.editor.container)&&a.addClass("cke_focus");this._.editor.fire("focus")}},
lock:function(){this._.locked=1},unlock:function(){delete this._.locked},blur:function(a){function f(){if(this.hasFocus){this.hasFocus=false;var a=this._.editor.container;a&&a.removeClass("cke_focus");this._.editor.fire("blur")}}if(!this._.locked){this._.timer&&clearTimeout(this._.timer);var b=CKEDITOR.focusManager._.blurDelay;a||!b?f.call(this):this._.timer=CKEDITOR.tools.setTimeout(function(){delete this._.timer;f.call(this)},b,this)}},add:function(a,f){var b=a.getCustomData("focusmanager");if(!b||
b!=this){b&&b.remove(a);var b="focus",c="blur";if(f)if(CKEDITOR.env.ie){b="focusin";c="focusout"}else CKEDITOR.event.useCapture=1;var e={blur:function(){a.equals(this.currentActive)&&this.blur()},focus:function(){this.focus(a)}};a.on(b,e.focus,this);a.on(c,e.blur,this);if(f)CKEDITOR.event.useCapture=0;a.setCustomData("focusmanager",this);a.setCustomData("focusmanager_handlers",e)}},remove:function(a){a.removeCustomData("focusmanager");var f=a.removeCustomData("focusmanager_handlers");a.removeListener("blur",
f.blur);a.removeListener("focus",f.focus)}}})();CKEDITOR.keystrokeHandler=function(a){if(a.keystrokeHandler)return a.keystrokeHandler;this.keystrokes={};this.blockedKeystrokes={};this._={editor:a};return this};
(function(){var a,f=function(b){var b=b.data,e=b.getKeystroke(),d=this.keystrokes[e],f=this._.editor;a=f.fire("key",{keyCode:e,domEvent:b})===false;if(!a){d&&(a=f.execCommand(d,{from:"keystrokeHandler"})!==false);a||(a=!!this.blockedKeystrokes[e])}a&&b.preventDefault(true);return!a},b=function(b){if(a){a=false;b.data.preventDefault(true)}};CKEDITOR.keystrokeHandler.prototype={attach:function(a){a.on("keydown",f,this);if(CKEDITOR.env.gecko&&CKEDITOR.env.mac)a.on("keypress",b,this)}}})();
(function(){CKEDITOR.lang={languages:{af:1,ar:1,bg:1,bn:1,bs:1,ca:1,cs:1,cy:1,da:1,de:1,el:1,"en-au":1,"en-ca":1,"en-gb":1,en:1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fo:1,"fr-ca":1,fr:1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,is:1,it:1,ja:1,ka:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,ms:1,nb:1,nl:1,no:1,pl:1,"pt-br":1,pt:1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,"sr-latn":1,sr:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,"zh-cn":1,zh:1},rtl:{ar:1,fa:1,he:1,ku:1,ug:1},load:function(a,f,b){if(!a||!CKEDITOR.lang.languages[a])a=this.detect(f,
a);var c=this,f=function(){c[a].dir=c.rtl[a]?"rtl":"ltr";b(a,c[a])};this[a]?f():CKEDITOR.scriptLoader.load(CKEDITOR.getUrl("lang/"+a+".js"),f,this)},detect:function(a,f){var b=this.languages,f=f||navigator.userLanguage||navigator.language||a,c=f.toLowerCase().match(/([a-z]+)(?:-([a-z]+))?/),e=c[1],c=c[2];b[e+"-"+c]?e=e+"-"+c:b[e]||(e=null);CKEDITOR.lang.detect=e?function(){return e}:function(a){return a};return e||a}}})();
CKEDITOR.scriptLoader=function(){var a={},f={};return{load:function(b,c,e,d){var h=typeof b=="string";h&&(b=[b]);e||(e=CKEDITOR);var k=b.length,j=[],g=[],m=function(a){c&&(h?c.call(e,a):c.call(e,j,g))};if(k===0)m(true);else{var y=function(a,b){(b?j:g).push(a);if(--k<=0){d&&CKEDITOR.document.getDocumentElement().removeStyle("cursor");m(b)}},s=function(b,c){a[b]=1;var d=f[b];delete f[b];for(var e=0;e<d.length;e++)d[e](b,c)},w=function(b){if(a[b])y(b,true);else{var d=f[b]||(f[b]=[]);d.push(y);if(!(d.length>
1)){var e=new CKEDITOR.dom.element("script");e.setAttributes({type:"text/javascript",src:b});if(c)if(CKEDITOR.env.ie&&CKEDITOR.env.version<11)e.$.onreadystatechange=function(){if(e.$.readyState=="loaded"||e.$.readyState=="complete"){e.$.onreadystatechange=null;s(b,true)}};else{e.$.onload=function(){setTimeout(function(){s(b,true)},0)};e.$.onerror=function(){s(b,false)}}e.appendTo(CKEDITOR.document.getHead())}}};d&&CKEDITOR.document.getDocumentElement().setStyle("cursor","wait");for(var q=0;q<k;q++)w(b[q])}},
queue:function(){function a(){var b;(b=c[0])&&this.load(b.scriptUrl,b.callback,CKEDITOR,0)}var c=[];return function(e,d){var f=this;c.push({scriptUrl:e,callback:function(){d&&d.apply(this,arguments);c.shift();a.call(f)}});c.length==1&&a.call(this)}}()}}();CKEDITOR.resourceManager=function(a,f){this.basePath=a;this.fileName=f;this.registered={};this.loaded={};this.externals={};this._={waitingList:{}}};
CKEDITOR.resourceManager.prototype={add:function(a,f){if(this.registered[a])throw'[CKEDITOR.resourceManager.add] The resource name "'+a+'" is already registered.';var b=this.registered[a]=f||{};b.name=a;b.path=this.getPath(a);CKEDITOR.fire(a+CKEDITOR.tools.capitalize(this.fileName)+"Ready",b);return this.get(a)},get:function(a){return this.registered[a]||null},getPath:function(a){var f=this.externals[a];return CKEDITOR.getUrl(f&&f.dir||this.basePath+a+"/")},getFilePath:function(a){var f=this.externals[a];
return CKEDITOR.getUrl(this.getPath(a)+(f?f.file:this.fileName+".js"))},addExternal:function(a,f,b){for(var a=a.split(","),c=0;c<a.length;c++){var e=a[c];b||(f=f.replace(/[^\/]+$/,function(a){b=a;return""}));this.externals[e]={dir:f,file:b||this.fileName+".js"}}},load:function(a,f,b){CKEDITOR.tools.isArray(a)||(a=a?[a]:[]);for(var c=this.loaded,e=this.registered,d=[],h={},k={},j=0;j<a.length;j++){var g=a[j];if(g)if(!c[g]&&!e[g]){var m=this.getFilePath(g);d.push(m);m in h||(h[m]=[]);h[m].push(g)}else k[g]=
this.get(g)}CKEDITOR.scriptLoader.load(d,function(a,d){if(d.length)throw'[CKEDITOR.resourceManager.load] Resource name "'+h[d[0]].join(",")+'" was not found at "'+d[0]+'".';for(var e=0;e<a.length;e++)for(var q=h[a[e]],g=0;g<q.length;g++){var i=q[g];k[i]=this.get(i);c[i]=1}f.call(b,k)},this)}};CKEDITOR.plugins=new CKEDITOR.resourceManager("plugins/","plugin");
CKEDITOR.plugins.load=CKEDITOR.tools.override(CKEDITOR.plugins.load,function(a){var f={};return function(b,c,e){var d={},h=function(b){a.call(this,b,function(a){CKEDITOR.tools.extend(d,a);var b=[],m;for(m in a){var k=a[m],s=k&&k.requires;if(!f[m]){if(k.icons)for(var w=k.icons.split(","),q=w.length;q--;)CKEDITOR.skin.addIcon(w[q],k.path+"icons/"+(CKEDITOR.env.hidpi&&k.hidpi?"hidpi/":"")+w[q]+".png");f[m]=1}if(s){s.split&&(s=s.split(","));for(k=0;k<s.length;k++)d[s[k]]||b.push(s[k])}}if(b.length)h.call(this,
b);else{for(m in d){k=d[m];if(k.onLoad&&!k.onLoad._called){k.onLoad()===false&&delete d[m];k.onLoad._called=1}}c&&c.call(e||window,d)}},this)};h.call(this,b)}});CKEDITOR.plugins.setLang=function(a,f,b){var c=this.get(a),a=c.langEntries||(c.langEntries={}),c=c.lang||(c.lang=[]);c.split&&(c=c.split(","));CKEDITOR.tools.indexOf(c,f)==-1&&c.push(f);a[f]=b};CKEDITOR.ui=function(a){if(a.ui)return a.ui;this.items={};this.instances={};this.editor=a;this._={handlers:{}};return this};
CKEDITOR.ui.prototype={add:function(a,f,b){b.name=a.toLowerCase();var c=this.items[a]={type:f,command:b.command||null,args:Array.prototype.slice.call(arguments,2)};CKEDITOR.tools.extend(c,b)},get:function(a){return this.instances[a]},create:function(a){var f=this.items[a],b=f&&this._.handlers[f.type],c=f&&f.command&&this.editor.getCommand(f.command),b=b&&b.create.apply(this,f.args);this.instances[a]=b;c&&c.uiItems.push(b);if(b&&!b.type)b.type=f.type;return b},addHandler:function(a,f){this._.handlers[a]=
f},space:function(a){return CKEDITOR.document.getById(this.spaceId(a))},spaceId:function(a){return this.editor.id+"_"+a}};CKEDITOR.event.implementOn(CKEDITOR.ui);
(function(){function a(a,c,d){CKEDITOR.event.call(this);a=a&&CKEDITOR.tools.clone(a);if(c!==void 0){if(c instanceof CKEDITOR.dom.element){if(!d)throw Error("One of the element modes must be specified.");}else throw Error("Expect element of type CKEDITOR.dom.element.");if(CKEDITOR.env.ie&&CKEDITOR.env.quirks&&d==CKEDITOR.ELEMENT_MODE_INLINE)throw Error("Inline element mode is not supported on IE quirks.");if(!(d==CKEDITOR.ELEMENT_MODE_INLINE?c.is(CKEDITOR.dtd.$editable)||c.is("textarea"):d==CKEDITOR.ELEMENT_MODE_REPLACE?
!c.is(CKEDITOR.dtd.$nonBodyContent):1))throw Error('The specified element mode is not supported on element: "'+c.getName()+'".');this.element=c;this.elementMode=d;this.name=this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO&&(c.getId()||c.getNameAtt())}else this.elementMode=CKEDITOR.ELEMENT_MODE_NONE;this._={};this.commands={};this.templates={};this.name=this.name||f();this.id=CKEDITOR.tools.getNextId();this.status="unloaded";this.config=CKEDITOR.tools.prototypedCopy(CKEDITOR.config);this.ui=new CKEDITOR.ui(this);
this.focusManager=new CKEDITOR.focusManager(this);this.keystrokeHandler=new CKEDITOR.keystrokeHandler(this);this.on("readOnly",b);this.on("selectionChange",function(a){e(this,a.data.path)});this.on("activeFilterChange",function(){e(this,this.elementPath(),true)});this.on("mode",b);this.on("instanceReady",function(){this.config.startupFocus&&this.focus()});CKEDITOR.fire("instanceCreated",null,this);CKEDITOR.add(this);CKEDITOR.tools.setTimeout(function(){h(this,a)},0,this)}function f(){do var a="editor"+
++s;while(CKEDITOR.instances[a]);return a}function b(){var a=this.commands,b;for(b in a)c(this,a[b])}function c(a,b){b[b.startDisabled?"disable":a.readOnly&&!b.readOnly?"disable":b.modes[a.mode]?"enable":"disable"]()}function e(a,b,c){if(b){var d,e,f=a.commands;for(e in f){d=f[e];(c||d.contextSensitive)&&d.refresh(a,b)}}}function d(a){var b=a.config.customConfig;if(!b)return false;var b=CKEDITOR.getUrl(b),c=w[b]||(w[b]={});if(c.fn){c.fn.call(a,a.config);(CKEDITOR.getUrl(a.config.customConfig)==b||
!d(a))&&a.fireOnce("customConfigLoaded")}else CKEDITOR.scriptLoader.queue(b,function(){c.fn=CKEDITOR.editorConfig?CKEDITOR.editorConfig:function(){};d(a)});return true}function h(a,b){a.on("customConfigLoaded",function(){if(b){if(b.on)for(var c in b.on)a.on(c,b.on[c]);CKEDITOR.tools.extend(a.config,b,true);delete a.config.on}c=a.config;a.readOnly=!(!c.readOnly&&!(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.is("textarea")?a.element.hasAttribute("disabled"):a.element.isReadOnly():a.elementMode==
CKEDITOR.ELEMENT_MODE_REPLACE&&a.element.hasAttribute("disabled")));a.blockless=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?!(a.element.is("textarea")||CKEDITOR.dtd[a.element.getName()].p):false;a.tabIndex=c.tabIndex||a.element&&a.element.getAttribute("tabindex")||0;a.activeEnterMode=a.enterMode=a.blockless?CKEDITOR.ENTER_BR:c.enterMode;a.activeShiftEnterMode=a.shiftEnterMode=a.blockless?CKEDITOR.ENTER_BR:c.shiftEnterMode;if(c.skin)CKEDITOR.skinName=c.skin;a.fireOnce("configLoaded");a.dataProcessor=
new CKEDITOR.htmlDataProcessor(a);a.filter=a.activeFilter=new CKEDITOR.filter(a);k(a)});if(b&&b.customConfig!=null)a.config.customConfig=b.customConfig;d(a)||a.fireOnce("customConfigLoaded")}function k(a){CKEDITOR.skin.loadPart("editor",function(){j(a)})}function j(a){CKEDITOR.lang.load(a.config.language,a.config.defaultLanguage,function(b,c){var d=a.config.title;a.langCode=b;a.lang=CKEDITOR.tools.prototypedCopy(c);a.title=typeof d=="string"||d===false?d:[a.lang.editor,a.name].join(", ");if(!a.config.contentsLangDirection)a.config.contentsLangDirection=
a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.getDirection(1):a.lang.dir;a.fire("langLoaded");g(a)})}function g(a){a.getStylesSet(function(b){a.once("loaded",function(){a.fire("stylesSet",{styles:b})},null,null,1);m(a)})}function m(a){var b=a.config,c=b.plugins,d=b.extraPlugins,e=b.removePlugins;if(d)var f=RegExp("(?:^|,)(?:"+d.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(f,""),c=c+(","+d);if(e)var l=RegExp("(?:^|,)(?:"+e.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(l,"");CKEDITOR.env.air&&
(c=c+",adobeair");CKEDITOR.plugins.load(c.split(","),function(c){var d=[],e=[],f=[];a.plugins=c;for(var i in c){var h=c[i],g=h.lang,o=null,A=h.requires,v;CKEDITOR.tools.isArray(A)&&(A=A.join(","));if(A&&(v=A.match(l)))for(;A=v.pop();)CKEDITOR.tools.setTimeout(function(a,b){throw Error('Plugin "'+a.replace(",","")+'" cannot be removed from the plugins list, because it\'s required by "'+b+'" plugin.');},0,null,[A,i]);if(g&&!a.lang[i]){g.split&&(g=g.split(","));if(CKEDITOR.tools.indexOf(g,a.langCode)>=
0)o=a.langCode;else{o=a.langCode.replace(/-.*/,"");o=o!=a.langCode&&CKEDITOR.tools.indexOf(g,o)>=0?o:CKEDITOR.tools.indexOf(g,"en")>=0?"en":g[0]}if(!h.langEntries||!h.langEntries[o])f.push(CKEDITOR.getUrl(h.path+"lang/"+o+".js"));else{a.lang[i]=h.langEntries[o];o=null}}e.push(o);d.push(h)}CKEDITOR.scriptLoader.load(f,function(){for(var c=["beforeInit","init","afterInit"],f=0;f<c.length;f++)for(var p=0;p<d.length;p++){var i=d[p];f===0&&(e[p]&&i.lang&&i.langEntries)&&(a.lang[i.name]=i.langEntries[e[p]]);
if(i[c[f]])i[c[f]](a)}a.fireOnce("pluginsLoaded");b.keystrokes&&a.setKeystroke(a.config.keystrokes);for(p=0;p<a.config.blockedKeystrokes.length;p++)a.keystrokeHandler.blockedKeystrokes[a.config.blockedKeystrokes[p]]=1;a.status="loaded";a.fireOnce("loaded");CKEDITOR.fire("instanceLoaded",null,a)})})}function y(){var a=this.element;if(a&&this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO){var b=this.getData();this.config.htmlEncodeOutput&&(b=CKEDITOR.tools.htmlEncode(b));a.is("textarea")?a.setValue(b):
a.setHtml(b);return true}return false}a.prototype=CKEDITOR.editor.prototype;CKEDITOR.editor=a;var s=0,w={};CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{addCommand:function(a,b){b.name=a.toLowerCase();var d=new CKEDITOR.command(this,b);this.mode&&c(this,d);return this.commands[a]=d},_attachToForm:function(){function a(d){b.updateElement();b._.required&&(!c.getValue()&&b.fire("required")===false)&&d.data.preventDefault()}var b=this,c=b.element,d=new CKEDITOR.dom.element(c.$.form);if(c.is("textarea")&&
d){d.on("submit",a);if(d.$.submit&&d.$.submit.call&&d.$.submit.apply)d.$.submit=CKEDITOR.tools.override(d.$.submit,function(b){return function(){a();b.apply?b.apply(this):b()}});b.on("destroy",function(){d.removeListener("submit",a)})}},destroy:function(a){this.fire("beforeDestroy");!a&&y.call(this);this.editable(null);this.filter.destroy();delete this.filter;delete this.activeFilter;this.status="destroyed";this.fire("destroy");this.removeAllListeners();CKEDITOR.remove(this);CKEDITOR.fire("instanceDestroyed",
null,this)},elementPath:function(a){if(!a){a=this.getSelection();if(!a)return null;a=a.getStartElement()}return a?new CKEDITOR.dom.elementPath(a,this.editable()):null},createRange:function(){var a=this.editable();return a?new CKEDITOR.dom.range(a):null},execCommand:function(a,b){var c=this.getCommand(a),d={name:a,commandData:b,command:c};if(c&&c.state!=CKEDITOR.TRISTATE_DISABLED&&this.fire("beforeCommandExec",d)!==false){d.returnValue=c.exec(d.commandData);if(!c.async&&this.fire("afterCommandExec",
d)!==false)return d.returnValue}return false},getCommand:function(a){return this.commands[a]},getData:function(a){!a&&this.fire("beforeGetData");var b=this._.data;if(typeof b!="string")b=(b=this.element)&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?b.is("textarea")?b.getValue():b.getHtml():"";b={dataValue:b};!a&&this.fire("getData",b);return b.dataValue},getSnapshot:function(){var a=this.fire("getSnapshot");if(typeof a!="string"){var b=this.element;b&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE&&
(a=b.is("textarea")?b.getValue():b.getHtml())}return a},loadSnapshot:function(a){this.fire("loadSnapshot",a)},setData:function(a,b,c){var d=true,e=b;if(b&&typeof b=="object"){c=b.internal;e=b.callback;d=!b.noSnapshot}!c&&d&&this.fire("saveSnapshot");if(e||!c)this.once("dataReady",function(a){!c&&d&&this.fire("saveSnapshot");e&&e.call(a.editor)});a={dataValue:a};!c&&this.fire("setData",a);this._.data=a.dataValue;!c&&this.fire("afterSetData",a)},setReadOnly:function(a){a=a==null||a;if(this.readOnly!=
a){this.readOnly=a;this.keystrokeHandler.blockedKeystrokes[8]=+a;this.editable().setReadOnly(a);this.fire("readOnly")}},insertHtml:function(a,b){this.fire("insertHtml",{dataValue:a,mode:b})},insertText:function(a){this.fire("insertText",a)},insertElement:function(a){this.fire("insertElement",a)},focus:function(){this.fire("beforeFocus")},checkDirty:function(){return this.status=="ready"&&this._.previousValue!==this.getSnapshot()},resetDirty:function(){this._.previousValue=this.getSnapshot()},updateElement:function(){return y.call(this)},
setKeystroke:function(){for(var a=this.keystrokeHandler.keystrokes,b=CKEDITOR.tools.isArray(arguments[0])?arguments[0]:[[].slice.call(arguments,0)],c,d,e=b.length;e--;){c=b[e];d=0;if(CKEDITOR.tools.isArray(c)){d=c[1];c=c[0]}d?a[c]=d:delete a[c]}},addFeature:function(a){return this.filter.addFeature(a)},setActiveFilter:function(a){if(!a)a=this.filter;if(this.activeFilter!==a){this.activeFilter=a;this.fire("activeFilterChange");a===this.filter?this.setActiveEnterMode(null,null):this.setActiveEnterMode(a.getAllowedEnterMode(this.enterMode),
a.getAllowedEnterMode(this.shiftEnterMode,true))}},setActiveEnterMode:function(a,b){a=a?this.blockless?CKEDITOR.ENTER_BR:a:this.enterMode;b=b?this.blockless?CKEDITOR.ENTER_BR:b:this.shiftEnterMode;if(this.activeEnterMode!=a||this.activeShiftEnterMode!=b){this.activeEnterMode=a;this.activeShiftEnterMode=b;this.fire("activeEnterModeChange")}}})})();CKEDITOR.ELEMENT_MODE_NONE=0;CKEDITOR.ELEMENT_MODE_REPLACE=1;CKEDITOR.ELEMENT_MODE_APPENDTO=2;CKEDITOR.ELEMENT_MODE_INLINE=3;
CKEDITOR.htmlParser=function(){this._={htmlPartsRegex:/<(?:(?:\/([^>]+)>)|(?:!--([\S|\s]*?)--\>)|(?:([^\/\s>]+)((?:\s+[\w\-:.]+(?:\s*=\s*?(?:(?:"[^"]*")|(?:'[^']*')|[^\s"'\/>]+))?)*)[\S\s]*?(\/?)>))/g}};
(function(){var a=/([\w\-:.]+)(?:(?:\s*=\s*(?:(?:"([^"]*)")|(?:'([^']*)')|([^\s>]+)))|(?=\s|$))/g,f={checked:1,compact:1,declare:1,defer:1,disabled:1,ismap:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,selected:1};CKEDITOR.htmlParser.prototype={onTagOpen:function(){},onTagClose:function(){},onText:function(){},onCDATA:function(){},onComment:function(){},parse:function(b){for(var c,e,d=0,h;c=this._.htmlPartsRegex.exec(b);){e=c.index;if(e>d){d=b.substring(d,e);if(h)h.push(d);else this.onText(d)}d=
this._.htmlPartsRegex.lastIndex;if(e=c[1]){e=e.toLowerCase();if(h&&CKEDITOR.dtd.$cdata[e]){this.onCDATA(h.join(""));h=null}if(!h){this.onTagClose(e);continue}}if(h)h.push(c[0]);else if(e=c[3]){e=e.toLowerCase();if(!/="/.test(e)){var k={},j,g=c[4];c=!!c[5];if(g)for(;j=a.exec(g);){var m=j[1].toLowerCase();j=j[2]||j[3]||j[4]||"";k[m]=!j&&f[m]?m:CKEDITOR.tools.htmlDecodeAttr(j)}this.onTagOpen(e,k,c);!h&&CKEDITOR.dtd.$cdata[e]&&(h=[])}}else if(e=c[2])this.onComment(e)}if(b.length>d)this.onText(b.substring(d,
b.length))}}})();
CKEDITOR.htmlParser.basicWriter=CKEDITOR.tools.createClass({$:function(){this._={output:[]}},proto:{openTag:function(a){this._.output.push("<",a)},openTagClose:function(a,f){f?this._.output.push(" />"):this._.output.push(">")},attribute:function(a,f){typeof f=="string"&&(f=CKEDITOR.tools.htmlEncodeAttr(f));this._.output.push(" ",a,'="',f,'"')},closeTag:function(a){this._.output.push("</",a,">")},text:function(a){this._.output.push(a)},comment:function(a){this._.output.push("<\!--",a,"--\>")},write:function(a){this._.output.push(a)},
reset:function(){this._.output=[];this._.indent=false},getHtml:function(a){var f=this._.output.join("");a&&this.reset();return f}}});"use strict";
(function(){CKEDITOR.htmlParser.node=function(){};CKEDITOR.htmlParser.node.prototype={remove:function(){var a=this.parent.children,f=CKEDITOR.tools.indexOf(a,this),b=this.previous,c=this.next;b&&(b.next=c);c&&(c.previous=b);a.splice(f,1);this.parent=null},replaceWith:function(a){var f=this.parent.children,b=CKEDITOR.tools.indexOf(f,this),c=a.previous=this.previous,e=a.next=this.next;c&&(c.next=a);e&&(e.previous=a);f[b]=a;a.parent=this.parent;this.parent=null},insertAfter:function(a){var f=a.parent.children,
b=CKEDITOR.tools.indexOf(f,a),c=a.next;f.splice(b+1,0,this);this.next=a.next;this.previous=a;a.next=this;c&&(c.previous=this);this.parent=a.parent},insertBefore:function(a){var f=a.parent.children,b=CKEDITOR.tools.indexOf(f,a);f.splice(b,0,this);this.next=a;(this.previous=a.previous)&&(a.previous.next=this);a.previous=this;this.parent=a.parent},getAscendant:function(a){var f=typeof a=="function"?a:typeof a=="string"?function(b){return b.name==a}:function(b){return b.name in a},b=this.parent;for(;b&&
b.type==CKEDITOR.NODE_ELEMENT;){if(f(b))return b;b=b.parent}return null},wrapWith:function(a){this.replaceWith(a);a.add(this);return a},getIndex:function(){return CKEDITOR.tools.indexOf(this.parent.children,this)},getFilterContext:function(a){return a||{}}}})();"use strict";CKEDITOR.htmlParser.comment=function(a){this.value=a;this._={isBlockLike:false}};
CKEDITOR.htmlParser.comment.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_COMMENT,filter:function(a,f){var b=this.value;if(!(b=a.onComment(f,b,this))){this.remove();return false}if(typeof b!="string"){this.replaceWith(b);return false}this.value=b;return true},writeHtml:function(a,f){f&&this.filter(f);a.comment(this.value)}});"use strict";
(function(){CKEDITOR.htmlParser.text=function(a){this.value=a;this._={isBlockLike:false}};CKEDITOR.htmlParser.text.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(a,f){if(!(this.value=a.onText(f,this.value,this))){this.remove();return false}},writeHtml:function(a,f){f&&this.filter(f);a.text(this.value)}})})();"use strict";
(function(){CKEDITOR.htmlParser.cdata=function(a){this.value=a};CKEDITOR.htmlParser.cdata.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(){},writeHtml:function(a){a.write(this.value)}})})();"use strict";CKEDITOR.htmlParser.fragment=function(){this.children=[];this.parent=null;this._={isBlockLike:true,hasInlineStarted:false}};
(function(){function a(a){return a.attributes["data-cke-survive"]?false:a.name=="a"&&a.attributes.href||CKEDITOR.dtd.$removeEmpty[a.name]}var f=CKEDITOR.tools.extend({table:1,ul:1,ol:1,dl:1},CKEDITOR.dtd.table,CKEDITOR.dtd.ul,CKEDITOR.dtd.ol,CKEDITOR.dtd.dl),b={ol:1,ul:1},c=CKEDITOR.tools.extend({},{html:1},CKEDITOR.dtd.html,CKEDITOR.dtd.body,CKEDITOR.dtd.head,{style:1,script:1}),e={ul:"li",ol:"li",dl:"dd",table:"tbody",tbody:"tr",thead:"tr",tfoot:"tr",tr:"td"};CKEDITOR.htmlParser.fragment.fromHtml=
function(d,h,k){function j(a){var b;if(i.length>0)for(var c=0;c<i.length;c++){var d=i[c],e=d.name,f=CKEDITOR.dtd[e],l=u.name&&CKEDITOR.dtd[u.name];if((!l||l[e])&&(!a||!f||f[a]||!CKEDITOR.dtd[a])){if(!b){g();b=1}d=d.clone();d.parent=u;u=d;i.splice(c,1);c--}else if(e==u.name){y(u,u.parent,1);c--}}}function g(){for(;A.length;)y(A.shift(),u)}function m(a){if(a._.isBlockLike&&a.name!="pre"&&a.name!="textarea"){var b=a.children.length,c=a.children[b-1],d;if(c&&c.type==CKEDITOR.NODE_TEXT)(d=CKEDITOR.tools.rtrim(c.value))?
c.value=d:a.children.length=b-1}}function y(b,c,d){var c=c||u||t,e=u;if(b.previous===void 0){if(s(c,b)){u=c;q.onTagOpen(k,{});b.returnPoint=c=u}m(b);(!a(b)||b.children.length)&&c.add(b);b.name=="pre"&&(l=false);b.name=="textarea"&&(o=false)}if(b.returnPoint){u=b.returnPoint;delete b.returnPoint}else u=d?c:e}function s(a,b){if((a==t||a.name=="body")&&k&&(!a.name||CKEDITOR.dtd[a.name][k])){var c,d;return(c=b.attributes&&(d=b.attributes["data-cke-real-element-type"])?d:b.name)&&c in CKEDITOR.dtd.$inline&&
!(c in CKEDITOR.dtd.head)&&!b.isOrphan||b.type==CKEDITOR.NODE_TEXT}}function w(a,b){return a in CKEDITOR.dtd.$listItem||a in CKEDITOR.dtd.$tableContent?a==b||a=="dt"&&b=="dd"||a=="dd"&&b=="dt":false}var q=new CKEDITOR.htmlParser,t=h instanceof CKEDITOR.htmlParser.element?h:typeof h=="string"?new CKEDITOR.htmlParser.element(h):new CKEDITOR.htmlParser.fragment,i=[],A=[],u=t,o=t.name=="textarea",l=t.name=="pre";q.onTagOpen=function(d,e,h,m){e=new CKEDITOR.htmlParser.element(d,e);if(e.isUnknown&&h)e.isEmpty=
true;e.isOptionalClose=m;if(a(e))i.push(e);else{if(d=="pre")l=true;else{if(d=="br"&&l){u.add(new CKEDITOR.htmlParser.text("\n"));return}d=="textarea"&&(o=true)}if(d=="br")A.push(e);else{for(;;){m=(h=u.name)?CKEDITOR.dtd[h]||(u._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):c;if(!e.isUnknown&&!u.isUnknown&&!m[d])if(u.isOptionalClose)q.onTagClose(h);else if(d in b&&h in b){h=u.children;(h=h[h.length-1])&&h.name=="li"||y(h=new CKEDITOR.htmlParser.element("li"),u);!e.returnPoint&&(e.returnPoint=u);
u=h}else if(d in CKEDITOR.dtd.$listItem&&!w(d,h))q.onTagOpen(d=="li"?"ul":"dl",{},0,1);else if(h in f&&!w(d,h)){!e.returnPoint&&(e.returnPoint=u);u=u.parent}else{h in CKEDITOR.dtd.$inline&&i.unshift(u);if(u.parent)y(u,u.parent,1);else{e.isOrphan=1;break}}else break}j(d);g();e.parent=u;e.isEmpty?y(e):u=e}}};q.onTagClose=function(a){for(var b=i.length-1;b>=0;b--)if(a==i[b].name){i.splice(b,1);return}for(var c=[],d=[],e=u;e!=t&&e.name!=a;){e._.isBlockLike||d.unshift(e);c.push(e);e=e.returnPoint||e.parent}if(e!=
t){for(b=0;b<c.length;b++){var f=c[b];y(f,f.parent)}u=e;e._.isBlockLike&&g();y(e,e.parent);if(e==u)u=u.parent;i=i.concat(d)}a=="body"&&(k=false)};q.onText=function(a){if((!u._.hasInlineStarted||A.length)&&!l&&!o){a=CKEDITOR.tools.ltrim(a);if(a.length===0)return}var b=u.name,d=b?CKEDITOR.dtd[b]||(u._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):c;if(!o&&!d["#"]&&b in f){q.onTagOpen(e[b]||"");q.onText(a)}else{g();j();!l&&!o&&(a=a.replace(/[\t\r\n ]{2,}|[\t\r\n]/g," "));a=new CKEDITOR.htmlParser.text(a);
if(s(u,a))this.onTagOpen(k,{},0,1);u.add(a)}};q.onCDATA=function(a){u.add(new CKEDITOR.htmlParser.cdata(a))};q.onComment=function(a){g();j();u.add(new CKEDITOR.htmlParser.comment(a))};q.parse(d);for(g();u!=t;)y(u,u.parent,1);m(t);return t};CKEDITOR.htmlParser.fragment.prototype={type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,add:function(a,b){isNaN(b)&&(b=this.children.length);var c=b>0?this.children[b-1]:null;if(c){if(a._.isBlockLike&&c.type==CKEDITOR.NODE_TEXT){c.value=CKEDITOR.tools.rtrim(c.value);if(c.value.length===
0){this.children.pop();this.add(a);return}}c.next=a}a.previous=c;a.parent=this;this.children.splice(b,0,a);if(!this._.hasInlineStarted)this._.hasInlineStarted=a.type==CKEDITOR.NODE_TEXT||a.type==CKEDITOR.NODE_ELEMENT&&!a._.isBlockLike},filter:function(a,b){b=this.getFilterContext(b);a.onRoot(b,this);this.filterChildren(a,false,b)},filterChildren:function(a,b,c){if(this.childrenFilteredBy!=a.id){c=this.getFilterContext(c);if(b&&!this.parent)a.onRoot(c,this);this.childrenFilteredBy=a.id;for(b=0;b<this.children.length;b++)this.children[b].filter(a,
c)===false&&b--}},writeHtml:function(a,b){b&&this.filter(b);this.writeChildrenHtml(a)},writeChildrenHtml:function(a,b,c){var e=this.getFilterContext();if(c&&!this.parent&&b)b.onRoot(e,this);b&&this.filterChildren(b,false,e);b=0;c=this.children;for(e=c.length;b<e;b++)c[b].writeHtml(a)},forEach:function(a,b,c){if(!c&&(!b||this.type==b))var e=a(this);if(e!==false)for(var c=this.children,f=0;f<c.length;f++){e=c[f];e.type==CKEDITOR.NODE_ELEMENT?e.forEach(a,b):(!b||e.type==b)&&a(e)}},getFilterContext:function(a){return a||
{}}}})();"use strict";
(function(){function a(){this.rules=[]}function f(b,c,e,d){var f,k;for(f in c){(k=b[f])||(k=b[f]=new a);k.add(c[f],e,d)}}CKEDITOR.htmlParser.filter=CKEDITOR.tools.createClass({$:function(b){this.id=CKEDITOR.tools.getNextNumber();this.elementNameRules=new a;this.attributeNameRules=new a;this.elementsRules={};this.attributesRules={};this.textRules=new a;this.commentRules=new a;this.rootRules=new a;b&&this.addRules(b,10)},proto:{addRules:function(a,c){var e;if(typeof c=="number")e=c;else if(c&&"priority"in
c)e=c.priority;typeof e!="number"&&(e=10);typeof c!="object"&&(c={});a.elementNames&&this.elementNameRules.addMany(a.elementNames,e,c);a.attributeNames&&this.attributeNameRules.addMany(a.attributeNames,e,c);a.elements&&f(this.elementsRules,a.elements,e,c);a.attributes&&f(this.attributesRules,a.attributes,e,c);a.text&&this.textRules.add(a.text,e,c);a.comment&&this.commentRules.add(a.comment,e,c);a.root&&this.rootRules.add(a.root,e,c)},applyTo:function(a){a.filter(this)},onElementName:function(a,c){return this.elementNameRules.execOnName(a,
c)},onAttributeName:function(a,c){return this.attributeNameRules.execOnName(a,c)},onText:function(a,c,e){return this.textRules.exec(a,c,e)},onComment:function(a,c,e){return this.commentRules.exec(a,c,e)},onRoot:function(a,c){return this.rootRules.exec(a,c)},onElement:function(a,c){for(var e=[this.elementsRules["^"],this.elementsRules[c.name],this.elementsRules.$],d,f=0;f<3;f++)if(d=e[f]){d=d.exec(a,c,this);if(d===false)return null;if(d&&d!=c)return this.onNode(a,d);if(c.parent&&!c.name)break}return c},
onNode:function(a,c){var e=c.type;return e==CKEDITOR.NODE_ELEMENT?this.onElement(a,c):e==CKEDITOR.NODE_TEXT?new CKEDITOR.htmlParser.text(this.onText(a,c.value)):e==CKEDITOR.NODE_COMMENT?new CKEDITOR.htmlParser.comment(this.onComment(a,c.value)):null},onAttribute:function(a,c,e,d){return(e=this.attributesRules[e])?e.exec(a,d,c,this):d}}});CKEDITOR.htmlParser.filterRulesGroup=a;a.prototype={add:function(a,c,e){this.rules.splice(this.findIndex(c),0,{value:a,priority:c,options:e})},addMany:function(a,
c,e){for(var d=[this.findIndex(c),0],f=0,k=a.length;f<k;f++)d.push({value:a[f],priority:c,options:e});this.rules.splice.apply(this.rules,d)},findIndex:function(a){for(var c=this.rules,e=c.length-1;e>=0&&a<c[e].priority;)e--;return e+1},exec:function(a,c){var e=c instanceof CKEDITOR.htmlParser.node||c instanceof CKEDITOR.htmlParser.fragment,d=Array.prototype.slice.call(arguments,1),f=this.rules,k=f.length,j,g,m,y;for(y=0;y<k;y++){if(e){j=c.type;g=c.name}m=f[y];if(!(a.nonEditable&&!m.options.applyToAll||
a.nestedEditable&&m.options.excludeNestedEditable)){m=m.value.apply(null,d);if(m===false||e&&m&&(m.name!=g||m.type!=j))return m;m!=null&&(d[0]=c=m)}}return c},execOnName:function(a,c){for(var e=0,d=this.rules,f=d.length,k;c&&e<f;e++){k=d[e];!(a.nonEditable&&!k.options.applyToAll||a.nestedEditable&&k.options.excludeNestedEditable)&&(c=c.replace(k.value[0],k.value[1]))}return c}}})();
(function(){function a(a,f){function p(a){return a||CKEDITOR.env.needsNbspFiller?new CKEDITOR.htmlParser.text(" "):new CKEDITOR.htmlParser.element("br",{"data-cke-bogus":1})}function r(a,e){return function(f){if(f.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var i=[],l=b(f),x,r;if(l)for(v(l,1)&&i.push(l);l;){if(d(l)&&(x=c(l))&&v(x))if((r=c(x))&&!d(r))i.push(x);else{p(g).insertAfter(x);x.remove()}l=l.previous}for(l=0;l<i.length;l++)i[l].remove();if(i=!a||(typeof e=="function"?e(f):e)!==false)if(!g&&!CKEDITOR.env.needsBrFiller&&
f.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)i=false;else if(!g&&!CKEDITOR.env.needsBrFiller&&(document.documentMode>7||f.name in CKEDITOR.dtd.tr||f.name in CKEDITOR.dtd.$listItem))i=false;else{i=b(f);i=!i||f.name=="form"&&i.name=="input"}i&&f.add(p(a))}}}function v(a,b){if((!g||CKEDITOR.env.needsBrFiller)&&a.type==CKEDITOR.NODE_ELEMENT&&a.name=="br"&&!a.attributes["data-cke-eol"])return true;var c;if(a.type==CKEDITOR.NODE_TEXT&&(c=a.value.match(i))){if(c.index){(new CKEDITOR.htmlParser.text(a.value.substring(0,
c.index))).insertBefore(a);a.value=c[0]}if(!CKEDITOR.env.needsBrFiller&&g&&(!b||a.parent.name in z))return true;if(!g)if((c=a.previous)&&c.name=="br"||!c||d(c))return true}return false}var n={elements:{}},g=f=="html",z=CKEDITOR.tools.extend({},l),o;for(o in z)"#"in u[o]||delete z[o];for(o in z)n.elements[o]=r(g,a.config.fillEmptyBlocks);n.root=r(g,false);n.elements.br=function(a){return function(b){if(b.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var f=b.attributes;if("data-cke-bogus"in f||"data-cke-eol"in
f)delete f["data-cke-bogus"];else{for(f=b.next;f&&e(f);)f=f.next;var i=c(b);!f&&d(b.parent)?h(b.parent,p(a)):d(f)&&(i&&!d(i))&&p(a).insertBefore(f)}}}}(g);return n}function f(a,b){return a!=CKEDITOR.ENTER_BR&&b!==false?a==CKEDITOR.ENTER_DIV?"div":"p":false}function b(a){for(a=a.children[a.children.length-1];a&&e(a);)a=a.previous;return a}function c(a){for(a=a.previous;a&&e(a);)a=a.previous;return a}function e(a){return a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(a.value)||a.type==CKEDITOR.NODE_ELEMENT&&
a.attributes["data-cke-bookmark"]}function d(a){return a&&(a.type==CKEDITOR.NODE_ELEMENT&&a.name in l||a.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)}function h(a,b){var c=a.children[a.children.length-1];a.children.push(b);b.parent=a;if(c){c.next=b;b.previous=c}}function k(a){a=a.attributes;a.contenteditable!="false"&&(a["data-cke-editable"]=a.contenteditable?"true":1);a.contenteditable="false"}function j(a){a=a.attributes;switch(a["data-cke-editable"]){case "true":a.contenteditable="true";break;case "1":delete a.contenteditable}}
function g(a){return a.replace(C,function(a,b,c){return"<"+b+c.replace(L,function(a,b){return F.test(b)&&c.indexOf("data-cke-saved-"+b)==-1?" data-cke-saved-"+a+" data-cke-"+CKEDITOR.rnd+"-"+a:a})+">"})}function m(a,b){return a.replace(b,function(a,b,c){a.indexOf("<textarea")===0&&(a=b+w(c).replace(/</g,"&lt;").replace(/>/g,"&gt;")+"</textarea>");return"<cke:encoded>"+encodeURIComponent(a)+"</cke:encoded>"})}function y(a){return a.replace(v,function(a,b){return decodeURIComponent(b)})}function s(a){return a.replace(/<\!--(?!{cke_protected})[\s\S]+?--\>/g,
function(a){return"<\!--"+A+"{C}"+encodeURIComponent(a).replace(/--/g,"%2D%2D")+"--\>"})}function w(a){return a.replace(/<\!--\{cke_protected\}\{C\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)})}function q(a,b){var c=b._.dataStore;return a.replace(/<\!--\{cke_protected\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)}).replace(/\{cke_protected_(\d+)\}/g,function(a,b){return c&&c[b]||""})}function t(a,b){for(var c=[],d=b.config.protectedSource,e=b._.dataStore||(b._.dataStore=
{id:1}),f=/<\!--\{cke_temp(comment)?\}(\d*?)--\>/g,d=[/<script[\s\S]*?<\/script>/gi,/<noscript[\s\S]*?<\/noscript>/gi,/<meta[\s\S]*?\/?>/gi].concat(d),a=a.replace(/<\!--[\s\S]*?--\>/g,function(a){return"<\!--{cke_tempcomment}"+(c.push(a)-1)+"--\>"}),i=0;i<d.length;i++)a=a.replace(d[i],function(a){a=a.replace(f,function(a,b,d){return c[d]});return/cke_temp(comment)?/.test(a)?a:"<\!--{cke_temp}"+(c.push(a)-1)+"--\>"});a=a.replace(f,function(a,b,d){return"<\!--"+A+(b?"{C}":"")+encodeURIComponent(c[d]).replace(/--/g,
"%2D%2D")+"--\>"});a=a.replace(/<\w+(?:\s+(?:(?:[^\s=>]+\s*=\s*(?:[^'"\s>]+|'[^']*'|"[^"]*"))|[^\s=>]+))+\s*>/g,function(a){return a.replace(/<\!--\{cke_protected\}([^>]*)--\>/g,function(a,b){e[e.id]=decodeURIComponent(b);return"{cke_protected_"+e.id++ +"}"})});return a=a.replace(/<(title|iframe|textarea)([^>]*)>([\s\S]*?)<\/\1>/g,function(a,c,d,e){return"<"+c+d+">"+q(w(e),b)+"</"+c+">"})}CKEDITOR.htmlDataProcessor=function(b){var c,d,e=this;this.editor=b;this.dataFilter=c=new CKEDITOR.htmlParser.filter;
this.htmlFilter=d=new CKEDITOR.htmlParser.filter;this.writer=new CKEDITOR.htmlParser.basicWriter;c.addRules(p);c.addRules(r,{applyToAll:true});c.addRules(a(b,"data"),{applyToAll:true});d.addRules(n);d.addRules(P,{applyToAll:true});d.addRules(a(b,"html"),{applyToAll:true});b.on("toHtml",function(a){var a=a.data,c=a.dataValue,d,c=t(c,b),c=m(c,I),c=g(c),c=m(c,K),c=c.replace(G,"$1cke:$2"),c=c.replace(B,"<cke:$1$2></cke:$1>"),c=c.replace(/(<pre\b[^>]*>)(\r\n|\n)/g,"$1$2$2"),c=c.replace(/([^a-z0-9<\-])(on\w{3,})(?!>)/gi,
"$1data-cke-"+CKEDITOR.rnd+"-$2");d=a.context||b.editable().getName();var e;if(CKEDITOR.env.ie&&CKEDITOR.env.version<9&&d=="pre"){d="div";c="<pre>"+c+"</pre>";e=1}d=b.document.createElement(d);d.setHtml("a"+c);c=d.getHtml().substr(1);c=c.replace(RegExp("data-cke-"+CKEDITOR.rnd+"-","ig"),"");e&&(c=c.replace(/^<pre>|<\/pre>$/gi,""));c=c.replace(z,"$1$2");c=y(c);c=w(c);d=a.fixForBody===false?false:f(a.enterMode,b.config.autoParagraph);c=CKEDITOR.htmlParser.fragment.fromHtml(c,a.context,d);if(d){e=c;
if(!e.children.length&&CKEDITOR.dtd[e.name][d]){d=new CKEDITOR.htmlParser.element(d);e.add(d)}}a.dataValue=c},null,null,5);b.on("toHtml",function(a){a.data.filter.applyTo(a.data.dataValue,true,a.data.dontFilter,a.data.enterMode)&&b.fire("dataFiltered")},null,null,6);b.on("toHtml",function(a){a.data.dataValue.filterChildren(e.dataFilter,true)},null,null,10);b.on("toHtml",function(a){var a=a.data,b=a.dataValue,c=new CKEDITOR.htmlParser.basicWriter;b.writeChildrenHtml(c);b=c.getHtml(true);a.dataValue=
s(b)},null,null,15);b.on("toDataFormat",function(a){var c=a.data.dataValue;a.data.enterMode!=CKEDITOR.ENTER_BR&&(c=c.replace(/^<br *\/?>/i,""));a.data.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(c,a.data.context,f(a.data.enterMode,b.config.autoParagraph))},null,null,5);b.on("toDataFormat",function(a){a.data.dataValue.filterChildren(e.htmlFilter,true)},null,null,10);b.on("toDataFormat",function(a){a.data.filter.applyTo(a.data.dataValue,false,true)},null,null,11);b.on("toDataFormat",function(a){var c=
a.data.dataValue,d=e.writer;d.reset();c.writeChildrenHtml(d);c=d.getHtml(true);c=w(c);c=q(c,b);a.data.dataValue=c},null,null,15)};CKEDITOR.htmlDataProcessor.prototype={toHtml:function(a,b,c,d){var e=this.editor,f,i,l;if(b&&typeof b=="object"){f=b.context;c=b.fixForBody;d=b.dontFilter;i=b.filter;l=b.enterMode}else f=b;!f&&f!==null&&(f=e.editable().getName());return e.fire("toHtml",{dataValue:a,context:f,fixForBody:c,dontFilter:d,filter:i||e.filter,enterMode:l||e.enterMode}).dataValue},toDataFormat:function(a,
b){var c,d,e;if(b){c=b.context;d=b.filter;e=b.enterMode}!c&&c!==null&&(c=this.editor.editable().getName());return this.editor.fire("toDataFormat",{dataValue:a,filter:d||this.editor.filter,context:c,enterMode:e||this.editor.enterMode}).dataValue}};var i=/(?:&nbsp;|\xa0)$/,A="{cke_protected}",u=CKEDITOR.dtd,o=["caption","colgroup","col","thead","tfoot","tbody"],l=CKEDITOR.tools.extend({},u.$blockLimit,u.$block),p={elements:{input:k,textarea:k}},r={attributeNames:[[/^on/,"data-cke-pa-on"],[/^data-cke-expando$/,
""]]},n={elements:{embed:function(a){var b=a.parent;if(b&&b.name=="object"){var c=b.attributes.width,b=b.attributes.height;if(c)a.attributes.width=c;if(b)a.attributes.height=b}},a:function(a){if(!a.children.length&&!a.attributes.name&&!a.attributes["data-cke-saved-name"])return false}}},P={elementNames:[[/^cke:/,""],[/^\?xml:namespace$/,""]],attributeNames:[[/^data-cke-(saved|pa)-/,""],[/^data-cke-.*/,""],["hidefocus",""]],elements:{$:function(a){var b=a.attributes;if(b){if(b["data-cke-temp"])return false;
for(var c=["name","href","src"],d,e=0;e<c.length;e++){d="data-cke-saved-"+c[e];d in b&&delete b[c[e]]}}return a},table:function(a){a.children.slice(0).sort(function(a,b){var c,d;if(a.type==CKEDITOR.NODE_ELEMENT&&b.type==a.type){c=CKEDITOR.tools.indexOf(o,a.name);d=CKEDITOR.tools.indexOf(o,b.name)}if(!(c>-1&&d>-1&&c!=d)){c=a.parent?a.getIndex():-1;d=b.parent?b.getIndex():-1}return c>d?1:-1})},param:function(a){a.children=[];a.isEmpty=true;return a},span:function(a){a.attributes["class"]=="Apple-style-span"&&
delete a.name},html:function(a){delete a.attributes.contenteditable;delete a.attributes["class"]},body:function(a){delete a.attributes.spellcheck;delete a.attributes.contenteditable},style:function(a){var b=a.children[0];if(b&&b.value)b.value=CKEDITOR.tools.trim(b.value);if(!a.attributes.type)a.attributes.type="text/css"},title:function(a){var b=a.children[0];!b&&h(a,b=new CKEDITOR.htmlParser.text);b.value=a.attributes["data-cke-title"]||""},input:j,textarea:j},attributes:{"class":function(a){return CKEDITOR.tools.ltrim(a.replace(/(?:^|\s+)cke_[^\s]*/g,
""))||false}}};if(CKEDITOR.env.ie)P.attributes.style=function(a){return a.replace(/(^|;)([^\:]+)/g,function(a){return a.toLowerCase()})};var C=/<(a|area|img|input|source)\b([^>]*)>/gi,L=/([\w-]+)\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|(?:[^ "'>]+))/gi,F=/^(href|src|name)$/i,K=/(?:<style(?=[ >])[^>]*>[\s\S]*?<\/style>)|(?:<(:?link|meta|base)[^>]*>)/gi,I=/(<textarea(?=[ >])[^>]*>)([\s\S]*?)(?:<\/textarea>)/gi,v=/<cke:encoded>([^<]*)<\/cke:encoded>/gi,G=/(<\/?)((?:object|embed|param|html|body|head|title)[^>]*>)/gi,
z=/(<\/?)cke:((?:html|body|head|title)[^>]*>)/gi,B=/<cke:(param|embed)([^>]*?)\/?>(?!\s*<\/cke:\1)/gi})();"use strict";
CKEDITOR.htmlParser.element=function(a,f){this.name=a;this.attributes=f||{};this.children=[];var b=a||"",c=b.match(/^cke:(.*)/);c&&(b=c[1]);b=!(!CKEDITOR.dtd.$nonBodyContent[b]&&!CKEDITOR.dtd.$block[b]&&!CKEDITOR.dtd.$listItem[b]&&!CKEDITOR.dtd.$tableContent[b]&&!(CKEDITOR.dtd.$nonEditable[b]||b=="br"));this.isEmpty=!!CKEDITOR.dtd.$empty[a];this.isUnknown=!CKEDITOR.dtd[a];this._={isBlockLike:b,hasInlineStarted:this.isEmpty||!b}};
CKEDITOR.htmlParser.cssStyle=function(a){var f={};((a instanceof CKEDITOR.htmlParser.element?a.attributes.style:a)||"").replace(/&quot;/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,e){c=="font-family"&&(e=e.replace(/["']/g,""));f[c.toLowerCase()]=e});return{rules:f,populate:function(a){var c=this.toString();if(c)a instanceof CKEDITOR.dom.element?a.setAttribute("style",c):a instanceof CKEDITOR.htmlParser.element?a.attributes.style=c:a.style=c},toString:function(){var a=[],c;
for(c in f)f[c]&&a.push(c,":",f[c],";");return a.join("")}}};
(function(){function a(a){return function(b){return b.type==CKEDITOR.NODE_ELEMENT&&(typeof a=="string"?b.name==a:b.name in a)}}var f=function(a,b){a=a[0];b=b[0];return a<b?-1:a>b?1:0},b=CKEDITOR.htmlParser.fragment.prototype;CKEDITOR.htmlParser.element.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_ELEMENT,add:b.add,clone:function(){return new CKEDITOR.htmlParser.element(this.name,this.attributes)},filter:function(a,b){var d=this,f,k,b=d.getFilterContext(b);if(b.off)return true;
if(!d.parent)a.onRoot(b,d);for(;;){f=d.name;if(!(k=a.onElementName(b,f))){this.remove();return false}d.name=k;if(!(d=a.onElement(b,d))){this.remove();return false}if(d!==this){this.replaceWith(d);return false}if(d.name==f)break;if(d.type!=CKEDITOR.NODE_ELEMENT){this.replaceWith(d);return false}if(!d.name){this.replaceWithChildren();return false}}f=d.attributes;var j,g;for(j in f){g=j;for(k=f[j];;)if(g=a.onAttributeName(b,j))if(g!=j){delete f[j];j=g}else break;else{delete f[j];break}g&&((k=a.onAttribute(b,
d,g,k))===false?delete f[g]:f[g]=k)}d.isEmpty||this.filterChildren(a,false,b);return true},filterChildren:b.filterChildren,writeHtml:function(a,b){b&&this.filter(b);var d=this.name,h=[],k=this.attributes,j,g;a.openTag(d,k);for(j in k)h.push([j,k[j]]);a.sortAttributes&&h.sort(f);j=0;for(g=h.length;j<g;j++){k=h[j];a.attribute(k[0],k[1])}a.openTagClose(d,this.isEmpty);this.writeChildrenHtml(a);this.isEmpty||a.closeTag(d)},writeChildrenHtml:b.writeChildrenHtml,replaceWithChildren:function(){for(var a=
this.children,b=a.length;b;)a[--b].insertAfter(this);this.remove()},forEach:b.forEach,getFirst:function(b){if(!b)return this.children.length?this.children[0]:null;typeof b!="function"&&(b=a(b));for(var e=0,d=this.children.length;e<d;++e)if(b(this.children[e]))return this.children[e];return null},getHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;this.writeChildrenHtml(a);return a.getHtml()},setHtml:function(a){for(var a=this.children=CKEDITOR.htmlParser.fragment.fromHtml(a).children,b=0,
d=a.length;b<d;++b)a[b].parent=this},getOuterHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;this.writeHtml(a);return a.getHtml()},split:function(a){for(var b=this.children.splice(a,this.children.length-a),d=this.clone(),f=0;f<b.length;++f)b[f].parent=d;d.children=b;if(b[0])b[0].previous=null;if(a>0)this.children[a-1].next=null;this.parent.add(d,this.getIndex()+1);return d},addClass:function(a){if(!this.hasClass(a)){var b=this.attributes["class"]||"";this.attributes["class"]=b+(b?" ":"")+
a}},removeClass:function(a){var b=this.attributes["class"];if(b)(b=CKEDITOR.tools.trim(b.replace(RegExp("(?:\\s+|^)"+a+"(?:\\s+|$)")," ")))?this.attributes["class"]=b:delete this.attributes["class"]},hasClass:function(a){var b=this.attributes["class"];return!b?false:RegExp("(?:^|\\s)"+a+"(?=\\s|$)").test(b)},getFilterContext:function(a){var b=[];a||(a={off:false,nonEditable:false,nestedEditable:false});!a.off&&this.attributes["data-cke-processor"]=="off"&&b.push("off",true);!a.nonEditable&&this.attributes.contenteditable==
"false"?b.push("nonEditable",true):a.nonEditable&&(!a.nestedEditable&&this.attributes.contenteditable=="true")&&b.push("nestedEditable",true);if(b.length)for(var a=CKEDITOR.tools.copy(a),d=0;d<b.length;d=d+2)a[b[d]]=b[d+1];return a}},true)})();
(function(){var a={},f=/{([^}]+)}/g,b=/([\\'])/g,c=/\n/g,e=/\r/g;CKEDITOR.template=function(d){if(a[d])this.output=a[d];else{var h=d.replace(b,"\\$1").replace(c,"\\n").replace(e,"\\r").replace(f,function(a,b){return"',data['"+b+"']==undefined?'{"+b+"}':data['"+b+"'],'"});this.output=a[d]=Function("data","buffer","return buffer?buffer.push('"+h+"'):['"+h+"'].join('');")}}})();delete CKEDITOR.loadFullCore;CKEDITOR.instances={};CKEDITOR.document=new CKEDITOR.dom.document(document);
CKEDITOR.add=function(a){CKEDITOR.instances[a.name]=a;a.on("focus",function(){if(CKEDITOR.currentInstance!=a){CKEDITOR.currentInstance=a;CKEDITOR.fire("currentInstance")}});a.on("blur",function(){if(CKEDITOR.currentInstance==a){CKEDITOR.currentInstance=null;CKEDITOR.fire("currentInstance")}});CKEDITOR.fire("instance",null,a)};CKEDITOR.remove=function(a){delete CKEDITOR.instances[a.name]};
(function(){var a={};CKEDITOR.addTemplate=function(f,b){var c=a[f];if(c)return c;c={name:f,source:b};CKEDITOR.fire("template",c);return a[f]=new CKEDITOR.template(c.source)};CKEDITOR.getTemplate=function(f){return a[f]}})();(function(){var a=[];CKEDITOR.addCss=function(f){a.push(f)};CKEDITOR.getCss=function(){return a.join("\n")}})();CKEDITOR.on("instanceDestroyed",function(){CKEDITOR.tools.isEmpty(this.instances)&&CKEDITOR.fire("reset")});CKEDITOR.TRISTATE_ON=1;CKEDITOR.TRISTATE_OFF=2;
CKEDITOR.TRISTATE_DISABLED=0;
(function(){CKEDITOR.inline=function(a,f){if(!CKEDITOR.env.isCompatible)return null;a=CKEDITOR.dom.element.get(a);if(a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var b=new CKEDITOR.editor(f,a,CKEDITOR.ELEMENT_MODE_INLINE),c=a.is("textarea")?a:null;if(c){b.setData(c.getValue(),null,true);a=CKEDITOR.dom.element.createFromHtml('<div contenteditable="'+!!b.readOnly+'" class="cke_textarea_inline">'+c.getValue()+"</div>",CKEDITOR.document);
a.insertAfter(c);c.hide();c.$.form&&b._attachToForm()}else b.setData(a.getHtml(),null,true);b.on("loaded",function(){b.fire("uiReady");b.editable(a);b.container=a;b.setData(b.getData(1));b.resetDirty();b.fire("contentDom");b.mode="wysiwyg";b.fire("mode");b.status="ready";b.fireOnce("instanceReady");CKEDITOR.fire("instanceReady",null,b)},null,null,1E4);b.on("destroy",function(){if(c){b.container.clearCustomData();b.container.remove();c.show()}b.element.clearCustomData();delete b.element});return b};
CKEDITOR.inlineAll=function(){var a,f,b;for(b in CKEDITOR.dtd.$editable)for(var c=CKEDITOR.document.getElementsByTag(b),e=0,d=c.count();e<d;e++){a=c.getItem(e);if(a.getAttribute("contenteditable")=="true"){f={element:a,config:{}};CKEDITOR.fire("inline",f)!==false&&CKEDITOR.inline(a,f.config)}}};CKEDITOR.domReady(function(){!CKEDITOR.disableAutoInline&&CKEDITOR.inlineAll()})})();CKEDITOR.replaceClass="ckeditor";
(function(){function a(a,e,d,h){if(!CKEDITOR.env.isCompatible)return null;a=CKEDITOR.dom.element.get(a);if(a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var k=new CKEDITOR.editor(e,a,h);if(h==CKEDITOR.ELEMENT_MODE_REPLACE){a.setStyle("visibility","hidden");k._.required=a.hasAttribute("required");a.removeAttribute("required")}d&&k.setData(d,null,true);k.on("loaded",function(){b(k);h==CKEDITOR.ELEMENT_MODE_REPLACE&&(k.config.autoUpdateElement&&
a.$.form)&&k._attachToForm();k.setMode(k.config.startupMode,function(){k.resetDirty();k.status="ready";k.fireOnce("instanceReady");CKEDITOR.fire("instanceReady",null,k)})});k.on("destroy",f);return k}function f(){var a=this.container,b=this.element;if(a){a.clearCustomData();a.remove()}if(b){b.clearCustomData();if(this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE){b.show();this._.required&&b.setAttribute("required","required")}delete this.element}}function b(a){var b=a.name,d=a.element,f=a.elementMode,
k=a.fire("uiSpace",{space:"top",html:""}).html,j=a.fire("uiSpace",{space:"bottom",html:""}).html,g=new CKEDITOR.template('<{outerEl} id="cke_{name}" class="{id} cke cke_reset cke_chrome cke_editor_{name} cke_{langDir} '+CKEDITOR.env.cssClass+'"  dir="{langDir}" lang="{langCode}" role="application"'+(a.title?' aria-labelledby="cke_{name}_arialbl"':"")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':"")+'<{outerEl} class="cke_inner cke_reset" role="presentation">{topHtml}<{outerEl} id="{contentId}" class="cke_contents cke_reset" role="presentation"></{outerEl}>{bottomHtml}</{outerEl}></{outerEl}>'),
b=CKEDITOR.dom.element.createFromHtml(g.output({id:a.id,name:b,langDir:a.lang.dir,langCode:a.langCode,voiceLabel:a.title,topHtml:k?'<span id="'+a.ui.spaceId("top")+'" class="cke_top cke_reset_all" role="presentation" style="height:auto">'+k+"</span>":"",contentId:a.ui.spaceId("contents"),bottomHtml:j?'<span id="'+a.ui.spaceId("bottom")+'" class="cke_bottom cke_reset_all" role="presentation">'+j+"</span>":"",outerEl:CKEDITOR.env.ie?"span":"div"}));if(f==CKEDITOR.ELEMENT_MODE_REPLACE){d.hide();b.insertAfter(d)}else d.append(b);
a.container=b;k&&a.ui.space("top").unselectable();j&&a.ui.space("bottom").unselectable();d=a.config.width;f=a.config.height;d&&b.setStyle("width",CKEDITOR.tools.cssLength(d));f&&a.ui.space("contents").setStyle("height",CKEDITOR.tools.cssLength(f));b.disableContextMenu();CKEDITOR.env.webkit&&b.on("focus",function(){a.focus()});a.fireOnce("uiReady")}CKEDITOR.replace=function(b,e){return a(b,e,null,CKEDITOR.ELEMENT_MODE_REPLACE)};CKEDITOR.appendTo=function(b,e,d){return a(b,e,d,CKEDITOR.ELEMENT_MODE_APPENDTO)};
CKEDITOR.replaceAll=function(){for(var a=document.getElementsByTagName("textarea"),b=0;b<a.length;b++){var d=null,f=a[b];if(f.name||f.id){if(typeof arguments[0]=="string"){if(!RegExp("(?:^|\\s)"+arguments[0]+"(?:$|\\s)").test(f.className))continue}else if(typeof arguments[0]=="function"){d={};if(arguments[0](f,d)===false)continue}this.replace(f,d)}}};CKEDITOR.editor.prototype.addMode=function(a,b){(this._.modes||(this._.modes={}))[a]=b};CKEDITOR.editor.prototype.setMode=function(a,b){var d=this,f=
this._.modes;if(!(a==d.mode||!f||!f[a])){d.fire("beforeSetMode",a);if(d.mode){var k=d.checkDirty(),f=d._.previousModeData,j,g=0;d.fire("beforeModeUnload");d.editable(0);d._.previousMode=d.mode;d._.previousModeData=j=d.getData(1);if(d.mode=="source"&&f==j){d.fire("lockSnapshot",{forceUpdate:true});g=1}d.ui.space("contents").setHtml("");d.mode=""}else d._.previousModeData=d.getData(1);this._.modes[a](function(){d.mode=a;k!==void 0&&!k&&d.resetDirty();g?d.fire("unlockSnapshot"):a=="wysiwyg"&&d.fire("saveSnapshot");
setTimeout(function(){d.fire("mode");b&&b.call(d)},0)})}};CKEDITOR.editor.prototype.resize=function(a,b,d,f){var k=this.container,j=this.ui.space("contents"),g=CKEDITOR.env.webkit&&this.document&&this.document.getWindow().$.frameElement,f=f?this.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}):k;f.setSize("width",a,true);g&&(g.style.width="1%");j.setStyle("height",Math.max(b-(d?0:(f.$.offsetHeight||0)-(j.$.clientHeight||0)),0)+"px");g&&(g.style.width=
"100%");this.fire("resize")};CKEDITOR.editor.prototype.getResizable=function(a){return a?this.ui.space("contents"):this.container};CKEDITOR.domReady(function(){CKEDITOR.replaceClass&&CKEDITOR.replaceAll(CKEDITOR.replaceClass)})})();CKEDITOR.config.startupMode="wysiwyg";
(function(){function a(a){var b=a.editor,d=a.data.path,e=d.blockLimit,l=a.data.selection,p=l.getRanges()[0],r;if(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller)if(l=f(l,d)){l.appendBogus();r=CKEDITOR.env.ie}if(h(b,d.block,e)&&p.collapsed&&!p.getCommonAncestor().isReadOnly()){d=p.clone();d.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS);e=new CKEDITOR.dom.walker(d);e.guard=function(a){return!c(a)||a.type==CKEDITOR.NODE_COMMENT||a.isReadOnly()};if(!e.checkForward()||d.checkStartOfBlock()&&
d.checkEndOfBlock()){b=p.fixBlock(true,b.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p");if(!CKEDITOR.env.needsBrFiller)(b=b.getFirst(c))&&(b.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(b.getText()).match(/^(?:&nbsp;|\xa0)$/))&&b.remove();r=1;a.cancel()}}r&&p.select()}function f(a,b){if(a.isFake)return 0;var d=b.block||b.blockLimit,e=d&&d.getLast(c);if(d&&d.isBlockBoundary()&&(!e||!(e.type==CKEDITOR.NODE_ELEMENT&&e.isBlockBoundary()))&&!d.is("pre")&&!d.getBogus())return d}function b(a){var b=a.data.getTarget();
if(b.is("input")){b=b.getAttribute("type");(b=="submit"||b=="reset")&&a.data.preventDefault()}}function c(a){return s(a)&&w(a)}function e(a,b){return function(c){var d=CKEDITOR.dom.element.get(c.data.$.toElement||c.data.$.fromElement||c.data.$.relatedTarget);(!d||!b.equals(d)&&!b.contains(d))&&a.call(this,c)}}function d(a){function b(a){return function(b,e){e&&(b.type==CKEDITOR.NODE_ELEMENT&&b.is(f))&&(d=b);if(!e&&c(b)&&(!a||!m(b)))return false}}var d,e=a.getRanges()[0],a=a.root,f={table:1,ul:1,ol:1,
dl:1};if(e.startPath().contains(f)){var p=e.clone();p.collapse(1);p.setStartAt(a,CKEDITOR.POSITION_AFTER_START);a=new CKEDITOR.dom.walker(p);a.guard=b();a.checkBackward();if(d){p=e.clone();p.collapse();p.setEndAt(d,CKEDITOR.POSITION_AFTER_END);a=new CKEDITOR.dom.walker(p);a.guard=b(true);d=false;a.checkForward();return d}}return null}function h(a,b,c){return a.config.autoParagraph!==false&&a.activeEnterMode!=CKEDITOR.ENTER_BR&&a.editable().equals(c)&&!b||b&&b.getAttribute("contenteditable")=="true"}
function k(a){a.editor.focus();a.editor.fire("saveSnapshot")}function j(a){var b=a.editor;b.getSelection().scrollIntoView();setTimeout(function(){b.fire("saveSnapshot")},0)}function g(a,b,c){for(var d=a.getCommonAncestor(b),b=a=c?b:a;(a=a.getParent())&&!d.equals(a)&&a.getChildCount()==1;)b=a;b.remove()}CKEDITOR.editable=CKEDITOR.tools.createClass({base:CKEDITOR.dom.element,$:function(a,b){this.base(b.$||b);this.editor=a;this.status="unloaded";this.hasFocus=false;this.setup()},proto:{focus:function(){var a;
if(CKEDITOR.env.webkit&&!this.hasFocus){a=this.editor._.previousActive||this.getDocument().getActive();if(this.contains(a)){a.focus();return}}try{this.$[CKEDITOR.env.ie&&this.getDocument().equals(CKEDITOR.document)?"setActive":"focus"]()}catch(b){if(!CKEDITOR.env.ie)throw b;}if(CKEDITOR.env.safari&&!this.isInline()){a=CKEDITOR.document.getActive();a.equals(this.getWindow().getFrame())||this.getWindow().focus()}},on:function(a,b){var c=Array.prototype.slice.call(arguments,0);if(CKEDITOR.env.ie&&/^focus|blur$/.exec(a)){a=
a=="focus"?"focusin":"focusout";b=e(b,this);c[0]=a;c[1]=b}return CKEDITOR.dom.element.prototype.on.apply(this,c)},attachListener:function(a){!this._.listeners&&(this._.listeners=[]);var b=Array.prototype.slice.call(arguments,1),b=a.on.apply(a,b);this._.listeners.push(b);return b},clearListeners:function(){var a=this._.listeners;try{for(;a.length;)a.pop().removeListener()}catch(b){}},restoreAttrs:function(){var a=this._.attrChanges,b,c;for(c in a)if(a.hasOwnProperty(c)){b=a[c];b!==null?this.setAttribute(c,
b):this.removeAttribute(c)}},attachClass:function(a){var b=this.getCustomData("classes");if(!this.hasClass(a)){!b&&(b=[]);b.push(a);this.setCustomData("classes",b);this.addClass(a)}},changeAttr:function(a,b){var c=this.getAttribute(a);if(b!==c){!this._.attrChanges&&(this._.attrChanges={});a in this._.attrChanges||(this._.attrChanges[a]=c);this.setAttribute(a,b)}},insertHtml:function(a,b){k(this);q(this,b||"html",a)},insertText:function(a){k(this);var b=this.editor,c=b.getSelection().getStartElement().hasAscendant("pre",
true)?CKEDITOR.ENTER_BR:b.activeEnterMode,b=c==CKEDITOR.ENTER_BR,d=CKEDITOR.tools,a=d.htmlEncode(a.replace(/\r\n/g,"\n")),a=a.replace(/\t/g,"&nbsp;&nbsp; &nbsp;"),c=c==CKEDITOR.ENTER_P?"p":"div";if(!b){var e=/\n{2}/g;if(e.test(a))var f="<"+c+">",r="</"+c+">",a=f+a.replace(e,function(){return r+f})+r}a=a.replace(/\n/g,"<br>");b||(a=a.replace(RegExp("<br>(?=</"+c+">)"),function(a){return d.repeat(a,2)}));a=a.replace(/^ | $/g,"&nbsp;");a=a.replace(/(>|\s) /g,function(a,b){return b+"&nbsp;"}).replace(/ (?=<)/g,
"&nbsp;");q(this,"text",a)},insertElement:function(a,b){b?this.insertElementIntoRange(a,b):this.insertElementIntoSelection(a)},insertElementIntoRange:function(a,b){var c=this.editor,d=c.config.enterMode,e=a.getName(),f=CKEDITOR.dtd.$block[e];if(b.checkReadOnly())return false;b.deleteContents(1);b.startContainer.type==CKEDITOR.NODE_ELEMENT&&b.startContainer.is({tr:1,table:1,tbody:1,thead:1,tfoot:1})&&t(b);var r,n;if(f)for(;(r=b.getCommonAncestor(0,1))&&(n=CKEDITOR.dtd[r.getName()])&&(!n||!n[e]);)if(r.getName()in
CKEDITOR.dtd.span)b.splitElement(r);else if(b.checkStartOfBlock()&&b.checkEndOfBlock()){b.setStartBefore(r);b.collapse(true);r.remove()}else b.splitBlock(d==CKEDITOR.ENTER_DIV?"div":"p",c.editable());b.insertNode(a);return true},insertElementIntoSelection:function(a){k(this);var b=this.editor,d=b.activeEnterMode,b=b.getSelection(),e=b.getRanges()[0],f=a.getName(),f=CKEDITOR.dtd.$block[f];if(this.insertElementIntoRange(a,e)){e.moveToPosition(a,CKEDITOR.POSITION_AFTER_END);if(f)if((f=a.getNext(function(a){return c(a)&&
!m(a)}))&&f.type==CKEDITOR.NODE_ELEMENT&&f.is(CKEDITOR.dtd.$block))f.getDtd()["#"]?e.moveToElementEditStart(f):e.moveToElementEditEnd(a);else if(!f&&d!=CKEDITOR.ENTER_BR){f=e.fixBlock(true,d==CKEDITOR.ENTER_DIV?"div":"p");e.moveToElementEditStart(f)}}b.selectRanges([e]);j(this)},setData:function(a,b){b||(a=this.editor.dataProcessor.toHtml(a));this.setHtml(a);this.fixInitialSelection();if(this.status=="unloaded")this.status="ready";this.editor.fire("dataReady")},getData:function(a){var b=this.getHtml();
a||(b=this.editor.dataProcessor.toDataFormat(b));return b},setReadOnly:function(a){this.setAttribute("contenteditable",!a)},detach:function(){this.removeClass("cke_editable");this.status="detached";var a=this.editor;this._.detach();delete a.document;delete a.window},isInline:function(){return this.getDocument().equals(CKEDITOR.document)},fixInitialSelection:function(){function a(){var b=c.getDocument().$,d=b.getSelection(),e;if(d.anchorNode&&d.anchorNode==c.$)e=true;else if(CKEDITOR.env.webkit){var f=
c.getDocument().getActive();f&&(f.equals(c)&&!d.anchorNode)&&(e=true)}if(e){e=new CKEDITOR.dom.range(c);e.moveToElementEditStart(c);b=b.createRange();b.setStart(e.startContainer.$,e.startOffset);b.collapse(true);d.removeAllRanges();d.addRange(b)}}function b(){var a=c.getDocument().$,d=a.selection,e=c.getDocument().getActive();if(d.type=="None"&&e.equals(c)){d=new CKEDITOR.dom.range(c);a=a.body.createTextRange();d.moveToElementEditStart(c);d=d.startContainer;d.type!=CKEDITOR.NODE_ELEMENT&&(d=d.getParent());
a.moveToElementText(d.$);a.collapse(true);a.select()}}var c=this;if(CKEDITOR.env.ie&&(CKEDITOR.env.version<9||CKEDITOR.env.quirks)){if(this.hasFocus){this.focus();b()}}else if(this.hasFocus){this.focus();a()}else this.once("focus",function(){a()},null,null,-999)},setup:function(){var a=this.editor;this.attachListener(a,"beforeGetData",function(){var b=this.getData();this.is("textarea")||a.config.ignoreEmptyParagraph!==false&&(b=b.replace(y,function(a,b){return b}));a.setData(b,null,1)},this);this.attachListener(a,
"getSnapshot",function(a){a.data=this.getData(1)},this);this.attachListener(a,"afterSetData",function(){this.setData(a.getData(1))},this);this.attachListener(a,"loadSnapshot",function(a){this.setData(a.data,1)},this);this.attachListener(a,"beforeFocus",function(){var b=a.getSelection();(b=b&&b.getNative())&&b.type=="Control"||this.focus()},this);this.attachListener(a,"insertHtml",function(a){this.insertHtml(a.data.dataValue,a.data.mode)},this);this.attachListener(a,"insertElement",function(a){this.insertElement(a.data)},
this);this.attachListener(a,"insertText",function(a){this.insertText(a.data)},this);this.setReadOnly(a.readOnly);this.attachClass("cke_editable");this.attachClass(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"cke_editable_inline":a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE||a.elementMode==CKEDITOR.ELEMENT_MODE_APPENDTO?"cke_editable_themed":"");this.attachClass("cke_contents_"+a.config.contentsLangDirection);a.keystrokeHandler.blockedKeystrokes[8]=+a.readOnly;a.keystrokeHandler.attach(this);this.on("blur",
function(){this.hasFocus=false},null,null,-1);this.on("focus",function(){this.hasFocus=true},null,null,-1);a.focusManager.add(this);if(this.equals(CKEDITOR.document.getActive())){this.hasFocus=true;a.once("contentDom",function(){a.focusManager.focus(this)},this)}this.isInline()&&this.changeAttr("tabindex",a.tabIndex);if(!this.is("textarea")){a.document=this.getDocument();a.window=this.getWindow();var e=a.document;this.changeAttr("spellcheck",!a.config.disableNativeSpellChecker);var f=a.config.contentsLangDirection;
this.getDirection(1)!=f&&this.changeAttr("dir",f);var h=CKEDITOR.getCss();if(h){f=e.getHead();if(!f.getCustomData("stylesheet")){h=e.appendStyleText(h);h=new CKEDITOR.dom.element(h.ownerNode||h.owningElement);f.setCustomData("stylesheet",h);h.data("cke-temp",1)}}f=e.getCustomData("stylesheet_ref")||0;e.setCustomData("stylesheet_ref",f+1);this.setCustomData("cke_includeReadonly",!a.config.disableReadonlyStyling);this.attachListener(this,"click",function(a){var a=a.data,b=(new CKEDITOR.dom.elementPath(a.getTarget(),
this)).contains("a");b&&(a.$.button!=2&&b.isReadOnly())&&a.preventDefault()});var l={8:1,46:1};this.attachListener(a,"key",function(b){if(a.readOnly)return true;var c=b.data.domEvent.getKey(),e;if(c in l){var b=a.getSelection(),f,h=b.getRanges()[0],g=h.startPath(),o,m,j,c=c==8;if(CKEDITOR.env.ie&&CKEDITOR.env.version<11&&(f=b.getSelectedElement())||(f=d(b))){a.fire("saveSnapshot");h.moveToPosition(f,CKEDITOR.POSITION_BEFORE_START);f.remove();h.select();a.fire("saveSnapshot");e=1}else if(h.collapsed)if((o=
g.block)&&(j=o[c?"getPrevious":"getNext"](s))&&j.type==CKEDITOR.NODE_ELEMENT&&j.is("table")&&h[c?"checkStartOfBlock":"checkEndOfBlock"]()){a.fire("saveSnapshot");h[c?"checkEndOfBlock":"checkStartOfBlock"]()&&o.remove();h["moveToElementEdit"+(c?"End":"Start")](j);h.select();a.fire("saveSnapshot");e=1}else if(g.blockLimit&&g.blockLimit.is("td")&&(m=g.blockLimit.getAscendant("table"))&&h.checkBoundaryOfElement(m,c?CKEDITOR.START:CKEDITOR.END)&&(j=m[c?"getPrevious":"getNext"](s))){a.fire("saveSnapshot");
h["moveToElementEdit"+(c?"End":"Start")](j);h.checkStartOfBlock()&&h.checkEndOfBlock()?j.remove():h.select();a.fire("saveSnapshot");e=1}else if((m=g.contains(["td","th","caption"]))&&h.checkBoundaryOfElement(m,c?CKEDITOR.START:CKEDITOR.END))e=1}return!e});a.blockless&&(CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller)&&this.attachListener(this,"keyup",function(b){if(b.data.getKeystroke()in l&&!this.getFirst(c)){this.appendBogus();b=a.createRange();b.moveToPosition(this,CKEDITOR.POSITION_AFTER_START);b.select()}});
this.attachListener(this,"dblclick",function(b){if(a.readOnly)return false;b={element:b.data.getTarget()};a.fire("doubleclick",b)});CKEDITOR.env.ie&&this.attachListener(this,"click",b);CKEDITOR.env.ie||this.attachListener(this,"mousedown",function(b){var c=b.data.getTarget();if(c.is("img","hr","input","textarea","select")&&!c.isReadOnly()){a.getSelection().selectElement(c);c.is("input","textarea","select")&&b.data.preventDefault()}});CKEDITOR.env.gecko&&this.attachListener(this,"mouseup",function(b){if(b.data.$.button==
2){b=b.data.getTarget();if(!b.getOuterHtml().replace(y,"")){var c=a.createRange();c.moveToElementEditStart(b);c.select(true)}}});if(CKEDITOR.env.webkit){this.attachListener(this,"click",function(a){a.data.getTarget().is("input","select")&&a.data.preventDefault()});this.attachListener(this,"mouseup",function(a){a.data.getTarget().is("input","textarea")&&a.data.preventDefault()})}CKEDITOR.env.webkit&&this.attachListener(a,"key",function(b){b=b.data.domEvent.getKey();if(b in l){var c=b==8,d=a.getSelection().getRanges()[0],
b=d.startPath();if(d.collapsed){var e;a:{var f=b.block;if(f)if(d[c?"checkStartOfBlock":"checkEndOfBlock"]())if(!d.moveToClosestEditablePosition(f,!c)||!d.collapsed)e=false;else{if(d.startContainer.type==CKEDITOR.NODE_ELEMENT){var h=d.startContainer.getChild(d.startOffset-(c?1:0));if(h&&h.type==CKEDITOR.NODE_ELEMENT&&h.is("hr")){a.fire("saveSnapshot");h.remove();e=true;break a}}if((d=d.startPath().block)&&(!d||!d.contains(f))){a.fire("saveSnapshot");var j;(j=(c?d:f).getBogus())&&j.remove();e=a.getSelection();
j=e.createBookmarks();(c?f:d).moveChildren(c?d:f,false);b.lastElement.mergeSiblings();g(f,d,!c);e.selectBookmarks(j);e=true}}else e=false;else e=false}if(!e)return}else{c=d;e=b.block;j=c.endPath().block;if(!e||!j||e.equals(j))b=false;else{a.fire("saveSnapshot");(f=e.getBogus())&&f.remove();c.deleteContents();if(j.getParent()){j.moveChildren(e,false);b.lastElement.mergeSiblings();g(e,j,true)}c=a.getSelection().getRanges()[0];c.collapse(1);c.select();b=true}if(!b)return}a.getSelection().scrollIntoView();
a.fire("saveSnapshot");return false}},this,null,100)}}},_:{detach:function(){this.editor.setData(this.editor.getData(),0,1);this.clearListeners();this.restoreAttrs();var a;if(a=this.removeCustomData("classes"))for(;a.length;)this.removeClass(a.pop());if(!this.is("textarea")){a=this.getDocument();var b=a.getHead();if(b.getCustomData("stylesheet")){var c=a.getCustomData("stylesheet_ref");if(--c)a.setCustomData("stylesheet_ref",c);else{a.removeCustomData("stylesheet_ref");b.removeCustomData("stylesheet").remove()}}}this.editor.fire("contentDomUnload");
delete this.editor}}});CKEDITOR.editor.prototype.editable=function(a){var b=this._.editable;if(b&&a)return 0;if(arguments.length)b=this._.editable=a?a instanceof CKEDITOR.editable?a:new CKEDITOR.editable(this,a):(b&&b.detach(),null);return b};var m=CKEDITOR.dom.walker.bogus(),y=/(^|<body\b[^>]*>)\s*<(p|div|address|h\d|center|pre)[^>]*>\s*(?:<br[^>]*>|&nbsp;|\u00A0|&#160;)?\s*(:?<\/\2>)?\s*(?=$|<\/body>)/gi,s=CKEDITOR.dom.walker.whitespaces(true),w=CKEDITOR.dom.walker.bookmark(false,true);CKEDITOR.on("instanceLoaded",
function(b){var c=b.editor;c.on("insertElement",function(a){a=a.data;if(a.type==CKEDITOR.NODE_ELEMENT&&(a.is("input")||a.is("textarea"))){a.getAttribute("contentEditable")!="false"&&a.data("cke-editable",a.hasAttribute("contenteditable")?"true":"1");a.setAttribute("contentEditable",false)}});c.on("selectionChange",function(b){if(!c.readOnly){var d=c.getSelection();if(d&&!d.isLocked){d=c.checkDirty();c.fire("lockSnapshot");a(b);c.fire("unlockSnapshot");!d&&c.resetDirty()}}})});CKEDITOR.on("instanceCreated",
function(a){var b=a.editor;b.on("mode",function(){var a=b.editable();if(a&&a.isInline()){var c=b.title;a.changeAttr("role","textbox");a.changeAttr("aria-label",c);c&&a.changeAttr("title",c);var d=b.fire("ariaEditorHelpLabel",{}).label;if(d)if(c=this.ui.space(this.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"top":"contents")){var e=CKEDITOR.tools.getNextId(),d=CKEDITOR.dom.element.createFromHtml('<span id="'+e+'" class="cke_voice_label">'+d+"</span>");c.append(d);a.changeAttr("aria-describedby",e)}}})});
CKEDITOR.addCss(".cke_editable{cursor:text}.cke_editable img,.cke_editable input,.cke_editable textarea{cursor:default}");var q=function(){function a(b){return b.type==CKEDITOR.NODE_ELEMENT}function b(c,d){var e,f,l,p,h=[],g=d.range.startContainer;e=d.range.startPath();for(var g=r[g.getName()],n=0,j=c.getChildren(),m=j.count(),o=-1,C=-1,k=0,q=e.contains(r.$list);n<m;++n){e=j.getItem(n);if(a(e)){l=e.getName();if(q&&l in CKEDITOR.dtd.$list)h=h.concat(b(e,d));else{p=!!g[l];if(l=="br"&&e.data("cke-eol")&&
(!n||n==m-1)){k=(f=n?h[n-1].node:j.getItem(n+1))&&(!a(f)||!f.is("br"));f=f&&a(f)&&r.$block[f.getName()]}o==-1&&!p&&(o=n);p||(C=n);h.push({isElement:1,isLineBreak:k,isBlock:e.isBlockBoundary(),hasBlockSibling:f,node:e,name:l,allowed:p});f=k=0}}else h.push({isElement:0,node:e,allowed:1})}if(o>-1)h[o].firstNotAllowed=1;if(C>-1)h[C].lastNotAllowed=1;return h}function d(b,c){var e=[],f=b.getChildren(),l=f.count(),p,h=0,g=r[c],n=!b.is(r.$inline)||b.is("br");for(n&&e.push(" ");h<l;h++){p=f.getItem(h);a(p)&&
!p.is(g)?e=e.concat(d(p,c)):e.push(p)}n&&e.push(" ");return e}function e(b){return b&&a(b)&&(b.is(r.$removeEmpty)||b.is("a")&&!b.isBlockBoundary())}function f(b,c,d,e){var p=b.clone(),h,r;p.setEndAt(c,CKEDITOR.POSITION_BEFORE_END);if((h=(new CKEDITOR.dom.walker(p)).next())&&a(h)&&g[h.getName()]&&(r=h.getPrevious())&&a(r)&&!r.getParent().equals(b.startContainer)&&d.contains(r)&&e.contains(h)&&h.isIdentical(r)){h.moveChildren(r);h.remove();f(b,c,d,e)}}function p(b,c){function d(b,c){if(c.isBlock&&c.isElement&&
!c.node.is("br")&&a(b)&&b.is("br")){b.remove();return 1}}var e=c.endContainer.getChild(c.endOffset),f=c.endContainer.getChild(c.endOffset-1);e&&d(e,b[b.length-1]);if(f&&d(f,b[0])){c.setEnd(c.endContainer,c.endOffset-1);c.collapse()}}var r=CKEDITOR.dtd,g={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ul:1,ol:1,li:1,pre:1,dl:1,blockquote:1},m={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},C=CKEDITOR.tools.extend({},r.$inline);delete C.br;return function(g,n,k){var q=g.editor,v=q.getSelection().getRanges()[0],
G=false;if(n=="unfiltered_html"){n="html";G=true}if(!v.checkReadOnly()){var z=(new CKEDITOR.dom.elementPath(v.startContainer,v.root)).blockLimit||v.root,n={type:n,dontFilter:G,editable:g,editor:q,range:v,blockLimit:z,mergeCandidates:[],zombies:[]},q=n.range,G=n.mergeCandidates,B,x,E,s;if(n.type=="text"&&q.shrink(CKEDITOR.SHRINK_ELEMENT,true,false)){B=CKEDITOR.dom.element.createFromHtml("<span>&nbsp;</span>",q.document);q.insertNode(B);q.setStartAfter(B)}x=new CKEDITOR.dom.elementPath(q.startContainer);
n.endPath=E=new CKEDITOR.dom.elementPath(q.endContainer);if(!q.collapsed){var z=E.block||E.blockLimit,w=q.getCommonAncestor();z&&(!z.equals(w)&&!z.contains(w)&&q.checkEndOfBlock())&&n.zombies.push(z);q.deleteContents()}for(;(s=a(q.startContainer)&&q.startContainer.getChild(q.startOffset-1))&&a(s)&&s.isBlockBoundary()&&x.contains(s);)q.moveToPosition(s,CKEDITOR.POSITION_BEFORE_END);f(q,n.blockLimit,x,E);if(B){q.setEndBefore(B);q.collapse();B.remove()}B=q.startPath();if(z=B.contains(e,false,1)){q.splitElement(z);
n.inlineStylesRoot=z;n.inlineStylesPeak=B.lastElement}B=q.createBookmark();(z=B.startNode.getPrevious(c))&&a(z)&&e(z)&&G.push(z);(z=B.startNode.getNext(c))&&a(z)&&e(z)&&G.push(z);for(z=B.startNode;(z=z.getParent())&&e(z);)G.push(z);q.moveToBookmark(B);if(B=k){B=n.range;if(n.type=="text"&&n.inlineStylesRoot){s=n.inlineStylesPeak;q=s.getDocument().createText("{cke-peak}");for(G=n.inlineStylesRoot.getParent();!s.equals(G);){q=q.appendTo(s.clone());s=s.getParent()}k=q.getOuterHtml().split("{cke-peak}").join(k)}s=
n.blockLimit.getName();if(/^\s+|\s+$/.test(k)&&"span"in CKEDITOR.dtd[s])var y='<span data-cke-marker="1">&nbsp;</span>',k=y+k+y;k=n.editor.dataProcessor.toHtml(k,{context:null,fixForBody:false,dontFilter:n.dontFilter,filter:n.editor.activeFilter,enterMode:n.editor.activeEnterMode});s=B.document.createElement("body");s.setHtml(k);if(y){s.getFirst().remove();s.getLast().remove()}if((y=B.startPath().block)&&!(y.getChildCount()==1&&y.getBogus()))a:{var t;if(s.getChildCount()==1&&a(t=s.getFirst())&&t.is(m)){y=
t.getElementsByTag("*");B=0;for(G=y.count();B<G;B++){q=y.getItem(B);if(!q.is(C))break a}t.moveChildren(t.getParent(1));t.remove()}}n.dataWrapper=s;B=k}if(B){t=n.range;var y=t.document,D,k=n.blockLimit;B=0;var J;s=[];var H,Q,G=q=0,M,S;x=t.startContainer;var z=n.endPath.elements[0],T;E=z.getPosition(x);w=!!z.getCommonAncestor(x)&&E!=CKEDITOR.POSITION_IDENTICAL&&!(E&CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED);x=b(n.dataWrapper,n);for(p(x,t);B<x.length;B++){E=x[B];if(D=E.isLineBreak){D=
t;M=k;var O=void 0,V=void 0;if(E.hasBlockSibling)D=1;else{O=D.startContainer.getAscendant(r.$block,1);if(!O||!O.is({div:1,p:1}))D=0;else{V=O.getPosition(M);if(V==CKEDITOR.POSITION_IDENTICAL||V==CKEDITOR.POSITION_CONTAINS)D=0;else{M=D.splitElement(O);D.moveToPosition(M,CKEDITOR.POSITION_AFTER_START);D=1}}}}if(D)G=B>0;else{D=t.startPath();if(!E.isBlock&&h(n.editor,D.block,D.blockLimit)&&(Q=n.editor.activeEnterMode!=CKEDITOR.ENTER_BR&&n.editor.config.autoParagraph!==false?n.editor.activeEnterMode==CKEDITOR.ENTER_DIV?
"div":"p":false)){Q=y.createElement(Q);Q.appendBogus();t.insertNode(Q);CKEDITOR.env.needsBrFiller&&(J=Q.getBogus())&&J.remove();t.moveToPosition(Q,CKEDITOR.POSITION_BEFORE_END)}if((D=t.startPath().block)&&!D.equals(H)){if(J=D.getBogus()){J.remove();s.push(D)}H=D}E.firstNotAllowed&&(q=1);if(q&&E.isElement){D=t.startContainer;for(M=null;D&&!r[D.getName()][E.name];){if(D.equals(k)){D=null;break}M=D;D=D.getParent()}if(D){if(M){S=t.splitElement(M);n.zombies.push(S);n.zombies.push(M)}}else{M=k.getName();
T=!B;D=B==x.length-1;M=d(E.node,M);for(var O=[],V=M.length,W=0,Y=void 0,Z=0,U=-1;W<V;W++){Y=M[W];if(Y==" "){if(!Z&&(!T||W)){O.push(new CKEDITOR.dom.text(" "));U=O.length}Z=1}else{O.push(Y);Z=0}}D&&U==O.length&&O.pop();T=O}}if(T){for(;D=T.pop();)t.insertNode(D);T=0}else t.insertNode(E.node);if(E.lastNotAllowed&&B<x.length-1){(S=w?z:S)&&t.setEndAt(S,CKEDITOR.POSITION_AFTER_START);q=0}t.collapse()}}n.dontMoveCaret=G;n.bogusNeededBlocks=s}J=n.range;var N;S=n.bogusNeededBlocks;for(T=J.createBookmark();H=
n.zombies.pop();)if(H.getParent()){Q=J.clone();Q.moveToElementEditStart(H);Q.removeEmptyBlocksAtEnd()}if(S)for(;H=S.pop();)CKEDITOR.env.needsBrFiller?H.appendBogus():H.append(J.document.createText(" "));for(;H=n.mergeCandidates.pop();)H.mergeSiblings();J.moveToBookmark(T);if(!n.dontMoveCaret){for(H=a(J.startContainer)&&J.startContainer.getChild(J.startOffset-1);H&&a(H)&&!H.is(r.$empty);){if(H.isBlockBoundary())J.moveToPosition(H,CKEDITOR.POSITION_BEFORE_END);else{if(e(H)&&H.getHtml().match(/(\s|&nbsp;)$/g)){N=
null;break}N=J.clone();N.moveToPosition(H,CKEDITOR.POSITION_BEFORE_END)}H=H.getLast(c)}N&&J.moveToRange(N)}v.select();j(g)}}}(),t=function(){function a(b){b=new CKEDITOR.dom.walker(b);b.guard=function(a,b){if(b)return false;if(a.type==CKEDITOR.NODE_ELEMENT)return a.is(CKEDITOR.dtd.$tableContent)};b.evaluator=function(a){return a.type==CKEDITOR.NODE_ELEMENT};return b}function b(a,c,d){c=a.getDocument().createElement(c);a.append(c,d);return c}function c(a){var b=a.count(),d;for(b;b-- >0;){d=a.getItem(b);
if(!CKEDITOR.tools.trim(d.getHtml())){d.appendBogus();CKEDITOR.env.ie&&(CKEDITOR.env.version<9&&d.getChildCount())&&d.getFirst().remove()}}}return function(d){var e=d.startContainer,f=e.getAscendant("table",1),h=false;c(f.getElementsByTag("td"));c(f.getElementsByTag("th"));f=d.clone();f.setStart(e,0);f=a(f).lastBackward();if(!f){f=d.clone();f.setEndAt(e,CKEDITOR.POSITION_BEFORE_END);f=a(f).lastForward();h=true}f||(f=e);if(f.is("table")){d.setStartAt(f,CKEDITOR.POSITION_BEFORE_START);d.collapse(true);
f.remove()}else{f.is({tbody:1,thead:1,tfoot:1})&&(f=b(f,"tr",h));f.is("tr")&&(f=b(f,f.getParent().is("thead")?"th":"td",h));(e=f.getBogus())&&e.remove();d.moveToPosition(f,h?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END)}}}()})();
(function(){function a(){var a=this._.fakeSelection,b;if(a){b=this.getSelection(1);if(!b||!b.isHidden()){a.reset();a=0}}if(!a){a=b||this.getSelection(1);if(!a||a.getType()==CKEDITOR.SELECTION_NONE)return}this.fire("selectionCheck",a);b=this.elementPath();if(!b.compare(this._.selectionPreviousPath)){if(CKEDITOR.env.webkit)this._.previousActive=this.document.getActive();this._.selectionPreviousPath=b;this.fire("selectionChange",{selection:a,path:b})}}function f(){q=true;if(!w){b.call(this);w=CKEDITOR.tools.setTimeout(b,
200,this)}}function b(){w=null;if(q){CKEDITOR.tools.setTimeout(a,0,this);q=false}}function c(a){return t(a)||a.type==CKEDITOR.NODE_ELEMENT&&!a.is(CKEDITOR.dtd.$empty)?true:false}function e(a){function b(c,d){return!c||c.type==CKEDITOR.NODE_TEXT?false:a.clone()["moveToElementEdit"+(d?"End":"Start")](c)}if(!(a.root instanceof CKEDITOR.editable))return false;var d=a.startContainer,e=a.getPreviousNode(c,null,d),f=a.getNextNode(c,null,d);return b(e)||b(f,1)||!e&&!f&&!(d.type==CKEDITOR.NODE_ELEMENT&&d.isBlockBoundary()&&
d.getBogus())?true:false}function d(a){return a.getCustomData("cke-fillingChar")}function h(a,b){var c=a&&a.removeCustomData("cke-fillingChar");if(c){if(b!==false){var d,e=a.getDocument().getSelection().getNative(),f=e&&e.type!="None"&&e.getRangeAt(0);if(c.getLength()>1&&f&&f.intersectsNode(c.$)){d=j(e);f=e.focusNode==c.$&&e.focusOffset>0;e.anchorNode==c.$&&e.anchorOffset>0&&d[0].offset--;f&&d[1].offset--}}c.setText(k(c.getText()));d&&g(a.getDocument().$,d)}}function k(a){return a.replace(/\u200B( )?/g,
function(a){return a[1]?" ":""})}function j(a){return[{node:a.anchorNode,offset:a.anchorOffset},{node:a.focusNode,offset:a.focusOffset}]}function g(a,b){var c=a.getSelection(),d=a.createRange();d.setStart(b[0].node,b[0].offset);d.collapse(true);c.removeAllRanges();c.addRange(d);c.extend(b[1].node,b[1].offset)}function m(a){var b=CKEDITOR.dom.element.createFromHtml('<div data-cke-hidden-sel="1" data-cke-temp="1" style="'+(CKEDITOR.env.ie?"display:none":"position:fixed;top:0;left:-1000px")+'">&nbsp;</div>',
a.document);a.fire("lockSnapshot");a.editable().append(b);var c=a.getSelection(1),d=a.createRange(),e=c.root.on("selectionchange",function(a){a.cancel()},null,null,0);d.setStartAt(b,CKEDITOR.POSITION_AFTER_START);d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);c.selectRanges([d]);e.removeListener();a.fire("unlockSnapshot");a._.hiddenSelectionContainer=b}function y(a){var b={37:1,39:1,8:1,46:1};return function(c){var d=c.data.getKeystroke();if(b[d]){var e=a.getSelection().getRanges(),f=e[0];if(e.length==
1&&f.collapsed)if((d=f[d<38?"getPreviousEditableNode":"getNextEditableNode"]())&&d.type==CKEDITOR.NODE_ELEMENT&&d.getAttribute("contenteditable")=="false"){a.getSelection().fake(d);c.data.preventDefault();c.cancel()}}}}function s(a){for(var b=0;b<a.length;b++){var c=a[b];c.getCommonAncestor().isReadOnly()&&a.splice(b,1);if(!c.collapsed){if(c.startContainer.isReadOnly())for(var d=c.startContainer,e;d;){if((e=d.type==CKEDITOR.NODE_ELEMENT)&&d.is("body")||!d.isReadOnly())break;e&&d.getAttribute("contentEditable")==
"false"&&c.setStartAfter(d);d=d.getParent()}d=c.startContainer;e=c.endContainer;var f=c.startOffset,h=c.endOffset,g=c.clone();d&&d.type==CKEDITOR.NODE_TEXT&&(f>=d.getLength()?g.setStartAfter(d):g.setStartBefore(d));e&&e.type==CKEDITOR.NODE_TEXT&&(h?g.setEndAfter(e):g.setEndBefore(e));d=new CKEDITOR.dom.walker(g);d.evaluator=function(d){if(d.type==CKEDITOR.NODE_ELEMENT&&d.isReadOnly()){var e=c.clone();c.setEndBefore(d);c.collapsed&&a.splice(b--,1);if(!(d.getPosition(g.endContainer)&CKEDITOR.POSITION_CONTAINS)){e.setStartAfter(d);
e.collapsed||a.splice(b+1,0,e)}return true}return false};d.next()}}return a}var w,q,t=CKEDITOR.dom.walker.invisible(1),i=function(){function a(b){return function(a){var c=a.editor.createRange();c.moveToClosestEditablePosition(a.selected,b)&&a.editor.getSelection().selectRanges([c]);return false}}function b(a){return function(b){var c=b.editor,d=c.createRange(),e;if(!(e=d.moveToClosestEditablePosition(b.selected,a)))e=d.moveToClosestEditablePosition(b.selected,!a);e&&c.getSelection().selectRanges([d]);
c.fire("saveSnapshot");b.selected.remove();if(!e){d.moveToElementEditablePosition(c.editable());c.getSelection().selectRanges([d])}c.fire("saveSnapshot");return false}}var c=a(),d=a(1);return{37:c,38:c,39:d,40:d,8:b(),46:b(1)}}();CKEDITOR.on("instanceCreated",function(b){function c(){var a=d.getSelection();a&&a.removeAllRanges()}var d=b.editor;d.on("contentDom",function(){function b(){z=new CKEDITOR.dom.selection(d.getSelection());z.lock()}function c(){l.removeListener("mouseup",c);i.removeListener("mouseup",
c);var a=CKEDITOR.document.$.selection,b=a.createRange();a.type!="None"&&b.parentElement().ownerDocument==e.$&&b.select()}var e=d.document,l=CKEDITOR.document,g=d.editable(),p=e.getBody(),i=e.getDocumentElement(),v=g.isInline(),j,z;CKEDITOR.env.gecko&&g.attachListener(g,"focus",function(a){a.removeListener();if(j!==0)if((a=d.getSelection().getNative())&&a.isCollapsed&&a.anchorNode==g.$){a=d.createRange();a.moveToElementEditStart(g);a.select()}},null,null,-2);g.attachListener(g,CKEDITOR.env.webkit?
"DOMFocusIn":"focus",function(){j&&CKEDITOR.env.webkit&&(j=d._.previousActive&&d._.previousActive.equals(e.getActive()));d.unlockSelection(j);j=0},null,null,-1);g.attachListener(g,"mousedown",function(){j=0});if(CKEDITOR.env.ie||v){A?g.attachListener(g,"beforedeactivate",b,null,null,-1):g.attachListener(d,"selectionCheck",b,null,null,-1);g.attachListener(g,CKEDITOR.env.webkit?"DOMFocusOut":"blur",function(){d.lockSelection(z);j=1},null,null,-1);g.attachListener(g,"mousedown",function(){j=0})}if(CKEDITOR.env.ie&&
!v){var B;g.attachListener(g,"mousedown",function(a){if(a.data.$.button==2){a=d.document.getSelection();if(!a||a.getType()==CKEDITOR.SELECTION_NONE)B=d.window.getScrollPosition()}});g.attachListener(g,"mouseup",function(a){if(a.data.$.button==2&&B){d.document.$.documentElement.scrollLeft=B.x;d.document.$.documentElement.scrollTop=B.y}B=null});if(e.$.compatMode!="BackCompat"){if(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)i.on("mousedown",function(a){function b(a){a=a.data.$;if(d){var c=p.$.createTextRange();
try{c.moveToPoint(a.clientX,a.clientY)}catch(e){}d.setEndPoint(f.compareEndPoints("StartToStart",c)<0?"EndToEnd":"StartToStart",c);d.select()}}function c(){i.removeListener("mousemove",b);l.removeListener("mouseup",c);i.removeListener("mouseup",c);d.select()}a=a.data;if(a.getTarget().is("html")&&a.$.y<i.$.clientHeight&&a.$.x<i.$.clientWidth){var d=p.$.createTextRange();try{d.moveToPoint(a.$.clientX,a.$.clientY)}catch(e){}var f=d.duplicate();i.on("mousemove",b);l.on("mouseup",c);i.on("mouseup",c)}});
if(CKEDITOR.env.version>7&&CKEDITOR.env.version<11)i.on("mousedown",function(a){if(a.data.getTarget().is("html")){l.on("mouseup",c);i.on("mouseup",c)}})}}g.attachListener(g,"selectionchange",a,d);g.attachListener(g,"keyup",f,d);g.attachListener(g,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){d.forceNextSelectionCheck();d.selectionChange(1)});if(v&&(CKEDITOR.env.webkit||CKEDITOR.env.gecko)){var x;g.attachListener(g,"mousedown",function(){x=1});g.attachListener(e.getDocumentElement(),"mouseup",
function(){x&&f.call(d);x=0})}else g.attachListener(CKEDITOR.env.ie?g:e.getDocumentElement(),"mouseup",f,d);CKEDITOR.env.webkit&&g.attachListener(e,"keydown",function(a){switch(a.data.getKey()){case 13:case 33:case 34:case 35:case 36:case 37:case 39:case 8:case 45:case 46:h(g)}},null,null,-1);g.attachListener(g,"keydown",y(d),null,null,-1)});d.on("setData",function(){d.unlockSelection();CKEDITOR.env.webkit&&c()});d.on("contentDomUnload",function(){d.unlockSelection()});if(CKEDITOR.env.ie9Compat)d.on("beforeDestroy",
c,null,null,9);d.on("dataReady",function(){delete d._.fakeSelection;delete d._.hiddenSelectionContainer;d.selectionChange(1)});d.on("loadSnapshot",function(){var a=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT),b=d.editable().getLast(a);if(b&&b.hasAttribute("data-cke-hidden-sel")){b.remove();if(CKEDITOR.env.gecko)(a=d.editable().getFirst(a))&&(a.is("br")&&a.getAttribute("_moz_editor_bogus_node"))&&a.remove()}},null,null,100);d.on("key",function(a){if(d.mode=="wysiwyg"){var b=d.getSelection();
if(b.isFake){var c=i[a.data.keyCode];if(c)return c({editor:d,selected:b.getSelectedElement(),selection:b,keyEvent:a})}}})});CKEDITOR.on("instanceReady",function(a){function b(){var a=e.editable();if(a)if(a=d(a)){var c=e.document.$.getSelection();if(c.type!="None"&&(c.anchorNode==a.$||c.focusNode==a.$))i=j(c);f=a.getText();a.setText(k(f))}}function c(){var a=e.editable();if(a)if(a=d(a)){a.setText(f);if(i){g(e.document.$,i);i=null}}}var e=a.editor,f,i;if(CKEDITOR.env.webkit){e.on("selectionChange",
function(){var a=e.editable(),b=d(a);b&&(b.getCustomData("ready")?h(a):b.setCustomData("ready",1))},null,null,-1);e.on("beforeSetMode",function(){h(e.editable())},null,null,-1);e.on("beforeUndoImage",b);e.on("afterUndoImage",c);e.on("beforeGetData",b,null,null,0);e.on("getData",c)}});CKEDITOR.editor.prototype.selectionChange=function(b){(b?a:f).call(this)};CKEDITOR.editor.prototype.getSelection=function(a){if((this._.savedSelection||this._.fakeSelection)&&!a)return this._.savedSelection||this._.fakeSelection;
return(a=this.editable())&&this.mode=="wysiwyg"?new CKEDITOR.dom.selection(a):null};CKEDITOR.editor.prototype.lockSelection=function(a){a=a||this.getSelection(1);if(a.getType()!=CKEDITOR.SELECTION_NONE){!a.isLocked&&a.lock();this._.savedSelection=a;return true}return false};CKEDITOR.editor.prototype.unlockSelection=function(a){var b=this._.savedSelection;if(b){b.unlock(a);delete this._.savedSelection;return true}return false};CKEDITOR.editor.prototype.forceNextSelectionCheck=function(){delete this._.selectionPreviousPath};
CKEDITOR.dom.document.prototype.getSelection=function(){return new CKEDITOR.dom.selection(this)};CKEDITOR.dom.range.prototype.select=function(){var a=this.root instanceof CKEDITOR.editable?this.root.editor.getSelection():new CKEDITOR.dom.selection(this.root);a.selectRanges([this]);return a};CKEDITOR.SELECTION_NONE=1;CKEDITOR.SELECTION_TEXT=2;CKEDITOR.SELECTION_ELEMENT=3;var A=typeof window.getSelection!="function",u=1;CKEDITOR.dom.selection=function(a){if(a instanceof CKEDITOR.dom.selection)var b=
a,a=a.root;var c=a instanceof CKEDITOR.dom.element;this.rev=b?b.rev:u++;this.document=a instanceof CKEDITOR.dom.document?a:a.getDocument();this.root=c?a:this.document.getBody();this.isLocked=0;this._={cache:{}};if(b){CKEDITOR.tools.extend(this._.cache,b._.cache);this.isFake=b.isFake;this.isLocked=b.isLocked;return this}var a=this.getNative(),d,e;if(a)if(a.getRangeAt)d=(e=a.rangeCount&&a.getRangeAt(0))&&new CKEDITOR.dom.node(e.commonAncestorContainer);else{try{e=a.createRange()}catch(f){}d=e&&CKEDITOR.dom.element.get(e.item&&
e.item(0)||e.parentElement())}if(!d||!(d.type==CKEDITOR.NODE_ELEMENT||d.type==CKEDITOR.NODE_TEXT)||!this.root.equals(d)&&!this.root.contains(d)){this._.cache.type=CKEDITOR.SELECTION_NONE;this._.cache.startElement=null;this._.cache.selectedElement=null;this._.cache.selectedText="";this._.cache.ranges=new CKEDITOR.dom.rangeList}return this};var o={img:1,hr:1,li:1,table:1,tr:1,td:1,th:1,embed:1,object:1,ol:1,ul:1,a:1,input:1,form:1,select:1,textarea:1,button:1,fieldset:1,thead:1,tfoot:1};CKEDITOR.dom.selection.prototype=
{getNative:function(){return this._.cache.nativeSel!==void 0?this._.cache.nativeSel:this._.cache.nativeSel=A?this.document.$.selection:this.document.getWindow().$.getSelection()},getType:A?function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_NONE;try{var c=this.getNative(),d=c.type;if(d=="Text")b=CKEDITOR.SELECTION_TEXT;if(d=="Control")b=CKEDITOR.SELECTION_ELEMENT;if(c.createRange().parentElement())b=CKEDITOR.SELECTION_TEXT}catch(e){}return a.type=b}:function(){var a=this._.cache;
if(a.type)return a.type;var b=CKEDITOR.SELECTION_TEXT,c=this.getNative();if(!c||!c.rangeCount)b=CKEDITOR.SELECTION_NONE;else if(c.rangeCount==1){var c=c.getRangeAt(0),d=c.startContainer;if(d==c.endContainer&&d.nodeType==1&&c.endOffset-c.startOffset==1&&o[d.childNodes[c.startOffset].nodeName.toLowerCase()])b=CKEDITOR.SELECTION_ELEMENT}return a.type=b},getRanges:function(){var a=A?function(){function a(b){return(new CKEDITOR.dom.node(b)).getIndex()}var b=function(b,c){b=b.duplicate();b.collapse(c);
var d=b.parentElement();if(!d.hasChildNodes())return{container:d,offset:0};for(var e=d.children,f,g,h=b.duplicate(),v=0,l=e.length-1,i=-1,j,x;v<=l;){i=Math.floor((v+l)/2);f=e[i];h.moveToElementText(f);j=h.compareEndPoints("StartToStart",b);if(j>0)l=i-1;else if(j<0)v=i+1;else return{container:d,offset:a(f)}}if(i==-1||i==e.length-1&&j<0){h.moveToElementText(d);h.setEndPoint("StartToStart",b);h=h.text.replace(/(\r\n|\r)/g,"\n").length;e=d.childNodes;if(!h){f=e[e.length-1];return f.nodeType!=CKEDITOR.NODE_TEXT?
{container:d,offset:e.length}:{container:f,offset:f.nodeValue.length}}for(d=e.length;h>0&&d>0;){g=e[--d];if(g.nodeType==CKEDITOR.NODE_TEXT){x=g;h=h-g.nodeValue.length}}return{container:x,offset:-h}}h.collapse(j>0?true:false);h.setEndPoint(j>0?"StartToStart":"EndToStart",b);h=h.text.replace(/(\r\n|\r)/g,"\n").length;if(!h)return{container:d,offset:a(f)+(j>0?0:1)};for(;h>0;)try{g=f[j>0?"previousSibling":"nextSibling"];if(g.nodeType==CKEDITOR.NODE_TEXT){h=h-g.nodeValue.length;x=g}f=g}catch(m){return{container:d,
offset:a(f)}}return{container:x,offset:j>0?-h:x.nodeValue.length+h}};return function(){var a=this.getNative(),c=a&&a.createRange(),d=this.getType();if(!a)return[];if(d==CKEDITOR.SELECTION_TEXT){a=new CKEDITOR.dom.range(this.root);d=b(c,true);a.setStart(new CKEDITOR.dom.node(d.container),d.offset);d=b(c);a.setEnd(new CKEDITOR.dom.node(d.container),d.offset);a.endContainer.getPosition(a.startContainer)&CKEDITOR.POSITION_PRECEDING&&a.endOffset<=a.startContainer.getIndex()&&a.collapse();return[a]}if(d==
CKEDITOR.SELECTION_ELEMENT){for(var d=[],e=0;e<c.length;e++){for(var f=c.item(e),h=f.parentNode,g=0,a=new CKEDITOR.dom.range(this.root);g<h.childNodes.length&&h.childNodes[g]!=f;g++);a.setStart(new CKEDITOR.dom.node(h),g);a.setEnd(new CKEDITOR.dom.node(h),g+1);d.push(a)}return d}return[]}}():function(){var a=[],b,c=this.getNative();if(!c)return a;for(var d=0;d<c.rangeCount;d++){var e=c.getRangeAt(d);b=new CKEDITOR.dom.range(this.root);b.setStart(new CKEDITOR.dom.node(e.startContainer),e.startOffset);
b.setEnd(new CKEDITOR.dom.node(e.endContainer),e.endOffset);a.push(b)}return a};return function(b){var c=this._.cache,d=c.ranges;if(!d)c.ranges=d=new CKEDITOR.dom.rangeList(a.call(this));return!b?d:s(new CKEDITOR.dom.rangeList(d.slice()))}}(),getStartElement:function(){var a=this._.cache;if(a.startElement!==void 0)return a.startElement;var b;switch(this.getType()){case CKEDITOR.SELECTION_ELEMENT:return this.getSelectedElement();case CKEDITOR.SELECTION_TEXT:var c=this.getRanges()[0];if(c){if(c.collapsed){b=
c.startContainer;b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent())}else{for(c.optimize();;){b=c.startContainer;if(c.startOffset==(b.getChildCount?b.getChildCount():b.getLength())&&!b.isBlockBoundary())c.setStartAfter(b);else break}b=c.startContainer;if(b.type!=CKEDITOR.NODE_ELEMENT)return b.getParent();b=b.getChild(c.startOffset);if(!b||b.type!=CKEDITOR.NODE_ELEMENT)b=c.startContainer;else for(c=b.getFirst();c&&c.type==CKEDITOR.NODE_ELEMENT;){b=c;c=c.getFirst()}}b=b.$}}return a.startElement=b?new CKEDITOR.dom.element(b):
null},getSelectedElement:function(){var a=this._.cache;if(a.selectedElement!==void 0)return a.selectedElement;var b=this,c=CKEDITOR.tools.tryThese(function(){return b.getNative().createRange().item(0)},function(){for(var a=b.getRanges()[0].clone(),c,d,e=2;e&&(!(c=a.getEnclosedNode())||!(c.type==CKEDITOR.NODE_ELEMENT&&o[c.getName()]&&(d=c)));e--)a.shrink(CKEDITOR.SHRINK_ELEMENT);return d&&d.$});return a.selectedElement=c?new CKEDITOR.dom.element(c):null},getSelectedText:function(){var a=this._.cache;
if(a.selectedText!==void 0)return a.selectedText;var b=this.getNative(),b=A?b.type=="Control"?"":b.createRange().text:b.toString();return a.selectedText=b},lock:function(){this.getRanges();this.getStartElement();this.getSelectedElement();this.getSelectedText();this._.cache.nativeSel=null;this.isLocked=1},unlock:function(a){if(this.isLocked){if(a)var b=this.getSelectedElement(),c=!b&&this.getRanges(),d=this.isFake;this.isLocked=0;this.reset();if(a)(a=b||c[0]&&c[0].getCommonAncestor())&&a.getAscendant("body",
1)&&(d?this.fake(b):b?this.selectElement(b):this.selectRanges(c))}},reset:function(){this._.cache={};this.isFake=0;var a=this.root.editor;if(a&&a._.fakeSelection&&this.rev==a._.fakeSelection.rev){delete a._.fakeSelection;var b=a._.hiddenSelectionContainer;if(b){var c=a.checkDirty();a.fire("lockSnapshot");b.remove();a.fire("unlockSnapshot");!c&&a.resetDirty()}delete a._.hiddenSelectionContainer}this.rev=u++},selectElement:function(a){var b=new CKEDITOR.dom.range(this.root);b.setStartBefore(a);b.setEndAfter(a);
this.selectRanges([b])},selectRanges:function(a){var b=this.root.editor,b=b&&b._.hiddenSelectionContainer;this.reset();if(b)for(var b=this.root,c,d=0;d<a.length;++d){c=a[d];if(c.endContainer.equals(b))c.endOffset=Math.min(c.endOffset,b.getChildCount())}if(a.length)if(this.isLocked){var f=CKEDITOR.document.getActive();this.unlock();this.selectRanges(a);this.lock();f&&!f.equals(this.root)&&f.focus()}else{var g;a:{var i,j;if(a.length==1&&!(j=a[0]).collapsed&&(g=j.getEnclosedNode())&&g.type==CKEDITOR.NODE_ELEMENT){j=
j.clone();j.shrink(CKEDITOR.SHRINK_ELEMENT,true);if((i=j.getEnclosedNode())&&i.type==CKEDITOR.NODE_ELEMENT)g=i;if(g.getAttribute("contenteditable")=="false")break a}g=void 0}if(g)this.fake(g);else{if(A){j=CKEDITOR.dom.walker.whitespaces(true);i=/\ufeff|\u00a0/;b={table:1,tbody:1,tr:1};if(a.length>1){g=a[a.length-1];a[0].setEnd(g.endContainer,g.endOffset)}g=a[0];var a=g.collapsed,m,k,v;if((c=g.getEnclosedNode())&&c.type==CKEDITOR.NODE_ELEMENT&&c.getName()in o&&(!c.is("a")||!c.getText()))try{v=c.$.createControlRange();
v.addElement(c.$);v.select();return}catch(q){}if(g.startContainer.type==CKEDITOR.NODE_ELEMENT&&g.startContainer.getName()in b||g.endContainer.type==CKEDITOR.NODE_ELEMENT&&g.endContainer.getName()in b){g.shrink(CKEDITOR.NODE_ELEMENT,true);a=g.collapsed}v=g.createBookmark();b=v.startNode;if(!a)f=v.endNode;v=g.document.$.body.createTextRange();v.moveToElementText(b.$);v.moveStart("character",1);if(f){i=g.document.$.body.createTextRange();i.moveToElementText(f.$);v.setEndPoint("EndToEnd",i);v.moveEnd("character",
-1)}else{m=b.getNext(j);k=b.hasAscendant("pre");m=!(m&&m.getText&&m.getText().match(i))&&(k||!b.hasPrevious()||b.getPrevious().is&&b.getPrevious().is("br"));k=g.document.createElement("span");k.setHtml("&#65279;");k.insertBefore(b);m&&g.document.createText("").insertBefore(b)}g.setStartBefore(b);b.remove();if(a){if(m){v.moveStart("character",-1);v.select();g.document.$.selection.clear()}else v.select();g.moveToPosition(k,CKEDITOR.POSITION_BEFORE_START);k.remove()}else{g.setEndBefore(f);f.remove();
v.select()}}else{f=this.getNative();if(!f)return;this.removeAllRanges();for(v=0;v<a.length;v++){if(v<a.length-1){m=a[v];k=a[v+1];i=m.clone();i.setStart(m.endContainer,m.endOffset);i.setEnd(k.startContainer,k.startOffset);if(!i.collapsed){i.shrink(CKEDITOR.NODE_ELEMENT,true);g=i.getCommonAncestor();i=i.getEnclosedNode();if(g.isReadOnly()||i&&i.isReadOnly()){k.setStart(m.startContainer,m.startOffset);a.splice(v--,1);continue}}}g=a[v];k=this.document.$.createRange();if(g.collapsed&&CKEDITOR.env.webkit&&
e(g)){m=this.root;h(m,false);i=m.getDocument().createText("​");m.setCustomData("cke-fillingChar",i);g.insertNode(i);if((m=i.getNext())&&!i.getPrevious()&&m.type==CKEDITOR.NODE_ELEMENT&&m.getName()=="br"){h(this.root);g.moveToPosition(m,CKEDITOR.POSITION_BEFORE_START)}else g.moveToPosition(i,CKEDITOR.POSITION_AFTER_END)}k.setStart(g.startContainer.$,g.startOffset);try{k.setEnd(g.endContainer.$,g.endOffset)}catch(z){if(z.toString().indexOf("NS_ERROR_ILLEGAL_VALUE")>=0){g.collapse(1);k.setEnd(g.endContainer.$,
g.endOffset)}else throw z;}f.addRange(k)}}this.reset();this.root.fire("selectionchange")}}},fake:function(a){var b=this.root.editor;this.reset();m(b);var c=this._.cache,d=new CKEDITOR.dom.range(this.root);d.setStartBefore(a);d.setEndAfter(a);c.ranges=new CKEDITOR.dom.rangeList(d);c.selectedElement=c.startElement=a;c.type=CKEDITOR.SELECTION_ELEMENT;c.selectedText=c.nativeSel=null;this.isFake=1;this.rev=u++;b._.fakeSelection=this;this.root.fire("selectionchange")},isHidden:function(){var a=this.getCommonAncestor();
a&&a.type==CKEDITOR.NODE_TEXT&&(a=a.getParent());return!(!a||!a.data("cke-hidden-sel"))},createBookmarks:function(a){a=this.getRanges().createBookmarks(a);this.isFake&&(a.isFake=1);return a},createBookmarks2:function(a){a=this.getRanges().createBookmarks2(a);this.isFake&&(a.isFake=1);return a},selectBookmarks:function(a){for(var b=[],c=0;c<a.length;c++){var d=new CKEDITOR.dom.range(this.root);d.moveToBookmark(a[c]);b.push(d)}a.isFake?this.fake(b[0].getEnclosedNode()):this.selectRanges(b);return this},
getCommonAncestor:function(){var a=this.getRanges();return!a.length?null:a[0].startContainer.getCommonAncestor(a[a.length-1].endContainer)},scrollIntoView:function(){this.type!=CKEDITOR.SELECTION_NONE&&this.getRanges()[0].scrollIntoView()},removeAllRanges:function(){if(this.getType()!=CKEDITOR.SELECTION_NONE){var a=this.getNative();try{a&&a[A?"empty":"removeAllRanges"]()}catch(b){}this.reset()}}}})();"use strict";CKEDITOR.STYLE_BLOCK=1;CKEDITOR.STYLE_INLINE=2;CKEDITOR.STYLE_OBJECT=3;
(function(){function a(a,b){for(var c,d;a=a.getParent();){if(a.equals(b))break;if(a.getAttribute("data-nostyle"))c=a;else if(!d){var e=a.getAttribute("contentEditable");e=="false"?c=a:e=="true"&&(d=1)}}return c}function f(b){var d=b.document;if(b.collapsed){d=i(this,d);b.insertNode(d);b.moveToPosition(d,CKEDITOR.POSITION_BEFORE_END)}else{var e=this.element,g=this._.definition,h,j=g.ignoreReadonly,m=j||g.includeReadonly;m==null&&(m=b.root.getCustomData("cke_includeReadonly"));var k=CKEDITOR.dtd[e];
if(!k){h=true;k=CKEDITOR.dtd.span}b.enlarge(CKEDITOR.ENLARGE_INLINE,1);b.trim();var l=b.createBookmark(),q=l.startNode,o=l.endNode,n=q,p;if(!j){var s=b.getCommonAncestor(),j=a(q,s),s=a(o,s);j&&(n=j.getNextSourceNode(true));s&&(o=s)}for(n.getPosition(o)==CKEDITOR.POSITION_FOLLOWING&&(n=0);n;){j=false;if(n.equals(o)){n=null;j=true}else{var r=n.type==CKEDITOR.NODE_ELEMENT?n.getName():null,s=r&&n.getAttribute("contentEditable")=="false",t=r&&n.getAttribute("data-nostyle");if(r&&n.data("cke-bookmark")){n=
n.getNextSourceNode(true);continue}if(s&&m&&CKEDITOR.dtd.$block[r])for(var y=n,u=c(y),A=void 0,C=u.length,F=0,y=C&&new CKEDITOR.dom.range(y.getDocument());F<C;++F){var A=u[F],P=CKEDITOR.filter.instances[A.data("cke-filter")];if(P?P.check(this):1){y.selectNodeContents(A);f.call(this,y)}}u=r?!k[r]||t?0:s&&!m?0:(n.getPosition(o)|K)==K&&(!g.childRule||g.childRule(n)):1;if(u)if((u=n.getParent())&&((u.getDtd()||CKEDITOR.dtd.span)[e]||h)&&(!g.parentRule||g.parentRule(u))){if(!p&&(!r||!CKEDITOR.dtd.$removeEmpty[r]||
(n.getPosition(o)|K)==K)){p=b.clone();p.setStartBefore(n)}r=n.type;if(r==CKEDITOR.NODE_TEXT||s||r==CKEDITOR.NODE_ELEMENT&&!n.getChildCount()){for(var r=n,U;(j=!r.getNext(L))&&(U=r.getParent(),k[U.getName()])&&(U.getPosition(q)|I)==I&&(!g.childRule||g.childRule(U));)r=U;p.setEndAfter(r)}}else j=true;else j=true;n=n.getNextSourceNode(t||s)}if(j&&p&&!p.collapsed){for(var j=i(this,d),s=j.hasAttributes(),t=p.getCommonAncestor(),r={},u={},A={},C={},N,R,X;j&&t;){if(t.getName()==e){for(N in g.attributes)if(!C[N]&&
(X=t.getAttribute(R)))j.getAttribute(N)==X?u[N]=1:C[N]=1;for(R in g.styles)if(!A[R]&&(X=t.getStyle(R)))j.getStyle(R)==X?r[R]=1:A[R]=1}t=t.getParent()}for(N in u)j.removeAttribute(N);for(R in r)j.removeStyle(R);s&&!j.hasAttributes()&&(j=null);if(j){p.extractContents().appendTo(j);p.insertNode(j);w.call(this,j);j.mergeSiblings();CKEDITOR.env.ie||j.$.normalize()}else{j=new CKEDITOR.dom.element("span");p.extractContents().appendTo(j);p.insertNode(j);w.call(this,j);j.remove(true)}p=null}}b.moveToBookmark(l);
b.shrink(CKEDITOR.SHRINK_TEXT);b.shrink(CKEDITOR.NODE_ELEMENT,true)}}function b(a){function b(){for(var a=new CKEDITOR.dom.elementPath(d.getParent()),c=new CKEDITOR.dom.elementPath(j.getParent()),e=null,f=null,g=0;g<a.elements.length;g++){var h=a.elements[g];if(h==a.block||h==a.blockLimit)break;m.checkElementRemovable(h,true)&&(e=h)}for(g=0;g<c.elements.length;g++){h=c.elements[g];if(h==c.block||h==c.blockLimit)break;m.checkElementRemovable(h,true)&&(f=h)}f&&j.breakParent(f);e&&d.breakParent(e)}a.enlarge(CKEDITOR.ENLARGE_INLINE,
1);var c=a.createBookmark(),d=c.startNode;if(a.collapsed){for(var e=new CKEDITOR.dom.elementPath(d.getParent(),a.root),f,g=0,h;g<e.elements.length&&(h=e.elements[g]);g++){if(h==e.block||h==e.blockLimit)break;if(this.checkElementRemovable(h)){var i;if(a.collapsed&&(a.checkBoundaryOfElement(h,CKEDITOR.END)||(i=a.checkBoundaryOfElement(h,CKEDITOR.START)))){f=h;f.match=i?"start":"end"}else{h.mergeSiblings();h.is(this.element)?s.call(this,h):q(h,o(this)[h.getName()])}}}if(f){h=d;for(g=0;;g++){i=e.elements[g];
if(i.equals(f))break;else if(i.match)continue;else i=i.clone();i.append(h);h=i}h[f.match=="start"?"insertBefore":"insertAfter"](f)}}else{var j=c.endNode,m=this;b();for(e=d;!e.equals(j);){f=e.getNextSourceNode();if(e.type==CKEDITOR.NODE_ELEMENT&&this.checkElementRemovable(e)){e.getName()==this.element?s.call(this,e):q(e,o(this)[e.getName()]);if(f.type==CKEDITOR.NODE_ELEMENT&&f.contains(d)){b();f=d.getNext()}}e=f}}a.moveToBookmark(c);a.shrink(CKEDITOR.NODE_ELEMENT,true)}function c(a){var b=[];a.forEach(function(a){if(a.getAttribute("contenteditable")==
"true"){b.push(a);return false}},CKEDITOR.NODE_ELEMENT,true);return b}function e(a){var b=a.getEnclosedNode()||a.getCommonAncestor(false,true);(a=(new CKEDITOR.dom.elementPath(b,a.root)).contains(this.element,1))&&!a.isReadOnly()&&A(a,this)}function d(a){var b=a.getCommonAncestor(true,true);if(a=(new CKEDITOR.dom.elementPath(b,a.root)).contains(this.element,1)){var b=this._.definition,c=b.attributes;if(c)for(var d in c)a.removeAttribute(d,c[d]);if(b.styles)for(var e in b.styles)b.styles.hasOwnProperty(e)&&
a.removeStyle(e)}}function h(a){var b=a.createBookmark(true),c=a.createIterator();c.enforceRealBlocks=true;if(this._.enterMode)c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR;for(var d,e=a.document,f;d=c.getNextParagraph();)if(!d.isReadOnly()&&(c.activeFilter?c.activeFilter.check(this):1)){f=i(this,e,d);j(d,f)}a.moveToBookmark(b)}function k(a){var b=a.createBookmark(1),c=a.createIterator();c.enforceRealBlocks=true;c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR;for(var d,e;d=c.getNextParagraph();)if(this.checkElementRemovable(d))if(d.is("pre")){(e=
this._.enterMode==CKEDITOR.ENTER_BR?null:a.document.createElement(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))&&d.copyAttributes(e);j(d,e)}else s.call(this,d);a.moveToBookmark(b)}function j(a,b){var c=!b;if(c){b=a.getDocument().createElement("div");a.copyAttributes(b)}var d=b&&b.is("pre"),e=a.is("pre"),f=!d&&e;if(d&&!e){e=b;(f=a.getBogus())&&f.remove();f=a.getHtml();f=m(f,/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g,"");f=f.replace(/[ \t\r\n]*(<br[^>]*>)[ \t\r\n]*/gi,"$1");f=f.replace(/([ \t\n\r]+|&nbsp;)/g,
" ");f=f.replace(/<br\b[^>]*>/gi,"\n");if(CKEDITOR.env.ie){var h=a.getDocument().createElement("div");h.append(e);e.$.outerHTML="<pre>"+f+"</pre>";e.copyAttributes(h.getFirst());e=h.getFirst().remove()}else e.setHtml(f);b=e}else f?b=y(c?[a.getHtml()]:g(a),b):a.moveChildren(b);b.replace(a);if(d){var c=b,i;if((i=c.getPrevious(F))&&i.type==CKEDITOR.NODE_ELEMENT&&i.is("pre")){d=m(i.getHtml(),/\n$/,"")+"\n\n"+m(c.getHtml(),/^\n/,"");CKEDITOR.env.ie?c.$.outerHTML="<pre>"+d+"</pre>":c.setHtml(d);i.remove()}}else c&&
t(b)}function g(a){var b=[];m(a.getOuterHtml(),/(\S\s*)\n(?:\s|(<span[^>]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,function(a,b,c){return b+"</pre>"+c+"<pre>"}).replace(/<pre\b.*?>([\s\S]*?)<\/pre>/gi,function(a,c){b.push(c)});return b}function m(a,b,c){var d="",e="",a=a.replace(/(^<span[^>]+data-cke-bookmark.*?\/span>)|(<span[^>]+data-cke-bookmark.*?\/span>$)/gi,function(a,b,c){b&&(d=b);c&&(e=c);return""});return d+a.replace(b,c)+e}function y(a,b){var c;a.length>1&&(c=new CKEDITOR.dom.documentFragment(b.getDocument()));
for(var d=0;d<a.length;d++){var e=a[d],e=e.replace(/(\r\n|\r)/g,"\n"),e=m(e,/^[ \t]*\n/,""),e=m(e,/\n$/,""),e=m(e,/^[ \t]+|[ \t]+$/g,function(a,b){return a.length==1?"&nbsp;":b?" "+CKEDITOR.tools.repeat("&nbsp;",a.length-1):CKEDITOR.tools.repeat("&nbsp;",a.length-1)+" "}),e=e.replace(/\n/g,"<br>"),e=e.replace(/[ \t]{2,}/g,function(a){return CKEDITOR.tools.repeat("&nbsp;",a.length-1)+" "});if(c){var f=b.clone();f.setHtml(e);c.append(f)}else b.setHtml(e)}return c||b}function s(a,b){var c=this._.definition,
d=c.attributes,c=c.styles,e=o(this)[a.getName()],f=CKEDITOR.tools.isEmpty(d)&&CKEDITOR.tools.isEmpty(c),g;for(g in d)if(!((g=="class"||this._.definition.fullMatch)&&a.getAttribute(g)!=l(g,d[g]))&&!(b&&g.slice(0,5)=="data-")){f=a.hasAttribute(g);a.removeAttribute(g)}for(var h in c)if(!(this._.definition.fullMatch&&a.getStyle(h)!=l(h,c[h],true))){f=f||!!a.getStyle(h);a.removeStyle(h)}q(a,e,r[a.getName()]);f&&(this._.definition.alwaysRemoveElement?t(a,1):!CKEDITOR.dtd.$block[a.getName()]||this._.enterMode==
CKEDITOR.ENTER_BR&&!a.hasAttributes()?t(a):a.renameNode(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))}function w(a){for(var b=o(this),c=a.getElementsByTag(this.element),d,e=c.count();--e>=0;){d=c.getItem(e);d.isReadOnly()||s.call(this,d,true)}for(var f in b)if(f!=this.element){c=a.getElementsByTag(f);for(e=c.count()-1;e>=0;e--){d=c.getItem(e);d.isReadOnly()||q(d,b[f])}}}function q(a,b,c){if(b=b&&b.attributes)for(var d=0;d<b.length;d++){var e=b[d][0],f;if(f=a.getAttribute(e)){var g=b[d][1];(g===null||
g.test&&g.test(f)||typeof g=="string"&&f==g)&&a.removeAttribute(e)}}c||t(a)}function t(a,b){if(!a.hasAttributes()||b)if(CKEDITOR.dtd.$block[a.getName()]){var c=a.getPrevious(F),d=a.getNext(F);c&&(c.type==CKEDITOR.NODE_TEXT||!c.isBlockBoundary({br:1}))&&a.append("br",1);d&&(d.type==CKEDITOR.NODE_TEXT||!d.isBlockBoundary({br:1}))&&a.append("br");a.remove(true)}else{c=a.getFirst();d=a.getLast();a.remove(true);if(c){c.type==CKEDITOR.NODE_ELEMENT&&c.mergeSiblings();d&&(!c.equals(d)&&d.type==CKEDITOR.NODE_ELEMENT)&&
d.mergeSiblings()}}}function i(a,b,c){var d;d=a.element;d=="*"&&(d="span");d=new CKEDITOR.dom.element(d,b);c&&c.copyAttributes(d);d=A(d,a);b.getCustomData("doc_processing_style")&&d.hasAttribute("id")?d.removeAttribute("id"):b.setCustomData("doc_processing_style",1);return d}function A(a,b){var c=b._.definition,d=c.attributes,c=CKEDITOR.style.getStyleText(c);if(d)for(var e in d)a.setAttribute(e,d[e]);c&&a.setAttribute("style",c);return a}function u(a,b){for(var c in a)a[c]=a[c].replace(C,function(a,
c){return b[c]})}function o(a){if(a._.overrides)return a._.overrides;var b=a._.overrides={},c=a._.definition.overrides;if(c){CKEDITOR.tools.isArray(c)||(c=[c]);for(var d=0;d<c.length;d++){var e=c[d],f,g;if(typeof e=="string")f=e.toLowerCase();else{f=e.element?e.element.toLowerCase():a.element;g=e.attributes}e=b[f]||(b[f]={});if(g){var e=e.attributes=e.attributes||[],h;for(h in g)e.push([h.toLowerCase(),g[h]])}}}return b}function l(a,b,c){var d=new CKEDITOR.dom.element("span");d[c?"setStyle":"setAttribute"](a,
b);return d[c?"getStyle":"getAttribute"](a)}function p(a,b,c){for(var d=a.document,e=a.getRanges(),b=b?this.removeFromRange:this.applyToRange,f,g=e.createIterator();f=g.getNextRange();)b.call(this,f,c);a.selectRanges(e);d.removeCustomData("doc_processing_style")}var r={address:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,p:1,pre:1,section:1,header:1,footer:1,nav:1,article:1,aside:1,figure:1,dialog:1,hgroup:1,time:1,meter:1,menu:1,command:1,keygen:1,output:1,progress:1,details:1,datagrid:1,datalist:1},n=
{a:1,blockquote:1,embed:1,hr:1,img:1,li:1,object:1,ol:1,table:1,td:1,tr:1,th:1,ul:1,dl:1,dt:1,dd:1,form:1,audio:1,video:1},P=/\s*(?:;\s*|$)/,C=/#\((.+?)\)/g,L=CKEDITOR.dom.walker.bookmark(0,1),F=CKEDITOR.dom.walker.whitespaces(1);CKEDITOR.style=function(a,b){if(typeof a.type=="string")return new CKEDITOR.style.customHandlers[a.type](a);var c=a.attributes;if(c&&c.style){a.styles=CKEDITOR.tools.extend({},a.styles,CKEDITOR.tools.parseCssText(c.style));delete c.style}if(b){a=CKEDITOR.tools.clone(a);u(a.attributes,
b);u(a.styles,b)}c=this.element=a.element?typeof a.element=="string"?a.element.toLowerCase():a.element:"*";this.type=a.type||(r[c]?CKEDITOR.STYLE_BLOCK:n[c]?CKEDITOR.STYLE_OBJECT:CKEDITOR.STYLE_INLINE);if(typeof this.element=="object")this.type=CKEDITOR.STYLE_OBJECT;this._={definition:a}};CKEDITOR.style.prototype={apply:function(a){if(a instanceof CKEDITOR.dom.document)return p.call(this,a.getSelection());if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;if(!b)this._.enterMode=a.activeEnterMode;
p.call(this,a.getSelection(),0,a);this._.enterMode=b}},remove:function(a){if(a instanceof CKEDITOR.dom.document)return p.call(this,a.getSelection(),1);if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;if(!b)this._.enterMode=a.activeEnterMode;p.call(this,a.getSelection(),1,a);this._.enterMode=b}},applyToRange:function(a){this.applyToRange=this.type==CKEDITOR.STYLE_INLINE?f:this.type==CKEDITOR.STYLE_BLOCK?h:this.type==CKEDITOR.STYLE_OBJECT?e:null;return this.applyToRange(a)},removeFromRange:function(a){this.removeFromRange=
this.type==CKEDITOR.STYLE_INLINE?b:this.type==CKEDITOR.STYLE_BLOCK?k:this.type==CKEDITOR.STYLE_OBJECT?d:null;return this.removeFromRange(a)},applyToObject:function(a){A(a,this)},checkActive:function(a,b){switch(this.type){case CKEDITOR.STYLE_BLOCK:return this.checkElementRemovable(a.block||a.blockLimit,true,b);case CKEDITOR.STYLE_OBJECT:case CKEDITOR.STYLE_INLINE:for(var c=a.elements,d=0,e;d<c.length;d++){e=c[d];if(!(this.type==CKEDITOR.STYLE_INLINE&&(e==a.block||e==a.blockLimit))){if(this.type==
CKEDITOR.STYLE_OBJECT){var f=e.getName();if(!(typeof this.element=="string"?f==this.element:f in this.element))continue}if(this.checkElementRemovable(e,true,b))return true}}}return false},checkApplicable:function(a,b,c){b&&b instanceof CKEDITOR.filter&&(c=b);if(c&&!c.check(this))return false;switch(this.type){case CKEDITOR.STYLE_OBJECT:return!!a.contains(this.element);case CKEDITOR.STYLE_BLOCK:return!!a.blockLimit.getDtd()[this.element]}return true},checkElementMatch:function(a,b){var c=this._.definition;
if(!a||!c.ignoreReadonly&&a.isReadOnly())return false;var d=a.getName();if(typeof this.element=="string"?d==this.element:d in this.element){if(!b&&!a.hasAttributes())return true;if(d=c._AC)c=d;else{var d={},e=0,f=c.attributes;if(f)for(var g in f){e++;d[g]=f[g]}if(g=CKEDITOR.style.getStyleText(c)){d.style||e++;d.style=g}d._length=e;c=c._AC=d}if(c._length){for(var h in c)if(h!="_length"){e=a.getAttribute(h)||"";if(h=="style")a:{d=c[h];typeof d=="string"&&(d=CKEDITOR.tools.parseCssText(d));typeof e==
"string"&&(e=CKEDITOR.tools.parseCssText(e,true));g=void 0;for(g in d)if(!(g in e&&(e[g]==d[g]||d[g]=="inherit"||e[g]=="inherit"))){d=false;break a}d=true}else d=c[h]==e;if(d){if(!b)return true}else if(b)return false}if(b)return true}else return true}return false},checkElementRemovable:function(a,b,c){if(this.checkElementMatch(a,b,c))return true;if(b=o(this)[a.getName()]){var d;if(!(b=b.attributes))return true;for(c=0;c<b.length;c++){d=b[c][0];if(d=a.getAttribute(d)){var e=b[c][1];if(e===null)return true;
if(typeof e=="string"){if(d==e)return true}else if(e.test(d))return true}}}return false},buildPreview:function(a){var b=this._.definition,c=[],d=b.element;d=="bdo"&&(d="span");var c=["<",d],e=b.attributes;if(e)for(var f in e)c.push(" ",f,'="',e[f],'"');(e=CKEDITOR.style.getStyleText(b))&&c.push(' style="',e,'"');c.push(">",a||b.name,"</",d,">");return c.join("")},getDefinition:function(){return this._.definition}};CKEDITOR.style.getStyleText=function(a){var b=a._ST;if(b)return b;var b=a.styles,c=
a.attributes&&a.attributes.style||"",d="";c.length&&(c=c.replace(P,";"));for(var e in b){var f=b[e],g=(e+":"+f).replace(P,";");f=="inherit"?d=d+g:c=c+g}c.length&&(c=CKEDITOR.tools.normalizeCssText(c,true));return a._ST=c+d};CKEDITOR.style.customHandlers={};CKEDITOR.style.addCustomHandler=function(a){var b=function(a){this._={definition:a};this.setup&&this.setup(a)};b.prototype=CKEDITOR.tools.extend(CKEDITOR.tools.prototypedCopy(CKEDITOR.style.prototype),{assignedTo:CKEDITOR.STYLE_OBJECT},a,true);
return this.customHandlers[a.type]=b};var K=CKEDITOR.POSITION_PRECEDING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED,I=CKEDITOR.POSITION_FOLLOWING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED})();CKEDITOR.styleCommand=function(a,f){this.requiredContent=this.allowedContent=this.style=a;CKEDITOR.tools.extend(this,f,true)};
CKEDITOR.styleCommand.prototype.exec=function(a){a.focus();this.state==CKEDITOR.TRISTATE_OFF?a.applyStyle(this.style):this.state==CKEDITOR.TRISTATE_ON&&a.removeStyle(this.style)};CKEDITOR.stylesSet=new CKEDITOR.resourceManager("","stylesSet");CKEDITOR.addStylesSet=CKEDITOR.tools.bind(CKEDITOR.stylesSet.add,CKEDITOR.stylesSet);CKEDITOR.loadStylesSet=function(a,f,b){CKEDITOR.stylesSet.addExternal(a,f,"");CKEDITOR.stylesSet.load(a,b)};
CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{attachStyleStateChange:function(a,f){var b=this._.styleStateChangeCallbacks;if(!b){b=this._.styleStateChangeCallbacks=[];this.on("selectionChange",function(a){for(var e=0;e<b.length;e++){var d=b[e],f=d.style.checkActive(a.data.path,this)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF;d.fn.call(this,f)}})}b.push({style:a,fn:f})},applyStyle:function(a){a.apply(this)},removeStyle:function(a){a.remove(this)},getStylesSet:function(a){if(this._.stylesDefinitions)a(this._.stylesDefinitions);
else{var f=this,b=f.config.stylesCombo_stylesSet||f.config.stylesSet;if(b===false)a(null);else if(b instanceof Array){f._.stylesDefinitions=b;a(b)}else{b||(b="default");var b=b.split(":"),c=b[0];CKEDITOR.stylesSet.addExternal(c,b[1]?b.slice(1).join(":"):CKEDITOR.getUrl("styles.js"),"");CKEDITOR.stylesSet.load(c,function(b){f._.stylesDefinitions=b[c];a(f._.stylesDefinitions)})}}}});
CKEDITOR.dom.comment=function(a,f){typeof a=="string"&&(a=(f?f.$:document).createComment(a));CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.comment.prototype=new CKEDITOR.dom.node;CKEDITOR.tools.extend(CKEDITOR.dom.comment.prototype,{type:CKEDITOR.NODE_COMMENT,getOuterHtml:function(){return"<\!--"+this.$.nodeValue+"--\>"}});"use strict";
(function(){var a={},f={},b;for(b in CKEDITOR.dtd.$blockLimit)b in CKEDITOR.dtd.$list||(a[b]=1);for(b in CKEDITOR.dtd.$block)b in CKEDITOR.dtd.$blockLimit||b in CKEDITOR.dtd.$empty||(f[b]=1);CKEDITOR.dom.elementPath=function(b,e){var d=null,h=null,k=[],j=b,g,e=e||b.getDocument().getBody();do if(j.type==CKEDITOR.NODE_ELEMENT){k.push(j);if(!this.lastElement){this.lastElement=j;if(j.is(CKEDITOR.dtd.$object)||j.getAttribute("contenteditable")=="false")continue}if(j.equals(e))break;if(!h){g=j.getName();
j.getAttribute("contenteditable")=="true"?h=j:!d&&f[g]&&(d=j);if(a[g]){var m;if(m=!d){if(g=g=="div"){a:{g=j.getChildren();m=0;for(var y=g.count();m<y;m++){var s=g.getItem(m);if(s.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$block[s.getName()]){g=true;break a}}g=false}g=!g}m=g}m?d=j:h=j}}}while(j=j.getParent());h||(h=e);this.block=d;this.blockLimit=h;this.root=e;this.elements=k}})();
CKEDITOR.dom.elementPath.prototype={compare:function(a){var f=this.elements,a=a&&a.elements;if(!a||f.length!=a.length)return false;for(var b=0;b<f.length;b++)if(!f[b].equals(a[b]))return false;return true},contains:function(a,f,b){var c;typeof a=="string"&&(c=function(b){return b.getName()==a});a instanceof CKEDITOR.dom.element?c=function(b){return b.equals(a)}:CKEDITOR.tools.isArray(a)?c=function(b){return CKEDITOR.tools.indexOf(a,b.getName())>-1}:typeof a=="function"?c=a:typeof a=="object"&&(c=
function(b){return b.getName()in a});var e=this.elements,d=e.length;f&&d--;if(b){e=Array.prototype.slice.call(e,0);e.reverse()}for(f=0;f<d;f++)if(c(e[f]))return e[f];return null},isContextFor:function(a){var f;if(a in CKEDITOR.dtd.$block){f=this.contains(CKEDITOR.dtd.$intermediate)||this.root.equals(this.block)&&this.block||this.blockLimit;return!!f.getDtd()[a]}return true},direction:function(){return(this.block||this.blockLimit||this.root).getDirection(1)}};
CKEDITOR.dom.text=function(a,f){typeof a=="string"&&(a=(f?f.$:document).createTextNode(a));this.$=a};CKEDITOR.dom.text.prototype=new CKEDITOR.dom.node;
CKEDITOR.tools.extend(CKEDITOR.dom.text.prototype,{type:CKEDITOR.NODE_TEXT,getLength:function(){return this.$.nodeValue.length},getText:function(){return this.$.nodeValue},setText:function(a){this.$.nodeValue=a},split:function(a){var f=this.$.parentNode,b=f.childNodes.length,c=this.getLength(),e=this.getDocument(),d=new CKEDITOR.dom.text(this.$.splitText(a),e);if(f.childNodes.length==b)if(a>=c){d=e.createText("");d.insertAfter(this)}else{a=e.createText("");a.insertAfter(d);a.remove()}return d},substring:function(a,
f){return typeof f!="number"?this.$.nodeValue.substr(a):this.$.nodeValue.substring(a,f)}});
(function(){function a(a,c,e){var d=a.serializable,f=c[e?"endContainer":"startContainer"],k=e?"endOffset":"startOffset",j=d?c.document.getById(a.startNode):a.startNode,a=d?c.document.getById(a.endNode):a.endNode;if(f.equals(j.getPrevious())){c.startOffset=c.startOffset-f.getLength()-a.getPrevious().getLength();f=a.getNext()}else if(f.equals(a.getPrevious())){c.startOffset=c.startOffset-f.getLength();f=a.getNext()}f.equals(j.getParent())&&c[k]++;f.equals(a.getParent())&&c[k]++;c[e?"endContainer":"startContainer"]=
f;return c}CKEDITOR.dom.rangeList=function(a){if(a instanceof CKEDITOR.dom.rangeList)return a;a?a instanceof CKEDITOR.dom.range&&(a=[a]):a=[];return CKEDITOR.tools.extend(a,f)};var f={createIterator:function(){var a=this,c=CKEDITOR.dom.walker.bookmark(),e=[],d;return{getNextRange:function(f){d=d===void 0?0:d+1;var k=a[d];if(k&&a.length>1){if(!d)for(var j=a.length-1;j>=0;j--)e.unshift(a[j].createBookmark(true));if(f)for(var g=0;a[d+g+1];){for(var m=k.document,f=0,j=m.getById(e[g].endNode),m=m.getById(e[g+
1].startNode);;){j=j.getNextSourceNode(false);if(m.equals(j))f=1;else if(c(j)||j.type==CKEDITOR.NODE_ELEMENT&&j.isBlockBoundary())continue;break}if(!f)break;g++}for(k.moveToBookmark(e.shift());g--;){j=a[++d];j.moveToBookmark(e.shift());k.setEnd(j.endContainer,j.endOffset)}}return k}}},createBookmarks:function(b){for(var c=[],e,d=0;d<this.length;d++){c.push(e=this[d].createBookmark(b,true));for(var f=d+1;f<this.length;f++){this[f]=a(e,this[f]);this[f]=a(e,this[f],true)}}return c},createBookmarks2:function(a){for(var c=
[],e=0;e<this.length;e++)c.push(this[e].createBookmark2(a));return c},moveToBookmarks:function(a){for(var c=0;c<this.length;c++)this[c].moveToBookmark(a[c])}}})();
(function(){function a(){return CKEDITOR.getUrl(CKEDITOR.skinName.split(",")[1]||"skins/"+CKEDITOR.skinName.split(",")[0]+"/")}function f(b){var c=CKEDITOR.skin["ua_"+b],d=CKEDITOR.env;if(c)for(var c=c.split(",").sort(function(a,b){return a>b?-1:1}),e=0,f;e<c.length;e++){f=c[e];if(d.ie&&(f.replace(/^ie/,"")==d.version||d.quirks&&f=="iequirks"))f="ie";if(d[f]){b=b+("_"+c[e]);break}}return CKEDITOR.getUrl(a()+b+".css")}function b(a,b){if(!d[a]){CKEDITOR.document.appendStyleSheet(f(a));d[a]=1}b&&b()}
function c(a){var b=a.getById(h);if(!b){b=a.getHead().append("style");b.setAttribute("id",h);b.setAttribute("type","text/css")}return b}function e(a,b,c){var d,e,f;if(CKEDITOR.env.webkit){b=b.split("}").slice(0,-1);for(e=0;e<b.length;e++)b[e]=b[e].split("{")}for(var h=0;h<a.length;h++)if(CKEDITOR.env.webkit)for(e=0;e<b.length;e++){f=b[e][1];for(d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);a[h].$.sheet.addRule(b[e][0],f)}else{f=b;for(d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);CKEDITOR.env.ie&&
CKEDITOR.env.version<11?a[h].$.styleSheet.cssText=a[h].$.styleSheet.cssText+f:a[h].$.innerHTML=a[h].$.innerHTML+f}}var d={};CKEDITOR.skin={path:a,loadPart:function(c,d){CKEDITOR.skin.name!=CKEDITOR.skinName.split(",")[0]?CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(a()+"skin.js"),function(){b(c,d)}):b(c,d)},getPath:function(a){return CKEDITOR.getUrl(f(a))},icons:{},addIcon:function(a,b,c,d){a=a.toLowerCase();this.icons[a]||(this.icons[a]={path:b,offset:c||0,bgsize:d||"16px"})},getIconStyle:function(a,
b,c,d,e){var f;if(a){a=a.toLowerCase();b&&(f=this.icons[a+"-rtl"]);f||(f=this.icons[a])}a=c||f&&f.path||"";d=d||f&&f.offset;e=e||f&&f.bgsize||"16px";return a&&"background-image:url("+CKEDITOR.getUrl(a)+");background-position:0 "+d+"px;background-size:"+e+";"}};CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{getUiColor:function(){return this.uiColor},setUiColor:function(a){var b=c(CKEDITOR.document);return(this.setUiColor=function(a){this.uiColor=a;var c=CKEDITOR.skin.chameleon,d="",f="";if(typeof c==
"function"){d=c(this,"editor");f=c(this,"panel")}a=[[j,a]];e([b],d,a);e(k,f,a)}).call(this,a)}});var h="cke_ui_color",k=[],j=/\$color/g;CKEDITOR.on("instanceLoaded",function(a){if(!CKEDITOR.env.ie||!CKEDITOR.env.quirks){var b=a.editor,a=function(a){a=(a.data[0]||a.data).element.getElementsByTag("iframe").getItem(0).getFrameDocument();if(!a.getById("cke_ui_color")){a=c(a);k.push(a);var d=b.getUiColor();d&&e([a],CKEDITOR.skin.chameleon(b,"panel"),[[j,d]])}};b.on("panelShow",a);b.on("menuShow",a);b.config.uiColor&&
b.setUiColor(b.config.uiColor)}})})();
(function(){if(CKEDITOR.env.webkit)CKEDITOR.env.hc=false;else{var a=CKEDITOR.dom.element.createFromHtml('<div style="width:0;height:0;position:absolute;left:-10000px;border:1px solid;border-color:red blue"></div>',CKEDITOR.document);a.appendTo(CKEDITOR.document.getHead());try{var f=a.getComputedStyle("border-top-color"),b=a.getComputedStyle("border-right-color");CKEDITOR.env.hc=!!(f&&f==b)}catch(c){CKEDITOR.env.hc=false}a.remove()}if(CKEDITOR.env.hc)CKEDITOR.env.cssClass=CKEDITOR.env.cssClass+" cke_hc";
CKEDITOR.document.appendStyleText(".cke{visibility:hidden;}");CKEDITOR.status="loaded";CKEDITOR.fireOnce("loaded");if(a=CKEDITOR._.pending){delete CKEDITOR._.pending;for(f=0;f<a.length;f++){CKEDITOR.editor.prototype.constructor.apply(a[f][0],a[f][1]);CKEDITOR.add(a[f][0])}}})();CKEDITOR.skin.name="moono";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8";
CKEDITOR.skin.chameleon=function(){var b=function(){return function(b,e){for(var a=b.match(/[^#]./g),c=0;3>c;c++){var f=a,h=c,d;d=parseInt(a[c],16);d=("0"+(0>e?0|d*(1+e):0|d+(255-d)*e).toString(16)).slice(-2);f[h]=d}return"#"+a.join("")}}(),c=function(){var b=new CKEDITOR.template("background:#{to};background-image:-webkit-gradient(linear,lefttop,leftbottom,from({from}),to({to}));background-image:-moz-linear-gradient(top,{from},{to});background-image:-webkit-linear-gradient(top,{from},{to});background-image:-o-linear-gradient(top,{from},{to});background-image:-ms-linear-gradient(top,{from},{to});background-image:linear-gradient(top,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(c,
a){return b.output({from:c,to:a})}}(),f={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),
panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")};
return function(g,e){var a=g.uiColor,a={id:"."+g.id,defaultBorder:b(a,-0.1),defaultGradient:c(b(a,0.9),a),lightGradient:c(b(a,1),b(a,0.7)),mediumGradient:c(b(a,0.8),b(a,0.5)),ckeButtonOn:c(b(a,0.6),b(a,0.7)),ckeResizer:b(a,-0.4),ckeToolbarSeparator:b(a,0.5),ckeColorauto:b(a,0.8),dialogBody:b(a,0.7),dialogTabSelected:c("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:b(a,-0.6),elementsPathBg:a,menubuttonIcon:b(a,0.5),menubuttonIconHover:b(a,0.3)};return f[e].output(a).replace(/\[/g,
"{").replace(/\]/g,"}")}}();CKEDITOR.plugins.add("basicstyles",{init:function(c){var e=0,d=function(g,d,b,a){if(a){var a=new CKEDITOR.style(a),f=h[b];f.unshift(a);c.attachStyleStateChange(a,function(a){!c.readOnly&&c.getCommand(b).setState(a)});c.addCommand(b,new CKEDITOR.styleCommand(a,{contentForms:f}));c.ui.addButton&&c.ui.addButton(g,{label:d,command:b,toolbar:"basicstyles,"+(e+=10)})}},h={bold:["strong","b",["span",function(a){a=a.styles["font-weight"];return"bold"==a||700<=+a}]],italic:["em","i",["span",function(a){return"italic"==
a.styles["font-style"]}]],underline:["u",["span",function(a){return"underline"==a.styles["text-decoration"]}]],strike:["s","strike",["span",function(a){return"line-through"==a.styles["text-decoration"]}]],subscript:["sub"],superscript:["sup"]},b=c.config,a=c.lang.basicstyles;d("Bold",a.bold,"bold",b.coreStyles_bold);d("Italic",a.italic,"italic",b.coreStyles_italic);d("Underline",a.underline,"underline",b.coreStyles_underline);d("Strike",a.strike,"strike",b.coreStyles_strike);d("Subscript",a.subscript,
"subscript",b.coreStyles_subscript);d("Superscript",a.superscript,"superscript",b.coreStyles_superscript);c.setKeystroke([[CKEDITOR.CTRL+66,"bold"],[CKEDITOR.CTRL+73,"italic"],[CKEDITOR.CTRL+85,"underline"]])}});CKEDITOR.config.coreStyles_bold={element:"strong",overrides:"b"};CKEDITOR.config.coreStyles_italic={element:"em",overrides:"i"};CKEDITOR.config.coreStyles_underline={element:"u"};CKEDITOR.config.coreStyles_strike={element:"s",overrides:"strike"};CKEDITOR.config.coreStyles_subscript={element:"sub"};
CKEDITOR.config.coreStyles_superscript={element:"sup"};(function(){var k={exec:function(g){var a=g.getCommand("blockquote").state,i=g.getSelection(),c=i&&i.getRanges()[0];if(c){var h=i.createBookmarks();if(CKEDITOR.env.ie){var e=h[0].startNode,b=h[0].endNode,d;if(e&&"blockquote"==e.getParent().getName())for(d=e;d=d.getNext();)if(d.type==CKEDITOR.NODE_ELEMENT&&d.isBlockBoundary()){e.move(d,!0);break}if(b&&"blockquote"==b.getParent().getName())for(d=b;d=d.getPrevious();)if(d.type==CKEDITOR.NODE_ELEMENT&&d.isBlockBoundary()){b.move(d);break}}var f=c.createIterator();
f.enlargeBr=g.config.enterMode!=CKEDITOR.ENTER_BR;if(a==CKEDITOR.TRISTATE_OFF){for(e=[];a=f.getNextParagraph();)e.push(a);1>e.length&&(a=g.document.createElement(g.config.enterMode==CKEDITOR.ENTER_P?"p":"div"),b=h.shift(),c.insertNode(a),a.append(new CKEDITOR.dom.text("",g.document)),c.moveToBookmark(b),c.selectNodeContents(a),c.collapse(!0),b=c.createBookmark(),e.push(a),h.unshift(b));d=e[0].getParent();c=[];for(b=0;b<e.length;b++)a=e[b],d=d.getCommonAncestor(a.getParent());for(a={table:1,tbody:1,
tr:1,ol:1,ul:1};a[d.getName()];)d=d.getParent();for(b=null;0<e.length;){for(a=e.shift();!a.getParent().equals(d);)a=a.getParent();a.equals(b)||c.push(a);b=a}for(;0<c.length;)if(a=c.shift(),"blockquote"==a.getName()){for(b=new CKEDITOR.dom.documentFragment(g.document);a.getFirst();)b.append(a.getFirst().remove()),e.push(b.getLast());b.replace(a)}else e.push(a);c=g.document.createElement("blockquote");for(c.insertBefore(e[0]);0<e.length;)a=e.shift(),c.append(a)}else if(a==CKEDITOR.TRISTATE_ON){b=[];
for(d={};a=f.getNextParagraph();){for(e=c=null;a.getParent();){if("blockquote"==a.getParent().getName()){c=a.getParent();e=a;break}a=a.getParent()}c&&(e&&!e.getCustomData("blockquote_moveout"))&&(b.push(e),CKEDITOR.dom.element.setMarker(d,e,"blockquote_moveout",!0))}CKEDITOR.dom.element.clearAllMarkers(d);a=[];e=[];for(d={};0<b.length;)f=b.shift(),c=f.getParent(),f.getPrevious()?f.getNext()?(f.breakParent(f.getParent()),e.push(f.getNext())):f.remove().insertAfter(c):f.remove().insertBefore(c),c.getCustomData("blockquote_processed")||
(e.push(c),CKEDITOR.dom.element.setMarker(d,c,"blockquote_processed",!0)),a.push(f);CKEDITOR.dom.element.clearAllMarkers(d);for(b=e.length-1;0<=b;b--){c=e[b];a:{d=c;for(var f=0,k=d.getChildCount(),j=void 0;f<k&&(j=d.getChild(f));f++)if(j.type==CKEDITOR.NODE_ELEMENT&&j.isBlockBoundary()){d=!1;break a}d=!0}d&&c.remove()}if(g.config.enterMode==CKEDITOR.ENTER_BR)for(c=!0;a.length;)if(f=a.shift(),"div"==f.getName()){b=new CKEDITOR.dom.documentFragment(g.document);c&&(f.getPrevious()&&!(f.getPrevious().type==
CKEDITOR.NODE_ELEMENT&&f.getPrevious().isBlockBoundary()))&&b.append(g.document.createElement("br"));for(c=f.getNext()&&!(f.getNext().type==CKEDITOR.NODE_ELEMENT&&f.getNext().isBlockBoundary());f.getFirst();)f.getFirst().remove().appendTo(b);c&&b.append(g.document.createElement("br"));b.replace(f);c=!1}}i.selectBookmarks(h);g.focus()}},refresh:function(g,a){this.setState(g.elementPath(a.block||a.blockLimit).contains("blockquote",1)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)},context:"blockquote",
allowedContent:"blockquote",requiredContent:"blockquote"};CKEDITOR.plugins.add("blockquote",{init:function(g){g.blockless||(g.addCommand("blockquote",k),g.ui.addButton&&g.ui.addButton("Blockquote",{label:g.lang.blockquote.toolbar,command:"blockquote",toolbar:"blocks,10"}))}})})();CKEDITOR.plugins.add("dialogui",{onLoad:function(){var h=function(b){this._||(this._={});this._["default"]=this._.initValue=b["default"]||"";this._.required=b.required||!1;for(var a=[this._],d=1;d<arguments.length;d++)a.push(arguments[d]);a.push(!0);CKEDITOR.tools.extend.apply(CKEDITOR.tools,a);return this._},r={build:function(b,a,d){return new CKEDITOR.ui.dialog.textInput(b,a,d)}},l={build:function(b,a,d){return new CKEDITOR.ui.dialog[a.type](b,a,d)}},n={isChanged:function(){return this.getValue()!=
this.getInitValue()},reset:function(b){this.setValue(this.getInitValue(),b)},setInitValue:function(){this._.initValue=this.getValue()},resetInitValue:function(){this._.initValue=this._["default"]},getInitValue:function(){return this._.initValue}},o=CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onChange:function(b,a){this._.domOnChangeRegistered||(b.on("load",function(){this.getInputElement().on("change",function(){b.parts.dialog.isVisible()&&this.fire("change",{value:this.getValue()})},
this)},this),this._.domOnChangeRegistered=!0);this.on("change",a)}},!0),s=/^on([A-Z]\w+)/,p=function(b){for(var a in b)(s.test(a)||"title"==a||"type"==a)&&delete b[a];return b};CKEDITOR.tools.extend(CKEDITOR.ui.dialog,{labeledElement:function(b,a,d,f){if(!(4>arguments.length)){var c=h.call(this,a);c.labelId=CKEDITOR.tools.getNextId()+"_label";this._.children=[];var e={role:a.role||"presentation"};a.includeLabel&&(e["aria-labelledby"]=c.labelId);CKEDITOR.ui.dialog.uiElement.call(this,b,a,d,"div",null,
e,function(){var e=[],g=a.required?" cke_required":"";if(a.labelLayout!="horizontal")e.push('<label class="cke_dialog_ui_labeled_label'+g+'" ',' id="'+c.labelId+'"',c.inputId?' for="'+c.inputId+'"':"",(a.labelStyle?' style="'+a.labelStyle+'"':"")+">",a.label,"</label>",'<div class="cke_dialog_ui_labeled_content"',a.controlStyle?' style="'+a.controlStyle+'"':"",' role="presentation">',f.call(this,b,a),"</div>");else{g={type:"hbox",widths:a.widths,padding:0,children:[{type:"html",html:'<label class="cke_dialog_ui_labeled_label'+
g+'" id="'+c.labelId+'" for="'+c.inputId+'"'+(a.labelStyle?' style="'+a.labelStyle+'"':"")+">"+CKEDITOR.tools.htmlEncode(a.label)+"</span>"},{type:"html",html:'<span class="cke_dialog_ui_labeled_content"'+(a.controlStyle?' style="'+a.controlStyle+'"':"")+">"+f.call(this,b,a)+"</span>"}]};CKEDITOR.dialog._.uiElementBuilders.hbox.build(b,g,e)}return e.join("")})}},textInput:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);var f=this._.inputId=CKEDITOR.tools.getNextId()+"_textInput",c={"class":"cke_dialog_ui_input_"+
a.type,id:f,type:a.type};a.validate&&(this.validate=a.validate);a.maxLength&&(c.maxlength=a.maxLength);a.size&&(c.size=a.size);a.inputStyle&&(c.style=a.inputStyle);var e=this,k=!1;b.on("load",function(){e.getInputElement().on("keydown",function(a){a.data.getKeystroke()==13&&(k=true)});e.getInputElement().on("keyup",function(a){if(a.data.getKeystroke()==13&&k){b.getButton("ok")&&setTimeout(function(){b.getButton("ok").click()},0);k=false}},null,null,1E3)});CKEDITOR.ui.dialog.labeledElement.call(this,
b,a,d,function(){var b=['<div class="cke_dialog_ui_input_',a.type,'" role="presentation"'];a.width&&b.push('style="width:'+a.width+'" ');b.push("><input ");c["aria-labelledby"]=this._.labelId;this._.required&&(c["aria-required"]=this._.required);for(var e in c)b.push(e+'="'+c[e]+'" ');b.push(" /></div>");return b.join("")})}},textarea:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);var f=this,c=this._.inputId=CKEDITOR.tools.getNextId()+"_textarea",e={};a.validate&&(this.validate=a.validate);
e.rows=a.rows||5;e.cols=a.cols||20;e["class"]="cke_dialog_ui_input_textarea "+(a["class"]||"");"undefined"!=typeof a.inputStyle&&(e.style=a.inputStyle);a.dir&&(e.dir=a.dir);CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){e["aria-labelledby"]=this._.labelId;this._.required&&(e["aria-required"]=this._.required);var a=['<div class="cke_dialog_ui_input_textarea" role="presentation"><textarea id="',c,'" '],b;for(b in e)a.push(b+'="'+CKEDITOR.tools.htmlEncode(e[b])+'" ');a.push(">",CKEDITOR.tools.htmlEncode(f._["default"]),
"</textarea></div>");return a.join("")})}},checkbox:function(b,a,d){if(!(3>arguments.length)){var f=h.call(this,a,{"default":!!a["default"]});a.validate&&(this.validate=a.validate);CKEDITOR.ui.dialog.uiElement.call(this,b,a,d,"span",null,null,function(){var c=CKEDITOR.tools.extend({},a,{id:a.id?a.id+"_checkbox":CKEDITOR.tools.getNextId()+"_checkbox"},true),e=[],d=CKEDITOR.tools.getNextId()+"_label",g={"class":"cke_dialog_ui_checkbox_input",type:"checkbox","aria-labelledby":d};p(c);if(a["default"])g.checked=
"checked";if(typeof c.inputStyle!="undefined")c.style=c.inputStyle;f.checkbox=new CKEDITOR.ui.dialog.uiElement(b,c,e,"input",null,g);e.push(' <label id="',d,'" for="',g.id,'"'+(a.labelStyle?' style="'+a.labelStyle+'"':"")+">",CKEDITOR.tools.htmlEncode(a.label),"</label>");return e.join("")})}},radio:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);this._["default"]||(this._["default"]=this._.initValue=a.items[0][1]);a.validate&&(this.validate=a.valdiate);var f=[],c=this;a.role="radiogroup";
a.includeLabel=!0;CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){for(var e=[],d=[],g=(a.id?a.id:CKEDITOR.tools.getNextId())+"_radio",i=0;i<a.items.length;i++){var j=a.items[i],h=j[2]!==void 0?j[2]:j[0],l=j[1]!==void 0?j[1]:j[0],m=CKEDITOR.tools.getNextId()+"_radio_input",n=m+"_label",m=CKEDITOR.tools.extend({},a,{id:m,title:null,type:null},true),h=CKEDITOR.tools.extend({},m,{title:h},true),o={type:"radio","class":"cke_dialog_ui_radio_input",name:g,value:l,"aria-labelledby":n},q=[];if(c._["default"]==
l)o.checked="checked";p(m);p(h);if(typeof m.inputStyle!="undefined")m.style=m.inputStyle;m.keyboardFocusable=true;f.push(new CKEDITOR.ui.dialog.uiElement(b,m,q,"input",null,o));q.push(" ");new CKEDITOR.ui.dialog.uiElement(b,h,q,"label",null,{id:n,"for":o.id},j[0]);e.push(q.join(""))}new CKEDITOR.ui.dialog.hbox(b,f,e,d);return d.join("")});this._.children=f}},button:function(b,a,d){if(arguments.length){"function"==typeof a&&(a=a(b.getParentEditor()));h.call(this,a,{disabled:a.disabled||!1});CKEDITOR.event.implementOn(this);
var f=this;b.on("load",function(){var a=this.getElement();(function(){a.on("click",function(a){f.click();a.data.preventDefault()});a.on("keydown",function(a){a.data.getKeystroke()in{32:1}&&(f.click(),a.data.preventDefault())})})();a.unselectable()},this);var c=CKEDITOR.tools.extend({},a);delete c.style;var e=CKEDITOR.tools.getNextId()+"_label";CKEDITOR.ui.dialog.uiElement.call(this,b,c,d,"a",null,{style:a.style,href:"javascript:void(0)",title:a.label,hidefocus:"true","class":a["class"],role:"button",
"aria-labelledby":e},'<span id="'+e+'" class="cke_dialog_ui_button">'+CKEDITOR.tools.htmlEncode(a.label)+"</span>")}},select:function(b,a,d){if(!(3>arguments.length)){var f=h.call(this,a);a.validate&&(this.validate=a.validate);f.inputId=CKEDITOR.tools.getNextId()+"_select";CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){var c=CKEDITOR.tools.extend({},a,{id:a.id?a.id+"_select":CKEDITOR.tools.getNextId()+"_select"},true),e=[],d=[],g={id:f.inputId,"class":"cke_dialog_ui_input_select","aria-labelledby":this._.labelId};
e.push('<div class="cke_dialog_ui_input_',a.type,'" role="presentation"');a.width&&e.push('style="width:'+a.width+'" ');e.push(">");if(a.size!==void 0)g.size=a.size;if(a.multiple!==void 0)g.multiple=a.multiple;p(c);for(var i=0,j;i<a.items.length&&(j=a.items[i]);i++)d.push('<option value="',CKEDITOR.tools.htmlEncode(j[1]!==void 0?j[1]:j[0]).replace(/"/g,"&quot;"),'" /> ',CKEDITOR.tools.htmlEncode(j[0]));if(typeof c.inputStyle!="undefined")c.style=c.inputStyle;f.select=new CKEDITOR.ui.dialog.uiElement(b,
c,e,"select",null,g,d.join(""));e.push("</div>");return e.join("")})}},file:function(b,a,d){if(!(3>arguments.length)){void 0===a["default"]&&(a["default"]="");var f=CKEDITOR.tools.extend(h.call(this,a),{definition:a,buttons:[]});a.validate&&(this.validate=a.validate);b.on("load",function(){CKEDITOR.document.getById(f.frameId).getParent().addClass("cke_dialog_ui_input_file")});CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){f.frameId=CKEDITOR.tools.getNextId()+"_fileInput";var b=['<iframe frameborder="0" allowtransparency="0" class="cke_dialog_ui_input_file" role="presentation" id="',
f.frameId,'" title="',a.label,'" src="javascript:void('];b.push(CKEDITOR.env.ie?"(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"})()":"0");b.push(')"></iframe>');return b.join("")})}},fileButton:function(b,a,d){var f=this;if(!(3>arguments.length)){h.call(this,a);a.validate&&(this.validate=a.validate);var c=CKEDITOR.tools.extend({},a),e=c.onClick;c.className=(c.className?c.className+" ":"")+"cke_dialog_ui_button";c.onClick=function(c){var d=
a["for"];if(!e||e.call(this,c)!==false){b.getContentElement(d[0],d[1]).submit();this.disable()}};b.on("load",function(){b.getContentElement(a["for"][0],a["for"][1])._.buttons.push(f)});CKEDITOR.ui.dialog.button.call(this,b,c,d)}},html:function(){var b=/^\s*<[\w:]+\s+([^>]*)?>/,a=/^(\s*<[\w:]+(?:\s+[^>]*)?)((?:.|\r|\n)+)$/,d=/\/$/;return function(f,c,e){if(!(3>arguments.length)){var k=[],g=c.html;"<"!=g.charAt(0)&&(g="<span>"+g+"</span>");var i=c.focus;if(i){var j=this.focus;this.focus=function(){("function"==
typeof i?i:j).call(this);this.fire("focus")};c.isFocusable&&(this.isFocusable=this.isFocusable);this.keyboardFocusable=!0}CKEDITOR.ui.dialog.uiElement.call(this,f,c,k,"span",null,null,"");k=k.join("").match(b);g=g.match(a)||["","",""];d.test(g[1])&&(g[1]=g[1].slice(0,-1),g[2]="/"+g[2]);e.push([g[1]," ",k[1]||"",g[2]].join(""))}}}(),fieldset:function(b,a,d,f,c){var e=c.label;this._={children:a};CKEDITOR.ui.dialog.uiElement.call(this,b,c,f,"fieldset",null,null,function(){var a=[];e&&a.push("<legend"+
(c.labelStyle?' style="'+c.labelStyle+'"':"")+">"+e+"</legend>");for(var b=0;b<d.length;b++)a.push(d[b]);return a.join("")})}},!0);CKEDITOR.ui.dialog.html.prototype=new CKEDITOR.ui.dialog.uiElement;CKEDITOR.ui.dialog.labeledElement.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setLabel:function(b){var a=CKEDITOR.document.getById(this._.labelId);1>a.getChildCount()?(new CKEDITOR.dom.text(b,CKEDITOR.document)).appendTo(a):a.getChild(0).$.nodeValue=b;return this},getLabel:function(){var b=
CKEDITOR.document.getById(this._.labelId);return!b||1>b.getChildCount()?"":b.getChild(0).getText()},eventProcessors:o},!0);CKEDITOR.ui.dialog.button.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{click:function(){return!this._.disabled?this.fire("click",{dialog:this._.dialog}):!1},enable:function(){this._.disabled=!1;var b=this.getElement();b&&b.removeClass("cke_disabled")},disable:function(){this._.disabled=!0;this.getElement().addClass("cke_disabled")},isVisible:function(){return this.getElement().getFirst().isVisible()},
isEnabled:function(){return!this._.disabled},eventProcessors:CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onClick:function(b,a){this.on("click",function(){a.apply(this,arguments)})}},!0),accessKeyUp:function(){this.click()},accessKeyDown:function(){this.focus()},keyboardFocusable:!0},!0);CKEDITOR.ui.dialog.textInput.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return CKEDITOR.document.getById(this._.inputId)},
focus:function(){var b=this.selectParentTab();setTimeout(function(){var a=b.getInputElement();a&&a.$.focus()},0)},select:function(){var b=this.selectParentTab();setTimeout(function(){var a=b.getInputElement();a&&(a.$.focus(),a.$.select())},0)},accessKeyUp:function(){this.select()},setValue:function(b){!b&&(b="");return CKEDITOR.ui.dialog.uiElement.prototype.setValue.apply(this,arguments)},keyboardFocusable:!0},n,!0);CKEDITOR.ui.dialog.textarea.prototype=new CKEDITOR.ui.dialog.textInput;CKEDITOR.ui.dialog.select.prototype=
CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return this._.select.getElement()},add:function(b,a,d){var f=new CKEDITOR.dom.element("option",this.getDialog().getParentEditor().document),c=this.getInputElement().$;f.$.text=b;f.$.value=void 0===a||null===a?b:a;void 0===d||null===d?CKEDITOR.env.ie?c.add(f.$):c.add(f.$,null):c.add(f.$,d);return this},remove:function(b){this.getInputElement().$.remove(b);return this},clear:function(){for(var b=this.getInputElement().$;0<
b.length;)b.remove(0);return this},keyboardFocusable:!0},n,!0);CKEDITOR.ui.dialog.checkbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getInputElement:function(){return this._.checkbox.getElement()},setValue:function(b,a){this.getInputElement().$.checked=b;!a&&this.fire("change",{value:b})},getValue:function(){return this.getInputElement().$.checked},accessKeyUp:function(){this.setValue(!this.getValue())},eventProcessors:{onChange:function(b,a){if(!CKEDITOR.env.ie||8<CKEDITOR.env.version)return o.onChange.apply(this,
arguments);b.on("load",function(){var a=this._.checkbox.getElement();a.on("propertychange",function(b){b=b.data.$;"checked"==b.propertyName&&this.fire("change",{value:a.$.checked})},this)},this);this.on("change",a);return null}},keyboardFocusable:!0},n,!0);CKEDITOR.ui.dialog.radio.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setValue:function(b,a){for(var d=this._.children,f,c=0;c<d.length&&(f=d[c]);c++)f.getElement().$.checked=f.getValue()==b;!a&&this.fire("change",{value:b})},
getValue:function(){for(var b=this._.children,a=0;a<b.length;a++)if(b[a].getElement().$.checked)return b[a].getValue();return null},accessKeyUp:function(){var b=this._.children,a;for(a=0;a<b.length;a++)if(b[a].getElement().$.checked){b[a].getElement().focus();return}b[0].getElement().focus()},eventProcessors:{onChange:function(b,a){if(CKEDITOR.env.ie)b.on("load",function(){for(var a=this._.children,b=this,c=0;c<a.length;c++)a[c].getElement().on("propertychange",function(a){a=a.data.$;"checked"==a.propertyName&&
this.$.checked&&b.fire("change",{value:this.getAttribute("value")})})},this),this.on("change",a);else return o.onChange.apply(this,arguments);return null}}},n,!0);CKEDITOR.ui.dialog.file.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,n,{getInputElement:function(){var b=CKEDITOR.document.getById(this._.frameId).getFrameDocument();return 0<b.$.forms.length?new CKEDITOR.dom.element(b.$.forms[0].elements[0]):this.getElement()},submit:function(){this.getInputElement().getParent().$.submit();
return this},getAction:function(){return this.getInputElement().getParent().$.action},registerEvents:function(b){var a=/^on([A-Z]\w+)/,d,f=function(a,b,c,d){a.on("formLoaded",function(){a.getInputElement().on(c,d,a)})},c;for(c in b)if(d=c.match(a))this.eventProcessors[c]?this.eventProcessors[c].call(this,this._.dialog,b[c]):f(this,this._.dialog,d[1].toLowerCase(),b[c]);return this},reset:function(){function b(){d.$.open();var b="";f.size&&(b=f.size-(CKEDITOR.env.ie?7:0));var h=a.frameId+"_input";
d.$.write(['<html dir="'+g+'" lang="'+i+'"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">','<form enctype="multipart/form-data" method="POST" dir="'+g+'" lang="'+i+'" action="',CKEDITOR.tools.htmlEncode(f.action),'"><label id="',a.labelId,'" for="',h,'" style="display:none">',CKEDITOR.tools.htmlEncode(f.label),'</label><input style="width:100%" id="',h,'" aria-labelledby="',a.labelId,'" type="file" name="',CKEDITOR.tools.htmlEncode(f.id||"cke_upload"),
'" size="',CKEDITOR.tools.htmlEncode(0<b?b:""),'" /></form></body></html><script>',CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"","window.parent.CKEDITOR.tools.callFunction("+e+");","window.onbeforeunload = function() {window.parent.CKEDITOR.tools.callFunction("+k+")}","<\/script>"].join(""));d.$.close();for(b=0;b<c.length;b++)c[b].enable()}var a=this._,d=CKEDITOR.document.getById(a.frameId).getFrameDocument(),f=a.definition,c=a.buttons,e=this.formLoadedNumber,k=this.formUnloadNumber,g=a.dialog._.editor.lang.dir,
i=a.dialog._.editor.langCode;e||(e=this.formLoadedNumber=CKEDITOR.tools.addFunction(function(){this.fire("formLoaded")},this),k=this.formUnloadNumber=CKEDITOR.tools.addFunction(function(){this.getInputElement().clearCustomData()},this),this.getDialog()._.editor.on("destroy",function(){CKEDITOR.tools.removeFunction(e);CKEDITOR.tools.removeFunction(k)}));CKEDITOR.env.gecko?setTimeout(b,500):b()},getValue:function(){return this.getInputElement().$.value||""},setInitValue:function(){this._.initValue=
""},eventProcessors:{onChange:function(b,a){this._.domOnChangeRegistered||(this.on("formLoaded",function(){this.getInputElement().on("change",function(){this.fire("change",{value:this.getValue()})},this)},this),this._.domOnChangeRegistered=!0);this.on("change",a)}},keyboardFocusable:!0},!0);CKEDITOR.ui.dialog.fileButton.prototype=new CKEDITOR.ui.dialog.button;CKEDITOR.ui.dialog.fieldset.prototype=CKEDITOR.tools.clone(CKEDITOR.ui.dialog.hbox.prototype);CKEDITOR.dialog.addUIElement("text",r);CKEDITOR.dialog.addUIElement("password",
r);CKEDITOR.dialog.addUIElement("textarea",l);CKEDITOR.dialog.addUIElement("checkbox",l);CKEDITOR.dialog.addUIElement("radio",l);CKEDITOR.dialog.addUIElement("button",l);CKEDITOR.dialog.addUIElement("select",l);CKEDITOR.dialog.addUIElement("file",l);CKEDITOR.dialog.addUIElement("fileButton",l);CKEDITOR.dialog.addUIElement("html",l);CKEDITOR.dialog.addUIElement("fieldset",{build:function(b,a,d){for(var f=a.children,c,e=[],h=[],g=0;g<f.length&&(c=f[g]);g++){var i=[];e.push(i);h.push(CKEDITOR.dialog._.uiElementBuilders[c.type].build(b,
c,i))}return new CKEDITOR.ui.dialog[a.type](b,h,e,d,a)}})}});CKEDITOR.DIALOG_RESIZE_NONE=0;CKEDITOR.DIALOG_RESIZE_WIDTH=1;CKEDITOR.DIALOG_RESIZE_HEIGHT=2;CKEDITOR.DIALOG_RESIZE_BOTH=3;
(function(){function t(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId)+a,c=b-1;c>b-a;c--)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function u(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId),c=b+1;c<b+a;c++)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function G(a,b){for(var c=a.$.getElementsByTagName("input"),
e=0,d=c.length;e<d;e++){var g=new CKEDITOR.dom.element(c[e]);"text"==g.getAttribute("type").toLowerCase()&&(b?(g.setAttribute("value",g.getCustomData("fake_value")||""),g.removeCustomData("fake_value")):(g.setCustomData("fake_value",g.getAttribute("value")),g.setAttribute("value","")))}}function P(a,b){var c=this.getInputElement();c&&(a?c.removeAttribute("aria-invalid"):c.setAttribute("aria-invalid",!0));a||(this.select?this.select():this.focus());b&&alert(b);this.fire("validated",{valid:a,msg:b})}
function Q(){var a=this.getInputElement();a&&a.removeAttribute("aria-invalid")}function R(a){var a=CKEDITOR.dom.element.createFromHtml(CKEDITOR.addTemplate("dialog",S).output({id:CKEDITOR.tools.getNextNumber(),editorId:a.id,langDir:a.lang.dir,langCode:a.langCode,editorDialogClass:"cke_editor_"+a.name.replace(/\./g,"\\.")+"_dialog",closeTitle:a.lang.common.close,hidpi:CKEDITOR.env.hidpi?"cke_hidpi":""})),b=a.getChild([0,0,0,0,0]),c=b.getChild(0),e=b.getChild(1);if(CKEDITOR.env.ie&&!CKEDITOR.env.quirks){var d=
"javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())";CKEDITOR.dom.element.createFromHtml('<iframe frameBorder="0" class="cke_iframe_shim" src="'+d+'" tabIndex="-1"></iframe>').appendTo(b.getParent())}c.unselectable();e.unselectable();return{element:a,parts:{dialog:a.getChild(0),title:c,close:e,tabs:b.getChild(2),contents:b.getChild([3,0,0,0]),footer:b.getChild([3,0,1,0])}}}function H(a,b,c){this.element=b;this.focusIndex=c;this.tabIndex=
0;this.isFocusable=function(){return!b.getAttribute("disabled")&&b.isVisible()};this.focus=function(){a._.currentFocusIndex=this.focusIndex;this.element.focus()};b.on("keydown",function(a){a.data.getKeystroke()in{32:1,13:1}&&this.fire("click")});b.on("focus",function(){this.fire("mouseover")});b.on("blur",function(){this.fire("mouseout")})}function T(a){function b(){a.layout()}var c=CKEDITOR.document.getWindow();c.on("resize",b);a.on("hide",function(){c.removeListener("resize",b)})}function I(a,b){this._=
{dialog:a};CKEDITOR.tools.extend(this,b)}function U(a){function b(b){var c=a.getSize(),i=CKEDITOR.document.getWindow().getViewPaneSize(),o=b.data.$.screenX,j=b.data.$.screenY,n=o-e.x,l=j-e.y;e={x:o,y:j};d.x+=n;d.y+=l;a.move(d.x+h[3]<f?-h[3]:d.x-h[1]>i.width-c.width-f?i.width-c.width+("rtl"==g.lang.dir?0:h[1]):d.x,d.y+h[0]<f?-h[0]:d.y-h[2]>i.height-c.height-f?i.height-c.height+h[2]:d.y,1);b.data.preventDefault()}function c(){CKEDITOR.document.removeListener("mousemove",b);CKEDITOR.document.removeListener("mouseup",
c);if(CKEDITOR.env.ie6Compat){var a=q.getChild(0).getFrameDocument();a.removeListener("mousemove",b);a.removeListener("mouseup",c)}}var e=null,d=null,g=a.getParentEditor(),f=g.config.dialog_magnetDistance,h=CKEDITOR.skin.margins||[0,0,0,0];"undefined"==typeof f&&(f=20);a.parts.title.on("mousedown",function(f){e={x:f.data.$.screenX,y:f.data.$.screenY};CKEDITOR.document.on("mousemove",b);CKEDITOR.document.on("mouseup",c);d=a.getPosition();if(CKEDITOR.env.ie6Compat){var h=q.getChild(0).getFrameDocument();
h.on("mousemove",b);h.on("mouseup",c)}f.data.preventDefault()},a)}function V(a){var b,c;function e(d){var e="rtl"==h.lang.dir,j=o.width,C=o.height,D=j+(d.data.$.screenX-b)*(e?-1:1)*(a._.moved?1:2),n=C+(d.data.$.screenY-c)*(a._.moved?1:2),x=a._.element.getFirst(),x=e&&x.getComputedStyle("right"),y=a.getPosition();y.y+n>i.height&&(n=i.height-y.y);if((e?x:y.x)+D>i.width)D=i.width-(e?x:y.x);if(f==CKEDITOR.DIALOG_RESIZE_WIDTH||f==CKEDITOR.DIALOG_RESIZE_BOTH)j=Math.max(g.minWidth||0,D-m);if(f==CKEDITOR.DIALOG_RESIZE_HEIGHT||
f==CKEDITOR.DIALOG_RESIZE_BOTH)C=Math.max(g.minHeight||0,n-k);a.resize(j,C);a._.moved||a.layout();d.data.preventDefault()}function d(){CKEDITOR.document.removeListener("mouseup",d);CKEDITOR.document.removeListener("mousemove",e);j&&(j.remove(),j=null);if(CKEDITOR.env.ie6Compat){var a=q.getChild(0).getFrameDocument();a.removeListener("mouseup",d);a.removeListener("mousemove",e)}}var g=a.definition,f=g.resizable;if(f!=CKEDITOR.DIALOG_RESIZE_NONE){var h=a.getParentEditor(),m,k,i,o,j,n=CKEDITOR.tools.addFunction(function(f){o=
a.getSize();var h=a.parts.contents;h.$.getElementsByTagName("iframe").length&&(j=CKEDITOR.dom.element.createFromHtml('<div class="cke_dialog_resize_cover" style="height: 100%; position: absolute; width: 100%;"></div>'),h.append(j));k=o.height-a.parts.contents.getSize("height",!(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.quirks));m=o.width-a.parts.contents.getSize("width",1);b=f.screenX;c=f.screenY;i=CKEDITOR.document.getWindow().getViewPaneSize();CKEDITOR.document.on("mousemove",e);CKEDITOR.document.on("mouseup",
d);CKEDITOR.env.ie6Compat&&(h=q.getChild(0).getFrameDocument(),h.on("mousemove",e),h.on("mouseup",d));f.preventDefault&&f.preventDefault()});a.on("load",function(){var b="";f==CKEDITOR.DIALOG_RESIZE_WIDTH?b=" cke_resizer_horizontal":f==CKEDITOR.DIALOG_RESIZE_HEIGHT&&(b=" cke_resizer_vertical");b=CKEDITOR.dom.element.createFromHtml('<div class="cke_resizer'+b+" cke_resizer_"+h.lang.dir+'" title="'+CKEDITOR.tools.htmlEncode(h.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+n+', event )">'+
("ltr"==h.lang.dir?"◢":"◣")+"</div>");a.parts.footer.append(b,1)});h.on("destroy",function(){CKEDITOR.tools.removeFunction(n)})}}function E(a){a.data.preventDefault(1)}function J(a){var b=CKEDITOR.document.getWindow(),c=a.config,e=c.dialog_backgroundCoverColor||"white",d=c.dialog_backgroundCoverOpacity,g=c.baseFloatZIndex,c=CKEDITOR.tools.genKey(e,d,g),f=w[c];f?f.show():(g=['<div tabIndex="-1" style="position: ',CKEDITOR.env.ie6Compat?"absolute":"fixed","; z-index: ",g,"; top: 0px; left: 0px; ",!CKEDITOR.env.ie6Compat?
"background-color: "+e:"",'" class="cke_dialog_background_cover">'],CKEDITOR.env.ie6Compat&&(e="<html><body style=\\'background-color:"+e+";\\'></body></html>",g.push('<iframe hidefocus="true" frameborder="0" id="cke_dialog_background_iframe" src="javascript:'),g.push("void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.write( '"+e+"' );document.close();")+"})())"),g.push('" style="position:absolute;left:0;top:0;width:100%;height: 100%;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0)"></iframe>')),
g.push("</div>"),f=CKEDITOR.dom.element.createFromHtml(g.join("")),f.setOpacity(void 0!==d?d:0.5),f.on("keydown",E),f.on("keypress",E),f.on("keyup",E),f.appendTo(CKEDITOR.document.getBody()),w[c]=f);a.focusManager.add(f);q=f;var a=function(){var a=b.getViewPaneSize();f.setStyles({width:a.width+"px",height:a.height+"px"})},h=function(){var a=b.getScrollPosition(),c=CKEDITOR.dialog._.currentTop;f.setStyles({left:a.x+"px",top:a.y+"px"});if(c){do{a=c.getPosition();c.move(a.x,a.y)}while(c=c._.parentDialog)
}};F=a;b.on("resize",a);a();(!CKEDITOR.env.mac||!CKEDITOR.env.webkit)&&f.focus();if(CKEDITOR.env.ie6Compat){var m=function(){h();arguments.callee.prevScrollHandler.apply(this,arguments)};b.$.setTimeout(function(){m.prevScrollHandler=window.onscroll||function(){};window.onscroll=m},0);h()}}function K(a){q&&(a.focusManager.remove(q),a=CKEDITOR.document.getWindow(),q.hide(),a.removeListener("resize",F),CKEDITOR.env.ie6Compat&&a.$.setTimeout(function(){window.onscroll=window.onscroll&&window.onscroll.prevScrollHandler||
null},0),F=null)}var r=CKEDITOR.tools.cssLength,S='<div class="cke_reset_all {editorId} {editorDialogClass} {hidpi}" dir="{langDir}" lang="{langCode}" role="dialog" aria-labelledby="cke_dialog_title_{id}"><table class="cke_dialog '+CKEDITOR.env.cssClass+' cke_{langDir}" style="position:absolute" role="presentation"><tr><td role="presentation"><div class="cke_dialog_body" role="presentation"><div id="cke_dialog_title_{id}" class="cke_dialog_title" role="presentation"></div><a id="cke_dialog_close_button_{id}" class="cke_dialog_close_button" href="javascript:void(0)" title="{closeTitle}" role="button"><span class="cke_label">X</span></a><div id="cke_dialog_tabs_{id}" class="cke_dialog_tabs" role="tablist"></div><table class="cke_dialog_contents" role="presentation"><tr><td id="cke_dialog_contents_{id}" class="cke_dialog_contents_body" role="presentation"></td></tr><tr><td id="cke_dialog_footer_{id}" class="cke_dialog_footer" role="presentation"></td></tr></table></div></td></tr></table></div>';
CKEDITOR.dialog=function(a,b){function c(){var a=l._.focusList;a.sort(function(a,b){return a.tabIndex!=b.tabIndex?b.tabIndex-a.tabIndex:a.focusIndex-b.focusIndex});for(var b=a.length,c=0;c<b;c++)a[c].focusIndex=c}function e(a){var b=l._.focusList,a=a||0;if(!(1>b.length)){var c=l._.currentFocusIndex;try{b[c].getInputElement().$.blur()}catch(f){}for(var d=c=(c+a+b.length)%b.length;a&&!b[d].isFocusable()&&!(d=(d+a+b.length)%b.length,d==c););b[d].focus();"text"==b[d].type&&b[d].select()}}function d(b){if(l==
CKEDITOR.dialog._.currentTop){var c=b.data.getKeystroke(),d="rtl"==a.lang.dir;o=j=0;if(9==c||c==CKEDITOR.SHIFT+9)c=c==CKEDITOR.SHIFT+9,l._.tabBarMode?(c=c?t.call(l):u.call(l),l.selectPage(c),l._.tabs[c][0].focus()):e(c?-1:1),o=1;else if(c==CKEDITOR.ALT+121&&!l._.tabBarMode&&1<l.getPageCount())l._.tabBarMode=!0,l._.tabs[l._.currentTabId][0].focus(),o=1;else if((37==c||39==c)&&l._.tabBarMode)c=c==(d?39:37)?t.call(l):u.call(l),l.selectPage(c),l._.tabs[c][0].focus(),o=1;else if((13==c||32==c)&&l._.tabBarMode)this.selectPage(this._.currentTabId),
this._.tabBarMode=!1,this._.currentFocusIndex=-1,e(1),o=1;else if(13==c){c=b.data.getTarget();if(!c.is("a","button","select","textarea")&&(!c.is("input")||"button"!=c.$.type))(c=this.getButton("ok"))&&CKEDITOR.tools.setTimeout(c.click,0,c),o=1;j=1}else if(27==c)(c=this.getButton("cancel"))?CKEDITOR.tools.setTimeout(c.click,0,c):!1!==this.fire("cancel",{hide:!0}).hide&&this.hide(),j=1;else return;g(b)}}function g(a){o?a.data.preventDefault(1):j&&a.data.stopPropagation()}var f=CKEDITOR.dialog._.dialogDefinitions[b],
h=CKEDITOR.tools.clone(W),m=a.config.dialog_buttonsOrder||"OS",k=a.lang.dir,i={},o,j;("OS"==m&&CKEDITOR.env.mac||"rtl"==m&&"ltr"==k||"ltr"==m&&"rtl"==k)&&h.buttons.reverse();f=CKEDITOR.tools.extend(f(a),h);f=CKEDITOR.tools.clone(f);f=new L(this,f);h=R(a);this._={editor:a,element:h.element,name:b,contentSize:{width:0,height:0},size:{width:0,height:0},contents:{},buttons:{},accessKeyMap:{},tabs:{},tabIdList:[],currentTabId:null,currentTabIndex:null,pageCount:0,lastTab:null,tabBarMode:!1,focusList:[],
currentFocusIndex:0,hasFocus:!1};this.parts=h.parts;CKEDITOR.tools.setTimeout(function(){a.fire("ariaWidget",this.parts.contents)},0,this);h={position:CKEDITOR.env.ie6Compat?"absolute":"fixed",top:0,visibility:"hidden"};h["rtl"==k?"right":"left"]=0;this.parts.dialog.setStyles(h);CKEDITOR.event.call(this);this.definition=f=CKEDITOR.fire("dialogDefinition",{name:b,definition:f},a).definition;if(!("removeDialogTabs"in a._)&&a.config.removeDialogTabs){h=a.config.removeDialogTabs.split(";");for(k=0;k<
h.length;k++)if(m=h[k].split(":"),2==m.length){var n=m[0];i[n]||(i[n]=[]);i[n].push(m[1])}a._.removeDialogTabs=i}if(a._.removeDialogTabs&&(i=a._.removeDialogTabs[b]))for(k=0;k<i.length;k++)f.removeContents(i[k]);if(f.onLoad)this.on("load",f.onLoad);if(f.onShow)this.on("show",f.onShow);if(f.onHide)this.on("hide",f.onHide);if(f.onOk)this.on("ok",function(b){a.fire("saveSnapshot");setTimeout(function(){a.fire("saveSnapshot")},0);!1===f.onOk.call(this,b)&&(b.data.hide=!1)});if(f.onCancel)this.on("cancel",
function(a){!1===f.onCancel.call(this,a)&&(a.data.hide=!1)});var l=this,p=function(a){var b=l._.contents,c=!1,d;for(d in b)for(var f in b[d])if(c=a.call(this,b[d][f]))return};this.on("ok",function(a){p(function(b){if(b.validate){var c=b.validate(this),d="string"==typeof c||!1===c;d&&(a.data.hide=!1,a.stop());P.call(b,!d,"string"==typeof c?c:void 0);return d}})},this,null,0);this.on("cancel",function(b){p(function(c){if(c.isChanged())return!a.config.dialog_noConfirmCancel&&!confirm(a.lang.common.confirmCancel)&&
(b.data.hide=!1),!0})},this,null,0);this.parts.close.on("click",function(a){!1!==this.fire("cancel",{hide:!0}).hide&&this.hide();a.data.preventDefault()},this);this.changeFocus=e;var v=this._.element;a.focusManager.add(v,1);this.on("show",function(){v.on("keydown",d,this);if(CKEDITOR.env.gecko)v.on("keypress",g,this)});this.on("hide",function(){v.removeListener("keydown",d);CKEDITOR.env.gecko&&v.removeListener("keypress",g);p(function(a){Q.apply(a)})});this.on("iframeAdded",function(a){(new CKEDITOR.dom.document(a.data.iframe.$.contentWindow.document)).on("keydown",
d,this,null,0)});this.on("show",function(){c();if(a.config.dialog_startupFocusTab&&1<l._.pageCount)l._.tabBarMode=!0,l._.tabs[l._.currentTabId][0].focus();else if(!this._.hasFocus)if(this._.currentFocusIndex=-1,f.onFocus){var b=f.onFocus.call(this);b&&b.focus()}else e(1)},this,null,4294967295);if(CKEDITOR.env.ie6Compat)this.on("load",function(){var a=this.getElement(),b=a.getFirst();b.remove();b.appendTo(a)},this);U(this);V(this);(new CKEDITOR.dom.text(f.title,CKEDITOR.document)).appendTo(this.parts.title);
for(k=0;k<f.contents.length;k++)(i=f.contents[k])&&this.addPage(i);this.parts.tabs.on("click",function(a){var b=a.data.getTarget();b.hasClass("cke_dialog_tab")&&(b=b.$.id,this.selectPage(b.substring(4,b.lastIndexOf("_"))),this._.tabBarMode&&(this._.tabBarMode=!1,this._.currentFocusIndex=-1,e(1)),a.data.preventDefault())},this);k=[];i=CKEDITOR.dialog._.uiElementBuilders.hbox.build(this,{type:"hbox",className:"cke_dialog_footer_buttons",widths:[],children:f.buttons},k).getChild();this.parts.footer.setHtml(k.join(""));
for(k=0;k<i.length;k++)this._.buttons[i[k].id]=i[k]};CKEDITOR.dialog.prototype={destroy:function(){this.hide();this._.element.remove()},resize:function(){return function(a,b){if(!this._.contentSize||!(this._.contentSize.width==a&&this._.contentSize.height==b))CKEDITOR.dialog.fire("resize",{dialog:this,width:a,height:b},this._.editor),this.fire("resize",{width:a,height:b},this._.editor),this.parts.contents.setStyles({width:a+"px",height:b+"px"}),"rtl"==this._.editor.lang.dir&&this._.position&&(this._.position.x=
CKEDITOR.document.getWindow().getViewPaneSize().width-this._.contentSize.width-parseInt(this._.element.getFirst().getStyle("right"),10)),this._.contentSize={width:a,height:b}}}(),getSize:function(){var a=this._.element.getFirst();return{width:a.$.offsetWidth||0,height:a.$.offsetHeight||0}},move:function(a,b,c){var e=this._.element.getFirst(),d="rtl"==this._.editor.lang.dir,g="fixed"==e.getComputedStyle("position");CKEDITOR.env.ie&&e.setStyle("zoom","100%");if(!g||!this._.position||!(this._.position.x==
a&&this._.position.y==b))this._.position={x:a,y:b},g||(g=CKEDITOR.document.getWindow().getScrollPosition(),a+=g.x,b+=g.y),d&&(g=this.getSize(),a=CKEDITOR.document.getWindow().getViewPaneSize().width-g.width-a),b={top:(0<b?b:0)+"px"},b[d?"right":"left"]=(0<a?a:0)+"px",e.setStyles(b),c&&(this._.moved=1)},getPosition:function(){return CKEDITOR.tools.extend({},this._.position)},show:function(){var a=this._.element,b=this.definition;!a.getParent()||!a.getParent().equals(CKEDITOR.document.getBody())?a.appendTo(CKEDITOR.document.getBody()):
a.setStyle("display","block");this.resize(this._.contentSize&&this._.contentSize.width||b.width||b.minWidth,this._.contentSize&&this._.contentSize.height||b.height||b.minHeight);this.reset();this.selectPage(this.definition.contents[0].id);null===CKEDITOR.dialog._.currentZIndex&&(CKEDITOR.dialog._.currentZIndex=this._.editor.config.baseFloatZIndex);this._.element.getFirst().setStyle("z-index",CKEDITOR.dialog._.currentZIndex+=10);null===CKEDITOR.dialog._.currentTop?(CKEDITOR.dialog._.currentTop=this,
this._.parentDialog=null,J(this._.editor)):(this._.parentDialog=CKEDITOR.dialog._.currentTop,this._.parentDialog.getElement().getFirst().$.style.zIndex-=Math.floor(this._.editor.config.baseFloatZIndex/2),CKEDITOR.dialog._.currentTop=this);a.on("keydown",M);a.on("keyup",N);this._.hasFocus=!1;for(var c in b.contents)if(b.contents[c]){var a=b.contents[c],e=this._.tabs[a.id],d=a.requiredContent,g=0;if(e){for(var f in this._.contents[a.id]){var h=this._.contents[a.id][f];"hbox"==h.type||("vbox"==h.type||
!h.getInputElement())||(h.requiredContent&&!this._.editor.activeFilter.check(h.requiredContent)?h.disable():(h.enable(),g++))}!g||d&&!this._.editor.activeFilter.check(d)?e[0].addClass("cke_dialog_tab_disabled"):e[0].removeClass("cke_dialog_tab_disabled")}}CKEDITOR.tools.setTimeout(function(){this.layout();T(this);this.parts.dialog.setStyle("visibility","");this.fireOnce("load",{});CKEDITOR.ui.fire("ready",this);this.fire("show",{});this._.editor.fire("dialogShow",this);this._.parentDialog||this._.editor.focusManager.lock();
this.foreach(function(a){a.setInitValue&&a.setInitValue()})},100,this)},layout:function(){var a=this.parts.dialog,b=this.getSize(),c=CKEDITOR.document.getWindow().getViewPaneSize(),e=(c.width-b.width)/2,d=(c.height-b.height)/2;CKEDITOR.env.ie6Compat||(b.height+(0<d?d:0)>c.height||b.width+(0<e?e:0)>c.width?a.setStyle("position","absolute"):a.setStyle("position","fixed"));this.move(this._.moved?this._.position.x:e,this._.moved?this._.position.y:d)},foreach:function(a){for(var b in this._.contents)for(var c in this._.contents[b])a.call(this,
this._.contents[b][c]);return this},reset:function(){var a=function(a){a.reset&&a.reset(1)};return function(){this.foreach(a);return this}}(),setupContent:function(){var a=arguments;this.foreach(function(b){b.setup&&b.setup.apply(b,a)})},commitContent:function(){var a=arguments;this.foreach(function(b){CKEDITOR.env.ie&&this._.currentFocusIndex==b.focusIndex&&b.getInputElement().$.blur();b.commit&&b.commit.apply(b,a)})},hide:function(){if(this.parts.dialog.isVisible()){this.fire("hide",{});this._.editor.fire("dialogHide",
this);this.selectPage(this._.tabIdList[0]);var a=this._.element;a.setStyle("display","none");this.parts.dialog.setStyle("visibility","hidden");for(X(this);CKEDITOR.dialog._.currentTop!=this;)CKEDITOR.dialog._.currentTop.hide();if(this._.parentDialog){var b=this._.parentDialog.getElement().getFirst();b.setStyle("z-index",parseInt(b.$.style.zIndex,10)+Math.floor(this._.editor.config.baseFloatZIndex/2))}else K(this._.editor);if(CKEDITOR.dialog._.currentTop=this._.parentDialog)CKEDITOR.dialog._.currentZIndex-=
10;else{CKEDITOR.dialog._.currentZIndex=null;a.removeListener("keydown",M);a.removeListener("keyup",N);var c=this._.editor;c.focus();setTimeout(function(){c.focusManager.unlock();CKEDITOR.env.iOS&&c.window.focus()},0)}delete this._.parentDialog;this.foreach(function(a){a.resetInitValue&&a.resetInitValue()})}},addPage:function(a){if(!a.requiredContent||this._.editor.filter.check(a.requiredContent)){for(var b=[],c=a.label?' title="'+CKEDITOR.tools.htmlEncode(a.label)+'"':"",e=CKEDITOR.dialog._.uiElementBuilders.vbox.build(this,
{type:"vbox",className:"cke_dialog_page_contents",children:a.elements,expand:!!a.expand,padding:a.padding,style:a.style||"width: 100%;"},b),d=this._.contents[a.id]={},g=e.getChild(),f=0;e=g.shift();)!e.notAllowed&&("hbox"!=e.type&&"vbox"!=e.type)&&f++,d[e.id]=e,"function"==typeof e.getChild&&g.push.apply(g,e.getChild());f||(a.hidden=!0);b=CKEDITOR.dom.element.createFromHtml(b.join(""));b.setAttribute("role","tabpanel");e=CKEDITOR.env;d="cke_"+a.id+"_"+CKEDITOR.tools.getNextNumber();c=CKEDITOR.dom.element.createFromHtml(['<a class="cke_dialog_tab"',
0<this._.pageCount?" cke_last":"cke_first",c,a.hidden?' style="display:none"':"",' id="',d,'"',e.gecko&&!e.hc?"":' href="javascript:void(0)"',' tabIndex="-1" hidefocus="true" role="tab">',a.label,"</a>"].join(""));b.setAttribute("aria-labelledby",d);this._.tabs[a.id]=[c,b];this._.tabIdList.push(a.id);!a.hidden&&this._.pageCount++;this._.lastTab=c;this.updateStyle();b.setAttribute("name",a.id);b.appendTo(this.parts.contents);c.unselectable();this.parts.tabs.append(c);a.accessKey&&(O(this,this,"CTRL+"+
a.accessKey,Y,Z),this._.accessKeyMap["CTRL+"+a.accessKey]=a.id)}},selectPage:function(a){if(this._.currentTabId!=a&&!this._.tabs[a][0].hasClass("cke_dialog_tab_disabled")&&!1!==this.fire("selectPage",{page:a,currentPage:this._.currentTabId})){for(var b in this._.tabs){var c=this._.tabs[b][0],e=this._.tabs[b][1];b!=a&&(c.removeClass("cke_dialog_tab_selected"),e.hide());e.setAttribute("aria-hidden",b!=a)}var d=this._.tabs[a];d[0].addClass("cke_dialog_tab_selected");CKEDITOR.env.ie6Compat||CKEDITOR.env.ie7Compat?
(G(d[1]),d[1].show(),setTimeout(function(){G(d[1],1)},0)):d[1].show();this._.currentTabId=a;this._.currentTabIndex=CKEDITOR.tools.indexOf(this._.tabIdList,a)}},updateStyle:function(){this.parts.dialog[(1===this._.pageCount?"add":"remove")+"Class"]("cke_single_page")},hidePage:function(a){var b=this._.tabs[a]&&this._.tabs[a][0];b&&(1!=this._.pageCount&&b.isVisible())&&(a==this._.currentTabId&&this.selectPage(t.call(this)),b.hide(),this._.pageCount--,this.updateStyle())},showPage:function(a){if(a=this._.tabs[a]&&
this._.tabs[a][0])a.show(),this._.pageCount++,this.updateStyle()},getElement:function(){return this._.element},getName:function(){return this._.name},getContentElement:function(a,b){var c=this._.contents[a];return c&&c[b]},getValueOf:function(a,b){return this.getContentElement(a,b).getValue()},setValueOf:function(a,b,c){return this.getContentElement(a,b).setValue(c)},getButton:function(a){return this._.buttons[a]},click:function(a){return this._.buttons[a].click()},disableButton:function(a){return this._.buttons[a].disable()},
enableButton:function(a){return this._.buttons[a].enable()},getPageCount:function(){return this._.pageCount},getParentEditor:function(){return this._.editor},getSelectedElement:function(){return this.getParentEditor().getSelection().getSelectedElement()},addFocusable:function(a,b){if("undefined"==typeof b)b=this._.focusList.length,this._.focusList.push(new H(this,a,b));else{this._.focusList.splice(b,0,new H(this,a,b));for(var c=b+1;c<this._.focusList.length;c++)this._.focusList[c].focusIndex++}}};
CKEDITOR.tools.extend(CKEDITOR.dialog,{add:function(a,b){if(!this._.dialogDefinitions[a]||"function"==typeof b)this._.dialogDefinitions[a]=b},exists:function(a){return!!this._.dialogDefinitions[a]},getCurrent:function(){return CKEDITOR.dialog._.currentTop},isTabEnabled:function(a,b,c){a=a.config.removeDialogTabs;return!(a&&a.match(RegExp("(?:^|;)"+b+":"+c+"(?:$|;)","i")))},okButton:function(){var a=function(a,c){c=c||{};return CKEDITOR.tools.extend({id:"ok",type:"button",label:a.lang.common.ok,"class":"cke_dialog_ui_button_ok",
onClick:function(a){a=a.data.dialog;!1!==a.fire("ok",{hide:!0}).hide&&a.hide()}},c,!0)};a.type="button";a.override=function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)};return a}(),cancelButton:function(){var a=function(a,c){c=c||{};return CKEDITOR.tools.extend({id:"cancel",type:"button",label:a.lang.common.cancel,"class":"cke_dialog_ui_button_cancel",onClick:function(a){a=a.data.dialog;!1!==a.fire("cancel",{hide:!0}).hide&&a.hide()}},c,!0)};a.type="button";a.override=
function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)};return a}(),addUIElement:function(a,b){this._.uiElementBuilders[a]=b}});CKEDITOR.dialog._={uiElementBuilders:{},dialogDefinitions:{},currentTop:null,currentZIndex:null};CKEDITOR.event.implementOn(CKEDITOR.dialog);CKEDITOR.event.implementOn(CKEDITOR.dialog.prototype);var W={resizable:CKEDITOR.DIALOG_RESIZE_BOTH,minWidth:600,minHeight:400,buttons:[CKEDITOR.dialog.okButton,CKEDITOR.dialog.cancelButton]},z=function(a,
b,c){for(var e=0,d;d=a[e];e++)if(d.id==b||c&&d[c]&&(d=z(d[c],b,c)))return d;return null},A=function(a,b,c,e,d){if(c){for(var g=0,f;f=a[g];g++){if(f.id==c)return a.splice(g,0,b),b;if(e&&f[e]&&(f=A(f[e],b,c,e,!0)))return f}if(d)return null}a.push(b);return b},B=function(a,b,c){for(var e=0,d;d=a[e];e++){if(d.id==b)return a.splice(e,1);if(c&&d[c]&&(d=B(d[c],b,c)))return d}return null},L=function(a,b){this.dialog=a;for(var c=b.contents,e=0,d;d=c[e];e++)c[e]=d&&new I(a,d);CKEDITOR.tools.extend(this,b)};
L.prototype={getContents:function(a){return z(this.contents,a)},getButton:function(a){return z(this.buttons,a)},addContents:function(a,b){return A(this.contents,a,b)},addButton:function(a,b){return A(this.buttons,a,b)},removeContents:function(a){B(this.contents,a)},removeButton:function(a){B(this.buttons,a)}};I.prototype={get:function(a){return z(this.elements,a,"children")},add:function(a,b){return A(this.elements,a,b,"children")},remove:function(a){B(this.elements,a,"children")}};var F,w={},q,s=
{},M=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,e=a.data.$.shiftKey,d=String.fromCharCode(a.data.$.keyCode);if((b=s[(b?"CTRL+":"")+(c?"ALT+":"")+(e?"SHIFT+":"")+d])&&b.length)b=b[b.length-1],b.keydown&&b.keydown.call(b.uiElement,b.dialog,b.key),a.data.preventDefault()},N=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,e=a.data.$.shiftKey,d=String.fromCharCode(a.data.$.keyCode);if((b=s[(b?"CTRL+":"")+(c?"ALT+":"")+(e?"SHIFT+":"")+d])&&b.length)b=b[b.length-
1],b.keyup&&(b.keyup.call(b.uiElement,b.dialog,b.key),a.data.preventDefault())},O=function(a,b,c,e,d){(s[c]||(s[c]=[])).push({uiElement:a,dialog:b,key:c,keyup:d||a.accessKeyUp,keydown:e||a.accessKeyDown})},X=function(a){for(var b in s){for(var c=s[b],e=c.length-1;0<=e;e--)(c[e].dialog==a||c[e].uiElement==a)&&c.splice(e,1);0===c.length&&delete s[b]}},Z=function(a,b){a._.accessKeyMap[b]&&a.selectPage(a._.accessKeyMap[b])},Y=function(){};(function(){CKEDITOR.ui.dialog={uiElement:function(a,b,c,e,d,g,
f){if(!(4>arguments.length)){var h=(e.call?e(b):e)||"div",m=["<",h," "],k=(d&&d.call?d(b):d)||{},i=(g&&g.call?g(b):g)||{},o=(f&&f.call?f.call(this,a,b):f)||"",j=this.domId=i.id||CKEDITOR.tools.getNextId()+"_uiElement";b.requiredContent&&!a.getParentEditor().filter.check(b.requiredContent)&&(k.display="none",this.notAllowed=!0);i.id=j;var n={};b.type&&(n["cke_dialog_ui_"+b.type]=1);b.className&&(n[b.className]=1);b.disabled&&(n.cke_disabled=1);for(var l=i["class"]&&i["class"].split?i["class"].split(" "):
[],j=0;j<l.length;j++)l[j]&&(n[l[j]]=1);l=[];for(j in n)l.push(j);i["class"]=l.join(" ");b.title&&(i.title=b.title);n=(b.style||"").split(";");b.align&&(l=b.align,k["margin-left"]="left"==l?0:"auto",k["margin-right"]="right"==l?0:"auto");for(j in k)n.push(j+":"+k[j]);b.hidden&&n.push("display:none");for(j=n.length-1;0<=j;j--)""===n[j]&&n.splice(j,1);0<n.length&&(i.style=(i.style?i.style+"; ":"")+n.join("; "));for(j in i)m.push(j+'="'+CKEDITOR.tools.htmlEncode(i[j])+'" ');m.push(">",o,"</",h,">");
c.push(m.join(""));(this._||(this._={})).dialog=a;"boolean"==typeof b.isChanged&&(this.isChanged=function(){return b.isChanged});"function"==typeof b.isChanged&&(this.isChanged=b.isChanged);"function"==typeof b.setValue&&(this.setValue=CKEDITOR.tools.override(this.setValue,function(a){return function(c){a.call(this,b.setValue.call(this,c))}}));"function"==typeof b.getValue&&(this.getValue=CKEDITOR.tools.override(this.getValue,function(a){return function(){return b.getValue.call(this,a.call(this))}}));
CKEDITOR.event.implementOn(this);this.registerEvents(b);this.accessKeyUp&&(this.accessKeyDown&&b.accessKey)&&O(this,a,"CTRL+"+b.accessKey);var p=this;a.on("load",function(){var b=p.getInputElement();if(b){var c=p.type in{checkbox:1,ratio:1}&&CKEDITOR.env.ie&&CKEDITOR.env.version<8?"cke_dialog_ui_focused":"";b.on("focus",function(){a._.tabBarMode=false;a._.hasFocus=true;p.fire("focus");c&&this.addClass(c)});b.on("blur",function(){p.fire("blur");c&&this.removeClass(c)})}});CKEDITOR.tools.extend(this,
b);this.keyboardFocusable&&(this.tabIndex=b.tabIndex||0,this.focusIndex=a._.focusList.push(this)-1,this.on("focus",function(){a._.currentFocusIndex=p.focusIndex}))}},hbox:function(a,b,c,e,d){if(!(4>arguments.length)){this._||(this._={});var g=this._.children=b,f=d&&d.widths||null,h=d&&d.height||null,m,k={role:"presentation"};d&&d.align&&(k.align=d.align);CKEDITOR.ui.dialog.uiElement.call(this,a,d||{type:"hbox"},e,"table",{},k,function(){var a=['<tbody><tr class="cke_dialog_ui_hbox">'];for(m=0;m<c.length;m++){var b=
"cke_dialog_ui_hbox_child",e=[];0===m&&(b="cke_dialog_ui_hbox_first");m==c.length-1&&(b="cke_dialog_ui_hbox_last");a.push('<td class="',b,'" role="presentation" ');f?f[m]&&e.push("width:"+r(f[m])):e.push("width:"+Math.floor(100/c.length)+"%");h&&e.push("height:"+r(h));d&&void 0!==d.padding&&e.push("padding:"+r(d.padding));CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&g[m].align)&&e.push("text-align:"+g[m].align);0<e.length&&a.push('style="'+e.join("; ")+'" ');a.push(">",c[m],"</td>")}a.push("</tr></tbody>");
return a.join("")})}},vbox:function(a,b,c,e,d){if(!(3>arguments.length)){this._||(this._={});var g=this._.children=b,f=d&&d.width||null,h=d&&d.heights||null;CKEDITOR.ui.dialog.uiElement.call(this,a,d||{type:"vbox"},e,"div",null,{role:"presentation"},function(){var b=['<table role="presentation" cellspacing="0" border="0" '];b.push('style="');d&&d.expand&&b.push("height:100%;");b.push("width:"+r(f||"100%"),";");CKEDITOR.env.webkit&&b.push("float:none;");b.push('"');b.push('align="',CKEDITOR.tools.htmlEncode(d&&
d.align||("ltr"==a.getParentEditor().lang.dir?"left":"right")),'" ');b.push("><tbody>");for(var e=0;e<c.length;e++){var i=[];b.push('<tr><td role="presentation" ');f&&i.push("width:"+r(f||"100%"));h?i.push("height:"+r(h[e])):d&&d.expand&&i.push("height:"+Math.floor(100/c.length)+"%");d&&void 0!==d.padding&&i.push("padding:"+r(d.padding));CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&g[e].align)&&i.push("text-align:"+g[e].align);0<i.length&&b.push('style="',i.join("; "),'" ');b.push(' class="cke_dialog_ui_vbox_child">',
c[e],"</td></tr>")}b.push("</tbody></table>");return b.join("")})}}}})();CKEDITOR.ui.dialog.uiElement.prototype={getElement:function(){return CKEDITOR.document.getById(this.domId)},getInputElement:function(){return this.getElement()},getDialog:function(){return this._.dialog},setValue:function(a,b){this.getInputElement().setValue(a);!b&&this.fire("change",{value:a});return this},getValue:function(){return this.getInputElement().getValue()},isChanged:function(){return!1},selectParentTab:function(){for(var a=
this.getInputElement();(a=a.getParent())&&-1==a.$.className.search("cke_dialog_page_contents"););if(!a)return this;a=a.getAttribute("name");this._.dialog._.currentTabId!=a&&this._.dialog.selectPage(a);return this},focus:function(){this.selectParentTab().getInputElement().focus();return this},registerEvents:function(a){var b=/^on([A-Z]\w+)/,c,e=function(a,b,c,d){b.on("load",function(){a.getInputElement().on(c,d,a)})},d;for(d in a)if(c=d.match(b))this.eventProcessors[d]?this.eventProcessors[d].call(this,
this._.dialog,a[d]):e(this,this._.dialog,c[1].toLowerCase(),a[d]);return this},eventProcessors:{onLoad:function(a,b){a.on("load",b,this)},onShow:function(a,b){a.on("show",b,this)},onHide:function(a,b){a.on("hide",b,this)}},accessKeyDown:function(){this.focus()},accessKeyUp:function(){},disable:function(){var a=this.getElement();this.getInputElement().setAttribute("disabled","true");a.addClass("cke_disabled")},enable:function(){var a=this.getElement();this.getInputElement().removeAttribute("disabled");
a.removeClass("cke_disabled")},isEnabled:function(){return!this.getElement().hasClass("cke_disabled")},isVisible:function(){return this.getInputElement().isVisible()},isFocusable:function(){return!this.isEnabled()||!this.isVisible()?!1:!0}};CKEDITOR.ui.dialog.hbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getChild:function(a){if(1>arguments.length)return this._.children.concat();a.splice||(a=[a]);return 2>a.length?this._.children[a[0]]:this._.children[a[0]]&&this._.children[a[0]].getChild?
this._.children[a[0]].getChild(a.slice(1,a.length)):null}},!0);CKEDITOR.ui.dialog.vbox.prototype=new CKEDITOR.ui.dialog.hbox;(function(){var a={build:function(a,c,e){for(var d=c.children,g,f=[],h=[],m=0;m<d.length&&(g=d[m]);m++){var k=[];f.push(k);h.push(CKEDITOR.dialog._.uiElementBuilders[g.type].build(a,g,k))}return new CKEDITOR.ui.dialog[c.type](a,h,f,e,c)}};CKEDITOR.dialog.addUIElement("hbox",a);CKEDITOR.dialog.addUIElement("vbox",a)})();CKEDITOR.dialogCommand=function(a,b){this.dialogName=a;
CKEDITOR.tools.extend(this,b,!0)};CKEDITOR.dialogCommand.prototype={exec:function(a){a.openDialog(this.dialogName)},canUndo:!1,editorFocus:1};(function(){var a=/^([a]|[^a])+$/,b=/^\d*$/,c=/^\d*(?:\.\d+)?$/,e=/^(((\d*(\.\d+))|(\d*))(px|\%)?)?$/,d=/^(((\d*(\.\d+))|(\d*))(px|em|ex|in|cm|mm|pt|pc|\%)?)?$/i,g=/^(\s*[\w-]+\s*:\s*[^:;]+(?:;|$))*$/;CKEDITOR.VALIDATE_OR=1;CKEDITOR.VALIDATE_AND=2;CKEDITOR.dialog.validate={functions:function(){var a=arguments;return function(){var b=this&&this.getValue?this.getValue():
a[0],c,d=CKEDITOR.VALIDATE_AND,e=[],g;for(g=0;g<a.length;g++)if("function"==typeof a[g])e.push(a[g]);else break;g<a.length&&"string"==typeof a[g]&&(c=a[g],g++);g<a.length&&"number"==typeof a[g]&&(d=a[g]);var j=d==CKEDITOR.VALIDATE_AND?!0:!1;for(g=0;g<e.length;g++)j=d==CKEDITOR.VALIDATE_AND?j&&e[g](b):j||e[g](b);return!j?c:!0}},regex:function(a,b){return function(c){c=this&&this.getValue?this.getValue():c;return!a.test(c)?b:!0}},notEmpty:function(b){return this.regex(a,b)},integer:function(a){return this.regex(b,
a)},number:function(a){return this.regex(c,a)},cssLength:function(a){return this.functions(function(a){return d.test(CKEDITOR.tools.trim(a))},a)},htmlLength:function(a){return this.functions(function(a){return e.test(CKEDITOR.tools.trim(a))},a)},inlineStyle:function(a){return this.functions(function(a){return g.test(CKEDITOR.tools.trim(a))},a)},equals:function(a,b){return this.functions(function(b){return b==a},b)},notEqual:function(a,b){return this.functions(function(b){return b!=a},b)}};CKEDITOR.on("instanceDestroyed",
function(a){if(CKEDITOR.tools.isEmpty(CKEDITOR.instances)){for(var b;b=CKEDITOR.dialog._.currentTop;)b.hide();for(var c in w)w[c].remove();w={}}var a=a.editor._.storedDialogs,d;for(d in a)a[d].destroy()})})();CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{openDialog:function(a,b){var c=null,e=CKEDITOR.dialog._.dialogDefinitions[a];null===CKEDITOR.dialog._.currentTop&&J(this);if("function"==typeof e)c=this._.storedDialogs||(this._.storedDialogs={}),c=c[a]||(c[a]=new CKEDITOR.dialog(this,a)),b&&b.call(c,
c),c.show();else{if("failed"==e)throw K(this),Error('[CKEDITOR.dialog.openDialog] Dialog "'+a+'" failed when loading definition.');"string"==typeof e&&CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(e),function(){"function"!=typeof CKEDITOR.dialog._.dialogDefinitions[a]&&(CKEDITOR.dialog._.dialogDefinitions[a]="failed");this.openDialog(a,b)},this,0,1)}CKEDITOR.skin.loadPart("dialog");return c}})})();
CKEDITOR.plugins.add("dialog",{requires:"dialogui",init:function(t){t.on("doubleclick",function(u){u.data.dialog&&t.openDialog(u.data.dialog)},null,null,999)}});(function(){function v(b){function a(){var e=b.editable();e.on(p,function(b){(!CKEDITOR.env.ie||!n)&&u(b)});CKEDITOR.env.ie&&e.on("paste",function(e){q||(g(),e.data.preventDefault(),u(e),h("paste")||b.openDialog("paste"))});CKEDITOR.env.ie&&(e.on("contextmenu",i,null,null,0),e.on("beforepaste",function(b){b.data&&(!b.data.$.ctrlKey&&!b.data.$.shiftKey)&&i()},null,null,0));e.on("beforecut",function(){!n&&j(b)});var a;e.attachListener(CKEDITOR.env.ie?e:b.document.getDocumentElement(),"mouseup",function(){a=
setTimeout(function(){r()},0)});b.on("destroy",function(){clearTimeout(a)});e.on("keyup",r)}function c(e){return{type:e,canUndo:"cut"==e,startDisabled:!0,exec:function(){"cut"==this.type&&j();var e;var a=this.type;if(CKEDITOR.env.ie)e=h(a);else try{e=b.document.$.execCommand(a,!1,null)}catch(d){e=!1}e||alert(b.lang.clipboard[this.type+"Error"]);return e}}}function d(){return{canUndo:!1,async:!0,exec:function(b,a){var d=function(a,d){a&&f(a.type,a.dataValue,!!d);b.fire("afterCommandExec",{name:"paste",
command:c,returnValue:!!a})},c=this;"string"==typeof a?d({type:"auto",dataValue:a},1):b.getClipboardData(d)}}}function g(){q=1;setTimeout(function(){q=0},100)}function i(){n=1;setTimeout(function(){n=0},10)}function h(e){var a=b.document,d=a.getBody(),c=!1,j=function(){c=!0};d.on(e,j);(7<CKEDITOR.env.version?a.$:a.$.selection.createRange()).execCommand(e);d.removeListener(e,j);return c}function f(e,a,d){e={type:e};if(d&&!1===b.fire("beforePaste",e)||!a)return!1;e.dataValue=a;return b.fire("paste",
e)}function j(){if(CKEDITOR.env.ie&&!CKEDITOR.env.quirks){var e=b.getSelection(),a,d,c;if(e.getType()==CKEDITOR.SELECTION_ELEMENT&&(a=e.getSelectedElement()))d=e.getRanges()[0],c=b.document.createText(""),c.insertBefore(a),d.setStartBefore(c),d.setEndAfter(a),e.selectRanges([d]),setTimeout(function(){a.getParent()&&(c.remove(),e.selectElement(a))},0)}}function l(a,d){var c=b.document,j=b.editable(),l=function(b){b.cancel()},g;if(!c.getById("cke_pastebin")){var i=b.getSelection(),s=i.createBookmarks();
CKEDITOR.env.ie&&i.root.fire("selectionchange");var k=new CKEDITOR.dom.element((CKEDITOR.env.webkit||j.is("body"))&&!CKEDITOR.env.ie?"body":"div",c);k.setAttributes({id:"cke_pastebin","data-cke-temp":"1"});var f=0,c=c.getWindow();CKEDITOR.env.webkit?(j.append(k),k.addClass("cke_editable"),j.is("body")||(f="static"!=j.getComputedStyle("position")?j:CKEDITOR.dom.element.get(j.$.offsetParent),f=f.getDocumentPosition().y)):j.getAscendant(CKEDITOR.env.ie?"body":"html",1).append(k);k.setStyles({position:"absolute",
top:c.getScrollPosition().y-f+10+"px",width:"1px",height:Math.max(1,c.getViewPaneSize().height-20)+"px",overflow:"hidden",margin:0,padding:0});CKEDITOR.env.safari&&k.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select","text"));(f=k.getParent().isReadOnly())?(k.setOpacity(0),k.setAttribute("contenteditable",!0)):k.setStyle("ltr"==b.config.contentsLangDirection?"left":"right","-1000px");b.on("selectionChange",l,null,null,0);if(CKEDITOR.env.webkit||CKEDITOR.env.gecko)g=j.once("blur",l,null,null,-100);
f&&k.focus();f=new CKEDITOR.dom.range(k);f.selectNodeContents(k);var h=f.select();CKEDITOR.env.ie&&(g=j.once("blur",function(){b.lockSelection(h)}));var m=CKEDITOR.document.getWindow().getScrollPosition().y;setTimeout(function(){if(CKEDITOR.env.webkit)CKEDITOR.document.getBody().$.scrollTop=m;g&&g.removeListener();CKEDITOR.env.ie&&j.focus();i.selectBookmarks(s);k.remove();var a;if(CKEDITOR.env.webkit&&(a=k.getFirst())&&a.is&&a.hasClass("Apple-style-span"))k=a;b.removeListener("selectionChange",l);
d(k.getHtml())},0)}}function s(){if(CKEDITOR.env.ie){b.focus();g();var a=b.focusManager;a.lock();if(b.editable().fire(p)&&!h("paste"))return a.unlock(),!1;a.unlock()}else try{if(b.editable().fire(p)&&!b.document.$.execCommand("Paste",!1,null))throw 0;}catch(d){return!1}return!0}function o(a){if("wysiwyg"==b.mode)switch(a.data.keyCode){case CKEDITOR.CTRL+86:case CKEDITOR.SHIFT+45:a=b.editable();g();!CKEDITOR.env.ie&&a.fire("beforepaste");break;case CKEDITOR.CTRL+88:case CKEDITOR.SHIFT+46:b.fire("saveSnapshot"),
setTimeout(function(){b.fire("saveSnapshot")},50)}}function u(a){var d={type:"auto"},c=b.fire("beforePaste",d);l(a,function(b){b=b.replace(/<span[^>]+data-cke-bookmark[^<]*?<\/span>/ig,"");c&&f(d.type,b,0,1)})}function r(){if("wysiwyg"==b.mode){var a=m("paste");b.getCommand("cut").setState(m("cut"));b.getCommand("copy").setState(m("copy"));b.getCommand("paste").setState(a);b.fire("pasteState",a)}}function m(a){if(t&&a in{paste:1,cut:1})return CKEDITOR.TRISTATE_DISABLED;if("paste"==a)return CKEDITOR.TRISTATE_OFF;
var a=b.getSelection(),d=a.getRanges();return a.getType()==CKEDITOR.SELECTION_NONE||1==d.length&&d[0].collapsed?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_OFF}var n=0,q=0,t=0,p=CKEDITOR.env.ie?"beforepaste":"paste";(function(){b.on("key",o);b.on("contentDom",a);b.on("selectionChange",function(b){t=b.data.selection.getRanges()[0].checkReadOnly();r()});b.contextMenu&&b.contextMenu.addListener(function(b,a){t=a.getRanges()[0].checkReadOnly();return{cut:m("cut"),copy:m("copy"),paste:m("paste")}})})();
(function(){function a(d,c,j,e,l){var g=b.lang.clipboard[c];b.addCommand(c,j);b.ui.addButton&&b.ui.addButton(d,{label:g,command:c,toolbar:"clipboard,"+e});b.addMenuItems&&b.addMenuItem(c,{label:g,command:c,group:"clipboard",order:l})}a("Cut","cut",c("cut"),10,1);a("Copy","copy",c("copy"),20,4);a("Paste","paste",d(),30,8)})();b.getClipboardData=function(a,d){function c(a){a.removeListener();a.cancel();d(a.data)}function j(a){a.removeListener();a.cancel();i=!0;d({type:f,dataValue:a.data})}function l(){this.customTitle=
a&&a.title}var g=!1,f="auto",i=!1;d||(d=a,a=null);b.on("paste",c,null,null,0);b.on("beforePaste",function(a){a.removeListener();g=true;f=a.data.type},null,null,1E3);!1===s()&&(b.removeListener("paste",c),g&&b.fire("pasteDialog",l)?(b.on("pasteDialogCommit",j),b.on("dialogHide",function(a){a.removeListener();a.data.removeListener("pasteDialogCommit",j);setTimeout(function(){i||d(null)},10)})):d(null))}}function w(b){if(CKEDITOR.env.webkit){if(!b.match(/^[^<]*$/g)&&!b.match(/^(<div><br( ?\/)?><\/div>|<div>[^<]*<\/div>)*$/gi))return"html"}else if(CKEDITOR.env.ie){if(!b.match(/^([^<]|<br( ?\/)?>)*$/gi)&&
!b.match(/^(<p>([^<]|<br( ?\/)?>)*<\/p>|(\r\n))*$/gi))return"html"}else if(CKEDITOR.env.gecko){if(!b.match(/^([^<]|<br( ?\/)?>)*$/gi))return"html"}else return"html";return"htmlifiedtext"}function x(b,a){function c(a){return CKEDITOR.tools.repeat("</p><p>",~~(a/2))+(1==a%2?"<br>":"")}a=a.replace(/\s+/g," ").replace(/> +</g,"><").replace(/<br ?\/>/gi,"<br>");a=a.replace(/<\/?[A-Z]+>/g,function(a){return a.toLowerCase()});if(a.match(/^[^<]$/))return a;CKEDITOR.env.webkit&&-1<a.indexOf("<div>")&&(a=a.replace(/^(<div>(<br>|)<\/div>)(?!$|(<div>(<br>|)<\/div>))/g,
"<br>").replace(/^(<div>(<br>|)<\/div>){2}(?!$)/g,"<div></div>"),a.match(/<div>(<br>|)<\/div>/)&&(a="<p>"+a.replace(/(<div>(<br>|)<\/div>)+/g,function(a){return c(a.split("</div><div>").length+1)})+"</p>"),a=a.replace(/<\/div><div>/g,"<br>"),a=a.replace(/<\/?div>/g,""));CKEDITOR.env.gecko&&b.enterMode!=CKEDITOR.ENTER_BR&&(CKEDITOR.env.gecko&&(a=a.replace(/^<br><br>$/,"<br>")),-1<a.indexOf("<br><br>")&&(a="<p>"+a.replace(/(<br>){2,}/g,function(a){return c(a.length/4)})+"</p>"));return o(b,a)}function y(){var b=
new CKEDITOR.htmlParser.filter,a={blockquote:1,dl:1,fieldset:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ol:1,p:1,table:1,ul:1},c=CKEDITOR.tools.extend({br:0},CKEDITOR.dtd.$inline),d={p:1,br:1,"cke:br":1},g=CKEDITOR.dtd,i=CKEDITOR.tools.extend({area:1,basefont:1,embed:1,iframe:1,map:1,object:1,param:1},CKEDITOR.dtd.$nonBodyContent,CKEDITOR.dtd.$cdata),h=function(a){delete a.name;a.add(new CKEDITOR.htmlParser.text(" "))},f=function(a){for(var b=a,c;(b=b.next)&&b.name&&b.name.match(/^h\d$/);){c=new CKEDITOR.htmlParser.element("cke:br");
c.isEmpty=!0;for(a.add(c);c=b.children.shift();)a.add(c)}};b.addRules({elements:{h1:f,h2:f,h3:f,h4:f,h5:f,h6:f,img:function(a){var a=CKEDITOR.tools.trim(a.attributes.alt||""),b=" ";a&&!a.match(/(^http|\.(jpe?g|gif|png))/i)&&(b=" ["+a+"] ");return new CKEDITOR.htmlParser.text(b)},td:h,th:h,$:function(b){var f=b.name,h;if(i[f])return!1;b.attributes={};if("br"==f)return b;if(a[f])b.name="p";else if(c[f])delete b.name;else if(g[f]){h=new CKEDITOR.htmlParser.element("cke:br");h.isEmpty=!0;if(CKEDITOR.dtd.$empty[f])return h;
b.add(h,0);h=h.clone();h.isEmpty=!0;b.add(h);delete b.name}d[b.name]||delete b.name;return b}}},{applyToAll:!0});return b}function z(b,a,c){var a=new CKEDITOR.htmlParser.fragment.fromHtml(a),d=new CKEDITOR.htmlParser.basicWriter;a.writeHtml(d,c);var a=d.getHtml(),a=a.replace(/\s*(<\/?[a-z:]+ ?\/?>)\s*/g,"$1").replace(/(<cke:br \/>){2,}/g,"<cke:br />").replace(/(<cke:br \/>)(<\/?p>|<br \/>)/g,"$2").replace(/(<\/?p>|<br \/>)(<cke:br \/>)/g,"$1").replace(/<(cke:)?br( \/)?>/g,"<br>").replace(/<p><\/p>/g,
""),g=0,a=a.replace(/<\/?p>/g,function(a){if("<p>"==a){if(1<++g)return"</p><p>"}else if(0<--g)return"</p><p>";return a}).replace(/<p><\/p>/g,"");return o(b,a)}function o(b,a){b.enterMode==CKEDITOR.ENTER_BR?a=a.replace(/(<\/p><p>)+/g,function(a){return CKEDITOR.tools.repeat("<br>",2*(a.length/7))}).replace(/<\/?p>/g,""):b.enterMode==CKEDITOR.ENTER_DIV&&(a=a.replace(/<(\/)?p>/g,"<$1div>"));return a}CKEDITOR.plugins.add("clipboard",{requires:"dialog",init:function(b){var a;v(b);CKEDITOR.dialog.add("paste",
CKEDITOR.getUrl(this.path+"dialogs/paste.js"));b.on("paste",function(a){var b=a.data.dataValue,g=CKEDITOR.dtd.$block;-1<b.indexOf("Apple-")&&(b=b.replace(/<span class="Apple-converted-space">&nbsp;<\/span>/gi," "),"html"!=a.data.type&&(b=b.replace(/<span class="Apple-tab-span"[^>]*>([^<]*)<\/span>/gi,function(a,b){return b.replace(/\t/g,"&nbsp;&nbsp; &nbsp;")})),-1<b.indexOf('<br class="Apple-interchange-newline">')&&(a.data.startsWithEOL=1,a.data.preSniffing="html",b=b.replace(/<br class="Apple-interchange-newline">/,
"")),b=b.replace(/(<[^>]+) class="Apple-[^"]*"/gi,"$1"));if(b.match(/^<[^<]+cke_(editable|contents)/i)){var i,h,f=new CKEDITOR.dom.element("div");for(f.setHtml(b);1==f.getChildCount()&&(i=f.getFirst())&&i.type==CKEDITOR.NODE_ELEMENT&&(i.hasClass("cke_editable")||i.hasClass("cke_contents"));)f=h=i;h&&(b=h.getHtml().replace(/<br>$/i,""))}CKEDITOR.env.ie?b=b.replace(/^&nbsp;(?: |\r\n)?<(\w+)/g,function(b,d){if(d.toLowerCase()in g){a.data.preSniffing="html";return"<"+d}return b}):CKEDITOR.env.webkit?
b=b.replace(/<\/(\w+)><div><br><\/div>$/,function(b,d){if(d in g){a.data.endsWithEOL=1;return"</"+d+">"}return b}):CKEDITOR.env.gecko&&(b=b.replace(/(\s)<br>$/,"$1"));a.data.dataValue=b},null,null,3);b.on("paste",function(c){var c=c.data,d=c.type,g=c.dataValue,i,h=b.config.clipboard_defaultContentType||"html";i="html"==d||"html"==c.preSniffing?"html":w(g);"htmlifiedtext"==i?g=x(b.config,g):"text"==d&&"html"==i&&(g=z(b.config,g,a||(a=y(b))));c.startsWithEOL&&(g='<br data-cke-eol="1">'+g);c.endsWithEOL&&
(g+='<br data-cke-eol="1">');"auto"==d&&(d="html"==i||"html"==h?"html":"text");c.type=d;c.dataValue=g;delete c.preSniffing;delete c.startsWithEOL;delete c.endsWithEOL},null,null,6);b.on("paste",function(a){a=a.data;b.insertHtml(a.dataValue,a.type);setTimeout(function(){b.fire("afterPaste")},0)},null,null,1E3);b.on("pasteDialog",function(a){setTimeout(function(){b.openDialog("paste",a.data)},0)})}})})();(function(){var c='<a id="{id}" class="cke_button cke_button__{name} cke_button_{state} {cls}"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' title="{title}" tabindex="-1" hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="{hasArrow}" aria-disabled="{ariaDisabled}"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(c+=' onkeypress="return false;"');CKEDITOR.env.gecko&&(c+=' onblur="this.style.cssText = this.style.cssText;"');var c=c+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+
(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span class="cke_button_icon cke_button__{iconName}_icon" style="{style}"'),c=c+'>&nbsp;</span><span id="{id}_label" class="cke_button_label cke_button__{name}_label" aria-hidden="false">{label}</span>{arrowHtml}</a>',o=CKEDITOR.addTemplate("buttonArrow",'<span class="cke_button_arrow">'+(CKEDITOR.env.hc?"&#9660;":"")+"</span>"),p=CKEDITOR.addTemplate("button",c);CKEDITOR.plugins.add("button",
{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_BUTTON,CKEDITOR.ui.button.handler)}});CKEDITOR.UI_BUTTON="button";CKEDITOR.ui.button=function(a){CKEDITOR.tools.extend(this,a,{title:a.label,click:a.click||function(b){b.execCommand(a.command)}});this._={}};CKEDITOR.ui.button.handler={create:function(a){return new CKEDITOR.ui.button(a)}};CKEDITOR.ui.button.prototype={render:function(a,b){function c(){var e=a.mode;e&&(e=this.modes[e]?void 0!==i[e]?i[e]:CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,
e=a.readOnly&&!this.readOnly?CKEDITOR.TRISTATE_DISABLED:e,this.setState(e),this.refresh&&this.refresh())}var j=CKEDITOR.env,k=this._.id=CKEDITOR.tools.getNextId(),f="",g=this.command,l;this._.editor=a;var d={id:k,button:this,editor:a,focus:function(){CKEDITOR.document.getById(k).focus()},execute:function(){this.button.click(a)},attach:function(a){this.button.attach(a)}},q=CKEDITOR.tools.addFunction(function(a){if(d.onkey)return a=new CKEDITOR.dom.event(a),!1!==d.onkey(d,a.getKeystroke())}),r=CKEDITOR.tools.addFunction(function(a){var b;
d.onfocus&&(b=!1!==d.onfocus(d,new CKEDITOR.dom.event(a)));return b}),m=0;d.clickFn=l=CKEDITOR.tools.addFunction(function(){m&&(a.unlockSelection(1),m=0);d.execute();j.iOS&&a.focus()});if(this.modes){var i={};a.on("beforeModeUnload",function(){a.mode&&this._.state!=CKEDITOR.TRISTATE_DISABLED&&(i[a.mode]=this._.state)},this);a.on("activeFilterChange",c,this);a.on("mode",c,this);!this.readOnly&&a.on("readOnly",c,this)}else if(g&&(g=a.getCommand(g)))g.on("state",function(){this.setState(g.state)},this),
f+=g.state==CKEDITOR.TRISTATE_ON?"on":g.state==CKEDITOR.TRISTATE_DISABLED?"disabled":"off";if(this.directional)a.on("contentDirChanged",function(b){var c=CKEDITOR.document.getById(this._.id),d=c.getFirst(),b=b.data;b!=a.lang.dir?c.addClass("cke_"+b):c.removeClass("cke_ltr").removeClass("cke_rtl");d.setAttribute("style",CKEDITOR.skin.getIconStyle(h,"rtl"==b,this.icon,this.iconOffset))},this);g||(f+="off");var n=this.name||this.command,h=n;this.icon&&!/\./.test(this.icon)&&(h=this.icon,this.icon=null);
f={id:k,name:n,iconName:h,label:this.label,cls:this.className||"",state:f,ariaDisabled:"disabled"==f?"true":"false",title:this.title,titleJs:j.gecko&&!j.hc?"":(this.title||"").replace("'",""),hasArrow:this.hasArrow?"true":"false",keydownFn:q,focusFn:r,clickFn:l,style:CKEDITOR.skin.getIconStyle(h,"rtl"==a.lang.dir,this.icon,this.iconOffset),arrowHtml:this.hasArrow?o.output():""};p.output(f,b);if(this.onRender)this.onRender();return d},setState:function(a){if(this._.state==a)return!1;this._.state=a;
var b=CKEDITOR.document.getById(this._.id);return b?(b.setState(a,"cke_button"),a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled"),this.hasArrow?(a=a==CKEDITOR.TRISTATE_ON?this._.editor.lang.button.selectedLabel.replace(/%1/g,this.label):this.label,CKEDITOR.document.getById(this._.id+"_label").setText(a)):a==CKEDITOR.TRISTATE_ON?b.setAttribute("aria-pressed",!0):b.removeAttribute("aria-pressed"),!0):!1},getState:function(){return this._.state},toFeature:function(a){if(this._.feature)return this._.feature;
var b=this;!this.allowedContent&&(!this.requiredContent&&this.command)&&(b=a.getCommand(this.command)||b);return this._.feature=b}};CKEDITOR.ui.prototype.addButton=function(a,b){this.add(a,CKEDITOR.UI_BUTTON,b)}})();CKEDITOR.plugins.add("panelbutton",{requires:"button",onLoad:function(){function e(c){var a=this._;a.state!=CKEDITOR.TRISTATE_DISABLED&&(this.createPanel(c),a.on?a.panel.hide():a.panel.showBlock(this._.id,this.document.getById(this._.id),4))}CKEDITOR.ui.panelButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,$:function(c){var a=c.panel||{};delete c.panel;this.base(c);this.document=a.parent&&a.parent.getDocument()||CKEDITOR.document;a.block={attributes:a.attributes};this.hasArrow=a.toolbarRelated=
!0;this.click=e;this._={panelDefinition:a}},statics:{handler:{create:function(c){return new CKEDITOR.ui.panelButton(c)}}},proto:{createPanel:function(c){var a=this._;if(!a.panel){var f=this._.panelDefinition,e=this._.panelDefinition.block,g=f.parent||CKEDITOR.document.getBody(),d=this._.panel=new CKEDITOR.ui.floatPanel(c,g,f),f=d.addBlock(a.id,e),b=this;d.onShow=function(){b.className&&this.element.addClass(b.className+"_panel");b.setState(CKEDITOR.TRISTATE_ON);a.on=1;b.editorFocus&&c.focus();if(b.onOpen)b.onOpen()};
d.onHide=function(d){b.className&&this.element.getFirst().removeClass(b.className+"_panel");b.setState(b.modes&&b.modes[c.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);a.on=0;if(!d&&b.onClose)b.onClose()};d.onEscape=function(){d.hide(1);b.document.getById(a.id).focus()};if(this.onBlock)this.onBlock(d,f);f.onHide=function(){a.on=0;b.setState(CKEDITOR.TRISTATE_OFF)}}}}})},beforeInit:function(e){e.ui.addHandler(CKEDITOR.UI_PANELBUTTON,CKEDITOR.ui.panelButton.handler)}});
CKEDITOR.UI_PANELBUTTON="panelbutton";(function(){CKEDITOR.plugins.add("panel",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_PANEL,CKEDITOR.ui.panel.handler)}});CKEDITOR.UI_PANEL="panel";CKEDITOR.ui.panel=function(a,b){b&&CKEDITOR.tools.extend(this,b);CKEDITOR.tools.extend(this,{className:"",css:[]});this.id=CKEDITOR.tools.getNextId();this.document=a;this.isFramed=this.forceIFrame||this.css.length;this._={blocks:{}}};CKEDITOR.ui.panel.handler={create:function(a){return new CKEDITOR.ui.panel(a)}};var f=CKEDITOR.addTemplate("panel",
'<div lang="{langCode}" id="{id}" dir={dir} class="cke cke_reset_all {editorId} cke_panel cke_panel {cls} cke_{dir}" style="z-index:{z-index}" role="presentation">{frame}</div>'),g=CKEDITOR.addTemplate("panel-frame",'<iframe id="{id}" class="cke_panel_frame" role="presentation" frameborder="0" src="{src}"></iframe>'),h=CKEDITOR.addTemplate("panel-frame-inner",'<!DOCTYPE html><html class="cke_panel_container {env}" dir="{dir}" lang="{langCode}"><head>{css}</head><body class="cke_{dir}" style="margin:0;padding:0" onload="{onload}"></body></html>');
CKEDITOR.ui.panel.prototype={render:function(a,b){this.getHolderElement=function(){var a=this._.holder;if(!a){if(this.isFramed){var a=this.document.getById(this.id+"_frame"),b=a.getParent(),a=a.getFrameDocument();CKEDITOR.env.iOS&&b.setStyles({overflow:"scroll","-webkit-overflow-scrolling":"touch"});b=CKEDITOR.tools.addFunction(CKEDITOR.tools.bind(function(){this.isLoaded=!0;if(this.onLoad)this.onLoad()},this));a.write(h.output(CKEDITOR.tools.extend({css:CKEDITOR.tools.buildStyleHtml(this.css),onload:"window.parent.CKEDITOR.tools.callFunction("+
b+");"},d)));a.getWindow().$.CKEDITOR=CKEDITOR;a.on("keydown",function(a){var b=a.data.getKeystroke(),c=this.document.getById(this.id).getAttribute("dir");this._.onKeyDown&&!1===this._.onKeyDown(b)?a.data.preventDefault():(27==b||b==("rtl"==c?39:37))&&this.onEscape&&!1===this.onEscape(b)&&a.data.preventDefault()},this);a=a.getBody();a.unselectable();CKEDITOR.env.air&&CKEDITOR.tools.callFunction(b)}else a=this.document.getById(this.id);this._.holder=a}return a};var d={editorId:a.id,id:this.id,langCode:a.langCode,
dir:a.lang.dir,cls:this.className,frame:"",env:CKEDITOR.env.cssClass,"z-index":a.config.baseFloatZIndex+1};if(this.isFramed){var e=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?"javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())":"";d.frame=g.output({id:this.id+"_frame",src:e})}e=f.output(d);b&&b.push(e);return e},addBlock:function(a,b){b=this._.blocks[a]=b instanceof CKEDITOR.ui.panel.block?b:new CKEDITOR.ui.panel.block(this.getHolderElement(),
b);this._.currentBlock||this.showBlock(a);return b},getBlock:function(a){return this._.blocks[a]},showBlock:function(a){var a=this._.blocks[a],b=this._.currentBlock,d=!this.forceIFrame||CKEDITOR.env.ie?this._.holder:this.document.getById(this.id+"_frame");b&&b.hide();this._.currentBlock=a;CKEDITOR.fire("ariaWidget",d);a._.focusIndex=-1;this._.onKeyDown=a.onKeyDown&&CKEDITOR.tools.bind(a.onKeyDown,a);a.show();return a},destroy:function(){this.element&&this.element.remove()}};CKEDITOR.ui.panel.block=
CKEDITOR.tools.createClass({$:function(a,b){this.element=a.append(a.getDocument().createElement("div",{attributes:{tabindex:-1,"class":"cke_panel_block"},styles:{display:"none"}}));b&&CKEDITOR.tools.extend(this,b);this.element.setAttributes({role:this.attributes.role||"presentation","aria-label":this.attributes["aria-label"],title:this.attributes.title||this.attributes["aria-label"]});this.keys={};this._.focusIndex=-1;this.element.disableContextMenu()},_:{markItem:function(a){-1!=a&&(a=this.element.getElementsByTag("a").getItem(this._.focusIndex=
a),CKEDITOR.env.webkit&&a.getDocument().getWindow().focus(),a.focus(),this.onMark&&this.onMark(a))}},proto:{show:function(){this.element.setStyle("display","")},hide:function(){(!this.onHide||!0!==this.onHide.call(this))&&this.element.setStyle("display","none")},onKeyDown:function(a,b){var d=this.keys[a];switch(d){case "next":for(var e=this._.focusIndex,d=this.element.getElementsByTag("a"),c;c=d.getItem(++e);)if(c.getAttribute("_cke_focus")&&c.$.offsetWidth){this._.focusIndex=e;c.focus();break}return!c&&
!b?(this._.focusIndex=-1,this.onKeyDown(a,1)):!1;case "prev":e=this._.focusIndex;for(d=this.element.getElementsByTag("a");0<e&&(c=d.getItem(--e));){if(c.getAttribute("_cke_focus")&&c.$.offsetWidth){this._.focusIndex=e;c.focus();break}c=null}return!c&&!b?(this._.focusIndex=d.count(),this.onKeyDown(a,1)):!1;case "click":case "mouseup":return e=this._.focusIndex,(c=0<=e&&this.element.getElementsByTag("a").getItem(e))&&(c.$[d]?c.$[d]():c.$["on"+d]()),!1}return!0}}})})();CKEDITOR.plugins.add("floatpanel",{requires:"panel"});
(function(){function r(a,b,c,i,f){var f=CKEDITOR.tools.genKey(b.getUniqueId(),c.getUniqueId(),a.lang.dir,a.uiColor||"",i.css||"",f||""),h=g[f];h||(h=g[f]=new CKEDITOR.ui.panel(b,i),h.element=c.append(CKEDITOR.dom.element.createFromHtml(h.render(a),b)),h.element.setStyles({display:"none",position:"absolute"}));return h}var g={};CKEDITOR.ui.floatPanel=CKEDITOR.tools.createClass({$:function(a,b,c,i){function f(){d.hide()}c.forceIFrame=1;c.toolbarRelated&&a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE&&
(b=CKEDITOR.document.getById("cke_"+a.name));var h=b.getDocument(),i=r(a,h,b,c,i||0),j=i.element,l=j.getFirst(),d=this;j.disableContextMenu();this.element=j;this._={editor:a,panel:i,parentElement:b,definition:c,document:h,iframe:l,children:[],dir:a.lang.dir};a.on("mode",f);a.on("resize",f);if(!CKEDITOR.env.iOS)h.getWindow().on("resize",f)},proto:{addBlock:function(a,b){return this._.panel.addBlock(a,b)},addListBlock:function(a,b){return this._.panel.addListBlock(a,b)},getBlock:function(a){return this._.panel.getBlock(a)},
showBlock:function(a,b,c,i,f,h){var j=this._.panel,l=j.showBlock(a);this.allowBlur(!1);a=this._.editor.editable();this._.returnFocus=a.hasFocus?a:new CKEDITOR.dom.element(CKEDITOR.document.$.activeElement);this._.hideTimeout=0;var d=this.element,a=this._.iframe,a=CKEDITOR.env.ie?a:new CKEDITOR.dom.window(a.$.contentWindow),g=d.getDocument(),o=this._.parentElement.getPositionedAncestor(),p=b.getDocumentPosition(g),g=o?o.getDocumentPosition(g):{x:0,y:0},m="rtl"==this._.dir,e=p.x+(i||0)-g.x,k=p.y+(f||
0)-g.y;if(m&&(1==c||4==c))e+=b.$.offsetWidth;else if(!m&&(2==c||3==c))e+=b.$.offsetWidth-1;if(3==c||4==c)k+=b.$.offsetHeight-1;this._.panel._.offsetParentId=b.getId();d.setStyles({top:k+"px",left:0,display:""});d.setOpacity(0);d.getFirst().removeStyle("width");this._.editor.focusManager.add(a);this._.blurSet||(CKEDITOR.event.useCapture=!0,a.on("blur",function(a){function q(){delete this._.returnFocus;this.hide()}this.allowBlur()&&a.data.getPhase()==CKEDITOR.EVENT_PHASE_AT_TARGET&&(this.visible&&!this._.activeChild)&&
(CKEDITOR.env.iOS?this._.hideTimeout||(this._.hideTimeout=CKEDITOR.tools.setTimeout(q,0,this)):q.call(this))},this),a.on("focus",function(){this._.focused=!0;this.hideChild();this.allowBlur(!0)},this),CKEDITOR.env.iOS&&(a.on("touchstart",function(){clearTimeout(this._.hideTimeout)},this),a.on("touchend",function(){this._.hideTimeout=0;this.focus()},this)),CKEDITOR.event.useCapture=!1,this._.blurSet=1);j.onEscape=CKEDITOR.tools.bind(function(a){if(this.onEscape&&this.onEscape(a)===false)return false},
this);CKEDITOR.tools.setTimeout(function(){var a=CKEDITOR.tools.bind(function(){d.removeStyle("width");if(l.autoSize){var a=l.element.getDocument(),a=(CKEDITOR.env.webkit?l.element:a.getBody()).$.scrollWidth;CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&a>0)&&(a=a+((d.$.offsetWidth||0)-(d.$.clientWidth||0)+3));d.setStyle("width",a+10+"px");a=l.element.$.scrollHeight;CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&a>0)&&(a=a+((d.$.offsetHeight||0)-(d.$.clientHeight||0)+3));d.setStyle("height",a+"px");j._.currentBlock.element.setStyle("display",
"none").removeStyle("display")}else d.removeStyle("height");m&&(e=e-d.$.offsetWidth);d.setStyle("left",e+"px");var b=j.element.getWindow(),a=d.$.getBoundingClientRect(),b=b.getViewPaneSize(),c=a.width||a.right-a.left,f=a.height||a.bottom-a.top,i=m?a.right:b.width-a.left,g=m?b.width-a.right:a.left;m?i<c&&(e=g>c?e+c:b.width>c?e-a.left:e-a.right+b.width):i<c&&(e=g>c?e-c:b.width>c?e-a.right+b.width:e-a.left);c=a.top;b.height-a.top<f&&(k=c>f?k-f:b.height>f?k-a.bottom+b.height:k-a.top);if(CKEDITOR.env.ie){b=
a=new CKEDITOR.dom.element(d.$.offsetParent);b.getName()=="html"&&(b=b.getDocument().getBody());b.getComputedStyle("direction")=="rtl"&&(e=CKEDITOR.env.ie8Compat?e-d.getDocument().getDocumentElement().$.scrollLeft*2:e-(a.$.scrollWidth-a.$.clientWidth))}var a=d.getFirst(),n;(n=a.getCustomData("activePanel"))&&n.onHide&&n.onHide.call(this,1);a.setCustomData("activePanel",this);d.setStyles({top:k+"px",left:e+"px"});d.setOpacity(1);h&&h()},this);j.isLoaded?a():j.onLoad=a;CKEDITOR.tools.setTimeout(function(){var a=
CKEDITOR.env.webkit&&CKEDITOR.document.getWindow().getScrollPosition().y;this.focus();l.element.focus();if(CKEDITOR.env.webkit)CKEDITOR.document.getBody().$.scrollTop=a;this.allowBlur(true);this._.editor.fire("panelShow",this)},0,this)},CKEDITOR.env.air?200:0,this);this.visible=1;this.onShow&&this.onShow.call(this)},focus:function(){if(CKEDITOR.env.webkit){var a=CKEDITOR.document.getActive();a&&!a.equals(this._.iframe)&&a.$.blur()}(this._.lastFocused||this._.iframe.getFrameDocument().getWindow()).focus()},
blur:function(){var a=this._.iframe.getFrameDocument().getActive();a&&a.is("a")&&(this._.lastFocused=a)},hide:function(a){if(this.visible&&(!this.onHide||!0!==this.onHide.call(this))){this.hideChild();CKEDITOR.env.gecko&&this._.iframe.getFrameDocument().$.activeElement.blur();this.element.setStyle("display","none");this.visible=0;this.element.getFirst().removeCustomData("activePanel");if(a=a&&this._.returnFocus)CKEDITOR.env.webkit&&a.type&&a.getWindow().$.focus(),a.focus();delete this._.lastFocused;
this._.editor.fire("panelHide",this)}},allowBlur:function(a){var b=this._.panel;void 0!==a&&(b.allowBlur=a);return b.allowBlur},showAsChild:function(a,b,c,g,f,h){this._.activeChild==a&&a._.panel._.offsetParentId==c.getId()||(this.hideChild(),a.onHide=CKEDITOR.tools.bind(function(){CKEDITOR.tools.setTimeout(function(){this._.focused||this.hide()},0,this)},this),this._.activeChild=a,this._.focused=!1,a.showBlock(b,c,g,f,h),this.blur(),(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)&&setTimeout(function(){a.element.getChild(0).$.style.cssText+=
""},100))},hideChild:function(a){var b=this._.activeChild;b&&(delete b.onHide,delete this._.activeChild,b.hide(),a&&this.focus())}}});CKEDITOR.on("instanceDestroyed",function(){var a=CKEDITOR.tools.isEmpty(CKEDITOR.instances),b;for(b in g){var c=g[b];a?c.destroy():c.element.hide()}a&&(g={})})})();CKEDITOR.plugins.add("colorbutton",{requires:"panelbutton,floatpanel",init:function(c){function o(m,g,e,h){var i=new CKEDITOR.style(j["colorButton_"+g+"Style"]),k=CKEDITOR.tools.getNextId()+"_colorBox";c.ui.add(m,CKEDITOR.UI_PANELBUTTON,{label:e,title:e,modes:{wysiwyg:1},editorFocus:0,toolbar:"colors,"+h,allowedContent:i,requiredContent:i,panel:{css:CKEDITOR.skin.getPath("editor"),attributes:{role:"listbox","aria-label":f.panelTitle}},onBlock:function(a,b){b.autoSize=!0;b.element.addClass("cke_colorblock");
b.element.setHtml(q(a,g,k));b.element.getDocument().getBody().setStyle("overflow","hidden");CKEDITOR.ui.fire("ready",this);var d=b.keys,e="rtl"==c.lang.dir;d[e?37:39]="next";d[40]="next";d[9]="next";d[e?39:37]="prev";d[38]="prev";d[CKEDITOR.SHIFT+9]="prev";d[32]="click"},refresh:function(){c.activeFilter.check(i)||this.setState(CKEDITOR.TRISTATE_DISABLED)},onOpen:function(){var a=c.getSelection(),a=a&&a.getStartElement(),a=c.elementPath(a),b;if(a){a=a.block||a.blockLimit||c.document.getBody();do b=
a&&a.getComputedStyle("back"==g?"background-color":"color")||"transparent";while("back"==g&&"transparent"==b&&a&&(a=a.getParent()));if(!b||"transparent"==b)b="#ffffff";this._.panel._.iframe.getFrameDocument().getById(k).setStyle("background-color",b);return b}}})}function q(m,g,e){var h=[],i=j.colorButton_colors.split(","),k=c.plugins.colordialog&&!1!==j.colorButton_enableMore,a=i.length+(k?2:1),b=CKEDITOR.tools.addFunction(function(a,b){function d(a){this.removeListener("ok",d);this.removeListener("cancel",
d);"ok"==a.name&&e(this.getContentElement("picker","selectedColor").getValue(),b)}var e=arguments.callee;if("?"==a)c.openDialog("colordialog",function(){this.on("ok",d);this.on("cancel",d)});else{c.focus();m.hide();c.fire("saveSnapshot");c.removeStyle(new CKEDITOR.style(j["colorButton_"+b+"Style"],{color:"inherit"}));if(a){var f=j["colorButton_"+b+"Style"];f.childRule="back"==b?function(a){return p(a)}:function(a){return!(a.is("a")||a.getElementsByTag("a").count())||p(a)};c.applyStyle(new CKEDITOR.style(f,
{color:a}))}c.fire("saveSnapshot")}});h.push('<a class="cke_colorauto" _cke_focus=1 hidefocus=true title="',f.auto,'" onclick="CKEDITOR.tools.callFunction(',b,",null,'",g,"');return false;\" href=\"javascript:void('",f.auto,'\')" role="option" aria-posinset="1" aria-setsize="',a,'"><table role="presentation" cellspacing=0 cellpadding=0 width="100%"><tr><td><span class="cke_colorbox" id="',e,'"></span></td><td colspan=7 align=center>',f.auto,'</td></tr></table></a><table role="presentation" cellspacing=0 cellpadding=0 width="100%">');
for(e=0;e<i.length;e++){0===e%8&&h.push("</tr><tr>");var d=i[e].split("/"),l=d[0],n=d[1]||l;d[1]||(l="#"+l.replace(/^(.)(.)(.)$/,"$1$1$2$2$3$3"));d=c.lang.colorbutton.colors[n]||n;h.push('<td><a class="cke_colorbox" _cke_focus=1 hidefocus=true title="',d,'" onclick="CKEDITOR.tools.callFunction(',b,",'",l,"','",g,"'); return false;\" href=\"javascript:void('",d,'\')" role="option" aria-posinset="',e+2,'" aria-setsize="',a,'"><span class="cke_colorbox" style="background-color:#',n,'"></span></a></td>')}k&&
h.push('</tr><tr><td colspan=8 align=center><a class="cke_colormore" _cke_focus=1 hidefocus=true title="',f.more,'" onclick="CKEDITOR.tools.callFunction(',b,",'?','",g,"');return false;\" href=\"javascript:void('",f.more,"')\"",' role="option" aria-posinset="',a,'" aria-setsize="',a,'">',f.more,"</a></td>");h.push("</tr></table>");return h.join("")}function p(c){return"false"==c.getAttribute("contentEditable")||c.getAttribute("data-nostyle")}var j=c.config,f=c.lang.colorbutton;CKEDITOR.env.hc||(o("TextColor",
"fore",f.textColorTitle,10),o("BGColor","back",f.bgColorTitle,20))}});CKEDITOR.config.colorButton_colors="000,800000,8B4513,2F4F4F,008080,000080,4B0082,696969,B22222,A52A2A,DAA520,006400,40E0D0,0000CD,800080,808080,F00,FF8C00,FFD700,008000,0FF,00F,EE82EE,A9A9A9,FFA07A,FFA500,FFFF00,00FF00,AFEEEE,ADD8E6,DDA0DD,D3D3D3,FFF0F5,FAEBD7,FFFFE0,F0FFF0,F0FFFF,F0F8FF,E6E6FA,FFF";CKEDITOR.config.colorButton_foreStyle={element:"span",styles:{color:"#(color)"},overrides:[{element:"font",attributes:{color:null}}]};
CKEDITOR.config.colorButton_backStyle={element:"span",styles:{"background-color":"#(color)"}};CKEDITOR.plugins.colordialog={requires:"dialog",init:function(b){var c=new CKEDITOR.dialogCommand("colordialog");c.editorFocus=!1;b.addCommand("colordialog",c);CKEDITOR.dialog.add("colordialog",this.path+"dialogs/colordialog.js");b.getColorFromDialog=function(c,f){var d=function(a){this.removeListener("ok",d);this.removeListener("cancel",d);a="ok"==a.name?this.getValueOf("picker","selectedColor"):null;c.call(f,a)},e=function(a){a.on("ok",d);a.on("cancel",d)};b.execCommand("colordialog");if(b._.storedDialogs&&
b._.storedDialogs.colordialog)e(b._.storedDialogs.colordialog);else CKEDITOR.on("dialogDefinition",function(a){if("colordialog"==a.data.name){var b=a.data.definition;a.removeListener();b.onLoad=CKEDITOR.tools.override(b.onLoad,function(a){return function(){e(this);b.onLoad=a;"function"==typeof a&&a.call(this)}})}})}}};CKEDITOR.plugins.add("colordialog",CKEDITOR.plugins.colordialog);CKEDITOR.plugins.add("menu",{requires:"floatpanel",beforeInit:function(g){for(var h=g.config.menu_groups.split(","),m=g._.menuGroups={},l=g._.menuItems={},a=0;a<h.length;a++)m[h[a]]=a+1;g.addMenuGroup=function(b,a){m[b]=a||100};g.addMenuItem=function(a,c){m[c.group]&&(l[a]=new CKEDITOR.menuItem(this,a,c))};g.addMenuItems=function(a){for(var c in a)this.addMenuItem(c,a[c])};g.getMenuItem=function(a){return l[a]};g.removeMenuItem=function(a){delete l[a]}}});
(function(){function g(a){a.sort(function(a,c){return a.group<c.group?-1:a.group>c.group?1:a.order<c.order?-1:a.order>c.order?1:0})}var h='<span class="cke_menuitem"><a id="{id}" class="cke_menubutton cke_menubutton__{name} cke_menubutton_{state} {cls}" href="{href}" title="{title}" tabindex="-1"_cke_focus=1 hidefocus="true" role="{role}" aria-haspopup="{hasPopup}" aria-disabled="{disabled}" {ariaChecked}';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(h+=' onkeypress="return false;"');CKEDITOR.env.gecko&&
(h+=' onblur="this.style.cssText = this.style.cssText;"');var h=h+(' onmouseover="CKEDITOR.tools.callFunction({hoverFn},{index});" onmouseout="CKEDITOR.tools.callFunction({moveOutFn},{index});" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},{index}); return false;">'),m=CKEDITOR.addTemplate("menuItem",h+'<span class="cke_menubutton_inner"><span class="cke_menubutton_icon"><span class="cke_button_icon cke_button__{iconName}_icon" style="{iconStyle}"></span></span><span class="cke_menubutton_label">{label}</span>{arrowHtml}</span></a></span>'),
l=CKEDITOR.addTemplate("menuArrow",'<span class="cke_menuarrow"><span>{label}</span></span>');CKEDITOR.menu=CKEDITOR.tools.createClass({$:function(a,b){b=this._.definition=b||{};this.id=CKEDITOR.tools.getNextId();this.editor=a;this.items=[];this._.listeners=[];this._.level=b.level||1;var c=CKEDITOR.tools.extend({},b.panel,{css:[CKEDITOR.skin.getPath("editor")],level:this._.level-1,block:{}}),k=c.block.attributes=c.attributes||{};!k.role&&(k.role="menu");this._.panelDefinition=c},_:{onShow:function(){var a=
this.editor.getSelection(),b=a&&a.getStartElement(),c=this.editor.elementPath(),k=this._.listeners;this.removeAll();for(var e=0;e<k.length;e++){var j=k[e](b,a,c);if(j)for(var i in j){var f=this.editor.getMenuItem(i);if(f&&(!f.command||this.editor.getCommand(f.command).state))f.state=j[i],this.add(f)}}},onClick:function(a){this.hide();if(a.onClick)a.onClick();else a.command&&this.editor.execCommand(a.command)},onEscape:function(a){var b=this.parent;b?b._.panel.hideChild(1):27==a&&this.hide(1);return!1},
onHide:function(){this.onHide&&this.onHide()},showSubMenu:function(a){var b=this._.subMenu,c=this.items[a];if(c=c.getItems&&c.getItems()){b?b.removeAll():(b=this._.subMenu=new CKEDITOR.menu(this.editor,CKEDITOR.tools.extend({},this._.definition,{level:this._.level+1},!0)),b.parent=this,b._.onClick=CKEDITOR.tools.bind(this._.onClick,this));for(var k in c){var e=this.editor.getMenuItem(k);e&&(e.state=c[k],b.add(e))}var j=this._.panel.getBlock(this.id).element.getDocument().getById(this.id+(""+a));setTimeout(function(){b.show(j,
2)},0)}else this._.panel.hideChild(1)}},proto:{add:function(a){a.order||(a.order=this.items.length);this.items.push(a)},removeAll:function(){this.items=[]},show:function(a,b,c,k){if(!this.parent&&(this._.onShow(),!this.items.length))return;var b=b||("rtl"==this.editor.lang.dir?2:1),e=this.items,j=this.editor,i=this._.panel,f=this._.element;if(!i){i=this._.panel=new CKEDITOR.ui.floatPanel(this.editor,CKEDITOR.document.getBody(),this._.panelDefinition,this._.level);i.onEscape=CKEDITOR.tools.bind(function(a){if(!1===
this._.onEscape(a))return!1},this);i.onShow=function(){i._.panel.getHolderElement().getParent().addClass("cke cke_reset_all")};i.onHide=CKEDITOR.tools.bind(function(){this._.onHide&&this._.onHide()},this);f=i.addBlock(this.id,this._.panelDefinition.block);f.autoSize=!0;var d=f.keys;d[40]="next";d[9]="next";d[38]="prev";d[CKEDITOR.SHIFT+9]="prev";d["rtl"==j.lang.dir?37:39]=CKEDITOR.env.ie?"mouseup":"click";d[32]=CKEDITOR.env.ie?"mouseup":"click";CKEDITOR.env.ie&&(d[13]="mouseup");f=this._.element=
f.element;d=f.getDocument();d.getBody().setStyle("overflow","hidden");d.getElementsByTag("html").getItem(0).setStyle("overflow","hidden");this._.itemOverFn=CKEDITOR.tools.addFunction(function(a){clearTimeout(this._.showSubTimeout);this._.showSubTimeout=CKEDITOR.tools.setTimeout(this._.showSubMenu,j.config.menu_subMenuDelay||400,this,[a])},this);this._.itemOutFn=CKEDITOR.tools.addFunction(function(){clearTimeout(this._.showSubTimeout)},this);this._.itemClickFn=CKEDITOR.tools.addFunction(function(a){var b=
this.items[a];if(b.state==CKEDITOR.TRISTATE_DISABLED)this.hide(1);else if(b.getItems)this._.showSubMenu(a);else this._.onClick(b)},this)}g(e);for(var d=j.elementPath(),d=['<div class="cke_menu'+(d&&d.direction()!=j.lang.dir?" cke_mixed_dir_content":"")+'" role="presentation">'],h=e.length,m=h&&e[0].group,l=0;l<h;l++){var n=e[l];m!=n.group&&(d.push('<div class="cke_menuseparator" role="separator"></div>'),m=n.group);n.render(this,l,d)}d.push("</div>");f.setHtml(d.join(""));CKEDITOR.ui.fire("ready",
this);this.parent?this.parent._.panel.showAsChild(i,this.id,a,b,c,k):i.showBlock(this.id,a,b,c,k);j.fire("menuShow",[i])},addListener:function(a){this._.listeners.push(a)},hide:function(a){this._.onHide&&this._.onHide();this._.panel&&this._.panel.hide(a)}}});CKEDITOR.menuItem=CKEDITOR.tools.createClass({$:function(a,b,c){CKEDITOR.tools.extend(this,c,{order:0,className:"cke_menubutton__"+b});this.group=a._.menuGroups[this.group];this.editor=a;this.name=b},proto:{render:function(a,b,c){var h=a.id+(""+
b),e="undefined"==typeof this.state?CKEDITOR.TRISTATE_OFF:this.state,j="",i=e==CKEDITOR.TRISTATE_ON?"on":e==CKEDITOR.TRISTATE_DISABLED?"disabled":"off";this.role in{menuitemcheckbox:1,menuitemradio:1}&&(j=' aria-checked="'+(e==CKEDITOR.TRISTATE_ON?"true":"false")+'"');var f=this.getItems,d="&#"+("rtl"==this.editor.lang.dir?"9668":"9658")+";",g=this.name;this.icon&&!/\./.test(this.icon)&&(g=this.icon);a={id:h,name:this.name,iconName:g,label:this.label,cls:this.className||"",state:i,hasPopup:f?"true":
"false",disabled:e==CKEDITOR.TRISTATE_DISABLED,title:this.label,href:"javascript:void('"+(this.label||"").replace("'")+"')",hoverFn:a._.itemOverFn,moveOutFn:a._.itemOutFn,clickFn:a._.itemClickFn,index:b,iconStyle:CKEDITOR.skin.getIconStyle(g,"rtl"==this.editor.lang.dir,g==this.icon?null:this.icon,this.iconOffset),arrowHtml:f?l.output({label:d}):"",role:this.role?this.role:"menuitem",ariaChecked:j};m.output(a,c)}}})})();CKEDITOR.config.menu_groups="clipboard,form,tablecell,tablecellproperties,tablerow,tablecolumn,table,anchor,link,image,flash,checkbox,radio,textfield,hiddenfield,imagebutton,button,select,textarea,div";CKEDITOR.plugins.add("contextmenu",{requires:"menu",onLoad:function(){CKEDITOR.plugins.contextMenu=CKEDITOR.tools.createClass({base:CKEDITOR.menu,$:function(a){this.base.call(this,a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.contextmenu.options}}})},proto:{addTarget:function(a,e){a.on("contextmenu",function(a){var a=a.data,c=CKEDITOR.env.webkit?f:CKEDITOR.env.mac?a.$.metaKey:a.$.ctrlKey;if(!e||!c){a.preventDefault();if(CKEDITOR.env.mac&&CKEDITOR.env.webkit){var c=this.editor,
b=(new CKEDITOR.dom.elementPath(a.getTarget(),c.editable())).contains(function(a){return a.hasAttribute("contenteditable")},!0);b&&"false"==b.getAttribute("contenteditable")&&c.getSelection().fake(b)}var b=a.getTarget().getDocument(),d=a.getTarget().getDocument().getDocumentElement(),c=!b.equals(CKEDITOR.document),b=b.getWindow().getScrollPosition(),g=c?a.$.clientX:a.$.pageX||b.x+a.$.clientX,h=c?a.$.clientY:a.$.pageY||b.y+a.$.clientY;CKEDITOR.tools.setTimeout(function(){this.open(d,null,g,h)},CKEDITOR.env.ie?
200:0,this)}},this);if(CKEDITOR.env.webkit){var f,d=function(){f=0};a.on("keydown",function(a){f=CKEDITOR.env.mac?a.data.$.metaKey:a.data.$.ctrlKey});a.on("keyup",d);a.on("contextmenu",d)}},open:function(a,e,f,d){this.editor.focus();a=a||CKEDITOR.document.getDocumentElement();this.editor.selectionChange(1);this.show(a,e,f,d)}}})},beforeInit:function(a){var e=a.contextMenu=new CKEDITOR.plugins.contextMenu(a);a.on("contentDom",function(){e.addTarget(a.editable(),!1!==a.config.browserContextMenuOnCtrl)});
a.addCommand("contextMenu",{exec:function(){a.contextMenu.open(a.document.getBody())}});a.setKeystroke(CKEDITOR.SHIFT+121,"contextMenu");a.setKeystroke(CKEDITOR.CTRL+CKEDITOR.SHIFT+121,"contextMenu")}});(function(){var k;function n(a,c){function j(d){d=i.list[d];if(d.equals(a.editable())||"true"==d.getAttribute("contenteditable")){var e=a.createRange();e.selectNodeContents(d);e.select()}else a.getSelection().selectElement(d);a.focus()}function s(){l&&l.setHtml(o);delete i.list}var m=a.ui.spaceId("path"),l,i=a._.elementsPath,n=i.idBase;c.html+='<span id="'+m+'_label" class="cke_voice_label">'+a.lang.elementspath.eleLabel+'</span><span id="'+m+'" class="cke_path" role="group" aria-labelledby="'+m+
'_label">'+o+"</span>";a.on("uiReady",function(){var d=a.ui.space("path");d&&a.focusManager.add(d,1)});i.onClick=j;var t=CKEDITOR.tools.addFunction(j),u=CKEDITOR.tools.addFunction(function(d,e){var g=i.idBase,b,e=new CKEDITOR.dom.event(e);b="rtl"==a.lang.dir;switch(e.getKeystroke()){case b?39:37:case 9:return(b=CKEDITOR.document.getById(g+(d+1)))||(b=CKEDITOR.document.getById(g+"0")),b.focus(),!1;case b?37:39:case CKEDITOR.SHIFT+9:return(b=CKEDITOR.document.getById(g+(d-1)))||(b=CKEDITOR.document.getById(g+
(i.list.length-1))),b.focus(),!1;case 27:return a.focus(),!1;case 13:case 32:return j(d),!1}return!0});a.on("selectionChange",function(){for(var d=[],e=i.list=[],g=[],b=i.filters,c=!0,j=a.elementPath().elements,f,k=j.length;k--;){var h=j[k],p=0;f=h.data("cke-display-name")?h.data("cke-display-name"):h.data("cke-real-element-type")?h.data("cke-real-element-type"):h.getName();c=h.hasAttribute("contenteditable")?"true"==h.getAttribute("contenteditable"):c;!c&&!h.hasAttribute("contenteditable")&&(p=1);
for(var q=0;q<b.length;q++){var r=b[q](h,f);if(!1===r){p=1;break}f=r||f}p||(e.unshift(h),g.unshift(f))}e=e.length;for(b=0;b<e;b++)f=g[b],c=a.lang.elementspath.eleTitle.replace(/%1/,f),f=v.output({id:n+b,label:c,text:f,jsTitle:"javascript:void('"+f+"')",index:b,keyDownFn:u,clickFn:t}),d.unshift(f);l||(l=CKEDITOR.document.getById(m));g=l;g.setHtml(d.join("")+o);a.fire("elementsPathUpdate",{space:g})});a.on("readOnly",s);a.on("contentDomUnload",s);a.addCommand("elementsPathFocus",k);a.setKeystroke(CKEDITOR.ALT+
122,"elementsPathFocus")}k={editorFocus:!1,readOnly:1,exec:function(a){(a=CKEDITOR.document.getById(a._.elementsPath.idBase+"0"))&&a.focus(CKEDITOR.env.ie||CKEDITOR.env.air)}};var o='<span class="cke_path_empty">&nbsp;</span>',c="";CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(c+=' onkeypress="return false;"');CKEDITOR.env.gecko&&(c+=' onblur="this.style.cssText = this.style.cssText;"');var v=CKEDITOR.addTemplate("pathItem",'<a id="{id}" href="{jsTitle}" tabindex="-1" class="cke_path_item" title="{label}"'+
c+' hidefocus="true"  onkeydown="return CKEDITOR.tools.callFunction({keyDownFn},{index}, event );" onclick="CKEDITOR.tools.callFunction({clickFn},{index}); return false;" role="button" aria-label="{label}">{text}</a>');CKEDITOR.plugins.add("elementspath",{init:function(a){a._.elementsPath={idBase:"cke_elementspath_"+CKEDITOR.tools.getNextNumber()+"_",filters:[]};a.on("uiSpace",function(c){"bottom"==c.data.space&&n(a,c.data)})}})})();(function(){function m(b,d,a){a=b.config.forceEnterMode||a;"wysiwyg"==b.mode&&(d||(d=b.activeEnterMode),b.elementPath().isContextFor("p")||(d=CKEDITOR.ENTER_BR,a=1),b.fire("saveSnapshot"),d==CKEDITOR.ENTER_BR?p(b,d,null,a):q(b,d,null,a),b.fire("saveSnapshot"))}function r(b){for(var b=b.getSelection().getRanges(!0),d=b.length-1;0<d;d--)b[d].deleteContents();return b[0]}function u(b){var d=b.startContainer.getAscendant(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&"true"==a.getAttribute("contenteditable")},
!0);if(b.root.equals(d))return b;d=new CKEDITOR.dom.range(d);d.moveToRange(b);return d}CKEDITOR.plugins.add("enterkey",{init:function(b){b.addCommand("enter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){m(b)}});b.addCommand("shiftEnter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){m(b,b.activeShiftEnterMode,1)}});b.setKeystroke([[13,"enter"],[CKEDITOR.SHIFT+13,"shiftEnter"]])}});var v=CKEDITOR.dom.walker.whitespaces(),w=CKEDITOR.dom.walker.bookmark();CKEDITOR.plugins.enterkey={enterBlock:function(b,
d,a,h){if(a=a||r(b)){var a=u(a),f=a.document,i=a.checkStartOfBlock(),k=a.checkEndOfBlock(),j=b.elementPath(a.startContainer),c=j.block,l=d==CKEDITOR.ENTER_DIV?"div":"p",e;if(i&&k){if(c&&(c.is("li")||c.getParent().is("li"))){c.is("li")||(c=c.getParent());a=c.getParent();e=a.getParent();var h=!c.hasPrevious(),n=!c.hasNext(),l=b.getSelection(),g=l.createBookmarks(),i=c.getDirection(1),k=c.getAttribute("class"),o=c.getAttribute("style"),m=e.getDirection(1)!=i,b=b.enterMode!=CKEDITOR.ENTER_BR||m||o||k;
if(e.is("li"))if(h||n)c[h?"insertBefore":"insertAfter"](e);else c.breakParent(e);else{if(b)if(j.block.is("li")?(e=f.createElement(d==CKEDITOR.ENTER_P?"p":"div"),m&&e.setAttribute("dir",i),o&&e.setAttribute("style",o),k&&e.setAttribute("class",k),c.moveChildren(e)):e=j.block,h||n)e[h?"insertBefore":"insertAfter"](a);else c.breakParent(a),e.insertAfter(a);else if(c.appendBogus(!0),h||n)for(;f=c[h?"getFirst":"getLast"]();)f[h?"insertBefore":"insertAfter"](a);else for(c.breakParent(a);f=c.getLast();)f.insertAfter(a);
c.remove()}l.selectBookmarks(g);return}if(c&&c.getParent().is("blockquote")){c.breakParent(c.getParent());c.getPrevious().getFirst(CKEDITOR.dom.walker.invisible(1))||c.getPrevious().remove();c.getNext().getFirst(CKEDITOR.dom.walker.invisible(1))||c.getNext().remove();a.moveToElementEditStart(c);a.select();return}}else if(c&&c.is("pre")&&!k){p(b,d,a,h);return}if(i=a.splitBlock(l)){d=i.previousBlock;c=i.nextBlock;j=i.wasStartOfBlock;b=i.wasEndOfBlock;if(c)g=c.getParent(),g.is("li")&&(c.breakParent(g),
c.move(c.getNext(),1));else if(d&&(g=d.getParent())&&g.is("li"))d.breakParent(g),g=d.getNext(),a.moveToElementEditStart(g),d.move(d.getPrevious());if(!j&&!b)c.is("li")&&(e=a.clone(),e.selectNodeContents(c),e=new CKEDITOR.dom.walker(e),e.evaluator=function(a){return!(w(a)||v(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in CKEDITOR.dtd.$inline&&!(a.getName()in CKEDITOR.dtd.$empty))},(g=e.next())&&(g.type==CKEDITOR.NODE_ELEMENT&&g.is("ul","ol"))&&(CKEDITOR.env.needsBrFiller?f.createElement("br"):f.createText(" ")).insertBefore(g)),
c&&a.moveToElementEditStart(c);else{if(d){if(d.is("li")||!s.test(d.getName())&&!d.is("pre"))e=d.clone()}else c&&(e=c.clone());e?h&&!e.is("li")&&e.renameNode(l):g&&g.is("li")?e=g:(e=f.createElement(l),d&&(n=d.getDirection())&&e.setAttribute("dir",n));if(f=i.elementPath){h=0;for(l=f.elements.length;h<l;h++){g=f.elements[h];if(g.equals(f.block)||g.equals(f.blockLimit))break;CKEDITOR.dtd.$removeEmpty[g.getName()]&&(g=g.clone(),e.moveChildren(g),e.append(g))}}e.appendBogus();e.getParent()||a.insertNode(e);
e.is("li")&&e.removeAttribute("value");if(CKEDITOR.env.ie&&j&&(!b||!d.getChildCount()))a.moveToElementEditStart(b?d:e),a.select();a.moveToElementEditStart(j&&!b?c:e)}a.select();a.scrollIntoView()}}},enterBr:function(b,d,a,h){if(a=a||r(b)){var f=a.document,i=a.checkEndOfBlock(),k=new CKEDITOR.dom.elementPath(b.getSelection().getStartElement()),j=k.block,c=j&&k.block.getName();!h&&"li"==c?q(b,d,a,h):(!h&&i&&s.test(c)?(i=j.getDirection())?(f=f.createElement("div"),f.setAttribute("dir",i),f.insertAfter(j),
a.setStart(f,0)):(f.createElement("br").insertAfter(j),CKEDITOR.env.gecko&&f.createText("").insertAfter(j),a.setStartAt(j.getNext(),CKEDITOR.env.ie?CKEDITOR.POSITION_BEFORE_START:CKEDITOR.POSITION_AFTER_START)):(b="pre"==c&&CKEDITOR.env.ie&&8>CKEDITOR.env.version?f.createText("\r"):f.createElement("br"),a.deleteContents(),a.insertNode(b),CKEDITOR.env.needsBrFiller?(f.createText("").insertAfter(b),i&&(j||k.blockLimit).appendBogus(),b.getNext().$.nodeValue="",a.setStartAt(b.getNext(),CKEDITOR.POSITION_AFTER_START)):
a.setStartAt(b,CKEDITOR.POSITION_AFTER_END)),a.collapse(!0),a.select(),a.scrollIntoView())}}};var t=CKEDITOR.plugins.enterkey,p=t.enterBr,q=t.enterBlock,s=/^h[1-6]$/})();(function(){function i(b,f){var g={},c=[],e={nbsp:" ",shy:"­",gt:">",lt:"<",amp:"&",apos:"'",quot:'"'},b=b.replace(/\b(nbsp|shy|gt|lt|amp|apos|quot)(?:,|$)/g,function(b,a){var d=f?"&"+a+";":e[a];g[d]=f?e[a]:"&"+a+";";c.push(d);return""});if(!f&&b){var b=b.split(","),a=document.createElement("div"),d;a.innerHTML="&"+b.join(";&")+";";d=a.innerHTML;a=null;for(a=0;a<d.length;a++){var h=d.charAt(a);g[h]="&"+b[a]+";";c.push(h)}}g.regex=c.join(f?"|":"");return g}CKEDITOR.plugins.add("entities",{afterInit:function(b){function f(a){return h[a]}
function g(b){return"force"==c.entities_processNumerical||!a[b]?"&#"+b.charCodeAt(0)+";":a[b]}var c=b.config;if(b=(b=b.dataProcessor)&&b.htmlFilter){var e=[];!1!==c.basicEntities&&e.push("nbsp,gt,lt,amp");c.entities&&(e.length&&e.push("quot,iexcl,cent,pound,curren,yen,brvbar,sect,uml,copy,ordf,laquo,not,shy,reg,macr,deg,plusmn,sup2,sup3,acute,micro,para,middot,cedil,sup1,ordm,raquo,frac14,frac12,frac34,iquest,times,divide,fnof,bull,hellip,prime,Prime,oline,frasl,weierp,image,real,trade,alefsym,larr,uarr,rarr,darr,harr,crarr,lArr,uArr,rArr,dArr,hArr,forall,part,exist,empty,nabla,isin,notin,ni,prod,sum,minus,lowast,radic,prop,infin,ang,and,or,cap,cup,int,there4,sim,cong,asymp,ne,equiv,le,ge,sub,sup,nsub,sube,supe,oplus,otimes,perp,sdot,lceil,rceil,lfloor,rfloor,lang,rang,loz,spades,clubs,hearts,diams,circ,tilde,ensp,emsp,thinsp,zwnj,zwj,lrm,rlm,ndash,mdash,lsquo,rsquo,sbquo,ldquo,rdquo,bdquo,dagger,Dagger,permil,lsaquo,rsaquo,euro"),
c.entities_latin&&e.push("Agrave,Aacute,Acirc,Atilde,Auml,Aring,AElig,Ccedil,Egrave,Eacute,Ecirc,Euml,Igrave,Iacute,Icirc,Iuml,ETH,Ntilde,Ograve,Oacute,Ocirc,Otilde,Ouml,Oslash,Ugrave,Uacute,Ucirc,Uuml,Yacute,THORN,szlig,agrave,aacute,acirc,atilde,auml,aring,aelig,ccedil,egrave,eacute,ecirc,euml,igrave,iacute,icirc,iuml,eth,ntilde,ograve,oacute,ocirc,otilde,ouml,oslash,ugrave,uacute,ucirc,uuml,yacute,thorn,yuml,OElig,oelig,Scaron,scaron,Yuml"),c.entities_greek&&e.push("Alpha,Beta,Gamma,Delta,Epsilon,Zeta,Eta,Theta,Iota,Kappa,Lambda,Mu,Nu,Xi,Omicron,Pi,Rho,Sigma,Tau,Upsilon,Phi,Chi,Psi,Omega,alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota,kappa,lambda,mu,nu,xi,omicron,pi,rho,sigmaf,sigma,tau,upsilon,phi,chi,psi,omega,thetasym,upsih,piv"),
c.entities_additional&&e.push(c.entities_additional));var a=i(e.join(",")),d=a.regex?"["+a.regex+"]":"a^";delete a.regex;c.entities&&c.entities_processNumerical&&(d="[^ -~]|"+d);var d=RegExp(d,"g"),h=i("nbsp,gt,lt,amp,shy",!0),j=RegExp(h.regex,"g");b.addRules({text:function(a){return a.replace(j,f).replace(d,g)}},{applyToAll:!0,excludeNestedEditable:!0})}}})})();CKEDITOR.config.basicEntities=!0;CKEDITOR.config.entities=!0;CKEDITOR.config.entities_latin=!0;CKEDITOR.config.entities_greek=!0;
CKEDITOR.config.entities_additional="#39";CKEDITOR.plugins.add("popup");
CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{popup:function(e,a,b,d){a=a||"80%";b=b||"70%";"string"==typeof a&&(1<a.length&&"%"==a.substr(a.length-1,1))&&(a=parseInt(window.screen.width*parseInt(a,10)/100,10));"string"==typeof b&&(1<b.length&&"%"==b.substr(b.length-1,1))&&(b=parseInt(window.screen.height*parseInt(b,10)/100,10));640>a&&(a=640);420>b&&(b=420);var f=parseInt((window.screen.height-b)/2,10),g=parseInt((window.screen.width-a)/2,10),d=(d||"location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes")+",width="+
a+",height="+b+",top="+f+",left="+g,c=window.open("",null,d,!0);if(!c)return!1;try{-1==navigator.userAgent.toLowerCase().indexOf(" chrome/")&&(c.moveTo(g,f),c.resizeTo(a,b)),c.focus(),c.location.href=e}catch(h){window.open(e,null,d,!0)}return!0}});(function(){function g(a,c){var d=[];if(c)for(var b in c)d.push(b+"="+encodeURIComponent(c[b]));else return a;return a+(-1!=a.indexOf("?")?"&":"?")+d.join("&")}function i(a){a+="";return a.charAt(0).toUpperCase()+a.substr(1)}function k(){var a=this.getDialog(),c=a.getParentEditor();c._.filebrowserSe=this;var d=c.config["filebrowser"+i(a.getName())+"WindowWidth"]||c.config.filebrowserWindowWidth||"80%",a=c.config["filebrowser"+i(a.getName())+"WindowHeight"]||c.config.filebrowserWindowHeight||"70%",
b=this.filebrowser.params||{};b.CKEditor=c.name;b.CKEditorFuncNum=c._.filebrowserFn;b.langCode||(b.langCode=c.langCode);b=g(this.filebrowser.url,b);c.popup(b,d,a,c.config.filebrowserWindowFeatures||c.config.fileBrowserWindowFeatures)}function l(){var a=this.getDialog();a.getParentEditor()._.filebrowserSe=this;return!a.getContentElement(this["for"][0],this["for"][1]).getInputElement().$.value||!a.getContentElement(this["for"][0],this["for"][1]).getAction()?!1:!0}function m(a,c,d){var b=d.params||{};
b.CKEditor=a.name;b.CKEditorFuncNum=a._.filebrowserFn;b.langCode||(b.langCode=a.langCode);c.action=g(d.url,b);c.filebrowser=d}function j(a,c,d,b){if(b&&b.length)for(var e,g=b.length;g--;)if(e=b[g],("hbox"==e.type||"vbox"==e.type||"fieldset"==e.type)&&j(a,c,d,e.children),e.filebrowser)if("string"==typeof e.filebrowser&&(e.filebrowser={action:"fileButton"==e.type?"QuickUpload":"Browse",target:e.filebrowser}),"Browse"==e.filebrowser.action){var f=e.filebrowser.url;void 0===f&&(f=a.config["filebrowser"+
i(c)+"BrowseUrl"],void 0===f&&(f=a.config.filebrowserBrowseUrl));f&&(e.onClick=k,e.filebrowser.url=f,e.hidden=!1)}else if("QuickUpload"==e.filebrowser.action&&e["for"]&&(f=e.filebrowser.url,void 0===f&&(f=a.config["filebrowser"+i(c)+"UploadUrl"],void 0===f&&(f=a.config.filebrowserUploadUrl)),f)){var h=e.onClick;e.onClick=function(a){var b=a.sender;return h&&h.call(b,a)===false?false:l.call(b,a)};e.filebrowser.url=f;e.hidden=!1;m(a,d.getContents(e["for"][0]).get(e["for"][1]),e.filebrowser)}}function h(a,
c,d){if(-1!==d.indexOf(";")){for(var d=d.split(";"),b=0;b<d.length;b++)if(h(a,c,d[b]))return!0;return!1}return(a=a.getContents(c).get(d).filebrowser)&&a.url}function n(a,c){var d=this._.filebrowserSe.getDialog(),b=this._.filebrowserSe["for"],e=this._.filebrowserSe.filebrowser.onSelect;b&&d.getContentElement(b[0],b[1]).reset();if(!("function"==typeof c&&!1===c.call(this._.filebrowserSe))&&!(e&&!1===e.call(this._.filebrowserSe,a,c))&&("string"==typeof c&&c&&alert(c),a&&(b=this._.filebrowserSe,d=b.getDialog(),
b=b.filebrowser.target||null)))if(b=b.split(":"),e=d.getContentElement(b[0],b[1]))e.setValue(a),d.selectPage(b[0])}CKEDITOR.plugins.add("filebrowser",{requires:"popup",init:function(a){a._.filebrowserFn=CKEDITOR.tools.addFunction(n,a);a.on("destroy",function(){CKEDITOR.tools.removeFunction(this._.filebrowserFn)})}});CKEDITOR.on("dialogDefinition",function(a){if(a.editor.plugins.filebrowser)for(var c=a.data.definition,d,b=0;b<c.contents.length;++b)if(d=c.contents[b])j(a.editor,a.data.name,c,d.elements),
d.hidden&&d.filebrowser&&(d.hidden=!h(c,d.id,d.filebrowser))})})();(function(){function i(a){var j=a.config,m=a.fire("uiSpace",{space:"top",html:""}).html,p=function(){function f(a,c,e){b.setStyle(c,s(e));b.setStyle("position",a)}function e(a){var b=i.getDocumentPosition();switch(a){case "top":f("absolute","top",b.y-n-o);break;case "pin":f("fixed","top",t);break;case "bottom":f("absolute","top",b.y+(c.height||c.bottom-c.top)+o)}k=a}var k,i,l,c,h,n,r,m=j.floatSpaceDockedOffsetX||0,o=j.floatSpaceDockedOffsetY||0,q=j.floatSpacePinnedOffsetX||0,t=j.floatSpacePinnedOffsetY||
0;return function(d){if(i=a.editable())if(d&&"focus"==d.name&&b.show(),b.removeStyle("left"),b.removeStyle("right"),l=b.getClientRect(),c=i.getClientRect(),h=g.getViewPaneSize(),n=l.height,r="pageXOffset"in g.$?g.$.pageXOffset:CKEDITOR.document.$.documentElement.scrollLeft,k){n+o<=c.top?e("top"):n+o>h.height-c.bottom?e("pin"):e("bottom");var d=h.width/2,d=0<c.left&&c.right<h.width&&c.width>l.width?"rtl"==a.config.contentsLangDirection?"right":"left":d-c.left>c.right-d?"left":"right",f;l.width>h.width?
(d="left",f=0):(f="left"==d?0<c.left?c.left:0:c.right<h.width?h.width-c.right:0,f+l.width>h.width&&(d="left"==d?"right":"left",f=0));b.setStyle(d,s(("pin"==k?q:m)+f+("pin"==k?0:"left"==d?r:-r)))}else k="pin",e("pin"),p(d)}}();if(m){var i=new CKEDITOR.template('<div id="cke_{name}" class="cke {id} cke_reset_all cke_chrome cke_editor_{name} cke_float cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" title="'+(CKEDITOR.env.gecko?" ":"")+'" lang="{langCode}" role="application" style="{style}"'+
(a.title?' aria-labelledby="cke_{name}_arialbl"':" ")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':" ")+'<div class="cke_inner"><div id="{topId}" class="cke_top" role="presentation">{content}</div></div></div>'),b=CKEDITOR.document.getBody().append(CKEDITOR.dom.element.createFromHtml(i.output({content:m,id:a.id,langDir:a.lang.dir,langCode:a.langCode,name:a.name,style:"display:none;z-index:"+(j.baseFloatZIndex-1),topId:a.ui.spaceId("top"),voiceLabel:a.title}))),
q=CKEDITOR.tools.eventsBuffer(500,p),e=CKEDITOR.tools.eventsBuffer(100,p);b.unselectable();b.on("mousedown",function(a){a=a.data;a.getTarget().hasAscendant("a",1)||a.preventDefault()});a.on("focus",function(b){p(b);a.on("change",q.input);g.on("scroll",e.input);g.on("resize",e.input)});a.on("blur",function(){b.hide();a.removeListener("change",q.input);g.removeListener("scroll",e.input);g.removeListener("resize",e.input)});a.on("destroy",function(){g.removeListener("scroll",e.input);g.removeListener("resize",
e.input);b.clearCustomData();b.remove()});a.focusManager.hasFocus&&b.show();a.focusManager.add(b,1)}}var g=CKEDITOR.document.getWindow(),s=CKEDITOR.tools.cssLength;CKEDITOR.plugins.add("floatingspace",{init:function(a){a.on("loaded",function(){i(this)},null,null,20)}})})();CKEDITOR.plugins.add("listblock",{requires:"panel",onLoad:function(){var f=CKEDITOR.addTemplate("panel-list",'<ul role="presentation" class="cke_panel_list">{items}</ul>'),g=CKEDITOR.addTemplate("panel-list-item",'<li id="{id}" class="cke_panel_listItem" role=presentation><a id="{id}_option" _cke_focus=1 hidefocus=true title="{title}" href="javascript:void(\'{val}\')"  {onclick}="CKEDITOR.tools.callFunction({clickFn},\'{val}\'); return false;" role="option">{text}</a></li>'),h=CKEDITOR.addTemplate("panel-list-group",
'<h1 id="{id}" class="cke_panel_grouptitle" role="presentation" >{label}</h1>'),i=/\'/g;CKEDITOR.ui.panel.prototype.addListBlock=function(a,b){return this.addBlock(a,new CKEDITOR.ui.listBlock(this.getHolderElement(),b))};CKEDITOR.ui.listBlock=CKEDITOR.tools.createClass({base:CKEDITOR.ui.panel.block,$:function(a,b){var b=b||{},c=b.attributes||(b.attributes={});(this.multiSelect=!!b.multiSelect)&&(c["aria-multiselectable"]=!0);!c.role&&(c.role="listbox");this.base.apply(this,arguments);this.element.setAttribute("role",
c.role);c=this.keys;c[40]="next";c[9]="next";c[38]="prev";c[CKEDITOR.SHIFT+9]="prev";c[32]=CKEDITOR.env.ie?"mouseup":"click";CKEDITOR.env.ie&&(c[13]="mouseup");this._.pendingHtml=[];this._.pendingList=[];this._.items={};this._.groups={}},_:{close:function(){if(this._.started){var a=f.output({items:this._.pendingList.join("")});this._.pendingList=[];this._.pendingHtml.push(a);delete this._.started}},getClick:function(){this._.click||(this._.click=CKEDITOR.tools.addFunction(function(a){var b=this.toggle(a);
if(this.onClick)this.onClick(a,b)},this));return this._.click}},proto:{add:function(a,b,c){var d=CKEDITOR.tools.getNextId();this._.started||(this._.started=1,this._.size=this._.size||0);this._.items[a]=d;var e;e=CKEDITOR.tools.htmlEncodeAttr(a).replace(i,"\\'");a={id:d,val:e,onclick:CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick",clickFn:this._.getClick(),title:CKEDITOR.tools.htmlEncodeAttr(c||a),text:b||a};this._.pendingList.push(g.output(a))},startGroup:function(a){this._.close();
var b=CKEDITOR.tools.getNextId();this._.groups[a]=b;this._.pendingHtml.push(h.output({id:b,label:a}))},commit:function(){this._.close();this.element.appendHtml(this._.pendingHtml.join(""));delete this._.size;this._.pendingHtml=[]},toggle:function(a){var b=this.isMarked(a);b?this.unmark(a):this.mark(a);return!b},hideGroup:function(a){var b=(a=this.element.getDocument().getById(this._.groups[a]))&&a.getNext();a&&(a.setStyle("display","none"),b&&"ul"==b.getName()&&b.setStyle("display","none"))},hideItem:function(a){this.element.getDocument().getById(this._.items[a]).setStyle("display",
"none")},showAll:function(){var a=this._.items,b=this._.groups,c=this.element.getDocument(),d;for(d in a)c.getById(a[d]).setStyle("display","");for(var e in b)a=c.getById(b[e]),d=a.getNext(),a.setStyle("display",""),d&&"ul"==d.getName()&&d.setStyle("display","")},mark:function(a){this.multiSelect||this.unmarkAll();var a=this._.items[a],b=this.element.getDocument().getById(a);b.addClass("cke_selected");this.element.getDocument().getById(a+"_option").setAttribute("aria-selected",!0);this.onMark&&this.onMark(b)},
unmark:function(a){var b=this.element.getDocument(),a=this._.items[a],c=b.getById(a);c.removeClass("cke_selected");b.getById(a+"_option").removeAttribute("aria-selected");this.onUnmark&&this.onUnmark(c)},unmarkAll:function(){var a=this._.items,b=this.element.getDocument(),c;for(c in a){var d=a[c];b.getById(d).removeClass("cke_selected");b.getById(d+"_option").removeAttribute("aria-selected")}this.onUnmark&&this.onUnmark()},isMarked:function(a){return this.element.getDocument().getById(this._.items[a]).hasClass("cke_selected")},
focus:function(a){this._.focusIndex=-1;var b=this.element.getElementsByTag("a"),c,d=-1;if(a)for(c=this.element.getDocument().getById(this._.items[a]).getFirst();a=b.getItem(++d);){if(a.equals(c)){this._.focusIndex=d;break}}else this.element.focus();c&&setTimeout(function(){c.focus()},0)}}})}});CKEDITOR.plugins.add("richcombo",{requires:"floatpanel,listblock,button",beforeInit:function(d){d.ui.addHandler(CKEDITOR.UI_RICHCOMBO,CKEDITOR.ui.richCombo.handler)}});
(function(){var d='<span id="{id}" class="cke_combo cke_combo__{name} {cls}" role="presentation"><span id="{id}_label" class="cke_combo_label">{label}</span><a class="cke_combo_button" title="{title}" tabindex="-1"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="true"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(d+=' onkeypress="return false;"');CKEDITOR.env.gecko&&(d+=' onblur="this.style.cssText = this.style.cssText;"');
var d=d+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event,this);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span id="{id}_text" class="cke_combo_text cke_combo_inlinelabel">{label}</span><span class="cke_combo_open"><span class="cke_combo_arrow">'+(CKEDITOR.env.hc?"&#9660;":CKEDITOR.env.air?"&nbsp;":"")+"</span></span></a></span>"),
i=CKEDITOR.addTemplate("combo",d);CKEDITOR.UI_RICHCOMBO="richcombo";CKEDITOR.ui.richCombo=CKEDITOR.tools.createClass({$:function(a){CKEDITOR.tools.extend(this,a,{canGroup:!1,title:a.label,modes:{wysiwyg:1},editorFocus:1});a=this.panel||{};delete this.panel;this.id=CKEDITOR.tools.getNextNumber();this.document=a.parent&&a.parent.getDocument()||CKEDITOR.document;a.className="cke_combopanel";a.block={multiSelect:a.multiSelect,attributes:a.attributes};a.toolbarRelated=!0;this._={panelDefinition:a,items:{}}},
proto:{renderHtml:function(a){var b=[];this.render(a,b);return b.join("")},render:function(a,b){function g(){if(this.getState()!=CKEDITOR.TRISTATE_ON){var c=this.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED;a.readOnly&&!this.readOnly&&(c=CKEDITOR.TRISTATE_DISABLED);this.setState(c);this.setValue("");c!=CKEDITOR.TRISTATE_DISABLED&&this.refresh&&this.refresh()}}var d=CKEDITOR.env,h="cke_"+this.id,e=CKEDITOR.tools.addFunction(function(b){j&&(a.unlockSelection(1),j=0);c.execute(b)},
this),f=this,c={id:h,combo:this,focus:function(){CKEDITOR.document.getById(h).getChild(1).focus()},execute:function(c){var b=f._;if(b.state!=CKEDITOR.TRISTATE_DISABLED)if(f.createPanel(a),b.on)b.panel.hide();else{f.commit();var d=f.getValue();d?b.list.mark(d):b.list.unmarkAll();b.panel.showBlock(f.id,new CKEDITOR.dom.element(c),4)}},clickFn:e};a.on("activeFilterChange",g,this);a.on("mode",g,this);a.on("selectionChange",g,this);!this.readOnly&&a.on("readOnly",g,this);var k=CKEDITOR.tools.addFunction(function(b,
d){var b=new CKEDITOR.dom.event(b),g=b.getKeystroke();if(40==g)a.once("panelShow",function(a){a.data._.panel._.currentBlock.onKeyDown(40)});switch(g){case 13:case 32:case 40:CKEDITOR.tools.callFunction(e,d);break;default:c.onkey(c,g)}b.preventDefault()}),l=CKEDITOR.tools.addFunction(function(){c.onfocus&&c.onfocus()}),j=0;c.keyDownFn=k;d={id:h,name:this.name||this.command,label:this.label,title:this.title,cls:this.className||"",titleJs:d.gecko&&!d.hc?"":(this.title||"").replace("'",""),keydownFn:k,
focusFn:l,clickFn:e};i.output(d,b);if(this.onRender)this.onRender();return c},createPanel:function(a){if(!this._.panel){var b=this._.panelDefinition,d=this._.panelDefinition.block,i=b.parent||CKEDITOR.document.getBody(),h="cke_combopanel__"+this.name,e=new CKEDITOR.ui.floatPanel(a,i,b),f=e.addListBlock(this.id,d),c=this;e.onShow=function(){this.element.addClass(h);c.setState(CKEDITOR.TRISTATE_ON);c._.on=1;c.editorFocus&&!a.focusManager.hasFocus&&a.focus();if(c.onOpen)c.onOpen();a.once("panelShow",
function(){f.focus(!f.multiSelect&&c.getValue())})};e.onHide=function(b){this.element.removeClass(h);c.setState(c.modes&&c.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);c._.on=0;if(!b&&c.onClose)c.onClose()};e.onEscape=function(){e.hide(1)};f.onClick=function(a,b){c.onClick&&c.onClick.call(c,a,b);e.hide()};this._.panel=e;this._.list=f;e.getBlock(this.id).onHide=function(){c._.on=0;c.setState(CKEDITOR.TRISTATE_OFF)};this.init&&this.init()}},setValue:function(a,b){this._.value=a;var d=
this.document.getById("cke_"+this.id+"_text");d&&(!a&&!b?(b=this.label,d.addClass("cke_combo_inlinelabel")):d.removeClass("cke_combo_inlinelabel"),d.setText("undefined"!=typeof b?b:a))},getValue:function(){return this._.value||""},unmarkAll:function(){this._.list.unmarkAll()},mark:function(a){this._.list.mark(a)},hideItem:function(a){this._.list.hideItem(a)},hideGroup:function(a){this._.list.hideGroup(a)},showAll:function(){this._.list.showAll()},add:function(a,b,d){this._.items[a]=d||a;this._.list.add(a,
b,d)},startGroup:function(a){this._.list.startGroup(a)},commit:function(){this._.committed||(this._.list.commit(),this._.committed=1,CKEDITOR.ui.fire("ready",this));this._.committed=1},setState:function(a){if(this._.state!=a){var b=this.document.getById("cke_"+this.id);b.setState(a,"cke_combo");a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled");this._.state=a}},getState:function(){return this._.state},enable:function(){this._.state==CKEDITOR.TRISTATE_DISABLED&&
this.setState(this._.lastState)},disable:function(){this._.state!=CKEDITOR.TRISTATE_DISABLED&&(this._.lastState=this._.state,this.setState(CKEDITOR.TRISTATE_DISABLED))}},statics:{handler:{create:function(a){return new CKEDITOR.ui.richCombo(a)}}}});CKEDITOR.ui.prototype.addRichCombo=function(a,b){this.add(a,CKEDITOR.UI_RICHCOMBO,b)}})();(function(){function j(a,b,c,f,m,j,p,r){for(var s=a.config,n=new CKEDITOR.style(p),i=m.split(";"),m=[],k={},d=0;d<i.length;d++){var h=i[d];if(h){var h=h.split("/"),q={},l=i[d]=h[0];q[c]=m[d]=h[1]||l;k[l]=new CKEDITOR.style(p,q);k[l]._.definition.name=l}else i.splice(d--,1)}a.ui.addRichCombo(b,{label:f.label,title:f.panelTitle,toolbar:"styles,"+r,allowedContent:n,requiredContent:n,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(s.contentsCss),multiSelect:!1,attributes:{"aria-label":f.panelTitle}},
init:function(){this.startGroup(f.panelTitle);for(var a=0;a<i.length;a++){var b=i[a];this.add(b,k[b].buildPreview(),b)}},onClick:function(b){a.focus();a.fire("saveSnapshot");var c=this.getValue(),f=k[b];if(c&&b!=c){var i=k[c],e=a.getSelection().getRanges()[0];if(e.collapsed){var d=a.elementPath(),g=d.contains(function(a){return i.checkElementRemovable(a)});if(g){var h=e.checkBoundaryOfElement(g,CKEDITOR.START),j=e.checkBoundaryOfElement(g,CKEDITOR.END);if(h&&j){for(h=e.createBookmark();d=g.getFirst();)d.insertBefore(g);
g.remove();e.moveToBookmark(h)}else h?e.moveToPosition(g,CKEDITOR.POSITION_BEFORE_START):j?e.moveToPosition(g,CKEDITOR.POSITION_AFTER_END):(e.splitElement(g),e.moveToPosition(g,CKEDITOR.POSITION_AFTER_END),o(e,d.elements.slice(),g));a.getSelection().selectRanges([e])}}else a.removeStyle(i)}a[c==b?"removeStyle":"applyStyle"](f);a.fire("saveSnapshot")},onRender:function(){a.on("selectionChange",function(b){for(var c=this.getValue(),b=b.data.path.elements,d=0,f;d<b.length;d++){f=b[d];for(var e in k)if(k[e].checkElementMatch(f,
!0,a)){e!=c&&this.setValue(e);return}}this.setValue("",j)},this)},refresh:function(){a.activeFilter.check(n)||this.setState(CKEDITOR.TRISTATE_DISABLED)}})}function o(a,b,c){var f=b.pop();if(f){if(c)return o(a,b,f.equals(c)?null:c);c=f.clone();a.insertNode(c);a.moveToPosition(c,CKEDITOR.POSITION_AFTER_START);o(a,b)}}CKEDITOR.plugins.add("font",{requires:"richcombo",init:function(a){var b=a.config;j(a,"Font","family",a.lang.font,b.font_names,b.font_defaultLabel,b.font_style,30);j(a,"FontSize","size",
a.lang.font.fontSize,b.fontSize_sizes,b.fontSize_defaultLabel,b.fontSize_style,40)}})})();CKEDITOR.config.font_names="Arial/Arial, Helvetica, sans-serif;Comic Sans MS/Comic Sans MS, cursive;Courier New/Courier New, Courier, monospace;Georgia/Georgia, serif;Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;Tahoma/Tahoma, Geneva, sans-serif;Times New Roman/Times New Roman, Times, serif;Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;Verdana/Verdana, Geneva, sans-serif";
CKEDITOR.config.font_defaultLabel="";CKEDITOR.config.font_style={element:"span",styles:{"font-family":"#(family)"},overrides:[{element:"font",attributes:{face:null}}]};CKEDITOR.config.fontSize_sizes="8/8px;9/9px;10/10px;11/11px;12/12px;14/14px;16/16px;18/18px;20/20px;22/22px;24/24px;26/26px;28/28px;36/36px;48/48px;72/72px";CKEDITOR.config.fontSize_defaultLabel="";CKEDITOR.config.fontSize_style={element:"span",styles:{"font-size":"#(size)"},overrides:[{element:"font",attributes:{size:null}}]};CKEDITOR.plugins.add("format",{requires:"richcombo",init:function(a){if(!a.blockless){for(var f=a.config,c=a.lang.format,j=f.format_tags.split(";"),d={},k=0,l=[],g=0;g<j.length;g++){var h=j[g],i=new CKEDITOR.style(f["format_"+h]);if(!a.filter.customConfig||a.filter.check(i))k++,d[h]=i,d[h]._.enterMode=a.config.enterMode,l.push(i)}0!==k&&a.ui.addRichCombo("Format",{label:c.label,title:c.panelTitle,toolbar:"styles,20",allowedContent:l,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(f.contentsCss),
multiSelect:!1,attributes:{"aria-label":c.panelTitle}},init:function(){this.startGroup(c.panelTitle);for(var a in d){var e=c["tag_"+a];this.add(a,d[a].buildPreview(e),e)}},onClick:function(b){a.focus();a.fire("saveSnapshot");var b=d[b],e=a.elementPath();a[b.checkActive(e,a)?"removeStyle":"applyStyle"](b);setTimeout(function(){a.fire("saveSnapshot")},0)},onRender:function(){a.on("selectionChange",function(b){var e=this.getValue(),b=b.data.path;this.refresh();for(var c in d)if(d[c].checkActive(b,a)){c!=
e&&this.setValue(c,a.lang.format["tag_"+c]);return}this.setValue("")},this)},onOpen:function(){this.showAll();for(var b in d)a.activeFilter.check(d[b])||this.hideItem(b)},refresh:function(){var b=a.elementPath();if(b){if(b.isContextFor("p"))for(var c in d)if(a.activeFilter.check(d[c]))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}}})}}});CKEDITOR.config.format_tags="p;h1;h2;h3;h4;h5;h6;pre;address;div";CKEDITOR.config.format_p={element:"p"};CKEDITOR.config.format_div={element:"div"};
CKEDITOR.config.format_pre={element:"pre"};CKEDITOR.config.format_address={element:"address"};CKEDITOR.config.format_h1={element:"h1"};CKEDITOR.config.format_h2={element:"h2"};CKEDITOR.config.format_h3={element:"h3"};CKEDITOR.config.format_h4={element:"h4"};CKEDITOR.config.format_h5={element:"h5"};CKEDITOR.config.format_h6={element:"h6"};(function(){var b={canUndo:!1,exec:function(a){var b=a.document.createElement("hr");a.insertElement(b)},allowedContent:"hr",requiredContent:"hr"};CKEDITOR.plugins.add("horizontalrule",{init:function(a){a.blockless||(a.addCommand("horizontalrule",b),a.ui.addButton&&a.ui.addButton("HorizontalRule",{label:a.lang.horizontalrule.toolbar,command:"horizontalrule",toolbar:"insert,40"}))}})})();CKEDITOR.plugins.add("htmlwriter",{init:function(b){var a=new CKEDITOR.htmlWriter;a.forceSimpleAmpersand=b.config.forceSimpleAmpersand;a.indentationChars=b.config.dataIndentationChars||"\t";b.dataProcessor.writer=a}});
CKEDITOR.htmlWriter=CKEDITOR.tools.createClass({base:CKEDITOR.htmlParser.basicWriter,$:function(){this.base();this.indentationChars="\t";this.selfClosingEnd=" />";this.lineBreakChars="\n";this.sortAttributes=1;this._.indent=0;this._.indentation="";this._.inPre=0;this._.rules={};var b=CKEDITOR.dtd,a;for(a in CKEDITOR.tools.extend({},b.$nonBodyContent,b.$block,b.$listItem,b.$tableContent))this.setRules(a,{indent:!b[a]["#"],breakBeforeOpen:1,breakBeforeClose:!b[a]["#"],breakAfterClose:1,needsSpace:a in
b.$block&&!(a in{li:1,dt:1,dd:1})});this.setRules("br",{breakAfterOpen:1});this.setRules("title",{indent:0,breakAfterOpen:0});this.setRules("style",{indent:0,breakBeforeClose:1});this.setRules("pre",{breakAfterOpen:1,indent:0})},proto:{openTag:function(b){var a=this._.rules[b];this._.afterCloser&&(a&&a.needsSpace&&this._.needsSpace)&&this._.output.push("\n");this._.indent?this.indentation():a&&a.breakBeforeOpen&&(this.lineBreak(),this.indentation());this._.output.push("<",b);this._.afterCloser=0},
openTagClose:function(b,a){var c=this._.rules[b];a?(this._.output.push(this.selfClosingEnd),c&&c.breakAfterClose&&(this._.needsSpace=c.needsSpace)):(this._.output.push(">"),c&&c.indent&&(this._.indentation+=this.indentationChars));c&&c.breakAfterOpen&&this.lineBreak();"pre"==b&&(this._.inPre=1)},attribute:function(b,a){"string"==typeof a&&(this.forceSimpleAmpersand&&(a=a.replace(/&amp;/g,"&")),a=CKEDITOR.tools.htmlEncodeAttr(a));this._.output.push(" ",b,'="',a,'"')},closeTag:function(b){var a=this._.rules[b];
a&&a.indent&&(this._.indentation=this._.indentation.substr(this.indentationChars.length));this._.indent?this.indentation():a&&a.breakBeforeClose&&(this.lineBreak(),this.indentation());this._.output.push("</",b,">");"pre"==b&&(this._.inPre=0);a&&a.breakAfterClose&&(this.lineBreak(),this._.needsSpace=a.needsSpace);this._.afterCloser=1},text:function(b){this._.indent&&(this.indentation(),!this._.inPre&&(b=CKEDITOR.tools.ltrim(b)));this._.output.push(b)},comment:function(b){this._.indent&&this.indentation();
this._.output.push("<\!--",b,"--\>")},lineBreak:function(){!this._.inPre&&0<this._.output.length&&this._.output.push(this.lineBreakChars);this._.indent=1},indentation:function(){!this._.inPre&&this._.indentation&&this._.output.push(this._.indentation);this._.indent=0},reset:function(){this._.output=[];this._.indent=0;this._.indentation="";this._.afterCloser=0;this._.inPre=0},setRules:function(b,a){var c=this._.rules[b];c?CKEDITOR.tools.extend(c,a,!0):this._.rules[b]=a}}});(function(){function e(b,a){a||(a=b.getSelection().getSelectedElement());if(a&&a.is("img")&&!a.data("cke-realelement")&&!a.isReadOnly())return a}function f(b){var a=b.getStyle("float");if("inherit"==a||"none"==a)a=0;a||(a=b.getAttribute("align"));return a}CKEDITOR.plugins.add("image",{requires:"dialog",init:function(b){if(!b.plugins.image2){CKEDITOR.dialog.add("image",this.path+"dialogs/image.js");var a="img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}";
CKEDITOR.dialog.isTabEnabled(b,"image","advanced")&&(a="img[alt,dir,id,lang,longdesc,!src,title]{*}(*)");b.addCommand("image",new CKEDITOR.dialogCommand("image",{allowedContent:a,requiredContent:"img[alt,src]",contentTransformations:[["img{width}: sizeToStyle","img[width]: sizeToAttribute"],["img{float}: alignmentToStyle","img[align]: alignmentToAttribute"]]}));b.ui.addButton&&b.ui.addButton("Image",{label:b.lang.common.image,command:"image",toolbar:"insert,10"});b.on("doubleclick",function(b){var a=
b.data.element;a.is("img")&&(!a.data("cke-realelement")&&!a.isReadOnly())&&(b.data.dialog="image")});b.addMenuItems&&b.addMenuItems({image:{label:b.lang.image.menu,command:"image",group:"image"}});b.contextMenu&&b.contextMenu.addListener(function(a){if(e(b,a))return{image:CKEDITOR.TRISTATE_OFF}})}},afterInit:function(b){function a(a){var d=b.getCommand("justify"+a);if(d){if("left"==a||"right"==a)d.on("exec",function(d){var c=e(b),g;c&&(g=f(c),g==a?(c.removeStyle("float"),a==f(c)&&c.removeAttribute("align")):
c.setStyle("float",a),d.cancel())});d.on("refresh",function(d){var c=e(b);c&&(c=f(c),this.setState(c==a?CKEDITOR.TRISTATE_ON:"right"==a||"left"==a?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),d.cancel())})}}b.plugins.image2||(a("left"),a("right"),a("center"),a("block"))}})})();CKEDITOR.config.image_removeLinkByEmptyURL=!0;(function(){function k(a,b){var e,f;b.on("refresh",function(a){var b=[i],c;for(c in a.data.states)b.push(a.data.states[c]);this.setState(CKEDITOR.tools.search(b,m)?m:i)},b,null,100);b.on("exec",function(b){e=a.getSelection();f=e.createBookmarks(1);b.data||(b.data={});b.data.done=!1},b,null,0);b.on("exec",function(){a.forceNextSelectionCheck();e.selectBookmarks(f)},b,null,100)}var i=CKEDITOR.TRISTATE_DISABLED,m=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indent",{init:function(a){var b=CKEDITOR.plugins.indent.genericDefinition;
k(a,a.addCommand("indent",new b(!0)));k(a,a.addCommand("outdent",new b));a.ui.addButton&&(a.ui.addButton("Indent",{label:a.lang.indent.indent,command:"indent",directional:!0,toolbar:"indent,20"}),a.ui.addButton("Outdent",{label:a.lang.indent.outdent,command:"outdent",directional:!0,toolbar:"indent,10"}));a.on("dirChanged",function(b){var f=a.createRange(),j=b.data.node;f.setStartBefore(j);f.setEndAfter(j);for(var l=new CKEDITOR.dom.walker(f),c;c=l.next();)if(c.type==CKEDITOR.NODE_ELEMENT)if(!c.equals(j)&&
c.getDirection()){f.setStartAfter(c);l=new CKEDITOR.dom.walker(f)}else{var d=a.config.indentClasses;if(d)for(var g=b.data.dir=="ltr"?["_rtl",""]:["","_rtl"],h=0;h<d.length;h++)if(c.hasClass(d[h]+g[0])){c.removeClass(d[h]+g[0]);c.addClass(d[h]+g[1])}d=c.getStyle("margin-right");g=c.getStyle("margin-left");d?c.setStyle("margin-left",d):c.removeStyle("margin-left");g?c.setStyle("margin-right",g):c.removeStyle("margin-right")}})}});CKEDITOR.plugins.indent={genericDefinition:function(a){this.isIndent=
!!a;this.startDisabled=!this.isIndent},specificDefinition:function(a,b,e){this.name=b;this.editor=a;this.jobs={};this.enterBr=a.config.enterMode==CKEDITOR.ENTER_BR;this.isIndent=!!e;this.relatedGlobal=e?"indent":"outdent";this.indentKey=e?9:CKEDITOR.SHIFT+9;this.database={}},registerCommands:function(a,b){a.on("pluginsLoaded",function(){for(var a in b)(function(a,b){var e=a.getCommand(b.relatedGlobal),c;for(c in b.jobs)e.on("exec",function(d){d.data.done||(a.fire("lockSnapshot"),b.execJob(a,c)&&(d.data.done=
!0),a.fire("unlockSnapshot"),CKEDITOR.dom.element.clearAllMarkers(b.database))},this,null,c),e.on("refresh",function(d){d.data.states||(d.data.states={});d.data.states[b.name+"@"+c]=b.refreshJob(a,c,d.data.path)},this,null,c);a.addFeature(b)})(this,b[a])})}};CKEDITOR.plugins.indent.genericDefinition.prototype={context:"p",exec:function(){}};CKEDITOR.plugins.indent.specificDefinition.prototype={execJob:function(a,b){var e=this.jobs[b];if(e.state!=i)return e.exec.call(this,a)},refreshJob:function(a,
b,e){b=this.jobs[b];b.state=a.activeFilter.checkFeature(this)?b.refresh.call(this,a,e):i;return b.state},getContext:function(a){return a.contains(this.context)}}})();(function(){function s(c){function f(b){for(var e=d.startContainer,a=d.endContainer;e&&!e.getParent().equals(b);)e=e.getParent();for(;a&&!a.getParent().equals(b);)a=a.getParent();if(!e||!a)return!1;for(var g=e,e=[],i=!1;!i;)g.equals(a)&&(i=!0),e.push(g),g=g.getNext();if(1>e.length)return!1;g=b.getParents(!0);for(a=0;a<g.length;a++)if(g[a].getName&&m[g[a].getName()]){b=g[a];break}for(var g=j.isIndent?1:-1,a=e[0],e=e[e.length-1],i=CKEDITOR.plugins.list.listToArray(b,n),l=i[e.getCustomData("listarray_index")].indent,
a=a.getCustomData("listarray_index");a<=e.getCustomData("listarray_index");a++)if(i[a].indent+=g,0<g){var h=i[a].parent;i[a].parent=new CKEDITOR.dom.element(h.getName(),h.getDocument())}for(a=e.getCustomData("listarray_index")+1;a<i.length&&i[a].indent>l;a++)i[a].indent+=g;e=CKEDITOR.plugins.list.arrayToList(i,n,null,c.config.enterMode,b.getDirection());if(!j.isIndent){var f;if((f=b.getParent())&&f.is("li"))for(var g=e.listNode.getChildren(),o=[],k,a=g.count()-1;0<=a;a--)(k=g.getItem(a))&&(k.is&&
k.is("li"))&&o.push(k)}e&&e.listNode.replace(b);if(o&&o.length)for(a=0;a<o.length;a++){for(k=b=o[a];(k=k.getNext())&&k.is&&k.getName()in m;)CKEDITOR.env.needsNbspFiller&&!b.getFirst(t)&&b.append(d.document.createText(" ")),b.append(k);b.insertAfter(f)}e&&c.fire("contentDomInvalidated");return!0}for(var j=this,n=this.database,m=this.context,l=c.getSelection(),l=(l&&l.getRanges()).createIterator(),d;d=l.getNextRange();){for(var b=d.getCommonAncestor();b&&!(b.type==CKEDITOR.NODE_ELEMENT&&m[b.getName()]);)b=
b.getParent();b||(b=d.startPath().contains(m))&&d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);if(!b){var h=d.getEnclosedNode();h&&(h.type==CKEDITOR.NODE_ELEMENT&&h.getName()in m)&&(d.setStartAt(h,CKEDITOR.POSITION_AFTER_START),d.setEndAt(h,CKEDITOR.POSITION_BEFORE_END),b=h)}b&&(d.startContainer.type==CKEDITOR.NODE_ELEMENT&&d.startContainer.getName()in m)&&(h=new CKEDITOR.dom.walker(d),h.evaluator=p,d.startContainer=h.next());b&&(d.endContainer.type==CKEDITOR.NODE_ELEMENT&&d.endContainer.getName()in m)&&
(h=new CKEDITOR.dom.walker(d),h.evaluator=p,d.endContainer=h.previous());if(b)return f(b)}return 0}function p(c){return c.type==CKEDITOR.NODE_ELEMENT&&c.is("li")}function t(c){return u(c)&&v(c)}var u=CKEDITOR.dom.walker.whitespaces(!0),v=CKEDITOR.dom.walker.bookmark(!1,!0),q=CKEDITOR.TRISTATE_DISABLED,r=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentlist",{requires:"indent",init:function(c){function f(c){j.specificDefinition.apply(this,arguments);this.requiredContent=["ul","ol"];c.on("key",function(f){if("wysiwyg"==
c.mode&&f.data.keyCode==this.indentKey){var l=this.getContext(c.elementPath());if(l&&(!this.isIndent||!CKEDITOR.plugins.indentList.firstItemInPath(this.context,c.elementPath(),l)))c.execCommand(this.relatedGlobal),f.cancel()}},this);this.jobs[this.isIndent?10:30]={refresh:this.isIndent?function(c,f){var d=this.getContext(f),b=CKEDITOR.plugins.indentList.firstItemInPath(this.context,f,d);return!d||!this.isIndent||b?q:r}:function(c,f){return!this.getContext(f)||this.isIndent?q:r},exec:CKEDITOR.tools.bind(s,
this)}}var j=CKEDITOR.plugins.indent;j.registerCommands(c,{indentlist:new f(c,"indentlist",!0),outdentlist:new f(c,"outdentlist")});CKEDITOR.tools.extend(f.prototype,j.specificDefinition.prototype,{context:{ol:1,ul:1}})}});CKEDITOR.plugins.indentList={};CKEDITOR.plugins.indentList.firstItemInPath=function(c,f,j){var n=f.contains(p);j||(j=f.contains(c));return j&&n&&n.equals(j.getFirst(p))}})();(function(){function l(a,c){var c=void 0===c||c,b;if(c)b=a.getComputedStyle("text-align");else{for(;!a.hasAttribute||!a.hasAttribute("align")&&!a.getStyle("text-align");){b=a.getParent();if(!b)break;a=b}b=a.getStyle("text-align")||a.getAttribute("align")||""}b&&(b=b.replace(/(?:-(?:moz|webkit)-)?(?:start|auto)/i,""));!b&&c&&(b="rtl"==a.getComputedStyle("direction")?"right":"left");return b}function g(a,c,b){this.editor=a;this.name=c;this.value=b;this.context="p";var c=a.config.justifyClasses,h=a.config.enterMode==
CKEDITOR.ENTER_P?"p":"div";if(c){switch(b){case "left":this.cssClassName=c[0];break;case "center":this.cssClassName=c[1];break;case "right":this.cssClassName=c[2];break;case "justify":this.cssClassName=c[3]}this.cssClassRegex=RegExp("(?:^|\\s+)(?:"+c.join("|")+")(?=$|\\s)");this.requiredContent=h+"("+this.cssClassName+")"}else this.requiredContent=h+"{text-align}";this.allowedContent={"caption div h1 h2 h3 h4 h5 h6 p pre td th li":{propertiesOnly:!0,styles:this.cssClassName?null:"text-align",classes:this.cssClassName||
null}};a.config.enterMode==CKEDITOR.ENTER_BR&&(this.allowedContent.div=!0)}function j(a){var c=a.editor,b=c.createRange();b.setStartBefore(a.data.node);b.setEndAfter(a.data.node);for(var h=new CKEDITOR.dom.walker(b),d;d=h.next();)if(d.type==CKEDITOR.NODE_ELEMENT)if(!d.equals(a.data.node)&&d.getDirection())b.setStartAfter(d),h=new CKEDITOR.dom.walker(b);else{var e=c.config.justifyClasses;e&&(d.hasClass(e[0])?(d.removeClass(e[0]),d.addClass(e[2])):d.hasClass(e[2])&&(d.removeClass(e[2]),d.addClass(e[0])));
e=d.getStyle("text-align");"left"==e?d.setStyle("text-align","right"):"right"==e&&d.setStyle("text-align","left")}}g.prototype={exec:function(a){var c=a.getSelection(),b=a.config.enterMode;if(c){for(var h=c.createBookmarks(),d=c.getRanges(),e=this.cssClassName,g,f,i=a.config.useComputedState,i=void 0===i||i,k=d.length-1;0<=k;k--){g=d[k].createIterator();for(g.enlargeBr=b!=CKEDITOR.ENTER_BR;f=g.getNextParagraph(b==CKEDITOR.ENTER_P?"p":"div");)if(!f.isReadOnly()){f.removeAttribute("align");f.removeStyle("text-align");
var j=e&&(f.$.className=CKEDITOR.tools.ltrim(f.$.className.replace(this.cssClassRegex,""))),m=this.state==CKEDITOR.TRISTATE_OFF&&(!i||l(f,!0)!=this.value);e?m?f.addClass(e):j||f.removeAttribute("class"):m&&f.setStyle("text-align",this.value)}}a.focus();a.forceNextSelectionCheck();c.selectBookmarks(h)}},refresh:function(a,c){var b=c.block||c.blockLimit;this.setState("body"!=b.getName()&&l(b,this.editor.config.useComputedState)==this.value?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)}};CKEDITOR.plugins.add("justify",
{init:function(a){if(!a.blockless){var c=new g(a,"justifyleft","left"),b=new g(a,"justifycenter","center"),h=new g(a,"justifyright","right"),d=new g(a,"justifyblock","justify");a.addCommand("justifyleft",c);a.addCommand("justifycenter",b);a.addCommand("justifyright",h);a.addCommand("justifyblock",d);a.ui.addButton&&(a.ui.addButton("JustifyLeft",{label:a.lang.justify.left,command:"justifyleft",toolbar:"align,10"}),a.ui.addButton("JustifyCenter",{label:a.lang.justify.center,command:"justifycenter",
toolbar:"align,20"}),a.ui.addButton("JustifyRight",{label:a.lang.justify.right,command:"justifyright",toolbar:"align,30"}),a.ui.addButton("JustifyBlock",{label:a.lang.justify.block,command:"justifyblock",toolbar:"align,40"}));a.on("dirChanged",j)}}})})();(function(){function g(a,b){var c=j.exec(a),d=j.exec(b);if(c){if(!c[2]&&"px"==d[2])return d[1];if("px"==c[2]&&!d[2])return d[1]+"px"}return b}var i=CKEDITOR.htmlParser.cssStyle,h=CKEDITOR.tools.cssLength,j=/^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i,k={elements:{$:function(a){var b=a.attributes;if((b=(b=(b=b&&b["data-cke-realelement"])&&new CKEDITOR.htmlParser.fragment.fromHtml(decodeURIComponent(b)))&&b.children[0])&&a.attributes["data-cke-resizable"]){var c=(new i(a)).rules,a=b.attributes,d=c.width,c=
c.height;d&&(a.width=g(a.width,d));c&&(a.height=g(a.height,c))}return b}}};CKEDITOR.plugins.add("fakeobjects",{init:function(a){a.filter.allow("img[!data-cke-realelement,src,alt,title](*){*}","fakeobjects")},afterInit:function(a){(a=(a=a.dataProcessor)&&a.htmlFilter)&&a.addRules(k,{applyToAll:!0})}});CKEDITOR.editor.prototype.createFakeElement=function(a,b,c,d){var e=this.lang.fakeobjects,e=e[c]||e.unknown,b={"class":b,"data-cke-realelement":encodeURIComponent(a.getOuterHtml()),"data-cke-real-node-type":a.type,
alt:e,title:e,align:a.getAttribute("align")||""};CKEDITOR.env.hc||(b.src=CKEDITOR.tools.transparentImageData);c&&(b["data-cke-real-element-type"]=c);d&&(b["data-cke-resizable"]=d,c=new i,d=a.getAttribute("width"),a=a.getAttribute("height"),d&&(c.rules.width=h(d)),a&&(c.rules.height=h(a)),c.populate(b));return this.document.createElement("img",{attributes:b})};CKEDITOR.editor.prototype.createFakeParserElement=function(a,b,c,d){var e=this.lang.fakeobjects,e=e[c]||e.unknown,f;f=new CKEDITOR.htmlParser.basicWriter;
a.writeHtml(f);f=f.getHtml();b={"class":b,"data-cke-realelement":encodeURIComponent(f),"data-cke-real-node-type":a.type,alt:e,title:e,align:a.attributes.align||""};CKEDITOR.env.hc||(b.src=CKEDITOR.tools.transparentImageData);c&&(b["data-cke-real-element-type"]=c);d&&(b["data-cke-resizable"]=d,d=a.attributes,a=new i,c=d.width,d=d.height,void 0!==c&&(a.rules.width=h(c)),void 0!==d&&(a.rules.height=h(d)),a.populate(b));return new CKEDITOR.htmlParser.element("img",b)};CKEDITOR.editor.prototype.restoreRealElement=
function(a){if(a.data("cke-real-node-type")!=CKEDITOR.NODE_ELEMENT)return null;var b=CKEDITOR.dom.element.createFromHtml(decodeURIComponent(a.data("cke-realelement")),this.document);if(a.data("cke-resizable")){var c=a.getStyle("width"),a=a.getStyle("height");c&&b.setAttribute("width",g(b.getAttribute("width"),c));a&&b.setAttribute("height",g(b.getAttribute("height"),a))}return b}})();(function(){function m(c){return c.replace(/'/g,"\\$&")}function n(c){for(var b,a=c.length,f=[],e=0;e<a;e++)b=c.charCodeAt(e),f.push(b);return"String.fromCharCode("+f.join(",")+")"}function o(c,b){var a=c.plugins.link,f=a.compiledProtectionFunction.params,e,d;d=[a.compiledProtectionFunction.name,"("];for(var g=0;g<f.length;g++)a=f[g].toLowerCase(),e=b[a],0<g&&d.push(","),d.push("'",e?m(encodeURIComponent(b[a])):"","'");d.push(")");return d.join("")}function l(c){var c=c.config.emailProtection||"",
b;c&&"encode"!=c&&(b={},c.replace(/^([^(]+)\(([^)]+)\)$/,function(a,c,e){b.name=c;b.params=[];e.replace(/[^,\s]+/g,function(a){b.params.push(a)})}));return b}CKEDITOR.plugins.add("link",{requires:"dialog,fakeobjects",onLoad:function(){function c(b){return a.replace(/%1/g,"rtl"==b?"right":"left").replace(/%2/g,"cke_contents_"+b)}var b="background:url("+CKEDITOR.getUrl(this.path+"images"+(CKEDITOR.env.hidpi?"/hidpi":"")+"/anchor.png")+") no-repeat %1 center;border:1px dotted #00f;background-size:16px;",
a=".%2 a.cke_anchor,.%2 a.cke_anchor_empty,.cke_editable.%2 a[name],.cke_editable.%2 a[data-cke-saved-name]{"+b+"padding-%1:18px;cursor:auto;}.%2 img.cke_anchor{"+b+"width:16px;min-height:15px;height:1.15em;vertical-align:text-bottom;}";CKEDITOR.addCss(c("ltr")+c("rtl"))},init:function(c){var b="a[!href]";CKEDITOR.dialog.isTabEnabled(c,"link","advanced")&&(b=b.replace("]",",accesskey,charset,dir,id,lang,name,rel,tabindex,title,type]{*}(*)"));CKEDITOR.dialog.isTabEnabled(c,"link","target")&&(b=b.replace("]",
",target,onclick]"));c.addCommand("link",new CKEDITOR.dialogCommand("link",{allowedContent:b,requiredContent:"a[href]"}));c.addCommand("anchor",new CKEDITOR.dialogCommand("anchor",{allowedContent:"a[!name,id]",requiredContent:"a[name]"}));c.addCommand("unlink",new CKEDITOR.unlinkCommand);c.addCommand("removeAnchor",new CKEDITOR.removeAnchorCommand);c.setKeystroke(CKEDITOR.CTRL+76,"link");c.ui.addButton&&(c.ui.addButton("Link",{label:c.lang.link.toolbar,command:"link",toolbar:"links,10"}),c.ui.addButton("Unlink",
{label:c.lang.link.unlink,command:"unlink",toolbar:"links,20"}),c.ui.addButton("Anchor",{label:c.lang.link.anchor.toolbar,command:"anchor",toolbar:"links,30"}));CKEDITOR.dialog.add("link",this.path+"dialogs/link.js");CKEDITOR.dialog.add("anchor",this.path+"dialogs/anchor.js");c.on("doubleclick",function(a){var b=CKEDITOR.plugins.link.getSelectedLink(c)||a.data.element;if(!b.isReadOnly())if(b.is("a")){a.data.dialog=b.getAttribute("name")&&(!b.getAttribute("href")||!b.getChildCount())?"anchor":"link";
a.data.link=b}else if(CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,b))a.data.dialog="anchor"},null,null,0);c.on("doubleclick",function(a){a.data.dialog in{link:1,anchor:1}&&a.data.link&&c.getSelection().selectElement(a.data.link)},null,null,20);c.addMenuItems&&c.addMenuItems({anchor:{label:c.lang.link.anchor.menu,command:"anchor",group:"anchor",order:1},removeAnchor:{label:c.lang.link.anchor.remove,command:"removeAnchor",group:"anchor",order:5},link:{label:c.lang.link.menu,command:"link",group:"link",
order:1},unlink:{label:c.lang.link.unlink,command:"unlink",group:"link",order:5}});c.contextMenu&&c.contextMenu.addListener(function(a){if(!a||a.isReadOnly())return null;a=CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,a);if(!a&&!(a=CKEDITOR.plugins.link.getSelectedLink(c)))return null;var b={};a.getAttribute("href")&&a.getChildCount()&&(b={link:CKEDITOR.TRISTATE_OFF,unlink:CKEDITOR.TRISTATE_OFF});if(a&&a.hasAttribute("name"))b.anchor=b.removeAnchor=CKEDITOR.TRISTATE_OFF;return b});this.compiledProtectionFunction=
l(c)},afterInit:function(c){c.dataProcessor.dataFilter.addRules({elements:{a:function(a){return!a.attributes.name?null:!a.children.length?c.createFakeParserElement(a,"cke_anchor","anchor"):null}}});var b=c._.elementsPath&&c._.elementsPath.filters;b&&b.push(function(a,b){if("a"==b&&(CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,a)||a.getAttribute("name")&&(!a.getAttribute("href")||!a.getChildCount())))return"anchor"})}});var p=/^javascript:/,q=/^mailto:([^?]+)(?:\?(.+))?$/,r=/subject=([^;?:@&=$,\/]*)/,
s=/body=([^;?:@&=$,\/]*)/,t=/^#(.*)$/,u=/^((?:http|https|ftp|news):\/\/)?(.*)$/,v=/^(_(?:self|top|parent|blank))$/,w=/^javascript:void\(location\.href='mailto:'\+String\.fromCharCode\(([^)]+)\)(?:\+'(.*)')?\)$/,x=/^javascript:([^(]+)\(([^)]+)\)$/,y=/\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*/,z=/(?:^|,)([^=]+)=(\d+|yes|no)/gi,j={id:"advId",dir:"advLangDir",accessKey:"advAccessKey",name:"advName",lang:"advLangCode",tabindex:"advTabIndex",title:"advTitle",
type:"advContentType","class":"advCSSClasses",charset:"advCharset",style:"advStyles",rel:"advRel"};CKEDITOR.plugins.link={getSelectedLink:function(c){var b=c.getSelection(),a=b.getSelectedElement();return a&&a.is("a")?a:(b=b.getRanges()[0])?(b.shrink(CKEDITOR.SHRINK_TEXT),c.elementPath(b.getCommonAncestor()).contains("a",1)):null},getEditorAnchors:function(c){for(var b=c.editable(),a=b.isInline()&&!c.plugins.divarea?c.document:b,b=a.getElementsByTag("a"),a=a.getElementsByTag("img"),f=[],e=0,d;d=b.getItem(e++);)if(d.data("cke-saved-name")||
d.hasAttribute("name"))f.push({name:d.data("cke-saved-name")||d.getAttribute("name"),id:d.getAttribute("id")});for(e=0;d=a.getItem(e++);)(d=this.tryRestoreFakeAnchor(c,d))&&f.push({name:d.getAttribute("name"),id:d.getAttribute("id")});return f},fakeAnchor:!0,tryRestoreFakeAnchor:function(c,b){if(b&&b.data("cke-real-element-type")&&"anchor"==b.data("cke-real-element-type")){var a=c.restoreRealElement(b);if(a.data("cke-saved-name"))return a}},parseLinkAttributes:function(c,b){var a=b&&(b.data("cke-saved-href")||
b.getAttribute("href"))||"",f=c.plugins.link.compiledProtectionFunction,e=c.config.emailProtection,d,g={};a.match(p)&&("encode"==e?a=a.replace(w,function(a,b,c){return"mailto:"+String.fromCharCode.apply(String,b.split(","))+(c&&c.replace(/\\'/g,"'"))}):e&&a.replace(x,function(a,b,c){if(b==f.name){g.type="email";for(var a=g.email={},b=/(^')|('$)/g,c=c.match(/[^,\s]+/g),d=c.length,e,h,i=0;i<d;i++)e=decodeURIComponent,h=c[i].replace(b,"").replace(/\\'/g,"'"),h=e(h),e=f.params[i].toLowerCase(),a[e]=h;
a.address=[a.name,a.domain].join("@")}}));if(!g.type)if(e=a.match(t))g.type="anchor",g.anchor={},g.anchor.name=g.anchor.id=e[1];else if(e=a.match(q)){d=a.match(r);a=a.match(s);g.type="email";var i=g.email={};i.address=e[1];d&&(i.subject=decodeURIComponent(d[1]));a&&(i.body=decodeURIComponent(a[1]))}else if(a&&(d=a.match(u)))g.type="url",g.url={},g.url.protocol=d[1],g.url.url=d[2];if(b){if(a=b.getAttribute("target"))g.target={type:a.match(v)?a:"frame",name:a};else if(a=(a=b.data("cke-pa-onclick")||
b.getAttribute("onclick"))&&a.match(y))for(g.target={type:"popup",name:a[1]};e=z.exec(a[2]);)("yes"==e[2]||"1"==e[2])&&!(e[1]in{height:1,width:1,top:1,left:1})?g.target[e[1]]=!0:isFinite(e[2])&&(g.target[e[1]]=e[2]);var a={},h;for(h in j)(e=b.getAttribute(h))&&(a[j[h]]=e);if(h=b.data("cke-saved-name")||a.advName)a.advName=h;CKEDITOR.tools.isEmpty(a)||(g.advanced=a)}return g},getLinkAttributes:function(c,b){var a=c.config.emailProtection||"",f={};switch(b.type){case "url":var a=b.url&&void 0!==b.url.protocol?
b.url.protocol:"http://",e=b.url&&CKEDITOR.tools.trim(b.url.url)||"";f["data-cke-saved-href"]=0===e.indexOf("/")?e:a+e;break;case "anchor":a=b.anchor&&b.anchor.id;f["data-cke-saved-href"]="#"+(b.anchor&&b.anchor.name||a||"");break;case "email":var d=b.email,e=d.address;switch(a){case "":case "encode":var g=encodeURIComponent(d.subject||""),i=encodeURIComponent(d.body||""),d=[];g&&d.push("subject="+g);i&&d.push("body="+i);d=d.length?"?"+d.join("&"):"";"encode"==a?(a=["javascript:void(location.href='mailto:'+",
n(e)],d&&a.push("+'",m(d),"'"),a.push(")")):a=["mailto:",e,d];break;default:a=e.split("@",2),d.name=a[0],d.domain=a[1],a=["javascript:",o(c,d)]}f["data-cke-saved-href"]=a.join("")}if(b.target)if("popup"==b.target.type){for(var a=["window.open(this.href, '",b.target.name||"","', '"],h="resizable status location toolbar menubar fullscreen scrollbars dependent".split(" "),e=h.length,g=function(a){b.target[a]&&h.push(a+"="+b.target[a])},d=0;d<e;d++)h[d]+=b.target[h[d]]?"=yes":"=no";g("width");g("left");
g("height");g("top");a.push(h.join(","),"'); return false;");f["data-cke-pa-onclick"]=a.join("")}else"notSet"!=b.target.type&&b.target.name&&(f.target=b.target.name);if(b.advanced){for(var k in j)(a=b.advanced[j[k]])&&(f[k]=a);f.name&&(f["data-cke-saved-name"]=f.name)}f["data-cke-saved-href"]&&(f.href=f["data-cke-saved-href"]);k=CKEDITOR.tools.extend({target:1,onclick:1,"data-cke-pa-onclick":1,"data-cke-saved-name":1},j);for(var l in f)delete k[l];return{set:f,removed:CKEDITOR.tools.objectKeys(k)}}};
CKEDITOR.unlinkCommand=function(){};CKEDITOR.unlinkCommand.prototype={exec:function(c){var b=new CKEDITOR.style({element:"a",type:CKEDITOR.STYLE_INLINE,alwaysRemoveElement:1});c.removeStyle(b)},refresh:function(c,b){var a=b.lastElement&&b.lastElement.getAscendant("a",!0);a&&"a"==a.getName()&&a.getAttribute("href")&&a.getChildCount()?this.setState(CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_DISABLED)},contextSensitive:1,startDisabled:1,requiredContent:"a[href]"};CKEDITOR.removeAnchorCommand=
function(){};CKEDITOR.removeAnchorCommand.prototype={exec:function(c){var b=c.getSelection(),a=b.createBookmarks(),f;if(b&&(f=b.getSelectedElement())&&(!f.getChildCount()?CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,f):f.is("a")))f.remove(1);else if(f=CKEDITOR.plugins.link.getSelectedLink(c))f.hasAttribute("href")?(f.removeAttributes({name:1,"data-cke-saved-name":1}),f.removeClass("cke_anchor")):f.remove(1);b.selectBookmarks(a)},requiredContent:"a[name]"};CKEDITOR.tools.extend(CKEDITOR.config,{linkShowAdvancedTab:!0,
linkShowTargetTab:!0})})();(function(){function E(b,k,e){function d(d){if((a=c[d?"getFirst":"getLast"]())&&(!a.is||!a.isBlockBoundary())&&(m=k.root[d?"getPrevious":"getNext"](CKEDITOR.dom.walker.invisible(!0)))&&(!m.is||!m.isBlockBoundary({br:1})))b.document.createElement("br")[d?"insertBefore":"insertAfter"](a)}for(var f=CKEDITOR.plugins.list.listToArray(k.root,e),g=[],i=0;i<k.contents.length;i++){var h=k.contents[i];if((h=h.getAscendant("li",!0))&&!h.getCustomData("list_item_processed"))g.push(h),CKEDITOR.dom.element.setMarker(e,
h,"list_item_processed",!0)}h=null;for(i=0;i<g.length;i++)h=g[i].getCustomData("listarray_index"),f[h].indent=-1;for(i=h+1;i<f.length;i++)if(f[i].indent>f[i-1].indent+1){g=f[i-1].indent+1-f[i].indent;for(h=f[i].indent;f[i]&&f[i].indent>=h;)f[i].indent+=g,i++;i--}var c=CKEDITOR.plugins.list.arrayToList(f,e,null,b.config.enterMode,k.root.getAttribute("dir")).listNode,a,m;d(!0);d();c.replace(k.root);b.fire("contentDomInvalidated")}function x(b,k){this.name=b;this.context=this.type=k;this.allowedContent=
k+" li";this.requiredContent=k}function A(b,k,e,d){for(var f,g;f=b[d?"getLast":"getFirst"](F);)(g=f.getDirection(1))!==k.getDirection(1)&&f.setAttribute("dir",g),f.remove(),e?f[d?"insertBefore":"insertAfter"](e):k.append(f,d)}function B(b){function k(e){var d=b[e?"getPrevious":"getNext"](q);d&&(d.type==CKEDITOR.NODE_ELEMENT&&d.is(b.getName()))&&(A(b,d,null,!e),b.remove(),b=d)}k();k(1)}function C(b){return b.type==CKEDITOR.NODE_ELEMENT&&(b.getName()in CKEDITOR.dtd.$block||b.getName()in CKEDITOR.dtd.$listItem)&&
CKEDITOR.dtd[b.getName()]["#"]}function y(b,k,e){b.fire("saveSnapshot");e.enlarge(CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS);var d=e.extractContents();k.trim(!1,!0);var f=k.createBookmark(),g=new CKEDITOR.dom.elementPath(k.startContainer),i=g.block,g=g.lastElement.getAscendant("li",1)||i,h=new CKEDITOR.dom.elementPath(e.startContainer),c=h.contains(CKEDITOR.dtd.$listItem),h=h.contains(CKEDITOR.dtd.$list);i?(i=i.getBogus())&&i.remove():h&&(i=h.getPrevious(q))&&v(i)&&i.remove();(i=d.getLast())&&(i.type==
CKEDITOR.NODE_ELEMENT&&i.is("br"))&&i.remove();(i=k.startContainer.getChild(k.startOffset))?d.insertBefore(i):k.startContainer.append(d);if(c&&(d=w(c)))g.contains(c)?(A(d,c.getParent(),c),d.remove()):g.append(d);for(;e.checkStartOfBlock()&&e.checkEndOfBlock();){h=e.startPath();d=h.block;if(!d)break;d.is("li")&&(g=d.getParent(),d.equals(g.getLast(q))&&d.equals(g.getFirst(q))&&(d=g));e.moveToPosition(d,CKEDITOR.POSITION_BEFORE_START);d.remove()}e=e.clone();d=b.editable();e.setEndAt(d,CKEDITOR.POSITION_BEFORE_END);
e=new CKEDITOR.dom.walker(e);e.evaluator=function(a){return q(a)&&!v(a)};(e=e.next())&&(e.type==CKEDITOR.NODE_ELEMENT&&e.getName()in CKEDITOR.dtd.$list)&&B(e);k.moveToBookmark(f);k.select();b.fire("saveSnapshot")}function w(b){return(b=b.getLast(q))&&b.type==CKEDITOR.NODE_ELEMENT&&b.getName()in r?b:null}var r={ol:1,ul:1},G=CKEDITOR.dom.walker.whitespaces(),D=CKEDITOR.dom.walker.bookmark(),q=function(b){return!(G(b)||D(b))},v=CKEDITOR.dom.walker.bogus();CKEDITOR.plugins.list={listToArray:function(b,
k,e,d,f){if(!r[b.getName()])return[];d||(d=0);e||(e=[]);for(var g=0,i=b.getChildCount();g<i;g++){var h=b.getChild(g);h.type==CKEDITOR.NODE_ELEMENT&&h.getName()in CKEDITOR.dtd.$list&&CKEDITOR.plugins.list.listToArray(h,k,e,d+1);if("li"==h.$.nodeName.toLowerCase()){var c={parent:b,indent:d,element:h,contents:[]};f?c.grandparent=f:(c.grandparent=b.getParent(),c.grandparent&&"li"==c.grandparent.$.nodeName.toLowerCase()&&(c.grandparent=c.grandparent.getParent()));k&&CKEDITOR.dom.element.setMarker(k,h,
"listarray_index",e.length);e.push(c);for(var a=0,m=h.getChildCount(),j;a<m;a++)j=h.getChild(a),j.type==CKEDITOR.NODE_ELEMENT&&r[j.getName()]?CKEDITOR.plugins.list.listToArray(j,k,e,d+1,c.grandparent):c.contents.push(j)}}return e},arrayToList:function(b,k,e,d,f){e||(e=0);if(!b||b.length<e+1)return null;for(var g,i=b[e].parent.getDocument(),h=new CKEDITOR.dom.documentFragment(i),c=null,a=e,m=Math.max(b[e].indent,0),j=null,n,l,p=d==CKEDITOR.ENTER_P?"p":"div";;){var o=b[a];g=o.grandparent;n=o.element.getDirection(1);
if(o.indent==m){if(!c||b[a].parent.getName()!=c.getName())c=b[a].parent.clone(!1,1),f&&c.setAttribute("dir",f),h.append(c);j=c.append(o.element.clone(0,1));n!=c.getDirection(1)&&j.setAttribute("dir",n);for(g=0;g<o.contents.length;g++)j.append(o.contents[g].clone(1,1));a++}else if(o.indent==Math.max(m,0)+1)o=b[a-1].element.getDirection(1),a=CKEDITOR.plugins.list.arrayToList(b,null,a,d,o!=n?n:null),!j.getChildCount()&&(CKEDITOR.env.needsNbspFiller&&7>=i.$.documentMode)&&j.append(i.createText(" ")),
j.append(a.listNode),a=a.nextIndex;else if(-1==o.indent&&!e&&g){r[g.getName()]?(j=o.element.clone(!1,!0),n!=g.getDirection(1)&&j.setAttribute("dir",n)):j=new CKEDITOR.dom.documentFragment(i);var c=g.getDirection(1)!=n,u=o.element,z=u.getAttribute("class"),v=u.getAttribute("style"),w=j.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&(d!=CKEDITOR.ENTER_BR||c||v||z),s,x=o.contents.length,t;for(g=0;g<x;g++)if(s=o.contents[g],D(s)&&1<x)w?t=s.clone(1,1):j.append(s.clone(1,1));else if(s.type==CKEDITOR.NODE_ELEMENT&&
s.isBlockBoundary()){c&&!s.getDirection()&&s.setAttribute("dir",n);l=s;var y=u.getAttribute("style");y&&l.setAttribute("style",y.replace(/([^;])$/,"$1;")+(l.getAttribute("style")||""));z&&s.addClass(z);l=null;t&&(j.append(t),t=null);j.append(s.clone(1,1))}else w?(l||(l=i.createElement(p),j.append(l),c&&l.setAttribute("dir",n)),v&&l.setAttribute("style",v),z&&l.setAttribute("class",z),t&&(l.append(t),t=null),l.append(s.clone(1,1))):j.append(s.clone(1,1));t&&((l||j).append(t),t=null);j.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&
a!=b.length-1&&(CKEDITOR.env.needsBrFiller&&(n=j.getLast())&&(n.type==CKEDITOR.NODE_ELEMENT&&n.is("br"))&&n.remove(),n=j.getLast(q),(!n||!(n.type==CKEDITOR.NODE_ELEMENT&&n.is(CKEDITOR.dtd.$block)))&&j.append(i.createElement("br")));n=j.$.nodeName.toLowerCase();("div"==n||"p"==n)&&j.appendBogus();h.append(j);c=null;a++}else return null;l=null;if(b.length<=a||Math.max(b[a].indent,0)<m)break}if(k)for(b=h.getFirst();b;){if(b.type==CKEDITOR.NODE_ELEMENT&&(CKEDITOR.dom.element.clearMarkers(k,b),b.getName()in
CKEDITOR.dtd.$listItem&&(e=b,i=f=d=void 0,d=e.getDirection()))){for(f=e.getParent();f&&!(i=f.getDirection());)f=f.getParent();d==i&&e.removeAttribute("dir")}b=b.getNextSourceNode()}return{listNode:h,nextIndex:a}}};var H=/^h[1-6]$/,F=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT);x.prototype={exec:function(b){this.refresh(b,b.elementPath());var k=b.config,e=b.getSelection(),d=e&&e.getRanges();if(this.state==CKEDITOR.TRISTATE_OFF){var f=b.editable();if(f.getFirst(q)){var g=1==d.length&&d[0];(k=
g&&g.getEnclosedNode())&&(k.is&&this.type==k.getName())&&this.setState(CKEDITOR.TRISTATE_ON)}else k.enterMode==CKEDITOR.ENTER_BR?f.appendBogus():d[0].fixBlock(1,k.enterMode==CKEDITOR.ENTER_P?"p":"div"),e.selectRanges(d)}for(var k=e.createBookmarks(!0),f=[],i={},d=d.createIterator(),h=0;(g=d.getNextRange())&&++h;){var c=g.getBoundaryNodes(),a=c.startNode,m=c.endNode;a.type==CKEDITOR.NODE_ELEMENT&&"td"==a.getName()&&g.setStartAt(c.startNode,CKEDITOR.POSITION_AFTER_START);m.type==CKEDITOR.NODE_ELEMENT&&
"td"==m.getName()&&g.setEndAt(c.endNode,CKEDITOR.POSITION_BEFORE_END);g=g.createIterator();for(g.forceBrBreak=this.state==CKEDITOR.TRISTATE_OFF;c=g.getNextParagraph();)if(!c.getCustomData("list_block")){CKEDITOR.dom.element.setMarker(i,c,"list_block",1);for(var j=b.elementPath(c),a=j.elements,m=0,j=j.blockLimit,n,l=a.length-1;0<=l&&(n=a[l]);l--)if(r[n.getName()]&&j.contains(n)){j.removeCustomData("list_group_object_"+h);(a=n.getCustomData("list_group_object"))?a.contents.push(c):(a={root:n,contents:[c]},
f.push(a),CKEDITOR.dom.element.setMarker(i,n,"list_group_object",a));m=1;break}m||(m=j,m.getCustomData("list_group_object_"+h)?m.getCustomData("list_group_object_"+h).contents.push(c):(a={root:m,contents:[c]},CKEDITOR.dom.element.setMarker(i,m,"list_group_object_"+h,a),f.push(a)))}}for(n=[];0<f.length;)if(a=f.shift(),this.state==CKEDITOR.TRISTATE_OFF)if(r[a.root.getName()]){d=b;h=a;a=i;g=n;m=CKEDITOR.plugins.list.listToArray(h.root,a);j=[];for(c=0;c<h.contents.length;c++)if(l=h.contents[c],(l=l.getAscendant("li",
!0))&&!l.getCustomData("list_item_processed"))j.push(l),CKEDITOR.dom.element.setMarker(a,l,"list_item_processed",!0);for(var l=h.root.getDocument(),p=void 0,o=void 0,c=0;c<j.length;c++){var u=j[c].getCustomData("listarray_index"),p=m[u].parent;p.is(this.type)||(o=l.createElement(this.type),p.copyAttributes(o,{start:1,type:1}),o.removeStyle("list-style-type"),m[u].parent=o)}a=CKEDITOR.plugins.list.arrayToList(m,a,null,d.config.enterMode);m=void 0;j=a.listNode.getChildCount();for(c=0;c<j&&(m=a.listNode.getChild(c));c++)m.getName()==
this.type&&g.push(m);a.listNode.replace(h.root);d.fire("contentDomInvalidated")}else{m=b;c=a;g=n;j=c.contents;d=c.root.getDocument();h=[];1==j.length&&j[0].equals(c.root)&&(a=d.createElement("div"),j[0].moveChildren&&j[0].moveChildren(a),j[0].append(a),j[0]=a);c=c.contents[0].getParent();for(l=0;l<j.length;l++)c=c.getCommonAncestor(j[l].getParent());p=m.config.useComputedState;m=a=void 0;p=void 0===p||p;for(l=0;l<j.length;l++)for(o=j[l];u=o.getParent();){if(u.equals(c)){h.push(o);!m&&o.getDirection()&&
(m=1);o=o.getDirection(p);null!==a&&(a=a&&a!=o?null:o);break}o=u}if(!(1>h.length)){j=h[h.length-1].getNext();l=d.createElement(this.type);g.push(l);for(p=g=void 0;h.length;)g=h.shift(),p=d.createElement("li"),g.is("pre")||H.test(g.getName())||"false"==g.getAttribute("contenteditable")?g.appendTo(p):(g.copyAttributes(p),a&&g.getDirection()&&(p.removeStyle("direction"),p.removeAttribute("dir")),g.moveChildren(p),g.remove()),p.appendTo(l);a&&m&&l.setAttribute("dir",a);j?l.insertBefore(j):l.appendTo(c)}}else this.state==
CKEDITOR.TRISTATE_ON&&r[a.root.getName()]&&E.call(this,b,a,i);for(l=0;l<n.length;l++)B(n[l]);CKEDITOR.dom.element.clearAllMarkers(i);e.selectBookmarks(k);b.focus()},refresh:function(b,k){var e=k.contains(r,1),d=k.blockLimit||k.root;e&&d.contains(e)?this.setState(e.is(this.type)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_OFF)}};CKEDITOR.plugins.add("list",{requires:"indentlist",init:function(b){b.blockless||(b.addCommand("numberedlist",new x("numberedlist","ol")),b.addCommand("bulletedlist",
new x("bulletedlist","ul")),b.ui.addButton&&(b.ui.addButton("NumberedList",{label:b.lang.list.numberedlist,command:"numberedlist",directional:!0,toolbar:"list,10"}),b.ui.addButton("BulletedList",{label:b.lang.list.bulletedlist,command:"bulletedlist",directional:!0,toolbar:"list,20"})),b.on("key",function(k){var e=k.data.domEvent.getKey(),d;if(b.mode=="wysiwyg"&&e in{8:1,46:1}){var f=b.getSelection().getRanges()[0],g=f&&f.startPath();if(f&&f.collapsed){var i=e==8,h=b.editable(),c=new CKEDITOR.dom.walker(f.clone());
c.evaluator=function(a){return q(a)&&!v(a)};c.guard=function(a,b){return!(b&&a.type==CKEDITOR.NODE_ELEMENT&&a.is("table"))};e=f.clone();if(i){var a;if((a=g.contains(r))&&f.checkBoundaryOfElement(a,CKEDITOR.START)&&(a=a.getParent())&&a.is("li")&&(a=w(a))){d=a;a=a.getPrevious(q);e.moveToPosition(a&&v(a)?a:d,CKEDITOR.POSITION_BEFORE_START)}else{c.range.setStartAt(h,CKEDITOR.POSITION_AFTER_START);c.range.setEnd(f.startContainer,f.startOffset);if((a=c.previous())&&a.type==CKEDITOR.NODE_ELEMENT&&(a.getName()in
r||a.is("li"))){if(!a.is("li")){c.range.selectNodeContents(a);c.reset();c.evaluator=C;a=c.previous()}d=a;e.moveToElementEditEnd(d)}}if(d){y(b,e,f);k.cancel()}else if((e=g.contains(r))&&f.checkBoundaryOfElement(e,CKEDITOR.START)){d=e.getFirst(q);if(f.checkBoundaryOfElement(d,CKEDITOR.START)){a=e.getPrevious(q);if(w(d)){if(a){f.moveToElementEditEnd(a);f.select()}}else b.execCommand("outdent");k.cancel()}}}else if(d=g.contains("li")){c.range.setEndAt(h,CKEDITOR.POSITION_BEFORE_END);d=(g=d.getLast(q))&&
C(g)?g:d;h=0;if((a=c.next())&&a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in r&&a.equals(g)){h=1;a=c.next()}else f.checkBoundaryOfElement(d,CKEDITOR.END)&&(h=1);if(h&&a){f=f.clone();f.moveToElementEditStart(a);y(b,e,f);k.cancel()}}else{c.range.setEndAt(h,CKEDITOR.POSITION_BEFORE_END);if((a=c.next())&&a.type==CKEDITOR.NODE_ELEMENT&&a.is(r)){a=a.getFirst(q);if(g.block&&f.checkStartOfBlock()&&f.checkEndOfBlock()){g.block.remove();f.moveToElementEditStart(a);f.select()}else if(w(a)){f.moveToElementEditStart(a);
f.select()}else{f=f.clone();f.moveToElementEditStart(a);y(b,e,f)}k.cancel()}}setTimeout(function(){b.selectionChange(1)})}}}))}})})();(function(){function l(a){if(!a||a.type!=CKEDITOR.NODE_ELEMENT||"form"!=a.getName())return[];for(var e=[],f=["style","className"],b=0;b<f.length;b++){var d=a.$.elements.namedItem(f[b]);d&&(d=new CKEDITOR.dom.element(d),e.push([d,d.nextSibling]),d.remove())}return e}function o(a,e){if(a&&!(a.type!=CKEDITOR.NODE_ELEMENT||"form"!=a.getName())&&0<e.length)for(var f=e.length-1;0<=f;f--){var b=e[f][0],d=e[f][1];d?b.insertBefore(d):b.appendTo(a)}}function n(a,e){var f=l(a),b={},d=a.$;e||(b["class"]=d.className||
"",d.className="");b.inline=d.style.cssText||"";e||(d.style.cssText="position: static; overflow: visible");o(f);return b}function p(a,e){var f=l(a),b=a.$;"class"in e&&(b.className=e["class"]);"inline"in e&&(b.style.cssText=e.inline);o(f)}function q(a){if(!a.editable().isInline()){var e=CKEDITOR.instances,f;for(f in e){var b=e[f];"wysiwyg"==b.mode&&!b.readOnly&&(b=b.document.getBody(),b.setAttribute("contentEditable",!1),b.setAttribute("contentEditable",!0))}a.editable().hasFocus&&(a.toolbox.focus(),
a.focus())}}CKEDITOR.plugins.add("maximize",{init:function(a){function e(){var b=d.getViewPaneSize();a.resize(b.width,b.height,null,!0)}if(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var f=a.lang,b=CKEDITOR.document,d=b.getWindow(),j,k,m,l=CKEDITOR.TRISTATE_OFF;a.addCommand("maximize",{modes:{wysiwyg:!CKEDITOR.env.iOS,source:!CKEDITOR.env.iOS},readOnly:1,editorFocus:!1,exec:function(){var h=a.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}),g=a.ui.space("contents");
if("wysiwyg"==a.mode){var c=a.getSelection();j=c&&c.getRanges();k=d.getScrollPosition()}else{var i=a.editable().$;j=!CKEDITOR.env.ie&&[i.selectionStart,i.selectionEnd];k=[i.scrollLeft,i.scrollTop]}if(this.state==CKEDITOR.TRISTATE_OFF){d.on("resize",e);m=d.getScrollPosition();for(c=a.container;c=c.getParent();)c.setCustomData("maximize_saved_styles",n(c)),c.setStyle("z-index",a.config.baseFloatZIndex-5);g.setCustomData("maximize_saved_styles",n(g,!0));h.setCustomData("maximize_saved_styles",n(h,!0));
g={overflow:CKEDITOR.env.webkit?"":"hidden",width:0,height:0};b.getDocumentElement().setStyles(g);!CKEDITOR.env.gecko&&b.getDocumentElement().setStyle("position","fixed");(!CKEDITOR.env.gecko||!CKEDITOR.env.quirks)&&b.getBody().setStyles(g);CKEDITOR.env.ie?setTimeout(function(){d.$.scrollTo(0,0)},0):d.$.scrollTo(0,0);h.setStyle("position",CKEDITOR.env.gecko&&CKEDITOR.env.quirks?"fixed":"absolute");h.$.offsetLeft;h.setStyles({"z-index":a.config.baseFloatZIndex-5,left:"0px",top:"0px"});h.addClass("cke_maximized");
e();g=h.getDocumentPosition();h.setStyles({left:-1*g.x+"px",top:-1*g.y+"px"});CKEDITOR.env.gecko&&q(a)}else if(this.state==CKEDITOR.TRISTATE_ON){d.removeListener("resize",e);g=[g,h];for(c=0;c<g.length;c++)p(g[c],g[c].getCustomData("maximize_saved_styles")),g[c].removeCustomData("maximize_saved_styles");for(c=a.container;c=c.getParent();)p(c,c.getCustomData("maximize_saved_styles")),c.removeCustomData("maximize_saved_styles");CKEDITOR.env.ie?setTimeout(function(){d.$.scrollTo(m.x,m.y)},0):d.$.scrollTo(m.x,
m.y);h.removeClass("cke_maximized");CKEDITOR.env.webkit&&(h.setStyle("display","inline"),setTimeout(function(){h.setStyle("display","block")},0));a.fire("resize")}this.toggleState();if(c=this.uiItems[0])g=this.state==CKEDITOR.TRISTATE_OFF?f.maximize.maximize:f.maximize.minimize,c=CKEDITOR.document.getById(c._.id),c.getChild(1).setHtml(g),c.setAttribute("title",g),c.setAttribute("href",'javascript:void("'+g+'");');"wysiwyg"==a.mode?j?(CKEDITOR.env.gecko&&q(a),a.getSelection().selectRanges(j),(i=a.getSelection().getStartElement())&&
i.scrollIntoView(!0)):d.$.scrollTo(k.x,k.y):(j&&(i.selectionStart=j[0],i.selectionEnd=j[1]),i.scrollLeft=k[0],i.scrollTop=k[1]);j=k=null;l=this.state;a.fire("maximize",this.state)},canUndo:!1});a.ui.addButton&&a.ui.addButton("Maximize",{label:f.maximize.maximize,command:"maximize",toolbar:"tools,10"});a.on("mode",function(){var b=a.getCommand("maximize");b.setState(b.state==CKEDITOR.TRISTATE_DISABLED?CKEDITOR.TRISTATE_DISABLED:l)},null,null,100)}}})})();(function(){function h(a,d,f){var b=CKEDITOR.cleanWord;b?f():(a=CKEDITOR.getUrl(a.config.pasteFromWordCleanupFile||d+"filter/default.js"),CKEDITOR.scriptLoader.load(a,f,null,!0));return!b}function i(a){a.data.type="html"}CKEDITOR.plugins.add("pastefromword",{requires:"clipboard",init:function(a){var d=0,f=this.path;a.addCommand("pastefromword",{canUndo:!1,async:!0,exec:function(a){var e=this;d=1;a.once("beforePaste",i);a.getClipboardData({title:a.lang.pastefromword.title},function(c){c&&a.fire("paste",
{type:"html",dataValue:c.dataValue});a.fire("afterCommandExec",{name:"pastefromword",command:e,returnValue:!!c})})}});a.ui.addButton&&a.ui.addButton("PasteFromWord",{label:a.lang.pastefromword.toolbar,command:"pastefromword",toolbar:"clipboard,50"});a.on("pasteState",function(b){a.getCommand("pastefromword").setState(b.data)});a.on("paste",function(b){var e=b.data,c=e.dataValue;if(c&&(d||/(class=\"?Mso|style=\"[^\"]*\bmso\-|w:WordDocument)/.test(c))){var g=h(a,f,function(){if(g)a.fire("paste",e);
else if(!a.config.pasteFromWordPromptCleanup||d||confirm(a.lang.pastefromword.confirmCleanup))e.dataValue=CKEDITOR.cleanWord(c,a);d=0});g&&b.cancel()}},null,null,3)}})})();(function(){var c={canUndo:!1,async:!0,exec:function(a){a.getClipboardData({title:a.lang.pastetext.title},function(b){b&&a.fire("paste",{type:"text",dataValue:b.dataValue});a.fire("afterCommandExec",{name:"pastetext",command:c,returnValue:!!b})})}};CKEDITOR.plugins.add("pastetext",{requires:"clipboard",init:function(a){a.addCommand("pastetext",c);a.ui.addButton&&a.ui.addButton("PasteText",{label:a.lang.pastetext.button,command:"pastetext",toolbar:"clipboard,40"});if(a.config.forcePasteAsPlainText)a.on("beforePaste",
function(a){"html"!=a.data.type&&(a.data.type="text")});a.on("pasteState",function(b){a.getCommand("pastetext").setState(b.data)})}})})();CKEDITOR.plugins.add("removeformat",{init:function(a){a.addCommand("removeFormat",CKEDITOR.plugins.removeformat.commands.removeformat);a.ui.addButton&&a.ui.addButton("RemoveFormat",{label:a.lang.removeformat.toolbar,command:"removeFormat",toolbar:"cleanup,10"})}});
CKEDITOR.plugins.removeformat={commands:{removeformat:{exec:function(a){for(var h=a._.removeFormatRegex||(a._.removeFormatRegex=RegExp("^(?:"+a.config.removeFormatTags.replace(/,/g,"|")+")$","i")),e=a._.removeAttributes||(a._.removeAttributes=a.config.removeFormatAttributes.split(",")),f=CKEDITOR.plugins.removeformat.filter,k=a.getSelection().getRanges(),l=k.createIterator(),m=function(a){return a.type==CKEDITOR.NODE_ELEMENT},c;c=l.getNextRange();){c.collapsed||c.enlarge(CKEDITOR.ENLARGE_ELEMENT);
var j=c.createBookmark(),b=j.startNode,d=j.endNode,i=function(b){for(var c=a.elementPath(b),e=c.elements,d=1,g;(g=e[d])&&!g.equals(c.block)&&!g.equals(c.blockLimit);d++)h.test(g.getName())&&f(a,g)&&b.breakParent(g)};i(b);if(d){i(d);for(b=b.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT);b&&!b.equals(d);)if(b.isReadOnly()){if(b.getPosition(d)&CKEDITOR.POSITION_CONTAINS)break;b=b.getNext(m)}else i=b.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT),!("img"==b.getName()&&b.data("cke-realelement"))&&f(a,b)&&(h.test(b.getName())?
b.remove(1):(b.removeAttributes(e),a.fire("removeFormatCleanup",b))),b=i}c.moveToBookmark(j)}a.forceNextSelectionCheck();a.getSelection().selectRanges(k)}}},filter:function(a,h){for(var e=a._.removeFormatFilters||[],f=0;f<e.length;f++)if(!1===e[f](h))return!1;return!0}};CKEDITOR.editor.prototype.addRemoveFormatFilter=function(a){this._.removeFormatFilters||(this._.removeFormatFilters=[]);this._.removeFormatFilters.push(a)};CKEDITOR.config.removeFormatTags="b,big,cite,code,del,dfn,em,font,i,ins,kbd,q,s,samp,small,span,strike,strong,sub,sup,tt,u,var";
CKEDITOR.config.removeFormatAttributes="class,style,lang,width,height,align,hspace,valign";CKEDITOR.plugins.add("resize",{init:function(b){var f,g,n,o;function c(d){var e=f,l=g,c=e+(d.data.$.screenX-n)*("rtl"==h?-1:1),d=l+(d.data.$.screenY-o);i&&(e=Math.max(a.resize_minWidth,Math.min(c,a.resize_maxWidth)));m&&(l=Math.max(a.resize_minHeight,Math.min(d,a.resize_maxHeight)));b.resize(i?e:null,l)}function j(){CKEDITOR.document.removeListener("mousemove",c);CKEDITOR.document.removeListener("mouseup",j);b.document&&(b.document.removeListener("mousemove",c),b.document.removeListener("mouseup",
j))}var a=b.config,q=b.ui.spaceId("resizer"),h=b.element?b.element.getDirection(1):"ltr";!a.resize_dir&&(a.resize_dir="vertical");void 0===a.resize_maxWidth&&(a.resize_maxWidth=3E3);void 0===a.resize_maxHeight&&(a.resize_maxHeight=3E3);void 0===a.resize_minWidth&&(a.resize_minWidth=750);void 0===a.resize_minHeight&&(a.resize_minHeight=250);if(!1!==a.resize_enabled){var k=null,i=("both"==a.resize_dir||"horizontal"==a.resize_dir)&&a.resize_minWidth!=a.resize_maxWidth,m=("both"==a.resize_dir||"vertical"==
a.resize_dir)&&a.resize_minHeight!=a.resize_maxHeight,p=CKEDITOR.tools.addFunction(function(d){k||(k=b.getResizable());f=k.$.offsetWidth||0;g=k.$.offsetHeight||0;n=d.screenX;o=d.screenY;a.resize_minWidth>f&&(a.resize_minWidth=f);a.resize_minHeight>g&&(a.resize_minHeight=g);CKEDITOR.document.on("mousemove",c);CKEDITOR.document.on("mouseup",j);b.document&&(b.document.on("mousemove",c),b.document.on("mouseup",j));d.preventDefault&&d.preventDefault()});b.on("destroy",function(){CKEDITOR.tools.removeFunction(p)});
b.on("uiSpace",function(a){if("bottom"==a.data.space){var e="";i&&!m&&(e=" cke_resizer_horizontal");!i&&m&&(e=" cke_resizer_vertical");var c='<span id="'+q+'" class="cke_resizer'+e+" cke_resizer_"+h+'" title="'+CKEDITOR.tools.htmlEncode(b.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+p+', event)">'+("ltr"==h?"◢":"◣")+"</span>";"ltr"==h&&"ltr"==e?a.data.html+=c:a.data.html=c+a.data.html}},b,null,100);b.on("maximize",function(a){b.ui.space("resizer")[a.data==CKEDITOR.TRISTATE_ON?
"hide":"show"]()})}}});(function(){CKEDITOR.plugins.add("sourcearea",{init:function(a){function d(){var a=e&&this.equals(CKEDITOR.document.getActive());this.hide();this.setStyle("height",this.getParent().$.clientHeight+"px");this.setStyle("width",this.getParent().$.clientWidth+"px");this.show();a&&this.focus()}if(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var f=CKEDITOR.plugins.sourcearea;a.addMode("source",function(e){var b=a.ui.space("contents").getDocument().createElement("textarea");b.setStyles(CKEDITOR.tools.extend({width:CKEDITOR.env.ie7Compat?
"99%":"100%",height:"100%",resize:"none",outline:"none","text-align":"left"},CKEDITOR.tools.cssVendorPrefix("tab-size",a.config.sourceAreaTabSize||4)));b.setAttribute("dir","ltr");b.addClass("cke_source cke_reset cke_enable_context_menu");a.ui.space("contents").append(b);b=a.editable(new c(a,b));b.setData(a.getData(1));CKEDITOR.env.ie&&(b.attachListener(a,"resize",d,b),b.attachListener(CKEDITOR.document.getWindow(),"resize",d,b),CKEDITOR.tools.setTimeout(d,0,b));a.fire("ariaWidget",this);e()});a.addCommand("source",
f.commands.source);a.ui.addButton&&a.ui.addButton("Source",{label:a.lang.sourcearea.toolbar,command:"source",toolbar:"mode,10"});a.on("mode",function(){a.getCommand("source").setState("source"==a.mode?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)});var e=CKEDITOR.env.ie&&9==CKEDITOR.env.version}}});var c=CKEDITOR.tools.createClass({base:CKEDITOR.editable,proto:{setData:function(a){this.setValue(a);this.status="ready";this.editor.fire("dataReady")},getData:function(){return this.getValue()},insertHtml:function(){},
insertElement:function(){},insertText:function(){},setReadOnly:function(a){this[(a?"set":"remove")+"Attribute"]("readOnly","readonly")},detach:function(){c.baseProto.detach.call(this);this.clearCustomData();this.remove()}}})})();CKEDITOR.plugins.sourcearea={commands:{source:{modes:{wysiwyg:1,source:1},editorFocus:!1,readOnly:1,exec:function(c){"wysiwyg"==c.mode&&c.fire("saveSnapshot");c.getCommand("source").setState(CKEDITOR.TRISTATE_DISABLED);c.setMode("source"==c.mode?"wysiwyg":"source")},canUndo:!1}}};(function(){CKEDITOR.plugins.add("stylescombo",{requires:"richcombo",init:function(c){var j=c.config,g=c.lang.stylescombo,f={},i=[],k=[];c.on("stylesSet",function(b){if(b=b.data.styles){for(var a,h,d,e=0,l=b.length;e<l;e++)if(a=b[e],!(c.blockless&&a.element in CKEDITOR.dtd.$block)&&(h=a.name,a=new CKEDITOR.style(a),!c.filter.customConfig||c.filter.check(a)))a._name=h,a._.enterMode=j.enterMode,a._.type=d=a.assignedTo||a.type,a._.weight=e+1E3*(d==CKEDITOR.STYLE_OBJECT?1:d==CKEDITOR.STYLE_BLOCK?2:3),
f[h]=a,i.push(a),k.push(a);i.sort(function(a,b){return a._.weight-b._.weight})}});c.ui.addRichCombo("Styles",{label:g.label,title:g.panelTitle,toolbar:"styles,10",allowedContent:k,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(j.contentsCss),multiSelect:!0,attributes:{"aria-label":g.panelTitle}},init:function(){var b,a,c,d,e,f;e=0;for(f=i.length;e<f;e++)b=i[e],a=b._name,d=b._.type,d!=c&&(this.startGroup(g["panelTitle"+d]),c=d),this.add(a,b.type==CKEDITOR.STYLE_OBJECT?a:b.buildPreview(),a);this.commit()},
onClick:function(b){c.focus();c.fire("saveSnapshot");var b=f[b],a=c.elementPath();c[b.checkActive(a,c)?"removeStyle":"applyStyle"](b);c.fire("saveSnapshot")},onRender:function(){c.on("selectionChange",function(b){for(var a=this.getValue(),b=b.data.path.elements,h=0,d=b.length,e;h<d;h++){e=b[h];for(var g in f)if(f[g].checkElementRemovable(e,!0,c)){g!=a&&this.setValue(g);return}}this.setValue("")},this)},onOpen:function(){var b=c.getSelection().getSelectedElement(),b=c.elementPath(b),a=[0,0,0,0];this.showAll();
this.unmarkAll();for(var h in f){var d=f[h],e=d._.type;d.checkApplicable(b,c,c.activeFilter)?a[e]++:this.hideItem(h);d.checkActive(b,c)&&this.mark(h)}a[CKEDITOR.STYLE_BLOCK]||this.hideGroup(g["panelTitle"+CKEDITOR.STYLE_BLOCK]);a[CKEDITOR.STYLE_INLINE]||this.hideGroup(g["panelTitle"+CKEDITOR.STYLE_INLINE]);a[CKEDITOR.STYLE_OBJECT]||this.hideGroup(g["panelTitle"+CKEDITOR.STYLE_OBJECT])},refresh:function(){var b=c.elementPath();if(b){for(var a in f)if(f[a].checkApplicable(b,c,c.activeFilter))return;
this.setState(CKEDITOR.TRISTATE_DISABLED)}},reset:function(){f={};i=[]}})}})})();(function(){function i(c){return{editorFocus:!1,canUndo:!1,modes:{wysiwyg:1},exec:function(d){if(d.editable().hasFocus){var e=d.getSelection(),b;if(b=(new CKEDITOR.dom.elementPath(e.getCommonAncestor(),e.root)).contains({td:1,th:1},1)){var e=d.createRange(),a=CKEDITOR.tools.tryThese(function(){var a=b.getParent().$.cells[b.$.cellIndex+(c?-1:1)];a.parentNode.parentNode;return a},function(){var a=b.getParent(),a=a.getAscendant("table").$.rows[a.$.rowIndex+(c?-1:1)];return a.cells[c?a.cells.length-1:
0]});if(!a&&!c){for(var f=b.getAscendant("table").$,a=b.getParent().$.cells,f=new CKEDITOR.dom.element(f.insertRow(-1),d.document),g=0,h=a.length;g<h;g++)f.append((new CKEDITOR.dom.element(a[g],d.document)).clone(!1,!1)).appendBogus();e.moveToElementEditStart(f)}else if(a)a=new CKEDITOR.dom.element(a),e.moveToElementEditStart(a),(!e.checkStartOfBlock()||!e.checkEndOfBlock())&&e.selectNodeContents(a);else return!0;e.select(!0);return!0}}return!1}}}var h={editorFocus:!1,modes:{wysiwyg:1,source:1}},
g={exec:function(c){c.container.focusNext(!0,c.tabIndex)}},f={exec:function(c){c.container.focusPrevious(!0,c.tabIndex)}};CKEDITOR.plugins.add("tab",{init:function(c){for(var d=!1!==c.config.enableTabKeyTools,e=c.config.tabSpaces||0,b="";e--;)b+=" ";if(b)c.on("key",function(a){9==a.data.keyCode&&(c.insertText(b),a.cancel())});if(d)c.on("key",function(a){(9==a.data.keyCode&&c.execCommand("selectNextCell")||a.data.keyCode==CKEDITOR.SHIFT+9&&c.execCommand("selectPreviousCell"))&&a.cancel()});c.addCommand("blur",
CKEDITOR.tools.extend(g,h));c.addCommand("blurBack",CKEDITOR.tools.extend(f,h));c.addCommand("selectNextCell",i());c.addCommand("selectPreviousCell",i(!0))}})})();
CKEDITOR.dom.element.prototype.focusNext=function(i,h){var g=void 0===h?this.getTabIndex():h,f,c,d,e,b,a;if(0>=g)for(b=this.getNextSourceNode(i,CKEDITOR.NODE_ELEMENT);b;){if(b.isVisible()&&0===b.getTabIndex()){d=b;break}b=b.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT)}else for(b=this.getDocument().getBody().getFirst();b=b.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!f)if(!c&&b.equals(this)){if(c=!0,i){if(!(b=b.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;f=1}}else c&&!this.contains(b)&&
(f=1);if(b.isVisible()&&!(0>(a=b.getTabIndex()))){if(f&&a==g){d=b;break}a>g&&(!d||!e||a<e)?(d=b,e=a):!d&&0===a&&(d=b,e=a)}}d&&d.focus()};
CKEDITOR.dom.element.prototype.focusPrevious=function(i,h){for(var g=void 0===h?this.getTabIndex():h,f,c,d,e=0,b,a=this.getDocument().getBody().getLast();a=a.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!f)if(!c&&a.equals(this)){if(c=!0,i){if(!(a=a.getPreviousSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;f=1}}else c&&!this.contains(a)&&(f=1);if(a.isVisible()&&!(0>(b=a.getTabIndex())))if(0>=g){if(f&&0===b){d=a;break}b>e&&(d=a,e=b)}else{if(f&&b==g){d=a;break}if(b<g&&(!d||b>e))d=a,e=b}}d&&d.focus()};CKEDITOR.plugins.add("table",{requires:"dialog",init:function(a){function e(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,f){this.setState(f.contains("table",1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}if(!a.blockless){var c=a.lang.table;a.addCommand("table",new CKEDITOR.dialogCommand("table",{context:"table",allowedContent:"table{width,height}[align,border,cellpadding,cellspacing,summary];caption tbody thead tfoot;th td tr[scope];"+(a.plugins.dialogadvtab?
"table"+a.plugins.dialogadvtab.allowedContent():""),requiredContent:"table",contentTransformations:[["table{width}: sizeToStyle","table[width]: sizeToAttribute"]]}));a.addCommand("tableProperties",new CKEDITOR.dialogCommand("tableProperties",e()));a.addCommand("tableDelete",e({exec:function(a){var b=a.elementPath().contains("table",1);if(b){var d=b.getParent(),c=a.editable();1==d.getChildCount()&&(!d.is("td","th")&&!d.equals(c))&&(b=d);a=a.createRange();a.moveToPosition(b,CKEDITOR.POSITION_BEFORE_START);
b.remove();a.select()}}}));a.ui.addButton&&a.ui.addButton("Table",{label:c.toolbar,command:"table",toolbar:"insert,30"});CKEDITOR.dialog.add("table",this.path+"dialogs/table.js");CKEDITOR.dialog.add("tableProperties",this.path+"dialogs/table.js");a.addMenuItems&&a.addMenuItems({table:{label:c.menu,command:"tableProperties",group:"table",order:5},tabledelete:{label:c.deleteTable,command:"tableDelete",group:"table",order:1}});a.on("doubleclick",function(a){a.data.element.is("table")&&(a.data.dialog=
"tableProperties")});a.contextMenu&&a.contextMenu.addListener(function(){return{tabledelete:CKEDITOR.TRISTATE_OFF,table:CKEDITOR.TRISTATE_OFF}})}}});(function(){function p(e){function d(a){!(0<b.length)&&(a.type==CKEDITOR.NODE_ELEMENT&&y.test(a.getName())&&!a.getCustomData("selected_cell"))&&(CKEDITOR.dom.element.setMarker(c,a,"selected_cell",!0),b.push(a))}for(var e=e.getRanges(),b=[],c={},a=0;a<e.length;a++){var f=e[a];if(f.collapsed)f=f.getCommonAncestor(),(f=f.getAscendant("td",!0)||f.getAscendant("th",!0))&&b.push(f);else{var f=new CKEDITOR.dom.walker(f),g;for(f.guard=d;g=f.next();)if(g.type!=CKEDITOR.NODE_ELEMENT||!g.is(CKEDITOR.dtd.table))if((g=
g.getAscendant("td",!0)||g.getAscendant("th",!0))&&!g.getCustomData("selected_cell"))CKEDITOR.dom.element.setMarker(c,g,"selected_cell",!0),b.push(g)}}CKEDITOR.dom.element.clearAllMarkers(c);return b}function o(e,d){for(var b=p(e),c=b[0],a=c.getAscendant("table"),c=c.getDocument(),f=b[0].getParent(),g=f.$.rowIndex,b=b[b.length-1],h=b.getParent().$.rowIndex+b.$.rowSpan-1,b=new CKEDITOR.dom.element(a.$.rows[h]),g=d?g:h,f=d?f:b,b=CKEDITOR.tools.buildTableMap(a),a=b[g],g=d?b[g-1]:b[g+1],b=b[0].length,
c=c.createElement("tr"),h=0;a[h]&&h<b;h++){var i;1<a[h].rowSpan&&g&&a[h]==g[h]?(i=a[h],i.rowSpan+=1):(i=(new CKEDITOR.dom.element(a[h])).clone(),i.removeAttribute("rowSpan"),i.appendBogus(),c.append(i),i=i.$);h+=i.colSpan-1}d?c.insertBefore(f):c.insertAfter(f)}function q(e){if(e instanceof CKEDITOR.dom.selection){for(var d=p(e),b=d[0].getAscendant("table"),c=CKEDITOR.tools.buildTableMap(b),e=d[0].getParent().$.rowIndex,d=d[d.length-1],a=d.getParent().$.rowIndex+d.$.rowSpan-1,d=[],f=e;f<=a;f++){for(var g=
c[f],h=new CKEDITOR.dom.element(b.$.rows[f]),i=0;i<g.length;i++){var j=new CKEDITOR.dom.element(g[i]),l=j.getParent().$.rowIndex;1==j.$.rowSpan?j.remove():(j.$.rowSpan-=1,l==f&&(l=c[f+1],l[i-1]?j.insertAfter(new CKEDITOR.dom.element(l[i-1])):(new CKEDITOR.dom.element(b.$.rows[f+1])).append(j,1)));i+=j.$.colSpan-1}d.push(h)}c=b.$.rows;b=new CKEDITOR.dom.element(c[a+1]||(0<e?c[e-1]:null)||b.$.parentNode);for(f=d.length;0<=f;f--)q(d[f]);return b}e instanceof CKEDITOR.dom.element&&(b=e.getAscendant("table"),
1==b.$.rows.length?b.remove():e.remove());return null}function r(e,d){for(var b=d?Infinity:0,c=0;c<e.length;c++){var a;a=e[c];for(var f=d,g=a.getParent().$.cells,h=0,i=0;i<g.length;i++){var j=g[i],h=h+(f?1:j.colSpan);if(j==a.$)break}a=h-1;if(d?a<b:a>b)b=a}return b}function k(e,d){for(var b=p(e),c=b[0].getAscendant("table"),a=r(b,1),b=r(b),a=d?a:b,f=CKEDITOR.tools.buildTableMap(c),c=[],b=[],g=f.length,h=0;h<g;h++)c.push(f[h][a]),b.push(d?f[h][a-1]:f[h][a+1]);for(h=0;h<g;h++)c[h]&&(1<c[h].colSpan&&
b[h]==c[h]?(a=c[h],a.colSpan+=1):(a=(new CKEDITOR.dom.element(c[h])).clone(),a.removeAttribute("colSpan"),a.appendBogus(),a[d?"insertBefore":"insertAfter"].call(a,new CKEDITOR.dom.element(c[h])),a=a.$),h+=a.rowSpan-1)}function u(e,d){var b=e.getStartElement();if(b=b.getAscendant("td",1)||b.getAscendant("th",1)){var c=b.clone();c.appendBogus();d?c.insertBefore(b):c.insertAfter(b)}}function t(e){if(e instanceof CKEDITOR.dom.selection){var e=p(e),d=e[0]&&e[0].getAscendant("table"),b;a:{var c=0;b=e.length-
1;for(var a={},f,g;f=e[c++];)CKEDITOR.dom.element.setMarker(a,f,"delete_cell",!0);for(c=0;f=e[c++];)if((g=f.getPrevious())&&!g.getCustomData("delete_cell")||(g=f.getNext())&&!g.getCustomData("delete_cell")){CKEDITOR.dom.element.clearAllMarkers(a);b=g;break a}CKEDITOR.dom.element.clearAllMarkers(a);g=e[0].getParent();(g=g.getPrevious())?b=g.getLast():(g=e[b].getParent(),b=(g=g.getNext())?g.getChild(0):null)}for(g=e.length-1;0<=g;g--)t(e[g]);b?m(b,!0):d&&d.remove()}else e instanceof CKEDITOR.dom.element&&
(d=e.getParent(),1==d.getChildCount()?d.remove():e.remove())}function m(e,d){var b=e.getDocument(),c=CKEDITOR.document;CKEDITOR.env.ie&&10==CKEDITOR.env.version&&(c.focus(),b.focus());b=new CKEDITOR.dom.range(b);if(!b["moveToElementEdit"+(d?"End":"Start")](e))b.selectNodeContents(e),b.collapse(d?!1:!0);b.select(!0)}function v(e,d,b){e=e[d];if("undefined"==typeof b)return e;for(d=0;e&&d<e.length;d++){if(b.is&&e[d]==b.$)return d;if(d==b)return new CKEDITOR.dom.element(e[d])}return b.is?-1:null}function s(e,
d,b){var c=p(e),a;if((d?1!=c.length:2>c.length)||(a=e.getCommonAncestor())&&a.type==CKEDITOR.NODE_ELEMENT&&a.is("table"))return!1;var f,e=c[0];a=e.getAscendant("table");var g=CKEDITOR.tools.buildTableMap(a),h=g.length,i=g[0].length,j=e.getParent().$.rowIndex,l=v(g,j,e);if(d){var n;try{var m=parseInt(e.getAttribute("rowspan"),10)||1;f=parseInt(e.getAttribute("colspan"),10)||1;n=g["up"==d?j-m:"down"==d?j+m:j]["left"==d?l-f:"right"==d?l+f:l]}catch(z){return!1}if(!n||e.$==n)return!1;c["up"==d||"left"==
d?"unshift":"push"](new CKEDITOR.dom.element(n))}for(var d=e.getDocument(),o=j,m=n=0,q=!b&&new CKEDITOR.dom.documentFragment(d),s=0,d=0;d<c.length;d++){f=c[d];var k=f.getParent(),t=f.getFirst(),r=f.$.colSpan,u=f.$.rowSpan,k=k.$.rowIndex,w=v(g,k,f),s=s+r*u,m=Math.max(m,w-l+r);n=Math.max(n,k-j+u);if(!b){r=f;(u=r.getBogus())&&u.remove();r.trim();if(f.getChildren().count()){if(k!=o&&t&&(!t.isBlockBoundary||!t.isBlockBoundary({br:1})))(o=q.getLast(CKEDITOR.dom.walker.whitespaces(!0)))&&(!o.is||!o.is("br"))&&
q.append("br");f.moveChildren(q)}d?f.remove():f.setHtml("")}o=k}if(b)return n*m==s;q.moveChildren(e);e.appendBogus();m>=i?e.removeAttribute("rowSpan"):e.$.rowSpan=n;n>=h?e.removeAttribute("colSpan"):e.$.colSpan=m;b=new CKEDITOR.dom.nodeList(a.$.rows);c=b.count();for(d=c-1;0<=d;d--)a=b.getItem(d),a.$.cells.length||(a.remove(),c++);return e}function w(e,d){var b=p(e);if(1<b.length)return!1;if(d)return!0;var b=b[0],c=b.getParent(),a=c.getAscendant("table"),f=CKEDITOR.tools.buildTableMap(a),g=c.$.rowIndex,
h=v(f,g,b),i=b.$.rowSpan,j;if(1<i){j=Math.ceil(i/2);for(var i=Math.floor(i/2),c=g+j,a=new CKEDITOR.dom.element(a.$.rows[c]),f=v(f,c),l,c=b.clone(),g=0;g<f.length;g++)if(l=f[g],l.parentNode==a.$&&g>h){c.insertBefore(new CKEDITOR.dom.element(l));break}else l=null;l||a.append(c)}else{i=j=1;a=c.clone();a.insertAfter(c);a.append(c=b.clone());l=v(f,g);for(h=0;h<l.length;h++)l[h].rowSpan++}c.appendBogus();b.$.rowSpan=j;c.$.rowSpan=i;1==j&&b.removeAttribute("rowSpan");1==i&&c.removeAttribute("rowSpan");return c}
function x(e,d){var b=p(e);if(1<b.length)return!1;if(d)return!0;var b=b[0],c=b.getParent(),a=c.getAscendant("table"),a=CKEDITOR.tools.buildTableMap(a),f=v(a,c.$.rowIndex,b),g=b.$.colSpan;if(1<g)c=Math.ceil(g/2),g=Math.floor(g/2);else{for(var g=c=1,h=[],i=0;i<a.length;i++){var j=a[i];h.push(j[f]);1<j[f].rowSpan&&(i+=j[f].rowSpan-1)}for(a=0;a<h.length;a++)h[a].colSpan++}a=b.clone();a.insertAfter(b);a.appendBogus();b.$.colSpan=c;a.$.colSpan=g;1==c&&b.removeAttribute("colSpan");1==g&&a.removeAttribute("colSpan");
return a}var y=/^(?:td|th)$/;CKEDITOR.plugins.tabletools={requires:"table,dialog,contextmenu",init:function(e){function d(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains({td:1,th:1},1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}function b(a,b){var c=e.addCommand(a,b);e.addFeature(c)}var c=e.lang.table;b("cellProperties",new CKEDITOR.dialogCommand("cellProperties",d({allowedContent:"td th{width,height,border-color,background-color,white-space,vertical-align,text-align}[colspan,rowspan]",
requiredContent:"table"})));CKEDITOR.dialog.add("cellProperties",this.path+"dialogs/tableCell.js");b("rowDelete",d({requiredContent:"table",exec:function(a){a=a.getSelection();m(q(a))}}));b("rowInsertBefore",d({requiredContent:"table",exec:function(a){a=a.getSelection();o(a,!0)}}));b("rowInsertAfter",d({requiredContent:"table",exec:function(a){a=a.getSelection();o(a)}}));b("columnDelete",d({requiredContent:"table",exec:function(a){for(var a=a.getSelection(),a=p(a),b=a[0],c=a[a.length-1],a=b.getAscendant("table"),
d=CKEDITOR.tools.buildTableMap(a),e,j,l=[],n=0,o=d.length;n<o;n++)for(var k=0,q=d[n].length;k<q;k++)d[n][k]==b.$&&(e=k),d[n][k]==c.$&&(j=k);for(n=e;n<=j;n++)for(k=0;k<d.length;k++)c=d[k],b=new CKEDITOR.dom.element(a.$.rows[k]),c=new CKEDITOR.dom.element(c[n]),c.$&&(1==c.$.colSpan?c.remove():c.$.colSpan-=1,k+=c.$.rowSpan-1,b.$.cells.length||l.push(b));j=a.$.rows[0]&&a.$.rows[0].cells;e=new CKEDITOR.dom.element(j[e]||(e?j[e-1]:a.$.parentNode));l.length==o&&a.remove();e&&m(e,!0)}}));b("columnInsertBefore",
d({requiredContent:"table",exec:function(a){a=a.getSelection();k(a,!0)}}));b("columnInsertAfter",d({requiredContent:"table",exec:function(a){a=a.getSelection();k(a)}}));b("cellDelete",d({requiredContent:"table",exec:function(a){a=a.getSelection();t(a)}}));b("cellMerge",d({allowedContent:"td[colspan,rowspan]",requiredContent:"td[colspan,rowspan]",exec:function(a){m(s(a.getSelection()),!0)}}));b("cellMergeRight",d({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){m(s(a.getSelection(),
"right"),!0)}}));b("cellMergeDown",d({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){m(s(a.getSelection(),"down"),!0)}}));b("cellVerticalSplit",d({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){m(w(a.getSelection()))}}));b("cellHorizontalSplit",d({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){m(x(a.getSelection()))}}));b("cellInsertBefore",d({requiredContent:"table",exec:function(a){a=a.getSelection();u(a,!0)}}));
b("cellInsertAfter",d({requiredContent:"table",exec:function(a){a=a.getSelection();u(a)}}));e.addMenuItems&&e.addMenuItems({tablecell:{label:c.cell.menu,group:"tablecell",order:1,getItems:function(){var a=e.getSelection(),b=p(a);return{tablecell_insertBefore:CKEDITOR.TRISTATE_OFF,tablecell_insertAfter:CKEDITOR.TRISTATE_OFF,tablecell_delete:CKEDITOR.TRISTATE_OFF,tablecell_merge:s(a,null,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_merge_right:s(a,"right",!0)?CKEDITOR.TRISTATE_OFF:
CKEDITOR.TRISTATE_DISABLED,tablecell_merge_down:s(a,"down",!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_vertical:w(a,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_horizontal:x(a,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_properties:0<b.length?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED}}},tablecell_insertBefore:{label:c.cell.insertBefore,group:"tablecell",command:"cellInsertBefore",order:5},tablecell_insertAfter:{label:c.cell.insertAfter,
group:"tablecell",command:"cellInsertAfter",order:10},tablecell_delete:{label:c.cell.deleteCell,group:"tablecell",command:"cellDelete",order:15},tablecell_merge:{label:c.cell.merge,group:"tablecell",command:"cellMerge",order:16},tablecell_merge_right:{label:c.cell.mergeRight,group:"tablecell",command:"cellMergeRight",order:17},tablecell_merge_down:{label:c.cell.mergeDown,group:"tablecell",command:"cellMergeDown",order:18},tablecell_split_horizontal:{label:c.cell.splitHorizontal,group:"tablecell",
command:"cellHorizontalSplit",order:19},tablecell_split_vertical:{label:c.cell.splitVertical,group:"tablecell",command:"cellVerticalSplit",order:20},tablecell_properties:{label:c.cell.title,group:"tablecellproperties",command:"cellProperties",order:21},tablerow:{label:c.row.menu,group:"tablerow",order:1,getItems:function(){return{tablerow_insertBefore:CKEDITOR.TRISTATE_OFF,tablerow_insertAfter:CKEDITOR.TRISTATE_OFF,tablerow_delete:CKEDITOR.TRISTATE_OFF}}},tablerow_insertBefore:{label:c.row.insertBefore,
group:"tablerow",command:"rowInsertBefore",order:5},tablerow_insertAfter:{label:c.row.insertAfter,group:"tablerow",command:"rowInsertAfter",order:10},tablerow_delete:{label:c.row.deleteRow,group:"tablerow",command:"rowDelete",order:15},tablecolumn:{label:c.column.menu,group:"tablecolumn",order:1,getItems:function(){return{tablecolumn_insertBefore:CKEDITOR.TRISTATE_OFF,tablecolumn_insertAfter:CKEDITOR.TRISTATE_OFF,tablecolumn_delete:CKEDITOR.TRISTATE_OFF}}},tablecolumn_insertBefore:{label:c.column.insertBefore,
group:"tablecolumn",command:"columnInsertBefore",order:5},tablecolumn_insertAfter:{label:c.column.insertAfter,group:"tablecolumn",command:"columnInsertAfter",order:10},tablecolumn_delete:{label:c.column.deleteColumn,group:"tablecolumn",command:"columnDelete",order:15}});e.contextMenu&&e.contextMenu.addListener(function(a,b,c){return(a=c.contains({td:1,th:1},1))&&!a.isReadOnly()?{tablecell:CKEDITOR.TRISTATE_OFF,tablerow:CKEDITOR.TRISTATE_OFF,tablecolumn:CKEDITOR.TRISTATE_OFF}:null})},getSelectedCells:p};
CKEDITOR.plugins.add("tabletools",CKEDITOR.plugins.tabletools)})();CKEDITOR.tools.buildTableMap=function(p){for(var p=p.$.rows,o=-1,q=[],r=0;r<p.length;r++){o++;!q[o]&&(q[o]=[]);for(var k=-1,u=0;u<p[r].cells.length;u++){var t=p[r].cells[u];for(k++;q[o][k];)k++;for(var m=isNaN(t.colSpan)?1:t.colSpan,t=isNaN(t.rowSpan)?1:t.rowSpan,v=0;v<t;v++){q[o+v]||(q[o+v]=[]);for(var s=0;s<m;s++)q[o+v][k+s]=p[r].cells[u]}k+=m-1}}return q};(function(){function w(a){function d(){for(var b=g(),e=CKEDITOR.tools.clone(a.config.toolbarGroups)||n(a),f=0;f<e.length;f++){var k=e[f];if("/"!=k){"string"==typeof k&&(k=e[f]={name:k});var i,d=k.groups;if(d)for(var h=0;h<d.length;h++)i=d[h],(i=b[i])&&c(k,i);(i=b[k.name])&&c(k,i)}}return e}function g(){var b={},c,f,e;for(c in a.ui.items)f=a.ui.items[c],e=f.toolbar||"others",e=e.split(","),f=e[0],e=parseInt(e[1]||-1,10),b[f]||(b[f]=[]),b[f].push({name:c,order:e});for(f in b)b[f]=b[f].sort(function(b,
a){return b.order==a.order?0:0>a.order?-1:0>b.order?1:b.order<a.order?-1:1});return b}function c(c,e){if(e.length){c.items?c.items.push(a.ui.create("-")):c.items=[];for(var f;f=e.shift();)if(f="string"==typeof f?f:f.name,!b||-1==CKEDITOR.tools.indexOf(b,f))(f=a.ui.create(f))&&a.addFeature(f)&&c.items.push(f)}}function h(b){var a=[],e,d,h;for(e=0;e<b.length;++e)d=b[e],h={},"/"==d?a.push(d):CKEDITOR.tools.isArray(d)?(c(h,CKEDITOR.tools.clone(d)),a.push(h)):d.items&&(c(h,CKEDITOR.tools.clone(d.items)),
h.name=d.name,a.push(h));return a}var b=a.config.removeButtons,b=b&&b.split(","),e=a.config.toolbar;"string"==typeof e&&(e=a.config["toolbar_"+e]);return a.toolbar=e?h(e):d()}function n(a){return a._.toolbarGroups||(a._.toolbarGroups=[{name:"document",groups:["mode","document","doctools"]},{name:"clipboard",groups:["clipboard","undo"]},{name:"editing",groups:["find","selection","spellchecker"]},{name:"forms"},"/",{name:"basicstyles",groups:["basicstyles","cleanup"]},{name:"paragraph",groups:["list",
"indent","blocks","align","bidi"]},{name:"links"},{name:"insert"},"/",{name:"styles"},{name:"colors"},{name:"tools"},{name:"others"},{name:"about"}])}var u=function(){this.toolbars=[];this.focusCommandExecuted=!1};u.prototype.focus=function(){for(var a=0,d;d=this.toolbars[a++];)for(var g=0,c;c=d.items[g++];)if(c.focus){c.focus();return}};var x={modes:{wysiwyg:1,source:1},readOnly:1,exec:function(a){a.toolbox&&(a.toolbox.focusCommandExecuted=!0,CKEDITOR.env.ie||CKEDITOR.env.air?setTimeout(function(){a.toolbox.focus()},
100):a.toolbox.focus())}};CKEDITOR.plugins.add("toolbar",{requires:"button",init:function(a){var d,g=function(c,h){var b,e="rtl"==a.lang.dir,j=a.config.toolbarGroupCycling,o=e?37:39,e=e?39:37,j=void 0===j||j;switch(h){case 9:case CKEDITOR.SHIFT+9:for(;!b||!b.items.length;)if(b=9==h?(b?b.next:c.toolbar.next)||a.toolbox.toolbars[0]:(b?b.previous:c.toolbar.previous)||a.toolbox.toolbars[a.toolbox.toolbars.length-1],b.items.length)for(c=b.items[d?b.items.length-1:0];c&&!c.focus;)(c=d?c.previous:c.next)||
(b=0);c&&c.focus();return!1;case o:b=c;do b=b.next,!b&&j&&(b=c.toolbar.items[0]);while(b&&!b.focus);b?b.focus():g(c,9);return!1;case 40:return c.button&&c.button.hasArrow?(a.once("panelShow",function(b){b.data._.panel._.currentBlock.onKeyDown(40)}),c.execute()):g(c,40==h?o:e),!1;case e:case 38:b=c;do b=b.previous,!b&&j&&(b=c.toolbar.items[c.toolbar.items.length-1]);while(b&&!b.focus);b?b.focus():(d=1,g(c,CKEDITOR.SHIFT+9),d=0);return!1;case 27:return a.focus(),!1;case 13:case 32:return c.execute(),
!1}return!0};a.on("uiSpace",function(c){if(c.data.space==a.config.toolbarLocation){c.removeListener();a.toolbox=new u;var d=CKEDITOR.tools.getNextId(),b=['<span id="',d,'" class="cke_voice_label">',a.lang.toolbar.toolbars,"</span>",'<span id="'+a.ui.spaceId("toolbox")+'" class="cke_toolbox" role="group" aria-labelledby="',d,'" onmousedown="return false;">'],d=!1!==a.config.toolbarStartupExpanded,e,j;a.config.toolbarCanCollapse&&a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE&&b.push('<span class="cke_toolbox_main"'+
(d?">":' style="display:none">'));for(var o=a.toolbox.toolbars,f=w(a),k=0;k<f.length;k++){var i,l=0,r,m=f[k],s;if(m)if(e&&(b.push("</span>"),j=e=0),"/"===m)b.push('<span class="cke_toolbar_break"></span>');else{s=m.items||m;for(var t=0;t<s.length;t++){var p=s[t],n;if(p)if(p.type==CKEDITOR.UI_SEPARATOR)j=e&&p;else{n=!1!==p.canGroup;if(!l){i=CKEDITOR.tools.getNextId();l={id:i,items:[]};r=m.name&&(a.lang.toolbar.toolbarGroups[m.name]||m.name);b.push('<span id="',i,'" class="cke_toolbar"',r?' aria-labelledby="'+
i+'_label"':"",' role="toolbar">');r&&b.push('<span id="',i,'_label" class="cke_voice_label">',r,"</span>");b.push('<span class="cke_toolbar_start"></span>');var q=o.push(l)-1;0<q&&(l.previous=o[q-1],l.previous.next=l)}n?e||(b.push('<span class="cke_toolgroup" role="presentation">'),e=1):e&&(b.push("</span>"),e=0);i=function(c){c=c.render(a,b);q=l.items.push(c)-1;if(q>0){c.previous=l.items[q-1];c.previous.next=c}c.toolbar=l;c.onkey=g;c.onfocus=function(){a.toolbox.focusCommandExecuted||a.focus()}};
j&&(i(j),j=0);i(p)}}e&&(b.push("</span>"),j=e=0);l&&b.push('<span class="cke_toolbar_end"></span></span>')}}a.config.toolbarCanCollapse&&b.push("</span>");if(a.config.toolbarCanCollapse&&a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var v=CKEDITOR.tools.addFunction(function(){a.execCommand("toolbarCollapse")});a.on("destroy",function(){CKEDITOR.tools.removeFunction(v)});a.addCommand("toolbarCollapse",{readOnly:1,exec:function(b){var a=b.ui.space("toolbar_collapser"),c=a.getPrevious(),e=b.ui.space("contents"),
d=c.getParent(),f=parseInt(e.$.style.height,10),h=d.$.offsetHeight,g=a.hasClass("cke_toolbox_collapser_min");g?(c.show(),a.removeClass("cke_toolbox_collapser_min"),a.setAttribute("title",b.lang.toolbar.toolbarCollapse)):(c.hide(),a.addClass("cke_toolbox_collapser_min"),a.setAttribute("title",b.lang.toolbar.toolbarExpand));a.getFirst().setText(g?"▲":"◀");e.setStyle("height",f-(d.$.offsetHeight-h)+"px");b.fire("resize")},modes:{wysiwyg:1,source:1}});a.setKeystroke(CKEDITOR.ALT+(CKEDITOR.env.ie||CKEDITOR.env.webkit?
189:109),"toolbarCollapse");b.push('<a title="'+(d?a.lang.toolbar.toolbarCollapse:a.lang.toolbar.toolbarExpand)+'" id="'+a.ui.spaceId("toolbar_collapser")+'" tabIndex="-1" class="cke_toolbox_collapser');d||b.push(" cke_toolbox_collapser_min");b.push('" onclick="CKEDITOR.tools.callFunction('+v+')">','<span class="cke_arrow">&#9650;</span>',"</a>")}b.push("</span>");c.data.html+=b.join("")}});a.on("destroy",function(){if(this.toolbox){var a,d=0,b,e,g;for(a=this.toolbox.toolbars;d<a.length;d++){e=a[d].items;
for(b=0;b<e.length;b++)g=e[b],g.clickFn&&CKEDITOR.tools.removeFunction(g.clickFn),g.keyDownFn&&CKEDITOR.tools.removeFunction(g.keyDownFn)}}});a.on("uiReady",function(){var c=a.ui.space("toolbox");c&&a.focusManager.add(c,1)});a.addCommand("toolbarFocus",x);a.setKeystroke(CKEDITOR.ALT+121,"toolbarFocus");a.ui.add("-",CKEDITOR.UI_SEPARATOR,{});a.ui.addHandler(CKEDITOR.UI_SEPARATOR,{create:function(){return{render:function(a,d){d.push('<span class="cke_toolbar_separator" role="separator"></span>');return{}}}}})}});
CKEDITOR.ui.prototype.addToolbarGroup=function(a,d,g){var c=n(this.editor),h=0===d,b={name:a};if(g){if(g=CKEDITOR.tools.search(c,function(a){return a.name==g})){!g.groups&&(g.groups=[]);if(d&&(d=CKEDITOR.tools.indexOf(g.groups,d),0<=d)){g.groups.splice(d+1,0,a);return}h?g.groups.splice(0,0,a):g.groups.push(a);return}d=null}d&&(d=CKEDITOR.tools.indexOf(c,function(a){return a.name==d}));h?c.splice(0,0,a):"number"==typeof d?c.splice(d+1,0,b):c.push(a)}})();CKEDITOR.UI_SEPARATOR="separator";
CKEDITOR.config.toolbarLocation="top";(function(){var g=[CKEDITOR.CTRL+90,CKEDITOR.CTRL+89,CKEDITOR.CTRL+CKEDITOR.SHIFT+90],l={8:1,46:1};CKEDITOR.plugins.add("undo",{init:function(a){function b(a){d.enabled&&!1!==a.data.command.canUndo&&d.save()}function c(){d.enabled=a.readOnly?!1:"wysiwyg"==a.mode;d.onChange()}var d=a.undoManager=new e(a),j=d.editingHandler=new i(d),f=a.addCommand("undo",{exec:function(){d.undo()&&(a.selectionChange(),this.fire("afterUndo"))},startDisabled:!0,canUndo:!1}),h=a.addCommand("redo",{exec:function(){d.redo()&&
(a.selectionChange(),this.fire("afterRedo"))},startDisabled:!0,canUndo:!1});a.setKeystroke([[g[0],"undo"],[g[1],"redo"],[g[2],"redo"]]);d.onChange=function(){f.setState(d.undoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);h.setState(d.redoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)};a.on("beforeCommandExec",b);a.on("afterCommandExec",b);a.on("saveSnapshot",function(a){d.save(a.data&&a.data.contentOnly)});a.on("contentDom",j.attachListeners,j);a.on("instanceReady",function(){a.fire("saveSnapshot")});
a.on("beforeModeUnload",function(){"wysiwyg"==a.mode&&d.save(!0)});a.on("mode",c);a.on("readOnly",c);a.ui.addButton&&(a.ui.addButton("Undo",{label:a.lang.undo.undo,command:"undo",toolbar:"undo,10"}),a.ui.addButton("Redo",{label:a.lang.undo.redo,command:"redo",toolbar:"undo,20"}));a.resetUndo=function(){d.reset();a.fire("saveSnapshot")};a.on("updateSnapshot",function(){d.currentImage&&d.update()});a.on("lockSnapshot",function(a){a=a.data;d.lock(a&&a.dontUpdate,a&&a.forceUpdate)});a.on("unlockSnapshot",
d.unlock,d)}});CKEDITOR.plugins.undo={};var e=CKEDITOR.plugins.undo.UndoManager=function(a){this.strokesRecorded=[0,0];this.locked=null;this.previousKeyGroup=-1;this.limit=a.config.undoStackSize||20;this.strokesLimit=25;this.editor=a;this.reset()};e.prototype={type:function(a,b){var c=e.getKeyGroup(a),d=this.strokesRecorded[c]+1,b=b||d>=this.strokesLimit;this.typing||(this.hasUndo=this.typing=!0,this.hasRedo=!1,this.onChange());b?(d=0,this.editor.fire("saveSnapshot")):this.editor.fire("change");this.strokesRecorded[c]=
d;this.previousKeyGroup=c},keyGroupChanged:function(a){return e.getKeyGroup(a)!=this.previousKeyGroup},reset:function(){this.snapshots=[];this.index=-1;this.currentImage=null;this.hasRedo=this.hasUndo=!1;this.locked=null;this.resetType()},resetType:function(){this.strokesRecorded=[0,0];this.typing=!1;this.previousKeyGroup=-1},refreshState:function(){this.hasUndo=!!this.getNextImage(!0);this.hasRedo=!!this.getNextImage(!1);this.resetType();this.onChange()},save:function(a,b,c){var d=this.editor;if(this.locked||
"ready"!=d.status||"wysiwyg"!=d.mode)return!1;var e=d.editable();if(!e||"ready"!=e.status)return!1;e=this.snapshots;b||(b=new f(d));if(!1===b.contents)return!1;if(this.currentImage)if(b.equalsContent(this.currentImage)){if(a||b.equalsSelection(this.currentImage))return!1}else!1!==c&&d.fire("change");e.splice(this.index+1,e.length-this.index-1);e.length==this.limit&&e.shift();this.index=e.push(b)-1;this.currentImage=b;!1!==c&&this.refreshState();return!0},restoreImage:function(a){var b=this.editor,
c;a.bookmarks&&(b.focus(),c=b.getSelection());this.locked={level:999};this.editor.loadSnapshot(a.contents);a.bookmarks?c.selectBookmarks(a.bookmarks):CKEDITOR.env.ie&&(c=this.editor.document.getBody().$.createTextRange(),c.collapse(!0),c.select());this.locked=null;this.index=a.index;this.currentImage=this.snapshots[this.index];this.update();this.refreshState();b.fire("change")},getNextImage:function(a){var b=this.snapshots,c=this.currentImage,d;if(c)if(a)for(d=this.index-1;0<=d;d--){if(a=b[d],!c.equalsContent(a))return a.index=
d,a}else for(d=this.index+1;d<b.length;d++)if(a=b[d],!c.equalsContent(a))return a.index=d,a;return null},redoable:function(){return this.enabled&&this.hasRedo},undoable:function(){return this.enabled&&this.hasUndo},undo:function(){if(this.undoable()){this.save(!0);var a=this.getNextImage(!0);if(a)return this.restoreImage(a),!0}return!1},redo:function(){if(this.redoable()&&(this.save(!0),this.redoable())){var a=this.getNextImage(!1);if(a)return this.restoreImage(a),!0}return!1},update:function(a){if(!this.locked){a||
(a=new f(this.editor));for(var b=this.index,c=this.snapshots;0<b&&this.currentImage.equalsContent(c[b-1]);)b-=1;c.splice(b,this.index-b+1,a);this.index=b;this.currentImage=a}},updateSelection:function(a){if(!this.snapshots.length)return!1;var b=this.snapshots,c=b[b.length-1];return c.equalsContent(a)&&!c.equalsSelection(a)?(this.currentImage=b[b.length-1]=a,!0):!1},lock:function(a,b){if(this.locked)this.locked.level++;else if(a)this.locked={level:1};else{var c=null;if(b)c=!0;else{var d=new f(this.editor,
!0);this.currentImage&&this.currentImage.equalsContent(d)&&(c=d)}this.locked={update:c,level:1}}},unlock:function(){if(this.locked&&!--this.locked.level){var a=this.locked.update;this.locked=null;if(!0===a)this.update();else if(a){var b=new f(this.editor,!0);a.equalsContent(b)||this.update()}}}};e.navigationKeyCodes={37:1,38:1,39:1,40:1,36:1,35:1,33:1,34:1};e.keyGroups={PRINTABLE:0,FUNCTIONAL:1};e.isNavigationKey=function(a){return!!e.navigationKeyCodes[a]};e.getKeyGroup=function(a){var b=e.keyGroups;
return l[a]?b.FUNCTIONAL:b.PRINTABLE};e.getOppositeKeyGroup=function(a){var b=e.keyGroups;return a==b.FUNCTIONAL?b.PRINTABLE:b.FUNCTIONAL};e.ieFunctionalKeysBug=function(a){return CKEDITOR.env.ie&&e.getKeyGroup(a)==e.keyGroups.FUNCTIONAL};var f=CKEDITOR.plugins.undo.Image=function(a,b){this.editor=a;a.fire("beforeUndoImage");var c=a.getSnapshot();CKEDITOR.env.ie&&c&&(c=c.replace(/\s+data-cke-expando=".*?"/g,""));this.contents=c;b||(this.bookmarks=(c=c&&a.getSelection())&&c.createBookmarks2(!0));a.fire("afterUndoImage")},
h=/\b(?:href|src|name)="[^"]*?"/gi;f.prototype={equalsContent:function(a){var b=this.contents,a=a.contents;if(CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks))b=b.replace(h,""),a=a.replace(h,"");return b!=a?!1:!0},equalsSelection:function(a){var b=this.bookmarks,a=a.bookmarks;if(b||a){if(!b||!a||b.length!=a.length)return!1;for(var c=0;c<b.length;c++){var d=b[c],e=a[c];if(d.startOffset!=e.startOffset||d.endOffset!=e.endOffset||!CKEDITOR.tools.arrayCompare(d.start,e.start)||!CKEDITOR.tools.arrayCompare(d.end,
e.end))return!1}}return!0}};var i=CKEDITOR.plugins.undo.NativeEditingHandler=function(a){this.undoManager=a;this.ignoreInputEvent=!1;this.keyEventsStack=new k;this.lastKeydownImage=null};i.prototype={onKeydown:function(a){var b=a.data.getKey();if(229!==b)if(-1<CKEDITOR.tools.indexOf(g,a.data.getKeystroke()))a.data.preventDefault();else if(this.keyEventsStack.cleanUp(a),a=this.undoManager,this.keyEventsStack.getLast(b)||this.keyEventsStack.push(b),this.lastKeydownImage=new f(a.editor),e.isNavigationKey(b)||
this.undoManager.keyGroupChanged(b))if(a.strokesRecorded[0]||a.strokesRecorded[1])a.save(!1,this.lastKeydownImage,!1),a.resetType()},onInput:function(){if(this.ignoreInputEvent)this.ignoreInputEvent=!1;else{var a=this.keyEventsStack.getLast();a||(a=this.keyEventsStack.push(0));this.keyEventsStack.increment(a.keyCode);this.keyEventsStack.getTotalInputs()>=this.undoManager.strokesLimit&&(this.undoManager.type(a.keyCode,!0),this.keyEventsStack.resetInputs())}},onKeyup:function(a){var b=this.undoManager,
a=a.data.getKey(),c=this.keyEventsStack.getTotalInputs();this.keyEventsStack.remove(a);if(!e.ieFunctionalKeysBug(a)||!this.lastKeydownImage||!this.lastKeydownImage.equalsContent(new f(b.editor,!0)))if(0<c)b.type(a);else if(e.isNavigationKey(a))this.onNavigationKey(!0)},onNavigationKey:function(a){var b=this.undoManager;(a||!b.save(!0,null,!1))&&b.updateSelection(new f(b.editor));b.resetType()},ignoreInputEventListener:function(){this.ignoreInputEvent=!0},attachListeners:function(){var a=this.undoManager.editor,
b=a.editable(),c=this;b.attachListener(b,"keydown",function(a){c.onKeydown(a);if(e.ieFunctionalKeysBug(a.data.getKey()))c.onInput()},null,null,999);b.attachListener(b,CKEDITOR.env.ie?"keypress":"input",c.onInput,c,null,999);b.attachListener(b,"keyup",c.onKeyup,c,null,999);b.attachListener(b,"paste",c.ignoreInputEventListener,c,null,999);b.attachListener(b,"drop",c.ignoreInputEventListener,c,null,999);b.attachListener(b.isInline()?b:a.document.getDocumentElement(),"click",function(){c.onNavigationKey()},
null,null,999);b.attachListener(this.undoManager.editor,"blur",function(){c.keyEventsStack.remove(9)},null,null,999)}};var k=CKEDITOR.plugins.undo.KeyEventsStack=function(){this.stack=[]};k.prototype={push:function(a){return this.stack[this.stack.push({keyCode:a,inputs:0})-1]},getLastIndex:function(a){if("number"!=typeof a)return this.stack.length-1;for(var b=this.stack.length;b--;)if(this.stack[b].keyCode==a)return b;return-1},getLast:function(a){a=this.getLastIndex(a);return-1!=a?this.stack[a]:
null},increment:function(a){this.getLast(a).inputs++},remove:function(a){a=this.getLastIndex(a);-1!=a&&this.stack.splice(a,1)},resetInputs:function(a){if("number"==typeof a)this.getLast(a).inputs=0;else for(a=this.stack.length;a--;)this.stack[a].inputs=0},getTotalInputs:function(){for(var a=this.stack.length,b=0;a--;)b+=this.stack[a].inputs;return b},cleanUp:function(a){a=a.data.$;!a.ctrlKey&&!a.metaKey&&this.remove(17);a.shiftKey||this.remove(16);a.altKey||this.remove(18)}}})();(function(){function k(a){var e=this.editor,b=a.document,c=b.body,d=b.getElementById("cke_actscrpt");d&&d.parentNode.removeChild(d);(d=b.getElementById("cke_shimscrpt"))&&d.parentNode.removeChild(d);(d=b.getElementById("cke_basetagscrpt"))&&d.parentNode.removeChild(d);c.contentEditable=!0;CKEDITOR.env.ie&&(c.hideFocus=!0,c.disabled=!0,c.removeAttribute("disabled"));delete this._.isLoadingData;this.$=c;b=new CKEDITOR.dom.document(b);this.setup();this.fixInitialSelection();CKEDITOR.env.ie&&(b.getDocumentElement().addClass(b.$.compatMode),
e.config.enterMode!=CKEDITOR.ENTER_P&&this.attachListener(b,"selectionchange",function(){var a=b.getBody(),c=e.getSelection(),d=c&&c.getRanges()[0];d&&(a.getHtml().match(/^<p>(?:&nbsp;|<br>)<\/p>$/i)&&d.startContainer.equals(a))&&setTimeout(function(){d=e.getSelection().getRanges()[0];if(!d.startContainer.equals("body")){a.getFirst().remove(1);d.moveToElementEditEnd(a);d.select()}},0)}));if(CKEDITOR.env.webkit||CKEDITOR.env.ie&&10<CKEDITOR.env.version)b.getDocumentElement().on("mousedown",function(a){a.data.getTarget().is("html")&&
setTimeout(function(){e.editable().focus()})});l(e);try{e.document.$.execCommand("2D-position",!1,!0)}catch(g){}(CKEDITOR.env.gecko||CKEDITOR.env.ie&&"CSS1Compat"==e.document.$.compatMode)&&this.attachListener(this,"keydown",function(a){var b=a.data.getKeystroke();if(b==33||b==34)if(CKEDITOR.env.ie)setTimeout(function(){e.getSelection().scrollIntoView()},0);else if(e.window.$.innerHeight>this.$.offsetHeight){var c=e.createRange();c[b==33?"moveToElementEditStart":"moveToElementEditEnd"](this);c.select();
a.data.preventDefault()}});CKEDITOR.env.ie&&this.attachListener(b,"blur",function(){try{b.$.selection.empty()}catch(a){}});CKEDITOR.env.iOS&&this.attachListener(b,"touchend",function(){a.focus()});c=e.document.getElementsByTag("title").getItem(0);c.data("cke-title",c.getText());CKEDITOR.env.ie&&(e.document.$.title=this._.docTitle);CKEDITOR.tools.setTimeout(function(){if(this.status=="unloaded")this.status="ready";e.fire("contentDom");if(this._.isPendingFocus){e.focus();this._.isPendingFocus=false}setTimeout(function(){e.fire("dataReady")},
0);CKEDITOR.env.ie&&setTimeout(function(){if(e.document){var a=e.document.$.body;a.runtimeStyle.marginBottom="0px";a.runtimeStyle.marginBottom=""}},1E3)},0,this)}function l(a){function e(){var c;a.editable().attachListener(a,"selectionChange",function(){var d=a.getSelection().getSelectedElement();d&&(c&&(c.detachEvent("onresizestart",b),c=null),d.$.attachEvent("onresizestart",b),c=d.$)})}function b(a){a.returnValue=!1}if(CKEDITOR.env.gecko)try{var c=a.document.$;c.execCommand("enableObjectResizing",
!1,!a.config.disableObjectResizing);c.execCommand("enableInlineTableEditing",!1,!a.config.disableNativeTableHandles)}catch(d){}else CKEDITOR.env.ie&&(11>CKEDITOR.env.version&&a.config.disableObjectResizing)&&e(a)}function m(){var a=[];if(8<=CKEDITOR.document.$.documentMode){a.push("html.CSS1Compat [contenteditable=false]{min-height:0 !important}");var e=[],b;for(b in CKEDITOR.dtd.$removeEmpty)e.push("html.CSS1Compat "+b+"[contenteditable=false]");a.push(e.join(",")+"{display:inline-block}")}else CKEDITOR.env.gecko&&
(a.push("html{height:100% !important}"),a.push("img:-moz-broken{-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}"));a.push("html{cursor:text;*cursor:auto}");a.push("img,input,textarea{cursor:default}");return a.join("\n")}CKEDITOR.plugins.add("wysiwygarea",{init:function(a){a.config.fullPage&&a.addFeature({allowedContent:"html head title; style [media,type]; body (*)[id]; meta link [*]",requiredContent:"body"});a.addMode("wysiwyg",function(e){function b(b){b&&b.removeListener();a.editable(new j(a,
d.$.contentWindow.document.body));a.setData(a.getData(1),e)}var c="document.open();"+(CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"")+"document.close();",c=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?"javascript:void(function(){"+encodeURIComponent(c)+"}())":"",d=CKEDITOR.dom.element.createFromHtml('<iframe src="'+c+'" frameBorder="0"></iframe>');d.setStyles({width:"100%",height:"100%"});d.addClass("cke_wysiwyg_frame cke_reset");var g=a.ui.space("contents");g.append(d);if(c=CKEDITOR.env.ie||
CKEDITOR.env.gecko)d.on("load",b);var f=a.title,h=a.fire("ariaEditorHelpLabel",{}).label;f&&(CKEDITOR.env.ie&&h&&(f+=", "+h),d.setAttribute("title",f));if(h){var f=CKEDITOR.tools.getNextId(),i=CKEDITOR.dom.element.createFromHtml('<span id="'+f+'" class="cke_voice_label">'+h+"</span>");g.append(i,1);d.setAttribute("aria-describedby",f)}a.on("beforeModeUnload",function(a){a.removeListener();i&&i.remove()});d.setAttributes({tabIndex:a.tabIndex,allowTransparency:"true"});!c&&b();CKEDITOR.env.webkit&&
(c=function(){g.setStyle("width","100%");d.hide();d.setSize("width",g.getSize("width"));g.removeStyle("width");d.show()},d.setCustomData("onResize",c),CKEDITOR.document.getWindow().on("resize",c));a.fire("ariaWidget",d)})}});CKEDITOR.editor.prototype.addContentsCss=function(a){var e=this.config,b=e.contentsCss;CKEDITOR.tools.isArray(b)||(e.contentsCss=b?[b]:[]);e.contentsCss.push(a)};var j=CKEDITOR.tools.createClass({$:function(){this.base.apply(this,arguments);this._.frameLoadedHandler=CKEDITOR.tools.addFunction(function(a){CKEDITOR.tools.setTimeout(k,
0,this,a)},this);this._.docTitle=this.getWindow().getFrame().getAttribute("title")},base:CKEDITOR.editable,proto:{setData:function(a,e){var b=this.editor;if(e)this.setHtml(a),this.fixInitialSelection(),b.fire("dataReady");else{this._.isLoadingData=!0;b._.dataStore={id:1};var c=b.config,d=c.fullPage,g=c.docType,f=CKEDITOR.tools.buildStyleHtml(m()).replace(/<style>/,'<style data-cke-temp="1">');d||(f+=CKEDITOR.tools.buildStyleHtml(b.config.contentsCss));var h=c.baseHref?'<base href="'+c.baseHref+'" data-cke-temp="1" />':
"";d&&(a=a.replace(/<!DOCTYPE[^>]*>/i,function(a){b.docType=g=a;return""}).replace(/<\?xml\s[^\?]*\?>/i,function(a){b.xmlDeclaration=a;return""}));a=b.dataProcessor.toHtml(a);d?(/<body[\s|>]/.test(a)||(a="<body>"+a),/<html[\s|>]/.test(a)||(a="<html>"+a+"</html>"),/<head[\s|>]/.test(a)?/<title[\s|>]/.test(a)||(a=a.replace(/<head[^>]*>/,"$&<title></title>")):a=a.replace(/<html[^>]*>/,"$&<head><title></title></head>"),h&&(a=a.replace(/<head[^>]*?>/,"$&"+h)),a=a.replace(/<\/head\s*>/,f+"$&"),a=g+a):a=
c.docType+'<html dir="'+c.contentsLangDirection+'" lang="'+(c.contentsLanguage||b.langCode)+'"><head><title>'+this._.docTitle+"</title>"+h+f+"</head><body"+(c.bodyId?' id="'+c.bodyId+'"':"")+(c.bodyClass?' class="'+c.bodyClass+'"':"")+">"+a+"</body></html>";CKEDITOR.env.gecko&&(a=a.replace(/<body/,'<body contenteditable="true" '),2E4>CKEDITOR.env.version&&(a=a.replace(/<body[^>]*>/,"$&<\!-- cke-content-start --\>")));c='<script id="cke_actscrpt" type="text/javascript"'+(CKEDITOR.env.ie?' defer="defer" ':
"")+">var wasLoaded=0;function onload(){if(!wasLoaded)window.parent.CKEDITOR.tools.callFunction("+this._.frameLoadedHandler+",window);wasLoaded=1;}"+(CKEDITOR.env.ie?"onload();":'document.addEventListener("DOMContentLoaded", onload, false );')+"<\/script>";CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(c+='<script id="cke_shimscrpt">window.parent.CKEDITOR.tools.enableHtml5Elements(document)<\/script>');h&&(CKEDITOR.env.ie&&10>CKEDITOR.env.version)&&(c+='<script id="cke_basetagscrpt">var baseTag = document.querySelector( "base" );baseTag.href = baseTag.href;<\/script>');
a=a.replace(/(?=\s*<\/(:?head)>)/,c);this.clearCustomData();this.clearListeners();b.fire("contentDomUnload");var i=this.getDocument();try{i.write(a)}catch(j){setTimeout(function(){i.write(a)},0)}}},getData:function(a){if(a)return this.getHtml();var a=this.editor,e=a.config,b=e.fullPage,c=b&&a.docType,d=b&&a.xmlDeclaration,g=this.getDocument(),b=b?g.getDocumentElement().getOuterHtml():g.getBody().getHtml();CKEDITOR.env.gecko&&e.enterMode!=CKEDITOR.ENTER_BR&&(b=b.replace(/<br>(?=\s*(:?$|<\/body>))/,
""));b=a.dataProcessor.toDataFormat(b);d&&(b=d+"\n"+b);c&&(b=c+"\n"+b);return b},focus:function(){this._.isLoadingData?this._.isPendingFocus=!0:j.baseProto.focus.call(this)},detach:function(){var a=this.editor,e=a.document,a=a.window.getFrame();j.baseProto.detach.call(this);this.clearCustomData();e.getDocumentElement().clearCustomData();a.clearCustomData();CKEDITOR.tools.removeFunction(this._.frameLoadedHandler);(e=a.removeCustomData("onResize"))&&e.removeListener();a.remove()}}})})();
CKEDITOR.config.disableObjectResizing=!1;CKEDITOR.config.disableNativeTableHandles=!0;CKEDITOR.config.disableNativeSpellChecker=!0;CKEDITOR.config.contentsCss=CKEDITOR.getUrl("contents.css");(function(){function h(b,e,c){var i=[],g=[],a;for(a=0;a<b.styleSheets.length;a++){var d=b.styleSheets[a];if(!(d.ownerNode||d.owningElement).getAttribute("data-cke-temp")&&!(d.href&&"chrome://"==d.href.substr(0,9)))try{for(var f=d.cssRules||d.rules,d=0;d<f.length;d++)g.push(f[d].selectorText)}catch(h){}}a=g.join(" ");a=a.replace(/(,|>|\+|~)/g," ");a=a.replace(/\[[^\]]*/g,"");a=a.replace(/#[^\s]*/g,"");a=a.replace(/\:{1,2}[^\s]*/g,"");a=a.replace(/\s+/g," ");a=a.split(" ");b=[];for(g=0;g<a.length;g++)f=
a[g],c.test(f)&&!e.test(f)&&-1==CKEDITOR.tools.indexOf(b,f)&&b.push(f);for(a=0;a<b.length;a++)c=b[a].split("."),e=c[0].toLowerCase(),c=c[1],i.push({name:e+"."+c,element:e,attributes:{"class":c}});return i}CKEDITOR.plugins.add("stylesheetparser",{init:function(b){b.filter.disable();var e;b.once("stylesSet",function(c){c.cancel();b.once("contentDom",function(){b.getStylesSet(function(c){e=c.concat(h(b.document.$,b.config.stylesheetParser_skipSelectors||/(^body\.|^\.)/i,b.config.stylesheetParser_validSelectors||
/\w+\.\w+/));b.getStylesSet=function(b){if(e)return b(e)};b.fire("stylesSet",{styles:e})})})},null,null,1)}})})();(function(){function f(a,b,c){var e=CKEDITOR.document.getById(c),d;if(e&&(c=a.fire("uiSpace",{space:b,html:""}).html))a.on("uiSpace",function(a){a.data.space==b&&a.cancel()},null,null,1),d=e.append(CKEDITOR.dom.element.createFromHtml(g.output({id:a.id,name:a.name,langDir:a.lang.dir,langCode:a.langCode,space:b,spaceId:a.ui.spaceId(b),content:c}))),e.getCustomData("cke_hasshared")?d.hide():e.setCustomData("cke_hasshared",1),d.unselectable(),d.on("mousedown",function(a){a=a.data;a.getTarget().hasAscendant("a",
1)||a.preventDefault()}),a.focusManager.add(d,1),a.on("focus",function(){for(var a=0,b,c=e.getChildren();b=c.getItem(a);a++)b.type==CKEDITOR.NODE_ELEMENT&&(!b.equals(d)&&b.hasClass("cke_shared"))&&b.hide();d.show()}),a.on("destroy",function(){d.remove()})}var g=CKEDITOR.addTemplate("sharedcontainer",'<div id="cke_{name}" class="cke {id} cke_reset_all cke_chrome cke_editor_{name} cke_shared cke_detached cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" title="'+(CKEDITOR.env.gecko?" ":"")+'" lang="{langCode}" role="presentation"><div class="cke_inner"><div id="{spaceId}" class="cke_{space}" role="presentation">{content}</div></div></div>');
CKEDITOR.plugins.add("sharedspace",{init:function(a){a.on("loaded",function(){var b=a.config.sharedSpaces;if(b)for(var c in b)f(a,c,b[c])},null,null,9)}})})();CKEDITOR.plugins.add("sourcedialog",{init:function(a){a.addCommand("sourcedialog",new CKEDITOR.dialogCommand("sourcedialog"));CKEDITOR.dialog.add("sourcedialog",this.path+"dialogs/sourcedialog.js");a.ui.addButton&&a.ui.addButton("Sourcedialog",{label:a.lang.sourcedialog.toolbar,command:"sourcedialog",toolbar:"mode,10"})}});CKEDITOR.config.plugins='basicstyles,blockquote,dialogui,dialog,clipboard,button,panelbutton,panel,floatpanel,colorbutton,colordialog,menu,contextmenu,elementspath,enterkey,entities,popup,filebrowser,floatingspace,listblock,richcombo,font,format,horizontalrule,htmlwriter,image,indent,indentlist,justify,fakeobjects,link,list,maximize,pastefromword,pastetext,removeformat,resize,sourcearea,stylescombo,tab,table,tabletools,toolbar,undo,wysiwygarea,stylesheetparser,sharedspace,sourcedialog';CKEDITOR.config.skin='moono';(function() {var setIcons = function(icons, strip) {var path = CKEDITOR.getUrl( 'plugins/' + strip );icons = icons.split( ',' );for ( var i = 0; i < icons.length; i++ )CKEDITOR.skin.icons[ icons[ i ] ] = { path: path, offset: -icons[ ++i ], bgsize : icons[ ++i ] };};if (CKEDITOR.env.hidpi) setIcons('bold,0,,italic,24,,strike,48,,subscript,72,,superscript,96,,underline,120,,blockquote,144,,copy-rtl,168,,copy,192,,cut-rtl,216,,cut,240,,paste-rtl,264,,paste,288,,bgcolor,312,,textcolor,336,,horizontalrule,360,,image,384,,indent-rtl,408,,indent,432,,outdent-rtl,456,,outdent,480,,justifyblock,504,,justifycenter,528,,justifyleft,552,,justifyright,576,,anchor-rtl,600,,anchor,624,,link,648,,unlink,672,,bulletedlist-rtl,696,,bulletedlist,720,,numberedlist-rtl,744,,numberedlist,768,,maximize,792,,pastefromword-rtl,816,,pastefromword,840,,pastetext-rtl,864,,pastetext,888,,removeformat,912,,source-rtl,936,,source,960,,table,984,,redo-rtl,1008,,redo,1032,,undo-rtl,1056,,undo,1080,,sourcedialog-rtl,1104,,sourcedialog,1128,','icons_hidpi.png');else setIcons('bold,0,auto,italic,24,auto,strike,48,auto,subscript,72,auto,superscript,96,auto,underline,120,auto,blockquote,144,auto,copy-rtl,168,auto,copy,192,auto,cut-rtl,216,auto,cut,240,auto,paste-rtl,264,auto,paste,288,auto,bgcolor,312,auto,textcolor,336,auto,horizontalrule,360,auto,image,384,auto,indent-rtl,408,auto,indent,432,auto,outdent-rtl,456,auto,outdent,480,auto,justifyblock,504,auto,justifycenter,528,auto,justifyleft,552,auto,justifyright,576,auto,anchor-rtl,600,auto,anchor,624,auto,link,648,auto,unlink,672,auto,bulletedlist-rtl,696,auto,bulletedlist,720,auto,numberedlist-rtl,744,auto,numberedlist,768,auto,maximize,792,auto,pastefromword-rtl,816,auto,pastefromword,840,auto,pastetext-rtl,864,auto,pastetext,888,auto,removeformat,912,auto,source-rtl,936,auto,source,960,auto,table,984,auto,redo-rtl,1008,auto,redo,1032,auto,undo-rtl,1056,auto,undo,1080,auto,sourcedialog-rtl,1104,auto,sourcedialog,1128,auto','icons.png');})();CKEDITOR.lang.languages={"de":1,"en":1,"es":1,"fr":1,"it":1,"nl":1,"pt-br":1,"ru":1};}());
extensions/plg_editors_acyeditor/acyeditor/ckeditor/styles.js000060400000003204152455705240020775 0ustar00

CKEDITOR.stylesSet.add( 'default', [


	{ name: 'Italic Title',		element: 'h2', styles: { 'font-style': 'italic' } },
	{ name: 'Subtitle',			element: 'h3', styles: { 'color': '#aaa', 'font-style': 'italic' } },
	{
		name: 'Special Container',
		element: 'div',
		styles: {
			padding: '5px 10px',
			background: '#eee',
			border: '1px solid #ccc'
		}
	},



	{ name: 'Marker',			element: 'span', attributes: { 'class': 'marker' } },

	{ name: 'Big',				element: 'big' },
	{ name: 'Small',			element: 'small' },
	{ name: 'Typewriter',		element: 'tt' },

	{ name: 'Computer Code',	element: 'code' },
	{ name: 'Keyboard Phrase',	element: 'kbd' },
	{ name: 'Sample Text',		element: 'samp' },
	{ name: 'Variable',			element: 'var' },

	{ name: 'Deleted Text',		element: 'del' },
	{ name: 'Inserted Text',	element: 'ins' },

	{ name: 'Cited Work',		element: 'cite' },
	{ name: 'Inline Quotation',	element: 'q' },

	{ name: 'Language: RTL',	element: 'span', attributes: { 'dir': 'rtl' } },
	{ name: 'Language: LTR',	element: 'span', attributes: { 'dir': 'ltr' } },


	{
		name: 'Styled image (left)',
		element: 'img',
		attributes: { 'class': 'left' }
	},

	{
		name: 'Styled image (right)',
		element: 'img',
		attributes: { 'class': 'right' }
	},

	{
		name: 'Compact table',
		element: 'table',
		attributes: {
			cellpadding: '5',
			cellspacing: '0',
			border: '1',
			bordercolor: '#ccc'
		},
		styles: {
			'border-collapse': 'collapse'
		}
	},

	{ name: 'Borderless Table',		element: 'table',	styles: { 'border-style': 'hidden', 'background-color': '#E6E6FA' } },
	{ name: 'Square Bulleted List',	element: 'ul',		styles: { 'list-style-type': 'square' } }
] );


extensions/plg_editors_acyeditor/acyeditor/ckeditor/LICENSE.md000060400000205141152455705240020524 0ustar00Software License Agreement
==========================

CKEditor - The text editor for Internet - http://ckeditor.com
Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.

Licensed under the terms of any of the following licenses at your
choice:

 - GNU General Public License Version 2 or later (the "GPL")
   http://www.gnu.org/licenses/gpl.html
   (See Appendix A)

 - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
   http://www.gnu.org/licenses/lgpl.html
   (See Appendix B)

 - Mozilla Public License Version 1.1 or later (the "MPL")
   http://www.mozilla.org/MPL/MPL-1.1.html
   (See Appendix C)

You are not required to, but if you want to explicitly declare the
license you have chosen to be bound to when using, reproducing,
modifying and distributing this software, just include a text file
titled "legal.txt" in your version of this software, indicating your
license choice. In any case, your choice will not restrict any
recipient of your version of this software to use, reproduce, modify
and distribute this software under any of the above licenses.

Sources of Intellectual Property Included in CKEditor
-----------------------------------------------------

Where not otherwise indicated, all CKEditor content is authored by
CKSource engineers and consists of CKSource-owned intellectual
property. In some specific instances, CKEditor will incorporate work
done by developers outside of CKSource with their express permission.

Trademarks
----------

CKEditor is a trademark of CKSource - Frederico Knabben. All other brand
and product names are trademarks, registered trademarks or service
marks of their respective holders.

---

Appendix A: The GPL License
---------------------------

GNU GENERAL PUBLIC LICENSE
Version 2, June 1991

 Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software-to make sure the software is free for all its users.  This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it.  (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.)  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights.

  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

  Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software.  If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

  Finally, any free program is threatened constantly by software
patents.  We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary.  To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

  The precise terms and conditions for copying, distribution and
modification follow.

GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License.  The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language.  (Hereinafter, translation is included without limitation in
the term "modification".)  Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

  1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

  2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) You must cause the modified files to carry prominent notices
    stating that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

    c) If the modified program normally reads commands interactively
    when run, you must cause it, when started running for such
    interactive use in the most ordinary way, to print or display an
    announcement including an appropriate copyright notice and a
    notice that there is no warranty (or else, saying that you provide
    a warranty) and that users may redistribute the program under
    these conditions, and telling the user how to view a copy of this
    License.  (Exception: if the Program itself is interactive but
    does not normally print such an announcement, your work based on
    the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of Sections
    1 and 2 above on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer
    to distribute corresponding source code.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object code or executable form with such
    an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for
making modifications to it.  For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable.  However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.

  4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License.  Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.

  5. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Program or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

  6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.

  7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all.  For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded.  In such case, this License incorporates
the limitation as if written in the body of this License.

  9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation.  If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

  10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission.  For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this.  Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

NO WARRANTY

  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.

  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS


Appendix B: The LGPL License
----------------------------

GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999

 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

[This is the first released version of the Lesser GPL.  It also counts
 as the successor of the GNU Library Public License, version 2, hence
 the version number 2.1.]

Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software-to make sure the software is free for all its users.

  This license, the Lesser General Public License, applies to some
specially designated software packages-typically libraries-of the
Free Software Foundation and other authors who decide to use it.  You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.

  When we speak of free software, we are referring to freedom of use,
not price.  Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.

  To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights.  These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.

  For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you.  You must make sure that they, too, receive or can get the source
code.  If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it.  And you must show them these terms so they know their rights.

  We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.

  To protect each distributor, we want to make it very clear that
there is no warranty for the free library.  Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.

  Finally, software patents pose a constant threat to the existence of
any free program.  We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder.  Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.

  Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License.  This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License.  We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.

  When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library.  The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom.  The Lesser General
Public License permits more lax criteria for linking other code with
the library.

  We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License.  It also provides other free software developers Less
of an advantage over competing non-free programs.  These disadvantages
are the reason we use the ordinary General Public License for many
libraries.  However, the Lesser license provides advantages in certain
special circumstances.

  For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard.  To achieve this, non-free programs must be
allowed to use the library.  A more frequent case is that a free
library does the same job as widely used non-free libraries.  In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.

  In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software.  For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.

  Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.

  The precise terms and conditions for copying, distribution and
modification follow.  Pay close attention to the difference between a
"work based on the library" and a "work that uses the library".  The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.

GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".

  A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.

  The "Library", below, refers to any such software library or work
which has been distributed under these terms.  A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language.  (Hereinafter, translation is
included without limitation in the term "modification".)

  "Source code" for a work means the preferred form of the work for
making modifications to it.  For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.

  Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it).  Whether that is true depends on what the Library does
and what the program that uses the Library does.

  1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.

  You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.

  2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) The modified work must itself be a software library.

    b) You must cause the files modified to carry prominent notices
    stating that you changed the files and the date of any change.

    c) You must cause the whole of the work to be licensed at no
    charge to all third parties under the terms of this License.

    d) If a facility in the modified Library refers to a function or a
    table of data to be supplied by an application program that uses
    the facility, other than as an argument passed when the facility
    is invoked, then you must make a good faith effort to ensure that,
    in the event an application does not supply such function or
    table, the facility still operates, and performs whatever part of
    its purpose remains meaningful.

    (For example, a function in a library to compute square roots has
    a purpose that is entirely well-defined independent of the
    application.  Therefore, Subsection 2d requires that any
    application-supplied function or table used by this function must
    be optional: if the application does not supply it, the square
    root function must still compute square roots.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.

In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library.  To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License.  (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.)  Do not make any other change in
these notices.

  Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.

  This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.

  4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.

  If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.

  5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library".  Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.

  However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library".  The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.

  When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library.  The
threshold for this to be true is not precisely defined by law.

  If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work.  (Executables containing this object code plus portions of the
Library will still fall under Section 6.)

  Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.

  6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.

  You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License.  You must supply a copy of this License.  If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License.  Also, you must do one
of these things:

    a) Accompany the work with the complete corresponding
    machine-readable source code for the Library including whatever
    changes were used in the work (which must be distributed under
    Sections 1 and 2 above); and, if the work is an executable linked
    with the Library, with the complete machine-readable "work that
    uses the Library", as object code and/or source code, so that the
    user can modify the Library and then relink to produce a modified
    executable containing the modified Library.  (It is understood
    that the user who changes the contents of definitions files in the
    Library will not necessarily be able to recompile the application
    to use the modified definitions.)

    b) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (1) uses at run time a
    copy of the library already present on the user's computer system,
    rather than copying library functions into the executable, and (2)
    will operate properly with a modified version of the library, if
    the user installs one, as long as the modified version is
    interface-compatible with the version that the work was made with.

    c) Accompany the work with a written offer, valid for at
    least three years, to give the same user the materials
    specified in Subsection 6a, above, for a charge no more
    than the cost of performing this distribution.

    d) If distribution of the work is made by offering access to copy
    from a designated place, offer equivalent access to copy the above
    specified materials from the same place.

    e) Verify that the user has already received a copy of these
    materials or that you have already sent this user a copy.

  For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it.  However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.

  It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system.  Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.

  7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:

    a) Accompany the combined library with a copy of the same work
    based on the Library, uncombined with any other library
    facilities.  This must be distributed under the terms of the
    Sections above.

    b) Give prominent notice with the combined library of the fact
    that part of it is a work based on the Library, and explaining
    where to find the accompanying uncombined form of the same work.

  8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License.  Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License.  However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.

  9. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Library or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.

  10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.

  11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all.  For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.

If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded.  In such case, this License incorporates the limitation as if
written in the body of this License.

  13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number.  If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation.  If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.

  14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission.  For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this.  Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.

NO WARRANTY

  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.

END OF TERMS AND CONDITIONS


Appendix C: The MPL License
---------------------------

MOZILLA PUBLIC LICENSE
Version 1.1

1. Definitions.

     1.0.1. "Commercial Use" means distribution or otherwise making the
     Covered Code available to a third party.

     1.1. "Contributor" means each entity that creates or contributes to
     the creation of Modifications.

     1.2. "Contributor Version" means the combination of the Original
     Code, prior Modifications used by a Contributor, and the Modifications
     made by that particular Contributor.

     1.3. "Covered Code" means the Original Code or Modifications or the
     combination of the Original Code and Modifications, in each case
     including portions thereof.

     1.4. "Electronic Distribution Mechanism" means a mechanism generally
     accepted in the software development community for the electronic
     transfer of data.

     1.5. "Executable" means Covered Code in any form other than Source
     Code.

     1.6. "Initial Developer" means the individual or entity identified
     as the Initial Developer in the Source Code notice required by Exhibit
     A.

     1.7. "Larger Work" means a work which combines Covered Code or
     portions thereof with code not governed by the terms of this License.

     1.8. "License" means this document.

     1.8.1. "Licensable" means having the right to grant, to the maximum
     extent possible, whether at the time of the initial grant or
     subsequently acquired, any and all of the rights conveyed herein.

     1.9. "Modifications" means any addition to or deletion from the
     substance or structure of either the Original Code or any previous
     Modifications. When Covered Code is released as a series of files, a
     Modification is:
          A. Any addition to or deletion from the contents of a file
          containing Original Code or previous Modifications.

          B. Any new file that contains any part of the Original Code or
          previous Modifications.

     1.10. "Original Code" means Source Code of computer software code
     which is described in the Source Code notice required by Exhibit A as
     Original Code, and which, at the time of its release under this
     License is not already Covered Code governed by this License.

     1.10.1. "Patent Claims" means any patent claim(s), now owned or
     hereafter acquired, including without limitation,  method, process,
     and apparatus claims, in any patent Licensable by grantor.

     1.11. "Source Code" means the preferred form of the Covered Code for
     making modifications to it, including all modules it contains, plus
     any associated interface definition files, scripts used to control
     compilation and installation of an Executable, or source code
     differential comparisons against either the Original Code or another
     well known, available Covered Code of the Contributor's choice. The
     Source Code can be in a compressed or archival form, provided the
     appropriate decompression or de-archiving software is widely available
     for no charge.

     1.12. "You" (or "Your")  means an individual or a legal entity
     exercising rights under, and complying with all of the terms of, this
     License or a future version of this License issued under Section 6.1.
     For legal entities, "You" includes any entity which controls, is
     controlled by, or is under common control with You. For purposes of
     this definition, "control" means (a) the power, direct or indirect,
     to cause the direction or management of such entity, whether by
     contract or otherwise, or (b) ownership of more than fifty percent
     (50%) of the outstanding shares or beneficial ownership of such
     entity.

2. Source Code License.

     2.1. The Initial Developer Grant.
     The Initial Developer hereby grants You a world-wide, royalty-free,
     non-exclusive license, subject to third party intellectual property
     claims:
          (a)  under intellectual property rights (other than patent or
          trademark) Licensable by Initial Developer to use, reproduce,
          modify, display, perform, sublicense and distribute the Original
          Code (or portions thereof) with or without Modifications, and/or
          as part of a Larger Work; and

          (b) under Patents Claims infringed by the making, using or
          selling of Original Code, to make, have made, use, practice,
          sell, and offer for sale, and/or otherwise dispose of the
          Original Code (or portions thereof).

          (c) the licenses granted in this Section 2.1(a) and (b) are
          effective on the date Initial Developer first distributes
          Original Code under the terms of this License.

          (d) Notwithstanding Section 2.1(b) above, no patent license is
          granted: 1) for code that You delete from the Original Code; 2)
          separate from the Original Code;  or 3) for infringements caused
          by: i) the modification of the Original Code or ii) the
          combination of the Original Code with other software or devices.

     2.2. Contributor Grant.
     Subject to third party intellectual property claims, each Contributor
     hereby grants You a world-wide, royalty-free, non-exclusive license

          (a)  under intellectual property rights (other than patent or
          trademark) Licensable by Contributor, to use, reproduce, modify,
          display, perform, sublicense and distribute the Modifications
          created by such Contributor (or portions thereof) either on an
          unmodified basis, with other Modifications, as Covered Code
          and/or as part of a Larger Work; and

          (b) under Patent Claims infringed by the making, using, or
          selling of  Modifications made by that Contributor either alone
          and/or in combination with its Contributor Version (or portions
          of such combination), to make, use, sell, offer for sale, have
          made, and/or otherwise dispose of: 1) Modifications made by that
          Contributor (or portions thereof); and 2) the combination of
          Modifications made by that Contributor with its Contributor
          Version (or portions of such combination).

          (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
          effective on the date Contributor first makes Commercial Use of
          the Covered Code.

          (d)    Notwithstanding Section 2.2(b) above, no patent license is
          granted: 1) for any code that Contributor has deleted from the
          Contributor Version; 2)  separate from the Contributor Version;
          3)  for infringements caused by: i) third party modifications of
          Contributor Version or ii)  the combination of Modifications made
          by that Contributor with other software  (except as part of the
          Contributor Version) or other devices; or 4) under Patent Claims
          infringed by Covered Code in the absence of Modifications made by
          that Contributor.

3. Distribution Obligations.

     3.1. Application of License.
     The Modifications which You create or to which You contribute are
     governed by the terms of this License, including without limitation
     Section 2.2. The Source Code version of Covered Code may be
     distributed only under the terms of this License or a future version
     of this License released under Section 6.1, and You must include a
     copy of this License with every copy of the Source Code You
     distribute. You may not offer or impose any terms on any Source Code
     version that alters or restricts the applicable version of this
     License or the recipients' rights hereunder. However, You may include
     an additional document offering the additional rights described in
     Section 3.5.

     3.2. Availability of Source Code.
     Any Modification which You create or to which You contribute must be
     made available in Source Code form under the terms of this License
     either on the same media as an Executable version or via an accepted
     Electronic Distribution Mechanism to anyone to whom you made an
     Executable version available; and if made available via Electronic
     Distribution Mechanism, must remain available for at least twelve (12)
     months after the date it initially became available, or at least six
     (6) months after a subsequent version of that particular Modification
     has been made available to such recipients. You are responsible for
     ensuring that the Source Code version remains available even if the
     Electronic Distribution Mechanism is maintained by a third party.

     3.3. Description of Modifications.
     You must cause all Covered Code to which You contribute to contain a
     file documenting the changes You made to create that Covered Code and
     the date of any change. You must include a prominent statement that
     the Modification is derived, directly or indirectly, from Original
     Code provided by the Initial Developer and including the name of the
     Initial Developer in (a) the Source Code, and (b) in any notice in an
     Executable version or related documentation in which You describe the
     origin or ownership of the Covered Code.

     3.4. Intellectual Property Matters
          (a) Third Party Claims.
          If Contributor has knowledge that a license under a third party's
          intellectual property rights is required to exercise the rights
          granted by such Contributor under Sections 2.1 or 2.2,
          Contributor must include a text file with the Source Code
          distribution titled "LEGAL" which describes the claim and the
          party making the claim in sufficient detail that a recipient will
          know whom to contact. If Contributor obtains such knowledge after
          the Modification is made available as described in Section 3.2,
          Contributor shall promptly modify the LEGAL file in all copies
          Contributor makes available thereafter and shall take other steps
          (such as notifying appropriate mailing lists or newsgroups)
          reasonably calculated to inform those who received the Covered
          Code that new knowledge has been obtained.

          (b) Contributor APIs.
          If Contributor's Modifications include an application programming
          interface and Contributor has knowledge of patent licenses which
          are reasonably necessary to implement that API, Contributor must
          also include this information in the LEGAL file.

               (c)    Representations.
          Contributor represents that, except as disclosed pursuant to
          Section 3.4(a) above, Contributor believes that Contributor's
          Modifications are Contributor's original creation(s) and/or
          Contributor has sufficient rights to grant the rights conveyed by
          this License.

     3.5. Required Notices.
     You must duplicate the notice in Exhibit A in each file of the Source
     Code.  If it is not possible to put such notice in a particular Source
     Code file due to its structure, then You must include such notice in a
     location (such as a relevant directory) where a user would be likely
     to look for such a notice.  If You created one or more Modification(s)
     You may add your name as a Contributor to the notice described in
     Exhibit A.  You must also duplicate this License in any documentation
     for the Source Code where You describe recipients' rights or ownership
     rights relating to Covered Code.  You may choose to offer, and to
     charge a fee for, warranty, support, indemnity or liability
     obligations to one or more recipients of Covered Code. However, You
     may do so only on Your own behalf, and not on behalf of the Initial
     Developer or any Contributor. You must make it absolutely clear than
     any such warranty, support, indemnity or liability obligation is
     offered by You alone, and You hereby agree to indemnify the Initial
     Developer and every Contributor for any liability incurred by the
     Initial Developer or such Contributor as a result of warranty,
     support, indemnity or liability terms You offer.

     3.6. Distribution of Executable Versions.
     You may distribute Covered Code in Executable form only if the
     requirements of Section 3.1-3.5 have been met for that Covered Code,
     and if You include a notice stating that the Source Code version of
     the Covered Code is available under the terms of this License,
     including a description of how and where You have fulfilled the
     obligations of Section 3.2. The notice must be conspicuously included
     in any notice in an Executable version, related documentation or
     collateral in which You describe recipients' rights relating to the
     Covered Code. You may distribute the Executable version of Covered
     Code or ownership rights under a license of Your choice, which may
     contain terms different from this License, provided that You are in
     compliance with the terms of this License and that the license for the
     Executable version does not attempt to limit or alter the recipient's
     rights in the Source Code version from the rights set forth in this
     License. If You distribute the Executable version under a different
     license You must make it absolutely clear that any terms which differ
     from this License are offered by You alone, not by the Initial
     Developer or any Contributor. You hereby agree to indemnify the
     Initial Developer and every Contributor for any liability incurred by
     the Initial Developer or such Contributor as a result of any such
     terms You offer.

     3.7. Larger Works.
     You may create a Larger Work by combining Covered Code with other code
     not governed by the terms of this License and distribute the Larger
     Work as a single product. In such a case, You must make sure the
     requirements of this License are fulfilled for the Covered Code.

4. Inability to Comply Due to Statute or Regulation.

     If it is impossible for You to comply with any of the terms of this
     License with respect to some or all of the Covered Code due to
     statute, judicial order, or regulation then You must: (a) comply with
     the terms of this License to the maximum extent possible; and (b)
     describe the limitations and the code they affect. Such description
     must be included in the LEGAL file described in Section 3.4 and must
     be included with all distributions of the Source Code. Except to the
     extent prohibited by statute or regulation, such description must be
     sufficiently detailed for a recipient of ordinary skill to be able to
     understand it.

5. Application of this License.

     This License applies to code to which the Initial Developer has
     attached the notice in Exhibit A and to related Covered Code.

6. Versions of the License.

     6.1. New Versions.
     Netscape Communications Corporation ("Netscape") may publish revised
     and/or new versions of the License from time to time. Each version
     will be given a distinguishing version number.

     6.2. Effect of New Versions.
     Once Covered Code has been published under a particular version of the
     License, You may always continue to use it under the terms of that
     version. You may also choose to use such Covered Code under the terms
     of any subsequent version of the License published by Netscape. No one
     other than Netscape has the right to modify the terms applicable to
     Covered Code created under this License.

     6.3. Derivative Works.
     If You create or use a modified version of this License (which you may
     only do in order to apply it to code which is not already Covered Code
     governed by this License), You must (a) rename Your license so that
     the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",
     "MPL", "NPL" or any confusingly similar phrase do not appear in your
     license (except to note that your license differs from this License)
     and (b) otherwise make it clear that Your version of the license
     contains terms which differ from the Mozilla Public License and
     Netscape Public License. (Filling in the name of the Initial
     Developer, Original Code or Contributor in the notice described in
     Exhibit A shall not of themselves be deemed to be modifications of
     this License.)

7. DISCLAIMER OF WARRANTY.

     COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
     WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
     WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
     DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
     THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
     IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
     YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
     COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
     OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
     ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.

8. TERMINATION.

     8.1.  This License and the rights granted hereunder will terminate
     automatically if You fail to comply with terms herein and fail to cure
     such breach within 30 days of becoming aware of the breach. All
     sublicenses to the Covered Code which are properly granted shall
     survive any termination of this License. Provisions which, by their
     nature, must remain in effect beyond the termination of this License
     shall survive.

     8.2.  If You initiate litigation by asserting a patent infringement
     claim (excluding declatory judgment actions) against Initial Developer
     or a Contributor (the Initial Developer or Contributor against whom
     You file such action is referred to as "Participant")  alleging that:

     (a)  such Participant's Contributor Version directly or indirectly
     infringes any patent, then any and all rights granted by such
     Participant to You under Sections 2.1 and/or 2.2 of this License
     shall, upon 60 days notice from Participant terminate prospectively,
     unless if within 60 days after receipt of notice You either: (i)
     agree in writing to pay Participant a mutually agreeable reasonable
     royalty for Your past and future use of Modifications made by such
     Participant, or (ii) withdraw Your litigation claim with respect to
     the Contributor Version against such Participant.  If within 60 days
     of notice, a reasonable royalty and payment arrangement are not
     mutually agreed upon in writing by the parties or the litigation claim
     is not withdrawn, the rights granted by Participant to You under
     Sections 2.1 and/or 2.2 automatically terminate at the expiration of
     the 60 day notice period specified above.

     (b)  any software, hardware, or device, other than such Participant's
     Contributor Version, directly or indirectly infringes any patent, then
     any rights granted to You by such Participant under Sections 2.1(b)
     and 2.2(b) are revoked effective as of the date You first made, used,
     sold, distributed, or had made, Modifications made by that
     Participant.

     8.3.  If You assert a patent infringement claim against Participant
     alleging that such Participant's Contributor Version directly or
     indirectly infringes any patent where such claim is resolved (such as
     by license or settlement) prior to the initiation of patent
     infringement litigation, then the reasonable value of the licenses
     granted by such Participant under Sections 2.1 or 2.2 shall be taken
     into account in determining the amount or value of any payment or
     license.

     8.4.  In the event of termination under Sections 8.1 or 8.2 above,
     all end user license agreements (excluding distributors and resellers)
     which have been validly granted by You or any distributor hereunder
     prior to termination shall survive termination.

9. LIMITATION OF LIABILITY.

     UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
     (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
     DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
     OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR
     ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
     CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,
     WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
     COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
     INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
     LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
     RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
     PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
     EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
     THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.

10. U.S. GOVERNMENT END USERS.

     The Covered Code is a "commercial item," as that term is defined in
     48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer
     software" and "commercial computer software documentation," as such
     terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
     C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
     all U.S. Government End Users acquire Covered Code with only those
     rights set forth herein.

11. MISCELLANEOUS.

     This License represents the complete agreement concerning subject
     matter hereof. If any provision of this License is held to be
     unenforceable, such provision shall be reformed only to the extent
     necessary to make it enforceable. This License shall be governed by
     California law provisions (except to the extent applicable law, if
     any, provides otherwise), excluding its conflict-of-law provisions.
     With respect to disputes in which at least one party is a citizen of,
     or an entity chartered or registered to do business in the United
     States of America, any litigation relating to this License shall be
     subject to the jurisdiction of the Federal Courts of the Northern
     District of California, with venue lying in Santa Clara County,
     California, with the losing party responsible for costs, including
     without limitation, court costs and reasonable attorneys' fees and
     expenses. The application of the United Nations Convention on
     Contracts for the International Sale of Goods is expressly excluded.
     Any law or regulation which provides that the language of a contract
     shall be construed against the drafter shall not apply to this
     License.

12. RESPONSIBILITY FOR CLAIMS.

     As between Initial Developer and the Contributors, each party is
     responsible for claims and damages arising, directly or indirectly,
     out of its utilization of rights under this License and You agree to
     work with Initial Developer and Contributors to distribute such
     responsibility on an equitable basis. Nothing herein is intended or
     shall be deemed to constitute any admission of liability.

13. MULTIPLE-LICENSED CODE.

     Initial Developer may designate portions of the Covered Code as
     "Multiple-Licensed".  "Multiple-Licensed" means that the Initial
     Developer permits you to utilize portions of the Covered Code under
     Your choice of the NPL or the alternative licenses, if any, specified
     by the Initial Developer in the file described in Exhibit A.

EXHIBIT A -Mozilla Public License.

     ``The contents of this file are subject to the Mozilla Public License
     Version 1.1 (the "License"); you may not use this file except in
     compliance with the License. You may obtain a copy of the License at
     http://www.mozilla.org/MPL/

     Software distributed under the License is distributed on an "AS IS"
     basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
     License for the specific language governing rights and limitations
     under the License.

     The Original Code is ______________________________________.

     The Initial Developer of the Original Code is ________________________.
     Portions created by ______________________ are Copyright (C) ______
     _______________________. All Rights Reserved.

     Contributor(s): ______________________________________.

     Alternatively, the contents of this file may be used under the terms
     of the _____ license (the  "[___] License"), in which case the
     provisions of [______] License are applicable instead of those
     above.  If you wish to allow use of your version of this file only
     under the terms of the [____] License and not to allow others to use
     your version of this file under the MPL, indicate your decision by
     deleting  the provisions above and replace  them with the notice and
     other provisions required by the [___] License.  If you do not delete
     the provisions above, a recipient may use your version of this file
     under either the MPL or the [___] License."

     [NOTE: The text of this Exhibit A may differ slightly from the text of
     the notices in the Source Code files of the Original Code. You should
     use the text of this Exhibit A rather than the text found in the
     Original Code Source Code for Your Modifications.]
extensions/plg_editors_acyeditor/acyeditor/ckeditor/config.js000060400000002245152455705240020723 0ustar00
CKEDITOR.editorConfig = function( config ) {

	config.toolbarGroups = [
		{ name: 'clipboard',   groups: [ 'clipboard', 'undo' ] },
		{ name: 'editing',     groups: [ 'find', 'selection', 'spellchecker' ] },
		{ name: 'links' },
		{ name: 'insert' },
		{ name: 'forms' },
		{ name: 'tools' },
		{ name: 'document',	   groups: [ 'mode', 'document', 'doctools' ] },
		{ name: 'others' },
		'/',
		{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
		{ name: 'paragraph',   groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
		{ name: 'styles' },
		{ name: 'colors' },
		{ name: 'about' }
	];

	config.removeButtons = 'Underline,Subscript,Superscript';


	config.removeDialogTabs = 'image:advanced;link:advanced';

	//-----------------------//
	config.startupFocus = false;
	config.fillEmptyBlocks = false;
	config.filebrowserBrowseUrl = '';
	config.filebrowserImageBrowseUrl = '';
	config.filebrowserFlashBrowseUrl = '';
	config.filebrowserUploadUrl = '';
	config.filebrowserImageUploadUrl = '';
	config.filebrowserFlashUploadUrl = '';
	config.allowedContent = true;
	config.disableNativeSpellChecker = false;
	config.stylesSet = [];
	config.entities_greek = false;
};

extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/index.html000060400000000054152455705240022032 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/nl.js000060400000026510152455705240021011 0ustar00CKEDITOR.lang['nl']={"editor":"Tekstverwerker","editorPanel":"Tekstverwerker beheerpaneel","common":{"editorHelp":"Druk ALT 0 voor hulp","browseServer":"Bladeren op server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Naar server verzenden","image":"Afbeelding","flash":"Flash","form":"Formulier","checkbox":"Selectievinkje","radio":"Keuzerondje","textField":"Tekstveld","textarea":"Tekstvak","hiddenField":"Verborgen veld","button":"Knop","select":"Selectieveld","imageButton":"Afbeeldingsknop","notSet":"<niet ingevuld>","id":"Id","name":"Naam","langDir":"Schrijfrichting","langDirLtr":"Links naar rechts (LTR)","langDirRtl":"Rechts naar links (RTL)","langCode":"Taalcode","longDescr":"Lange URL-omschrijving","cssClass":"Stylesheet-klassen","advisoryTitle":"Adviserende titel","cssStyle":"Stijl","ok":"OK","cancel":"Annuleren","close":"Sluiten","preview":"Voorbeeld","resize":"Sleep om te herschalen","generalTab":"Algemeen","advancedTab":"Geavanceerd","validateNumberFailed":"Deze waarde is geen geldig getal.","confirmNewPage":"Alle aangebrachte wijzigingen gaan verloren. Weet u zeker dat u een nieuwe pagina wilt openen?","confirmCancel":"Enkele opties zijn gewijzigd. Weet u zeker dat u dit dialoogvenster wilt sluiten?","options":"Opties","target":"Doelvenster","targetNew":"Nieuw venster (_blank)","targetTop":"Hele venster (_top)","targetSelf":"Zelfde venster (_self)","targetParent":"Origineel venster (_parent)","langDirLTR":"Links naar rechts (LTR)","langDirRTL":"Rechts naar links (RTL)","styles":"Stijl","cssClasses":"Stylesheet-klassen","width":"Breedte","height":"Hoogte","align":"Uitlijning","alignLeft":"Links","alignRight":"Rechts","alignCenter":"Centreren","alignJustify":"Uitvullen","alignTop":"Boven","alignMiddle":"Midden","alignBottom":"Onder","alignNone":"Geen","invalidValue":"Ongeldige waarde.","invalidHeight":"De hoogte moet een getal zijn.","invalidWidth":"De breedte moet een getal zijn.","invalidCssLength":"Waarde in veld \"%1\" moet een positief nummer zijn, met of zonder een geldige CSS meeteenheid (px, %, in, cm, mm, em, ex, pt of pc).","invalidHtmlLength":"Waarde in veld \"%1\" moet een positief nummer zijn, met of zonder een geldige HTML meeteenheid (px of %).","invalidInlineStyle":"Waarde voor de online stijl moet bestaan uit een of meerdere tupels met het formaat \"naam : waarde\", gescheiden door puntkomma's.","cssLengthTooltip":"Geef een nummer in voor een waarde in pixels of geef een nummer in met een geldige CSS eenheid (px, %, in, cm, mm, em, ex, pt, of pc).","unavailable":"%1<span class=\"cke_accessibility\">, niet beschikbaar</span>"},"basicstyles":{"bold":"Vet","italic":"Cursief","strike":"Doorhalen","subscript":"Subscript","superscript":"Superscript","underline":"Onderstrepen"},"blockquote":{"toolbar":"Citaatblok"},"clipboard":{"copy":"Kopiëren","copyError":"De beveiligingsinstelling van de browser verhinderen het automatisch kopiëren. Gebruik de sneltoets Ctrl/Cmd+C van het toetsenbord.","cut":"Knippen","cutError":"De beveiligingsinstelling van de browser verhinderen het automatisch knippen. Gebruik de sneltoets Ctrl/Cmd+X van het toetsenbord.","paste":"Plakken","pasteArea":"Plakgebied","pasteMsg":"Plak de tekst in het volgende vak gebruikmakend van uw toetsenbord (<strong>Ctrl/Cmd+V</strong>) en klik op OK.","securityMsg":"Door de beveiligingsinstellingen van uw browser is het niet mogelijk om direct vanuit het klembord in de editor te plakken. Middels opnieuw plakken in dit venster kunt u de tekst alsnog plakken in de editor.","title":"Plakken"},"button":{"selectedLabel":"%1 (Geselecteerd)"},"colorbutton":{"auto":"Automatisch","bgColorTitle":"Achtergrondkleur","colors":{"000":"Zwart","800000":"Kastanjebruin","8B4513":"Chocoladebruin","2F4F4F":"Donkerleigrijs","008080":"Blauwgroen","000080":"Marine","4B0082":"Indigo","696969":"Donkergrijs","B22222":"Baksteen","A52A2A":"Bruin","DAA520":"Donkergeel","006400":"Donkergroen","40E0D0":"Turquoise","0000CD":"Middenblauw","800080":"Paars","808080":"Grijs","F00":"Rood","FF8C00":"Donkeroranje","FFD700":"Goud","008000":"Groen","0FF":"Cyaan","00F":"Blauw","EE82EE":"Violet","A9A9A9":"Donkergrijs","FFA07A":"Lichtzalm","FFA500":"Oranje","FFFF00":"Geel","00FF00":"Felgroen","AFEEEE":"Lichtturquoise","ADD8E6":"Lichtblauw","DDA0DD":"Pruim","D3D3D3":"Lichtgrijs","FFF0F5":"Linnen","FAEBD7":"Ivoor","FFFFE0":"Lichtgeel","F0FFF0":"Honingdauw","F0FFFF":"Azuur","F0F8FF":"Licht hemelsblauw","E6E6FA":"Lavendel","FFF":"Wit"},"more":"Meer kleuren...","panelTitle":"Kleuren","textColorTitle":"Tekstkleur"},"colordialog":{"clear":"Wissen","highlight":"Actief","options":"Kleuropties","selected":"Geselecteerde kleur","title":"Selecteer kleur"},"contextmenu":{"options":"Contextmenu opties"},"elementspath":{"eleLabel":"Elementenpad","eleTitle":"%1 element"},"font":{"fontSize":{"label":"Lettergrootte","voiceLabel":"Lettergrootte","panelTitle":"Lettergrootte"},"label":"Lettertype","panelTitle":"Lettertype","voiceLabel":"Lettertype"},"format":{"label":"Opmaak","panelTitle":"Opmaak","tag_address":"Adres","tag_div":"Normaal (DIV)","tag_h1":"Kop 1","tag_h2":"Kop 2","tag_h3":"Kop 3","tag_h4":"Kop 4","tag_h5":"Kop 5","tag_h6":"Kop 6","tag_p":"Normaal","tag_pre":"Met opmaak"},"horizontalrule":{"toolbar":"Horizontale lijn invoegen"},"image":{"alertUrl":"Geef de URL van de afbeelding","alt":"Alternatieve tekst","border":"Rand","btnUpload":"Naar server verzenden","button2Img":"Wilt u de geselecteerde afbeeldingsknop vervangen door een eenvoudige afbeelding?","hSpace":"HSpace","img2Button":"Wilt u de geselecteerde afbeelding vervangen door een afbeeldingsknop?","infoTab":"Informatie afbeelding","linkTab":"Link","lockRatio":"Afmetingen vergrendelen","menu":"Eigenschappen afbeelding","resetSize":"Afmetingen resetten","title":"Eigenschappen afbeelding","titleButton":"Eigenschappen afbeeldingsknop","upload":"Upload","urlMissing":"De URL naar de afbeelding ontbreekt.","vSpace":"VSpace","validateBorder":"Rand moet een heel nummer zijn.","validateHSpace":"HSpace moet een heel nummer zijn.","validateVSpace":"VSpace moet een heel nummer zijn."},"indent":{"indent":"Inspringing vergroten","outdent":"Inspringing verkleinen"},"justify":{"block":"Uitvullen","center":"Centreren","left":"Links uitlijnen","right":"Rechts uitlijnen"},"fakeobjects":{"anchor":"Interne link","flash":"Flash animatie","hiddenfield":"Verborgen veld","iframe":"IFrame","unknown":"Onbekend object"},"link":{"acccessKey":"Toegangstoets","advanced":"Geavanceerd","advisoryContentType":"Aanbevolen content-type","advisoryTitle":"Adviserende titel","anchor":{"toolbar":"Interne link","menu":"Eigenschappen interne link","title":"Eigenschappen interne link","name":"Naam interne link","errorName":"Geef de naam van de interne link op","remove":"Interne link verwijderen"},"anchorId":"Op kenmerk interne link","anchorName":"Op naam interne link","charset":"Karakterset van gelinkte bron","cssClasses":"Stylesheet-klassen","emailAddress":"E-mailadres","emailBody":"Inhoud bericht","emailSubject":"Onderwerp bericht","id":"Id","info":"Linkomschrijving","langCode":"Taalcode","langDir":"Schrijfrichting","langDirLTR":"Links naar rechts (LTR)","langDirRTL":"Rechts naar links (RTL)","menu":"Link wijzigen","name":"Naam","noAnchors":"(Geen interne links in document gevonden)","noEmail":"Geef een e-mailadres","noUrl":"Geef de link van de URL","other":"<ander>","popupDependent":"Afhankelijk (Netscape)","popupFeatures":"Instellingen popupvenster","popupFullScreen":"Volledig scherm (IE)","popupLeft":"Positie links","popupLocationBar":"Locatiemenu","popupMenuBar":"Menubalk","popupResizable":"Herschaalbaar","popupScrollBars":"Schuifbalken","popupStatusBar":"Statusbalk","popupToolbar":"Werkbalk","popupTop":"Positie boven","rel":"Relatie","selectAnchor":"Kies een interne link","styles":"Stijl","tabIndex":"Tabvolgorde","target":"Doelvenster","targetFrame":"<frame>","targetFrameName":"Naam doelframe","targetPopup":"<popupvenster>","targetPopupName":"Naam popupvenster","title":"Link","toAnchor":"Interne link in pagina","toEmail":"E-mail","toUrl":"URL","toolbar":"Link invoegen/wijzigen","type":"Linktype","unlink":"Link verwijderen","upload":"Upload"},"list":{"bulletedlist":"Opsomming invoegen","numberedlist":"Genummerde lijst invoegen"},"maximize":{"maximize":"Maximaliseren","minimize":"Minimaliseren"},"pastefromword":{"confirmCleanup":"De tekst die u wilt plakken lijkt gekopieerd te zijn vanuit Word. Wilt u de tekst opschonen voordat deze geplakt wordt?","error":"Het was niet mogelijk om de geplakte tekst op te schonen door een interne fout","title":"Plakken vanuit Word","toolbar":"Plakken vanuit Word"},"pastetext":{"button":"Plakken als platte tekst","title":"Plakken als platte tekst"},"removeformat":{"toolbar":"Opmaak verwijderen"},"sourcearea":{"toolbar":"Broncode"},"stylescombo":{"label":"Stijl","panelTitle":"Opmaakstijlen","panelTitle1":"Blok stijlen","panelTitle2":"Inline stijlen","panelTitle3":"Object stijlen"},"table":{"border":"Randdikte","caption":"Onderschrift","cell":{"menu":"Cel","insertBefore":"Voeg cel in voor","insertAfter":"Voeg cel in na","deleteCell":"Cellen verwijderen","merge":"Cellen samenvoegen","mergeRight":"Voeg samen naar rechts","mergeDown":"Voeg samen naar beneden","splitHorizontal":"Splits cel horizontaal","splitVertical":"Splits cel vertikaal","title":"Celeigenschappen","cellType":"Celtype","rowSpan":"Rijen samenvoegen","colSpan":"Kolommen samenvoegen","wordWrap":"Automatische terugloop","hAlign":"Horizontale uitlijning","vAlign":"Verticale uitlijning","alignBaseline":"Tekstregel","bgColor":"Achtergrondkleur","borderColor":"Randkleur","data":"Gegevens","header":"Kop","yes":"Ja","no":"Nee","invalidWidth":"De celbreedte moet een getal zijn.","invalidHeight":"De celhoogte moet een getal zijn.","invalidRowSpan":"Rijen samenvoegen moet een heel getal zijn.","invalidColSpan":"Kolommen samenvoegen moet een heel getal zijn.","chooseColor":"Kies"},"cellPad":"Celopvulling","cellSpace":"Celafstand","column":{"menu":"Kolom","insertBefore":"Voeg kolom in voor","insertAfter":"Voeg kolom in na","deleteColumn":"Kolommen verwijderen"},"columns":"Kolommen","deleteTable":"Tabel verwijderen","headers":"Koppen","headersBoth":"Beide","headersColumn":"Eerste kolom","headersNone":"Geen","headersRow":"Eerste rij","invalidBorder":"De randdikte moet een getal zijn.","invalidCellPadding":"Celopvulling moet een getal zijn.","invalidCellSpacing":"Celafstand moet een getal zijn.","invalidCols":"Het aantal kolommen moet een getal zijn groter dan 0.","invalidHeight":"De tabelhoogte moet een getal zijn.","invalidRows":"Het aantal rijen moet een getal zijn groter dan 0.","invalidWidth":"De tabelbreedte moet een getal zijn.","menu":"Tabeleigenschappen","row":{"menu":"Rij","insertBefore":"Voeg rij in voor","insertAfter":"Voeg rij in na","deleteRow":"Rijen verwijderen"},"rows":"Rijen","summary":"Samenvatting","title":"Tabeleigenschappen","toolbar":"Tabel","widthPc":"procent","widthPx":"pixels","widthUnit":"eenheid breedte"},"toolbar":{"toolbarCollapse":"Werkbalk inklappen","toolbarExpand":"Werkbalk uitklappen","toolbarGroups":{"document":"Document","clipboard":"Klembord/Ongedaan maken","editing":"Bewerken","forms":"Formulieren","basicstyles":"Basisstijlen","paragraph":"Paragraaf","links":"Links","insert":"Invoegen","styles":"Stijlen","colors":"Kleuren","tools":"Toepassingen"},"toolbars":"Werkbalken"},"undo":{"redo":"Opnieuw uitvoeren","undo":"Ongedaan maken"},"sourcedialog":{"toolbar":"Broncode","title":"Broncode"},"acymediabrowser":{"toolbar":"Afbeelding"},"addtag":{"toolbar":"Tags"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/de.js000060400000027201152455705240020766 0ustar00CKEDITOR.lang['de']={"editor":"WYSIWYG-Editor","editorPanel":"WYSIWYG-Editor-Leiste","common":{"editorHelp":"Drücken Sie ALT 0 für Hilfe","browseServer":"Server durchsuchen","url":"URL","protocol":"Protokoll","upload":"Hochladen","uploadSubmit":"Zum Server senden","image":"Bild","flash":"Flash","form":"Formular","checkbox":"Checkbox","radio":"Radiobutton","textField":"Textfeld einzeilig","textarea":"Textfeld mehrzeilig","hiddenField":"Verstecktes Feld","button":"Klickbutton","select":"Auswahlfeld","imageButton":"Bildbutton","notSet":"<nichts>","id":"ID","name":"Name","langDir":"Schreibrichtung","langDirLtr":"Links nach Rechts (LTR)","langDirRtl":"Rechts nach Links (RTL)","langCode":"Sprachenkürzel","longDescr":"Langform URL","cssClass":"Stylesheet Klasse","advisoryTitle":"Titel Beschreibung","cssStyle":"Style","ok":"OK","cancel":"Abbrechen","close":"Schließen","preview":"Vorschau","resize":"Zum Vergrößern ziehen","generalTab":"Allgemein","advancedTab":"Erweitert","validateNumberFailed":"Dieser Wert ist keine Nummer.","confirmNewPage":"Alle nicht gespeicherten Änderungen gehen verlohren. Sind Sie sicher die neue Seite zu laden?","confirmCancel":"Einige Optionen wurden geändert. Wollen Sie den Dialog dennoch schließen?","options":"Optionen","target":"Zielseite","targetNew":"Neues Fenster (_blank)","targetTop":"Oberstes Fenster (_top)","targetSelf":"Gleiches Fenster (_self)","targetParent":"Oberes Fenster (_parent)","langDirLTR":"Links nach Rechts (LNR)","langDirRTL":"Rechts nach Links (RNL)","styles":"Style","cssClasses":"Stylesheet Klasse","width":"Breite","height":"Höhe","align":"Ausrichtung","alignLeft":"Links","alignRight":"Rechts","alignCenter":"Zentriert","alignJustify":"Blocksatz","alignTop":"Oben","alignMiddle":"Mitte","alignBottom":"Unten","alignNone":"Keine","invalidValue":"Ungültiger Wert.","invalidHeight":"Höhe muss eine Zahl sein.","invalidWidth":"Breite muss eine Zahl sein.","invalidCssLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","invalidHtmlLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte HTML Messeinheit (px oder %).","invalidInlineStyle":"Wert spezifiziert für inline Stilart muss enthalten ein oder mehr Tupels mit dem Format \"Name : Wert\" getrennt mit Semikolons.","cssLengthTooltip":"Gebe eine Zahl ein für ein Wert in pixels oder eine Zahl mit einer korrekten CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","unavailable":"%1<span class=\"cke_accessibility\">, nicht verfügbar</span>"},"basicstyles":{"bold":"Fett","italic":"Kursiv","strike":"Durchgestrichen","subscript":"Tiefgestellt","superscript":"Hochgestellt","underline":"Unterstrichen"},"blockquote":{"toolbar":"Zitatblock"},"clipboard":{"copy":"Kopieren","copyError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch kopieren. Bitte benutzen Sie die System-Zwischenablage über STRG-C (kopieren).","cut":"Ausschneiden","cutError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch auszuschneiden. Bitte benutzen Sie die System-Zwischenablage über STRG-X (ausschneiden) und STRG-V (einfügen).","paste":"Einfügen","pasteArea":"Einfügebereich","pasteMsg":"Bitte fügen Sie den Text in der folgenden Box über die Tastatur (mit <STRONG>Strg+V</STRONG>) ein und bestätigen Sie mit <STRONG>OK</STRONG>.","securityMsg":"Aufgrund von Sicherheitsbeschränkungen Ihres Browsers kann der Editor nicht direkt auf die Zwischenablage zugreifen. Bitte fügen Sie den Inhalt erneut in diesem Fenster ein.","title":"Einfügen"},"button":{"selectedLabel":"%1 (Ausgewählt)"},"colorbutton":{"auto":"Automatisch","bgColorTitle":"Hintergrundfarbe","colors":{"000":"Schwarz","800000":"Kastanienbraun","8B4513":"Braun","2F4F4F":"Dunkles Schiefergrau","008080":"Blaugrün","000080":"Navy","4B0082":"Indigo","696969":"Dunkelgrau","B22222":"Ziegelrot","A52A2A":"Braun","DAA520":"Goldgelb","006400":"Dunkelgrün","40E0D0":"Türkis","0000CD":"Medium Blau","800080":"Lila","808080":"Grau","F00":"Rot","FF8C00":"Dunkelorange","FFD700":"Gold","008000":"Grün","0FF":"Cyan","00F":"Blau","EE82EE":"Hellviolett","A9A9A9":"Dunkelgrau","FFA07A":"Helles Lachsrosa","FFA500":"Orange","FFFF00":"Gelb","00FF00":"Lime","AFEEEE":"Blaß-Türkis","ADD8E6":"Hellblau","DDA0DD":"Pflaumenblau","D3D3D3":"Hellgrau","FFF0F5":"Lavendel","FAEBD7":"Antik Weiß","FFFFE0":"Hellgelb","F0FFF0":"Honigtau","F0FFFF":"Azurblau","F0F8FF":"Alice Blau","E6E6FA":"Lavendel","FFF":"Weiß"},"more":"Weitere Farben...","panelTitle":"Farben","textColorTitle":"Textfarbe"},"colordialog":{"clear":"Entfernen","highlight":"Hervorheben","options":"Farbeoptionen","selected":"Ausgewählte Farbe","title":"Farbe wählen"},"contextmenu":{"options":"Kontextmenü Optionen"},"elementspath":{"eleLabel":"Elements Pfad","eleTitle":"%1 Element"},"font":{"fontSize":{"label":"Größe","voiceLabel":"Schrifgröße","panelTitle":"Größe"},"label":"Schriftart","panelTitle":"Schriftart","voiceLabel":"Schriftart"},"format":{"label":"Format","panelTitle":"Format","tag_address":"Addresse","tag_div":"Normal (DIV)","tag_h1":"Überschrift 1","tag_h2":"Überschrift 2","tag_h3":"Überschrift 3","tag_h4":"Überschrift 4","tag_h5":"Überschrift 5","tag_h6":"Überschrift 6","tag_p":"Normal","tag_pre":"Formatiert"},"horizontalrule":{"toolbar":"Horizontale Linie einfügen"},"image":{"alertUrl":"Bitte geben Sie die Bild-URL an","alt":"Alternativer Text","border":"Rahmen","btnUpload":"Zum Server senden","button2Img":"Möchten Sie den gewählten Bild-Button in ein einfaches Bild umwandeln?","hSpace":"Horizontal-Abstand","img2Button":"Möchten Sie das gewählten Bild in einen Bild-Button umwandeln?","infoTab":"Bild-Info","linkTab":"Link","lockRatio":"Größenverhältnis beibehalten","menu":"Bild-Eigenschaften","resetSize":"Größe zurücksetzen","title":"Bild-Eigenschaften","titleButton":"Bildbutton-Eigenschaften","upload":"Hochladen","urlMissing":"Imagequelle URL fehlt.","vSpace":"Vertikal-Abstand","validateBorder":"Rahmen muß eine ganze Zahl sein.","validateHSpace":"Horizontal-Abstand muß eine ganze Zahl sein.","validateVSpace":"Vertikal-Abstand muß eine ganze Zahl sein."},"indent":{"indent":"Einzug erhöhen","outdent":"Einzug verringern"},"justify":{"block":"Blocksatz","center":"Zentriert","left":"Linksbündig","right":"Rechtsbündig"},"fakeobjects":{"anchor":"Anker","flash":"Flash Animation","hiddenfield":"Verstecktes Feld","iframe":"IFrame","unknown":"Unbekanntes Objekt"},"link":{"acccessKey":"Zugriffstaste","advanced":"Erweitert","advisoryContentType":"Inhaltstyp","advisoryTitle":"Titel Beschreibung","anchor":{"toolbar":"Anker einfügen/editieren","menu":"Anker-Eigenschaften","title":"Anker-Eigenschaften","name":"Anker Name","errorName":"Bitte geben Sie den Namen des Ankers ein","remove":"Anker entfernen"},"anchorId":"nach Element Id","anchorName":"nach Anker Name","charset":"Ziel-Zeichensatz","cssClasses":"Stylesheet Klasse","emailAddress":"E-Mail Adresse","emailBody":"Nachrichtentext","emailSubject":"Betreffzeile","id":"Id","info":"Link-Info","langCode":"Sprachenkürzel","langDir":"Schreibrichtung","langDirLTR":"Links nach Rechts (LTR)","langDirRTL":"Rechts nach Links (RTL)","menu":"Link editieren","name":"Name","noAnchors":"(keine Anker im Dokument vorhanden)","noEmail":"Bitte geben Sie e-Mail Adresse an","noUrl":"Bitte geben Sie die Link-URL an","other":"<andere>","popupDependent":"Abhängig (Netscape)","popupFeatures":"Pop-up Fenster-Eigenschaften","popupFullScreen":"Vollbild (IE)","popupLeft":"Linke Position","popupLocationBar":"Adress-Leiste","popupMenuBar":"Menü-Leiste","popupResizable":"Größe änderbar","popupScrollBars":"Rollbalken","popupStatusBar":"Statusleiste","popupToolbar":"Symbolleiste","popupTop":"Obere Position","rel":"Beziehung","selectAnchor":"Anker auswählen","styles":"Style","tabIndex":"Tab-Index","target":"Zielseite","targetFrame":"<Frame>","targetFrameName":"Ziel-Fenster-Name","targetPopup":"<Pop-up Fenster>","targetPopupName":"Pop-up Fenster-Name","title":"Link","toAnchor":"Anker in dieser Seite","toEmail":"E-Mail","toUrl":"URL","toolbar":"Link einfügen/editieren","type":"Link-Typ","unlink":"Link entfernen","upload":"Hochladen"},"list":{"bulletedlist":"Liste","numberedlist":"Nummerierte Liste"},"maximize":{"maximize":"Maximieren","minimize":"Minimieren"},"pastefromword":{"confirmCleanup":"Der Text, den Sie einfügen möchten, scheint aus MS-Word kopiert zu sein. Möchten Sie ihn zuvor bereinigen lassen?","error":"Aufgrund eines internen Fehlers war es nicht möglich die eingefügten Daten zu bereinigen","title":"Aus MS-Word einfügen","toolbar":"Aus MS-Word einfügen"},"pastetext":{"button":"Als Text einfügen","title":"Als Text einfügen"},"removeformat":{"toolbar":"Formatierungen entfernen"},"sourcearea":{"toolbar":"Quellcode"},"stylescombo":{"label":"Stil","panelTitle":"Formatierungsstile","panelTitle1":"Block Stilart","panelTitle2":"Inline Stilart","panelTitle3":"Objekt Stilart"},"table":{"border":"Rahmen","caption":"Überschrift","cell":{"menu":"Zelle","insertBefore":"Zelle davor einfügen","insertAfter":"Zelle danach einfügen","deleteCell":"Zelle löschen","merge":"Zellen verbinden","mergeRight":"Nach rechts verbinden","mergeDown":"Nach unten verbinden","splitHorizontal":"Zelle horizontal teilen","splitVertical":"Zelle vertikal teilen","title":"Zellen-Eigenschaften","cellType":"Zellart","rowSpan":"Anzahl Zeilen verbinden","colSpan":"Anzahl Spalten verbinden","wordWrap":"Zeilenumbruch","hAlign":"Horizontale Ausrichtung","vAlign":"Vertikale Ausrichtung","alignBaseline":"Grundlinie","bgColor":"Hintergrundfarbe","borderColor":"Rahmenfarbe","data":"Daten","header":"Überschrift","yes":"Ja","no":"Nein","invalidWidth":"Zellenbreite muß eine Zahl sein.","invalidHeight":"Zellenhöhe muß eine Zahl sein.","invalidRowSpan":"\"Anzahl Zeilen verbinden\" muss eine Ganzzahl sein.","invalidColSpan":"\"Anzahl Spalten verbinden\" muss eine Ganzzahl sein.","chooseColor":"Wählen"},"cellPad":"Zellenabstand innen","cellSpace":"Zellenabstand außen","column":{"menu":"Spalte","insertBefore":"Spalte links davor einfügen","insertAfter":"Spalte rechts danach einfügen","deleteColumn":"Spalte löschen"},"columns":"Spalte","deleteTable":"Tabelle löschen","headers":"Kopfzeile","headersBoth":"Beide","headersColumn":"Erste Spalte","headersNone":"Keine","headersRow":"Erste Zeile","invalidBorder":"Die Rahmenbreite muß eine Zahl sein.","invalidCellPadding":"Der Zellenabstand innen muß eine positive Zahl sein.","invalidCellSpacing":"Der Zellenabstand außen muß eine positive Zahl sein.","invalidCols":"Die Anzahl der Spalten muß größer als 0 sein..","invalidHeight":"Die Tabellenbreite muß eine Zahl sein.","invalidRows":"Die Anzahl der Zeilen muß größer als 0 sein.","invalidWidth":"Die Tabellenbreite muss eine Zahl sein.","menu":"Tabellen-Eigenschaften","row":{"menu":"Zeile","insertBefore":"Zeile oberhalb einfügen","insertAfter":"Zeile unterhalb einfügen","deleteRow":"Zeile entfernen"},"rows":"Zeile","summary":"Inhaltsübersicht","title":"Tabellen-Eigenschaften","toolbar":"Tabelle","widthPc":"%","widthPx":"Pixel","widthUnit":"Breite Einheit"},"toolbar":{"toolbarCollapse":"Symbolleiste einklappen","toolbarExpand":"Symbolleiste ausklappen","toolbarGroups":{"document":"Dokument","clipboard":"Zwischenablage/Rückgängig","editing":"Editieren","forms":"Formularen","basicstyles":"Grundstile","paragraph":"Absatz","links":"Links","insert":"Einfügen","styles":"Stile","colors":"Farben","tools":"Werkzeuge"},"toolbars":"Editor Symbolleisten"},"undo":{"redo":"Wiederherstellen","undo":"Rückgängig"},"sourcedialog":{"toolbar":"Quellcode","title":"Quellcode"},"acymediabrowser":{"toolbar":"Bild"},"addtag":{"toolbar":"Schlagworte"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/pt-br.js000060400000027422152455705240021427 0ustar00CKEDITOR.lang['pt-br']={"editor":"Editor de Rich Text","editorPanel":"Painel do editor de Rich Text","common":{"editorHelp":"Pressione ALT+0 para ajuda","browseServer":"Localizar no Servidor","url":"URL","protocol":"Protocolo","upload":"Enviar ao Servidor","uploadSubmit":"Enviar para o Servidor","image":"Imagem","flash":"Flash","form":"Formulário","checkbox":"Caixa de Seleção","radio":"Botão de Opção","textField":"Caixa de Texto","textarea":"Área de Texto","hiddenField":"Campo Oculto","button":"Botão","select":"Caixa de Listagem","imageButton":"Botão de Imagem","notSet":"<não ajustado>","id":"Id","name":"Nome","langDir":"Direção do idioma","langDirLtr":"Esquerda para Direita (LTR)","langDirRtl":"Direita para Esquerda (RTL)","langCode":"Idioma","longDescr":"Descrição da URL","cssClass":"Classe de CSS","advisoryTitle":"Título","cssStyle":"Estilos","ok":"OK","cancel":"Cancelar","close":"Fechar","preview":"Visualizar","resize":"Arraste para redimensionar","generalTab":"Geral","advancedTab":"Avançado","validateNumberFailed":"Este valor não é um número.","confirmNewPage":"Todas as mudanças não salvas serão perdidas. Tem certeza de que quer abrir uma nova página?","confirmCancel":"Algumas opções foram alteradas. Tem certeza de que quer fechar a caixa de diálogo?","options":"Opções","target":"Destino","targetNew":"Nova Janela (_blank)","targetTop":"Janela de Cima (_top)","targetSelf":"Mesma Janela (_self)","targetParent":"Janela Pai (_parent)","langDirLTR":"Esquerda para Direita (LTR)","langDirRTL":"Direita para Esquerda (RTL)","styles":"Estilo","cssClasses":"Classes","width":"Largura","height":"Altura","align":"Alinhamento","alignLeft":"Esquerda","alignRight":"Direita","alignCenter":"Centralizado","alignJustify":"Justificar","alignTop":"Superior","alignMiddle":"Centralizado","alignBottom":"Inferior","alignNone":"Nenhum","invalidValue":"Valor inválido.","invalidHeight":"A altura tem que ser um número","invalidWidth":"A largura tem que ser um número.","invalidCssLength":"O valor do campo \"%1\" deve ser um número positivo opcionalmente seguido por uma válida unidade de medida de CSS (px, %, in, cm, mm, em, ex, pt ou pc).","invalidHtmlLength":"O valor do campo \"%1\" deve ser um número positivo opcionalmente seguido por uma válida unidade de medida de HTML (px ou %).","invalidInlineStyle":"O valor válido para estilo deve conter uma ou mais tuplas no formato \"nome : valor\", separados por ponto e vírgula.","cssLengthTooltip":"Insira um número para valor em pixels ou um número seguido de uma válida unidade de medida de CSS (px, %, in, cm, mm, em, ex, pt ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, indisponível</span>"},"basicstyles":{"bold":"Negrito","italic":"Itálico","strike":"Tachado","subscript":"Subscrito","superscript":"Sobrescrito","underline":"Sublinhado"},"blockquote":{"toolbar":"Citação"},"clipboard":{"copy":"Copiar","copyError":"As configurações de segurança do seu navegador não permitem que o editor execute operações de copiar automaticamente. Por favor, utilize o teclado para copiar (Ctrl/Cmd+C).","cut":"Recortar","cutError":"As configurações de segurança do seu navegador não permitem que o editor execute operações de recortar automaticamente. Por favor, utilize o teclado para recortar (Ctrl/Cmd+X).","paste":"Colar","pasteArea":"Área para Colar","pasteMsg":"Transfira o link usado na caixa usando o teclado com (<STRONG>Ctrl/Cmd+V</STRONG>) e <STRONG>OK</STRONG>.","securityMsg":"As configurações de segurança do seu navegador não permitem que o editor acesse os dados da área de transferência diretamente. Por favor cole o conteúdo manualmente nesta janela.","title":"Colar"},"button":{"selectedLabel":"%1 (Selecionado)"},"colorbutton":{"auto":"Automático","bgColorTitle":"Cor do Plano de Fundo","colors":{"000":"Preto","800000":"Foquete","8B4513":"Marrom 1","2F4F4F":"Cinza 1","008080":"Cerceta","000080":"Azul Marinho","4B0082":"Índigo","696969":"Cinza 2","B22222":"Tijolo de Fogo","A52A2A":"Marrom 2","DAA520":"Vara Dourada","006400":"Verde Escuro","40E0D0":"Turquesa","0000CD":"Azul Médio","800080":"Roxo","808080":"Cinza 3","F00":"Vermelho","FF8C00":"Laranja Escuro","FFD700":"Dourado","008000":"Verde","0FF":"Ciano","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Cinza Escuro","FFA07A":"Salmão Claro","FFA500":"Laranja","FFFF00":"Amarelo","00FF00":"Lima","AFEEEE":"Turquesa Pálido","ADD8E6":"Azul Claro","DDA0DD":"Ameixa","D3D3D3":"Cinza Claro","FFF0F5":"Lavanda 1","FAEBD7":"Branco Antiguidade","FFFFE0":"Amarelo Claro","F0FFF0":"Orvalho","F0FFFF":"Azure","F0F8FF":"Azul Alice","E6E6FA":"Lavanda 2","FFF":"Branco"},"more":"Mais Cores...","panelTitle":"Cores","textColorTitle":"Cor do Texto"},"colordialog":{"clear":"Limpar","highlight":"Grifar","options":"Opções de Cor","selected":"Cor Selecionada","title":"Selecione uma Cor"},"contextmenu":{"options":"Opções Menu de Contexto"},"elementspath":{"eleLabel":"Caminho dos Elementos","eleTitle":"Elemento %1"},"font":{"fontSize":{"label":"Tamanho","voiceLabel":"Tamanho da fonte","panelTitle":"Tamanho"},"label":"Fonte","panelTitle":"Fonte","voiceLabel":"Fonte"},"format":{"label":"Formatação","panelTitle":"Formatação","tag_address":"Endereço","tag_div":"Normal (DIV)","tag_h1":"Título 1","tag_h2":"Título 2","tag_h3":"Título 3","tag_h4":"Título 4","tag_h5":"Título 5","tag_h6":"Título 6","tag_p":"Normal","tag_pre":"Formatado"},"horizontalrule":{"toolbar":"Inserir Linha Horizontal"},"image":{"alertUrl":"Por favor, digite a URL da imagem.","alt":"Texto Alternativo","border":"Borda","btnUpload":"Enviar para o Servidor","button2Img":"Deseja transformar o botão de imagem em uma imagem comum?","hSpace":"HSpace","img2Button":"Deseja transformar a imagem em um botão de imagem?","infoTab":"Informações da Imagem","linkTab":"Link","lockRatio":"Travar Proporções","menu":"Formatar Imagem","resetSize":"Redefinir para o Tamanho Original","title":"Formatar Imagem","titleButton":"Formatar Botão de Imagem","upload":"Enviar","urlMissing":"URL da imagem está faltando.","vSpace":"VSpace","validateBorder":"A borda deve ser um número inteiro.","validateHSpace":"O HSpace deve ser um número inteiro.","validateVSpace":"O VSpace deve ser um número inteiro."},"indent":{"indent":"Aumentar Recuo","outdent":"Diminuir Recuo"},"justify":{"block":"Justificado","center":"Centralizar","left":"Alinhar Esquerda","right":"Alinhar Direita"},"fakeobjects":{"anchor":"Âncora","flash":"Animação em Flash","hiddenfield":"Campo Oculto","iframe":"IFrame","unknown":"Objeto desconhecido"},"link":{"acccessKey":"Chave de Acesso","advanced":"Avançado","advisoryContentType":"Tipo de Conteúdo","advisoryTitle":"Título","anchor":{"toolbar":"Inserir/Editar Âncora","menu":"Formatar Âncora","title":"Formatar Âncora","name":"Nome da Âncora","errorName":"Por favor, digite o nome da âncora","remove":"Remover Âncora"},"anchorId":"Id da âncora","anchorName":"Nome da âncora","charset":"Charset do Link","cssClasses":"Classe de CSS","emailAddress":"Endereço E-Mail","emailBody":"Corpo da Mensagem","emailSubject":"Assunto da Mensagem","id":"Id","info":"Informações","langCode":"Direção do idioma","langDir":"Direção do idioma","langDirLTR":"Esquerda para Direita (LTR)","langDirRTL":"Direita para Esquerda (RTL)","menu":"Editar Link","name":"Nome","noAnchors":"(Não há âncoras no documento)","noEmail":"Por favor, digite o endereço de e-mail","noUrl":"Por favor, digite o endereço do Link","other":"<outro>","popupDependent":"Dependente (Netscape)","popupFeatures":"Propriedades da Janela Pop-up","popupFullScreen":"Modo Tela Cheia (IE)","popupLeft":"Esquerda","popupLocationBar":"Barra de Endereços","popupMenuBar":"Barra de Menus","popupResizable":"Redimensionável","popupScrollBars":"Barras de Rolagem","popupStatusBar":"Barra de Status","popupToolbar":"Barra de Ferramentas","popupTop":"Topo","rel":"Tipo de Relação","selectAnchor":"Selecione uma âncora","styles":"Estilos","tabIndex":"Índice de Tabulação","target":"Destino","targetFrame":"<frame>","targetFrameName":"Nome do Frame de Destino","targetPopup":"<janela popup>","targetPopupName":"Nome da Janela Pop-up","title":"Editar Link","toAnchor":"Âncora nesta página","toEmail":"E-Mail","toUrl":"URL","toolbar":"Inserir/Editar Link","type":"Tipo de hiperlink","unlink":"Remover Link","upload":"Enviar ao Servidor"},"list":{"bulletedlist":"Lista sem números","numberedlist":"Lista numerada"},"maximize":{"maximize":"Maximizar","minimize":"Minimize"},"pastefromword":{"confirmCleanup":"O texto que você deseja colar parece ter sido copiado do Word. Você gostaria de remover a formatação antes de colar?","error":"Não foi possível limpar os dados colados devido a um erro interno","title":"Colar do Word","toolbar":"Colar do Word"},"pastetext":{"button":"Colar como Texto sem Formatação","title":"Colar como Texto sem Formatação"},"removeformat":{"toolbar":"Remover Formatação"},"sourcearea":{"toolbar":"Código-Fonte"},"stylescombo":{"label":"Estilo","panelTitle":"Estilos de Formatação","panelTitle1":"Estilos de bloco","panelTitle2":"Estilos de texto corrido","panelTitle3":"Estilos de objeto"},"table":{"border":"Borda","caption":"Legenda","cell":{"menu":"Célula","insertBefore":"Inserir célula a esquerda","insertAfter":"Inserir célula a direita","deleteCell":"Remover Células","merge":"Mesclar Células","mergeRight":"Mesclar com célula a direita","mergeDown":"Mesclar com célula abaixo","splitHorizontal":"Dividir célula horizontalmente","splitVertical":"Dividir célula verticalmente","title":"Propriedades da célula","cellType":"Tipo de célula","rowSpan":"Linhas cobertas","colSpan":"Colunas cobertas","wordWrap":"Quebra de palavra","hAlign":"Alinhamento horizontal","vAlign":"Alinhamento vertical","alignBaseline":"Patamar de alinhamento","bgColor":"Cor de fundo","borderColor":"Cor das bordas","data":"Dados","header":"Cabeçalho","yes":"Sim","no":"Não","invalidWidth":"A largura da célula tem que ser um número.","invalidHeight":"A altura da célula tem que ser um número.","invalidRowSpan":"Linhas cobertas tem que ser um número inteiro.","invalidColSpan":"Colunas cobertas tem que ser um número inteiro.","chooseColor":"Escolher"},"cellPad":"Margem interna","cellSpace":"Espaçamento","column":{"menu":"Coluna","insertBefore":"Inserir coluna a esquerda","insertAfter":"Inserir coluna a direita","deleteColumn":"Remover Colunas"},"columns":"Colunas","deleteTable":"Apagar Tabela","headers":"Cabeçalho","headersBoth":"Ambos","headersColumn":"Primeira coluna","headersNone":"Nenhum","headersRow":"Primeira linha","invalidBorder":"O tamanho da borda tem que ser um número.","invalidCellPadding":"A margem interna das células tem que ser um número.","invalidCellSpacing":"O espaçamento das células tem que ser um número.","invalidCols":"O número de colunas tem que ser um número maior que 0.","invalidHeight":"A altura da tabela tem que ser um número.","invalidRows":"O número de linhas tem que ser um número maior que 0.","invalidWidth":"A largura da tabela tem que ser um número.","menu":"Formatar Tabela","row":{"menu":"Linha","insertBefore":"Inserir linha acima","insertAfter":"Inserir linha abaixo","deleteRow":"Remover Linhas"},"rows":"Linhas","summary":"Resumo","title":"Formatar Tabela","toolbar":"Tabela","widthPc":"%","widthPx":"pixels","widthUnit":"unidade largura"},"toolbar":{"toolbarCollapse":"Diminuir Barra de Ferramentas","toolbarExpand":"Aumentar Barra de Ferramentas","toolbarGroups":{"document":"Documento","clipboard":"Clipboard/Desfazer","editing":"Edição","forms":"Formulários","basicstyles":"Estilos Básicos","paragraph":"Paragrafo","links":"Links","insert":"Inserir","styles":"Estilos","colors":"Cores","tools":"Ferramentas"},"toolbars":"Barra de Ferramentas do Editor"},"undo":{"redo":"Refazer","undo":"Desfazer"},"sourcedialog":{"toolbar":"Código-Fonte","title":"Código-Fonte"},"acymediabrowser":{"toolbar":"Imagem"},"addtag":{"toolbar":"Etiqueta"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/es.js000060400000027624152455705240021016 0ustar00CKEDITOR.lang['es']={"editor":"Editor de texto enriquecido","editorPanel":"Panel del Editor de Texto Enriquecido","common":{"editorHelp":"Pulse ALT 0 para ayuda","browseServer":"Ver Servidor","url":"URL","protocol":"Protocolo","upload":"Cargar","uploadSubmit":"Enviar al Servidor","image":"Imagen","flash":"Flash","form":"Formulario","checkbox":"Casilla de Verificación","radio":"Botones de Radio","textField":"Campo de Texto","textarea":"Area de Texto","hiddenField":"Campo Oculto","button":"Botón","select":"Campo de Selección","imageButton":"Botón Imagen","notSet":"<No definido>","id":"Id","name":"Nombre","langDir":"Orientación","langDirLtr":"Izquierda a Derecha (LTR)","langDirRtl":"Derecha a Izquierda (RTL)","langCode":"Cód. de idioma","longDescr":"Descripción larga URL","cssClass":"Clases de hojas de estilo","advisoryTitle":"Título","cssStyle":"Estilo","ok":"Aceptar","cancel":"Cancelar","close":"Cerrar","preview":"Previsualización","resize":"Arrastre para redimensionar","generalTab":"General","advancedTab":"Avanzado","validateNumberFailed":"El valor no es un número.","confirmNewPage":"Cualquier cambio que no se haya guardado se perderá.\r\n¿Está seguro de querer crear una nueva página?","confirmCancel":"Algunas de las opciones se han cambiado.\r\n¿Está seguro de querer cerrar el diálogo?","options":"Opciones","target":"Destino","targetNew":"Nueva ventana (_blank)","targetTop":"Ventana principal (_top)","targetSelf":"Misma ventana (_self)","targetParent":"Ventana padre (_parent)","langDirLTR":"Izquierda a derecha (LTR)","langDirRTL":"Derecha a izquierda (RTL)","styles":"Estilos","cssClasses":"Clase de la hoja de estilos","width":"Anchura","height":"Altura","align":"Alineación","alignLeft":"Izquierda","alignRight":"Derecha","alignCenter":"Centrado","alignJustify":"Justificado","alignTop":"Tope","alignMiddle":"Centro","alignBottom":"Pie","alignNone":"None","invalidValue":"Valor no válido","invalidHeight":"Altura debe ser un número.","invalidWidth":"Anchura debe ser un número.","invalidCssLength":"El valor especificado para el campo \"%1\" debe ser un número positivo, incluyendo optionalmente una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, o pc).","invalidHtmlLength":"El valor especificado para el campo \"%1\" debe ser un número positivo, incluyendo optionalmente una unidad de medida HTML válida (px o %).","invalidInlineStyle":"El valor especificado para el estilo debe consistir en uno o más pares con el formato \"nombre: valor\", separados por punto y coma.","cssLengthTooltip":"Introduca un número para el valor en pixels o un número con una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, o pc).","unavailable":"%1<span class=\"cke_accessibility\">, no disponible</span>"},"basicstyles":{"bold":"Negrita","italic":"Cursiva","strike":"Tachado","subscript":"Subíndice","superscript":"Superíndice","underline":"Subrayado"},"blockquote":{"toolbar":"Cita"},"clipboard":{"copy":"Copiar","copyError":"La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de copiado.\r\nPor favor use el teclado (Ctrl/Cmd+C).","cut":"Cortar","cutError":"La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de cortado.\r\nPor favor use el teclado (Ctrl/Cmd+X).","paste":"Pegar","pasteArea":"Zona de pegado","pasteMsg":"Por favor pegue dentro del cuadro utilizando el teclado (<STRONG>Ctrl/Cmd+V</STRONG>);\r\nluego presione <STRONG>Aceptar</STRONG>.","securityMsg":"Debido a la configuración de seguridad de su navegador, el editor no tiene acceso al portapapeles.\r\nEs necesario que lo pegue de nuevo en esta ventana.","title":"Pegar"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automático","bgColorTitle":"Color de Fondo","colors":{"000":"Negro","800000":"Marrón oscuro","8B4513":"Marrón tierra","2F4F4F":"Pizarra Oscuro","008080":"Azul verdoso","000080":"Azul marino","4B0082":"Añil","696969":"Gris oscuro","B22222":"Ladrillo","A52A2A":"Marrón","DAA520":"Oro oscuro","006400":"Verde oscuro","40E0D0":"Turquesa","0000CD":"Azul medio-oscuro","800080":"Púrpura","808080":"Gris","F00":"Rojo","FF8C00":"Naranja oscuro","FFD700":"Oro","008000":"Verde","0FF":"Cian","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Gris medio","FFA07A":"Salmón claro","FFA500":"Naranja","FFFF00":"Amarillo","00FF00":"Lima","AFEEEE":"Turquesa claro","ADD8E6":"Azul claro","DDA0DD":"Violeta claro","D3D3D3":"Gris claro","FFF0F5":"Lavanda rojizo","FAEBD7":"Blanco antiguo","FFFFE0":"Amarillo claro","F0FFF0":"Miel","F0FFFF":"Azul celeste","F0F8FF":"Azul pálido","E6E6FA":"Lavanda","FFF":"Blanco"},"more":"Más Colores...","panelTitle":"Colores","textColorTitle":"Color de Texto"},"colordialog":{"clear":"Borrar","highlight":"Muestra","options":"Opciones de colores","selected":"Elegido","title":"Elegir color"},"contextmenu":{"options":"Opciones del menú contextual"},"elementspath":{"eleLabel":"Ruta de los elementos","eleTitle":"%1 elemento"},"font":{"fontSize":{"label":"Tamaño","voiceLabel":"Tamaño de fuente","panelTitle":"Tamaño"},"label":"Fuente","panelTitle":"Fuente","voiceLabel":"Fuente"},"format":{"label":"Formato","panelTitle":"Formato","tag_address":"Dirección","tag_div":"Normal (DIV)","tag_h1":"Encabezado 1","tag_h2":"Encabezado 2","tag_h3":"Encabezado 3","tag_h4":"Encabezado 4","tag_h5":"Encabezado 5","tag_h6":"Encabezado 6","tag_p":"Normal","tag_pre":"Con formato"},"horizontalrule":{"toolbar":"Insertar Línea Horizontal"},"image":{"alertUrl":"Por favor escriba la URL de la imagen","alt":"Texto Alternativo","border":"Borde","btnUpload":"Enviar al Servidor","button2Img":"¿Desea convertir el botón de imagen en una simple imagen?","hSpace":"Esp.Horiz","img2Button":"¿Desea convertir la imagen en un botón de imagen?","infoTab":"Información de Imagen","linkTab":"Vínculo","lockRatio":"Proporcional","menu":"Propiedades de Imagen","resetSize":"Tamaño Original","title":"Propiedades de Imagen","titleButton":"Propiedades de Botón de Imagen","upload":"Cargar","urlMissing":"Debe indicar la URL de la imagen.","vSpace":"Esp.Vert","validateBorder":"El borde debe ser un número.","validateHSpace":"El espaciado horizontal debe ser un número.","validateVSpace":"El espaciado vertical debe ser un número."},"indent":{"indent":"Aumentar Sangría","outdent":"Disminuir Sangría"},"justify":{"block":"Justificado","center":"Centrar","left":"Alinear a Izquierda","right":"Alinear a Derecha"},"fakeobjects":{"anchor":"Ancla","flash":"Animación flash","hiddenfield":"Campo oculto","iframe":"IFrame","unknown":"Objeto desconocido"},"link":{"acccessKey":"Tecla de Acceso","advanced":"Avanzado","advisoryContentType":"Tipo de Contenido","advisoryTitle":"Título","anchor":{"toolbar":"Referencia","menu":"Propiedades de Referencia","title":"Propiedades de Referencia","name":"Nombre de la Referencia","errorName":"Por favor, complete el nombre de la Referencia","remove":"Quitar Referencia"},"anchorId":"Por ID de elemento","anchorName":"Por Nombre de Referencia","charset":"Fuente de caracteres vinculado","cssClasses":"Clases de hojas de estilo","emailAddress":"Dirección de E-Mail","emailBody":"Cuerpo del Mensaje","emailSubject":"Título del Mensaje","id":"Id","info":"Información de Vínculo","langCode":"Código idioma","langDir":"Orientación","langDirLTR":"Izquierda a Derecha (LTR)","langDirRTL":"Derecha a Izquierda (RTL)","menu":"Editar Vínculo","name":"Nombre","noAnchors":"(No hay referencias disponibles en el documento)","noEmail":"Por favor escriba la dirección de e-mail","noUrl":"Por favor escriba el vínculo URL","other":"<otro>","popupDependent":"Dependiente (Netscape)","popupFeatures":"Características de Ventana Emergente","popupFullScreen":"Pantalla Completa (IE)","popupLeft":"Posición Izquierda","popupLocationBar":"Barra de ubicación","popupMenuBar":"Barra de Menú","popupResizable":"Redimensionable","popupScrollBars":"Barras de desplazamiento","popupStatusBar":"Barra de Estado","popupToolbar":"Barra de Herramientas","popupTop":"Posición Derecha","rel":"Relación","selectAnchor":"Seleccionar una referencia","styles":"Estilo","tabIndex":"Indice de tabulación","target":"Destino","targetFrame":"<marco>","targetFrameName":"Nombre del Marco Destino","targetPopup":"<ventana emergente>","targetPopupName":"Nombre de Ventana Emergente","title":"Vínculo","toAnchor":"Referencia en esta página","toEmail":"E-Mail","toUrl":"URL","toolbar":"Insertar/Editar Vínculo","type":"Tipo de vínculo","unlink":"Eliminar Vínculo","upload":"Cargar"},"list":{"bulletedlist":"Viñetas","numberedlist":"Numeración"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"pastefromword":{"confirmCleanup":"El texto que desea parece provenir de Word.\r\n¿Desea depurarlo antes de pegarlo?","error":"No ha sido posible limpiar los datos debido a un error interno","title":"Pegar desde Word","toolbar":"Pegar desde Word"},"pastetext":{"button":"Pegar como Texto Plano","title":"Pegar como Texto Plano"},"removeformat":{"toolbar":"Eliminar Formato"},"sourcearea":{"toolbar":"Fuente HTML"},"stylescombo":{"label":"Estilo","panelTitle":"Estilos para formatear","panelTitle1":"Estilos de párrafo","panelTitle2":"Estilos de carácter","panelTitle3":"Estilos de objeto"},"table":{"border":"Tamaño de Borde","caption":"Título","cell":{"menu":"Celda","insertBefore":"Insertar celda a la izquierda","insertAfter":"Insertar celda a la derecha","deleteCell":"Eliminar Celdas","merge":"Combinar Celdas","mergeRight":"Combinar a la derecha","mergeDown":"Combinar hacia abajo","splitHorizontal":"Dividir la celda horizontalmente","splitVertical":"Dividir la celda verticalmente","title":"Propiedades de celda","cellType":"Tipo de Celda","rowSpan":"Expandir filas","colSpan":"Expandir columnas","wordWrap":"Ajustar al contenido","hAlign":"Alineación Horizontal","vAlign":"Alineación Vertical","alignBaseline":"Linea de base","bgColor":"Color de fondo","borderColor":"Color de borde","data":"Datos","header":"Encabezado","yes":"Sí","no":"No","invalidWidth":"La anchura de celda debe ser un número.","invalidHeight":"La altura de celda debe ser un número.","invalidRowSpan":"La expansión de filas debe ser un número entero.","invalidColSpan":"La expansión de columnas debe ser un número entero.","chooseColor":"Elegir"},"cellPad":"Esp. interior","cellSpace":"Esp. e/celdas","column":{"menu":"Columna","insertBefore":"Insertar columna a la izquierda","insertAfter":"Insertar columna a la derecha","deleteColumn":"Eliminar Columnas"},"columns":"Columnas","deleteTable":"Eliminar Tabla","headers":"Encabezados","headersBoth":"Ambas","headersColumn":"Primera columna","headersNone":"Ninguno","headersRow":"Primera fila","invalidBorder":"El tamaño del borde debe ser un número.","invalidCellPadding":"El espaciado interior debe ser un número.","invalidCellSpacing":"El espaciado entre celdas debe ser un número.","invalidCols":"El número de columnas debe ser un número mayor que 0.","invalidHeight":"La altura de tabla debe ser un número.","invalidRows":"El número de filas debe ser un número mayor que 0.","invalidWidth":"La anchura de tabla debe ser un número.","menu":"Propiedades de Tabla","row":{"menu":"Fila","insertBefore":"Insertar fila en la parte superior","insertAfter":"Insertar fila en la parte inferior","deleteRow":"Eliminar Filas"},"rows":"Filas","summary":"Síntesis","title":"Propiedades de Tabla","toolbar":"Tabla","widthPc":"porcentaje","widthPx":"pixeles","widthUnit":"unidad de la anchura"},"toolbar":{"toolbarCollapse":"Contraer barra de herramientas","toolbarExpand":"Expandir barra de herramientas","toolbarGroups":{"document":"Documento","clipboard":"Portapapeles/Deshacer","editing":"Edición","forms":"Formularios","basicstyles":"Estilos básicos","paragraph":"Párrafo","links":"Enlaces","insert":"Insertar","styles":"Estilos","colors":"Colores","tools":"Herramientas"},"toolbars":"Barras de herramientas del editor"},"undo":{"redo":"Rehacer","undo":"Deshacer"},"sourcedialog":{"toolbar":"Fuente HTML","title":"Fuente HTML"},"acymediabrowser":{"toolbar":"Imagen"},"addtag":{"toolbar":"Etiquetas"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/en.js000060400000025234152455705240021004 0ustar00CKEDITOR.lang['en']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Alignment","alignLeft":"Left","alignRight":"Right","alignCenter":"Center","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strikethrough","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Color","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"Colors","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"contextmenu":{"options":"Context Menu Options"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"justify":{"block":"Justify","center":"Center","left":"Align Left","right":"Align Right"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"removeformat":{"toolbar":"Remove Format"},"sourcearea":{"toolbar":"Source"},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"undo":{"redo":"Redo","undo":"Undo"},"sourcedialog":{"toolbar":"Source","title":"Source"},"acymediabrowser":{"toolbar":"Images"},"addtag":{"toolbar":"Tags"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/it.js000060400000027440152455705240021017 0ustar00CKEDITOR.lang['it']={"editor":"Rich Text Editor","editorPanel":"Pannello Rich Text Editor","common":{"editorHelp":"Premi ALT 0 per aiuto","browseServer":"Cerca sul server","url":"URL","protocol":"Protocollo","upload":"Carica","uploadSubmit":"Invia al server","image":"Immagine","flash":"Oggetto Flash","form":"Modulo","checkbox":"Checkbox","radio":"Radio Button","textField":"Campo di testo","textarea":"Area di testo","hiddenField":"Campo nascosto","button":"Bottone","select":"Menu di selezione","imageButton":"Bottone immagine","notSet":"<non impostato>","id":"Id","name":"Nome","langDir":"Direzione scrittura","langDirLtr":"Da Sinistra a Destra (LTR)","langDirRtl":"Da Destra a Sinistra (RTL)","langCode":"Codice Lingua","longDescr":"URL descrizione estesa","cssClass":"Nome classe CSS","advisoryTitle":"Titolo","cssStyle":"Stile","ok":"OK","cancel":"Annulla","close":"Chiudi","preview":"Anteprima","resize":"Trascina per ridimensionare","generalTab":"Generale","advancedTab":"Avanzate","validateNumberFailed":"Il valore inserito non è un numero.","confirmNewPage":"Ogni modifica non salvata sarà persa. Sei sicuro di voler caricare una nuova pagina?","confirmCancel":"Alcune delle opzioni sono state cambiate. Sei sicuro di voler chiudere la finestra di dialogo?","options":"Opzioni","target":"Destinazione","targetNew":"Nuova finestra (_blank)","targetTop":"Finestra in primo piano (_top)","targetSelf":"Stessa finestra (_self)","targetParent":"Finestra Padre (_parent)","langDirLTR":"Da sinistra a destra (LTR)","langDirRTL":"Da destra a sinistra (RTL)","styles":"Stile","cssClasses":"Classi di stile","width":"Larghezza","height":"Altezza","align":"Allineamento","alignLeft":"Sinistra","alignRight":"Destra","alignCenter":"Centrato","alignJustify":"Giustifica","alignTop":"In Alto","alignMiddle":"Centrato","alignBottom":"In Basso","alignNone":"Nessuno","invalidValue":"Valore non valido.","invalidHeight":"L'altezza dev'essere un numero","invalidWidth":"La Larghezza dev'essere un numero","invalidCssLength":"Il valore indicato per il campo \"%1\" deve essere un numero positivo con o senza indicazione di una valida unità di misura per le classi CSS (px, %, in, cm, mm, em, ex, pt, o pc).","invalidHtmlLength":"Il valore indicato per il campo \"%1\" deve essere un numero positivo con o senza indicazione di una valida unità di misura per le pagine HTML (px o %).","invalidInlineStyle":"Il valore specificato per lo stile inline deve consistere in una o più tuple con il formato di \"name : value\", separati da semicolonne.","cssLengthTooltip":"Inserisci un numero per il valore in pixel oppure un numero con una valida unità CSS (px, %, in, cm, mm, ex, pt, o pc).","unavailable":"%1<span class=\"cke_accessibility\">, non disponibile</span>"},"basicstyles":{"bold":"Grassetto","italic":"Corsivo","strike":"Barrato","subscript":"Pedice","superscript":"Apice","underline":"Sottolineato"},"blockquote":{"toolbar":"Citazione"},"clipboard":{"copy":"Copia","copyError":"Le impostazioni di sicurezza del browser non permettono di copiare automaticamente il testo. Usa la tastiera (Ctrl/Cmd+C).","cut":"Taglia","cutError":"Le impostazioni di sicurezza del browser non permettono di tagliare automaticamente il testo. Usa la tastiera (Ctrl/Cmd+X).","paste":"Incolla","pasteArea":"Incolla","pasteMsg":"Incolla il testo all'interno dell'area sottostante usando la scorciatoia di tastiere (<STRONG>Ctrl/Cmd+V</STRONG>) e premi <STRONG>OK</STRONG>.","securityMsg":"A causa delle impostazioni di sicurezza del browser,l'editor non è in grado di accedere direttamente agli appunti. E' pertanto necessario incollarli di nuovo in questa finestra.","title":"Incolla"},"button":{"selectedLabel":"%1 (selezionato)"},"colorbutton":{"auto":"Automatico","bgColorTitle":"Colore sfondo","colors":{"000":"Nero","800000":"Marrone Castagna","8B4513":"Marrone Cuoio","2F4F4F":"Grigio Fumo di Londra","008080":"Acquamarina","000080":"Blu Oceano","4B0082":"Indigo","696969":"Grigio Scuro","B22222":"Giallo Fiamma","A52A2A":"Marrone","DAA520":"Giallo Mimosa","006400":"Verde Scuro","40E0D0":"Turchese","0000CD":"Blue Scuro","800080":"Viola","808080":"Grigio","F00":"Rosso","FF8C00":"Arancio Scuro","FFD700":"Oro","008000":"Verde","0FF":"Ciano","00F":"Blu","EE82EE":"Violetto","A9A9A9":"Grigio Scuro","FFA07A":"Salmone","FFA500":"Arancio","FFFF00":"Giallo","00FF00":"Lime","AFEEEE":"Turchese Chiaro","ADD8E6":"Blu Chiaro","DDA0DD":"Rosso Ciliegia","D3D3D3":"Grigio Chiaro","FFF0F5":"Lavanda Chiara","FAEBD7":"Bianco Antico","FFFFE0":"Giallo Chiaro","F0FFF0":"Verde Mela","F0FFFF":"Azzurro","F0F8FF":"Celeste","E6E6FA":"Lavanda","FFF":"Bianco"},"more":"Altri colori...","panelTitle":"Colori","textColorTitle":"Colore testo"},"colordialog":{"clear":"cancella","highlight":"Evidenzia","options":"Opzioni colore","selected":"Seleziona il colore","title":"Selezionare il colore"},"contextmenu":{"options":"Opzioni del menù contestuale"},"elementspath":{"eleLabel":"Percorso degli elementi","eleTitle":"%1 elemento"},"font":{"fontSize":{"label":"Dimensione","voiceLabel":"Dimensione Carattere","panelTitle":"Dimensione"},"label":"Carattere","panelTitle":"Carattere","voiceLabel":"Carattere"},"format":{"label":"Formato","panelTitle":"Formato","tag_address":"Indirizzo","tag_div":"Paragrafo (DIV)","tag_h1":"Titolo 1","tag_h2":"Titolo 2","tag_h3":"Titolo 3","tag_h4":"Titolo 4","tag_h5":"Titolo 5","tag_h6":"Titolo 6","tag_p":"Normale","tag_pre":"Formattato"},"horizontalrule":{"toolbar":"Inserisci riga orizzontale"},"image":{"alertUrl":"Devi inserire l'URL per l'immagine","alt":"Testo alternativo","border":"Bordo","btnUpload":"Invia al server","button2Img":"Vuoi trasformare il bottone immagine selezionato in un'immagine semplice?","hSpace":"HSpace","img2Button":"Vuoi trasferomare l'immagine selezionata in un bottone immagine?","infoTab":"Informazioni immagine","linkTab":"Collegamento","lockRatio":"Blocca rapporto","menu":"Proprietà immagine","resetSize":"Reimposta dimensione","title":"Proprietà immagine","titleButton":"Proprietà bottone immagine","upload":"Carica","urlMissing":"Manca l'URL dell'immagine.","vSpace":"VSpace","validateBorder":"Il campo Bordo deve essere un numero intero.","validateHSpace":"Il campo HSpace deve essere un numero intero.","validateVSpace":"Il campo VSpace deve essere un numero intero."},"indent":{"indent":"Aumenta rientro","outdent":"Riduci rientro"},"justify":{"block":"Giustifica","center":"Centra","left":"Allinea a sinistra","right":"Allinea a destra"},"fakeobjects":{"anchor":"Ancora","flash":"Animazione Flash","hiddenfield":"Campo Nascosto","iframe":"IFrame","unknown":"Oggetto sconosciuto"},"link":{"acccessKey":"Scorciatoia da tastiera","advanced":"Avanzate","advisoryContentType":"Tipo della risorsa collegata","advisoryTitle":"Titolo","anchor":{"toolbar":"Inserisci/Modifica Ancora","menu":"Proprietà ancora","title":"Proprietà ancora","name":"Nome ancora","errorName":"Inserici il nome dell'ancora","remove":"Rimuovi l'ancora"},"anchorId":"Per id elemento","anchorName":"Per Nome","charset":"Set di caretteri della risorsa collegata","cssClasses":"Nome classe CSS","emailAddress":"Indirizzo E-Mail","emailBody":"Corpo del messaggio","emailSubject":"Oggetto del messaggio","id":"Id","info":"Informazioni collegamento","langCode":"Direzione scrittura","langDir":"Direzione scrittura","langDirLTR":"Da Sinistra a Destra (LTR)","langDirRTL":"Da Destra a Sinistra (RTL)","menu":"Modifica collegamento","name":"Nome","noAnchors":"(Nessuna ancora disponibile nel documento)","noEmail":"Devi inserire un'indirizzo e-mail","noUrl":"Devi inserire l'URL del collegamento","other":"<altro>","popupDependent":"Dipendente (Netscape)","popupFeatures":"Caratteristiche finestra popup","popupFullScreen":"A tutto schermo (IE)","popupLeft":"Posizione da sinistra","popupLocationBar":"Barra degli indirizzi","popupMenuBar":"Barra del menu","popupResizable":"Ridimensionabile","popupScrollBars":"Barre di scorrimento","popupStatusBar":"Barra di stato","popupToolbar":"Barra degli strumenti","popupTop":"Posizione dall'alto","rel":"Relazioni","selectAnchor":"Scegli Ancora","styles":"Stile","tabIndex":"Ordine di tabulazione","target":"Destinazione","targetFrame":"<riquadro>","targetFrameName":"Nome del riquadro di destinazione","targetPopup":"<finestra popup>","targetPopupName":"Nome finestra popup","title":"Collegamento","toAnchor":"Ancora nel testo","toEmail":"E-Mail","toUrl":"URL","toolbar":"Collegamento","type":"Tipo di Collegamento","unlink":"Elimina collegamento","upload":"Carica"},"list":{"bulletedlist":"Inserisci/Rimuovi Elenco Puntato","numberedlist":"Inserisci/Rimuovi Elenco Numerato"},"maximize":{"maximize":"Massimizza","minimize":"Minimizza"},"pastefromword":{"confirmCleanup":"Il testo da incollare sembra provenire da Word. Desideri pulirlo prima di incollare?","error":"Non è stato possibile eliminare il testo incollato a causa di un errore interno.","title":"Incolla da Word","toolbar":"Incolla da Word"},"pastetext":{"button":"Incolla come testo semplice","title":"Incolla come testo semplice"},"removeformat":{"toolbar":"Elimina formattazione"},"sourcearea":{"toolbar":"Sorgente"},"stylescombo":{"label":"Stili","panelTitle":"Stili di formattazione","panelTitle1":"Stili per blocchi","panelTitle2":"Stili in linea","panelTitle3":"Stili per oggetti"},"table":{"border":"Dimensione bordo","caption":"Intestazione","cell":{"menu":"Cella","insertBefore":"Inserisci Cella Prima","insertAfter":"Inserisci Cella Dopo","deleteCell":"Elimina celle","merge":"Unisce celle","mergeRight":"Unisci a Destra","mergeDown":"Unisci in Basso","splitHorizontal":"Dividi Cella Orizzontalmente","splitVertical":"Dividi Cella Verticalmente","title":"Proprietà della cella","cellType":"Tipo di cella","rowSpan":"Su più righe","colSpan":"Su più colonne","wordWrap":"Ritorno a capo","hAlign":"Allineamento orizzontale","vAlign":"Allineamento verticale","alignBaseline":"Linea Base","bgColor":"Colore di Sfondo","borderColor":"Colore del Bordo","data":"Dati","header":"Intestazione","yes":"Si","no":"No","invalidWidth":"La larghezza della cella dev'essere un numero.","invalidHeight":"L'altezza della cella dev'essere un numero.","invalidRowSpan":"Il numero di righe dev'essere un numero intero.","invalidColSpan":"Il numero di colonne dev'essere un numero intero.","chooseColor":"Scegli"},"cellPad":"Padding celle","cellSpace":"Spaziatura celle","column":{"menu":"Colonna","insertBefore":"Inserisci Colonna Prima","insertAfter":"Inserisci Colonna Dopo","deleteColumn":"Elimina colonne"},"columns":"Colonne","deleteTable":"Cancella Tabella","headers":"Intestazione","headersBoth":"Entrambe","headersColumn":"Prima Colonna","headersNone":"Nessuna","headersRow":"Prima Riga","invalidBorder":"La dimensione del bordo dev'essere un numero.","invalidCellPadding":"Il paging delle celle dev'essere un numero","invalidCellSpacing":"La spaziatura tra le celle dev'essere un numero.","invalidCols":"Il numero di colonne dev'essere un numero maggiore di 0.","invalidHeight":"L'altezza della tabella dev'essere un numero.","invalidRows":"Il numero di righe dev'essere un numero maggiore di 0.","invalidWidth":"La larghezza della tabella dev'essere un numero.","menu":"Proprietà tabella","row":{"menu":"Riga","insertBefore":"Inserisci Riga Prima","insertAfter":"Inserisci Riga Dopo","deleteRow":"Elimina righe"},"rows":"Righe","summary":"Indice","title":"Proprietà tabella","toolbar":"Tabella","widthPc":"percento","widthPx":"pixel","widthUnit":"unità larghezza"},"toolbar":{"toolbarCollapse":"Minimizza Toolbar","toolbarExpand":"Espandi Toolbar","toolbarGroups":{"document":"Documento","clipboard":"Copia negli appunti/Annulla","editing":"Modifica","forms":"Form","basicstyles":"Stili di base","paragraph":"Paragrafo","links":"Link","insert":"Inserisci","styles":"Stili","colors":"Colori","tools":"Strumenti"},"toolbars":"Editor toolbar"},"undo":{"redo":"Ripristina","undo":"Annulla"},"sourcedialog":{"toolbar":"Sorgente","title":"Sorgente"},"acymediabrowser":{"toolbar":"Immagine"},"addtag":{"toolbar":"Tags"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/ru.js000060400000042347152455705240021034 0ustar00CKEDITOR.lang['ru']={"editor":"Визуальный текстовый редактор","editorPanel":"Визуальный редактор текста","common":{"editorHelp":"Нажмите ALT-0 для открытия справки","browseServer":"Выбор на сервере","url":"Ссылка","protocol":"Протокол","upload":"Загрузка файла","uploadSubmit":"Загрузить на сервер","image":"Изображение","flash":"Flash","form":"Форма","checkbox":"Чекбокс","radio":"Радиокнопка","textField":"Текстовое поле","textarea":"Многострочное текстовое поле","hiddenField":"Скрытое поле","button":"Кнопка","select":"Выпадающий список","imageButton":"Кнопка-изображение","notSet":"<не указано>","id":"Идентификатор","name":"Имя","langDir":"Направление текста","langDirLtr":"Слева направо (LTR)","langDirRtl":"Справа налево (RTL)","langCode":"Код языка","longDescr":"Длинное описание ссылки","cssClass":"Класс CSS","advisoryTitle":"Заголовок","cssStyle":"Стиль","ok":"ОК","cancel":"Отмена","close":"Закрыть","preview":"Предпросмотр","resize":"Перетащите для изменения размера","generalTab":"Основное","advancedTab":"Дополнительно","validateNumberFailed":"Это значение не является числом.","confirmNewPage":"Несохранённые изменения будут потеряны! Вы действительно желаете перейти на другую страницу?","confirmCancel":"Некоторые параметры были изменены. Вы уверены, что желаете закрыть без сохранения?","options":"Параметры","target":"Цель","targetNew":"Новое окно (_blank)","targetTop":"Главное окно (_top)","targetSelf":"Текущее окно (_self)","targetParent":"Родительское окно (_parent)","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","styles":"Стиль","cssClasses":"CSS классы","width":"Ширина","height":"Высота","align":"Выравнивание","alignLeft":"По левому краю","alignRight":"По правому краю","alignCenter":"По центру","alignJustify":"По ширине","alignTop":"Поверху","alignMiddle":"Посередине","alignBottom":"Понизу","alignNone":"Нет","invalidValue":"Недопустимое значение.","invalidHeight":"Высота задается числом.","invalidWidth":"Ширина задается числом.","invalidCssLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","invalidHtmlLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры HTML (px или %).","invalidInlineStyle":"Значение, указанное для стиля элемента, должно состоять из одной или нескольких пар данных в формате \"параметр : значение\", разделённых точкой с запятой.","cssLengthTooltip":"Введите значение в пикселях, либо число с корректной единицей меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","unavailable":"%1<span class=\"cke_accessibility\">, недоступно</span>"},"basicstyles":{"bold":"Полужирный","italic":"Курсив","strike":"Зачеркнутый","subscript":"Подстрочный индекс","superscript":"Надстрочный индекс","underline":"Подчеркнутый"},"blockquote":{"toolbar":"Цитата"},"clipboard":{"copy":"Копировать","copyError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по копированию текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+C).","cut":"Вырезать","cutError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по вырезке текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+X).","paste":"Вставить","pasteArea":"Зона для вставки","pasteMsg":"Пожалуйста, вставьте текст в зону ниже, используя клавиатуру (<strong>Ctrl/Cmd+V</strong>) и нажмите кнопку \"OK\".","securityMsg":"Настройки безопасности вашего браузера не разрешают редактору напрямую обращаться к буферу обмена. Вы должны вставить текст снова в это окно.","title":"Вставить"},"button":{"selectedLabel":"%1 (Выбрано)"},"colorbutton":{"auto":"Автоматически","bgColorTitle":"Цвет фона","colors":{"000":"Чёрный","800000":"Бордовый","8B4513":"Кожано-коричневый","2F4F4F":"Темный синевато-серый","008080":"Сине-зелёный","000080":"Тёмно-синий","4B0082":"Индиго","696969":"Тёмно-серый","B22222":"Кирпичный","A52A2A":"Коричневый","DAA520":"Золотисто-берёзовый","006400":"Темно-зелёный","40E0D0":"Бирюзовый","0000CD":"Умеренно синий","800080":"Пурпурный","808080":"Серый","F00":"Красный","FF8C00":"Темно-оранжевый","FFD700":"Золотистый","008000":"Зелёный","0FF":"Васильковый","00F":"Синий","EE82EE":"Фиолетовый","A9A9A9":"Тускло-серый","FFA07A":"Светло-лососевый","FFA500":"Оранжевый","FFFF00":"Жёлтый","00FF00":"Лайма","AFEEEE":"Бледно-синий","ADD8E6":"Свелто-голубой","DDA0DD":"Сливовый","D3D3D3":"Светло-серый","FFF0F5":"Розово-лавандовый","FAEBD7":"Античный белый","FFFFE0":"Светло-жёлтый","F0FFF0":"Медвяной росы","F0FFFF":"Лазурный","F0F8FF":"Бледно-голубой","E6E6FA":"Лавандовый","FFF":"Белый"},"more":"Ещё цвета...","panelTitle":"Цвета","textColorTitle":"Цвет текста"},"colordialog":{"clear":"Очистить","highlight":"Под курсором","options":"Настройки цвета","selected":"Выбранный цвет","title":"Выберите цвет"},"contextmenu":{"options":"Параметры контекстного меню"},"elementspath":{"eleLabel":"Путь элементов","eleTitle":"Элемент %1"},"font":{"fontSize":{"label":"Размер","voiceLabel":"Размер шрифта","panelTitle":"Размер шрифта"},"label":"Шрифт","panelTitle":"Шрифт","voiceLabel":"Шрифт"},"format":{"label":"Форматирование","panelTitle":"Форматирование","tag_address":"Адрес","tag_div":"Обычное (div)","tag_h1":"Заголовок 1","tag_h2":"Заголовок 2","tag_h3":"Заголовок 3","tag_h4":"Заголовок 4","tag_h5":"Заголовок 5","tag_h6":"Заголовок 6","tag_p":"Обычное","tag_pre":"Моноширинное"},"horizontalrule":{"toolbar":"Вставить горизонтальную линию"},"image":{"alertUrl":"Пожалуйста, введите ссылку на изображение","alt":"Альтернативный текст","border":"Граница","btnUpload":"Загрузить на сервер","button2Img":"Вы желаете преобразовать это изображение-кнопку в обычное изображение?","hSpace":"Гориз. отступ","img2Button":"Вы желаете преобразовать это обычное изображение в изображение-кнопку?","infoTab":"Данные об изображении","linkTab":"Ссылка","lockRatio":"Сохранять пропорции","menu":"Свойства изображения","resetSize":"Вернуть обычные размеры","title":"Свойства изображения","titleButton":"Свойства изображения-кнопки","upload":"Загрузить","urlMissing":"Не указана ссылка на изображение.","vSpace":"Вертик. отступ","validateBorder":"Размер границ должен быть задан числом.","validateHSpace":"Горизонтальный отступ должен быть задан числом.","validateVSpace":"Вертикальный отступ должен быть задан числом."},"indent":{"indent":"Увеличить отступ","outdent":"Уменьшить отступ"},"justify":{"block":"По ширине","center":"По центру","left":"По левому краю","right":"По правому краю"},"fakeobjects":{"anchor":"Якорь","flash":"Flash анимация","hiddenfield":"Скрытое поле","iframe":"iFrame","unknown":"Неизвестный объект"},"link":{"acccessKey":"Клавиша доступа","advanced":"Дополнительно","advisoryContentType":"Тип содержимого","advisoryTitle":"Заголовок","anchor":{"toolbar":"Вставить / редактировать якорь","menu":"Изменить якорь","title":"Свойства якоря","name":"Имя якоря","errorName":"Пожалуйста, введите имя якоря","remove":"Удалить якорь"},"anchorId":"По идентификатору","anchorName":"По имени","charset":"Кодировка ресурса","cssClasses":"Классы CSS","emailAddress":"Email адрес","emailBody":"Текст сообщения","emailSubject":"Тема сообщения","id":"Идентификатор","info":"Информация о ссылке","langCode":"Код языка","langDir":"Направление текста","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","menu":"Редактировать ссылку","name":"Имя","noAnchors":"(В документе нет ни одного якоря)","noEmail":"Пожалуйста, введите email адрес","noUrl":"Пожалуйста, введите ссылку","other":"<другой>","popupDependent":"Зависимое (Netscape)","popupFeatures":"Параметры всплывающего окна","popupFullScreen":"Полноэкранное (IE)","popupLeft":"Отступ слева","popupLocationBar":"Панель адреса","popupMenuBar":"Панель меню","popupResizable":"Изменяемый размер","popupScrollBars":"Полосы прокрутки","popupStatusBar":"Строка состояния","popupToolbar":"Панель инструментов","popupTop":"Отступ сверху","rel":"Отношение","selectAnchor":"Выберите якорь","styles":"Стиль","tabIndex":"Последовательность перехода","target":"Цель","targetFrame":"<фрейм>","targetFrameName":"Имя целевого фрейма","targetPopup":"<всплывающее окно>","targetPopupName":"Имя всплывающего окна","title":"Ссылка","toAnchor":"Ссылка на якорь в тексте","toEmail":"Email","toUrl":"Ссылка","toolbar":"Вставить/Редактировать ссылку","type":"Тип ссылки","unlink":"Убрать ссылку","upload":"Загрузка"},"list":{"bulletedlist":"Вставить / удалить маркированный список","numberedlist":"Вставить / удалить нумерованный список"},"maximize":{"maximize":"Развернуть","minimize":"Свернуть"},"pastefromword":{"confirmCleanup":"Текст, который вы желаете вставить, по всей видимости, был скопирован из Word. Следует ли очистить его перед вставкой?","error":"Невозможно очистить вставленные данные из-за внутренней ошибки","title":"Вставить из Word","toolbar":"Вставить из Word"},"pastetext":{"button":"Вставить только текст","title":"Вставить только текст"},"removeformat":{"toolbar":"Убрать форматирование"},"sourcearea":{"toolbar":"Источник"},"stylescombo":{"label":"Стили","panelTitle":"Стили форматирования","panelTitle1":"Стили блока","panelTitle2":"Стили элемента","panelTitle3":"Стили объекта"},"table":{"border":"Размер границ","caption":"Заголовок","cell":{"menu":"Ячейка","insertBefore":"Вставить ячейку слева","insertAfter":"Вставить ячейку справа","deleteCell":"Удалить ячейки","merge":"Объединить ячейки","mergeRight":"Объединить с правой","mergeDown":"Объединить с нижней","splitHorizontal":"Разделить ячейку по горизонтали","splitVertical":"Разделить ячейку по вертикали","title":"Свойства ячейки","cellType":"Тип ячейки","rowSpan":"Объединяет строк","colSpan":"Объединяет колонок","wordWrap":"Перенос по словам","hAlign":"Горизонтальное выравнивание","vAlign":"Вертикальное выравнивание","alignBaseline":"По базовой линии","bgColor":"Цвет фона","borderColor":"Цвет границ","data":"Данные","header":"Заголовок","yes":"Да","no":"Нет","invalidWidth":"Ширина ячейки должна быть числом.","invalidHeight":"Высота ячейки должна быть числом.","invalidRowSpan":"Количество объединяемых строк должно быть задано числом.","invalidColSpan":"Количество объединяемых колонок должно быть задано числом.","chooseColor":"Выберите"},"cellPad":"Внутренний отступ ячеек","cellSpace":"Внешний отступ ячеек","column":{"menu":"Колонка","insertBefore":"Вставить колонку слева","insertAfter":"Вставить колонку справа","deleteColumn":"Удалить колонки"},"columns":"Колонки","deleteTable":"Удалить таблицу","headers":"Заголовки","headersBoth":"Сверху и слева","headersColumn":"Левая колонка","headersNone":"Без заголовков","headersRow":"Верхняя строка","invalidBorder":"Размер границ должен быть числом.","invalidCellPadding":"Внутренний отступ ячеек (cellpadding) должен быть числом.","invalidCellSpacing":"Внешний отступ ячеек (cellspacing) должен быть числом.","invalidCols":"Количество столбцов должно быть больше 0.","invalidHeight":"Высота таблицы должна быть числом.","invalidRows":"Количество строк должно быть больше 0.","invalidWidth":"Ширина таблицы должна быть числом.","menu":"Свойства таблицы","row":{"menu":"Строка","insertBefore":"Вставить строку сверху","insertAfter":"Вставить строку снизу","deleteRow":"Удалить строки"},"rows":"Строки","summary":"Итоги","title":"Свойства таблицы","toolbar":"Таблица","widthPc":"процентов","widthPx":"пикселей","widthUnit":"единица измерения"},"toolbar":{"toolbarCollapse":"Свернуть панель инструментов","toolbarExpand":"Развернуть панель инструментов","toolbarGroups":{"document":"Документ","clipboard":"Буфер обмена / Отмена действий","editing":"Корректировка","forms":"Формы","basicstyles":"Простые стили","paragraph":"Абзац","links":"Ссылки","insert":"Вставка","styles":"Стили","colors":"Цвета","tools":"Инструменты"},"toolbars":"Панели инструментов редактора"},"undo":{"redo":"Повторить","undo":"Отменить"},"sourcedialog":{"toolbar":"Исходник","title":"Источник"},"acymediabrowser":{"toolbar":"Изображение"},"addtag":{"toolbar":"Теги"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/lang/fr.js000060400000030011152455705240020776 0ustar00CKEDITOR.lang['fr']={"editor":"Éditeur de Texte Enrichi","editorPanel":"Tableau de bord de l'éditeur de texte enrichi","common":{"editorHelp":"Appuyez sur ALT-0 pour l'aide","browseServer":"Explorer le serveur","url":"URL","protocol":"Protocole","upload":"Envoyer","uploadSubmit":"Envoyer sur le serveur","image":"Image","flash":"Flash","form":"Formulaire","checkbox":"Case à cocher","radio":"Bouton Radio","textField":"Champ texte","textarea":"Zone de texte","hiddenField":"Champ caché","button":"Bouton","select":"Liste déroulante","imageButton":"Bouton image","notSet":"<non défini>","id":"Id","name":"Nom","langDir":"Sens d'écriture","langDirLtr":"Gauche à droite (LTR)","langDirRtl":"Droite à gauche (RTL)","langCode":"Code de langue","longDescr":"URL de description longue (longdesc => malvoyant)","cssClass":"Classe CSS","advisoryTitle":"Description (title)","cssStyle":"Style","ok":"OK","cancel":"Annuler","close":"Fermer","preview":"Aperçu","resize":"Déplacer pour modifier la taille","generalTab":"Général","advancedTab":"Avancé","validateNumberFailed":"Cette valeur n'est pas un nombre.","confirmNewPage":"Les changements non sauvegardés seront perdus. Êtes-vous sûr de vouloir charger une nouvelle page?","confirmCancel":"Certaines options ont été modifiées. Êtes-vous sûr de vouloir fermer?","options":"Options","target":"Cible (Target)","targetNew":"Nouvelle fenêtre (_blank)","targetTop":"Fenêtre supérieure (_top)","targetSelf":"Même fenêtre (_self)","targetParent":"Fenêtre parent (_parent)","langDirLTR":"Gauche à Droite (LTR)","langDirRTL":"Droite à Gauche (RTL)","styles":"Style","cssClasses":"Classes de style","width":"Largeur","height":"Hauteur","align":"Alignement","alignLeft":"Gauche","alignRight":"Droite","alignCenter":"Centré","alignJustify":"Justifier","alignTop":"Haut","alignMiddle":"Milieu","alignBottom":"Bas","alignNone":"Aucun","invalidValue":"Valeur incorrecte.","invalidHeight":"La hauteur doit être un nombre.","invalidWidth":"La largeur doit être un nombre.","invalidCssLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure HTML valide (px ou %).","invalidInlineStyle":"La valeur spécifiée pour le style inline doit être composée d'un ou plusieurs couples de valeur au format \"nom : valeur\", separés par des points-virgules.","cssLengthTooltip":"Entrer un nombre pour une valeur en pixels ou un nombre avec une unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, Indisponible</span>"},"basicstyles":{"bold":"Gras","italic":"Italique","strike":"Barré","subscript":"Indice","superscript":"Exposant","underline":"Souligné"},"blockquote":{"toolbar":"Citation"},"clipboard":{"copy":"Copier","copyError":"Les paramètres de sécurité de votre navigateur ne permettent pas à l'éditeur d'exécuter automatiquement des opérations de copie. Veuillez utiliser le raccourci clavier (Ctrl/Cmd+C).","cut":"Couper","cutError":"Les paramètres de sécurité de votre navigateur ne permettent pas à l'éditeur d'exécuter automatiquement l'opération \"couper\". Veuillez utiliser le raccourci clavier (Ctrl/Cmd+X).","paste":"Coller","pasteArea":"Coller la zone","pasteMsg":"Veuillez coller le texte dans la zone suivante en utilisant le raccourci clavier (<strong>Ctrl/Cmd+V</strong>) et cliquez sur OK.","securityMsg":"A cause des paramètres de sécurité de votre navigateur, l'éditeur n'est pas en mesure d'accéder directement à vos données contenues dans le presse-papier. Vous devriez réessayer de coller les données dans la fenêtre.","title":"Coller"},"button":{"selectedLabel":"%1 (Sélectionné)"},"colorbutton":{"auto":"Automatique","bgColorTitle":"Couleur d'arrière plan","colors":{"000":"Noir","800000":"Marron","8B4513":"Brun moyen","2F4F4F":"Vert sombre","008080":"Canard","000080":"Bleu marine","4B0082":"Indigo","696969":"Gris foncé","B22222":"Rouge brique","A52A2A":"Brun","DAA520":"Or terni","006400":"Vert foncé","40E0D0":"Turquoise","0000CD":"Bleu royal","800080":"Pourpre","808080":"Gris","F00":"Rouge","FF8C00":"Orange foncé","FFD700":"Or","008000":"Vert","0FF":"Cyan","00F":"Bleu","EE82EE":"Violet","A9A9A9":"Gris moyen","FFA07A":"Saumon","FFA500":"Orange","FFFF00":"Jaune","00FF00":"Lime","AFEEEE":"Turquoise clair","ADD8E6":"Bleu clair","DDA0DD":"Prune","D3D3D3":"Gris clair","FFF0F5":"Fard Lavande","FAEBD7":"Blanc antique","FFFFE0":"Jaune clair","F0FFF0":"Honeydew","F0FFFF":"Azur","F0F8FF":"Bleu Alice","E6E6FA":"Lavande","FFF":"Blanc"},"more":"Plus de couleurs...","panelTitle":"Couleurs","textColorTitle":"Couleur de texte"},"colordialog":{"clear":"Effacer","highlight":"Détails","options":"Option des couleurs","selected":"Couleur choisie","title":"Choisir une couleur"},"contextmenu":{"options":"Options du menu contextuel"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 éléments"},"font":{"fontSize":{"label":"Taille","voiceLabel":"Taille de police","panelTitle":"Taille de police"},"label":"Police","panelTitle":"Style de police","voiceLabel":"Police"},"format":{"label":"Format","panelTitle":"Format de paragraphe","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Titre 1","tag_h2":"Titre 2","tag_h3":"Titre 3","tag_h4":"Titre 4","tag_h5":"Titre 5","tag_h6":"Titre 6","tag_p":"Normal","tag_pre":"Formaté"},"horizontalrule":{"toolbar":"Ligne horizontale"},"image":{"alertUrl":"Veuillez entrer l'adresse de l'image","alt":"Texte de remplacement","border":"Bordure","btnUpload":"Envoyer sur le serveur","button2Img":"Voulez-vous transformer le bouton image sélectionné en simple image?","hSpace":"Espacement horizontal","img2Button":"Voulez-vous transformer l'image en bouton image?","infoTab":"Informations sur l'image","linkTab":"Lien","lockRatio":"Conserver les proportions","menu":"Propriétés de l'image","resetSize":"Taille d'origine","title":"Propriétés de l'image","titleButton":"Propriétés du bouton image","upload":"Envoyer","urlMissing":"L'adresse source de l'image est manquante.","vSpace":"Espacement vertical","validateBorder":"Bordure doit être un entier.","validateHSpace":"HSpace doit être un entier.","validateVSpace":"VSpace doit être un entier."},"indent":{"indent":"Augmenter le retrait (tabulation)","outdent":"Diminuer le retrait (tabulation)"},"justify":{"block":"Justifier","center":"Centrer","left":"Aligner à gauche","right":"Aligner à droite"},"fakeobjects":{"anchor":"Ancre","flash":"Animation Flash","hiddenfield":"Champ caché","iframe":"IFrame","unknown":"Objet inconnu"},"link":{"acccessKey":"Touche d'accessibilité","advanced":"Avancé","advisoryContentType":"Type de contenu (ex: text/html)","advisoryTitle":"Description (title)","anchor":{"toolbar":"Ancre","menu":"Editer l'ancre","title":"Propriétés de l'ancre","name":"Nom de l'ancre","errorName":"Veuillez entrer le nom de l'ancre.","remove":"Supprimer l'ancre"},"anchorId":"Par ID d'élément","anchorName":"Par nom d'ancre","charset":"Charset de la cible","cssClasses":"Classe CSS","emailAddress":"Adresse E-Mail","emailBody":"Corps du message","emailSubject":"Sujet du message","id":"Id","info":"Infos sur le lien","langCode":"Code de langue","langDir":"Sens d'écriture","langDirLTR":"Gauche à droite","langDirRTL":"Droite à gauche","menu":"Editer le lien","name":"Nom","noAnchors":"(Aucune ancre disponible dans ce document)","noEmail":"Veuillez entrer l'adresse e-mail","noUrl":"Veuillez entrer l'adresse du lien","other":"<autre>","popupDependent":"Dépendante (Netscape)","popupFeatures":"Options de la fenêtre popup","popupFullScreen":"Plein écran (IE)","popupLeft":"Position gauche","popupLocationBar":"Barre d'adresse","popupMenuBar":"Barre de menu","popupResizable":"Redimensionnable","popupScrollBars":"Barres de défilement","popupStatusBar":"Barre de status","popupToolbar":"Barre d'outils","popupTop":"Position haute","rel":"Relation","selectAnchor":"Sélectionner l'ancre","styles":"Style","tabIndex":"Index de tabulation","target":"Cible","targetFrame":"<cadre>","targetFrameName":"Nom du Cadre destination","targetPopup":"<fenêtre popup>","targetPopupName":"Nom de la fenêtre popup","title":"Lien","toAnchor":"Ancre","toEmail":"E-mail","toUrl":"URL","toolbar":"Lien","type":"Type de lien","unlink":"Supprimer le lien","upload":"Envoyer"},"list":{"bulletedlist":"Insérer/Supprimer la liste à puces","numberedlist":"Insérer/Supprimer la liste numérotée"},"maximize":{"maximize":"Agrandir","minimize":"Minimiser"},"pastefromword":{"confirmCleanup":"Le texte à coller semble provenir de Word. Désirez-vous le nettoyer avant de coller?","error":"Il n'a pas été possible de nettoyer les données collées à la suite d'une erreur interne.","title":"Coller depuis Word","toolbar":"Coller depuis Word"},"pastetext":{"button":"Coller comme texte sans mise en forme","title":"Coller comme texte sans mise en forme"},"removeformat":{"toolbar":"Supprimer la mise en forme"},"sourcearea":{"toolbar":"Source"},"stylescombo":{"label":"Styles","panelTitle":"Styles de mise en page","panelTitle1":"Styles de blocs","panelTitle2":"Styles en ligne","panelTitle3":"Styles d'objet"},"table":{"border":"Taille de la bordure","caption":"Titre du tableau","cell":{"menu":"Cellule","insertBefore":"Insérer une cellule avant","insertAfter":"Insérer une cellule après","deleteCell":"Supprimer les cellules","merge":"Fusionner les cellules","mergeRight":"Fusionner à droite","mergeDown":"Fusionner en bas","splitHorizontal":"Fractionner horizontalement","splitVertical":"Fractionner verticalement","title":"Propriétés de la cellule","cellType":"Type de cellule","rowSpan":"Fusion de lignes","colSpan":"Fusion de colonnes","wordWrap":"Césure","hAlign":"Alignement Horizontal","vAlign":"Alignement Vertical","alignBaseline":"Bas du texte","bgColor":"Couleur d'arrière-plan","borderColor":"Couleur de Bordure","data":"Données","header":"Entête","yes":"Oui","no":"Non","invalidWidth":"La Largeur de Cellule doit être un nombre.","invalidHeight":"La Hauteur de Cellule doit être un nombre.","invalidRowSpan":"La fusion de lignes doit être un nombre entier.","invalidColSpan":"La fusion de colonnes doit être un nombre entier.","chooseColor":"Choisissez"},"cellPad":"Marge interne des cellules","cellSpace":"Espacement des cellules","column":{"menu":"Colonnes","insertBefore":"Insérer une colonne avant","insertAfter":"Insérer une colonne après","deleteColumn":"Supprimer les colonnes"},"columns":"Colonnes","deleteTable":"Supprimer le tableau","headers":"En-Têtes","headersBoth":"Les deux","headersColumn":"Première colonne","headersNone":"Aucunes","headersRow":"Première ligne","invalidBorder":"La taille de la bordure doit être un nombre.","invalidCellPadding":"La marge intérieure des cellules doit être un nombre positif.","invalidCellSpacing":"L'espacement des cellules doit être un nombre positif.","invalidCols":"Le nombre de colonnes doit être supérieur à 0.","invalidHeight":"La hauteur du tableau doit être un nombre.","invalidRows":"Le nombre de lignes doit être supérieur à 0.","invalidWidth":"La largeur du tableau doit être un nombre.","menu":"Propriétés du tableau","row":{"menu":"Ligne","insertBefore":"Insérer une ligne avant","insertAfter":"Insérer une ligne après","deleteRow":"Supprimer les lignes"},"rows":"Lignes","summary":"Résumé (description)","title":"Propriétés du tableau","toolbar":"Tableau","widthPc":"% pourcents","widthPx":"pixels","widthUnit":"unité de largeur"},"toolbar":{"toolbarCollapse":"Enrouler la barre d'outils","toolbarExpand":"Dérouler la barre d'outils","toolbarGroups":{"document":"Document","clipboard":"Presse-papier/Défaire","editing":"Editer","forms":"Formulaires","basicstyles":"Styles de base","paragraph":"Paragraphe","links":"Liens","insert":"Insérer","styles":"Styles","colors":"Couleurs","tools":"Outils"},"toolbars":"Barre d'outils de l'éditeur"},"undo":{"redo":"Rétablir","undo":"Annuler"},"sourcedialog":{"toolbar":"Source","title":"Source"},"acymediabrowser":{"toolbar":"Images"},"addtag":{"toolbar":"Balises"},"smiley":{"toolbar":"Emojis"}};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/contents.css000060400000002676152455705240021477 0ustar00
body
{
	font-family: sans-serif, Arial, Verdana, "Trebuchet MS";
	font-size: 12px;

	color: #333;

	background-color: #fff;

	margin: 20px;
}

.cke_editable
{
	font-size: 13px;
	line-height: 1.6;
}

blockquote
{
	font-style: italic;
	font-family: Georgia, Times, "Times New Roman", serif;
	padding: 2px 0;
	border-style: solid;
	border-color: #ccc;
	border-width: 0;
}

.cke_contents_ltr blockquote
{
	padding-left: 20px;
	padding-right: 8px;
	border-left-width: 5px;
}

.cke_contents_rtl blockquote
{
	padding-left: 8px;
	padding-right: 20px;
	border-right-width: 5px;
}

a
{
	color: #0782C1;
}

ol,ul,dl
{
	*margin-right: 0px;
	padding: 0 40px;
}

h1,h2,h3,h4,h5,h6
{
	font-weight: normal;
	line-height: 1.2;
}

hr
{
	border: 0px;
	border-top: 1px solid #ccc;
}

img.right
{
	border: 1px solid #ccc;
	float: right;
	margin-left: 15px;
	padding: 5px;
}

img.left
{
	border: 1px solid #ccc;
	float: left;
	margin-right: 15px;
	padding: 5px;
}

pre
{
	white-space: pre-wrap; 	word-wrap: break-word; 	-moz-tab-size: 4;
	-o-tab-size: 4;
	-webkit-tab-size: 4;
	tab-size: 4;
}

.marker
{
	background-color: Yellow;
}

span[lang]
{
	font-style: italic;
}

figure
{
	text-align: center;
	border: solid 1px #ccc;
	border-radius: 2px;
	background: rgba(0,0,0,0.05);
	padding: 10px;
	margin: 10px 20px;
	display: inline-block;
}

figure > figcaption
{
	text-align: center;
	display: block; }

a > img {
	padding: 1px;
	margin: 1px;
	border: none;
	outline: 1px solid #0782C1;
}

extensions/plg_editors_acyeditor/acyeditor/ckeditor/index.html000060400000000054152455705240021111 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/adapters/jquery.js000060400000005447152455705240022607 0ustar00(function(a){CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;"undefined"!=typeof a&&(a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g))var k=d,d=g,g=k;var i=[],d=d||{};this.each(function(){var b=
a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,j=new a.Deferred;i.push(j.promise());if(c&&!f)g&&g.apply(c,[this]),j.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),j.resolve()):setTimeout(arguments.callee,100)},0)},null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",
!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",[e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit();
return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);j.resolve()}else setTimeout(arguments.callee,
100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,i).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}}),CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var k=this,i=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});i.push(f.promise());
return!0}return g.call(b,d)});if(i.length){var b=new a.Deferred;a.when.apply(this,i).done(function(){b.resolveWith(k)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}})))})(window.jQuery);
extensions/plg_editors_acyeditor/acyeditor/ckeditor/adapters/index.html000060400000000054152455705240022714 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/build-config.js000060400000002257152455705240022023 0ustar00

var CKBUILDER_CONFIG = {
	skin: 'moono',
	preset: 'standard',
	ignore: [
		'.bender',
		'bender.js',
		'bender-err.log',
		'bender-out.log',
		'dev',
		'.DS_Store',
		'.editorconfig',
		'.gitattributes',
		'.gitignore',
		'gruntfile.js',
		'.idea',
		'.jscsrc',
		'.jshintignore',
		'.jshintrc',
		'.mailmap',
		'node_modules',
		'package.json',
		'README.md',
		'tests'
	],
	plugins : {
		'basicstyles' : 1,
		'blockquote' : 1,
		'clipboard' : 1,
		'colorbutton' : 1,
		'colordialog' : 1,
		'contextmenu' : 1,
		'elementspath' : 1,
		'enterkey' : 1,
		'entities' : 1,
		'filebrowser' : 1,
		'floatingspace' : 1,
		'font' : 1,
		'format' : 1,
		'horizontalrule' : 1,
		'htmlwriter' : 1,
		'image' : 1,
		'indentlist' : 1,
		'justify' : 1,
		'link' : 1,
		'list' : 1,
		'maximize' : 1,
		'pastefromword' : 1,
		'pastetext' : 1,
		'removeformat' : 1,
		'resize' : 1,
		'sharedspace' : 1,
		'sourcearea' : 1,
		'sourcedialog' : 1,
		'stylescombo' : 1,
		'stylesheetparser' : 1,
		'tab' : 1,
		'table' : 1,
		'tabletools' : 1,
		'toolbar' : 1,
		'undo' : 1,
		'wysiwygarea' : 1
	},
	languages : {
		'de' : 1,
		'en' : 1,
		'es' : 1,
		'fr' : 1,
		'it' : 1,
		'nl' : 1,
		'pt-br' : 1,
		'ru' : 1
	}
};
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/index.html000060400000000054152455705240022240 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/dialog_ie.css000060400000040473152455705240024031 0ustar00.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/editor_ie.css000060400000110744152455705240024057 0ustar00.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__sourcedialog_icon, .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/dialog_iequirks.css000060400000040530152455705240025262 0ustar00.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_footer{filter:""}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/icons2.png000060400000024063152455705240023303 0ustar00�PNG


IHDRP��� IDATx��}{p���k�<43�G3�Go!$Y�Coa$�Q�#�pH�ݥ�.�w	���u��/Ky�r�8K�˽�f�����x��
666�lc[�,[�y��̹Lw���{fd1�U]�|������q�s����`?�gԩ3u�����}I,���$�� ��$�v��a�cR�5��|w]]�u�ϟ������+V��v�޳g�Vϛ7���o�l��sj� @$�I(P�lٲ�~2d�7����	�Xclcl1�q���H���Ye9^]1�LB�<ov�\;�v;f͚"�SO=�Ƕ��MY	b�"�H����������ᰭ���7�
8��9�V��A����F"�FDc]]]oRYYY�S��&$�I0ƾ��@Yww�vA����h��"���7�c����x���
CCC1"
0ƴ	��q�B!�L&��d��q�V+jjjp��Y�x��C]����0�Lp��H&��d29:11qz�ڵ�…w0�"ٚ��)��lB~����|Ʒ@D����n|>q���u�����(▯��f��A066��g�
[�n��==HDC˗/�E������D%�fe9]�`-c�	Ap�…����'3Ǝ�E�1&��1����w����q�����h3g�|�16�U&��z����M7��v���[o������D4�W(7
��D"q��i�|� ��k�=��T�Y�:��9s����G�A��j�l06c�sAA��$��(��?B��R-i�2%h��s�*���ȪQ.�KjR0`��2��X��*��������������8$	D�Q��q������ܾgϞ��}>�؝w�I˖-�w�y'�L&�������w�ŋӏ�c����kooo����M�я~�H
��Z|���1y��"œ9s@Dؼy3��c��16�{�1֣���۷o?�f͚F�Á��a

ahh(9::�GO;��A��;�>[K��f3�<�L�(D�(�2(ONNb�ڵܞ={���Bp��^�d�i>�z�D�����˗��3g�`Ϟ=r=-��>���g�u3�b��K�p�`�f�J��̞=�x����("���$JKKQ]]���<��3�p�
��ؿ|ӦM�����1LLL����G}49k֬����48O����)"�KD����'����_��Ҡ%����x)
ԭH�p�or�v8'��r���w����A�Z�Gs��s��?

��t�M�Ϸ���~���s�΍:th�Y"Q'=u��77��n\�t�Җ-[>�c쭬0�<��#?�D"�P(��W�\��^�4�����8��8�n��v��=	�����p����|>��h4�;�,--kii!�D=lŔf:�V�l6��q��.�&��D�y�ԩ�>��l��~��~Q������H�$��D�ĥ���s5I$q@D�xME�a����4�}�u{S�T1�I�W?2�>&"�I�u�]W�E �ba�5H_c(:�.�S����g�����8
.��cL���4��)�����1A��4�j�Z`�	�R,�1�1/!�|F�E���l^��@��ŀ�/*26mX��Ik
�L�YW7%���*�}1����1�d�<��((HgnΜ9x衇PRR���A ��#�H���B!��~�bi�8�b�XF! ��� ��,�{�⦵f:Q�Ww�[
���5b����f3�H$�L&Өhu�yAPTT�Q�+---���Z��Y	�B�c�`��Ճ����u8���1444�R�IæM������������%��F�\s
uww���=ND+�����ϻ���X���8G2�ikk}饗�z$��Q����N�E"z[\rf���1P�k�TA�AC�������/,�v;�vmY��X�9�|g���:�1c!�0��V/��f���k	�����)���;�β��b0�p��Ilذa)���{{{{w̛7��㗿��v7pPZZ�,���111��
7*��^YY���1���!�L����������5gϞťK�011oK����3g�Ν;���I��~���#Dd�o�w��U�=��pp�n��F�����@�D�Ў;..\���W�����H����w߂����}"�S�OD�����ӣ�>�V���lllL<��S�'�/i�466Rss�"Tg���׾��WtF��jkk/��ՙ���?}��^M�8��|���+Z���x|��V��m޼�i"�_'߀��z#�Uyծ��#-�\�����\.R�Q-��X,����J"P�!�a�Xt�D�7c���\�Ma����l����nhq�Ք��i�I@ID��K��DD���ĩ����mZ��aֱn�Ǧȟ��~��@��\��'���c�`@�^0�B^�D4o��t	HD���^0�/4�@\`�A/��ٻ�����EEEcH�)�Qm�ن+**���������K���V�P��`+((ذ|��R�ϷG���w�����,Y�`�Z#��Z�/,[����c``�=��������'[[[b��m��d29���w��:s�ȑ�c��G�,�o�͛�����B<Gmm-N�8x���,//��16���X���aÆã��1�χ�����&�|��=���+�ʚD"'=�/��褴���"^�w=c�@ZY-H�5m����F�� 8��ʝ;w~���l�`Cgg�|�Ͷ�����,**z�������;�ڸ��v�}h```g{{{x˖-OQ)���믿>��ӳ����R��l�� ��C�>���[�:m)�񎎎�D�.��|	�L�S "���<��s���>��R~ww�w�v��~��hII�D4m�۷o�5�����կ�*�
����ۈԙ�Ck׮�=9�Q/�NNыDT����i"�q�V'0���^�`�C/�B��n'q��^!�y�7x���o��9s&���o���H}��خ&p��ѣ|cc�쾾� D�&�m��c��{�nSS��)���ND�(e��q1o��j͜\Ϝ93��:���%�4�S6��������F�,H�S��i����Қ����|�&(�kq!��+�&��a�_M�!�+ƥPp��&��.�(�49�8�����i��샌��w�y�(���PPP��jD��D�[ZW���S�&g\�f��~�����\���s984`������^��|1!(�=���vp��	EDH&��x���?��*��#�<BV�5�!�`͚5�0��w�l6C�FzH&���b���ǫd�Nb#o������lFII	L&S�
R��ŋ��b�q�nϘE�y���!"��L�1>�쳟«l�X�� �~
���s6`���4Z[[��2�s57���q��K��c�c�!%�t��I�ɬ��j�	g��/Rg�����lj���d�޻��?�b�
]�Ҏ�K����"��F��������Lu����j�^�XCC!�Jn����3�ҹ6��bY?00�7o|>���v;d�E����~���sGaa�Qw���
�'	D"tvv:l6�I�1����S�NٝN��4�<Ap��Q���`�̙D��011���a?~<�������͡PH�抚�)7O��� H�N��\VV�D"���� �I� ��h`�ን���zE��f�D�|I�i������~�*�_�
i�.�1���D�`���@D<�NI�Ts��xr7A�.ADR��P�2�����8xE<����I}�u�3�����v���|�kd�b7���Yŋħ ?�(�?��K�O�$p����%���-��>�*@D�&���B�u�.�N����ۑn�������~`�Z���2)�Edʋ��j�cL��J�I"*G��8�ӑ��ٳ�Uq�Ѻu�
y��_(�����j�hMyfڢ�����s���!9a��SxjP�������x<o�a)��k荓���J&��ģڕ����2�����	�{PXX�˳�,}��=����X,�W��鍬�D��T��|~�g?_p��W6_��Լ!͸Q��v����8oxE� �|A�V��IDS��/h������o�;Ř/0p�c��j����q�V�_�N�@���� @D��:�-
���Z��햚�W�ٯ��N�	H:���)�O��T°���>�ar%�}@D�GGGGw9
��}Y������W�Ü}��ދ�|A��������)�ſ�T�}�K^_PB�l"Ƙ��#��-�XV�a���U
����.**��~L��2�)[U u���V�5���D���#���X�ŷ���N~�!&''/1�����hii���^�9+b�֭[���	���LG�a�PRR�9s�����D�D"�p8,����q����?��?e�-�F��ðX,P,��[�D�x<.W�n��f,�j"�l)��	��J5}�J��,h3l4c���l�B�͉�*q�ۄ��I$	0���!�	�'-�h<���$ cݺu��^�ź�:���
���o[�j�J�=E��Vg+++�@aaa���=Dt!���T��D�]"jT�qѯS\q��Hyx-��=���;ҸlҬ΀@_/T���}���pF(A����z��pD�͛GMMMd�Z�H�X�"�/����(�$狋�鮻��lc�dǏ��Çq��9�%��鮫�ÁX�LR��`P��qjjjPWW���N�>
@!%'	W`�q�8В��Fe��x<A2*)��I�^��&	��Ľn��0���EAAA��P��ccc��&��h4���v����0�L "��a��dSr���r+���)"��jժ-����jkk�uuu�z/�[�nI�+׈�ߍ�~�LD~Qo\ �{�}�S΋��Qo�qY��*���7`���i�^���BʰS��W,�&T�9HD)V*�555TUUE�4"�����HD��P(��պ[y���n���N[��Z��C��oDNRp��DD�����D���(_�Hduu5Q��H���f;�KVVV�Z�s��i��j�[YY��1���lS�����o��6JɊQ���


������uR ��X�z�V��(��]�b��+V��z
W�^����BI�'��(�@y���L{[,�Z�W����Ĩ�Zi���s�,��`0x�z����������0��c,YQQ��<c�/gϞ=�1v��jmX�h���ӂ ����իWo޲eˣ�˖-[#�)��Tl�t���g��#��]]];�c�����j��������Dd&��-Z������Ν;AD;�(�3�����+��L�檪�ᎎ�D{{;���Ӭ��:gg̘1LD���ڤM�姐
k׮u8���|����n����AO��R�f���b��'�(|��j��L?R��vcj'$R�U]�+��^�t)-]��D"���4׌1٭[YYo2�`2�PVV��������UUU������k/�	h��m���������g�������+�1J�<fh{��x�����>�wH>lܸ���t�d2ܸq��10p�@O`�#l��\��<�ӓ����r?Oq�/0�6W��1j�\�(wDAA�,�y��=�|t}��g�
�:����
@��Y�w)kQ����Z��&����n%"y����U��'=���i
������#}Z��<F���}pZ�Q�]TT�Ҧ�c
�Jg��}��b�d�gԏQ�'�˴#	"�F|g_t��|�!d�f籊��j��\BF-qo ;�kaB��JJJ�8B�B
Y��#d2��R���2�y�Z2Z�QK�O�1f��>��?�Ǩ%�s>[TWW�ܹs����L&xB��&��:::h�ܹ$9\������18���x㍌A%o���לN� �1�ӧO���l�ɓ'a6�!� c�oԷg��� �ʲ�L�kt�-�Pkkk��bkk+�r�-�D�5SF�,))�L)��+P?��


���O���
":^RR�Yپ��o�WD�(�d�\D���X�'�����B��=�P��!�=ADWl�4��UPb�Ie���~*<S}}=,X BF��F�@.���f"ž2�477�…%N�����(
����ΝÛo��la���H�7-X����r;v6�
;v�Hyp�è��@(��8$U�C<Ͽ
�PQQ��k�ܹs���y�d�Vwcl����V� ;m�`hhH�}2�u�~\"������_�Z�Dy�_Ќ�eZ�X
��U�T��f�D`��ij��	�X�� A���s가ƥ��h��P�V�����SP*PWP�k5Y�������(�Eb���w��'�P[[�5ւ��+���2�ލX>5|����S��3]]�!맫+2X����js^��˓�qy4�Fz>M3.��K��7t��O�].��OW/(Y���񮮮���~����^$b���DS/455�� ϋ>*A��n�=���C�����kHʕ�|���Z����h��f�#D��p��7o���~��	H��2HwV�N�r�#���*���鱮A�F@\�с�IK=�P;�����)f��PA�B{���ԔU477�:��酴��ܸ��4�����M�KW�r����%����	�-s��2�ps�t�L@���|A�z�"�B��GZ>����.���.ч�+|~�]dy��+c�U�����a֬Yoz<��?��L����QRR������t���#��,���@#���gM]]�kxx8��?��cJ7�b����cl�]�/^�F��x��kX*�&���6�
�hEEE�U�$�t:
��ߏ%K��ժ�
������ŋ���eL여Ps������D"�y�{�K�+�`��㨯��1&�4V!�Hu�H����555��x�w�Y!�9�n��ǝ����,))Y�Q[XHG���4'mmoo?�p8�g�^�ti�4bOb��ϨXc�l
���q�x[[�q\`hh�Y��v�u9������~��-^��R�w�J��K���������F�s�;KKK�]�d��/�00�Bv�������477g%����x�R^�j�
�W��*e�>�O��^�W{�!n��1�N�I��M���n�����*��q())!�lu8�5k�vD[,+�q��SQQ�=�r����!�ټ�Yi��Ƌ�MrOgg�m6����7�����cs��]`��vJ
���$���ϟ��{1kCggg����NL�ʿ�N�3
��;t�MAc�%Mq�(�##K9�Di:�W�̍i���-��O
�t��,�RM
5�r�&rѓ�DTKDg�����!�k��lQQ�>]1�"�'/U
Y/�'@�}҆~��� ��E]!����l6������z�������'��^`U��Η̝;wYqq������o6��@gg�m���	R'rw_ggg�1����Op�W������$]П�\��唲y�:H?��mC'���0�W8����{���1�H� L�T�bdK�y���8���
�@D�Z��X,�F��DR.3�i�1�l6̘1���$"J(�����:;;��`��y=�X,�O��ٳ��"h}�z2��Z�ϰ5�I3�L��X�s�X,y�q>���v��|�9>dt"R+:9�***��@'<U��3�j�ȶV�uY�V�R�`b��N"��.0`�s'R�/�>RMӃ�#�������_�2�Fq�ر�	�2�^����={6��3�Ej��0�Mj��_�ٯ~��N�ǃx<�d2	����"����ĉ�<�e�@,�F%o�IDAT\�pEaaa���0� G	���p8p�ݨ��DMMM����]�`���2�ry�pUUU�����y��a����N�%%%���b�ڵ+���� "�'��w�}������jll$q�]�������i�8kɜ��k쫏?��f�},�]��Dt�����d�&$�����w�f�fM"�o�ʕ�u	���D�R����0`��'����Q7|����@΁fKK��Z�dz
)��iu�#-��������f�����d2�t�ܹ/x�8��0����\sMKQQ�V+���da2�0::�W_}u���R3�^ZZ�����p8�X8�'\�`� ����+//oݴi������~u���ctt��8�s3gΜ�y����� `bbCCC�|�����1��7kkkgΜ���sϡ���@@���	EEEKvtt��g��o1�>P�}�O~�-�����C�6��l6��Ǐ�K�3ߙ��+W�'�����l�FD�R6��d<�DDn����`�C/z����r��燗���������j�#�H|�Q
�y�9�	��%+�)�������F��>���-��1�#G���7�%����������z$	��h4���1���}���~sxx8 �O'	444����@�WWW��� "���(�~?���,]���E�=����P(���J�L@��,b����}��f����������b1y�]>,,I�X,�����w�}��H��;;::֏����br9�k@n�t����}��MH逿a��[�x�@  s*�����x�.]�<��3[8
�3�����?�r�…�X,�aZ���PXX��:���ʿϜ9�`�K�%��d2	A�D�z��=��Q��=^�w���t�1v'c,���O���lF�S���ın�a=syy�j���b������mhhX��2AZҢl���X"�0����g�U,nkksI��^��rll�oc�~��####�B�Unll�f2��c�����t:QUU%wTAAN�:�@ ���͆d2�ƻ�{�ӧO�l``�}ttt��b1K�"�,�1�n-��<Ϟ;v��|����~C���1�W�R�k3?j�VH�3��恖[o��z�!�;w�Mgٖ����B4Ekk��f�C=����{B�����	����t�hiiq
�p��'���h4����	�-/������8���}�����bg***��C�����=��ҥK���B�Pu<��ٳ3�<�t:q���Ѫ��c7�p�1��ޥK�b�\s��]���I����/b���~�a�`���~����Ej	�ZM�����'��=y��e����VWWG���k������8����<"�^8�d2I/��R����+W��f�ڸIm�'���y<�:�]TT������+.��[�+K�9s����y��� FGG��o�s@D�iݞ1K\ijkk�z�j…p���)*b柸	3f�@ii��;	�x###�«�	PTT��S�r�:�O��o��x:�����X5�$$�v�*P�q�GZ�-q�"�����|��׾&WRB�9so��VZ���i�*�9k�����9�?>x���k�A�H$����;wn���dF�,H�	�"?�z{{[�c-��\D�-M�w1����dVV"B<���c�JN���H�3��H�ꑚ��M
�SeJx��U*���H	A099��ʧp&ǝ� ��	�Wi�A��t�0p�#�a��:�|A\k���sS�6R�F��X��s����D�H.\�uB����MR��
"*T��5_���p�c�n�s6A�i|��@G/�|���+E�Ԝ�"k��y���v�R*�:�������_���rx�^X�֌Ej�#�u�\,g�^�	Dd3u<�f6A��n7y�^]!�#�����d�����<׬��XG2p���F\��zIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/editor.css000060400000106775152455705240023413 0ustar00.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__sourcedialog_icon, .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/index.html000060400000000054152455705240023367 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/readme.md000060400000004741152455705240023160 0ustar00"Moono" Skin
====================

This skin has been chosen for the **default skin** of CKEditor 4.x, elected from the CKEditor
[skin contest](http://ckeditor.com/blog/new_ckeditor_4_skin) and further shaped by
the CKEditor team. "Moono" is maintained by the core developers.

For more information about skins, please check the [CKEditor Skin SDK](http://docs.cksource.com/CKEditor_4.x/Skin_SDK)
documentation.

Features
-------------------
"Moono" is a monochromatic skin, which offers a modern look coupled with gradients and transparency.
It comes with the following features:

- Chameleon feature with brightness,
- high-contrast compatibility,
- graphics source provided in SVG.

Directory Structure
-------------------

CSS parts:
- **editor.css**: the main CSS file. It's simply loading several other files, for easier maintenance,
- **mainui.css**: the file contains styles of entire editor outline structures,
- **toolbar.css**: the file contains styles of the editor toolbar space (top),
- **richcombo.css**: the file contains styles of the rich combo ui elements on toolbar,
- **panel.css**: the file contains styles of the rich combo drop-down, it's not loaded
until the first panel open up,
- **elementspath.css**: the file contains styles of the editor elements path bar (bottom),
- **menu.css**: the file contains styles of all editor menus including context menu and button drop-down,
it's not loaded until the first menu open up,
- **dialog.css**: the CSS files for the dialog UI, it's not loaded until the first dialog open,
- **reset.css**: the file defines the basis of style resets among all editor UI spaces,
- **preset.css**: the file defines the default styles of some UI elements reflecting the skin preference,
- **editor_XYZ.css** and **dialog_XYZ.css**: browser specific CSS hacks.

Other parts:
- **skin.js**: the only JavaScript part of the skin that registers the skin, its browser specific files and its icons and defines the Chameleon feature,
- **icons/**: contains all skin defined icons,
- **images/**: contains a fill general used images,
- **dev/**: contains SVG source of the skin icons.

License
-------

Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.

Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html).

See LICENSE.md for more information.
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/editor_iequirks.css000060400000112155152455705240025314 0ustar00.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_top,.cke_contents,.cke_bottom{width:100%}.cke_button_arrow{font-size:0}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_rtl .cke_button_icon{float:none}.cke_resizer{width:10px}.cke_source{white-space:normal}.cke_bottom{position:static}.cke_colorbox{font-size:0}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__sourcedialog_icon, .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/icons.png000060400000024322152455705240023217 0ustar00�PNG


IHDR����1 IDATx��}ytՙ���v�[�f!�v�E�l$���%���7�yx�yC��a�0�3�/��$�8q�0s�3��!������Wlc�x�%���{wujUuWu�!���9u���W߽U�}�~����Gl@��2��P�Z��&x<��_��זF"LMM��#����a׮]A�8%��K%`4ﭭ���ҥK��^{-�r�ʠ�j�w�…�y��<�Y*ϥ�  �@1���˗��z�>�/��i$80�Zc�cK8��FGG����/�����8A��F�ӹ�j�b��� "<��3hkkۜ�!� 
�;;;MNN�H�.Z:::z#���cZ��l6o����0m"��D4���uppp������} 5!��1�������;A@cc#�!c��\"���������6G���S'�F`0���
�q0�ͨ��ƅp�-��'��49�cǎ�`0��r!�������ٵk�r�-��ej "K2��c�Uy��o��x9a��t�|�Na��Ny!կQ��_��׌V�� `||.\�m�)((�~{"z���W�XA�/������(LDM�r�b�Z�؏A��˗����~��1v<'�1������د�ig�UUU��0JJJN2�&��d"�TWW�z����[f����;���)HDZ�2qp� ��b��1����Ap�7g����x@xΜ9���G6�-
�V�T�l0>k�,c^^��8��0�����25�W�����EI�e�DdV)a��U)��q]c9��F��A�P�B�{aa�/ZZZ�qb���0��(FGGQVVfݻwo@�֥����s-_���9���ё���o��ؒ%K������{{{��mmm~�@b`���na�%�����̙"–-[x���c���1��s��ye�>رclj5k�4�l6���`xx���񱱱?x�f�������r����F#�</O�	�D�(��(OMMa�ڵ�޽{���|p�^xAg��>�:�D����+V�����c�޽�zjz�}�<��f�EcW�� �~?fϞ���i477��C(B<GQQ���0::��{�ܨI��͛7s�����199���B�������ٳ�1��T�<"$�g�h�#"/�OD�Q�fE:t(�&2���x	
�-K�p�o�ֶ�l�������r�����d6�Odey׮]����[m����JKK�p�B�ŋǎ=�[�@R"Q'=s�m�5�\.'\�z��֭[?�c�݌0�>��c��B�@ ��x�g�*+8@��~���c�|D���ܳg��/ثED™��V*--����|�]EEE�---����m��Lg��F��
]�|y�'��3g����b� ��4��D�AD���\YZ'
ѳ�2�ek�H >f�8�3��Y ��Y���T�I��?��>&"�H�M7�T�F �ba��K_c 8�Z0�b���K�IdR,6��8��s��m
�2)�C�����qA��K��Z`�	3R,�1�1/A�>#Ţ�L��h4n�J GŢC�i���x��$��#��F�$�II_LY��&Ɨ.]��~yyJ��̙�Gy�����4>�^��XL��z�(�8�"�HZ! ��D J3�ꚫ�h��N��j�|���8�t��~E��h�c��񸂊Z'^v��-/WTTT�Fa6��2��~?���|	@��c��l��㨯�?�ZG�͛7?[SS���%��C��n�����&��3DD+��Ռ��>��]]]�H$R�q�-���������+=�Zӄ�X~GD�":(��+B9�tm�*�.PD�\�ւ>W���j���-C�ZK�2���M7�D�f�"$ө��%��H7�x#!��q0-P6|�;�Y^PP�N�>��7.��b~ooo��y���8x�^��׿�`EEEM� `bb���p�\p������8��8���z9]s��\�z>����pP�@�>�远?�w��ELMM����'"K����[�n�:��� �r�-�����葝;w^Y�h��|�+T^^�������.\H�����=��D�jll�?>=����?љ


�g�y�D�%�����jjj�ID����V�5�կ~�u�ѹ
�њ��+D���~����EDo(:'���v��D����`4]ED��.�[�ly����ס�:��HdUN�kkkI
N�s2'"N��Rӈ���.�L��D�Vk9�ڐSa2�4�D2c�4.��0�,�j��<��j�5��q�D��Q����$ ��31q:!1�%���o�q������gj�O�'&�iy [3�	d{s@�/�P��t��9��.My��t����5
,��6{O���`�n��#᧘�*��2R^^>,%�}�mmm�.[��i6�߀l�K^^��+V�����$p�=������ҥK��f�o�2f����˗�{�^��ʫ��644<���Z�D�}�����񉾾����l8z���Ǐ?��'-FA~3o޼ކ����0��(jjj���^{�w����e�M�6�1�y�mܸ����X�������?���{��ʞ�*���v�ݿ��S�r$	y<�
��C��j�Xk����9?_Ap8�v�@���8�
������eǡC�&�;6e������C��w7Wix�j��joonݺ�"*""'=s��7�{zz�|����m��꧄w�G}t+�-%<��ѱ���#�KKKcH� '@D��q��u���}�����򻻻�k�Z�����'��p�رc����VUU�ED�d7����o{>��]��wDdS �^J�&�$����H��ѳD4"6�j��Cǧ]/�zA��t����!��J��fH�P�{��w�]wՕ��.]��W_}��H|��ؑJ�ĉ'����澾>?D�&�o��s�N�ɓ'�kll4*X�Z�DD����������uIIIN�u@i�J��T�LO��$�FS�m��AJ��oR����&�X�������p5.��IFj��������d�5�I��F���*��>�����*eU� �Ps�ȑ�v�C^^^��,���h�dW�����&�]�g�μ���֩Z%��.�:t�BF�zA���Q��Pi$�&�PL�/
�lhhH�;�D"�������c8~�8�y�_�jjj�C,� �������緿��wFFF|�Pb���ף���n@�UUUF�ߏP(�p8�׋���˖-{i���/0�v{��d~ @EE�9I � �&�(�|><��c�b������흚�J��D"I��	�'�@$�����{�
E&&&�G"�d9I&r�m����׷�1�����1�ɒ%�}>_�SIfr@B�b1D�Q\�z5��s�m`����h4>����p��˗�"���^�@j~~�^��6ʍN�VRR�M��%�ɤ�@��
��z��b�<�XQQ�c�Ƙ��g���	H��b�,X�����luii��1��ۇ������~���Ah���`0�Ōeee�cUyyyK��ڜCb������w�u����(�@(�*744l7��Hp8���LvT^^Μ9�����łx<��{�w;��g�|``�}lll��d2J�"�,�1H�p8q��{w�ܹ����Q��o�(H�;(�� �L	/:>'���\�&і;y��;w�$��Ґɍ���J��a���:���g"`ikk�/���`� 0�L̈́�ʖ�� �~���㽽��Pٞ�J ??�r����zzzB�H�|yy9��\tvuu��B!\�zu��ɓ?U�h���!�3�<�p8p�ʕ����S,8�r�N^�z5r�
78(,ک�}gmm�7�\��+V���G�� ����6����!�Vk:�U]]����O�>�؂�bŊ���֒��&����h4J�`���<"�^0�x<N���J�3�'�x�,Kڶ��Y�4F���`�X`�ۑ�����&$ߚ'�|��V+8��|���x~�O=�ԧ��%�<��cd6����D�P(�5k�|�|���%�ј�iA��?��u��Il�lK����hDaa!��q6D�Q\�r�H$�f���3f��Bqn5�H�<��C3z��?���U6�L9q�����s֡�S�'i���*b�r55%�es��D�'cWcO"!�4��)Y$���*�	��/1�2���xں/���������+Wj�ɓ�iQPP ���GD���{*u���q̜��f�j<�x}}=!�6�l5x?1��8f�ɴa``�9o�<������j�"I�d2I��JKK���sw~~�	w�Ɵ��b1�B!tvv�,�FI�1����3g�XǾ�6�<Ap��	���� ���q&''122�����nG�Ϸ��6��TWWH���G(Azw��rqq1b�X��DA �HIr	]��>�rա��7>Qm��8�)_ij�w@QQҿoU�_��ԣ�Dc�XIDc�%�*@D<%�*�J��vgo����B�O&�l^�"��6�M��u1N�"���@� ��pD�Y��wd�NJ���H,L��\��3m/���H �4b�2ƮX1�>�8���rzR.I䧹Ԧq ��Z"
�%��3Gmi"�T�����=Y	���f��/..��_B������c�	�_i0IDeH���^knn>�&���ׯ_o�ɋ4�@���PCD[e�[� ���v? ��I�n��EYd�yHz!.�{��6�Ψ#�2�q�K��/�ک��� ���ڜ�@B�=���瓳�}��=M���=0�Lope�;"
ũ0��7t��|��r}���ZU$�
��P�}`�Z'Sˈ�דd�/H�8�t��M����|AUw�d� O=�S��;F>Qm�јu�"u��M�W�&�./&��n�_�NxWEfjt���咚���+�E��g$�@D�ew�/?�@ˆ��h�,�����> �ccc����:a�> "�(�S�a�>�i�Es���m)s�YS��w��k�A6y}@!��,B`�	;�����4��_�?��.^3@��͙3n�<�gt�ccc8x���?c̤ �Oڄ��x<���p��e�>}z����'n¬Y�PTT��+J:�U� x5�v{NO��&��{�f��,�D΁����s��F�r	q�L�S	�p����8n�0���Y_��W����ϟǻ�*G�jǵg��5g�
H�f��̟?<�k�'��
�0::��/NY�J����Pb]����ۂ,{)���T4�%����lll4�
V"B4���0crNԞ�h��΢�~�a�n�-D���_,�w:�E����!�EB���z�I�����'3$pz&�u�Α�0Os��q� �Ł�S�4R�F��X��H5Y/���y���NPP��`[�$^���N"�OM�i��Fq��e0�Bi�Ȩgm���l���^��ٌ�YuEF��y��r��R*�I��9�T3�
�&������l6�m�9Ҷ#ec9�jM����URk�j'�\.�x<�:B�#i����t�����k�[�I���Sav���v����{1퓑��H����^/���pcc#͛7�l6[��bd_c{{;}��G�����s������7�x#�â�D�~�zLNN���&:~�8K~����3g����AD��b�I��h4������GrE8I #�d2A�^�4HV�������D�ڔ��<��<�q���v�HQ���
R�%Ɏ$ٍ�V�M������C,c�h�`~�~����d�F�u� 8��X�~���s����jjj�eee�W�Z��g��D��� ??_)���>"��������w��AV�AD/�E����e�\
����s�f��t|�����������?+�"G���z�f���͛G���d6��HxD�bz��7)A%9_PP@��7�q���8���p��1\�xDt��p�jkkq��!���@"���O��8��ը��c�`�gϞ ������+ ��ʢ�	"�PN�%*EoK�$��&
� ���bCܤE�KmB0D4Mr�����r�F`||^�w�`0|��V���j�"??�D�`0�0����ۈ肨�ѕU�Vm-++�^SS���%��se���J�$��>���Q?l!"��7.�}�}�U΋��A˙��u�t9�Cǧ��
��\�]�D�y�>��B��_]]}��>�yB��������H�������"�$��ߘ��=�uwwSww�b��l6�	�9I��ruWUUQ(:@14C�Ё��*"�n�	���r�1����o6���o).��<���b?c,n�X�'9�ַ���)"Z����������>�`�X'"��իWopX�ޕ+WnY�r�[)O���ի�џ�	�D�L��j��&�S_� �����C��/,>Gz�d2��׮��ˉ�����>�ϣ;��������1����͌�;�fs��ŋ�f��a��GK/�^�z�֭[\�|�Ѧ��s���GD��SO���#��]]];�0PO8WYY9r�СUrZz�A"2�+�/�S[[Ks�Ν$�]D�<)MF,��LJ3M���#���vr�\�ZY�.̚5k������I��L>�LX�v����g�~�;���r�v��Օ�TBD;�6�}���TC���9G2�CʵMV����`z%$"zKC��%+�gٲe�l�2���m�:����������JF.���/VVV���<��o��J@m��b�
�a�Ƚ{?+|6���������Q�5B�d�d������+�2ʅ�M�6�h0�Û6m�">F:�h	�\�

���SO��~.:����Q�i�\���O���~�NLvD^^^R��<�Kk.���r���cԡ�@��c�3��b��%�MD����*�w��~v��AD�Qf��ڒaj���ۭb:���8�ք��$�+�N.�Q*�<
uF�Q�m�ە;��#c���1�\x��c���s������=��2��HD��e�?:�`P�|� dR��D��˫俳	�T�{��!�9&䩌1���P�r��H�\�L�Ґ��<�N���L��̟�cT��3}�i2��1M���1��|=.���UUU4w�\��� ��@~�R����:::h�ܹ$�����Ayy9c��lo����i�("��v�mo:�A"cgϞM��шӧO�h4B�A��_�ޞ1�ׂ ���3	����o����4_���V����%��X'����-D4DD+P?����멿��-��D4TXX�E޾g�o����qL˾d���b����7�D4�S���nY��bڏ��;E��&���yZ^x�…���K&���a�…!�ձX,����h�"jjj"��+QKSS-Z�H�d�X'����G�@����x�"�y�`+c��Dw�u�…����ԩS�X,عsgℨ`0���r�<�&��Re�?��@����x�x�"�� x��ѣGc�R;�16�`kk+AHƈ�`xx8U��M�HoV"�z:�0�t:��t�!�Br�"�����������ߏ���:��)fc��x�ĉ|CCCscc����҆QA`�Z�'NXO�<�^cc��1�"���?C��!1o14�S�~�r� ��Z_��&��T�M�e��"?�	�E���[���>���Pn&�~km�K� �&�Y�[�(SY���v -���DQ��C�1?�Dw�ќ�������@v(�fu�IDATx�ȑ#'�������tH��p�J[{_���˱.�:td�9���gG�^�	�:$�MА�LT�
�&�+49�UWh�UW$	h
[��$�@��tE��(�'3D]��+� ��%V�����_���.���.ц�+t|Z�Z�$�����o���w�]wՕ��.]��W_}��H-����z�������HQx;w���f�9g� ;R`��	%%%�zA����s�5����I��Ȑo�ەM��n����v�&�x�߲3�U�E��4���2VH�Wkr6��I�Z�➞���\gm�󅚚��:���V�/�����Vk�z!U�P�l�됤@I� �!Ii�~����r��M���H��3�i,�TW��9���>e�b\+R�*wLE��4u��K2��u���-���x���&}0���A�={�;n�?��OK<O}0Daa�����Ccc�厎y��n$NA�zzz����:GFF���7�u�n��IUc��нd�g8ƕ+W�X��ͫBm�z��bA8��n?���*�ñH�ֹt��}j�2����[�d	��������,*,,�B�x�?`�L	|��cbbuuu��2���5�<EP����jr��t�ȑ�b���r��q��^w�����Ei�Ł��e�JLsѶ���!��mnn�_�zu�4bW������cgl���q�D[[�q�oxx�y����579����6X���o�ۭ���w5r��KEEE����}�N�}Ị���[�t鵫A:f�U�,�3Wv:��Zc�����VLR"j[�Z��Q����n�XJKK5	P����x�-�$�OvT��o�p�JY�Fuu5@ee%����(�:̞=[�	�/�������n��N��ឞ2��>[
^�i�}���wZ,�C^��_`bb�W��Ν��R��QEEE$��/�ϟ�;1kcggg��e'*�r~���#�߻5�MCe�F��,�R.KF�r�n�u���㏆L:`U�z	�.��p:��Y�h�z"�!���d��5Dt�n�k�S)D���'�����t��@�X�>�@�����uD��+��#
��7��
===�t:��~_?q�:s�o�)l�ܹs������x���X,�:;;�p��N�:��:;;c6�Y��?~�㸿�uG�:A��Y�e��R��;�I�	:��`��+�����fO��P(A�=[R�Ȕ��<���	���#��`6�a2��
%Bf��1�`�X0k�,�����(&����rJ���$��1��zn2�(����f��j߻��Ԝx��4�Cr)H�M&SNiǁ������I���s��544p���K�D$,:Y����?��N�$��y�����k'�t��f�R"`l��."�]�C��/]k�^˷�i!�#����v���_�2�q�ԩ�	�0�^����mnnF4�t��H�p�9��$�Wx����n��h�x�ᣏ>B(���Ň~x��^����E�V���w�l6� �S���(l6\.***P]]]499�
����$�y�heee�������<�#B�ݗ.]r(+,,t`���>��;�tQ��{ߪ���uttPCC�v��Dt��Þ���=�%}�&��W

�X,礽kb����$��~�l��$��T��hܮ���O<�A��X�ED�d�0#:t|�x		qmu��H�4dh�����{�q��ۑڭ��u:�"�|��o�o4����í/^�2��L������Z�v;�f3jkk�:�`0`llo������_�f��������f�%'b�`09��---\YYY��͛����n����7ߌ��1����.���L�<ߝ��A099����#�Ν�1ƒ�YSSc;���u�֡���@����v����񎎎����k�-���o��O~�UT"wQrS��b!��rnhhh%�|�۟x�
D���0�ۉ�=��4��'�W�ȥYY��t���]/�С�Sڑ~�v�x�v�������Vݎ�ۑt�A�S��OU�SM-����B�S�Tu?�LY��~�:����81ە(�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/hidpi/lock-open.png000060400000002461152455705240026335 0ustar00�PNG


IHDR  szz��IDATXÝVMlW����l��?`��5(���E�U�TZ)%U��ks��C��*�*R�@��^{@9JQ��8 ��R%�����7=x�l���f$�֞��f�}��m�MP�s2���� � �W���PZCk	LdD)�R��)�ZCi
PB��(��5p��`�)��\&*C����ţG��OBϞ={���p�[�����*��� "B >:���ӫWL�v\)�e�#�a\ت��X����	̨�„���b�/�]����8+0�`��Ю�=����]�MM���ۇ�mC
�wh#�?_��m��hh"�a�0M�	!%��5L���.ә3��L�XB���(khxd�Iة(�otl�����p������ҥ�����Y)0*�F��7򕥥��W��vݷ��5j�&ڮ�VCei�?�4g���ö�c�~����80f$l;)?�L�;A�N�����n;�E���R�{C¶����ĉ�>����JAH���x�PF��P��t���Lk��e��v&��?��~cX=1p	ᖻ��Q
��U����f�
�u��B:���[d`��zv"��P�&��&��&@)�00b�o�H���e!�����@�Xf`�-)a%x�0Pk�P��Po���c
G�D6�F����cG.�����D"è���r]��m<y�ty}ee~�Ν{����Jnc�<*-)161��ɓ��0B��jzz�H	SJL��?�,)')���[�̘8t�fH!È ������}'Ȑ�p�u!�ͻ�-������8��x����
�/�~o<��pD�dއw<��o�� �řÁ��=��2���|E�����Ç7�J�EHf�s��O_1{�%PJE`���@�|0=�Y�{w[[���L��9|899&{g���U�tD��"*��J���닚y=7 f��$�34�o��?;�� |���IB���F2��C*5��S)$��9�5(d��p�@k(�B�����W���ml,@<��+��W�wW�-��N� �0�#R�g�i�Ai��hz�$u�#lu|z�
2-?E�"���-ػ�Я�����X][[(�?�M�A�ŋ����g���˅%��a�TZn�|9�t�m���5^W��ZZ�7j��}��4����e$���f�v��*=t����̏�.b�M�S�HIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/hidpi/close.png000060400000002367152455705240025560 0ustar00�PNG


IHDR  D����PLTEԨ�ը�թ�֪�ת�ث�٫�٬�ڬ�ڭ�ۭ�ܮ�ݯ�ᲲⲲ㳳䳳䴴嵵浵絵綶鷷鸸빹칹�������������������������������������������	/99

RSS199&&+335;;9??<AA=BBBGGLNNPUUQUUVWWQVVTYYV\\?BB@CCAEEBDDEGGGGGGIIGJJHHHHIIJJJJLLKKKKLLLMMMMMMNNNOOOOOOPPPPPQQQRRRRSSSSSTTTTUUUUUVVVXXXXYYYYYY[[ZZZZ[[[[[\\\\^^]]]^^^____``````aabbbbccbddcccddddffgggghhjjjkmmlll��.��tRNS&*2789:;<=GGGGHIJL���������������������������������������������������������������������������������������������Z��IDAT8�Փ�OQ����n?a�_����b���	��&&���M��Җnww���K)<��ܜ;��IΙK�T!?�}p}/
�)��@Y����]IyDD�JXu�+Y���Yͦ��G�R���R�����ө�
r���=z$�2��j��1'q��W��ų�E�x��Z��S�ǩ�S(��N��x����}Tv�e8M����tb.ӠZ�~�������8m�����ラT���$�;���1�!f^?�Lupr6Y�{'�4c4���(��~]�680�HX\&8��̝nf�1�A���x2�Ue�*˷"*ܲ��Q��[�/^��6�V�����7��}�&Vs���w_+C��
�v���l����h@h��g����j&r5�I���i��:�J�whFױ,+e&�8�j�
�:�`�}4��#:�j=���].nCf����)��w~u�7�^�]]�X�;^��2��j)YN�|i+a��,&Kw��E?�8��yd�5V���H�����RS{_�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/hidpi/index.html000060400000000054152455705240025731 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/hidpi/lock.png000060400000002423152455705240025374 0ustar00�PNG


IHDR  D���
PLTEԨ�ը�թ�֩�ת�ث�٫�ڬ�۬�ۭ�ܭ�ݮ�߰�ᱱᲲⱱ䴴洴浵캺�������������������������������������������������������������������  ""##HMMJNN/::9EEV\\[aaADDGJJ(())**!--#..$//&22'33)44+77,88/;;0<<2==7BB9>>9DD<GG=??=@@>AA>II?JJ@BB@HHACCCEECKKDDDDEEDFFEEEEGGGGGGHHGIIGJJHHHHIIHJJHQQJJJJKKJLLKKKKMMKNNLLLLNNMMMMOOMQQNNNNQQOOOOPPPRRPSSPTTQQQQRRRRRRSSRTTSSSSUUTUUTVVUUUUVVVVVWYYXZZX]]Z\\]^^^``_dd````ffacccddceecffddddeedggeffeggfffgggghhgiihiiikkilljmm�n��tRNS#4<Wf}}�����������������������������������������������������������������������������������������������������������������( 
IDAT8�m��n�@���]��i*Q����8 ��y*�\�C�����=D��4u����M���O3��X��wN�gk
AR��~+xw[�Ŵ7z:��V��p�����{����kr���d���w#��8��,j�m7<�?��ZgEԾ��B#�YX?�f*n"��L�i�6n)�2>�=��Cd��uz�%q[���2��ٲN�o��B/����Y0�0]z�z�.*�*��'�$tm�Y^G\�:�z5C�gTe�~~��;X�w�`��_�uld�����	�����fS����y�����b0V��/�}ꯄM�tD��}*��Gߺ�$�}8h y�#]��m��`�I�]�4�*�y��!�TmD�H��MQ� P�l,bi#e���f4nY����DR�����1���(E�(V�"Z �S�4�ma�u#e�f*��rD>�Zⲳ`ZL�{l�Y�n�\-�Y
�}�(`����Fv&U��B IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/hidpi/refresh.png000060400000003462152455705240026106 0ustar00�PNG


IHDR  szz��IDATXåWYOUW݌W�\�p#ے��
2��$2(�hml�֤M��t�5i��CS�g��Zg���E���=]ksA�z���˹眽�����G\X�F���B�׭�6lW6n�qm_�^��];�3Ļ���[��G����G�����]�ĥ���x'�i�C(�o�k��v����{��A��r���M��#1+1Q:�L⿿v挸�w�zюK��Rx����7v�ډ
�+W��s���t�IZ{���[v\b_16����͛��={��C����"�ӧ��ե|�b�\�|��_�H��8��}q�ΝS{l�x�bZKi����vtP�d2$buruMkhh�.����r�ҥrV\�..�x�\̔6c�1#�4jmmT:�d/h�� ���� �EC/^,kjj�,X�@.Y�D�̙#]=<z�'];^<jnW�lyİ�;���̈fdC>���{+���
˖)K�h�kkk�y���\�����ߋ�c��!8;���T�H3"���QQ�0RLE�a���UWW˪�*YYY9 �W@��d5q3�'��f�9i�-��_<{���|(��J<
* s������C��
�KJ�Q��S�ă�&q�<����;|X�(/��:XL*�t�L�����[�Mf��G��o]`h�	����+t!�����8ˢ;&n��)� �l!S����Vh���SeXVR^.?�1c�2��Pv5(�]8;G�Z��B���I��?c���yn��4dY}�_V'O���>��a�P\���Y,�h.�'Xsc�vU���m�����<���0�ʴ�'�y�X�a���1Ge?�_΁T^�k�$&6�-��j��j�]�饸�22��A)�q&��-�\Щ��鹾JKKKU���ph0-"��6@O��Ww+*g!��Ab����z�O��U\R"g#����GQQ'XrY�R�{��pwwf\<ٿ_�D0f^����f��P���.�z�PN�f�/�24�
F4�S�?�����1#0)��g����Ae~х��"T<@=�J��Gc�ެ�t_���-@CV
��i��L�_Aa�,���
7��5��D�7`�X�:���;"�Vi����DG˩�%��` �눙3/g��ʼ�|%H�V6�;oh��[/ף� �F,�GF���RO��Jhd}�=a�Y992L&�v+�֨e(W=F������CX�<��U̲���JJ�`J��|�	�d� 

�h_ߋ*�`�]D}�>j��^2�70��ؗ��<'"j��X��=x�G'$���Ζ9B2�����[#ލ�@"�cR}
MJ�qX�/��9�����q?��y��,`���,���::V�''ˌ�LI dbf7/�kx����K��G2(�
uƳ"�ѣ{b1	q}@sBJ�Ğ(��v[ͨU/,�lǠ2 $dK*jB&A�0R���%$D�<=�R��o�����8���/-#C�[,��:�;\Ox-��#V4�"2&�'%-M��@�u6H1-�>c��KHP�\�)���hN�>�'mՑa�v\!���/�Ae���2`�!�7�%#�c����ࣨG�J�홐�@��_O������J�Ϝ���$ �J�2^��LdDTT7��p-��]�:(�TL�
��Ѫ��KpX�)kl��8(�YPXX����*���j4&ք��7�V�'L!�1�,?6�s�|��X���X��Y�V_F�'8�s��j(�}�Ж;¯�;��h��aIEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/lock-open.png000060400000000535152455705240025240 0ustar00�PNG


IHDR��7�$IDAT(�]��.���͡�D���^q�
iI�X�xOӧq�#x�V�Jl"q(��C�Y��|23"F�I�ңG�.	�>iw�p��Θ�A�+�7d�R��$x��8fq�z�CUR�>_������/���+od| L��'!����s��*�B)Ch�'"�!)�t�eO��j�K/]V��`˚g�۴i�sO����Vl�ٚ
6[�
+��A�C�)�u-�AѲG6�i̴Y������sn���#�2����+���+.I{@
�<��Q"�<s����s�/IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/arrow.png000060400000000277152455705240024506 0ustar00�PNG


IHDR�gr�*PLTE999���999999999999999999999999999999999�}U�
tRNS	*-cf����G�7IDAT�c�4b��
�w����Aw������ vL2`���}���� f�b�JUW��Q�IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/index.html000060400000000054152455705240024634 0ustar00<html><body bgcolor="#FFFFFF"></body></html>extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/lock.png000060400000000733152455705240024301 0ustar00�PNG


IHDR(-S�PLTE�������������������������������������������������


---'''   """''')))***///777===>>>AAABBBEEEGGGIIILLLMMMNNNPPPQQQRRRTTTVVVWWWXXXYYYZZZ��A tRNSHgg������j���IDAT�1r�0E��h��'�Թ��R�e�#�"~v
��8�J�Vz\�(�h�^�/`m��m��6N���� ���xo܅�;�{��Q����nV���03I���_f��!��忣�d& �y� eZdd� �Y�>�Ȝ�:dnm�Թd�V �4U�Q,IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/close.png000060400000000724152455705240024456 0ustar00�PNG


IHDR(-S�PLTE���������������������������������������������������������'''   '''SSS===DDDOOOXXXYYY[[[BBBKKKQQQUUU\\\ccceeeUz�0tRNSWX[^_bbeg����������������o���IDAT]�Qr�0@�'�@\��glBgZ��R��� ��@� ��=��̂��=��uџ:Pt��QD�|���e"����|��=Ү2k]�Wۯ4@��u<_{�@�=������orJ�4�n���c���aR�e�w�ΡF;Ði���;��Q�]$�F��D�Zd�'��f�����IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/images/refresh.png000060400000000646152455705240025012 0ustar00�PNG


IHDR��7�mIDAT��KU�cf����iT��!IjCB�T!9D���?�HS��N�-�-��r}~D��45�u�B�P(�*u{"jJ��B�P�,�'����

�ʲ���=_�Ɔ��B�.B��޷O��x4�ƪ�Ҳ�n����g8���D:c��y*M���<����wL�I�o���%�i�����8Cߝ������m,�?E��S3:b�o�Jv���0dž�+*�qt(�1ukvE�5�Ş�E_�N��mkv��}�1K��gn��K��f�^n�����+#��6呗�s�2�#�����/�΅�̹��F�>h�e%��
����ٟ�{͞/D��J5
�CKDӲJ���X�$av̡IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/editor_gecko.css000060400000107116152455705240024551 0ustar00.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_bottom{padding-bottom:3px}.cke_combo_text{margin-bottom:-1px;margin-top:1px}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__sourcedialog_icon, .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/dialog.css000060400000036654152455705240023362 0ustar00.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/dialog_opera.css000060400000036742152455705240024546 0ustar00.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_browser_gecko19 .cke_dialog_body{position:relative}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:0 0;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:3px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 12px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:20px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:2px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:24px;line-height:24px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:2px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_dialog_footer{display:block;height:38px}.cke_ltr .cke_dialog_footer>*{float:right}.cke_rtl .cke_dialog_footer>*{float:left}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/icons_hidpi2.png000060400000076154152455705240024470 0ustar00�PNG


IHDR �^% K IDATx��y|ř������ƺ/K�$˲uX��K�l��d	d�@v��w�]�ew	!�c�
$��cɆ ��`����eK�.�{���~t�x��K��f��z�˞QW�g�������)@�S�dp��9�����fp�f���Z�����"|�X(��)��K��#���}
�"cc�1�@0hu�\������`hx{���Ox����"�~?h(Q�c�R��0�@[R�N�����8�۷� s�F/
A�y�r�~�###�|`�A��b��f��h4B�ӡ��	��������
�c@E1R8�����l޼�:�k��v���˪��+�f3A��d¢��?���w��$��S�2�p�3� �"���E���(Z�n]���;�r� (��C!L�:��坑��E"c��s	!�@)�[8BD��;L)��P^��c@�0Ơ7�@B�@�&��[��Ɯp�@ ���>���]�8V�E鴼�����ǁ�y��\�|{�,Y"$�;�N�� ��a��|[�s�v��аh�Bp�P0�ۍ��>\	�����f������F���bAqQl6� @�y�B!���><�k�����{�H)�<
B0�� ����F���A�.�H�}FM�X.��y�</e�����ɳgI	�dyk2(ִ���D���K�.�㎽���]���]n����ٳ���8�V���"477Cg0��x���Q�E@nA�?0�����)�Z�r�����rss�C�ԩ
�]G�b|��/C�_�1���QǷ��kӦM�zx��FC�Gmuu��Q׀H)u'5B~� �^�4�Ji
w\�/\
`k�5@H�H(2����T��K�.��ܼ<^/�UJ�Y����јB/YVYYY��j#W���~�iSH���JAd��b���� @r@i5���%%��ͅ(�(���Egg��k��HW@,F�����p��5
L&&9�(.*�� ����w}�K�|<jL��'��̚��@�yL����󡿿������#�����+=��#" 
�ш� ~\9��G��=�,�dyg$��c �e�@���^�sό3<�?���j�����Q`�Y��j1C��� �G	!�N�&5�0|�0��!� ��� o�Q�uC/��(�7�xL�&]{�m���o��7&1��I��P��կ�@��
@����Ο=�]�y�P�d3(
���080�?n�\�*��k��yf����������^@��|>

��񠧯Ϸf��'k�{@{����ޯ|�l6�A���È��ۛ6�u���O�Y��3����G?�q�l�� �z����>�.�%U~Y7!$�:���Ϭ__H���-�u��$�x���;�e���Ν��j#ְ�==G�g��X̫��Ї�w�`9��g|x�,���y>�_���$���).^L!b?�x<����vB�zG��H�N;��z������=�+۬FW<?�������A���C�Kn��Z�� @Ex�^�r�mYۅF%�2i�RQn������$��3h�����v�(��I�R\<�N�"�Q	h*.,���7�`ť��1����E!������n&��"��aZ��8?��G%����������1�L���B~�әLC%yTv�k4�Bȣ�9�g+ �9$+�._n�k��}؇D��n�-^l���xǎ��
H[�I��	� |��<�~?<|~?����_vf+ ݃C���8j��#>�0ѾA�v��؏	!��VDJcX��0ޅ�Ȣp�˺	TTTTTTTTTTT��[,Zx���
@�JE��@���`'$s��H1�>[w�����TQRR�����ш�# ��󡯯����pA�;(Τ�F��6͜��Y�`1�9*�\�
9��N����q��i4�B�3?��
�d'E2�.hlm}hq{;'�<��"3�‡(��8Z�:�:���4��An��ֺ�1	���Y�����r�`2�P]]-6L��ښttt��ٳ����?	/]J�yZs�,��D�d����Ǭٳ��?�`�In�…���+�p��䓜 �MJ�>�\w㍗r�V0Y���~��sB^n�ǐz�'�Vה@��^	`�<9���R%�Հ]�р
�4���F|�{�;��O�O�H����4�8��2���1�V�P
0���?���O!��� ��!/B�B\��H����o����r��p@��H�H9N<w�x��{{x��cH�����@gO��36��
a0�I�98��F�C</\����A��bo�p��y�SP�I�����7o^��3�p&imI�C5
B</vvu����8��!�;O��JI���E}��Y������7�q�A�|��^�w\$�
g�'�z�D�N'j�Z.<����"�z=�F#�f3L&t:�Zm�|c.
�#.744$�|>�O�^6'&`��!�g�Hұ�y��^��;8��������`0�9�N�?�!��"5� �yHI&أ�>����o�[��tB�Ӂ1�P(�ǃ�n��"�ܪ( d�\;�!
<�y��isrr"��z��Ž�v).'��X�eJ �B^#�|�r���M��E;4J+*��i���3�Nx��d�B|���G��V+u�����rN�H{7�RU�U��sCCC7�>{��K==}N��qH�cs��L�Ԑ�����A������bP^}�(<����fVQP���11
�~��`~�� �j��a��b�p`�O��V��G۶�F�~T5088�!h�@��qZ���Y,p�l�|iB8*���e~.�=/�#GH�	E�
x��G�?���g�.h4��f�ziE�F�q��!\�f��^}U(�4��Ǔ�ɽ�����x��׹��N�q����x�"�V+���QXX(����|E,/+��х�����I%�.����~�����$]�q
D	�B�;��dH/$%��b^����UTTTTTTTTTTT��H�`l�e�=�hܐ�I#�p�4/�mZ�-,���`xúu�N�>���mێPh
�x��Sc2m^���RUU��==x��6X���x�2sf��`@(DuUnX�f��dڄ����5�7����2�~X-�M�\�,I0H������z�`��p��W����r8�6�浫V���F�|>x<����O�
P2T�Nol<_����p8`0����v���-{9��/[�b2#N���!x|�]��U@�2V������`aaakNN�z=t:<Rx'X�ֈ9F^Q�k߾}�<D���
0x������EEE��Z�6b�
!GFF�r�v�ٳg6�?�5�J���l9r�H�t/���1fØ
W'����V�$�#gϞ5��hO*@a&�T����i4���d���p� ��BF=&3R95��%��-f�9��TvBj4��cbhx�w�P�5`,�P�J�Z�Y*�hD����W����l����r��R�
��W���ϟ�b2"�ڥK�022��Ν;�v���400�wpp�`<��f�b�����_T>o�I�7�'śj�⪪�tZ-�@�:����<y����;}���������\�wd0�X��gOxf�6��9����`�Za��q���WW���������]��8�\.������ӳ��3�x�…KJJJ����V�͆� ��bd�cLT���)SD�Œpg��el_���i4��/���ɦ�W��1#clc,x�g?��N��0��v��ض�s�Q�z]QYI�LI�Rg��K�l��?/,"��Q�(����zꬨH)`c���Y�ط�
�񏌱�8]��q�$�0c-//�N��:�p8��n���������5KE�)T/8�\�іc[m�&�t������e�@)r���JJ"�M�>��54�jw8bBIQ��u�'���(���)|ބ�D�����������ʧŨ���K�����l6�b�a�ѣ�ٹsb�@���c��ի���B�g9M\
$�
B�r�	{1!��J��d.�SՀ)�f�;�����Zx�n��ވ����.�O�`\<&���^�x1M�r>/���7�[�"{L��m�fd�1���k����D�\�h\���	�����bž>/~�1�mhhy��D�?n2�Q^ZZz��k�
��l��6�Y���b6#��cph�I�^�<s�
КLknwqQQ�
Q(������;
��	�D��RBV�W�o��}���{)��999���d2a�UW��^����F{L�pM
HV��D����d|<&��1�z���������a�ɖӧO7�������C ��`���g+`\=&�򘌚�򘌚q�Z��xLTTTTTTTTTTT�א�D���\Hi�i���h4�0C
���P��ImN'�m%���v��ͥ��\j��)������o��v�:�0�	N����_��_>mn��:鵛�Ï~�ä�������h��h�n��/O�&r�"�N����1���-h����+ ��v���cj("�
Fҧ9?���f˲��K_�R
*� r
�45���~1����E���"��3k�p�4A�|��qj���	�ے���9ܛ ���x5A�SQ��u*�˻�B��S;3�D�&�0|���s=*�g4H��H���i��@`X���ʻ�BySM�F��	o;.�<|>
����	�
`���R�ړ�o�X�"�I�n7��7G�� xL��ZmC��+JKk�,@��n|�_M"0��F��� ȮQQZVvg������Շ7�
6J1G'�O��t���'�"�O���h�n!���<ZU[��|<�ǃ�˗�t��LB��[cK�<��8/7'G
���cdd.\����hD�Á�ɓ#�c�ǃs�ϻ.ttB�������}�Ѻꊊ���������͘�Ѐ�`8aG���A__�p�W�rIv�θ�Zx����S�0Q�
���"y7y�ۉS�Os9G�ɩ��e*��;�>ܶm�K/��:t�w��9����1�L���ROcc����n���>7[Nz/!�2)#N�؋��ı�e����
-�������!Ū��h�Ѥ�4��Mđ�*pL�M��P,<gpG$r|�0�1�(�L�Q�4F���&r}��������������
���RH֏svx@_��|�BuN�����R"^@8����m().Ƥ�<�����v��/x-M�m�j5{֬���"Lr:144���^�ڳ�B�/@
/� �nu:�}�*mVkdKB�Z-B����|3�}����^`�4��__`�� �dY���x�x�����fB�m�j��
��U�F��~������0���W�A�S)~�#�ٰ��d0���!F���^�o��	�?�	"���V�z�gRSJ#3��� DA��k׶!�����iH���,���%�#o�u555!����ۉ���9�H�V8���� 
E����1����!6�Gj`pdd?��1���ܔR��ɯ�����PT�?Jy��Ax=䖕
�4��;���B`�ȅ�π�y�\.@2<����g�?�����B���^�P#�>~��ї�����
�"������+�B,��;w~���B��\.�y�Pؖ�?00NS��?��֙����󡧷�s�\\(���/�"�;����W������k�ߏ��~\�x��B�P$} DiII'��P���3Ƃ[�ne�^{-۰a����U�(��cO��m�&�f����٪U��
�u�����͛_�O���_4>��[��C�z{{}�/\8���G�!�F�}��WOٓ����;x������x��W*4Z�H)���}�//+{��I�/*=!���~�V����=����>��j����J��q�����nH���N��5


9L�v������o;/:}r;!!�����y��w���L��p�n7:;;�76n��V&�k�Ms�\��Ι3����<�;�������%K�Һ�:���=w�1�QF)u���,��MM4''����L�r�(�����肅��ɓ�yd(��ߙ��H�+*�y�_1Ƽ���L��2������)SFΞ;�3�.2�FN%�b�ɡV�mc�#��9�_�A�zz���Cr�7c�$�,�W|�I�xy@�Ɯ�uO�=x�<ݟ.A���I��~i����Fৌ�9�ܐ"���&����������M�J��d���RNB$����Y��V"�n��_��d�����WA�^���nǮ={�d�>�UDD����|�.��7�H��~�)�n �੣G�$""�� 1�H���6�l���ID��9��@q�K����;�xLd⫯r"c�9vlT""�(�= ��;cw�y�c����s��;N��ZDD@��ID�u睏i4����~��ߟ��ȋ'�t�eEx�ߎ�Ǐ���4�yI���h�1�9y�1�sV�#�Ö�ъ�t�����
���NNʙr�+!���?f" �&X�r%r�Fx�n�|>���Q�Ή�����'2�*2��B�%�}�a�_�ܯ����砂�`�ٳ)E\��
�Ƞ�����C�~��́�;ϜI*��@�n�(�Iy2)���D���_��c��`׹s�"���6�0f�K��w���_��{�bGG���QxEDDy�@���/�}7�r�=�RY�&Mz0����ˤW�
6"p4�5�n��044��S�&���/�P�k �r�
���d,����n\���Z��ա����˛�����hD�Sl�H���#�Y�"�U�9�RRHs}����$2j&��fY^���8>�h���g,`�0]�O]@ƏPl��0��g�D�4XSa��/匛@�y��f jt�=�a���ϼV�F�0��I�*�I�{܈�1���pyl�0\`��l�f�ī��������	��@����_��T��/P���@����_��?u��@����L��,RG�OG%�͐B�dͦ��]G
6���tU����7�z+�^Ÿӥ�6{v}]M
>w��3���|&ib�h����7�(*(@���N��(��|^/�f3�_�f5���(�_nX�v��b���N�K��V@qq�������s��[�l#x�̶�����! 9�"7������z��<B� f���bʔg�K������sg�B(D���Q^^��n�V�c���ݽ����]���r�r�=/�H�d�)�9��^{�5F^��K����<�L�M����.�+�
֯][��X^Els=1^^�vm	�w~Gpv���������o�{����'"�}4�֮mњL�E��̺ի�i��H,�P(���!l|�<�d-�����n�}���P$�
�f�`���7h�Ƈ��|s�e�w�������f�S��yJ)A�!�KX�xq��`hp��@��B�� ��ȑ#�b�̙\X� p�ݸ��y��'��XLI�j:����l�>}����i�ۡ�j����…{�^����=r�!�I�|3�!��'��;;;��^o��pؠp� �ߏ����7ntؘ���"�U�{��!ahh�%B$�Ot
�\���/�pfJe���S�9���_�r�����T8�SB�%�?1}ڴ7ʝx�B��v��'N�h�dtt)9��B�K�D���[˒¢��jij��q���Q�8�CNND�k����
 �&��
��)(�X^� IDAT������<<n7zzz����w���:<X�q���PR\���kxx+��dfco+1��/�Z���R��!�9s�s��o�Moh�
�ϟ?2�|keeeY��	����?�pp���Z$�L�'���,���ic������agg�].�g�������ʳZ�;<n7(�c�ܹ��D�w�	`Q�5PB�=�3f8l�H�<�<����z�

�$�l�X������999��ؠ���p��q��������/.0�GȇO��g����y������y�z�m�Y�n}�p ���L�!�؇�����g�yfWSc���93g����1թ�>����.^���_u�,����=����ŋ)�o*�-�6}:]�`]�|yL����5{6]v��RƤ5P��p �_~X)����ZXPP�8iK�f����������st����
���%�IcR����_A֬];H�*!�O��'o���tz}�����8���;���qXx�U�Ӯ\��&������d�g�ͮ�2壦�fZ][�C�X����h�0{�ZZ^�?��S��+
KJ�577��)S����CF��k��9���l�%���`e��5���O�S��i~a!�\YIg46���R������B���Y������Hk�N�y������665�¢"���}��}I��������f�-,,�N�ӟ��sx���a��cuIҾ��jnn��p8�i^^���p8q��n9�Ve:E����N|I�S�R�-cR$/���1vG�£2�a�=%�+��T���$i�2*\EEEEEEEE%
�_��T��/P���@R��.��T��/P���@����_���������hҾh��6��!�^���>3�,[F緶��[w*2�����w���;ًI�����EtF}=�z9��sx�^nF}=iU�Q�\��RܜM�������V���?�B�ږzU[4'�b�JzB�q( ~�kN�߯a�qs��y�v���A�	 �`�T�~榛
���z��<().�<.�z��c�^���+).��[o���?s�MM[�S�^�Q]]��K/�f6G��~�o���x�=�Z ٺc��[�?��#�W��}>|榛p�̙���Nj���log�.dL�T/��$*]cl�������	M`4� �7��Q�9�a\��G���p"9�����dJ��	�N�Mu0�{B���N���B�,\��B�D�F\Ɇi�����m$�d�N���X$I֮'tB�>�I;�
�SFh�?�"6}$�@�҄��G._�f�Z��"�'�����`2�z۶����+
H��Q�����t�ꫣ�3�U�hussۙ�( ]��Պ�{4eF�nX��]�Y׀��LcRh@�K��U �bL{�67c��]��v<���r�K�r��L@�N��b�t8��Jzv"�g�����Yw±�����׀(ƌ�ΩS�g�C��\.?~9��2;�l�V������t��b
R�
��)�'�Ԃ�|���`�E��/�A��TM0��
[�z��Q|����(�iSi)�h5���a������[T�?Sʿ�k�ilre%���_P2u*-��u|���Z2uj$�Ro{�ؑ#�?���n�����n�R��#g}�µ������dO�ڜ�=յ�R
g}T��2mNΞH~�!���f�`	�&��ݳ_�җ�w�"�R���&��A����o���)S2J��ыپ#(~w�*Q�/�Cf����5��eZ��@T��/P�	���_����/P���@����_��T��/H���/PQQQQQQ��B�y���0H��q)�1� �C�6�ٙ+ቨ���/Ǘ���A@�˅_}u�r�KA�Lp���@���p�l��z�%��8�vc�ƍi��ş_��z5&�l�r\�l`�(�ۍ�jP�#���m���QW�U�W���^��0 ������0��=�#~^�x
E>_���5��DC��jbD[®a���\����ODW��(��D�R�w|ݭ��87z�f\��C��������㓧���������_>V�5��,|n7�R��T1��Xu�'k��`6�`��0��1|���ӦMj�Y�r�(J��b����j�7�����TijV!�NB�.��S�nL0�6f�.�H����S�mil�?x��S'N�/�R�V�<�R�4�S���EW]���ÁE��X����p@�-Fͬ�\q=��t��vGf���ӉK�����_��>@i�D�{�|ww7���0<4���n�{�	��%f>A@�†����W_���G<xd��Wo|�;ߩ���(���is{;�:��y�wdX�<���r��H���OD}��<{~�UUUev�r��d�Dиl��%��

��,��W-_^���180�Μ9`{�1nz��> �0FZ�޾L�q�C!,�;Wo��{Q�R	!1�Č�)����+����;�99�~� ���E�
tf����3$�
�h(��~�}��4&�a7)�S�_R���z<���V���E�fC�f�!fjH�8��v�l��_�3s����׭Z�WVY�B\m�6����rx�����Ç�lƬ����߬�+O�gʳ�h�?���� ���Y�PQVv�������ڕ�.l���cM�6*���~4~-JD�H)��7��g̜y��`@����  �$,_�$�رc/����d4���>�(������J@��hl(*/�����H�`�Ez1!�����i���kB���.`�$�s��^���h!���I�#�1k�A���f�?����H͒ꗅ{s6"D�b�yD��~x�n�������`�6-AA���|���
�0���wg	��oQ����A�s�����������2nl�l|�T��`͛2��hӏ�Ť���E�᦮��P(����h��y,�M�DL���)�>�p�>��b��1���Q��o�Ȇm��ذaP���Ho�I^�/�x�C�M�E�q5����q�2ʰ�x"Q�ن�m��:�o��H�nv�?T��6*���'�N*@���ք*��{y�ذ�n�$�K�'"} ���������ye�a-����ic$!�!b�#�*1.�_l��֭[W7��H3��4A}c��(l�S��"��G�F>
M�2c��|^/��̓��(��Ñr��գ䫀1�P��߿fKK��`�<{�R���!�2ę����y�]]N��a��vd�"ս!҆�mm� �v�[�����1���UU��@����)���-��F	;�f, �q@�FCpk:c��^���_���������&��T
KK���Q�@�oCoo�sgWƌy���|���<A�	�
��܊
�u:?��r�׻�n����~�$�Z>㱶�O΍C>**********Y�%�!F���l��w�sO%��OE���\8l���=6�y�)�{N�r�|�p\|�� �����p@���hJc#N�I�sMc#NE}��,X�(b_H�ѠhG��GJ����!���>���2��AQ��mH���GKR���,�O�Rxa�u�LHld& -
Z[�{�D��hpidgO���!c���#!B�m(U��y<i�����&Kn�n����k8n\�@��7�p��WW_����3�Z����		!;!B��2d0��im��l��d��� �����ׇ�i31���iӔ���!D�.�ϜA��X
Mb�X�***Z��^�ۛ6m"���G9D'PL�WT$<tH��L%�2��ϐ-�~åJ'�6�n!��/ęh'r�5�{	!1K��O���&j| rۏx��xQ1�!_P�>�U3a�@24�ɮ/i��@�-/3�@��\�����N��
#��y���c='���8@4�x<�\����=PQ�t�xA�g��?�|�|�������E+W�����C�m����]ƚ�X�o����@]_��/P�|*�.�)�/�ԧ�� ��x~)�P��s��$P��yp�n-��z}A\'TOf��aݺuu��#�ǘ�(��H>�,�&�	×.A�Ѡ��;�G�#�ϼ�8��^)���*��s�8m8���2Q̨����==-��3E�p\Ɓ�N��^���0.�2���w�q ����>�����D]_��/PQQQQQQQQ�?�a��Z�yS��/X0�MF�bR\T���ұ�?z�#
M��^�P��0����"}'��Qx��h�?��DB�]@�ł8C��g�GQ���6"J�1v�-r��$G��HnU�g8�TM?	5'�� Gs+����9v>!c1�7!-HnS����tBfVg�_�D@�mjS	�q��c����LmD��V�Q��Z��p@���W]/��Y����Uf#m���W����'���ZZ �B�|	q�D�p�СȹJ��t� �Zt>�v�^y�_��J�ɤ=u�R^�S�	�<��׭�����>uj IˆE�
¸�/��1��;��l�š�`}[[t��$}n�������Y��y�Fa�Ŀ�R�,ƒ4�Ā�N8^�@ƌ�O&�P��*}�0.�@6(������!���q���+�T>���ƶ �y q�Ѹ?ē�E�N�XP�TYy��B����X3�e8�U׀��@EEEEEEEEy��h��`1���kPX�N����
��Z�.w[rr�++*PZR�I�&�ҥK�xG���[��#.�!�n+f��%��>�A0�w���I�F�ܭ�Xnhij��hh��f�6j�����F����������?�7�H�O/��,`�-��<��w���',��0a&z}k�����:L�2���!�2Z�7�#��1���������k)����w&�X,X�h/Zd���]$�"�Z-

@�}��N}�ޒ��}�ܶ6l��|}v�J)B<�8�ä���.~�@ f��t��1i���D�*�q�}��F0Z�4ƪ�F� @�׍���hG��/&�4�pT"��qv�b�훕��H�	3�`& ��R:�i�������c����#��^��	��
Ҍn�
�������]� @h�2Q*�#��m,�A1DQ�F��N��V���XcV���	<�&4�H�N;2&����<��n7��F㩅�mmm�7�|S8z��l6ט�Vm�P��6\N���y�������O.+˳X,�h4�����z144���9��OZg͚U@�ץ��3���R�}���̡��ݻ�oDz��Lmm�yA�-��jA)�����੻�{��~��2�����i���B�55{{N��
�fϦp��5�e����g˺�?���O?�g���cC�2~��0Ɩ)f$���;��2s&�2sfj�"c�)gNY,�1��1�׌��i������Ÿ���iussD@ʡ�1fP/���/PȖ��&
gT~"����W>ƅ�#�D?�]qi��&�O��7q�����.2��B����-�Y��YEEEEEEE%+T�u��e���>�V\*	����,����N-+).�����q�yx���x�ϑ���W�Wb'�����=/�[6lКL&PA�ĝ�p8�n���������Y�V����n������>޲E���bT唕=��5k���c�$�N�Ŝ�V̝3G{��雎�8q�َ�������mZ]�qN[��H����hs��c�+��yǡ��UUU`��{���	���PTX�ļ�(�	�k��!�F٢N\�MB!B��pD\�`�("7Y��	���|{*b,l��H* >�C�)}�Z@����Ӥ��hAi�U���i���HY��D��^��?�*�b�0�*;�¶�x�@���ES��2����#"����q��F��q�8�ޑ�� �T��HT
�<��
��#�|�SӦM���k��v��m۶�5N���f��h4B�Ӂ�c��ń�\����l�M{

��{��'��&9���s���/��ڳgϑ������ݔ��k�X,��t��]�^���?z��c�]�$0^@�=�hʔ.�:�
�!�|P��<H1�������>�g0jL&��h �^���j?<y�d�j�����Q�$c�U1�t�2ټ�2�m߾}��O?����0�������`�g�=��&M+$G�%�I�k�Ƙ3:MB5���G�,�R�pL6�Ǡx��cck���^M�'�+.�S��x{��������/PQQQQQQQQQQ�����B��u�?�8�K�����M4%�h��:u��|�Fh5�������>����O�q�tx=��٫&P�@ ���~?~|(�����hL�w�[��.[��멧�z�16’�a�:����lm�6l�7HE�}ꩧ^Y�lY�uk�R���N��c����}����{��FQ�̚5k�|)�O?�x�t�.]j5���6n��/��S�~�^���u��>���Dٛ,v�V������V�E�8�{�x�`]�n��^��j���������?��g!��ۖ͝�p��v#
%�/&�$؇�z=l6�GF�k��]����8����LwwO�ٳ�1��gϦM3gR��mPYWG�-_NO�>�'E������{�-_N+��,����3i�l�L4:��ܾN'Bc�=
��y8����N]�4�B�`��n�Tc��?B)Ŵi�ZR�c��6mZ���H�iv;B�`�����p��H���[�O?RYY�m��h4�X,p:��X,�׋��Ax���0�8w��Çł�X�q�ù���Olj�3�:��.����ڷ����X���X��655�cl'�����:g��ODv��4���/��׷ryy�}�7lx���2�@.�.��@ �i�_�k������ߺ�����c�Ҳ�}i�˕������������WTT�Ҳ�}L�ܥ(�1�c���'vWWW�6�L]9994�p8�h4�[n��p��r�-��F�p8h��&�����z�O�xb7�|�(.(�Ed��#S�a���j���x�1v1U�Q�qQ�K��UTTTTTTTTTTTTTTT�p>5�V��Ժ�%��\M����CG���ѣ?��i���А�_�cph�O��AH�/X�z5]�ti��O?��_p�
7Ж�3i�̙�nH�/x��_Y�tiתիS�����g�O�֭[�V�^�/ظqcZ��E��&����7�T��t�Z-֯_��8���������֯_�E��:]�� �������hǶm��9s�rrr"����,�_=Ӟ����a�޽;�/h�?���ŋ=������tFKK�_PQSC�,[6f���Ki��)AeM
����hG�@o0@���� 7/� �����	ڲ�_����+rN�\�rss����	i�6mZ�x������8l���r��Y�����!݌�vQ��w�� �4Ο�Q�����o�o����̘�����d��lF0��߷o%�H<��BƼ�YRZ�Y�Ѵ���m߾m[�<��.Ƙ�S	�����Ϝ=��16����UN��+kjnc��;�Y���Qo0�nO�G�ث�'�i�f�wݰ~�2�����c��}�������|3�u:�9���"��pMm-���i�ԩ�_)	��_��������;-u��G�/_N���zjw8����~�z��n�:�h�"�6oަ�.�Y�7����']�� IDAT?�]]]��b�t9�N�}��R��AM�D�{�16T^Qqt���tݺu�������z�ڵt���ta{�r�|=���	(��h���N9ŤE�����马����l���AaQ��q�w�}��|wx����MY�nГB�	!��t��.�s�N�*r��A���#��J�'�Xa�9k��ϟ4i�#j�幎q��5���~��{�w������ɓ\f�ٮ����=�����E'ϩݏU���W9y2����۷O<w��	�ǃ��6�YP��
�Xf�)�����,�3i�ܹ��>��/(8:k�,�l�rj��
XN8^5�[�ш::`���ܱ#��8���[t����;:�c�85N�J0��O?�����}�����[M3)��>�����2�no7���"�G�=,�1�c
�����c��'b3c�i�WQQQQQQQQQ���Md�[o�x3I^��d)�_�t���V,]�#����ĥ��������%��Ů��7���*��58}r�1�	�5�~����_�{��z9�h�Z�(��?����}򸯼�hhX$�<|>�� �� |>�GECâ��#M [.�]��p~�Á@ 3}��}�8�����m��RG�!D.y׎	v��t����,h�R�� ��‘��~�N��o.��u�ƢMM���"��,�}>�{z<�,�?"V�o?t�Rz�رcǎ��;t��[�L��
��ka�)�%�y&�)�(�����O�n`rM
2�Dt�R�7V�����vgn.`ph���
y<	w�q	<�b�R�A��8:�
�b�R���_qw�qo/.^$��!c�/r]�s���

B� �^y�C(��`H� �r���0�eC������w���1w�a������)�>�g��"{N�����j�J��<.tuy\��W�n����c�8|����8�V���PEEEEEEEEEE%+2�p`��%�@V������ų����ϐ�v����$4A����ZVdk���gH���������_�p��Y���
���c�3(	���?֑0A@�����  [{���
���c�3$���?!wC�ޯ�
UTTTTTTTTTT>m��gy$�Y	�D��L�
�-\x������mۀ�m��p��7�j��;��<z���L�������Fif��c�h���Zaj]:�����ϨT�\^/t
Lx=�#�YI-$�� ���b
��:��_��)�)�ǵ�Q���&
���U3�?Ix�+V���I��_†���X
x�
�����*哰u�b�u����N���b��nlj��>�Z�x���L�1C�[��O�eA���m9�T�x�
��1*YS��IY��K}�؋�WԔ��=2�ǃ��.��ڃi�W���™S���j�?o�FB��%���1awC^�0�A��N�%N\
�B�/\��b��c�G�y?�(x\�<�&��Ի����������ʘ��pdj�ڒ����d�u�V�f�a��c+����w�K-���lٺ5!~QR���h�]}�P�������-:m�@Zn�^���LYI!$��}�,)ik�q\drk<���ͪ|�sg�����w�,)i3,[�IZ�İ_�ϒ�V�П���Ȥ���+NFv�$���0;?0>~����鍍��nO��_���R
>�R�!���h4F��:o����Sd;���Agg����B�r?�#��8}�dJ;���^�%��dYP�$x�%����`p����?;�x��P��TTTTTTTT�(���٫V�\��K���(Ż���c�&�G��_��z�F1*����[oi���b�ш<�����(�ॗ^�y��߽��+Λn����/
����~oU�*����m�,yC�eI�W0�a	۰8��|�|I��8�!�0$$yf2d 	H Llx�f3��x�wٖ�޻�����vuw�&������G�����u�:�=�8�v0:-+ HR��1|�P
���@iI���{T���d�SJ@)]���{� ������;�	@���N����8?'�|;�j�����8I�b�SJ#T�L�D�b��Gi'��KV�N�u�<�H��b9_����Ѱ�$A�$�,C�ePJAAޘ1�
7�,����n��ټ1c8-��V����P�A E9@�[,�M�=�	*��M�=a�X�o����r�:!��v��o߾v����� �;����o���eP����喟Zԛ�ZPx<�ڵ�}��}0�vGD�
����%N����]����-����.��vG�,���6��XC�e�I�����ÎR
Q�v��gϞ���k�0���m��F�g������Pb[�=x���ݻw�944�����g�A{�ڳ�yCCCؽ{��j�k�e��ws��P����`�
%Nu_mm�ʊ��+srr�rDY�)��[�Sf͒�].pI��xp��ѿ|��g���_%2�DŽ���>���R��RZv�����hKk+m��孭1MP��*�ttЖ�VZWWG��q�aJiH-Þ����	��c�
ѕG#������Y'm_�O[!Ɩ
&T�h�᎙3����3^/v�E--Ravvx�ؾiӿX��ऊFGA�O{�O�*e��E�$�(�s�+ǁ0����[�l��=�ω��+���V����e}}_�s,��²��X-�^��,,;�Ჾ��V74<�XeX���ɓ�<�)������޾XVm9�V�h�WPJ��H&��/�nhx������
���<�-_�4N�"U������a�����\�4˲����c��.��Q2|k�i��NجV0��,��xM�ey\e啇N�Ğ?�\�,CE�VW_YUYy��tjs���É'p��e{
*��}ٲ�'N�����+�*+/����RE��X[hQ�(��E>�G���ン_Y��Ơr�W�,�����v=zT��|1��^�b��UN��wQp��I�G�=��ŋ�,*�p��7���v�<yRu��ˎ zϦ}B��~��^sM�/BVƫ]�vյ�\���3���B��A�=����{4˲Xv�2�/B��U!�Yv�2˲#'\�N��D��� X,ᡡ��Ph*!��%@�Ʀ��6�>�/���xA@��?�6��b�����J�2�H�7�W3Kv�=�C���,���9���	�x<��W�z<YaF�RA�tmT�#���͘0a„	&����۱/d��\k�"�kyQ���y	��T��9s��'����ɔb�֭x��S=Z ���O8�~�HmMM���c<O����1mMM�3K/��9��U�@	8�i��E���q��"�O�(�tv�Y�c���a ��þm�XJ)3��[ �����(Np2Y<z�u��45
�\��Pe�����f|>~?�@�G}���LYi�Vn�ʕ+�����믻�@�z.��O��Ԕ����Q�	�q��t˚5�r��	��E�g����#��D�����]�O8ylϞR��*&uw��3gRJ�jJi��Ӄ._�t��3����^8�xŷ�݄���KO��;��^����H�K)�[����L�G�x��Jq��r;=r� �����K�����=�gxH>F�#�~
1/��E<#=�;�5���Gߡ�l&�dB���/��j�DiF4�[�љs�t:���@		{]2,P�B�Z�z;7��֣f����5��Պ7_y%��DC�e�I5��o78�Y���xFR7`��A��d�F<S�	R��`�� I[@���]�сB�V���jE�]a^�� �<^q���q�ɩ,'���'�"��o���ɬY�Ŗ�o �䕴&S�xu�5#$˟���$x���z$˟��{F�>�G0����A��8A!��nK�&�^Hl�$��jE�˅�Q"����ٳ8u�l��`T9k�?�1��3��e��RY]݈-���ꤲ�F}~	���lReU����L)�Ǣ����r�#w$T��#�o��l�9`��3f0��w���rs?����PO����\n�Zy�Ô��-����/'ND�H�ҹ�**�+�^[�]�vVG�`XNJT���
�B�
�@�#�
��[�-D�3�a^&L�0a���1L���L� �/�yv��;�_0���3�����I-�n�R��P(��3�L�935ŔR�Kz�6m�4�;15��?Zٹ@,�H��!b:!���ס
7����!"x��H�r��̹s;����|8}B^�RJ���:7��v�W0�	P����X,X����b;a�k�y��[ ӼBڣ ӼBڝ�f�WH�$��.��v'�4��~d�W0�Lgx�}DI����Hɩx�cn�h�X8�V0ԭ'[+xAH�-D�`Zg'B~?X��Q#!. ���Xcs3�����M���<�`��V�޹3f��w��Ǝts�,I�(���cQ[!Q�SE�o���4�`@a�R��a}*��/��h�y��lM^��	&L�0�Q��/��3;�Z�n;FU���}	��T��s�
���Mo�e�4.���q^�{B{K�9���	��\{K�+��u�F�|����K.)��`ˆ
6�/z�M��a8Y�&&\!`X�,���}��m�PJ��==!B)����x~
R���暒���k��&B����8���y�n�|>��������������ʴ�n�k��&���������T45k��+{��瑣8L%p�=��֭����QD�Yx��?<��|�馛�c���Gw�.��]���^:�����3{{�����|��鄠��(_ R
��s�1/&�P��)�|��ٳS��;00�T�2"!8.5�ß|�dȰ}A���; �V$ھ`!�Iq"}��0J��G���ܑ�t�'ʾ�3
Hv������p�|啴
�U�흇v��N~�:''���˓���A��l�x#+�lyT#iʾx-q]��������e幫h��|��;���˔&�OJ��KLr�:��$I	H:��A'��,��z"2�>�oFn�' �l6��p~�?��^<��p{�y@���u^�hhi�����{Ϟ���܉l�;"%��
���,�[Z��W����[�?&	�g_W�=PeU<~?���C���zeUA�(0�6��� �z�a�<_(�w�m{������^/�M�x?CH/�dv:�V�rsq��#.ĵ/8q�4?�-�ׇ+�vo��<~'N��Ob_�H��Gg"����z���v��"Jkk�҆}~���lBeU����Ji"�Y�`�}���:��<�Ӊ1,38���{��g�Xrs߯��1PU[K-���k�l��|���]˖�̩S�ԳB�6e�6KE�TW��7�`:L�&L�0a„�41"��$|���/�9w�4c���Wv@Q�I�b�b�[o]X��	MM���e�nwض��v3>����I���Ӧ�lް!l_0k�4��0���Ry����RfFO�J���wӳ/hnlz����%%���0��/fJKJ����:��ؘ�}ACÉ	��%��b��[�N��GsB)� I�5+ƾ�n����<�wob��ɽ�tFO��f���8��/��c}���W�x��$����'*��S��"e����)�l_����(�f_���@(�>���}A�GP���IX��������΃*��v'������Fd_��Ԛ,^�D\��Ft�<����N�g�WH�‚F��e�	fN�����.?�y ^A�)�
#z	x�:^aE*��a'L׾@�V�
+��
�3�,î�OI^�A�hm]�
�#@qQ$�X��^��y��x�i�
�׿�:a�D�:�``_P��q<�Z\,��ׇ;](������R��1���oj��*+
�J�����٥��R�"0�8�{w��̮�����1���$���/��XX$�/`]�+kjF�+T��Pv̘��|��G�ڗ��+��W����+�W��&�`„	&L�0a"�x{�5�
�9B,�r�'-�����VVZ5m�0`9,�D�P
I�
��S(/��PH~��
�䤶Ѷ�B
���:���N��	�e��yy-ZtG
@E�=s�%|%D���SJ�B�N�(����?���O?�(�� �2�^/
ǎ]��_��Ϡl�BHB�F-P &�����͛7O�$����6(�?Y�B��0{fw�Y�a�Q�xA�����1c#!�d�,@̩���(=*�� ��N�GZ9���!��҈x�@�.\�`�"M)�@yM�Q]i�׋��G	!��d@������޽&��s��\�TX��Ύ�wQ����ђ.���˵PI.�25��M��:H9p���66��;���p{<��u�@�G�UZ\���e<σ��޺\J�pxI��1w��A	�0��x��Z�w{�X����Le�M��@ICm�D�J)Q�������Q���!Ay�P�~)0ϕ��y�Ž�/(؋��g����q��:�"�n_�[T�
�
�	�q>|^�r:���� n��tB�E��\SUue�I�il\%D�5+kͼ����S�r ��$7Ʃ±c���|)//O�q�$�_���Rj��O<�����`�T�Ԥh�9��9f̞�H�gϖ�kkwQJ�R9(����r�l�v:�4�‹/nhni.��2iBG��������ٳgK���{(��(�RJ�-W�K)=
�K�B��������K[��?�czQQ�����>��
�,BȠ�O�,^G$۝O�
>�t�^�	!p���^[�� $IB(Bk[�qg��WD�������f�(5�0d��E�+B�N�>���yȪ��͛7wB~��@�F.Rݠ��;Q���oM�:�F9r��M7����/�VVV,{ב�����)g���XV_2eJ
��>;z��Y'�>�e�?��s����!��>,X��z�hWUu���]���;F)=B)�C)}�RJ�/_����V�4I�
Vkf�pRJ��}%''�3��=)�굻(��ZWUS���Vn„	&L�0�w���t?�����;:�q��3�a�1
��99
���G%�5MM+���+/��ݚ�9�y�^
����	�@uCÊ��:�ꫮ�*O�k�/tE�KT76J/��>��S�[�]�0c�\ڽpar��ʫ��W�WU1_���t�b�����:X65w@ѕ���[QW]��p㍸}ɒ�U���x�U.͛?�>��#jv=�͛G�͛��΢"i�…�׿��+�ιsi�ܹ1�}&L`ϝ×n�
a����~�N(���<Q�����Qb�¨���f�<UXSs��[VY�=~�L*ˆ����3v�۷�3��5�ׇlokC�̙KY��1�iO-q�%�(C.c���;{������|a�
�P�_Q������u��%��q�PJ��<J�YYk.�3�{la!�=�����.n]��F��'b���}�ݾ:5�0�BH8�:[v��s活\.x~���^`�.˟�X�v�/@^n..�;w����`<8����!pee�����
�έr8E��}�k0���g>ݹ�  ++���i�Ͷ���q�3a�G�2���_�xu�Y,wC�x�1��(��y"�2,��
љ��(�[Ym����W�|�kn�_�$	mm
�ӹ�G~��}uKSS�,���o�q#��'���@��Hk��׬^}����X,����N�eU_OOC�y<��W���%���z�IDAT
�5�,C�v�N�֮^=���=Ȱ,j;:��KU���ł�n���ޚ�M}V9݉H��x��lZ��g`p����9���>�i͚Y�	ˋ��Yvo۲e�k������s��80�!�����`sv���?K��܁=��K��jH)M�L�~S�r@u#��L�n��<C�-Cz&�#6Ű!#�6���*+~ge�|��Bӌ�ru)f�~��(,iuA�OI��$ږ__�&L�0a„	&R�Hy�ClI�'���k����X��B`�Z��ra��+�+�N��8
�P�9�v��U�R.��g�A��,�+�ޝ�1��A1~OyW|ۭ��A���K����MY�h�D9�?&U(�w-]��� /��BVܳ'%!����lB~B)��ŋLe��*�+�ۗT��y�ф�}���<���L���
��h�a!�,�1��s�1�
�xz�t���oK,\H�EEq߰c�r�ߩ@հ�K�݆�s�0a„�
������'Є�EB�����Q���J��55����ʛ���U~B�ք7d�)���:�M�<�j6+��+*��zԗ�/ڼys>�H>��	�&t'�$�H����l��uw_=���P(?���
���c���W2v�*>�e�6%ex�B�n_3o����B�}>y�u�E�7n�b���-,ĥs�t[���@�/OW�ƤP1��tn�t���y���xc��%�4lڲ��W�����‚9s�m�ٛ����D:���A)��
��m�9s��� >ݹ��z�1(����5Q�p8�`�ܪ���
ƻ���!��A�ennX,���O@�EP�(��,��5�@���5�~�2'u$	�@@���}�7޸��,�������W(�e���umm
�$��˯���׎��m8�v�7Ȫ!C���۫V}���gA_OO�ne]_OO��b���\�z���[���bm'��ң��ޚ���,T���kj;:���Y�{p����A��EQL��>�8<��Mk��>i�d9����֬遁�Y������M�z�jj�v'O�����_�(�)�7"�tTn�rq����3�	S�	��@��k<� ��'��-�H<��X�.OW���h�h1�L�0a„	&L�A�v�#���Fu^y��~@�Л��� ˲B�I��a���{D�!s�����Å=)%yч�d:N3����a��c�L�cF���ahh~�?F���,�N'\.��vg$]nn.�������sCCX��	;BwO7l�H��s�06�M����G��
�ЀI���EQG	�X��D&vuQK7m�,J	Qގ.�����$�tj��$ːRP	�J㤚NR��qH��[E�z���j��4��)h��JGT�JaK�8xsI:�zܟc�2$��q8��I�m��!D�	�@��N�_��#2�Ӊ��?S�@���8}�>ں5��hmk|�F�m�I�'���D���P�@J3aessJ3\��;:(p�+̄��@��$C�gB�^�x�1B�gB��U�2dz&���dY�-����bQ
���$����;jF�Y|(2����VUr�Xʂ�(_iF�1�B@(�%>B$z10`�}����^ېe��� !$�G�	&L�0a„	&ҁJ,�
�|���9j�+mߴ(,-]w˗�TU[S3���IU���iӺ:&L�?D@;�z�ٞ�󳫮�•���P(��pM�p�Yu}�ͳ{{A	�h�X���,��9s��++!
BD���<�kj�H��3�������1�
�!����²WY����a��!@?'k���dDk�X����]-MME1!�Ų,8�,˂�2�>�>N
`�޽r���o$D/�͌�����w����&2� �����'�/:F���1lܼ�+�|����M�O�4q�N�æݵVy��>���?J�Y����AsS��^9<8�)Z�h���k��Ǝm3fl6�I�>�)�ZB�˲,�O��e���݃�G_�~&�T|�KCc���~��v��p?���`0���abhhn�>�~�_�+<�C�yLjoGie��Y_Q��RZ�Y]������ݝ[UUU�r�`U=*iT�$IĽ����-[�ݻva``�:<<�$�4dggsYYY���X,�,Ȕ╗_��8����
��m���J�����p8��,
�ȑ#صk��z2�����?�X,m���Lvv6lv;>;|��t۶b��g��R[��'���+V����g����8�<���8�o�mj���+����4yt���g����

`����ʕ�x>^�z!\�������'L� ���H=�fIUJ��x�QJ_��
�R����7TWW��uuIꍥJ�͔�aJ�t�-��7n��>q�T�Аt?@)������ҳ����KK=`�
i	�TE)�D)�����ns:�SސPJ�J)
��j�f{�@-���;x�R��..��X��L)��yッ'O���.���O�:��rJ�Q	�䢔�י���0a„	&L�0a„	:<
E��ׁ�|E+�6FmWR[S�[�����uP<s�U��X�_s
3c���j]��	Y����B��ގ���˞����H�D��
�
������o��U]_�4R�# ���P`���
V��AH��9�fa��7�e?B�����
(^Xf�Ì���g���0����E+T՚[,B!��v�|�ĉ���p�T��-'�������YY���a%�ʤA���8;w�����ߑ���JE��c��z�{ƌ�q��f\����7��[�Zc��9��z�[�/���9�������K. �T�(��D�ڰ���׌�rmS��N�I�������:>!
axx�O��d���t�9�()��|tR{;O��s��$	,���p�U�ѕ���ߏS�N�S�N]�y��^~�:b��N�8�%�<DA� ��|�z�"�t�1c�EEE|Ss3fL��=�裝���a5��:<���v�СCG7l�8T_W7���[!��
�b�Z'N<U[Yi
��z�8s�,�'w�y���{�iA��+hnn�Ǎ��&2�B�ٱ}{;���7BH�0Է���%%V�ۍ�g��ܹs;���hA�yk�Pp'�p2(�O�c"{<;v��>��K�������⟝��%UWW���|��#T��"J��Z��$�̚%���H&L�����S%�(U���
�����svpp��y5Uc�&ByC��>q�T1n�p�m��Q5��� ,q2�yuժ͔���f�J6������oRɯ�p��N)�PJ'��/��x��O��>@u���������*w0�-�������h&L�0a„	&L�0a���L���L������L�&_�L���L���	&L�0a„	&�?����Gd�#2����LD�?"�����Gt��K���Gd„	&L�0a���F/�7X`2�Sp���6��b"�_W�hJG����0LJQ��%	�O��[����p���Μ=�7����:9��	P�,˂�8���Gز~��P[⼞�n����Y9��;G
M/�W�����'��V��ֆ-�7�!R�����@���NL�$)6�����m���J(�$I�����e���!@Iqq�(��D��Ί9zth���u8���K.�VS]�nw8�r�RH����е_��# D�
&��'I�~?���v�?��r�}�+�/��,K€��$��Sr�����e��	����5krL#������φ���\��0�U�g;�Za�{�F4
a���fc������Myy�6 �<k�2���.,��Od�E��]�"�����_|1��vCń�^}J��6�bZk��ӧ���j/!dotB��R�e��9&?/�]�Fe����$	�n|�U�� ��b�ԩ���V}���{��=:�#\�,CV����6��%��BP�b�o��f.�?�d���Ph�ܩS��V�A)���rrr��)�@"u|0�$��!D�e���&L����1�u�:~S]S�C���\�G�;E�5?���O��]��KJ��XN��1cv��h�����G׹��M��+׸��a(�2BJ0�Y]]�	!��^XPP600�S�N����.p�d���N��a�{G0�d]Z�|�H)z>�$I�z���_8��{PJ?y����|g�F�{{���Ɲ��o������a��`х1����8�p��3���X�i�R�`(�Ç�v��	��h>��
3��$B�6]Ekj����jksGx��E��O�{���>�N��$��"���+:�;!�>�����K/�>�Tcs��Ã���ART�@�%�(-`��B�8y����6��.$��Q�.����W�$�f�Ù��3s�� �RjJ��'�����^q��)~�֭�-�uBhC/����M��{u���r-�3{6���Qu��_� \(��R��0�`���8e��hj��(��|���<	�q]�VMhi�y� ��*4r����ZDږ��<�|aT��	�ND���u���QW࢒�c#�d�ʊ
'��ϗ��7}�(IC�&��#�_�e'��f�z�JK�<���on��Q�%�28�C�q�O92W�ݕ��oki��e� xc ��P(�fQW1��Z4��|A�� ꪖ;fLx�j�jʒ���������S(s�,˰�l�
��qܡ�G���3gΜ��� �8���C~n.�ƌ�}A����  ��������CAAA�e�|8}�4��Aݍ����ƖN�����j��]��!�nX�M
•����[	!WE��o~�ӟ�����-�|��juƭ-
H��g9n��?�cٲ.�B�����/$�H(-U�uT���<j��f�EM�0a„	&L��p����F��$U?$1��孹���zA)B��ԯ~u
45^��+������EH���,����e�4R�U�A}O"ϣw���_h���M[$
�R�NIQSY���-�M�.IW���J��ں4��"e���p,cY�  �������EQ�$��:iR����+/�S��O�*
B�����|���sCC�~?xAPNc;�)w�tXVV\I�yȔ�ҭ���>DA�,���ݽ)��JG��i�n�:%�u7�4D������ �q�@��15748%�Qp��N���,ǽGQtΒ�ƶ�ŰZ�vƔ�)*ZF)�(��X,^BH��!N�t1��$A���\���d�:\z�O�ڢ�tmVkvoo�
�aJ�t*�J�I6�
\v�2��})Q���!�
��=m��h�X!+++�'�$tN�2��H�
']rɵ�:�j궐JF����j�"++K�{JQQV(��ۣ`i]u�UV�|hhK�,AŸq/�a��eY�dg���7�J���	À�e�45->p���M��
P�а���ZN���_�t)��K�t:?�,˂!���Ev�Q''��Կ����JT���c�YgB�D�˷�-z��p?�Z,`���WAbX�NB~?�~?�
c�e[
xc!����K�N�v��~�A�At����3ʓ�T�-.�������
!$�CS[Z~�Ph�U���p�ر.����)��?�/e�Ξ=����Ym�U56Sp�����U��ͦ��Z���;��ܷ/IV(�_��U����>k����k�{�~[>z����_�����p$<E����Q���I,F4����IXQ!�EjY��R<&L�0a„	&L�}�h_<j?Iq�8�7ߌ������L�E��+��]��1�x�n�����(P�$��v�\���c����[�D)�!�w#/���I�>v_������_tz.�eyyd?wV�L,�?��jo`0�����Qp���(��;U틆ԓ�z����7
ڻ�P��+�e�𢈣����N��7F�` ����`J���1�Ξ��Q R�s�`�5s|�FAUk+��j�dtC���9�C�~�X�P(�@0YL��^B�T�'�7i�I��5e�@�"V9s�0a„	&L�0a�D*�*��aF�����3<'��p\ʯ���8r�0<#x[�(�ۀHK�����;���v��c�z�����l�ẅ���=���G�
b���F$����ò����3! P}��]�#��������F�1�k{DY�{���p9�X13�蛉n+.r����|BΎ�JiATyC�����"���S�`|I	lK�}�R�� ���ɘ
��t*�EQ�W�´���
<-�>�ٳʨH���i	@)����$@ҵ Yؑ��`��|�ւ�v�;V��J��%� ���iܱ#"M��>��°f~����)��R�"_���$�5G!�Z���B
���$�i��P�>΄	&L�0a„	�d��xD�r��/H�HY�t���R ]��Ty�x��i��Sr���/0%��/����j#� �#�/Py�h$�	�
�	����Rf�p�Δ�%ӣ �N�Q�����3رeKJy2n_��"�	:]RFc_�O�ႍ�T׆��Q���L�h<�~]��dԾ@@����}�	&L�0a„	&L\d�ƾ=#�ˆO�e�W���F,���
)�#J����oljZ��q��fg`� "fm�O"eD|^o�� ^�tlR�G���#���U>� eD�L�7�\��h\!噰}�tT��GH�Q<C���錂h\(!�.�����.T8�P�#}
i�#
���{�Jo��G�Q����(0a„	&L�0�~t��2�7IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/editor_ie8.css000060400000111223152455705240024140 0ustar00.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__sourcedialog_icon, .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/dialog_ie8.css000060400000040747152455705240024125 0ustar00.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{display:block}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/editor_ie7.css000060400000114714152455705240024147 0ustar00.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_toolbox{display:inline-block;padding-bottom:5px;height:100%}.cke_rtl .cke_toolbox{padding-bottom:0}.cke_toolbar{margin-bottom:5px}.cke_rtl .cke_toolbar{margin-bottom:0}.cke_toolgroup{height:26px}.cke_toolgroup,.cke_combo{position:relative}a.cke_button{float:none;vertical-align:top}.cke_toolbar_separator{display:inline-block;float:none;vertical-align:top;background-color:#c0c0c0}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_rtl .cke_button_arrow{padding-top:8px;margin-right:2px}.cke_rtl .cke_combo_inlinelabel{display:table-cell;vertical-align:middle}.cke_menubutton{display:block;height:24px}.cke_menubutton_inner{display:block;position:relative}.cke_menubutton_icon{height:16px;width:16px}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:inline-block}.cke_menubutton_label{width:auto;vertical-align:top;line-height:24px;height:24px;margin:0 10px 0 0}.cke_menuarrow{width:5px;height:6px;padding:0;position:absolute;right:8px;top:10px;background-position:0 0}.cke_rtl .cke_menubutton_icon{position:absolute;right:0;top:0}.cke_rtl .cke_menubutton_label{float:right;clear:both;margin:0 24px 0 10px}.cke_hc .cke_rtl .cke_menubutton_label{margin-right:0}.cke_rtl .cke_menuarrow{left:8px;right:auto;background-position:0 -24px}.cke_hc .cke_menuarrow{top:5px;padding:0 5px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{position:relative}.cke_wysiwyg_div{padding-top:0!important;padding-bottom:0!important}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__sourcedialog_icon, .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__sourcedialog_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}
extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/icons_hidpi.png000060400000102050152455705240024367 0ustar00�PNG


IHDR 	�N: IDATx��}wxՙ�{f�+�Z�eY�eY��e[n�60`l�Z�1֐l
�ݔ%�$aSX�	����BXZ�PӋm6�`��eK�z��N;�?f�ꖹU�K�}�y�{�)�6s��|���A2Hc`O��7\i6�]�_q�$��B�<�Х^'��{��C�a�կ|�$Ȕ�(J)B����4�|��χ��Q�ٻ�6)��]'F@�!�<dY��RH�Y�V���Rp�L&�X�̵��������ˡ�b��	x� @V+
�C �&�	�yyy�Z�0�LhinFMMM����_�„H��\��m�.(q�駟>���U����v��(�n�a�5׼��K_F����}��)��e#���Z�v�6l�����x<E�$A�y̝3������eY�L)D��BB`P	�
���J�I���<�>8'D@�"@)��f!d!"!���/���z��Z��	�B����_^y%i��u�a�t8���j����0A��� �g���b��3�TmB�N3�o�?��Z,�+W��0��ax�^���p���5>Ν!�%)���l�6����eY8L+/G^^$Q�(�yv�����/�4!�'w�ȗ%	T]	!������#�S�pX���R�QD
V+�P� (�p\��2?�R�$���$+�͠��s/��q �"���B�7o�SSS�={��n��;p��q~ll�A��8������&�eY���/���,j�����A~ӦMKu��k׮}ytt���BPJ�0g¢x����7r|�̧��W��$�uQ׿�5�֭[��AY
�kkKt���$QOB�eA��ѯx�a�RI��%m�*c��g��Ĭ�2�0Y,I������D^>����ɬ0>B`�ZS�%g��Ԕ��1###xb�V^/}f�$���|���`�Q,�$������܅��e�$����k�s�͑�Y�h��ju������eY�l6�ݘV^I� �"�� z��p���!�ws&@eY�?Z7X�p!�!$�5MP��@ ���\y��o��?�'�˙���W���P��h��"��������wߴe�J_IVvF>��cu� $���d�X,���}�w�p:
��B~�3J��g���}�$��!U���@����a(�>p?!doe0`��0` g|�H���
�hg[Q����ڥ혵��s�%	!��x`7�wT2�Ān٢E� �� 	��� I�x|0�` ��A�e۶�T�e��.�[����NX-8��f�|8`dd>�����uk�����	��5����o��n��AA �����_�n�<*�-���%-,��)�f��?�i�*��(�����K�������`����.��P��W�~Ӧ./<H���8�K�,Yj⸈4�to��2Kk��͚�.�����7?)+��A@ ���.EB>�
�M[%�bD~���՛o�!�$Վ�!��&7��v�$I�UUo_�!���[¢�i��P�>�����L��#tp&DQ�,����}���D�QTt���� ���-�tB�	�&��0{�rY���$ahx�Ρ��4O++si�p8�i��'�C��J`%C�x����F	!>���U��("
���r2��s"�0{vU.PE��k>�JWB}�3�l#��Œ��gY���r���l	dr�d�kָ��k:$B�].f�U�@8�ww�ܓ-��-�,*:K���������02<�ܝ-�t/�����fsD��!Zw �"�^�H)�)!��lI����Ov�󳨜RJ��0`��d'+v88�����@
�r(������6qݻHq�>[׃anmjn����������j/�B�������:O�!�tO�eC�,�����I�m��=B��,X��02ò�|��尓.2�.ojk�}UG#
"'�K�e0��`2�`2��e��=�����'D���.4��AF����f����Vn�7�����ى�Ǐ����9x� �E
�,<-�%�W/��̈�T,b�E�n�-F$�b�
�_�|�I�﹇��I�n�7\z�P��	���|P,.,|�(��uM���5�P��Q���!]�L,I����b����~��o�gY�L�Ve�3�)��)%$�����be#I��X,x�7��
��>�BOy����IUG�.��V_z��~����`YV9G�0�'�]]8��7(�BY|^�=�]gL�z{��۸�^^V��F��`,�ʼ ȃCC�� N����}���
tNRgM�R�ƶmۖ�{lM�-��42��eY� wuw��8y����;Ojm�G�ygE}f5X5�Xt�jkh��0Q��� I�Z���$�M�Q��R�d2��1�b*�0�ͰZ�����l0�L�8.��1�yy��aFFF�@ A��qqbJi1G��$륗^by��ܹ���χ���b��T8f�n7���
ő��!�0��$����}��̟��'��v�d2�R
������G��	!W���X���P�ҥK����H+��ށyϮ]��$����J�B�0!�iB���{��0wn�AShTVW']�0�+c��(����B��=�)CK3
�>}:�.�	H�4�5s&S]RŒ��\|��z{�R��P^�h/(*j,))�H���0���PU]=�Z_$OG����V���n�@�T�
� �"�N'�].8�2�1���1pf3v���ӄ��rj���a8a�f���8��s8����S��H�>���y�^�>��<'t����w�)��ǘݻv�eY��v��fŢ�e�ab��f_�p!���SbiQ�!w'+?�g��������g�a������������p:��>}:���䊊
l��&yzU���� ��KWO*�SJ��PJ����'��g�-E��rvd5�P6$ߘh�ϝ�U�h��0`���)$�r0��i��n���<8�'n��e��Жme�{C�嵍6t����ѣx������:�Y�m�ꎎ֙3g�to/�}����φ@���i]���j���Q;s&.^�n9g�mŸ$psv��K.�����
�`N��3f4 K$$�\�����# //�sN������ۚ��m�y�ڬV�|>`���/fK@OP�7���dYII[~~>,�f3�^/^~��=�0k�:��f�F�V###���ݵ��2k��𥆆�}eeem0��0�L�)��t:#�բf�{キ�턐L���SV766�+//o����q��&����ٵ{��E��l���-!x���͒$�!bI�c�b�L�r]q$����㤚S$���?~��r�<)���RSRRRϲl�o2@q���ϟO�"��&R�Y�e�ꎎV���sIUB�,QL���b��o�)�:P���@=n�nW*�Z��%��Q5!myyy����z��ΝoJ��:d�P�n�X���f�D��������}��w���<88�gxx�p�  ��ĒE�:|'���HI��D�Zf�̙W�8�P(2σ�໇n��lb�=�z���{$Ij+,,TtG��y
�����\qy9Xձ"�0p8��s�p���\Ow�.�����;�cx<Ȳ���ѣ��E3�x�ԩS�+**������<�*�#'J����5�f�N�#������Ϙ��e��o��U�T�Rj��n�������WL&өY�g�%R�VT���^W��He�f%W�SJߎ��*��O���ƶ�$�c���ArWW�$0�R�$��8��z�Ǒ�wJi�*���~�I���KӧO��n����/���KN�Kʛ6�-݄�f�P6k�dE�<q"�jK��Yۥ�S*������[%	�-���wSF@�=�##m���WR��{�SU�8��"ت���1��~6`��0`��BN�Ƀł��<D�0��G^�|�ѹ�~{j	�P���k��.����A;�4u-��(Ƙ[L�Ƅ"�]6�
�8.RL�V�0�H�������ٳ��z�#B���nx!���Iј,?��U��d�C-]bX,?޸aC��1����zk~����>��jLDI��Wd�8e��aV��-]�ac:��������z~�f�czee����E��ݚ��m�ڵ���P�`�##p=�u�س��l�C^���r����L�J��0���C�jL��Y�!k�Y��|𥆆�=�$�@�$�l6�:�60�L1��h�It%�MA�Z�И�ИL��$'1�ߏ���|�w<�iL^=z�h����A�B!X-��&[��1A��$gL��$gL��$g��11`��0`���7�� S��w$��a�#y,��q�1$��!�

�|�[�s�%(�V��I��%�J�����咠�&�EZi��M�P�vâ
$��O~��ϝ��/�P�v�0�ϟ�$i���|&�,�e�W�T�z�Gk2�L���&!��Lj	�&A���7]�c��rL���PD�
F�I��@$ز*�d��$	�,��- �i�L���D�MwG��g�A�̺@+0�.�ҫ�OR��4]��%�fҤ��.�W��.����@�AE0��>ڙY ��3�����:'�g�(qN��Ҏ����`(4*�] ��[�T��l�v\���&}�%@e�?��&u%K�r8�"�I�^/n��7rw�C�A�	Uc݂���_]YYGT�(���k_�rR�i	p,� ��Y�QYUu]�����@��P����V�gan^|�%��А�y�e���Ynu:�����8��9s��3�,>�g�Y�@Ұ㙸�����֥v�uiaA���l���N�:���Պ��|�̘y�|>�8y�s��s�23Y�����[;vl����YSS�r�`�$8�v�klD�3M������/n���$�w�-��£ή�3��奚kH��! ��T÷CG�e
����H�/S�^P��[o�y��G=~�!s��	���+��l���J_SS����a���?�H�z3!�2�#nJ����a7������l�f��Ⱬ�1G����s���h�:��<�r����E��8�'"Q��i�(Ř���T��s@�j*�0`��0��f��L(ҏv�@��Z�`�zG�p�BJ�h�<ԾdIcŴi(*.���(�����Ν�r(t#���T��{`�…����(r�122�޾>�ڽ�x�Z(����n�{����<�3Ò��"�y�y��ĉ�>LRyi^Q��^tQ�+/� (�5��ߏ'�yfx��߶1[��oܰ��j�""GD.�`�R���3�M����s7��,����a1�q������!B`z}����P�IjI�"'���0dQ��׷#������< ����>��Zݑ�q}]]/���=������Ѐİ�u���<�G���e2����pAl�������^Ab�ǹ%I���Яnߣ1�N�<I?ze��0�>
��Fc�ཝ;�<�,3Ze����(���;��B�v�X�������>u�.�$��}}�?B0b�� x���F�����RZ_d{�~�k���b�� ��x���ݐ&K���4��>�j�ҥ�����c<��<���,���_�� Q�*�=?�ٖ�|�����ӧ���1��H�P8�ʊ�.��P�����_}�uz���Ӎ7J�^z�t�y�I.���&�i�oS�q6}�'�y�'mܸQڰa��t�2�m۞��'�/���{��U�9������<u�C�Tb8B�O4�����:DTMZ0Do_��g�=��Oe_p��'��f9N�$	>����ӫ�~������W^{��3� FGG�e˖���TK���0�p8��'O�RJ߁�:�/��8������2�^/���{���oG�O.'$��|8���a��ۡ,��RM@��f�<�0�z���꒟}�93��$��s�k�;OZ�x�T\\�_�Q�l�/mlnV�y�T__/��QJwd���p��j�j���Y*((��Rz�*!g�3��n��h��Ҍ3���q�H6��=��I�^]=r�w<@)�SJ�2�~�����A��5k���4�4a���M΂ə���R�C�o������l�.��5����L2^	�I_��;'A]P��~�o��۷_]���.C���*�������z�(53���P<���&�0`����OD��Jf�
&�Iy�J�~��d�Z����k���fC��C0�%A��lF�˅]�w��{�a�$"�>���>�6�C���D7���GM�D�� ��B@���|��]��0!1�sb2���.����m�|�L)䧞bdJo;���9���d`uc &��3J)n���'I�n�<|8ki��&!q�u��Ų,���?�t��@V"O*����p�6m��QYY�����[ ����K��U�cM��+	(�'�JJ@�T�_�)O�B��g�w��	���`�ڵ(�Z�z k�ǣΝ5�+?:�ѬȘ���̐χo���������(��u�xJ���Q
����k�q�<���r[ױcII�/D�WdT�ȓ�Jy���%S���?Ce���'tId5
	��3mj�x�
w���~F��ӝ�	$�"�""	d�f Sh��o�7mقY55����t1+�ͬ
6B0���-���###�3gN�J�B�y�Va�s �Pi$B����%#��ӃS���5{6���QSW���� �r-M��L�]Uc�;�u�6.�}P%�P�*%%�4�[֬+rDd�LF ��Y΂L�g�0�'e���u�����Npj�?��eX�����dҝ�w�(0��@��
��1AH�>�V�Zi��Fqp�U�Ty�c� �ɜM�前B��8��)��׀0` �C_`�}��/0������C_`�}��.���	�C_`�0`��d�j�!��t��
�k���u�J�����:�>�iv:߿쪫$�$��.��E������/�O,��3��}��_>���-˗����0Y�O�~��v\�n�~�E�?�x��
��@&�)�qFZӦM��~�~L+/��e�@&a/_���i��)����i	����~?xAcak+�gͺ���ڪfμ�…��a�`0��ӧ'�-���?������ë�U���5k̮��'����Gy����kTG*�
V���{���Ϫ����x"�$Q�%�ח������L,��/Y��BR#?h�=^��}8������B�Pĵ�0�x��V�f{0*�.�`)�q_4<�cxdϽ�B1�{�&@�x��6����xy֮Ys1g����ƪ�κ�]XAK#�3/��2����?�L]FWx�U�V��1��&��q���8p����ܶ`�E^�����|��VBBMg�=?����VUV�].8������
Z�~�':;}8�!�ܣWnƫ!�E�}�����k��G*��i���� ���Cy�9��U��ďX��}~(���xDQ����n���?��#�f��ܘ��\&_�1�oZE���S��%A84o��
���x�BF�.�}�jcTt�)Ց�|B�c�x��L[��e������h~�B�4�Kà��2ô

�Hd=[5���Vwt8A���Eoo�<{�T�h IDAT��fΜٵo߾J�a�Ʉ�i��	�����3Y����*�.���Y�.IFGFp�ر���k����Ep���˖-s���T��0[,x��7������@��$�p�
�>��qj����T�`������r����m�������N�s���$X�d�����mb6{�
`e�-PA,��-�����E��u��_���n���:B�s@)m�0k{{�������
&��P��������[�jU��jB�ͯ��}��;;;{A�UW_���
.�*B�.-��^B�kttT���~��jnjzutx�w�(���@m��/hjk�V�^-u�q�4
�}}�[ZZ�3V��|C'o��y��˗Kg�Y�w�޽o/\�H:�s$(N��@Ca~>�p?��9(�����ҪP(��(!eZ�򖔔@�e��_أ󶴴T��~��hO�����}����B�n��aBȗ	!/B�jӦ[Lfsi0��2>�e�7�����a�8㌓�y׮[w��fs�b9���)��jf�����"�Ξ-@X���j=�h�b�r����_��=���⽖��f֬0�\�v��ѽh�biZU՘G��HE�I)=n��O7Λ'�ih�J�ʤ55��&���R��m��E)��N�RJ�q��1���$͞3G*.)�jjk���f���\���w�F)�RRjA�SJ��������+++��nw���`�;ᄏ�R���'�
�����������2���؟�����Ç�Qmդ#PN)��C��*
��"oU<y��(��SVUP��QD��ݥ�hy�I�gT�0`���(�C_`�}��/0�
SC_0C_`�}��/0������0`���r1�}ԑ�����E���'|nJ	,?�,iY[�8�S�R�س�_~9�w��I9���S��(i~C���s��~f~C�*�ѨrN�e�g�k�rp�{K��K)!x��7M�yvk�tF{;X��e9ђ�0	��ص���e)�̒��P��w��(.#��k�;?w�e��

�/���*�Mc|�c�@~�>����6M+���^�F?w�e��L��s朞_[[��c�!�n�����O�Dw��
�$�;��(b�g���_D��Ro ��]v><v����i��U,��KW��T	��x�,���R�m�tAGG��rBXm6��3��r(��Ÿם�k4���Lj�$P
�͖p�	�������=!�7$�YzB���X����D�z\��J����	z�H�S��:��KbL$�]O�4�Ó(�Szh���<6�P���i�B��+֬i�;��|$}�����P
�ł�����/�	`�.�4w�ږ�v�d¶���EΌ3�;O�mii?����%��߈��ĘכK��1��
:��!��O
ĸ�Y�Y�c����E.LI��	��!��j�S͛W2�!��)���lw�ԉ�/?�.H�{:���zNt��Ͼd9fMwϙ�b��$�A1��`�������� Z�@\��	�t7���xN�3S� N��Ғ��`�E���/��A�h�.X�ގW_x��z�
��]1�IRL�*+Q���eZ�BYx��T�nI����R���9s��55c�$�AŜ9RE]]��*�ꤊ9s"��F�8�e˖��]��’ j�%	&D��Y_&�R���Rڙ�-�+(�];{6���Y_��gS��`w��x��aJi�X���*{v��W��E�>
Nq��nbo�(bzU���h�5+�|z=��A��1+D�Џ�3���)Ǽ0`����A�C_`�`�}��/������C_`�}��/0��� }A����0`�ozo�W�@rq����P��<�����uu������L�0��	�����ٳ]ǎ���z�Yq��57CEȒ��'(� �����8�z�=�|��+���[��z��s� KRR9U�nh>'�a�,�a��DQ+�h�?;w��K�a���P0���������%I
��ba


�GJ�$������#�r��2�(���'x�ǩ��ѝ;v���]�x��ڙ3��6[RM��(..vQ��Bg&)�Z�$!���B�%hhn˗��|��Ga2�Rdռ1h5��j`�4Y��ѱ1l{�K!|��ꗿu���K(C% D).b"�j��Q�,����x�Z����U<PYY�7*}�S����\�$ҹDQ����wo�-�3G<���c�x<���M�{3z"��I��`��s_�Sf�](�;�GFwaa�6-�ʊ�#6济sͳ���âE�>���k��4���g��델��)K�B�ƆV�E3��BE����/��b��6W^Rr[8��[���>J�����tԕ�W�����@��e��AH��.��BO0x����څ--�\U�3kk����1yD��њ��y�����������Xv�
�����˵��=��kdt4�@+��r�[����,#��<�j��BH����������}}}�(/���6����L��<�}�p8f6@�b�nG�U�U|>֭_"��A)��~q��o2бr�x�W��߿��w��?���LQ�I)�1��H��eˤ��"hG3(�������?:p��ńY�m5}
. �썪�Yuu�u�f�l���Ë":�����v�bZ 2�eT�$�}>�\�xF�����z�G����s����6ov���ܹ7�
wh��D�zB4.^����P
Ap���<����Y��'��I7����p`�Zaw80�߿��jXC��cQkkseE�f3!�E'����{�Ķ�6�M�pC�Çf�:U9�.�ug�y&��h@y!aX���/�!zP#��@0ȄB���i��OCm��<�}����o����q���!�MP=�ͭ�� �+~�;����4)n%L���׿n%�D��T^R�J�_�0�����H�r��K/�EIM�E� ��Y��*��,f��tڴQ(�x���]�uQ�CK�ep�iӧ�z�ԩ5������F^k~�qZ�Y�x�k�X8�oR�bf������ܚ�j��V��ya�{jʒ��s�VWWVVS(k�,˰Z,����q܉�.��׾6888�@ A�q����.,��������^ߟڸD%�.(���EEE�8<���c``�ַ"z��4���6���B��n�f�9��<��
koS���pnϞaB�E�6xட�|��?��S�Z��l�-1KH�`9����M[�,p	!��		)�e(��KɖR��R���;��z�2s�10`��0��������u��[
_���kW�R0���{��/C��׬\����!
6Lyy[�-(W[j�O���EA���X�bŹP�nL){ے%�DAP*�R�Θ� ���� pe�y.)�bm�JQ?o�Ϊ��OheM�^T��eYjX������ϋ�I�h��r_WׅSE`Q�ҥ�DA@8���n��V�����@ ^`�X����l	l�(+�$�+G��|�M�>�� @E���8F~Ɇ��mɒ+i���+�%�<}��͞P(�k:�UU@��1�����%M�
��n���ۓ,��"�(2gIœ��7�lN;3&�WZ��R
QJa2�|��zB����u1�hXD���-�oHWn��e��E��U��ٹr���	���nW�9�RȒ�����"�|O�*8� dKQa!����}ii)JKJPZZ
���'�$�/\x6�xhϤ�,^�QV�\M�V��	�f3�r�����P�w&B��3Ͳz磣����P5}:ËbD�Ų,�N�[n-/+s�'˨mh�|��C8�{�8-����[�*��x��믿�lA��a Xɲ,B0oΜ�c|1�NND2�����9sjD���V�Z5���(��w�#z}��81�L`���U����LA0@ ����߲e���@�׭]{�`���
��2o�juzyRuAUIYم�{z��7FX�G56�WJ��V�����{��f�q��Ս��1�Eg�Y}���2�(2�ԫ�3'Dٞ����y硗�ne,�rv�l��n:�{8��PJ�J)���5ü���k�{B�ky�S%���6[�S4�_;�|(�$����h+��$B@E�	���ŀ0`@�@�VX_$�R	�aA�
�)����I�E�D�_9Y�+�׀ǃ7�zj�J�[����:S���.�;/Oז<Wh6��^/v=�\��_�썁�\���<e�8Y;J!�2��^�c�q�e9���,5θ�T��0�L��ƃ����xC�
���0�N6xQ���H���:R��:�2"Q�1
~?C���e��ӽOP$f@�����F�I��Zy��	1u&����
�
af�I}+�%	�GF�N�ހ0`���>;R�uW^�|���`0�f4b��3��o��(3��0��?�	1>B��xq��)ۜ�v�,�y�%	��V�R�C���dP\�j0B�#��R����&�q1�]@`b����͙s_kS`�}�9t~?�`8N�c�,I��q:o^y����G~~>V�\	�t&=��)�C�b��D��v��F�q��ۍ!�A|=��h��|��'{zz0:2�ё�����o>9�ځ�N04��oל}�9��۷�}��}�9���o�L�@|=�ttH-RT��:f��3�g)���_O�1ů0|Y��˨�R��UR��̙3��ߵ���c|=�h�䨎�~��cr8>o͚*�ٌ��>u�����r\���1��[$ܾ���,�a �<V,Ybv?�(�ׄ�$�`T�II�	�#P#�$�����.,(@Hu�#
֬\Yj��`���u �,�BcUm�/;V�����#��������54(�>jkJ��eq�ʕ��:T��NQ[ n~���\�G/X`�VZ��;����摸ְZ��_��^m���G�yN��ۯ�u�٬>�R]����X���^AA�…����l�}��З-�vՊ����%�=Bk��*xFGu! K�؇Ѧ�l�Y,�T=�KD%EEX�zu���Haa!lV+��A�e̞=�4øx�8�V�cc��鿜9}z�o1mB0��Aq�&��PLK�{�ƃ<%�����MMvQ�U��S*�����f�C��˶��F)]�h��3��,B ����r���t���\E������"���0�l���Ɇ(���@8lhN
0`��00i�
}G��-_.Ϛu<�ޘTUVbZ�n8�O��:D�[�y�­Z&*����W�d�c0.�8,[�<���9*����U�-JRl�HM�	!XV�e'����A�]�D�q-@E���q�
ʰ�xD�>��
�C��Ꜹ߶8;I�E�?	~�	Y�0�sRzhmkKh"��={"��������1�i������Lx�U�aZ�0�4����O�t ��E��]�\4!��?Z��vlذ�~~}=�f�邆�&��&��s
��GE>�:]�:>¡~?ڗ.EP�@����-��}Pg��`f���������cze�(&�N�:'��JJ��tw�=~���Y(���ڒ�z6D����]*�{SJWSJOe"{L�b�̙��@�����Bȫ��&�z�ώ@V�΃�2
�t&�Lڳqk�z�����uh��|NJe��`�Y��M�}}��I�]c��Li�B���̘���DQ����)QX]-qn���Z��\�-'g��
:s�?�}/81	�0`��0�5�%fA|\�� /o��-[j4~*�
���7��'F@;G8���0�8�3�0�bz�v(�����(��f55��D>�55�H��x���+#�d`X##�h�4����!��|�RJ��t7�#�)�1 OP6�!)�tr��'�	%��M���h��B�@kk[[�`XCcc8~(!Fs����!!b�l(���y<Ҏ���ӛ�����U�vN���Μm��=��/��oj�98�y��4nBvB�$�����:����m��n��f���0������ý��8�̝�ߤ���!��Őǃ�c�C�R�N�8����W��w��׭[�Bz51��ׁ�������}~(;l�
D�h�OH�h��z	T��!W����b��v*ׁ?��cbE�x�|�̙`������ߏ�ӧuOK�r���)[��e�xu]N�}@S˫��u ��B������n��@�zz��2p��Hω�.��Ř���RH�>�Eq�J�ɾj4��"���@�@ ����!�X�vm����~�=�?1PJ;'�*c"���"ðQ0`��L5�þ��/�T��+���"�i���/��P\�<�ʾ 
mm׀a�К�@�q�Pw=�__�
6�[��v�(?&l_�#/#�@���l6�
�eY�65����Z'�\q���W�̙3eAN�ۿ�����>SJe9�A�
����B����IY�a2ya2�ä�d��[W�09�@�ۓ�>;���}A�0��0`����`�S��x֬���'t!�ɴ�rTUVN���	���秔@�z�~�9�:��
���|g��;�����T�!F�8���
�w�2�Q���2"I���_P�$9�� �Er�Z<�j��C��D՛�D��<�q�c�R�}�Ҋ�2�a%YHBH���L��(��٩Hq��)����LeDW��:��jSU(-0犣[�q��u�g��Պ����[f#}I)�?W�jh�ʉ邅��y�@ ���L)>���HZ=�`:���]N���'�~z�W�����9|X���)�^�K6l�����92�$cD")���ĀR�J)=��iٲ��pC{{t�z$}o�����҅P�y���:��~!%��i|���p�ց�1Q=��TK���/�O`Rցl�����)��(D�h�@_ww�T:��J_E�@��Ѥ�ģ ����Skii���擎��Nc-d��pBV׀a_`��0`��gz������DXL����jL+(����#F��E�GG����}B->�cL,��<��$	>�'�]�����yq=H�bL�#�����G�E�zt?=)��ŭ�睇���)�=##x�R������N�$!�2)��S��Sg�D,'�A)�D)F��ߌY�ٛ�˗���Y	C?)�PJ��"����/ʺB�@(D �8�0��,��h�$��R��B	���7j�����b�M�I}!��qb�����0���IŇ���H�I�Er�l���q�����0`��0��s����Ǵr�\���Y�N)L��v=�~ k�:;��a�,Q
O��R�����6��t��O}w��Ӛ�\��n7L�/��C�C�3BB��"������$K �z�eY�@����rD���$�<v�\��.W�i��G�e���%qq.@�Ǥ�F��ķ���-b�PJ9(���24�
(�Eq�Řş�g_4o�BT���b2e<(�N��&T��K1/���G��xQ��������!eVd���YP��weT�>�>ҵ�@�D�K��{�lnFuI��$����bXPB�N�}1i�~�m��њEy���L��Hy.��0�D$��?V�S�tς�SI �����SWa�W60`��|&0���r�/�T/�1�l���dL [��L��0i���O�e��+}��,��}A�^ Ƈ�z�ZOO��@N��^ ��I	L�}A���R��f��)M6K��gAF�hR�"v��ط��vG IDATsgFy&ݾ�E�R��&b_���@Ô͂L�
ӳ R�&þ@�D?™�&վ@#�N����}�0`��|˜�}���r>�6Yz��	L�^!g�9�2�G�)&K���S��'�7H:4;3�%�4��ll2�G����E��D~T#�!2�G����)x���ņ�͸�hd�(*�'�7�LςxL�!㕰y�RTOL���?�d���#d3�1Uz��K�*=�gr|6�,&��j�\{!+D�@�O�Q���G��60`��|�,W�5:�0����Fb�д��ۮ?M���p��������(**���zN�Ɓ���P�*�{rm���X�z�������ψu	a��
f�����fn~c#��� K$u������O�����p���J����Xw�R�Áwv��G��(��X�N�涙3f���1k�,ȒQ���m'(��c�,�A��>�,F��XX�~�D���3,��(q8�z�J�Z����׷R�ep���RB �"��d����e$I�D)���ckWW���	$I/ ��a*AU)E8�T�IxAJ)DI�%��M�H@!�"���F [PJ!IRLT��	��n"�rݲ�>'%J1�Ԅ��qq1��oV�Z � �t�MI]P$I���p-&�7Ӷ@��'�
Z�-�vN� �j�Y��U�k���L7Q�(�)
4r�,CV�XE�Y���,L&8����`��,�n�χ������G�JH)�,��P^����=V��Ȋ+�v���?/~��Gn��^gs:�襘�rL�&���z�o~��
3����(�����~�###����}��s�s�…�P�)�`hx���&3�pT�>�@���p�w�Ǫ����ٳO����p8�� I������p�
���Z1�<��N��`�z�����=z�/Z$��w��7���^F)�
�|㷿����۷�C)��RJ����[�RV��p��qւҬRˣ)�n�p��B���#�4!�k������ϵ--RmKK�@ʥ�RjР^]���s���f	��ۧ�F
BH����]	���'N ��T�So9ݳ`���5�d��X��Ԭ�h�gCcb��0����g`\'��7��L1�|�����9s�*�M���{zp��I�GG����������������+6n�l6$Q��ʁX�ò�z����ݷO�?�d^}|�	�bX,w,Z����W_�ߜ
<ê���ǟ[�!��1�(@ߘ8��ڰd�b��ѣ�}|��e�;;y��{p�ln�[_o]�ގA�?R���2����v��a�)$��aTO���3g�Rj���_*�"�AyY�@(�9їF�� @E�~I��f�$��<!(�Ϗ��p�,�W5,)[ �$A�$0��\q��
���,�� �Y���"Qr�TVMh*E�����a2�r��b)[ ~N�� �4�j�AƳ���@Sbi��x�@.���u�QT�����Qeab��N�eY0F=�J� �"�T�L)HT��׋��'�#s��>���]�v�z�-&
չ��<X�V�L&0�Қ\����"*�4�����>���F�o�Q��߽{��/}�K�������B����d�(<���������ϻ��.R����Ϛ���#Gڠ($�U��Th�@�����}o�}��Wl�X�l6ò,DQ���9�{�����j�:ˉ��B�Ô�6�J��T�~0J�?�}��w~����>x���R��}��de%��)�RJ�I3�)Pu	��������$4C�<?W��۠t��>V�1Н�U��z�tig�T#��'N�So�xy�'N����������0`���Yl��n(Z4��ߣ�{�t�jY��*��T�e�3g�꒒X�Vp,s�eY8�N|�?��}��7ﶦy�����VM�$�B!����<<���w��E�Ų,Y[k_lK�0�&�ڼb06���6y�<2�K2<�L��@�x2�����Ab�-��m�+x�7ٲ�-�w�r�]ݮ�ޤ�3�W���r��ԭ[��:�{ιr�
�;�<�����P�~;�����+�|D)�Q�x�b~bc#?���_�xq�BJ
�+���Q{{{߂�o�U��h=�l���y]������R���ۄѣG�\��5k����ikk3�Ɯuk�>�M@�q��.�j����;60�Z�꧄���A�R��p:�p:�P�����#��]�j�O�o���Z��jE�@NII_�ر�;�o��B��M�'7e���n����E�/����j�HKK����ؽ�J�B�Omnn>u�¥˧O��O��I|�ĉ<��~�VV���ɓ'��x�1q���=�������n�D�ZT�F��ʯn��YY�,|21���烏e��T�nVi4!�3�c��^N�X���q��<������7�USS��<<n��I�X��z�{��:��ar���-[��q�[��Z�b[�R�d2!++&�	�t:������g����3��:$�dd@+�0��tg"�뗫V�k��V>=+�@�tw��[WW�wvv򝝝|]]]�y�RJw�I���k��V���V��xO?�������s�[�x�g���x<��l��l��ֿ_�k_qaa�˗�?��c�(�+(�����}EEE���UXX�?���O<�Dwaaa�EEE|~A�>��
VȊJ)�H)��j՗���_����^z����z��_�dIw��,Yҭ����t><��`�+--��V}I���F��EƊB$���+Ql���������J��X�K���X�|�+P�@�
(P�@�
D�2�������֬�L�
��|�7���ȑ����f����|�ۍ��;~|38.6_0w�|������W_��,��N�a�D�a�D~�w��^}�ՏZ���Ο�/�=o�kn���֭[������֮]�/�1c��`6��S�@�Y�V��hѢ�H�/`v�v�=����,Z�h�Z�4�H�`���W:vl�;�|����ڔ����O�S	_ =i�0�u�`p_~�e�/h�:���ŋ���=�T56���|AQy9���>b�����/,+���r���6��>�N�V�|Afv68�K	_��tڲ�����I‰���rfffN�].�a=!�555
b�t��ug)Y�4h�x�-���!(�͂Z���{�dL�:u�贴�M��/��˃�Əg�ju_`0`4�����'+�.c>�56?�K�R5�|�����i��R5�W"N�'�dff�O�>��R:��С�Nf�溭��SJ��e
�/2��yk(�E�#������=u���}w.Z�LEAܱpa7��ާX=������{�̬,wFf�T��������뮻���*���	�_�����NX�qcCeu����~�…�%=�
`�X�/J��;�1c�4eʺ�6�Qv4�_���~YZZ���d�����3�Wf&������YR�#J�@aQё�3g�w�q?f�X7���kk����O�:���ܼM�ʒ0�x@T/K��#��P���F����K֒�ʴ�4|{����b���|�iӦf���	!v��r���ap)��D���*��������^�=^�,��k<�F
JiVye��ѣFu�K�-Ϝ=+̿�7_�կ�6�r�����1kq1<<��h4Z4
�ڳGp:xOZ �G�_�VT<f-.F?�Z���Μ9s��p�������y������KJ�����	��ɓ�}�R:0:'��-��·wt���L/������/�*�p��Y���w��pe�\���ܓ'O�={K?������׿{��%%%[�;�RʈiY�8B��]�#��;S-���aS�qIz@J)�B)��V�H�x�R����Ä袔֥�q
(P�@�
�j�)�kE¯O��U`5���>��"���M�u:t���x�J6tw���E*��K�X��ž�]�q�\���+��<���0;�֯c=!dN�o���{߻W+:��Z
�����=#͜r�������r����ɲ(����?�D�E����3����xB�o~o_���0�)S� N ]B@Ė�ص+"9=#���Pn������8؝N�gd��@��L��0�׭k�掯�s���5�~u���…K��<���FX������=z��ѣG��<�
)sc@)-��\��Tv.�QB���3�ſoN�
�K�/�(./G�>�xg{d��EZ��@c}�%+3�?0p������0�3!�:��,:�:Ht��䠳�Ͳ��O^@�j�r�񖼼��0S�p�’�7�v�bH����:�>�D�
n6J����"*���l���S���W#~/,,<?88��a�����6
�_9sF^�T��=[��Z22���f���K��p�\_��68xsVC��Ò�~�СCW:tՒ�~�68����j�@�
(P�@������#Ԭ������g��OJ�?R�!��8Y}�H����T�!@��~`d<C���G�Y�+��
����ˮ�����r$���L!@����"B�d��)_
��#�"HV�CVCE߯��
(P�@�
(�K�Sl�W����{I�߇'F*(L&�O�~]���;I�0�[x�]0��a�����9�ߤ���FV�ؐ;Y鯏�b����qU��8�HHz�OT��؜Nhd#>�E:\�WT
	!�YB��Ja��T�DܩF#;��"<�t w���(�D���I	�Q��ߴ���� �h
������7����H�j(WOD��1�";X�ˡQ�`4��f��s3.�<[�T̈́�Ԍ�Y�f\/�dC�
9U�T����t:xe���v���������X��:���a���@__|j����jX,�TO�����|7l&dYL�
�9�����t��N�sĒx�z����ڵ���4G)ܒ��72�O܄�F���@�
(P�@��!�p$�IZ����`���s�����G�v���t��3f�IЮ@ ��n��_U�r1��fqcF�Ƒ�t�'%_�q+pz<P37�*j̈́�9�B���S�I���a��[�1i���W�wG���3�Q�L��NF��J���@�4)q�Ϫ�OD���#!=�|�Y
�������M���[,z��6�<6�V�A\�@���c�K�jh���,��N��ϟ�����"���148��'N���߰1�r��ps�
%�8�E��W��VC�׻�����z�TAnS��~
(P�@�7�M���s�L�*��p�B�x�>��W~���-zJ�R���\.|��g*@�+N��m6CVP�=|��'�8�h�Geݽd�
�^F�e�X��;S	�PP�?2�wϲ�=s����x�SJA)]�{��<˂H��/u��"R!8��^R�7B�O�	 �_����Ĕ��/�@Â�j4���u��-����^��h4��\a7��y<�W (� � 3=]}��QB�aٽ�����tu �`�>i�= f`Y,˂s���h��z�5ߏ���{���M�+�RY�� �|��p�ĉ��9��n˲�;��
�{x��X������o&Ѓ,��n��ȑ#_�8q�!�-$zl�hh����᯿��+))�UUU�l!�\�v�=�y�\>/#񵣔��8�l6;vl��ӧ�P�N��9�VO;��*�����_�l�ͧO��r���
����|��F�3 �|����appG�� 6����u�Z����>�M�lj�S�ZVV�YAA����4��jp��om6�ٲ%�n�9�c�@�0�9v��ϟ��ɓ'犍/�?2�k�E������=�t��ȣ��-//������z�?n\D�������q�hyy9}��G�RJ�b�XmE�D����Wo<q]g�L	)D��(y[�~�E��lP "�@�?��>�ǁw��Áˇ��9��|���3���O��Wq\E�aԨn�2��3����|��:�`���th�j����n��]���k�G���J���J*+_���}�Z

�@�RA�RA��T�4�J
�@�Vcnk�K*+_C�2,�V0����)��Qo`�X����Սuu�q�,���-��R�_x�uu�J*+W��Z���Qo�66>(U���[ssq���?��)+-�/]�A�������ݻ��Oa2��q��[�F�Z0�T*N�:�����x��K�plϞе�
x�CYI�kq���۝N'.^���y�L��O?���/��t��eY���e%%x��_�
�q�8.x���t����?���ǖ//�i����O��G�ϟ?/8�ΈzX�.X��*�s\�o���v�q��%��/�t��e�*�_T�a��˖U����_�t�s���$�I� |���^/�~睃�-�p;!�h��i/ZT��;��z���A�=� �HG�J��#�>*��W�,
��GT*Uț�["@p"r�\p:�`5������I��E��@bQUu�$�F���MQ>���庞7��FÛ���*J)J��y�GB�f��)�J���;XA���X6t6��H�D�^��w�*�+�§k�z^H��DoF�
(P�׏D����w�ټX+ќQJ��8��,��L��`�66�	��	�b�޽رq������v�8��Ί��`�jk�n�K�p8B.�˥���U�j��%���ʅ�z Z�)�ޚC	��m�t������1y24�$j�`E��Q��
�u�n�ؿ_C)e���x	��嗗����R�x��E�r����֮]�����c��Mm���t:�r�B.��	���ͦ�;6𽑽v�Zn|m���E�rD��"z�������|�ヒ4��&�{�)�Ŗ-Ш�Q��$V�̙�ݯ~E�n��t������͏R܏�3��3(���RZ�<IH�URJ��ϘAg̈؎G<���_�IB�qI��آ\��_�x��W�RD(�<^/x?Qr���0�z�A98��-1o<�/_�=�>R�:1o<g���_ Aȉ"�k!9=�-�-�����A�`!�H1"�3�;�:dA�4#H{����M�	n�� ��JCZ-\Gӎ�_0]V�x���uuMD�ƆO>Ij1	�y�l�ZW�t��ר� (@ZZ��}�Ņ��D����YAx�w>8��GB�9���HM�'�s1n�4����u���F��{@:�86����t��c
�5���;�A���$$"�4�k���f L�}�?���sӤ�QQ���!� �~�z=<WY[�luU��c�?|f�v�‘�3㾆r�iT*���>[QQ^<a_]Q�lx�v0!�%:�
P�[���\8p����~ܸg��V�,Ra<tj5�2�Ѣ��>��������Fm���f���e�O�&�y
��Z-,8��!	�|�Đ��+8}�vm�l���][�����x�J0��k\�׿�u����M@ ����++�5G^Y�WY)-�`��-�Z��q�(��/�\�<���G�p(*/�Wj
b4"�`��a��O������ *�MFƗֲ2
�DO�����j22��'�Q>K)͊�{��a�x�\��[�
�c,�Yǡ���_�ԗ��;���`x�2�2J�Ov�/�����h)��L��xr�e(P�@��c8�������P�wt�So�*��4�W��b�=رqc������p]�>~Bu5�t8�����v�n�36��q:̄�j~�%��C�|�Z�oʇ8�u IDAT��9 ;�mӈ|?s�d�ab�<��?_���2S[ZXP�]�w_�MD"|�=wߝSSU5���O}����\fhh���

1y���z��~�����j���A"|A~e��	����N	<��~�@���ƥ���y4͜������.�^|}�ĥ����d�8c���Bi����--����
���3��j^�;�R��a�t�2^]�\@��Z)�����c
p#p��a�<D�#�q�wdy��AH���$h�I�6%��	!f�l�W��X�F/N��h2������+P
B):�NgӎM�^0UV�x�������T�ӟ�5R�g��K��N��B҃М^�,��@�WtY�	I�� ռB�c ռBdDa���aw@�3'CH�M�ן�<��x����b�
+%���Dx�A��p�'�;"��R�WX�W��	z�6adx���~ܸ���
����'�|��Wx>�WX�$����Nhh�*�a�(D�VU�c���E;f�WQtax.���׎�G+Ji_Eu5-,.��N���*+����a��yee|�_`���ώ9��Ӧ
f���F��<�A�4c8�~n"VdQ�n_v���X����W(.-����=���(�SJ��@+�i��}��w��+$�W�㓮.�]��M1�0�
��@�
(H)�����kա{�i��x�`Z{;˾��M�n,_0���q:�A� p9�Nf|*���MM9��޾=��45A0� �j��۾�"�Lnnf	�������Ճ�}�Y�/���8l6��t��r��v�^"g�٘�yyA���>��VW'�TU]_Z���D�������- �WS��"��{�ߜ:u��ر�|���f:e�tJS�L�>�Nln��So0������}�
b��������'9��`�(�*���7�N)_��ښ���W��V ju����s�H�}A�7; ��1ܾ`�D���0 B��^��/�eSD�y�p�=�^Z_��h����'��Z���K��N8 /p<Lf3���
��a2����=Y-�!QMX����= B��[_�l�Z�z�6�����烏�p�f��˩ �<Y�Ƅ��P/8�� ���3g��e�7��
ę��[Xĩ�!�x�!^��� ���'�^����X�eJF�>�G0��h���h�P5#I��[
�݁/;�|�Q���b�鰄����5|{�Z��8�/z].L�e_0���[^>l`lyy8����/�Z���Jc������J{�lF���?u�Tf��۾@������b�<@iEUgdy��rl���{����~�/^q	T�

��>���}�
(P�@ABP��/P���l� ��
���)�/`)EB|�h47ľ�+	]J�pX�F�r^�R����i�F��6��n�/�?&���}A����

�>�8%�B�'�S�+˾ ��ۖ��~R�+$=i�y��-,R�+��"���ec��t�A��}�H�e{@c5.9-=�VsF���o� �[��V�X6&�^>B��MM�\P�/�	qy���}U55��j��/H5� k_p��aL�:u0�b��=���Ϗؾ VƵ/H5���}�
��U�(P�@�
��!ڞ�a�5��y��IJ�Y��ʊ���oy�a�R��b�P}/��Ũ���z�O|��+|�z�(�9�-�-/�޽�gΨ�m��h�J�2fdf��;R���իW)p��v����k�X|��I��MI��T
� �y����͇����!�G���+�����H'��T��XA��_�elggg@H�<�Á�{�i��zz�5.+!��1�ӛ��1���cY���S�B���P�DA���TM�P�>�� �5�Ɓ��e(�JC���n̙7�@�K�H��KKgsH�H;����<!$�b0��VU�R��\8?�b�=��`��l�w�xP^Y���%Y��e^ $� `Ű��=�`?!�ԍ@;���U:�X�6��{�{F�8�L�3�@�|>�X�(��7C�9F��y.��f��9ǧD��1cf����9x��.%2�&�Xc ����!�J)X����l�����;bԗ��/a:-fs0�m �m֨Q���i����� �&���3rr��71��yn�N���}�nG?�����!��r7�Z��&NDiU��0!�jM������S&MR�����x�f��gee񙙙|����]��JxFJ����^{����;k�l�����G�.0���5{6���Ɨ����.K�qPJ�E�y�L�)�R�|������3w.?�����ʺ6w�<�������?F)��R��R쁨�^J��X�0�rU&�}�ᇻ~��_N���asGoo�o�����u&!�?PN�,>E(۝Ed�o%�>
�	!p��ŋ�������yx�^�?���:��a�|�C&&��0|�j�@��3eʔ�>��H��ܹ����B �1a���:��>G��o�<iR)Dz8w�ܙ���?�Q\\�TO�;}ڃ�h�:,�����[n��y�8y��k׮�2*��wW�n.��/?�p�,`e��
���j����333�(��(��(��SJ�3�<�������8��ZmjO�PJ�{ϟ�$--�$��=�)�b��R����l���t��6�@�
(P�-�^y��B0���s嵵+��a���"|!�
��0��`��H��J��W�TT0����?��9g��~��%�s%��+��˙;.4�����c	w��+����͟O_{�W��T0���6ϛ߾@�qkE��
���뮻�b�2�����8T���
�7^T^������w�<�|���#��๢�r�s�,����ۥ���I'wv&.�1'��=o}�F�84utЦ���>��0a�?0��,]
�ۥ�v�4� d9.pF8V�/D�;4�YԨPJA�Z�5�_S�!od��>��4v�S~�N*�g��D���;q�Nmn~���"�c��h�>}��`x@��q�MHT��+����:�������t=*x�^_QAZ���dt�O�8'�E��	@)�S�ב�5��紷7���Ɛ��:�}�m�Ľ[�,�9�Bvv6:��ZUz}7$j>�$7!A[�:�y��:������Z�f!�]�"��~���N�����Ѩ1�(�<%.C,&�eem���a5�8;w�~r|���ΡÇ��eY�L&�jo��N�
�E�V�΄1�Ȉ�Z����ĵ_��<	?��"<D)���G���y6���L\��p��_m�zz~�fÆ�m.���<�Ǐ�T�[z�7���j��A���_�~	����v��*���:�����g���h4�����")������!v�kӺu��e�^�X�K�5��.�6����5���ϨT(�������թ5\���n�8�iQ!ى��h��?����r���W%�C�������{&Bߎ��E]���Y	��ߵk���(�-�20p�S�����*@6g�l��3�8u���h��^
)�1Î��nJ�6�aʓ�	�5Ѣ�'�F#K�D}�B����K:�
6ۓ�}l2�,����Q��R��\��RY,��x�DА:�X���R�
(P�@A". w�-."��s�z=\v;\�h\!:�i�8������#��2Wm6lX�.�J�~��].����ѣI	!�q`����/}�A˲�?���������	!덇���'*��˗�B��3 d��c�B�N��!�7�R�X��e*x�*+Ϝ8W��E�
��/���@��ޞ��B��OP���_&V�^��+D��A�֛o�EgϛG�99Q��#��|O'Q���,]���L�0!�B4��hz�0��	B�8l��DQ�I�^�٥�O��7�kj��U~C�ژ7$�&��@�2V���x��d��~�PUE*��ڹsg�%<!B�T1��G�����������;�

�z���N�`~~>:��0z�:!>��6%adx�l�^����֚��
��)�ݲeI ��
����٘��ެ5��!���'�*cR�(����tt4ffd��vc����jش�k͚���g�X0���Ng6�P�����1E��B�h�N�mV{{��d˲8t��?��xG��M;w�~��8��谦eemPd1�b�#�n�x4��9J�O@�� 2 a��h��KV֛z�9���p���8��_�~���	�����F���#)R�6�ԏ_��<l.��fÆ�zz~�l���A4d�e?ܴn��v��!�--����-�--��CN�����8��H�;�1l�ND2q6lݸq�5�mP��:n\] ����ʨT�f��o��J�$-�q\�N�D�	v����?4tI{�M�J������-��;�Q���|�cGKfii���ҕ+m����2������
D� �1^}�3a<����y��D�f�Dn�oO@�p7�'�*���	�i1�(P�@�
DA�v�Å�O����p�\�`b��A!P��a���{7�F�yA�@H����Q=)��(~W�:�:`�pt"�a�I�T�c�/������ \.W�6C�R�h4�b�l6[J�edd�d2A�qѽiŚ������m�R�������t~\~�`��{nw 4`J��,�㠦�X�Q�
4L�F�,��3)%�u�$��IPk�p>�M5/�P	$J�$������N,��-�o��)�	�}N@s�T>"j�Ԉ�=	���|:񸿚�n�s_�~=LJ�z0��gB��F�Ip�)����h4�+�%HU>���h������իطwo,�1n�x��o�II������������	̈́�55	�p�櫪�����_`&$j5($��xH�LhWMe���!�3!��
�z&����[�gB��|^/��O��3��@MI>-����ɡ�U�+^!��IS��a�B)���l��e��r�4�6d��[<O��Q�@�
(P�@��d`�?��_���ij1ᕴoZ�e��my�;߱�������|RY�վ=m��i�&���8�z�_���j�m�Y�23�z��|@
��xX�*����m�B��?*�'��ӠR����n-).Dz!<`�kE;��*-��?u*i�ON�����{����1�t���!ШT(,.^�p:���~'��p>���J����~Zmu581 f4-�J��Z��J�8�N8�N|{�2�?.x�?�a,A�����Ϛe���˲�����"��Y@�OD_t�JB��a�Ν��|���7!�{�Ć�ی�.pׁ�c]�����8<KZj���v�g�P���pf_(+/��=z|zz:t:��JhH<�D�D�_�J�)���J���G���?�:�3���dOOmeU����^�f�����A��z<

��������lp:�p�\���e��|�XW����!���!��
�����9��ܜa�Z,��G����<������O�s�.��#�|��vhh�H�4��j���^�F�F�R|����?Nf��G���ਫ�?J�eee�`0@%0�׋s���ȑ#r����������f|vv6c6����q��Yߡ���@<<�
�4�7������X��.??ߜ���Z
�χS��8}��R�[���_-��������u�F��F���>{���ږ
a�׽��3f́	&�---|�̙��& Z��(�k(�,����3�l+))qN�6�o,qPJ倫QJ�x������kh��++��(���.J)���dL^��-)Ċ����Rz����h<���NxCB)�>�Խfݺ��%-�X	C���yJ��<fL���|#������4~��M�~��I�C��Χ�^�bEJir��z��X
(P�@�
(P ���t�29���kE�ƈ�J�JK�w�c�����g����n�j�
�,Z�L�>}%�j���4 `}>x�^4����ŋ������yC�k���.�f���{�����m$0@�%@Vi�@)�N���@4X�e�x�s�g�D��Y�C�ڇ4Q�{aiP
�)���b�&�Z[���*���n�7o�^��3�~�p�xY��vgMe%3&'f�	f�	�a�AXE&Ek�Z��G�b����Rg�o5&Ӌ�S����q�@��^�r�7�����&x<�����,�����[o���D4�(�p���9
��c�W_���nYu�/&54�gY��P�҆�w���z144�+W�|��ӣ�$8g��y��/N��+�	�\��<�J��T�7�q\.���[aҤI[w��9���.���,���e��,<�N'G)=��������U��`�)�_|�)+++������fÙ3g�o۾}����~_5B���m���mYq�����p��ի˲�<��﹞~�Z�9�������:�.Hd��n��|~�:�j<�BB^Ci������m6\�v
{{{��.�l�����"�K�{[�n�������?��+����B�F����i�����?��6�#`E��C�R�)�Z]ͷ̜ɷ���&L�njs��C�R�kHp��0����ٯ��wQ1Vi,�WV�u

|Aa!��ҥݢ&}�ʄ%��ck֭�I)uSJ��h!}v6�3Ϟ��9 
�C$����~�SJ��RژL9�1;�r<��9*	��(�)��Q�����dҊ���On�)P�@�
(P�@���/P��/P��/��/P�(|ABP��/P�
(P�@�
(�/���H�G��#R�)��D�?"����4M�B��H�
(P�@���"<Ԯ�\!HFSl���vec}=�6���r�(���h0����A��>�`D<WZ]�����Y0>�>�`�;�́��E���ϕTV��./g�\�0и-��N�ǢQ��g��xU?o�|��o���T���y޼�甈��9kE��
���뮻�b�2�!!�7��
���3�#x���|eyI	s�%xx���58�D��7�wΚE_{��au��;;�����%0����ͣo��ֈ������!@�G0a��`�Y�f�K-�d�A�r|�P�!�����*�į�h<��F
B��.-}*�i�ا�>Z�TdY��8�}'N�ߩ��UUT�?Mӧ�P�㺒2��CT��+����:�������t��z�^_QAZ���dt�O�?�/d!b>���5��紷7���Ɛ��:�}�m�Ľ[�,�9�Bvv6:��ZUz}7��@��a��zb(י�;f���Y,8�n_ך5�����7/w��������F�Ѹ
@�)�;D�!�	�Ҳ�����p���w?`SD!��C��#˲0�L���^	�n�V���6�ג����'��:��I���,"�CT�/�(��<��zeׂ��5�����ɚ
��\��?�Rm4n�_5@��w�VW����[�~�8���햵Ɖ*��;��p:�����!�ӣ�h���R
`��Ⱥ֖�r���M�����PzCI��T�qaD(����5���ϨT(�������թ5\���n�8�iQ!ى(`�"��wtw�\���UI�$k�z�
]���=�oG��.Fq�G���5�RTT�_8s�ԩY�S�	�U�'_�����g�ԩ���&U_��0����Mi������L@�`��D��hd)����cY�F N��D�S�`cوߣ���D��F0�Ѹ�D!.�L��8�!��".��	��X��z(P�@�
d,k��IDAT����Nc{�9wߍ�.�.�4m4.��V�4�{X�s�0�tD��^�͆
��%\��������SG�&%D�ǁ�x�$v�K|�²,�?d� �<}�x�BD@����D��>�b��A>x�}��<}�XBBD��$�A�
�+�-{�
�{�=�
��3'N�"���A��+^!x��w�ҕ�==1��`G��B,_�2�z�j@\!BM��(�OPJ�o�EgϛG�99Q��#�B�r25�?��ҥ���	�+D��u�]��<A@ǁ
׶� �:M���"7�.-}
���_S1�!�!Zm��($PMi�U�oil�Se2a��J������ܹ3��!T*����1��r:]3��}���|gQA�^�/��p:�����ֶ����!�]� �1JX� [��ww���fgg��t
{�lYH<�}�mCv�ktv6洷7kM�nHN�G�	�
@��L��h�6���13#N��7o^�?$Evu�Y���v�,f����������G�O��B�W�Z��m���^i2���,>��p8ޑ�g��ݻ�8��;:�iYY�YL����xA���4��9J�O@����d���h��KV֛zís���pL���ׯ_���v�A@muu��wȑ)P�[�Ǐ��y6�KX�a��}==?�k6[r�@ih��pӺu���.�������V�����j49��{�t�k ��t�K�-mH°a�ƍ���l�j��q��	e��VF��5��sW�,P�'iA��b.p�� 
O�kGw����K��lTj5.������n���T��H~?��W;v�d��v~�t��A[o�<��DE ޺";�)���A�c��dg�x)7s��'�*���	�ܖ�$� �H�nOU��� �(<�
(P��������y��IEND�B`�extensions/plg_editors_acyeditor/acyeditor/ckeditor/skins/moono/dialog_ie7.css000060400000041550152455705240024115 0ustar00.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_title{zoom:1}.cke_dialog_footer{border-top:1px solid #bfbfbf}.cke_dialog_footer_buttons{position:static}.cke_dialog_footer_buttons a.cke_dialog_ui_button{vertical-align:top}.cke_dialog .cke_resizer_ltr{padding-left:4px}.cke_dialog .cke_resizer_rtl{padding-right:4px}.cke_dialog_ui_input_text,.cke_dialog_ui_input_password,.cke_dialog_ui_input_textarea,.cke_dialog_ui_input_select{padding:0!important}.cke_dialog_ui_checkbox_input,.cke_dialog_ui_ratio_input,.cke_btn_reset,.cke_btn_locked,.cke_btn_unlocked{border:1px solid transparent!important}